.shell{display:grid;grid-template-columns:248px minmax(0,1fr);min-height:100dvh}.sidebar{padding:var(--space-8) var(--space-4);background:var(--color-surface-secondary);border-right:1px solid var(--color-separator);display:flex;flex-direction:column;gap:var(--space-6);position:sticky;top:0;height:100dvh}.brand{display:flex;align-items:center;gap:var(--space-3);color:var(--color-text);font-size:var(--type-card-size);font-weight:600;padding:0 var(--space-2)}.brand .caption,.identity .caption{display:block;font-weight:400;margin-top:var(--space-1)}.brand-mark{display:grid;place-items:center;width:44px;height:44px;border-radius:var(--radius-md);background:var(--color-accent-tint);color:var(--color-accent-text);font-weight:700}.sidebar .eyebrow{padding:var(--space-4) var(--space-3) 0}.nav-item{display:flex;align-items:center;gap:var(--space-3);padding:var(--space-3);min-height:48px;width:100%;color:var(--color-text-secondary);border-radius:var(--radius-md);font-weight:500;text-align:left}.nav-item[aria-current=page]{background:var(--color-accent-selected);color:var(--color-accent-text)}nav{display:flex;flex-direction:column;gap:var(--space-2)}.sidebar-bottom{margin-top:auto;display:flex;flex-direction:column;gap:var(--space-4)}.identity{display:flex;align-items:center;gap:var(--space-3);padding:var(--space-4) var(--space-2) 0;border-top:1px solid var(--color-separator);font-size:var(--type-secondary-size)}.avatar{width:40px;height:40px;border-radius:50%;background:var(--color-separator);display:grid;place-items:center;font-weight:600}.stage{min-width:0}.topbar{min-height:72px;display:flex;align-items:center;justify-content:space-between;gap:var(--space-4);padding:var(--space-4) var(--space-8);border-bottom:1px solid var(--color-separator);background:var(--color-surface)}.top-actions{display:flex;align-items:center;gap:var(--space-3)}#breadcrumb{font-weight:600}main{padding:var(--space-8);max-width:1600px;margin:auto;outline:none}.page-head{display:flex;align-items:flex-start;justify-content:space-between;gap:var(--space-4);margin-bottom:var(--space-6)}.page-head p{margin-top:var(--space-2)}.section-head{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);margin-bottom:var(--space-3)}.toolbar{display:flex;align-items:center;gap:var(--space-3);flex-wrap:wrap;margin-bottom:var(--space-6)}.prototype-note{text-align:center;padding:var(--space-6) var(--space-4);font-size:var(--type-caption-size);color:var(--color-text-secondary)}.planner-grid{display:grid;grid-template-columns:minmax(0,1.8fr) minmax(280px,1fr);gap:var(--space-6)}.section-space{margin-top:var(--space-6)}.task-check{display:flex;align-items:center;justify-content:center;width:44px;height:44px;flex-shrink:0;border-radius:50%;color:var(--color-border-strong)}.task-check .icon{width:24px;height:24px;flex-basis:24px}.task-check[aria-pressed=true]{color:var(--color-success)}.task.done .task-title{text-decoration:line-through;color:var(--color-text-secondary)}.task-title{font-weight:500}.task-meta{display:flex;align-items:center;gap:var(--space-2);margin-top:var(--space-1);font-size:var(--type-secondary-size);color:var(--color-text-secondary)}.progress{height:4px;background:var(--color-separator);border-radius:var(--radius-pill);margin-top:var(--space-3);overflow:hidden}.progress span{display:block;height:100%;background:var(--color-accent)}.focus-card{padding:var(--space-6)}.focus-card h2{margin-top:var(--space-3);margin-bottom:var(--space-2)}.date-block{flex:0 0 48px;text-align:center;border:1px solid var(--color-separator);border-radius:var(--radius-md);padding:var(--space-2);font-weight:600}.date-block span{display:block;font-size:var(--type-caption-size);color:var(--color-text-secondary);font-weight:400}.note-block{border-left:3px solid var(--color-accent-selected);padding-left:var(--space-4)}.week-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:var(--space-2)}.day-cell{min-height:160px;padding:var(--space-3);border:1px solid var(--color-separator);border-radius:var(--radius-md);background:var(--color-surface)}.day-cell p{margin-top:var(--space-3);font-size:var(--type-secondary-size)}.reader-grid{display:grid;grid-template-columns:minmax(0,1fr) 248px;gap:var(--space-6)}.reading-paper{background:var(--reader-bg);color:var(--reader-text);padding:var(--space-12);border:1px solid var(--color-separator);border-radius:var(--radius-lg)}.reading-paper h2{margin:var(--space-8) 0 var(--space-4)}.reading-body{font-size:var(--reader-size);line-height:var(--reader-leading);font-weight:400;overflow-wrap:anywhere}.reading-body p+p{margin-top:var(--space-6)}.reading-body ::selection{background:var(--color-accent-selected);color:var(--color-text)}.reading-body mark{background:var(--color-accent-tint);color:var(--color-accent-text);padding:0 var(--space-1)}.reading-summary{padding:var(--space-4);background:var(--color-surface-secondary);color:var(--color-text);border-radius:var(--radius-md);margin:var(--space-6) 0}.reader-aside{display:flex;flex-direction:column;gap:var(--space-4)}.reader-aside .btn{width:100%}.reader-tools{position:sticky;top:var(--space-4)}.article-meta{margin-bottom:var(--space-8)}.reference-grid{columns:3;column-gap:var(--space-4)}.reference-card{width:100%;break-inside:avoid;margin-bottom:var(--space-4);background:var(--color-surface);border:1px solid var(--color-separator);border-radius:var(--radius-lg);overflow:hidden;text-align:left;padding:0;display:block}.reference-card[aria-pressed=true]{outline:2px solid var(--color-accent-text);outline-offset:2px}.reference-card img{display:block;width:100%;height:auto}.reference-info{padding:var(--space-4);display:flex;flex-direction:column;gap:var(--space-2)}.selection-bar{display:flex;align-items:center;gap:var(--space-3);padding:var(--space-3) var(--space-4);background:var(--color-surface);border:1px solid var(--color-separator);border-radius:var(--radius-lg);margin-bottom:var(--space-4)}.pos-grid{display:grid;grid-template-columns:minmax(0,1fr) 328px;gap:var(--space-6);align-items:start}.product-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--space-3)}.product{padding:0;text-align:left;overflow:hidden}.product img{width:100%;aspect-ratio:1;display:block;object-fit:cover}.product-info{padding:var(--space-4)}.product-info p{margin-top:var(--space-2)}.product h3{font-size:var(--type-body-size)}.cart{position:sticky;top:var(--space-4)}.cart-head{padding-bottom:var(--space-4);border-bottom:1px solid var(--color-separator)}.cart-line{padding:var(--space-4) 0;border-bottom:1px solid var(--color-separator)}.quantity{display:flex;align-items:center;gap:var(--space-1)}.quantity .icon-btn{border:1px solid var(--color-separator);padding:var(--space-2)}.total{padding:var(--space-4) 0}.price{font-variant-numeric:tabular-nums;font-weight:600}.wide{width:100%}.status-strip{display:flex;gap:var(--space-3);align-items:center;flex-wrap:wrap;padding:var(--space-3) var(--space-4);background:var(--color-surface);border:1px solid var(--color-separator);border-radius:var(--radius-lg);margin-bottom:var(--space-6)}.status-strip .btn{margin-left:auto}.empty{padding:var(--space-8) var(--space-4);text-align:center;color:var(--color-text-secondary)}.stat-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--space-3)}.stat-grid .value{font-size:var(--type-page-size);line-height:var(--type-page-leading);font-weight:700;margin-top:var(--space-2)}.swatches{display:flex;gap:var(--space-2);flex-wrap:wrap}.swatch{height:48px;flex:1;min-width:48px;border-radius:var(--radius-sm);border:1px solid var(--color-border-strong)}.empty-list{padding:var(--space-6)}.collection-count{font-variant-numeric:tabular-nums}.board-label{padding:var(--space-3) var(--space-4);border-bottom:1px solid var(--color-separator)}
@media(min-width:1600px){.reference-grid{columns:4}}
@media(max-width:1150px){.shell{grid-template-columns:208px minmax(0,1fr)}.planner-grid,.reader-grid{grid-template-columns:minmax(0,1fr)}.reader-aside{display:grid;grid-template-columns:1fr 1fr}.reader-tools{position:static}.reading-paper{padding:var(--space-8)}.pos-grid{grid-template-columns:minmax(0,1fr)}.cart{position:static}.product-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.reference-grid{columns:2}.desktop-label{display:none}}
@media(max-width:760px){.shell{display:block;padding-bottom:calc(var(--space-12) * 2 + env(safe-area-inset-bottom))}.sidebar{position:fixed;inset:auto 0 0;height:auto;padding:var(--space-2) var(--space-2) calc(var(--space-2) + env(safe-area-inset-bottom));border-right:0;border-top:1px solid var(--color-separator);z-index:10;background:var(--color-surface)}.sidebar .brand,.sidebar .eyebrow,.sidebar-bottom{display:none}.sidebar nav{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:var(--space-1)}.nav-item{flex-direction:column;gap:var(--space-1);justify-content:center;font-size:var(--type-caption-size);line-height:var(--type-caption-leading);padding:var(--space-2) var(--space-1);min-height:56px;text-align:center}.nav-item .icon{width:24px;height:24px;flex-basis:24px}.topbar{padding:var(--space-3) var(--space-4);min-height:64px;padding-top:max(var(--space-3),env(safe-area-inset-top))}main{padding:var(--space-6) var(--space-4)}.page-head{flex-wrap:wrap}.page-head>.btn{margin-left:auto}.planner-grid,.pos-grid{grid-template-columns:1fr}.reader-aside{grid-template-columns:1fr}.reading-paper{padding:var(--space-6)}.reference-grid{columns:2;column-gap:var(--space-3)}.reference-info{padding:var(--space-3)}.reference-info h3{font-size:var(--type-body-size);line-height:var(--type-body-leading)}.week-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.cart{position:static}.stat-grid{grid-template-columns:1fr}.toolbar>.segments{width:100%;display:grid;grid-template-columns:repeat(3,1fr)}.segment{padding:var(--space-2);min-width:0}.toast{bottom:calc(96px + env(safe-area-inset-bottom))}.status-strip .btn{margin-left:0}.reader-grid{gap:var(--space-4)}dialog{padding:var(--space-4)}.product-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.selection-bar{flex-wrap:wrap}}
@media(prefers-reduced-motion:no-preference){button,a{transition:background-color .15s,color .15s}}

.mobile-cart-bar{display:none}@media(max-width:760px){.mobile-cart-bar{display:flex;position:fixed;bottom:calc(var(--space-12) * 2 + env(safe-area-inset-bottom));left:var(--space-4);right:var(--space-4);z-index:9;background:var(--color-surface);border-color:var(--color-border-strong);text-align:left}.pos-grid{padding-bottom:var(--space-12)}}
