.roast-dashboard,.workspace-shell{--roast-nav-rail-width: 248px;--roast-dashboard-gap: 24px;--ui-scale: 1}.roast-dashboard{position:relative}.workspace-shell{display:grid;grid-template-columns:var(--roast-nav-rail-width) minmax(0,1fr);gap:var(--roast-dashboard-gap);align-items:start}.workspace-shell__nav,.workspace-shell__main{min-width:0}.workspace-shell__nav{width:var(--roast-nav-rail-width)}.workspace-shell__nav-extras{display:flex;flex-direction:column;gap:16px;margin-top:16px}.workspace-shell__content,.workspace-shell__card .roast-panel-card__content{display:block}.workspace-shell__sidebar-card .roast-panel-card__header{align-items:flex-start;gap:12px}.workspace-shell__sidebar-content{display:block}.session-summary-card{display:flex;flex-direction:column;gap:12px}.session-summary-card__actions{display:flex;flex-direction:column;align-items:flex-end;gap:10px}.session-summary-card__status{display:inline-flex;align-items:center;gap:6px;padding:6px 12px;border-radius:999px;font-size:calc(11px * var(--ui-scale));font-weight:700;border:1px solid var(--border-soft)}.session-summary-card__status.is-ok{background:var(--rp-primary);border-color:transparent;color:var(--text-on-accent)}.session-summary-card__status.is-pending{background:var(--status-warn-bg);color:var(--status-warn)}.session-summary-card__status.is-syncing{background:var(--status-info-bg);color:var(--status-info)}.session-summary-card__status.is-offline{background:var(--bg-surface-2);color:var(--text-default)}.session-summary-card__spinner{width:10px;height:10px;border-radius:50%;border:2px solid currentColor;border-top-color:transparent;display:inline-block;animation:rp-spin .9s linear infinite}.session-summary-card__metrics{display:inline-flex;flex-wrap:wrap;justify-content:flex-end;gap:10px;font-size:calc(12px * var(--ui-scale));color:var(--text-muted)}.session-summary-card__section{display:flex;flex-direction:column;gap:8px}.session-summary-card__label{font-weight:700;font-size:calc(13px * var(--ui-scale));font-family:var(--font-heading)}.session-summary-card__chips{display:flex;flex-wrap:wrap;gap:8px}.session-summary-card__chip{padding:8px 14px;border-radius:12px;border:1px solid var(--border-soft);background:var(--bg-surface-2);color:var(--text-strong);font-family:var(--font-label);font-size:calc(12px * var(--ui-scale));font-weight:600;cursor:pointer}.session-summary-card__chip.is-active{background:var(--rp-primary);border-color:var(--rp-primary);color:var(--text-on-accent)}.session-summary-card__message{font-size:calc(12px * var(--ui-scale))}.session-summary-card__message.is-ok{color:var(--status-ok)}.session-summary-card__message.is-error{color:var(--status-error)}.desktop-page{display:flex;flex-direction:column;gap:16px;color:var(--text-default)}.desktop-page__header{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap}.desktop-page__title{margin:0;font-family:var(--font-heading);font-size:calc(1.55rem * var(--ui-scale));font-weight:700;color:var(--text-strong)}.desktop-page__subtitle{margin:4px 0 0;color:var(--text-muted);font-size:calc(.92rem * var(--ui-scale))}.desktop-page__grid{display:grid;gap:16px}.desktop-page__grid--sidebar{grid-template-columns:minmax(0,1.8fr) minmax(280px,1fr)}.desktop-card{background:var(--bg-surface);border:1px solid var(--border-soft);border-radius:18px;box-shadow:var(--shadow-soft);padding:16px}.desktop-card--soft{background:var(--bg-surface-2)}.desktop-card__header{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;margin-bottom:12px}.desktop-card__title{margin:0;font-family:var(--font-heading);font-size:calc(1.15rem * var(--ui-scale));font-weight:700;color:var(--text-strong)}.desktop-card__subtitle{margin:4px 0 0;color:var(--text-muted);font-size:calc(.85rem * var(--ui-scale))}.desktop-toolbar{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.desktop-btn{display:inline-flex;align-items:center;justify-content:center;gap:6px;min-height:calc(40px * var(--ui-scale));padding:calc(10px * var(--ui-scale)) calc(14px * var(--ui-scale));border-radius:12px;border:1px solid var(--border-soft);background:var(--bg-surface-2);color:var(--text-strong);cursor:pointer;font-family:var(--font-label);font-size:calc(.88rem * var(--ui-scale));font-weight:700;transition:background .16s ease,border-color .16s ease,color .16s ease,transform .16s ease}.desktop-btn:hover{transform:translateY(-1px)}.desktop-btn:disabled{cursor:not-allowed;opacity:.55;transform:none}.desktop-btn--primary{background:var(--rp-accent);border-color:var(--rp-accent);color:var(--text-on-accent)}.desktop-btn--strong{background:var(--rp-primary);border-color:var(--rp-primary);color:var(--text-on-accent)}.desktop-btn--ghost{background:transparent}.desktop-btn--danger{background:#b0402e14;border-color:#b0402e3d;color:var(--status-error)}.desktop-pill{display:inline-flex;align-items:center;gap:6px;padding:6px 10px;border-radius:999px;font-family:var(--font-label);font-size:calc(.74rem * var(--ui-scale));font-weight:700;border:1px solid var(--border-soft);background:var(--bg-surface-2);color:var(--text-muted)}.desktop-pill--accent{background:#d5572f1f;border-color:#d5572f33;color:var(--rp-accent)}.desktop-pill--ok{background:#3b7a571f;border-color:#3b7a5738;color:var(--status-ok)}.desktop-stack{display:flex;flex-direction:column;gap:12px}.desktop-form-grid{display:grid;gap:12px}.desktop-label{display:flex;flex-direction:column;gap:6px;font-size:calc(12px * var(--ui-scale));color:var(--text-muted);font-weight:700;font-family:var(--font-label)}.desktop-input,.desktop-select,.desktop-textarea{width:100%;padding:10px 12px;border-radius:12px;border:1px solid var(--border-soft);background:var(--bg-surface-2);color:var(--text-strong);font:inherit;box-sizing:border-box}.desktop-select{appearance:none;-webkit-appearance:none;-moz-appearance:none;padding-right:40px;background-image:linear-gradient(45deg,transparent 50%,var(--text-muted) 50%),linear-gradient(135deg,var(--text-muted) 50%,transparent 50%);background-position:calc(100% - 18px) calc(50% - 2px),calc(100% - 12px) calc(50% - 2px);background-size:6px 6px,6px 6px;background-repeat:no-repeat}.desktop-textarea{min-height:96px;resize:vertical}.desktop-note{color:var(--text-muted);font-size:calc(.84rem * var(--ui-scale))}.desktop-note--error{color:var(--status-error)}.desktop-note--ok{color:var(--status-ok)}.desktop-table{width:100%;border-collapse:collapse}.desktop-table th{text-align:left;padding:10px 8px;color:var(--text-muted);font-size:calc(.78rem * var(--ui-scale));font-family:var(--font-label);font-weight:700}.desktop-table td{padding:10px 8px;border-top:1px solid var(--border-soft);color:var(--text-default);font-size:calc(.9rem * var(--ui-scale))}.desktop-empty{border:1px dashed var(--border-soft);border-radius:14px;background:var(--bg-surface-2);color:var(--text-muted);padding:18px;text-align:center}.roast-dashboard__grid{display:grid;grid-template-columns:var(--roast-nav-rail-width) minmax(640px,2.1fr) minmax(300px,1fr);gap:var(--roast-dashboard-gap);align-items:start}.roast-dashboard__column{display:flex;flex-direction:column;gap:var(--roast-dashboard-gap);min-width:0}.roast-dashboard__column--nav{width:var(--roast-nav-rail-width)}.roast-dashboard__panel-shell{position:relative;min-width:0;min-height:0;transition:transform .2s ease-out,opacity .2s ease-out}.roast-dashboard__panel-shell.is-dragging{z-index:30}.roast-dashboard__slot--navigation,.roast-dashboard__slot--bottomSecondary{width:var(--roast-nav-rail-width)}.roast-dashboard__slot--bottomSecondary .roast-panel-card{min-height:100%}.roast-dashboard__focus-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:70;border:0;background:#181c217a;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);cursor:default}.roast-dashboard__drag-handle{position:absolute;top:14px;right:14px;z-index:4;display:inline-flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;width:32px;height:32px;padding:0;border:1px solid rgba(31,35,42,.12);border-radius:10px;background:#f8f9faeb;cursor:grab}.roast-dashboard__drag-handle span{display:block;width:13px;height:1.5px;border-radius:999px;background:var(--text-muted)}.roast-dashboard__drag-handle:active{cursor:grabbing}.roast-dashboard__drag-handle.is-disabled{opacity:.42;cursor:default}.roast-dashboard--edit-mode .roast-panel-card{border-color:#d5572f3d;box-shadow:0 0 0 1px #d5572f14}.roast-panel-card{display:flex;flex-direction:column;height:100%;min-height:0;border:1px solid rgba(31,35,42,.08);border-radius:22px;background:linear-gradient(180deg,#fffffffa,#f5f6f8fa);box-shadow:0 18px 40px #1f232a14;overflow:hidden}.roast-panel-card__header{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;padding:calc(18px * var(--ui-scale)) calc(20px * var(--ui-scale)) 0}.roast-panel-card__heading{display:flex;flex-direction:column;gap:6px;min-width:0}.roast-panel-card__heading h2{font-size:calc(1.05rem * var(--ui-scale));line-height:1.15}.roast-panel-card__heading p{margin:0;color:var(--text-muted);font-size:calc(.82rem * var(--ui-scale))}.roast-panel-card__actions{display:flex;align-items:center;justify-content:flex-end;gap:8px;flex-wrap:wrap}.roast-panel-card__content{display:flex;flex:1;min-height:0;padding:calc(18px * var(--ui-scale)) calc(20px * var(--ui-scale)) calc(20px * var(--ui-scale))}.roast-panel-card--navigation .roast-panel-card__content{padding-top:12px}.roast-live-panel{flex-direction:column;gap:8px}.roast-dashboard__slot--liveRoasting .roast-panel-card{height:auto}.roast-dashboard__slot--liveRoasting .roast-panel-card__content{flex:0 0 auto}.roast-live-headline-wrap{display:flex;flex-direction:column;align-items:flex-end;gap:2px}.roast-live-headline{display:flex;align-items:baseline;gap:6px;flex-wrap:wrap}.roast-live-headline--dev{justify-content:flex-end}.roast-live-headline__item--dev,.roast-live-headline__item--dev .roast-data-number{color:var(--rp-accent, #c0392b)}.roast-live-headline__item{display:inline-flex;align-items:baseline;gap:4px;color:var(--text-muted);font-size:calc(13px * var(--ui-scale));font-weight:600;white-space:nowrap}.roast-live-headline__item .roast-data-number{font-size:calc(17px * var(--ui-scale));font-weight:700;color:var(--text-strong)}.roast-live-headline__item--warn,.roast-live-headline__item--warn .roast-data-number{color:var(--status-warn)}.roast-live-headline__sep{width:1px;height:14px;background:var(--border-soft);flex-shrink:0;align-self:center}.roast-live-panel__stats,.roast-live-panel__toolbar,.roast-live-panel__footer{display:flex;flex-wrap:wrap;align-items:center;gap:6px}.roast-live-panel__stats{gap:4px 10px}.roast-live-meta-strip{display:flex;flex-wrap:wrap;align-items:center;gap:4px 10px;width:100%;min-width:0}.roast-live-meta-item{display:inline-flex;align-items:baseline;gap:5px;min-width:0;color:var(--text-muted);font-size:calc(11px * var(--ui-scale));font-weight:600}.roast-live-meta-item__label{color:var(--text-muted);text-transform:uppercase;letter-spacing:.03em;font-size:calc(10px * var(--ui-scale));flex-shrink:0}.roast-live-meta-item__value{min-width:0;color:var(--text-strong);font-size:calc(12px * var(--ui-scale));font-weight:700;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.roast-live-meta-item--overlay{max-width:min(44vw,520px)}.roast-live-meta-item--accent,.roast-live-meta-item--accent .roast-live-meta-item__value{color:var(--rp-accent)}.roast-live-meta-sep{width:1px;height:10px;background:var(--border-soft);flex-shrink:0}.roast-live-stat{display:inline-flex;align-items:center;gap:4px;color:var(--text-muted);font-size:calc(11px * var(--ui-scale));font-weight:600;white-space:nowrap}.roast-live-stat .roast-data-number{color:var(--text-strong)}.roast-live-stat--warn{color:var(--status-warn)}.roast-live-stat--accent,.roast-live-stat--accent .roast-data-number{color:var(--rp-accent)}.roast-live-panel__toolbar{gap:5px}.roast-live-toolbar-row{display:flex;align-items:center;gap:8px 12px;width:100%;flex-wrap:wrap}.roast-live-toolbar-group{display:flex;align-items:center;gap:5px;flex-wrap:wrap}.roast-live-toolbar-meta{display:flex;align-items:center;gap:4px 10px;margin-left:auto;min-width:0;max-width:min(48vw,620px);flex-wrap:wrap;justify-content:flex-end}.roast-live-panel__toolbar .roast-button{min-height:calc(30px * var(--ui-scale));padding:calc(5px * var(--ui-scale)) calc(10px * var(--ui-scale));font-size:calc(11px * var(--ui-scale))}.roast-live-panel__chart{display:flex;flex:0 0 auto;width:100%;min-height:460px;max-height:min(66vh,680px);aspect-ratio:16 / 11;border-radius:18px;border:1px solid rgba(31,35,42,.1);background:linear-gradient(180deg,#fffffffa,#f6f7f9f5);box-shadow:inset 0 1px #ffffffe0;overflow:hidden}.roast-live-panel__chart>*{flex:1;min-width:0;height:100%}.roast-controls-panel,.roast-event-log,.roast-health-panel,.roast-batch-panel{display:flex;flex:1;flex-direction:column;gap:14px;min-height:0;overflow-y:auto}.roast-nav{display:flex;flex:1;flex-direction:column;gap:18px;min-height:0}.roast-nav__list{display:flex;flex-direction:column;gap:8px}.roast-nav__item{width:100%;padding:calc(13px * var(--ui-scale)) calc(14px * var(--ui-scale));border:1px solid transparent;border-radius:14px;background:transparent;color:var(--text-default);text-align:left;cursor:pointer;font-size:calc(.95rem * var(--ui-scale));transition:background var(--transition-fast),border-color var(--transition-fast),color var(--transition-fast)}.roast-nav__item:hover{border-color:#1f232a14;background:#ffffffb3}.roast-nav__item.is-active{border-color:#d5572f29;background:#d5572f14;color:var(--text-strong)}.roast-nav__footer{margin-top:auto;padding-top:18px;border-top:1px solid rgba(31,35,42,.08)}.roast-nav__footer-label,.roast-section-label{color:var(--text-muted);font-size:calc(11px * var(--ui-scale));font-weight:700;letter-spacing:.08em;text-transform:uppercase}.roast-nav__quick-actions{display:flex;flex-wrap:wrap;gap:8px;margin-top:10px}.roast-nav__quick-action,.roast-button{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:calc(34px * var(--ui-scale));padding:calc(8px * var(--ui-scale)) calc(12px * var(--ui-scale));border:1px solid rgba(31,35,42,.12);border-radius:12px;background:#ffffffe0;color:var(--text-strong);cursor:pointer;font-size:calc(12px * var(--ui-scale));font-weight:700}.roast-button--primary{border-color:transparent;background:#1f232a;color:#fff}.roast-button--accent{border-color:#d5572f2e;background:#d5572f1f;color:#b54623}.roast-button--danger{border-color:#d5572f33;background:#d5572f29;color:#b54623}.roast-button--ghost{background:transparent}.roast-button:disabled,.roast-nav__quick-action:disabled,.roast-nav__item:disabled{opacity:.45;cursor:not-allowed}.roast-pill{display:inline-flex;align-items:center;gap:8px;padding:calc(7px * var(--ui-scale)) calc(11px * var(--ui-scale));border:1px solid rgba(31,35,42,.1);border-radius:999px;background:#ffffffdb;color:var(--text-default);font-size:calc(12px * var(--ui-scale));font-weight:700}.roast-pill:before{content:"";width:7px;height:7px;border-radius:999px;background:var(--text-muted)}.roast-pill--ok:before{background:var(--status-ok)}.roast-pill--warn:before{background:var(--status-warn)}.roast-pill--muted:before{background:var(--text-muted)}.roast-metric-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.roast-metric-card,.roast-list-card{display:flex;flex-direction:column;gap:8px;padding:calc(14px * var(--ui-scale));border:1px solid rgba(31,35,42,.08);border-radius:16px;background:#fafafbe6}.roast-metric-label{color:var(--text-muted);font-size:calc(12px * var(--ui-scale));font-weight:600}.roast-metric-value,.roast-data-number{font-family:var(--font-numeric);font-variant-numeric:tabular-nums;color:var(--text-strong)}.roast-metric-value{font-size:calc(1.45rem * var(--ui-scale));font-weight:700}.roast-metric-meta{color:var(--text-muted);font-size:calc(12px * var(--ui-scale))}.roast-stack{display:flex;flex-direction:column;gap:10px}.roast-inline{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.roast-controls-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.roast-controls-grid--single{grid-template-columns:minmax(0,1fr)}.roast-field,.roast-select{width:100%;min-height:calc(38px * var(--ui-scale));padding:calc(9px * var(--ui-scale)) calc(11px * var(--ui-scale));border:1px solid rgba(31,35,42,.12);border-radius:12px;background:#fffffff5;color:var(--text-strong);font-size:calc(13px * var(--ui-scale))}.roast-field::placeholder{color:var(--text-muted)}.roast-panel-scroll{overflow:auto}.roast-list{display:flex;flex-direction:column;gap:10px}.roast-list-row{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:calc(12px * var(--ui-scale)) calc(14px * var(--ui-scale));border:1px solid rgba(31,35,42,.08);border-radius:14px;background:#ffffffc7}.roast-list-row__meta{display:flex;flex-direction:column;gap:4px;min-width:0}.roast-list-row__title{font-size:calc(13px * var(--ui-scale));font-weight:700;color:var(--text-strong)}.roast-list-row__subtitle{color:var(--text-muted);font-size:calc(12px * var(--ui-scale))}.roast-list-row__value{flex-shrink:0;color:var(--text-default);font-size:calc(12px * var(--ui-scale));font-weight:700}.roast-reference-picker{position:relative}.roast-reference-picker__menu{display:flex;flex-direction:column;gap:6px;max-height:420px;padding:8px;border:1px solid rgba(31,35,42,.12);border-radius:12px;background:#fff;box-shadow:0 8px 24px #1f232a1f;overflow:hidden;font-size:11px}.roast-reference-picker__menu .roast-controls-grid{gap:5px}.roast-reference-picker__menu .roast-field,.roast-reference-picker__menu .roast-select{min-height:28px;padding:4px 8px;font-size:11px;border-radius:8px}.roast-reference-picker__menu .roast-button,.roast-reference-picker__menu .roast-inline .roast-button{min-height:24px;padding:3px 8px;font-size:10px;border-radius:8px}.roast-reference-picker__menu .roast-inline{gap:5px}.roast-reference-picker__list{overflow-y:auto;display:flex;flex-direction:column;gap:4px;min-height:0;flex:1}.roast-reference-picker__item{width:100%;padding:5px 8px;border:1px solid rgba(31,35,42,.08);border-radius:8px;background:#f8f9fae6;text-align:left;cursor:pointer}.roast-reference-picker__item .roast-list-row__title{font-size:11px}.roast-reference-picker__item .roast-list-row__subtitle{font-size:10px}.roast-reference-picker__item:hover{border-color:#d5572f2e}.roast-empty-state{padding:16px;border:1px dashed rgba(31,35,42,.12);border-radius:16px;color:var(--text-muted);font-size:calc(13px * var(--ui-scale))}.roast-dashboard--focus .roast-dashboard__grid{min-height:calc(100vh - 160px)}.roast-dashboard--focus .roast-dashboard__panel-shell{transition:transform .2s ease-out,opacity .2s ease-out,top .2s ease-out,left .2s ease-out,right .2s ease-out,bottom .2s ease-out}.roast-dashboard--focus .roast-dashboard__panel-shell--liveRoasting{position:fixed;top:0;right:0;bottom:0;left:0;z-index:90;width:min(90vw,1600px);height:min(90vh,980px);margin:auto}.roast-dashboard--focus .roast-dashboard__panel-shell--navigation,.roast-dashboard--focus .roast-dashboard__panel-shell--controls,.roast-dashboard--focus .roast-dashboard__panel-shell--eventLog,.roast-dashboard--focus .roast-dashboard__panel-shell--systemHealth,.roast-dashboard--focus .roast-dashboard__panel-shell--batchInfo{position:fixed;z-index:80;opacity:.46;transform:scale(.92);pointer-events:none}.roast-dashboard--focus .roast-dashboard__panel-shell--navigation{top:90px;left:22px;width:220px;height:calc(100vh - 170px)}.roast-dashboard--focus .roast-dashboard__panel-shell--controls{top:90px;right:22px;width:min(320px,28vw);max-height:34vh}.roast-dashboard--focus .roast-dashboard__panel-shell--eventLog{right:22px;bottom:22px;width:min(340px,30vw);max-height:34vh}.roast-dashboard--focus .roast-dashboard__panel-shell--batchInfo{left:22px;bottom:22px;width:min(320px,28vw);max-height:30vh}.roast-dashboard--focus .roast-dashboard__panel-shell--systemHealth{left:calc(50% - 240px);bottom:22px;width:min(480px,40vw);max-height:24vh}.roast-dashboard--focus .roast-panel-card{height:100%}.roast-dashboard--focus .roast-panel-card--focus{box-shadow:0 28px 64px #1f232a2e}.roast-dashboard--focus .roast-panel-card__header{padding:14px 16px 0}.roast-dashboard--focus .roast-panel-card__content,.roast-dashboard--focus .roast-live-panel__chart{flex:1 1 auto;max-height:none;aspect-ratio:auto}.roast-dashboard--focus .roast-panel-card__content{padding:12px 16px 16px}.roast-dashboard--focus .roast-live-panel{gap:6px}.roast-dashboard--focus .roast-live-toolbar-meta{max-width:min(42vw,520px)}.roast-dashboard--focus .roast-live-panel__toolbar .roast-button{min-height:calc(28px * var(--ui-scale));padding:calc(4px * var(--ui-scale)) calc(9px * var(--ui-scale));font-size:calc(10px * var(--ui-scale))}.roast-dashboard--focus .roast-panel-card--edge-docked .roast-panel-card__content{overflow:hidden}@media (max-width: 1200px){.roast-dashboard__grid{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}.roast-dashboard__column--nav{width:auto}.roast-dashboard__column--main{grid-column:1 / -1;order:1}.roast-dashboard__column--nav{order:2}.roast-dashboard__column--side{order:3}.roast-dashboard__slot--navigation,.roast-dashboard__slot--bottomSecondary{width:100%}}@media (max-width: 860px){.workspace-shell,.desktop-page__grid--sidebar{grid-template-columns:minmax(0,1fr)}.roast-live-panel__chart{min-height:400px;aspect-ratio:auto}.roast-dashboard__grid{grid-template-columns:minmax(0,1fr)}.roast-dashboard__column--main,.roast-dashboard__column--nav,.roast-dashboard__column--side{grid-column:auto;order:initial}.roast-metric-grid,.roast-controls-grid{grid-template-columns:minmax(0,1fr)}.roast-live-meta-item--overlay{max-width:100%}.roast-live-toolbar-meta{margin-left:0;max-width:100%;justify-content:flex-start}}@media (prefers-reduced-motion: reduce){.roast-dashboard__panel-shell,.roast-dashboard__drag-handle,.roast-nav__item,.roast-button{transition:none}}.qc-entry-page{width:min(1040px,96vw);margin:20px auto;padding-bottom:20px}.qc-entry-page--narrow{width:min(860px,96vw)}.qc-entry-shell,.qc-entry-panel,.qc-entry-status-card,.qc-entry-modal{border:1px solid rgba(31,35,42,.08);border-radius:24px;background:linear-gradient(180deg,#fffffffa,#f5f6f8fa);box-shadow:inset 0 1px #ffffffe0,0 18px 40px #1f232a14}.qc-entry-shell{position:relative;overflow:hidden;padding:22px;display:flex;flex-direction:column;gap:16px;background:radial-gradient(circle at top left,rgba(213,87,47,.12),transparent 34%),linear-gradient(180deg,#fffffffa,#f3f5f7fa)}.qc-entry-shell:before{content:"";position:absolute;top:-96px;right:-48px;width:220px;height:220px;pointer-events:none;background:radial-gradient(circle,rgba(213,87,47,.12),transparent 72%)}.qc-entry-shell>*{position:relative;z-index:1}.qc-entry-header{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;flex-wrap:wrap}.qc-entry-header__copy{display:flex;flex-direction:column;gap:8px;min-width:0}.qc-entry-kicker,.qc-entry-panel__kicker{color:var(--text-muted);font-size:10px;font-weight:700;letter-spacing:.12em;text-transform:uppercase}.qc-entry-title{margin:0;font-family:var(--font-heading);font-size:clamp(1.55rem,3vw,1.95rem);line-height:1.05;color:var(--text-strong)}.qc-entry-subtitle{margin:0;color:var(--text-muted);font-size:14px}.qc-entry-mode-toggle{display:inline-flex;align-items:center;gap:6px;padding:4px;border-radius:999px;border:1px solid rgba(31,35,42,.08);background:#1f232a0a}.qc-entry-mode-toggle button{border:0;background:transparent;color:var(--text-muted);border-radius:999px;padding:7px 14px;font-size:11px;font-weight:700;letter-spacing:.08em;text-transform:uppercase}.qc-entry-mode-toggle button.is-active{background:var(--rp-accent);color:var(--text-on-accent);box-shadow:0 10px 18px #d5572f33}.qc-entry-header__actions,.qc-entry-actions{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.qc-entry-button{min-height:42px;border:1px solid rgba(31,35,42,.08);border-radius:16px;background:#1f232a0a;color:var(--text-default);padding:10px 14px;cursor:pointer;font-weight:700;white-space:nowrap;transition:border-color var(--transition-fast),background var(--transition-fast),color var(--transition-fast),transform var(--transition-fast),box-shadow var(--transition-fast)}.qc-entry-button:hover{transform:translateY(-1px);box-shadow:0 12px 22px #1f232a14}.qc-entry-button:disabled{cursor:not-allowed;opacity:.58;transform:none;box-shadow:none}.qc-entry-button--primary{border-color:var(--rp-accent);background:var(--rp-accent);color:var(--text-on-accent)}.qc-entry-button--secondary{background:#ffffffd6}.qc-entry-button--ghost{background:transparent}.qc-entry-button--active{border-color:#d5572f3d;background:#d5572f14;color:var(--rp-accent)}.qc-entry-panel{padding:18px}.qc-entry-panel--error{border-color:#d1323224;background:linear-gradient(180deg,#fff9f9fa,#fff4f4fa)}.qc-entry-panel__header{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;margin-bottom:14px}.qc-entry-panel__heading{display:flex;flex-direction:column;gap:6px}.qc-entry-panel__title{margin:0;font-family:var(--font-heading);font-size:17px;color:var(--text-strong)}.qc-entry-panel__meta{margin:0;color:var(--text-muted);font-size:13px;font-weight:600}.qc-entry-empty,.qc-entry-loading{margin:0;color:var(--text-muted);font-weight:600}.qc-entry-selected-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:12px}.qc-entry-selected-card{border:1px solid rgba(31,35,42,.08);border-radius:18px;background:#ffffffdb;padding:12px 13px;box-shadow:inset 0 1px #ffffffe6}.qc-entry-selected-card.is-dragging{box-shadow:0 14px 28px #1f232a24}.qc-entry-selected-card__row{display:flex;align-items:flex-start;justify-content:space-between;gap:10px}.qc-entry-selected-card__label{margin:0;flex:1 1 auto;min-width:0;font-weight:700;color:var(--text-strong)}.qc-entry-selected-card__actions{display:inline-flex;align-items:center;justify-content:flex-end;gap:8px;flex-shrink:0}.qc-entry-selected-card__order-tag{color:var(--text-muted);font-size:12px;font-weight:700;white-space:nowrap}.qc-entry-chip{display:inline-flex;align-items:center;justify-content:center;min-height:22px;margin-left:6px;padding:1px 7px;border-radius:999px;border:1px solid rgba(213,87,47,.2);background:#d5572f14;color:var(--rp-accent);font-size:11px;font-weight:700}.qc-entry-selected-card__meta,.qc-entry-list-meta{margin:4px 0 0;color:var(--text-muted)}.qc-entry-selected-card__meta{font-size:13px}.qc-entry-drag-button{width:36px;height:32px;border:1px solid rgba(31,35,42,.08);background:#1f232a0a;border-radius:12px;cursor:grab;color:var(--text-muted);font-weight:700}.qc-entry-list{border:1px solid rgba(31,35,42,.08);border-radius:20px;background:#fffc;overflow:hidden}.qc-entry-pagination{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:14px}.qc-entry-pagination__meta{margin:0;color:var(--text-muted);font-size:13px;font-weight:700;text-align:center}.qc-entry-list-row{display:flex;align-items:flex-start;gap:10px;padding:12px 14px;border-top:1px solid rgba(31,35,42,.08);background:transparent;cursor:pointer;transition:background var(--transition-fast)}.qc-entry-list-row:first-child{border-top:0}.qc-entry-list-row.is-selected{background:#d5572f14}.qc-entry-checkbox{margin-top:3px}.qc-entry-list-copy{min-width:0}.qc-entry-list-label{display:block;font-weight:700;color:var(--text-strong)}.qc-entry-list-meta{display:block;font-size:13px}.qc-entry-status-card{padding:22px}.qc-entry-status-card__title{margin:0 0 8px;font-size:var(--text-lg);color:var(--text-strong)}.qc-entry-status-card__body{margin:0;color:var(--text-default)}.qc-entry-status-card__body--spaced{margin-bottom:14px}.qc-entry-toast{position:fixed;top:78px;left:50%;transform:translate(-50%);z-index:1000;border:1px solid rgba(213,87,47,.16);border-radius:999px;background:#fffffff0;color:var(--text-strong);padding:10px 14px;font-weight:700;box-shadow:0 16px 30px #1f232a1f;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px)}.qc-entry-modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:#0f141c52;z-index:180;display:flex;align-items:center;justify-content:center;padding:16px;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.qc-entry-modal{width:min(420px,100%);padding:18px}.qc-entry-modal__title{margin:0 0 8px;font-size:var(--text-lg);color:var(--text-strong)}.qc-entry-modal__subtitle,.qc-entry-modal__hint{margin:0 0 10px;color:var(--text-muted);font-size:13px;line-height:1.5}.qc-entry-modal__input{width:100%;border:1px solid rgba(31,35,42,.08);border-radius:16px;padding:11px 13px;margin-bottom:8px;background:#ffffffdb;color:var(--text-default);font-size:16px}.qc-entry-modal__input::placeholder{color:var(--text-muted)}.qc-entry-modal__input:focus{outline:none;border-color:#d5572f47;box-shadow:inset 0 1px #ffffffeb,0 0 0 4px #d5572f1a}.qc-entry-modal__input--suggested{color:var(--text-muted)}.qc-entry-modal__error{margin:0 0 10px;color:#b64d2f;font-weight:600}@media (max-width: 48rem){.qc-entry-shell,.qc-entry-panel,.qc-entry-status-card,.qc-entry-modal{border-radius:20px}.qc-entry-shell,.qc-entry-panel{padding:16px}.qc-entry-header__actions,.qc-entry-actions{width:100%}.qc-entry-button{flex:1 1 0;justify-content:center}.qc-entry-selected-grid{grid-template-columns:1fr}.qc-entry-pagination{flex-wrap:wrap}.qc-entry-pagination__meta{width:100%;order:-1}}.qc-mobile-page{width:min(1200px,96vw);min-height:calc(100dvh - 148px);margin:16px auto 0;padding:18px;display:flex;flex-direction:column;gap:16px;position:relative;isolation:isolate;border:1px solid rgba(31,35,42,.08);border-radius:30px;background:radial-gradient(circle at top left,rgba(213,87,47,.12),transparent 32%),linear-gradient(180deg,#fffffffa,#f2f4f7fa);box-shadow:0 22px 54px #1f232a1a;overflow:hidden}.qc-mobile-page:before,.qc-mobile-page:after{content:"";position:absolute;pointer-events:none;z-index:0}.qc-mobile-page:before{top:-100px;left:-48px;width:260px;height:260px;background:radial-gradient(circle,rgba(213,87,47,.18),transparent 72%)}.qc-mobile-page:after{right:-80px;bottom:-120px;width:280px;height:280px;background:radial-gradient(circle,rgba(31,35,42,.08),transparent 74%)}.qc-mobile-page>*{position:relative;z-index:1}.qc-mobile-page.is-read-only{background:radial-gradient(circle at top left,rgba(82,161,82,.08),transparent 32%),linear-gradient(180deg,#fffffffa,#f2f4f7fa)}.qc-mobile-header{position:sticky;top:0;z-index:2;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 14px;border-radius:20px;border:1px solid rgba(31,35,42,.08);background:#ffffffdb;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px)}.qc-mobile-header h1{margin:0;font-family:var(--font-heading);font-size:var(--text-md);color:var(--text-strong)}.qc-mobile-mode-toggle{display:inline-grid;grid-template-columns:1fr 1fr;padding:3px;border-radius:999px;border:1px solid rgba(31,35,42,.08);background:#1f232a0a}.qc-mobile-mode-toggle button{border:0;background:transparent;color:var(--text-muted);padding:7px 14px;border-radius:999px;font-size:11px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;transition:background var(--transition-fast),color var(--transition-fast),transform var(--transition-fast)}.qc-mobile-mode-toggle button.is-active{background:var(--rp-accent);color:var(--text-on-accent);box-shadow:0 8px 18px #d5572f47}.qc-mobile-mode-toggle button:disabled{opacity:.5;cursor:not-allowed}.qc-mobile-toast{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:12px 14px;border-radius:18px;border:1px solid rgba(209,50,50,.18);background:linear-gradient(180deg,#fff5f5fa,#ffefeffa);color:#7a2323;box-shadow:0 10px 24px #7a232314;font-size:var(--text-sm)}.qc-mobile-toast button{border:1px solid rgba(209,50,50,.24);border-radius:999px;background:#ffffffb3;color:inherit;padding:6px 10px}.qc-mobile-body{flex:1;min-height:0;display:grid;grid-template-columns:96px minmax(0,1fr);gap:16px}.qc-mobile-cup-nav{min-height:0;display:flex;flex-direction:column;gap:12px;padding:14px 10px 12px;border:1px solid rgba(31,35,42,.08);border-radius:24px;background:linear-gradient(180deg,#fffffffa,#f4f6f8fa);box-shadow:inset 0 1px #ffffffe0,0 18px 36px #1f232a14;color:var(--text-default)}.qc-mobile-cup-nav.is-read-only{opacity:.96}.qc-mobile-cup-nav__header{display:flex;flex-direction:column;gap:4px;padding:0 2px}.qc-mobile-cup-nav__count{font-family:var(--font-numeric);font-size:1.25rem;font-weight:700;color:var(--text-strong)}.qc-mobile-cup-toolbar{display:grid;gap:6px}.qc-mobile-cup-toolbar button{min-height:34px;border:1px solid rgba(31,35,42,.08);border-radius:14px;background:#1f232a0a;color:var(--text-default);font-size:11px;font-weight:700;letter-spacing:.04em;transition:border-color var(--transition-fast),background var(--transition-fast),transform var(--transition-fast)}.qc-mobile-cup-toolbar button.is-active{border-color:#d5572f6b;background:#d5572f2e;color:#fff4ef}.qc-mobile-cup-toolbar button:disabled{opacity:.55}.qc-mobile-cup-list{min-height:0;display:flex;flex-direction:column;gap:10px;overflow-y:auto;-webkit-overflow-scrolling:touch;padding-right:2px}.qc-mobile-cup-item{min-height:56px;padding:10px 8px;border-radius:18px;border:1px solid rgba(31,35,42,.08);background:#1f232a0a;color:var(--text-default);position:relative;box-shadow:inset 0 1px #fffc;transition:transform .16s ease,box-shadow .16s ease,background-color .16s ease,border-color .16s ease,color .16s ease}.qc-mobile-cup-item:hover{border-color:#1f232a29;color:var(--text-strong)}.qc-mobile-cup-label{display:flex;flex-direction:column;align-items:center;justify-content:center;line-height:1.1;gap:4px}.qc-mobile-cup-initials{font-size:14px;font-weight:800;letter-spacing:.06em}.qc-mobile-cup-session-no{font-size:9px;font-weight:700;color:var(--text-muted)}.qc-mobile-cup-item.is-partial{border-color:#d5572f52;color:var(--rp-accent)}.qc-mobile-cup-item.is-active{transform:translateY(-1px);border-color:#d5572f6b;background:linear-gradient(180deg,#d5572f2e,#d5572f14);color:var(--text-strong);box-shadow:inset 0 1px #ffffffe6,0 12px 26px #d5572f24}.qc-mobile-cup-item.is-active .qc-mobile-cup-session-no{color:var(--rp-accent)}.qc-mobile-cup-item.is-dragging{opacity:.78;transform:scale(.98);box-shadow:0 12px 28px #0f172a47}.qc-mobile-cup-item.is-drag-over{border-color:#d5572f94;box-shadow:inset 0 0 0 1px #d5572f94}.qc-mobile-drag-handle{position:absolute;top:5px;right:6px;font-size:10px;color:var(--text-muted);cursor:grab;-webkit-user-select:none;user-select:none;touch-action:none}.qc-mobile-cup-item.is-dragging .qc-mobile-drag-handle{cursor:grabbing}.qc-mobile-main-panel{min-width:0;min-height:0;overflow-y:auto;-webkit-overflow-scrolling:touch;padding-right:2px;display:flex;flex-direction:column;gap:16px}.qc-mobile-main-panel--empty{justify-content:center}.qc-mobile-empty-state{display:grid;place-items:center;min-height:220px;padding:24px;border-radius:24px;border:1px dashed rgba(31,35,42,.16);background:#ffffffb8;color:var(--text-muted);font-weight:700;font-size:var(--text-base)}.qc-mobile-panel,.qc-quick-cupping,.qc-mobile-footer,.qc-manage-modal{border:1px solid rgba(31,35,42,.08);border-radius:24px;background:linear-gradient(180deg,#fffffffa,#f5f6f8fa);box-shadow:inset 0 1px #ffffffe0,0 18px 40px #1f232a14}.qc-mobile-panel{padding:18px}.qc-mobile-panel--hero{display:flex;flex-direction:column;gap:16px;background:linear-gradient(135deg,rgba(213,87,47,.08),transparent 42%),linear-gradient(180deg,#fffffffa,#f5f6f8fa)}.qc-mobile-panel-kicker{color:var(--text-muted);font-size:10px;font-weight:700;letter-spacing:.12em;text-transform:uppercase}.qc-mobile-main-header{display:flex;flex-direction:column;gap:10px}.qc-mobile-main-header__row{display:flex;align-items:flex-start;justify-content:space-between;gap:14px}.qc-mobile-main-header__copy{display:flex;flex-direction:column;gap:8px;min-width:0;flex:1 1 auto}.qc-mobile-main-header__copy strong{display:block;font-family:var(--font-heading);font-size:clamp(1.2rem,2vw,1.45rem);line-height:1.1;color:var(--text-strong)}.qc-mobile-main-header__meta{display:flex;align-items:center;justify-content:flex-end;gap:8px;flex-wrap:wrap}.qc-mobile-main-header__actions{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.qc-room-header-actions{display:flex;align-items:center;justify-content:flex-end;gap:8px;flex-wrap:wrap}.qc-save-pill,.qc-mobile-total-score,.qc-mobile-rank-pill,.qc-mobile-section-badge{display:inline-flex;align-items:center;justify-content:center;min-height:34px;padding:6px 12px;border-radius:999px;font-weight:700}.qc-save-pill{font-size:10px;letter-spacing:.06em;border:1px solid var(--border-soft)}.qc-save-pill.is-saving{color:#b45309;border-color:#f5d08f;background:#fff8eb}.qc-save-pill.is-error{color:#9f1239;border-color:#f7b7c8;background:#fff1f5}.qc-save-pill.is-queued{color:#0f766e;border-color:#8dd8d1;background:#ecfeff}.qc-save-pill.is-saved{color:#166534;border-color:#a7dfb2;background:#effdf2}.qc-mobile-total-score{min-width:92px;flex:0 0 auto;color:var(--text-strong);font-family:var(--font-numeric);font-size:13px;letter-spacing:.02em;border:1px solid rgba(31,35,42,.08);background:#1f232a0a;white-space:nowrap}.qc-mobile-rank-pill,.qc-mobile-section-badge{color:var(--rp-accent);font-size:11px;border:1px solid rgba(213,87,47,.18);background:#d5572f14}.qc-mobile-progress-card{display:flex;flex-direction:column;gap:10px;padding:14px 16px;border-radius:20px;border:1px solid rgba(31,35,42,.06);background:#1f232a08}.qc-mobile-progress-card__header,.qc-mobile-section-header{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap}.qc-mobile-progress-card__label{color:var(--text-muted);font-size:11px;font-weight:700;letter-spacing:.08em;text-transform:uppercase}.qc-mobile-progress-track{width:100%;height:10px;border-radius:999px;background:#1f232a14;overflow:hidden}.qc-mobile-progress-text,.qc-score-value{font-family:var(--font-numeric)}.qc-mobile-progress-text{font-weight:700;font-size:12px;color:var(--text-muted);white-space:nowrap}.qc-mobile-progress-fill{height:100%;background:linear-gradient(90deg,var(--rp-accent),#ec8a61);box-shadow:0 6px 16px #d5572f42;transition:width .12s ease}.qc-mobile-score-panel{display:flex;flex-direction:column;gap:14px}.qc-mobile-section-heading{display:flex;flex-direction:column;gap:6px}.qc-mobile-section-title{margin:0;font-family:var(--font-heading);font-size:18px;color:var(--text-strong)}.qc-quick-cupping{padding:18px;display:flex;flex-direction:column;gap:16px}.qc-quick-header,.qc-quick-memo-head{display:flex;align-items:center;justify-content:space-between;gap:10px;flex-wrap:wrap}.qc-quick-reactions{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}.qc-quick-reactions button{min-height:46px;border:1px solid rgba(31,35,42,.08);border-radius:16px;background:#1f232a0a;color:var(--text-default);font-size:12px;line-height:1;transition:transform var(--transition-fast),border-color var(--transition-fast),background var(--transition-fast),box-shadow var(--transition-fast)}.qc-quick-reactions button.is-active{transform:translateY(-1px);border-color:#d5572f52;background:linear-gradient(180deg,#d5572f2e,#d5572f1a);box-shadow:0 10px 20px #d5572f24}.qc-quick-reactions button[disabled]{opacity:.75}.qc-quick-memo-block{display:flex;flex-direction:column;gap:8px;padding:14px;border-radius:18px;border:1px solid rgba(31,35,42,.06);background:#1f232a08}.qc-quick-memo-label{font-size:12px;font-weight:700;color:var(--text-muted)}.qc-quick-save-button{border:1px solid var(--rp-accent);border-radius:999px;background:var(--rp-accent);color:var(--text-on-accent);padding:5px 12px;font-size:12px;font-weight:700;line-height:1;box-shadow:0 10px 18px #d5572f2e}.qc-quick-memo-block textarea{resize:vertical;min-height:80px;border:1px solid rgba(31,35,42,.08);border-radius:16px;padding:12px 14px;background:#ffffffe6;color:var(--text-default);font-size:16px;line-height:1.5}.qc-mobile-field-list{display:flex;flex-direction:column;gap:12px}.qc-mobile-field-item{display:flex;flex-direction:column}.qc-score-row{border:1px solid rgba(31,35,42,.08);border-radius:20px;padding:12px;background:#ffffffdb;box-shadow:inset 0 1px #ffffffd6}.qc-score-row-header{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:10px;flex-wrap:wrap}.qc-score-label{font-family:var(--font-heading);font-size:15px;line-height:1.1;color:var(--text-strong)}.qc-score-actions{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.qc-score-value{font-weight:700;color:var(--text-muted);white-space:nowrap;font-size:12px}.qc-score-row-graph{width:100%;height:48px;border:1px solid rgba(31,35,42,.08);border-radius:16px;background:linear-gradient(180deg,#f8f9fafa,#eff1f3fa);touch-action:none}.qc-score-row-graph canvas{display:block;width:100%;height:100%}.qc-score-clear-button,.qc-score-edit-button{min-height:32px;padding:6px 10px;border-radius:999px;font-size:12px}.qc-score-clear-button{border:1px solid rgba(31,35,42,.08);background:#1f232a0a;color:var(--text-default)}.qc-score-edit-button{border:1px solid rgba(213,87,47,.24);background:#d5572f14;color:var(--rp-accent)}.qc-score-row-graph.is-locked{cursor:default;opacity:.86;touch-action:pan-y}.qc-score-row.is-read-only .qc-score-row-graph{opacity:.78}.qc-penalty-box-grid{display:flex;align-items:center;justify-content:space-between;gap:8px;width:100%}.qc-penalty-box{width:34px;height:34px;min-width:34px;border:1px solid rgba(31,35,42,.16);border-radius:10px;background:#1f232a0a;color:var(--rp-accent);font-size:16px;line-height:1;font-weight:800;display:inline-flex;align-items:center;justify-content:center;transition:transform var(--transition-fast),border-color var(--transition-fast),background var(--transition-fast)}.qc-penalty-box.is-checked{transform:translateY(-1px);border-color:#d5572f57;background:#d5572f1f}.qc-mobile-header-button{min-height:38px;border-radius:999px;padding:8px 14px;font-size:12px;font-weight:700;border:1px solid rgba(31,35,42,.08);background:#1f232a0a;color:var(--text-default)}.qc-mobile-header-button:disabled{opacity:.58}.qc-mobile-header-button--primary{border-color:#d5572f3d;background:#d5572f14;color:var(--rp-accent)}.qc-mobile-header-button--danger{border-color:#d1323233;background:#d1323214;color:#b42318}.qc-manage-modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:70;background:#0f172a7a;display:flex;align-items:center;justify-content:center;padding:16px;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}.qc-manage-modal{width:min(560px,96vw);max-height:86vh;overflow:hidden;display:flex;flex-direction:column}.qc-manage-modal-header{padding:18px 20px 14px;border-bottom:1px solid rgba(31,35,42,.08)}.qc-manage-modal-header h3{margin:0 0 6px;font-family:var(--font-heading);font-size:18px;color:var(--text-strong)}.qc-manage-modal-header p{margin:0;font-size:12px;color:var(--text-muted)}.qc-manage-modal-body{padding:14px 20px;overflow:auto;display:flex;flex-direction:column;gap:10px}.qc-manage-row{display:flex;align-items:flex-start;gap:10px;padding:12px;border:1px solid rgba(31,35,42,.08);border-radius:18px;background:#1f232a08}.qc-manage-row input{margin-top:2px}.qc-manage-row-texts{display:flex;flex-direction:column;gap:4px}.qc-manage-row-texts strong{font-size:14px;color:var(--text-strong)}.qc-manage-row-texts span{font-size:12px;color:var(--text-muted)}.qc-manage-loading{padding:18px 0;color:var(--text-muted);font-size:13px}.qc-manage-modal-footer{border-top:1px solid rgba(31,35,42,.08);padding:14px 20px 18px;display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap}.qc-manage-pagination,.qc-manage-actions{display:flex;align-items:center;gap:8px}.qc-manage-modal-footer button{min-height:36px;border:1px solid rgba(31,35,42,.08);background:#1f232a0a;color:var(--text-default);border-radius:999px;padding:7px 12px;font-weight:600}.qc-manage-modal-footer button.is-primary{border-color:var(--rp-accent);background:var(--rp-accent);color:var(--text-on-accent)}@media (max-width: 54rem){.qc-mobile-page{width:min(100%,96vw);padding:14px;border-radius:26px}.qc-mobile-body{grid-template-columns:84px minmax(0,1fr);gap:12px}.qc-mobile-panel,.qc-quick-cupping{padding:16px}}@media (max-width: 40rem){.qc-mobile-page{min-height:calc(100dvh - 138px);margin-top:10px;padding:12px;border-radius:24px}.qc-mobile-body{grid-template-columns:76px minmax(0,1fr)}.qc-mobile-cup-nav{padding:12px 8px 10px;border-radius:20px}.qc-mobile-cup-item{min-height:50px;border-radius:16px}.qc-mobile-cup-initials{font-size:13px}.qc-mobile-cup-session-no{font-size:8px}.qc-mobile-main-header__meta{width:100%;justify-content:flex-start}.qc-quick-reactions{gap:6px}.qc-quick-reactions button{min-height:42px;border-radius:14px;font-size:11px}.qc-room-header-actions,.qc-mobile-main-header__actions{width:100%}.qc-penalty-box-grid{gap:6px}.qc-penalty-box{width:30px;height:30px;min-width:30px}}@media (min-width: 64rem){.qc-mobile-page{min-height:calc(100dvh - 104px)}}.qc-result-page{width:min(1040px,96vw);margin:20px auto;padding-bottom:20px}.qc-result-toast{position:fixed;top:74px;left:50%;transform:translate(-50%);z-index:120;background:#20262ff2;color:#fff;padding:8px 12px;border-radius:10px;font-weight:700}.qc-result-panel{margin-top:12px;border:1px solid rgba(31,35,42,.08);border-radius:28px;background:radial-gradient(circle at top left,rgba(213,87,47,.08),transparent 34%),linear-gradient(180deg,#fffffffa,#f4f6f8fa);box-shadow:inset 0 1px #ffffffe0,0 18px 36px #1f232a14;padding:18px}.qc-result-panel:first-of-type{margin-top:0}.qc-result-panel--results{display:flex;flex-direction:column;gap:12px}.qc-result-list{display:grid;gap:12px}.qc-result-summary-card{width:100%;border:1px solid rgba(31,35,42,.08);border-radius:22px;background:#ffffffe0;padding:14px;text-align:left;cursor:pointer;transition:transform var(--transition-fast),box-shadow var(--transition-fast),border-color var(--transition-fast)}.qc-result-summary-card:hover:not(:disabled){transform:translateY(-1px);border-color:#d5572f38;box-shadow:0 14px 26px #1f232a1a}.qc-result-summary-card:disabled{cursor:default;opacity:.82}.qc-result-summary-card__header{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.qc-result-summary-card__title-group{display:flex;flex-direction:column;gap:6px;min-width:0}.qc-result-summary-card__title-row{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.qc-result-summary-card__title{color:var(--text-strong);font-size:1.1rem}.qc-result-summary-card__meta{margin:0;color:var(--text-muted);font-size:13px;font-weight:600}.qc-result-summary-card__average{display:inline-flex;align-items:center;justify-content:center;min-height:34px;padding:6px 12px;border-radius:999px;border:1px solid rgba(31,35,42,.08);background:#1f232a0a;color:var(--text-strong);font-family:var(--font-numeric);font-size:13px;font-weight:700;white-space:nowrap}.qc-result-summary-card__score-badges{display:inline-flex;align-items:center;justify-content:flex-end;gap:8px;flex-wrap:wrap}.qc-result-summary-card__rank{display:inline-flex;align-items:center;justify-content:center;min-height:34px;padding:6px 11px;border-radius:999px;border:1px solid rgba(213,87,47,.18);background:#d5572f14;color:var(--rp-accent);font-size:13px;font-weight:700;white-space:nowrap}.qc-result-summary-card__participants,.qc-result-quick-list{display:flex;align-items:center;gap:6px;flex-wrap:wrap}.qc-result-summary-card__participants{margin-top:12px}.qc-result-summary-card__footer{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:12px;flex-wrap:wrap}.qc-result-summary-card__cta{color:var(--rp-accent);font-size:13px;font-weight:700;white-space:nowrap}.qc-result-summary-card__memos{margin-top:12px;padding-top:12px;border-top:1px solid rgba(31,35,42,.08);display:flex;flex-direction:column;gap:8px}.qc-result-summary-card__memos-label{color:var(--text-muted);font-size:11px;font-weight:700;letter-spacing:.08em;text-transform:uppercase}.qc-result-summary-card__memos-list{display:grid;gap:8px}.qc-result-summary-card__memo-item{border:1px solid rgba(31,35,42,.06);border-radius:14px;background:#ffffffeb;padding:10px 11px}.qc-result-summary-card__memo-item strong{display:block;color:var(--text-strong);font-size:12px}.qc-result-summary-card__memo-item p{margin:6px 0 0;color:var(--text-default);font-size:13px;line-height:1.45;white-space:pre-wrap;word-break:break-word}.qc-result-pill{display:inline-flex;align-items:center;justify-content:center;min-height:26px;padding:3px 9px;border-radius:999px;font-size:12px;font-weight:700;border:1px solid rgba(31,35,42,.08);background:#ffffffeb;color:var(--text-muted)}.qc-result-pill--guest,.qc-result-pill--quick{border-color:#d5572f2e;background:#d5572f14;color:var(--rp-accent)}.qc-result-pill--participant{color:var(--text-default)}.qc-result-pill--muted{background:#1f232a0a}.qc-result-detail-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:200;display:flex;align-items:center;justify-content:center;padding:16px;background:#0f141c52;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.qc-result-detail-sheet{width:min(760px,100%);max-height:min(88vh,920px);overflow:hidden;display:flex;flex-direction:column;border:1px solid rgba(31,35,42,.08);border-radius:28px;background:radial-gradient(circle at top left,rgba(213,87,47,.08),transparent 34%),linear-gradient(180deg,#fffffffc,#f4f6f8fc);box-shadow:inset 0 1px #ffffffe0,0 28px 52px #0f141c38}.qc-result-detail-header{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;padding:18px 18px 14px;border-bottom:1px solid rgba(31,35,42,.08)}.qc-result-detail-title-group{display:flex;flex-direction:column;gap:6px;min-width:0}.qc-result-detail-kicker{color:var(--text-muted);font-size:10px;font-weight:700;letter-spacing:.12em;text-transform:uppercase}.qc-result-detail-title{margin:0;color:var(--text-strong);font-family:var(--font-heading);font-size:clamp(1.2rem,2vw,1.5rem);line-height:1.08}.qc-result-detail-subtitle{margin:0;color:var(--text-muted);font-size:13px;font-weight:600}.qc-result-detail-nav{display:flex;align-items:center;gap:8px;flex-shrink:0}.qc-result-icon-button{width:36px;height:36px;border:1px solid rgba(31,35,42,.08);border-radius:999px;background:#ffffffeb;color:var(--text-default);font-size:18px;line-height:1}.qc-result-icon-button:disabled{opacity:.48}.qc-result-detail-body{overflow:auto;padding:18px;display:flex;flex-direction:column;gap:16px}.qc-result-tabs{display:flex;align-items:center;gap:8px;overflow-x:auto;padding-bottom:2px}.qc-result-tab{flex:0 0 auto;min-width:108px;border:1px solid rgba(31,35,42,.08);border-radius:18px;background:#ffffffeb;padding:10px 12px;display:flex;flex-direction:column;gap:4px;text-align:left}.qc-result-tab span{font-size:13px;font-weight:700;color:var(--text-strong)}.qc-result-tab small{color:var(--text-muted);font-size:11px;font-family:var(--font-numeric)}.qc-result-tab.is-active{border-color:#d5572f38;background:#d5572f14}.qc-result-stat-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}.qc-result-stat-card,.qc-result-score-card,.qc-result-memo-card{border:1px solid rgba(31,35,42,.08);border-radius:16px;background:#ffffffeb}.qc-result-stat-card{padding:12px;display:flex;flex-direction:column;gap:6px}.qc-result-stat-card span,.qc-result-score-card__label,.qc-result-memo-card__label{color:var(--text-muted);font-size:11px;font-weight:700;letter-spacing:.04em;text-transform:uppercase}.qc-result-stat-card strong,.qc-result-score-card__value{color:var(--text-strong);font-size:16px;font-weight:700}.qc-result-stat-card strong,.qc-result-score-card__value,.qc-result-tab small{font-family:var(--font-numeric)}.qc-result-stat-card small{color:var(--text-muted);font-size:11px;font-weight:700}.qc-result-score-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(96px,1fr));gap:8px}.qc-result-score-card{padding:10px 11px}.qc-result-score-card__value{margin-top:6px}.qc-result-memo-card{padding:12px}.qc-result-memo-card__body{margin-top:8px;color:var(--text-default);white-space:pre-wrap;word-break:break-word;line-height:1.5}.qc-result-empty{margin:0;color:var(--text-muted);font-weight:600}@media (max-width: 48rem){.qc-result-panel,.qc-result-detail-sheet{border-radius:24px}.qc-result-summary-card__header,.qc-result-detail-header{flex-wrap:wrap}.qc-result-stat-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width: 40rem){.qc-result-page{width:min(100%,96vw)}.qc-result-panel,.qc-result-summary-card{padding:14px}.qc-result-detail-backdrop{align-items:flex-end;padding:12px}.qc-result-detail-sheet{width:100%;max-height:90vh;border-radius:24px 24px 0 0}.qc-result-detail-header,.qc-result-detail-body{padding:16px}.qc-result-stat-grid{grid-template-columns:1fr 1fr}}:root{--rp-primary: #1F232A;--rp-accent: #D5572F;--rp-accent-hover: #C04A25;--rp-accent-light: rgba(213, 87, 47, .12);--rp-neutral-900: #1F232A;--rp-neutral-700: #4A525C;--rp-neutral-500: #8B919B;--rp-neutral-300: #D5DAE0;--rp-neutral-100: #F8F9FA;--bg-app: var(--rp-neutral-100);--bg-surface: #FFFFFF;--bg-surface-2: #F0F1F3;--bg-surface-hover: #E8EAED;--text-strong: var(--rp-neutral-900);--text-default: var(--rp-neutral-700);--text-muted: var(--rp-neutral-500);--text-on-accent: #FFFFFF;--border-soft: var(--rp-neutral-300);--border-strong: var(--rp-neutral-500);--shadow-soft: 0 2px 8px rgba(31, 35, 42, .06);--shadow-medium: 0 8px 24px rgba(31, 35, 42, .1);--shadow-heavy: 0 24px 60px rgba(31, 35, 42, .18);--nav-bg: var(--rp-primary);--nav-text: rgba(255, 255, 255, .92);--nav-text-muted: rgba(255, 255, 255, .6);--nav-border: rgba(255, 255, 255, .1);--nav-accent: var(--rp-accent);--status-ok: #52A152;--status-warn: #D5972F;--status-error: #D5572F;--status-info: #3B82F6;--status-ok-bg: rgba(82, 161, 82, .1);--status-warn-bg: rgba(213, 151, 47, .1);--status-error-bg: rgba(213, 87, 47, .1);--status-info-bg: rgba(59, 130, 246, .1);--font-heading: "Inter", "Wanted Sans", system-ui, -apple-system, BlinkMacSystemFont, sans-serif;--font-body: "Inter", "Wanted Sans", system-ui, -apple-system, BlinkMacSystemFont, sans-serif;--font-label: "Inter", "Wanted Sans", system-ui, -apple-system, BlinkMacSystemFont, sans-serif;--font-numeric: "Geist Mono", "SF Mono", "IBM Plex Mono", "Fira Code", monospace;--font-mono: var(--font-numeric);--text-xs: 10px;--text-sm: 12px;--text-base: 14px;--text-md: 16px;--text-lg: 18px;--text-xl: 20px;--text-2xl: 24px;--leading-tight: 1.2;--leading-normal: 1.5;--leading-relaxed: 1.7;--weight-regular: 400;--weight-medium: 500;--weight-semibold: 600;--weight-bold: 700;--space-1: 4px;--space-2: 8px;--space-3: 12px;--space-4: 16px;--space-5: 20px;--space-6: 24px;--space-8: 32px;--space-10: 40px;--space-12: 48px;--radius-sm: 4px;--radius-md: 8px;--radius-lg: 12px;--radius-xl: 16px;--radius-full: 999px;--transition-fast: .12s ease;--transition-normal: .2s ease}[data-theme=dark]{--bg-app: #14171C;--bg-surface: #1C2028;--bg-surface-2: #252A32;--bg-surface-hover: #2E3440;--text-strong: #E8EAED;--text-default: #B0B5BD;--text-muted: #6B7280;--text-on-accent: #FFFFFF;--border-soft: rgba(255, 255, 255, .08);--border-strong: rgba(255, 255, 255, .16);--shadow-soft: 0 2px 8px rgba(0, 0, 0, .2);--shadow-medium: 0 8px 24px rgba(0, 0, 0, .3);--shadow-heavy: 0 24px 60px rgba(0, 0, 0, .4);--status-ok-bg: rgba(82, 161, 82, .15);--status-warn-bg: rgba(213, 151, 47, .15);--status-error-bg: rgba(213, 87, 47, .15);--status-info-bg: rgba(59, 130, 246, .15)}*{box-sizing:border-box}html{font-size:var(--text-base);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}body{margin:0;font-family:var(--font-body);font-weight:var(--weight-regular);line-height:var(--leading-normal);background:var(--bg-app);color:var(--text-strong)}h1,h2,h3,h4,h5,h6{font-family:var(--font-heading);font-weight:var(--weight-bold);line-height:var(--leading-tight);margin:0}button{font-family:var(--font-label);font-weight:var(--weight-semibold)}input,textarea,select{font-family:var(--font-body)}input::placeholder{color:var(--text-muted);opacity:.9}@keyframes rp-spin{to{transform:rotate(360deg)}}.rp-spin{animation:rp-spin .9s linear infinite}@keyframes rp-pulse{0%,to{opacity:1}50%{opacity:.3}}.rp-pulse{animation:rp-pulse 1.5s ease-in-out infinite}::-webkit-scrollbar{width:6px;height:6px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:var(--rp-neutral-300);border-radius:var(--radius-full)}[data-theme=dark] ::-webkit-scrollbar-thumb{background:var(--rp-neutral-700)}::selection{background:var(--rp-accent-light);color:var(--rp-primary)}.qc-shell__top-nav{display:flex;align-items:center;gap:8px}.qc-shell__content{padding-bottom:20px}
