:root{--primary-50:#f7fceb;--primary-100:#ecf7d2;--primary-200:#daefa8;--primary-300:#c1e375;--primary-400:#a6d44b;--primary-500:#8cc233;--primary-600:#6e9e25;--primary-700:#547820;--primary-800:#445f1f;--primary-900:#3a501e;--primary-950:#1d2c0b;--secondary-50:#fff6ec;--secondary-100:#ffead3;--secondary-200:#ffd2a6;--secondary-300:#ffb36f;--secondary-400:#fe9a47;--secondary-500:#fb7f1f;--secondary-600:#ec6414;--secondary-700:#c44b12;--secondary-800:#9c3c17;--secondary-900:#7e3315;--secondary-950:#441709;--gray-0:#ffffff;--gray-50:#fafafa;--gray-100:#f3f3f3;--gray-150:#ececec;--gray-200:#e4e4e4;--gray-300:#d4d4d4;--gray-400:#a3a3a3;--gray-500:#737373;--gray-600:#666666;--gray-700:#474747;--gray-800:#262626;--gray-850:#1c1c1c;--gray-900:#151515;--gray-950:#0b0b0b;--gray-1000:#050505;--age-0:#8fcb2f;--age-150:#bdd62e;--age-300:#ebd52f;--age-450:#f7b32b;--age-600:#f4862a;--age-750:#e65a2a;--age-900:#cf2e2e;--radius-shell:32px;--radius-card:16px;--radius-overlay:14px;--radius-heroCard:12px;--radius-tile:12px;--radius-input:12px;--radius-control:10px;--radius-menuItem:8px;--radius-avatarSquare:10px;--radius-bar:6px;--radius-kbd:5px;--radius-progress:4px;--radius-bagCell:3px;--radius-legendDot:2px;--radius-pill:9999px;--duration-instant:80ms;--duration-fast:140ms;--duration-base:200ms;--duration-moderate:280ms;--duration-slow:400ms;--duration-data:600ms;--ease-standard:cubic-bezier(0.2,0,0,1);--ease-enter:cubic-bezier(0.16,1,0.3,1);--ease-exit:cubic-bezier(0.4,0,1,1);--ease-drawer:cubic-bezier(0.32,0.72,0,1);--canvas:var(--gray-100);--shellBackdrop:var(--gray-200);--surface:var(--gray-0);--surfaceMuted:var(--gray-50);--surfaceSunken:var(--gray-100);--placeholder:var(--gray-150);--placeholderCap:var(--gray-100);--border:var(--gray-200);--borderStrong:var(--gray-300);--divider:var(--gray-150);--textPrimary:var(--gray-950);--textSecondary:var(--gray-700);--textMuted:var(--gray-500);--textPlaceholder:var(--gray-400);--ink:var(--gray-950);--onInk:var(--gray-0);--buttonPrimaryBg:var(--gray-950);--buttonPrimaryHover:var(--gray-800);--buttonPrimaryText:var(--gray-0);--buttonAccentBg:var(--primary-400);--buttonAccentHover:var(--primary-500);--buttonAccentText:var(--gray-950);--controlOn:var(--gray-950);--accentFill:var(--primary-500);--accentFillSoft:var(--primary-200);--positiveText:var(--primary-700);--negativeText:var(--secondary-700);--warningText:var(--secondary-700);--selectionRing:var(--gray-950);--selectionGap:var(--gray-0);--focusBorder:var(--primary-600);--focusHalo:rgba(140,194,51,0.28);--tooltipBg:var(--gray-950);--tooltipText:var(--gray-0);--chartTooltipBg:var(--gray-0);--chartTooltipBorder:var(--gray-150);--sidebar-bg:var(--gray-0);--sidebar-border:transparent;--sidebar-text:var(--gray-700);--sidebar-textMuted:var(--gray-500);--sidebar-icon:var(--gray-600);--sidebar-itemHoverBg:var(--gray-50);--sidebar-itemHoverText:var(--gray-950);--sidebar-itemActiveBg:var(--gray-100);--sidebar-itemActiveText:var(--gray-950);--sidebar-itemActiveIcon:var(--gray-950);--sidebar-indicator:var(--gray-950);--sidebar-treeLine:var(--gray-200);--sidebar-divider:var(--gray-150);--sidebar-badgeBg:var(--gray-950);--sidebar-badgeText:var(--gray-0);--sidebar-promoCardBg:var(--gray-0);--sidebar-promoCardBorder:var(--gray-200);--sidebar-edgeHandleBg:var(--gray-0);--sidebar-edgeHandleBorder:var(--gray-200);--overlay:rgba(255,255,255,0.88);--scrim:rgba(11,11,11,0.32);--highlight:#edf25c;--lavender:#b9aef2;--danger:#e5484d;--danger-text:var(--textPrimary);--card-border:transparent;--empty-bag:var(--gray-150);--empty-edge:var(--gray-300);--shadow-overlay:0 0 0 1px rgba(11,11,11,0.05),0 4px 8px -2px rgba(11,11,11,0.06),0 18px 44px -12px rgba(11,11,11,0.2);--shadow-hover:0 1px 2px rgba(11,11,11,0.04),0 10px 28px -14px rgba(11,11,11,0.16);--shadow-panel:12px 0 24px -18px rgba(11,11,11,0.18);--shadow-floating:8px 0 32px -12px rgba(11,11,11,0.18)}:root[data-theme=dark]{--canvas:var(--gray-950);--shellBackdrop:var(--gray-1000);--surface:var(--gray-900);--surfaceMuted:var(--gray-850);--surfaceSunken:var(--gray-950);--placeholder:var(--gray-800);--placeholderCap:var(--gray-850);--border:var(--gray-800);--cardBorder:var(--gray-850);--borderStrong:var(--gray-700);--divider:var(--gray-850);--textPrimary:var(--gray-50);--textSecondary:var(--gray-300);--textMuted:var(--gray-400);--textPlaceholder:var(--gray-600);--ink:var(--gray-50);--onInk:var(--gray-950);--buttonPrimaryBg:var(--gray-50);--buttonPrimaryHover:var(--gray-200);--buttonPrimaryText:var(--gray-950);--buttonAccentBg:var(--primary-400);--buttonAccentHover:var(--primary-300);--buttonAccentText:var(--gray-950);--controlOn:var(--primary-400);--accentFill:var(--primary-500);--accentFillSoft:var(--primary-900);--positiveText:var(--primary-300);--negativeText:var(--secondary-300);--warningText:var(--secondary-300);--selectionRing:var(--gray-0);--selectionGap:var(--gray-900);--focusBorder:var(--primary-400);--focusHalo:rgba(166,212,75,0.28);--tooltipBg:var(--gray-50);--tooltipText:var(--gray-950);--chartTooltipBg:var(--gray-850);--chartTooltipBorder:var(--gray-700);--sidebar-bg:var(--gray-900);--sidebar-border:var(--gray-850);--sidebar-text:var(--gray-300);--sidebar-textMuted:var(--gray-400);--sidebar-icon:var(--gray-400);--sidebar-itemHoverBg:var(--gray-850);--sidebar-itemHoverText:var(--gray-50);--sidebar-itemActiveBg:var(--gray-800);--sidebar-itemActiveText:var(--gray-50);--sidebar-itemActiveIcon:var(--gray-50);--sidebar-indicator:var(--primary-400);--sidebar-treeLine:var(--gray-800);--sidebar-divider:var(--gray-850);--sidebar-badgeBg:var(--gray-50);--sidebar-badgeText:var(--gray-950);--sidebar-promoCardBg:var(--gray-850);--sidebar-promoCardBorder:var(--gray-800);--sidebar-edgeHandleBg:var(--gray-850);--sidebar-edgeHandleBorder:var(--gray-700);--overlay:rgba(28,28,28,0.86);--scrim:rgba(0,0,0,0.55);--highlight:#dde64a;--lavender:#9d8fe8;--danger:#ff6369;--danger-text:var(--danger);--card-border:var(--gray-850);--empty-bag:var(--gray-800);--empty-edge:var(--gray-700);--shadow-overlay:0 0 0 1px rgba(255,255,255,0.06),0 18px 44px -10px rgba(0,0,0,0.75);--shadow-hover:inset 0 1px 0 rgba(255,255,255,0.05),0 12px 32px -12px rgba(0,0,0,0.7);--shadow-panel:12px 0 24px -18px rgba(0,0,0,0.6);--shadow-floating:8px 0 32px -8px rgba(0,0,0,0.7)}:root{--caption-canvas:var(--gray-600);--page:var(--canvas);--text:var(--textPrimary);--text-muted:var(--textSecondary);--surface-muted:var(--surfaceMuted);--border:var(--divider);--control-border:var(--borderStrong);--control-hover:var(--surfaceSunken);--action:var(--buttonPrimaryBg);--action-hover:var(--buttonPrimaryHover);--on-action:var(--buttonPrimaryText);--focus:var(--focusBorder);--brand-lime:var(--primary-400);--brand-black:var(--gray-950);--brand-white:var(--gray-0);--brand-green:var(--primary-700);--brand-pumpkin:var(--secondary-500);--brand-lavender:var(--lavender);--brand-slate:var(--gray-700);--inverse-text:var(--gray-0);--inverse-muted:var(--gray-200);--info-bg:var(--surfaceSunken);--info-text:var(--textPrimary);--info-hover:var(--surfaceMuted);--success-bg:var(--primary-50);--success-text:var(--primary-700);--success-border:var(--primary-200);--warning-bg:var(--secondary-50);--warning-text:var(--secondary-800);--warning-border:var(--secondary-200);--danger-bg:color-mix(in srgb,var(--danger) 8%,var(--surface));--danger-border:var(--danger);--danger-solid:var(--secondary-800);--danger-hover:var(--secondary-900);--disabled-bg:var(--surfaceSunken);--disabled-text:var(--textMuted);--selection-outline:var(--selectionRing);--bag-border:var(--empty-edge);--map-line:transparent;--compartment-bg:var(--surfaceSunken);--compartment-hover:var(--surfaceMuted);--shadow-color:transparent;--on-selection:var(--ink)}:root[data-theme=dark]{--caption-canvas:var(--gray-400);--success-bg:var(--primary-950);--success-text:var(--primary-300);--warning-bg:var(--secondary-950);--warning-text:var(--secondary-300);--danger-bg:color-mix(in srgb,var(--danger) 12%,var(--surface));--danger-solid:var(--danger);--danger-hover:var(--secondary-300)}*{box-sizing:border-box}body{margin:0}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}a,button,input,select,textarea{touch-action:manipulation}button{background:var(--surface-muted);border:1px solid var(--control-border);color:var(--text);padding:11px 18px;border-radius:7px;font-size:14px;font-weight:600;cursor:pointer;transition:background .15s}button:where(:hover:not(:disabled)){background:var(--control-hover)}button:disabled{cursor:not-allowed;background:var(--disabled-bg);color:var(--disabled-text);border-color:var(--border)}.secondary,button.secondary{border:1px solid var(--control-border);color:var(--text)}button.secondary:hover:not(:disabled){background:var(--control-hover)}button.small{padding:7px 11px;font-size:12px}input,select,textarea{width:100%;border:1px solid var(--control-border);border-radius:6px;padding:11px 12px;color:var(--text);background:var(--surface);font-size:14px;min-width:0}input:focus,select:focus,textarea:focus{outline:2px solid var(--focus);outline-offset:2px}a:focus-visible,button:focus-visible{outline:3px solid var(--focus);outline-offset:3px}input[type=checkbox]{width:17px;height:17px;accent-color:var(--focus)}label{display:flex;flex-direction:column;gap:8px;font-weight:600}label small{font-weight:400;color:var(--text-muted)}h1,h2,h3,p{margin-top:0}h1{font-size:36px;letter-spacing:-1.3px;line-height:1.15}h1,h2{margin-bottom:12px}h2{font-size:21px;letter-spacing:-.5px}h3{font-size:17px;margin-bottom:9px}p{line-height:1.65}small{font-size:12px}.fine,.muted{color:var(--text-muted)}.fine{font-size:12px;line-height:1.6}.eyebrow{font-size:10px;letter-spacing:1.8px;font-weight:700;color:var(--text-muted);margin-bottom:13px}.badge{color:var(--info-text);display:inline-flex;align-items:center;gap:6px;background:var(--info-bg);padding:7px 11px;border-radius:30px;font-weight:700;white-space:nowrap}.badge.neutral{background:var(--surface-muted);color:var(--text-muted)}.live-dot{display:inline-block;width:6px;height:6px;border-radius:50%;background:var(--success-text);margin-right:6px}.shell{min-height:100vh;grid-template-columns:220px minmax(0,1fr)}.sidebar{color-scheme:dark;color:var(--inverse-text);--focus:var(--brand-lime);height:100vh;padding:34px 20px 22px;border-right:1px solid var(--border);gap:12px}.brand{display:flex;align-items:center;gap:11px;font-size:36px;font-weight:800;letter-spacing:-3px}.brand>span{font-size:12px;line-height:1.5;letter-spacing:1.1px}.brand small{font-size:8px;letter-spacing:1.2px;color:var(--text-muted)}.nav-label{font-size:9px;letter-spacing:1.8px;color:var(--inverse-muted);margin:34px 12px 3px}.sidebar nav{display:flex;flex-direction:column;gap:5px}.sidebar nav a{font-size:13px;font-weight:600;padding:12px;border-radius:6px;display:flex;gap:12px;align-items:center;color:var(--inverse-muted)}.sidebar nav a:hover{background:var(--brand-slate);color:var(--inverse-text)}.sidebar nav a[aria-current=page]{color:var(--on-action);background:var(--action)}.sidebar nav a span{font-size:18px;font-weight:400;width:17px}.user-chip{display:flex;align-items:center;gap:10px;padding:16px 0;border-top:1px solid var(--border)}.avatar{background:var(--info-bg);color:var(--info-text);border-radius:50%;display:grid;place-items:center;flex-shrink:0}.user-chip strong{font-size:11px;display:block}.user-chip small{font-size:10px;display:block;color:var(--text-muted);margin-top:4px}.logout{width:100%;font-size:11px}.workspace{padding:0 38px}.topbar{min-height:68px;gap:12px;flex-wrap:wrap;padding:12px 0;border-bottom:1px solid var(--border);font-size:9px;letter-spacing:1.3px;color:var(--text-muted)}.workspace-status{letter-spacing:0;font-size:11px}.heading{display:flex;justify-content:space-between;align-items:center;gap:20px;padding:36px 0 22px}.heading p:last-child{margin-bottom:0}.footer{padding:26px 0;margin-top:36px;border-top:1px solid var(--border);display:flex;justify-content:space-between;font-size:9px;letter-spacing:1.2px;color:var(--text-muted)}.panel{background:var(--surface);border:1px solid var(--border);border-radius:12px;padding:24px;min-width:0}.panel+.panel{margin-top:20px}.section-head{display:flex;justify-content:space-between;align-items:center;gap:14px;margin-bottom:18px}.section-head h2{margin:0}.section-head p{margin-bottom:8px}.hero{--focus:var(--brand-lime);background:var(--brand-green);color:var(--inverse-text);border-radius:10px;padding:32px;display:flex;align-items:center;justify-content:space-between;gap:24px;overflow:hidden;position:relative}.hero h2{font-size:27px;letter-spacing:-.7px;max-width:400px}.hero p{color:var(--inverse-muted);max-width:390px;font-size:13px;margin:0}.hero .eyebrow{color:var(--brand-lime);margin-bottom:18px}.hero-mark{font-size:100px;line-height:1;color:var(--brand-lime);letter-spacing:-10px;opacity:.45;padding-right:20px}.stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));margin:22px 0}.stat{background:var(--surface);border:1px solid var(--border);padding:20px 24px;border-radius:12px}.stat>span{display:block;color:var(--text-muted);font-size:10px;letter-spacing:.7px}.stat strong{font-size:28px;display:block;margin:12px 0 7px}.stat strong small{font-size:12px;color:var(--text-muted);font-weight:400}.stat>small{color:var(--text-muted);font-size:11px}.section-title{display:flex;justify-content:space-between;align-items:center;margin:32px 0 16px}.section-title h2{font-size:19px;margin:0}.section-title small{color:var(--text-muted)}.app-grid,.equipment-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.app-card,.equipment-card{display:block;background:var(--surface);border:1px solid var(--border);border-radius:10px;padding:24px;position:relative;min-width:0}.app-card[href]:hover,.equipment-card:hover{border-color:var(--control-border);box-shadow:0 5px 20px var(--shadow-color)}.app-card p{color:var(--text-muted);font-size:12px;max-width:380px}.app-icon{background:var(--surface-muted);border-radius:9px;font-size:25px;margin-bottom:20px}.card-top{align-items:flex-start}.app-card .card-foot,.card-top{display:flex;justify-content:space-between}.app-card .card-foot{border-top:1px solid var(--surface-muted);padding-top:14px;font-size:11px;color:var(--text-muted)}.app-card.planned,.app-card.planned .app-icon{background:var(--surface-muted)}.app-card.planned .app-icon{color:var(--text-muted)}.equipment-card .big-number{font-size:40px;letter-spacing:-2px;display:block;margin:20px 0 8px}.equipment-card .big-number small{font-size:13px;color:var(--text-muted);letter-spacing:0}.equipment-card p{font-size:12px;color:var(--text-muted);margin:0}.notice{padding:12px 16px;border-radius:6px;border:1px solid var(--success-border);line-height:1.6;margin-bottom:18px}.notice.error{border-color:var(--danger-border)}.form-stack{display:flex;flex-direction:column;gap:18px}.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.form-grid .full{grid-column:1/-1}.inline{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.inline>label{flex-direction:row;align-items:center;font-weight:400}.form-actions{display:flex;align-items:center;gap:12px;margin-top:20px}.empty{padding:35px 10px;text-align:center;color:var(--text-muted)}.narrow{margin:70px auto;padding:20px}.narrow .panel{margin:24px 0}.wordmark{letter-spacing:2px;font-weight:700}.auth-layout{min-height:100vh;display:grid;grid-template-columns:1fr 1fr}.auth-story{--focus:var(--brand-lime);background:var(--brand-green);color:var(--inverse-text);padding:48px 10%;display:flex;flex-direction:column;justify-content:space-between;overflow:hidden}.auth-story .brand small{color:var(--inverse-muted)}.auth-story>div{position:relative;padding:50px 0}.auth-story h1{font-size:49px;line-height:1.15;letter-spacing:-2px}.auth-story .eyebrow{color:var(--brand-lime)}.auth-story p:not(.eyebrow){max-width:300px;color:var(--inverse-muted)}.auth-story>small{font-size:9px;letter-spacing:2px;color:var(--inverse-muted)}.auth-lines{height:80px;margin-top:30px;background:repeating-linear-gradient(90deg,transparent 0,transparent 16px,var(--brand-lime) 17px,transparent 18px);opacity:.3;transform:skewY(-10deg)}.auth-form{max-width:470px;width:100%;margin:auto;padding:50px}.auth-form h2{font-size:30px}.auth-form>.fine{margin-top:25px}.user-list{display:flex;flex-direction:column;gap:12px}.user-row{border:1px solid var(--border);border-radius:8px;background:var(--surface);padding:18px}.user-row summary{cursor:pointer;display:flex;align-items:center;justify-content:space-between;gap:12px}.user-row summary small{display:block;color:var(--text-muted);margin-top:6px;font-size:11px}.user-row[open] summary{padding-bottom:18px;border-bottom:1px solid var(--border);margin-bottom:20px}.user-row .form-stack{margin-top:20px}.check-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.check-grid label{flex-direction:row;align-items:center;font-weight:400}.divider{border:0;border-top:1px solid var(--border);margin:24px 0}.breadcrumbs{display:flex;gap:10px;font-size:11px;color:var(--text-muted);margin-top:25px;flex-wrap:wrap}.breadcrumbs a:hover{text-decoration:underline}.overview-band{display:grid;gap:5px}.overview-band+.overview-band{margin-top:20px}.overview-compartment{min-width:0}.overview-line,.overview-matrix{display:grid;gap:1px}.overview-line{grid-template-columns:.8fr repeat(8,minmax(0,1fr));align-items:center}.overview-cell{border-radius:1px;aspect-ratio:1;width:100%}.overview-cell[aria-pressed=true]{outline:1px solid var(--selection-outline);z-index:1}.overview-row-number{font-size:clamp(3px,.45vw,8px);text-align:center;color:var(--text-muted)}.overview-title{padding:5px 0;width:100%;border-radius:2px;margin:3px 0;white-space:nowrap}.overview-labels{display:grid;grid-template-columns:.8fr repeat(8,minmax(0,1fr));font-size:clamp(3px,.45vw,8px);text-align:center;background:var(--surface-muted);margin-top:2px;padding:2px 0}.legend{display:flex;gap:18px;flex-wrap:wrap;margin-top:20px;font-size:12px;color:var(--text-muted)}.legend span{display:flex;gap:6px;align-items:center}.legend i{display:block;width:11px;height:11px;border-radius:3px;box-shadow:0 0 0 1px var(--control-border);flex-shrink:0}.overview-panel>.fine{margin-bottom:0;margin-top:16px}.bag-layout{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,1fr);gap:20px;margin:20px 0;align-items:start}.bag-layout .panel+.panel{margin-top:18px}.bag-grid{display:grid;grid-template-columns:22px repeat(8,minmax(0,1fr));margin-top:20px}.bag-grid>.grid-label{text-align:center;align-self:center;background:var(--surface-muted);border-radius:2px}.overview-stiffener{margin-top:6px}.bag-stiffener{grid-column:1/-1;margin-top:16px}.bag-cell{min-width:0;aspect-ratio:1.25;border:1px solid var(--bag-border);border-radius:4px;font-size:clamp(9px,1vw,13px);display:grid;place-items:center}.bag-cell[aria-pressed=true]{outline:2px solid var(--selection-outline);outline-offset:-2px}.selected-list{display:flex;flex-wrap:wrap;max-height:160px;overflow:auto}.selected-list button{padding:5px 8px;background:var(--warning-bg);color:var(--warning-text);border-color:var(--warning-border)}.timeline{border-left:1px solid var(--border);margin:20px 0 0 7px;padding-left:18px}.timeline article{position:relative;padding-bottom:23px}.timeline article:before{content:"";position:absolute;left:-23px;top:4px;width:9px;height:9px;border-radius:50%;background:var(--brand-lavender);border:2px solid var(--surface)}.timeline strong{font-size:12px;display:block;margin-bottom:6px}.timeline small{display:block;line-height:1.7;color:var(--text-muted);font-size:12px}.timeline .now{font-size:22px;font-weight:500;color:var(--text)}.history-list{display:flex;flex-direction:column;gap:0;margin-top:12px}.history-item{display:flex;gap:16px;padding:20px 0;border-bottom:1px solid var(--border)}.history-item:last-child{border:0}.history-count{background:var(--info-bg);color:var(--info-text);border-radius:7px;width:42px;height:42px;flex-shrink:0;display:grid;place-items:center;font-size:15px}.history-item strong{font-size:13px;display:block;margin-bottom:6px}.history-item small{font-size:12px;display:block;line-height:1.8;color:var(--text-muted)}.coordinate-links{display:flex;gap:5px;flex-wrap:wrap;margin-top:10px}.coordinate-links button{padding:6px 9px;font-size:12px;line-height:1.4;font-weight:600;background:var(--info-bg);color:var(--info-text);border:1px solid transparent;border-radius:6px}.coordinate-links details{font-size:12px;width:100%;margin-top:5px}.coordinate-links summary{cursor:pointer;color:var(--text-muted);margin:5px 0}.scroll-table{overflow:auto}.audit-table{width:100%;border-collapse:collapse}.audit-table td,.audit-table th{text-align:left;padding:12px 10px;border-bottom:1px solid var(--border);white-space:nowrap}.audit-table th{font-size:10px;letter-spacing:.5px;color:var(--text-muted)}.loading-line{color:var(--text-muted);padding:24px}.read-only{background:var(--surface-muted);border-radius:7px;padding:15px;color:var(--text-muted)}@media (min-width:1550px){.workspace{padding-left:55px;padding-right:55px}}@media (max-width:1100px){.shell{grid-template-columns:185px minmax(0,1fr)}.sidebar{padding:26px 15px}.workspace{padding:0 24px}.bag-layout{grid-template-columns:1fr}.bag-grid{max-width:540px;margin-left:auto;margin-right:auto}.overview-band{gap:3px}.stat{padding:18px}.heading h1{font-size:30px}.hero-mark{font-size:75px}}@media (max-width:700px){.shell{display:block}.sidebar{position:relative;height:auto;padding:16px 18px;border-bottom:1px solid var(--border);gap:12px}.brand{font-size:29px}.brand>span{font-size:10px}.sidebar .nav-label{display:none}.sidebar nav{flex-direction:row;flex-wrap:wrap;gap:4px}.sidebar nav a{padding:9px;font-size:11px;gap:6px}.sidebar nav a span{font-size:15px;width:auto}.sidebar-bottom{display:none}.workspace{padding:0 16px}.topbar{min-height:56px;font-size:8px}.topbar span:last-child{font-size:9px}.heading{padding:25px 0 18px;align-items:flex-start}.heading h1{font-size:28px}.heading .muted{font-size:12px}.heading>.badge{font-size:9px}.hero{padding:24px}.hero h2{font-size:24px}.hero-mark{display:none}.stats{gap:8px;margin:16px 0}.stat{padding:13px 10px}.stat>span{font-size:8px;line-height:1.5}.stat strong{font-size:22px;margin:9px 0}.stat strong small,.stat>small{font-size:9px}.stat>small{line-height:1.6;display:block}.app-grid,.equipment-grid{grid-template-columns:1fr}.app-card,.equipment-card{padding:21px}.section-title h2{font-size:17px}.section-title small{font-size:10px}.panel{padding:17px}.form-grid{grid-template-columns:1fr}.overview-panel{padding:12px}.overview-band{gap:2px}.overview-band+.overview-band{margin-top:10px}.overview-line,.overview-matrix{gap:.5px}.overview-title-full{display:none}.legend{gap:10px;font-size:11px;margin-top:14px}.legend i{width:10px;height:10px}.overview-panel .fine{font-size:10px}.section-head{gap:10px}.section-head h2{font-size:17px}.section-head .eyebrow{font-size:8px;letter-spacing:1px}.section-head .badge{font-size:9px;padding:5px 8px}.bag-grid{gap:3px}.bag-cell{font-size:11px;min-height:28px}.auth-layout{display:block}.auth-story{padding:24px}.auth-story>div{padding:26px 0 0}.auth-story h1{font-size:28px}.auth-lines,.auth-story p:not(.eyebrow),.auth-story>small{display:none}.auth-form{padding:32px 24px}.auth-form h2{font-size:25px}.narrow{margin:25px auto}.footer{font-size:8px;letter-spacing:.7px}.user-row{padding:15px}.user-row summary{font-size:12px}.history-item{gap:10px}.check-grid{grid-template-columns:1fr 1fr}.badge{font-size:10px}.user-chip{border:0}.mobile-profile-actions{display:block}}button.primary{background:var(--action);border-color:var(--action);color:var(--on-action)}button.primary:hover:not(:disabled){background:var(--action-hover);border-color:var(--action-hover)}button.danger{background:var(--danger-solid);border-color:var(--danger-solid);color:var(--inverse-text)}button.danger:hover:not(:disabled){background:var(--danger-hover)}.form-stack>button:disabled,button.danger:disabled,button.primary:disabled,button:disabled{background:var(--disabled-bg);color:var(--disabled-text);border-color:var(--border)}input::placeholder,textarea::placeholder{color:var(--text-muted);opacity:1}input:disabled,select:disabled,textarea:disabled{background:var(--disabled-bg);color:var(--disabled-text);cursor:not-allowed}summary:focus-visible{outline:3px solid var(--focus);outline-offset:3px}a:focus-visible,button:focus-visible{outline-color:var(--focus)}.brand{color:var(--brand-lime)}.brand>span{color:var(--inverse-text)}.sidebar .error-text{color:var(--danger-text)}.sidebar .logout{background:transparent;color:var(--inverse-text)}.sidebar .logout:hover:not(:disabled){background:var(--brand-slate)}.topbar-actions{gap:20px}.theme-toggle{width:36px;height:36px;flex:0 0 auto;padding:0;display:grid;place-items:center;border:1px solid var(--border);border-radius:10px;background:var(--surface);color:var(--text-muted);box-shadow:0 1px 3px var(--shadow-color)}.theme-toggle:hover:not(:disabled){background:var(--surface-muted);color:var(--text);border-color:var(--control-border)}.theme-icon{width:18px;height:18px;grid-area:1/1}.theme-icon-moon,:root[data-theme=dark] .theme-icon-sun{display:none}:root[data-theme=dark] .theme-icon-moon{display:block}.theme-preference{max-width:360px}@media (max-width:700px){.theme-toggle{width:40px;height:40px}}.auth-theme{display:flex;justify-content:flex-end;margin-bottom:20px}.auth-form{border-radius:12px}.app-card,.equipment-card,.panel,.stat{box-shadow:0 2px 10px var(--shadow-color)}.app-card[href]{border-top:3px solid var(--brand-lime)}.app-card[href] .app-icon{background:var(--brand-lime);color:var(--on-action)}.audit-table th{background:var(--surface-muted)}.overview-title{background:var(--compartment-bg);border-color:var(--compartment-bg);color:var(--inverse-text)}.overview-title:hover:not(:disabled){background:var(--compartment-hover)}.overview-cell{box-shadow:inset 0 0 0 .5px var(--map-line)}.bag-cell[aria-pressed=true]:focus-visible{outline:3px solid var(--focus);outline-offset:3px}.selected-list button:hover:not(:disabled){background:var(--bag-selected);color:var(--on-selection)}.coordinate-links button:hover:not(:disabled){background:var(--info-hover);color:var(--info-text);text-decoration:underline}.timeline .now{color:var(--info-text)}@media (max-width:700px){.topbar-actions{gap:12px}.workspace-status{display:none}}@media (prefers-reduced-motion:reduce){button{transition:none}}:root{color-scheme:light;font-family:Inter,Segoe UI,system-ui,sans-serif;color:var(--textPrimary);background:var(--canvas);font-synthesis:none;font-size:14px;font-weight:400;font-feature-settings:tabular-nums lining-nums;font-variant-numeric:tabular-nums lining-nums;--data-dark:var(--gray-1000);--data-light:var(--gray-0)}:root[data-theme=dark]{color-scheme:dark}body{background:var(--canvas);color:var(--textPrimary)}*{scrollbar-width:thin;scrollbar-color:var(--borderStrong) transparent}.badge,b,button,h1,h2,h3,label,strong{font-weight:500}h1{font-size:28px;line-height:32px;letter-spacing:-.015em}h2{font-size:18px;line-height:24px;letter-spacing:-.01em}h3{font-size:15px;line-height:22px}p{font-size:14px;line-height:20px}.fine,small{font-size:12px;line-height:16px}.eyebrow,.fine,.muted{color:var(--textSecondary)}.eyebrow{font-size:11px;line-height:14px;letter-spacing:.1em;font-weight:400}.display-xl{font-size:40px;line-height:44px}.display-lg,.display-xl{letter-spacing:-.02em;font-weight:500}.display-lg{font-size:32px;line-height:36px}.display-md{font-size:28px;line-height:32px;letter-spacing:-.015em;font-weight:500}.display-lg small,.display-xl small{font-size:13px;font-weight:400;letter-spacing:0;color:var(--textSecondary)}.sr-only{position:absolute!important;width:1px!important;height:1px!important;margin:-1px!important;padding:0!important;overflow:hidden!important;clip-path:inset(50%);white-space:nowrap!important;border:0!important}.sr-label{font-size:12px}.positive-text{color:var(--positiveText)}.negative-text{color:var(--negativeText)}.header-action,.secondary,button{min-height:40px;border-radius:var(--radius-control);padding:10px 16px;font-size:14px;line-height:20px;font-weight:500;border:1px solid transparent;background:var(--buttonPrimaryBg);color:var(--buttonPrimaryText);transition:transform var(--duration-instant) var(--ease-standard),opacity var(--duration-fast) var(--ease-standard)}button:where(:hover:not(:disabled)){background:var(--buttonPrimaryHover)}a.header-action:active,button:active:not(:disabled){transform:scale(.97)}button.primary{background:var(--buttonPrimaryBg);color:var(--buttonPrimaryText);border-color:transparent}button.primary:hover:not(:disabled){background:var(--buttonPrimaryHover);border-color:transparent}button.accent{background:var(--buttonAccentBg);color:var(--buttonAccentText)}button.accent:hover:not(:disabled){background:var(--buttonAccentHover)}.secondary,button.secondary{background:var(--surface);color:var(--textPrimary);border:1px solid var(--borderStrong)}button.secondary:hover:not(:disabled){background:var(--surfaceMuted)}.ghost,button.ghost{background:transparent;color:var(--textPrimary);border-color:transparent}button.ghost:hover:not(:disabled){background:var(--surfaceSunken)}button.danger{background:var(--danger);border-color:transparent;color:var(--gray-950)}button.danger:hover:not(:disabled){background:color-mix(in srgb,var(--danger) 85%,var(--gray-0));color:var(--gray-950)}button.small{min-height:32px;padding:6px 12px;font-size:13px}.form-stack>button:disabled,button.accent:disabled,button.primary:disabled,button:disabled{background:var(--surfaceSunken);color:var(--textSecondary);border-color:transparent;opacity:.6;cursor:not-allowed}.icon-button{width:48px;height:48px;min-height:48px;display:inline-grid;place-items:center;flex:0 0 auto;padding:0;border:0;border-radius:12px;background:var(--surface);color:var(--textPrimary)}.icon-button svg{width:20px;height:20px}.icon-button:hover:not(:disabled){background:var(--surfaceMuted)}a:focus-visible,button:focus-visible,summary:focus-visible{outline:2px solid var(--focusBorder);outline-offset:2px}.theme-toggle{width:48px;height:48px;box-shadow:none;color:var(--textPrimary)}kbd{font-family:inherit;font-size:11px;font-weight:500;white-space:nowrap;background:var(--surfaceSunken);color:var(--textSecondary);padding:0 5px;border:1px solid var(--borderStrong);border-radius:5px}kbd,label{line-height:18px}label{font-size:13px;gap:6px;color:var(--textPrimary)}label small{color:var(--textSecondary);font-size:12px;line-height:16px}.select-trigger,input,select,textarea{min-height:44px;padding:11px 14px;border:1px solid var(--divider);border-radius:12px;background:var(--surfaceMuted);color:var(--textPrimary);font-size:14px;line-height:20px;font-weight:400;box-shadow:inset 0 1px 2px rgba(11,11,11,.04);transition:box-shadow var(--duration-fast) var(--ease-standard)}:root[data-theme=dark] :is(input,select,textarea,.select-trigger){background:var(--surfaceSunken)}:is(input,textarea,select,.select-trigger):hover{border-color:var(--borderStrong)}.select-trigger[aria-expanded=true],:is(input,textarea):focus-visible,:is(input,textarea,select,.select-trigger):focus{outline:0;border-color:var(--focusBorder);box-shadow:0 0 0 4px var(--focusHalo);background:var(--surface)}input::placeholder,textarea::placeholder{color:var(--textSecondary);opacity:.8}input[type=checkbox],input[type=radio]{min-height:18px;width:18px;height:18px;accent-color:var(--controlOn);box-shadow:none;padding:0;flex-shrink:0}input:-webkit-autofill{-webkit-text-fill-color:var(--textPrimary);box-shadow:0 0 0 1000px var(--surfaceMuted) inset}textarea{resize:none;min-height:80px;max-height:200px}.input-wrap,.select-control,.textarea-wrap{position:relative;display:block;width:100%;min-width:0}.input-wrap input{padding-right:40px}.input-clear{position:absolute;right:6px;top:7px;width:30px;height:30px;min-height:30px;padding:6px;border-radius:8px;background:transparent;color:var(--textSecondary);opacity:0}.input-wrap:focus-within .input-clear,.input-wrap:hover .input-clear{opacity:1}.input-clear svg{width:16px;height:16px}.input-clear:hover:not(:disabled){background:var(--surfaceSunken)}.field-counter{display:block;text-align:right;margin-top:6px;color:var(--textSecondary)}.field-counter.warning{color:var(--warningText)}.field-counter.limit{color:var(--danger-text)}.select-trigger{width:100%;display:flex;justify-content:space-between;align-items:center;gap:12px;text-align:left}.select-trigger>span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.select-trigger:hover:not(:disabled){background:var(--surfaceMuted)}.chevron{width:16px;height:16px;transform:rotate(90deg);transition:transform var(--duration-base) var(--ease-standard)}.chevron.open{transform:rotate(-90deg)}.date-field{position:relative;display:flex;align-items:center}.date-field input{padding-right:88px}.date-field input::-webkit-calendar-picker-indicator{display:none}.date-field>.icon-button{position:absolute;right:4px;width:36px;height:36px;min-height:36px}.unit-chip{position:absolute;right:44px;font-size:11px;padding:2px 5px;border-radius:6px;background:var(--surfaceSunken);color:var(--textSecondary)}.app-card,.equipment-card,.panel,.stat,.user-row{background:var(--surface);border:1px solid var(--card-border);border-radius:16px;padding:24px;box-shadow:none;color:var(--textPrimary)}.panel+.panel{margin-top:16px}.app-card[href]{border-top:1px solid var(--card-border)}.app-card[href]:hover,.equipment-card:hover{border-color:var(--card-border);transform:translateY(-2px);box-shadow:var(--shadow-hover)}.app-card,.equipment-card{transition:transform var(--duration-base) var(--ease-standard)}.app-card[href] .app-icon{background:var(--surfaceSunken);color:var(--textPrimary)}.app-icon{width:40px;height:40px;min-width:40px;display:grid;place-items:center;background:var(--surfaceSunken);color:var(--textPrimary);border-radius:10px;font-size:20px;margin-bottom:16px}.app-card.planned{background:var(--surfaceMuted)}.app-card.planned .badge{background:var(--lavender);color:var(--gray-950)}.app-card .card-foot{border-color:var(--divider);font-size:13px;color:var(--textSecondary)}.app-card p,.equipment-card p{font-size:13px;line-height:18px;color:var(--textSecondary)}.equipment-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.equipment-card .big-number{font-size:32px;line-height:36px;letter-spacing:-.02em;margin:16px 0 8px}.section-title{margin:24px 0 16px}.section-title h2{font-size:18px}.badge{height:22px;min-height:22px;padding:0 8px;font-size:11px;line-height:14px;border-radius:999px;background:var(--surfaceSunken);color:var(--textSecondary);font-weight:500}.badge.success{background:var(--success-bg);color:var(--success-text)}.badge.orange{background:var(--warning-bg);color:var(--warning-text)}.badge.neutral{background:var(--surfaceSunken);color:var(--textSecondary)}.stats{gap:16px;margin:0 0 24px}.stat>span{font-size:13px;line-height:18px;font-weight:400;letter-spacing:0;color:var(--textSecondary)}.stat strong{font-size:32px;line-height:36px;font-weight:500;letter-spacing:-.02em;margin:8px 0}.stat>small{font-size:12px;line-height:16px;color:var(--textSecondary)}.notice{border:0;border-radius:12px;background:var(--success-bg);color:var(--success-text);font-size:13px;line-height:18px}.notice.error{background:var(--danger-bg);color:var(--danger-text);border:0;border-left:3px solid var(--danger);animation:overlay-in var(--duration-base) var(--ease-enter)}.error-text{color:var(--danger-text);font-size:12px}.empty{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;min-height:100px;padding:24px;font-size:13px;line-height:18px;color:var(--textSecondary)}.empty svg{width:24px;height:24px}.empty p{margin:0}.form-grid,.form-stack{gap:16px}.form-actions{margin-top:24px}.user-row summary{font-size:14px}.user-row summary small{font-size:12px}.user-row[open] summary{border-color:var(--divider)}.read-only{background:var(--surfaceSunken);color:var(--textSecondary);border-radius:12px}.audit-table,.read-only{font-size:13px}.audit-table th{font-size:12px;font-weight:500;background:var(--surfaceMuted);color:var(--textSecondary)}.audit-table td,.audit-table th{border-color:var(--divider);padding:12px}.loading-line{font-size:13px;color:var(--textSecondary)}.overlay{border:1px solid var(--divider);padding:0;max-width:calc(100vw - 32px);max-height:92dvh;background:var(--overlay);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);color:var(--textPrimary);border-radius:20px;box-shadow:var(--shadow-overlay);overflow:auto;overscroll-behavior:contain;animation:overlay-in var(--duration-base) var(--ease-enter)}.overlay::backdrop{background:var(--scrim);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.overlay-content{padding:24px}.overlay-heading{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:16px}.overlay-heading h2{font-size:20px;line-height:28px;margin:0}.overlay-heading .icon-button{width:32px;height:32px;min-height:32px}.overlay-dialog{width:480px}.overlay-menu{position:fixed;top:var(--anchor-top,96px);left:var(--anchor-left,50%);margin:0;width:320px;border-radius:14px;max-height:400px;animation-duration:var(--duration-fast)}.overlay-menu::backdrop{background:transparent;-webkit-backdrop-filter:none;backdrop-filter:none}.overlay-menu .overlay-content{padding:6px}.overlay-menu .overlay-heading{padding:10px;margin:0}.overlay-menu .overlay-heading h2{font-size:15px;line-height:22px}.overlay-menu .session-card,.overlay-menu>.overlay-content>.fine{margin:8px}.overlay-sheet{position:fixed;inset:0 0 0 auto;margin:0;width:420px;max-width:100vw;height:100dvh;max-height:100dvh;border-radius:20px 0 0 20px;animation:sheet-in var(--duration-moderate) var(--ease-drawer);overflow:auto}.overlay-sheet .overlay-content{min-height:100%;padding:24px}.sheet-grab{display:none}.overlay-command{width:640px;margin:18dvh auto auto;border-radius:16px}.overlay-command .overlay-content{padding:0}.command-search{height:72px;display:flex;align-items:center;gap:12px;padding:0 20px;border-bottom:1px solid var(--divider)}.command-search input{height:56px;border:0;box-shadow:none;background:transparent!important;font-size:18px}.command-search input:focus{box-shadow:none}.command-results{max-height:50dvh;overflow:auto;padding:8px}.command-result{display:flex;gap:12px;align-items:center;min-height:44px;padding:8px 12px;border-radius:8px;color:var(--textPrimary);font-size:14px}.command-result>span{flex:1 1}.command-result small{display:block;font-size:12px;color:var(--textSecondary)}.command-result.is-highlighted{background:var(--surfaceSunken)}.command-footer{display:flex;gap:16px;padding:12px 20px;border-top:1px solid var(--divider);color:var(--textSecondary);font-size:11px}.menu-group-label{font-size:12px;color:var(--textSecondary);padding:8px 12px 4px;margin:0}.menu-list{position:relative;max-height:280px;overflow:auto;padding:0;isolation:isolate}.menu-highlight{position:absolute;z-index:-1;top:0;left:0;right:0;height:36px;border-radius:8px;background:var(--surfaceSunken);transition:transform var(--duration-fast) var(--ease-standard)}.menu-item{height:36px;min-height:36px;width:100%;padding:0 10px;display:flex;gap:10px;align-items:center;border:0;border-radius:8px;background:transparent;color:var(--textPrimary);font-size:14px;text-align:left;font-weight:400}.menu-item>span{flex:1 1}.menu-item svg{width:16px;height:16px;flex-shrink:0}.menu-item:hover:not(:disabled){background:var(--surfaceSunken)}.menu-item[aria-pressed=true],.menu-item[aria-selected=true]{font-weight:500}.select-search{position:sticky;top:0;z-index:2;display:flex;gap:8px;align-items:center;padding:0 10px;border-bottom:1px solid var(--divider);margin-bottom:6px}.select-search input{border:0;box-shadow:none;background:transparent!important;min-height:40px;padding:8px 0}.select-search input:focus{box-shadow:none}.select-search svg{width:16px;min-width:16px}mark{background:transparent;color:var(--textPrimary);font-weight:500}.calendar-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:4px;padding:12px}.calendar-grid>span{text-align:center;padding:4px;font-size:11px;color:var(--textSecondary)}.calendar-grid button{padding:0;width:100%;height:36px;min-height:36px;border-radius:10px;background:transparent;color:var(--textPrimary)}.calendar-grid button:hover{background:var(--surfaceSunken)}.calendar-grid button[aria-pressed=true]{background:var(--ink);color:var(--onInk)}.calendar-grid .today{box-shadow:inset 0 0 0 1px var(--ink)}.calendar-head{justify-content:space-between}.calendar-head,.calendar-time{display:flex;align-items:center}.calendar-time{padding:0 12px 12px;flex-direction:row;gap:16px}.calendar-time input{width:160px}.overlay-menu .inline{padding:8px 12px}.toast{position:fixed;bottom:24px;right:24px;max-width:420px;padding:16px;z-index:100;display:flex;align-items:center;gap:12px;border:1px solid var(--divider);border-radius:14px;box-shadow:var(--shadow-overlay);background:var(--overlay);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);animation:toast-in var(--duration-moderate) var(--ease-enter)}.toast p{margin:0;font-size:13px;line-height:18px}.toast .icon-button{width:28px;height:28px;min-height:28px}.toast-icon{color:var(--positiveText)}.toast-icon svg{width:20px;height:20px}.auth-layout{grid-template-columns:minmax(0,1fr) minmax(0,1fr);background:var(--canvas);padding:24px;gap:24px;min-height:100dvh}.auth-story{border-radius:24px;background:radial-gradient(ellipse at top left,var(--primary-200),var(--primary-400) 55%,var(--primary-500));color:var(--gray-950);padding:48px;position:relative;isolation:isolate}.auth-story:before{content:"";position:absolute;inset:0;background:repeating-radial-gradient(ellipse at 120% 40%,transparent 0 40px,rgba(255,255,255,.12) 41px 42px,transparent 43px 70px);z-index:-1}.auth-story .brand,.auth-story .brand small,.auth-story .brand>span{color:var(--gray-950)}.auth-story h1{font-size:40px;line-height:44px;font-weight:500;letter-spacing:-.02em}.auth-story :is(.eyebrow,p:not(.eyebrow),small){color:var(--gray-950)}.auth-lines{display:none}.auth-form{max-width:480px;padding:40px;background:var(--surface);border:1px solid var(--card-border);border-radius:16px}.auth-form h2{font-size:28px;line-height:32px}.auth-theme{margin-bottom:24px}.narrow{max-width:540px;margin:40px auto;padding:16px}.wordmark{font-size:11px;font-weight:500;letter-spacing:.1em}.narrow h1{font-size:28px;line-height:32px}@keyframes overlay-in{0%{opacity:0;transform:translateY(4px) scale(.96)}to{opacity:1;transform:none}}@keyframes sheet-in{0%{opacity:0;transform:translateX(100%)}to{opacity:1;transform:none}}@keyframes toast-in{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}@keyframes selection-in{0%{opacity:0;translate:0 8px}to{opacity:1;translate:0 0}}@keyframes bar-grow{0%{transform:scaleY(0)}to{transform:scaleY(1)}}@keyframes shimmer{to{background-position:-200% 0}}::view-transition-new(root),::view-transition-old(root){animation:none;mix-blend-mode:normal}::view-transition-new(root){z-index:999}@media (max-width:767px){.app-card,.equipment-card,.panel,.stat{padding:20px}.app-grid,.equipment-grid{grid-template-columns:1fr;gap:12px}.stats{gap:12px;margin-bottom:20px;overflow:auto;grid-template-columns:repeat(3,minmax(140px,1fr));padding-bottom:4px}.stat>span{font-size:12px;line-height:16px}.stat strong{font-size:28px}.stat>small{font-size:11px}.auth-layout{display:block;padding:16px}.auth-story{padding:24px;min-height:200px;margin-bottom:16px;border-radius:16px}.auth-story h1{font-size:28px;line-height:32px}.auth-story>div{padding:24px 0 0}.auth-form{padding:24px}.auth-form h2{font-size:28px;line-height:32px}.narrow{margin:16px auto}.toast{top:16px;bottom:auto;left:16px;right:16px}}@media (min-width:640px) and (max-width:767px){.app-grid,.equipment-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:639px){.select-trigger,input,select,textarea{min-height:48px}.input-clear{top:9px}.overlay-menu,.overlay-sheet{position:fixed;inset:auto 0 0 0;width:100%;max-width:100vw;margin:0;max-height:92dvh;border-radius:20px 20px 0 0;animation:bottom-in var(--duration-moderate) var(--ease-drawer)}.overlay-menu::backdrop{background:var(--scrim);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.overlay-menu .overlay-content{padding:16px}.overlay-sheet{height:auto;min-height:50dvh}.sheet-grab{display:grid;place-items:center;height:24px;touch-action:none}.sheet-grab span{width:36px;height:4px;border-radius:999px;background:var(--borderStrong)}.overlay-command{position:fixed;inset:0;margin:0;width:100vw;height:100dvh;max-height:100dvh;max-width:100vw;border-radius:0}.command-results{max-height:calc(100dvh - 140px)}.command-search{padding:0 16px}.command-search input{font-size:15px}.menu-item{min-height:44px}.menu-highlight,.menu-item{height:44px}.overlay-menu .menu-list{max-height:50dvh}.form-grid{grid-template-columns:1fr}.date-field>.icon-button{width:40px;height:40px;min-height:40px}.calendar-grid button{height:44px;min-height:44px}.calendar-grid{padding:4px;gap:2px}}@keyframes bottom-in{0%{opacity:0;transform:translateY(100%)}to{opacity:1;transform:none}}@media (prefers-reduced-motion:reduce){*,:after,:before{scroll-behavior:auto!important;animation:none!important;transition:opacity 80ms linear!important}.feature-widget{transform:none!important}.shell,.sidebar{transition:none!important}::view-transition-new(root),::view-transition-old(root){animation:none!important}}:root{--menu-row:36px}.menu-list:has(.menu-highlight) .menu-item:hover{background:transparent}.overlay-menu .menu-item{position:relative}.overlay-menu .menu-item>svg:last-child{animation:overlay-in var(--duration-fast) var(--ease-enter)}@view-transition{navigation:auto}@media (max-width:767px){.chart-panel .select-trigger,button.small{min-height:44px}}@media (max-width:639px){:root{--menu-row:44px}}.busy-button{position:relative}.button-spinner{position:absolute;left:calc(50% - 8px);top:calc(50% - 8px);width:16px;height:16px;border:2px solid;border-right:2px solid transparent;border-radius:50%;animation:spin var(--duration-slow) linear infinite}@keyframes spin{to{transform:rotate(1turn)}}:is(input,textarea):user-invalid{border-color:var(--danger);box-shadow:0 0 0 4px color-mix(in srgb,var(--danger) 15%,transparent);animation:field-error var(--duration-moderate) var(--ease-standard)}@keyframes field-error{25%{transform:translateX(-3px)}75%{transform:translateX(3px)}}.time-columns{display:flex;align-items:center;justify-content:center;gap:12px;padding:0 12px 12px}.time-column{position:relative;display:flex;flex-direction:column;max-height:132px;overflow-y:auto;overscroll-behavior:contain;scroll-snap-type:y mandatory;width:88px;background:var(--surfaceSunken);border-radius:10px;padding:44px 4px;scroll-padding:44px}.time-column button{min-height:44px;height:44px;padding:10px;flex-shrink:0;scroll-snap-align:center;background:transparent;color:var(--textSecondary)}.time-column button[aria-selected=true]{background:var(--ink);color:var(--onInk)}.time-column button:hover:not(:disabled){background:var(--surfaceMuted);color:var(--textPrimary)}.scroll-fade{-webkit-mask-image:linear-gradient(180deg,transparent,black 6px,black calc(100% - 6px),transparent);mask-image:linear-gradient(180deg,transparent,black 6px,black calc(100% - 6px),transparent)}.overlay-drawer .overlay-content{touch-action:pan-y}@media (max-width:639px){.input-clear{min-width:44px;width:44px;height:44px;top:2px;right:2px}.input-wrap input{padding-right:48px}.date-field>.icon-button,.overlay-heading .icon-button,.toast .icon-button{width:44px;height:44px;min-height:44px}}@media (prefers-reduced-motion:reduce){.button-spinner{animation:none;border-right-color:currentColor;opacity:.65}:is(input,textarea):user-invalid{animation:none}}.field-counter.limit:before{content:"";display:inline-block;width:6px;height:6px;border-radius:50%;background:var(--danger);margin-right:6px;vertical-align:middle}html{scrollbar-gutter:stable}html:has(dialog[open]){overflow:hidden}.shell{display:grid;grid-template-columns:248px minmax(0,1fr);min-height:100dvh;transition:grid-template-columns var(--duration-moderate) var(--ease-drawer)}.shell.is-collapsed{grid-template-columns:76px minmax(0,1fr)}.sidebar{position:sticky;top:0;height:100dvh;min-width:0;width:248px;padding:28px 16px 16px;display:flex;flex-direction:column;gap:16px;background:var(--sidebar-bg);color:var(--sidebar-text);border-right:1px solid var(--sidebar-border);color-scheme:inherit;z-index:30;transition:width var(--duration-moderate) var(--ease-drawer)}.sidebar .brand{gap:12px;min-height:36px;color:var(--textPrimary);margin-bottom:12px;white-space:nowrap}.brand-monogram{display:grid!important;place-items:center;position:relative;width:44px;min-width:44px;height:36px;font-size:28px!important;font-weight:500;line-height:32px;letter-spacing:-.02em!important;color:var(--textPrimary)!important}.brand-monogram>span{position:absolute;right:6px;bottom:4px;width:5px;height:5px;border-radius:2px;background:var(--primary-400)}.brand>.sidebar-label{font-size:13px;line-height:18px;letter-spacing:.08em;color:var(--textPrimary);font-weight:500}.brand small{display:block;line-height:12px;letter-spacing:.1em;margin-top:2px}.brand small,.sidebar .nav-label{font-size:10px;color:var(--sidebar-textMuted)}.sidebar .nav-label{margin:0 0 0 14px}.sidebar nav{gap:4px;min-height:0;overflow:visible}.nav-group,.sidebar nav>a{height:48px;min-height:48px;display:flex;align-items:center;gap:0;padding:0;border:0;border-radius:12px;position:relative;background:transparent;font-size:15px;font-weight:400;color:var(--sidebar-text);white-space:nowrap}.nav-group:hover:not(:disabled),.sidebar nav>a:hover{background:var(--sidebar-itemHoverBg);color:var(--sidebar-itemHoverText)}.sidebar nav>a[aria-current=page]{background:var(--sidebar-itemActiveBg);color:var(--sidebar-itemActiveText);font-weight:500}.sidebar nav>a[aria-current=page]:before{content:"";position:absolute;left:0;top:14px;width:3px;height:20px;border-radius:2px;background:var(--sidebar-indicator)}.nav-icon{width:44px;min-width:44px;height:44px;display:grid;place-items:center;margin-right:10px;font-size:20px!important}.sidebar-label{transition:opacity var(--duration-fast) var(--ease-standard),transform var(--duration-fast) var(--ease-standard);opacity:1}.nav-count{margin-left:auto;margin-right:12px;min-width:20px;height:20px;border-radius:999px;display:grid;place-items:center;font-size:11px;background:var(--sidebar-badgeBg);color:var(--sidebar-badgeText)}.nav-group{width:100%;text-align:left}.group-chevron{width:16px;margin-left:auto;margin-right:12px;transform:rotate(90deg)}.nav-group[aria-expanded=true] .group-chevron{transform:rotate(-90deg)}.nav-children{margin:4px 0 8px 22px;padding-left:32px;border-left:1px solid var(--sidebar-treeLine)}.nav-children a{display:block!important;height:36px;padding:8px 0!important;font-size:13px!important;line-height:20px;border-radius:0!important;color:var(--sidebar-text)!important;position:relative}.nav-children a:before{content:"";position:absolute;left:-32px;top:0;width:16px;height:18px;border-left:1px solid var(--sidebar-treeLine);border-bottom:1px solid var(--sidebar-treeLine);border-radius:0 0 0 6px}.nav-children a:hover{color:var(--textPrimary)!important;background:transparent!important}.sidebar-divider{height:1px;margin:16px 0;background:var(--sidebar-divider)}.sidebar-bottom{margin-top:auto;display:grid;gap:12px}.session-card{padding:16px;background:var(--sidebar-promoCardBg);border:1px solid var(--sidebar-promoCardBorder);border-radius:16px;white-space:normal}.session-heading{display:flex;gap:8px;align-items:center;font-size:12px;color:var(--textSecondary);margin-bottom:12px}.session-card>strong{font-size:28px;line-height:32px;color:var(--textPrimary)}.session-card p{font-size:12px;line-height:16px;color:var(--textSecondary);margin:8px 0 16px}.sidebar .logout{background:var(--buttonPrimaryBg);color:var(--buttonPrimaryText);border-color:transparent;height:40px;font-size:13px}.sidebar .logout:hover:not(:disabled){background:var(--buttonPrimaryHover);color:var(--buttonPrimaryText)}.collapse-row{background:transparent;border:0;padding:0;height:44px;display:flex;align-items:center;gap:0;color:var(--sidebar-textMuted);font-size:13px;text-align:left;white-space:nowrap}.collapse-row:hover:not(:disabled){background:var(--sidebar-itemHoverBg)}.collapse-row kbd{margin-left:auto;font-size:10px;opacity:0}.collapse-row:hover kbd{opacity:1}.sidebar-handle{position:absolute;top:72px;right:-12px;width:24px;height:24px;min-height:24px;padding:4px;border:1px solid var(--sidebar-edgeHandleBorder);border-radius:50%;background:var(--sidebar-edgeHandleBg);color:var(--textPrimary);opacity:0}.sidebar-handle svg{width:14px;height:14px}.sidebar:focus-within .sidebar-handle,.sidebar:hover .sidebar-handle{opacity:1}.session-mini{display:none;position:relative;background:transparent}.session-ring{position:absolute;inset:2px;width:40px;height:40px;fill:none;stroke:var(--placeholder);stroke-width:1.5}.session-ring circle+circle{stroke:var(--primary-500);transform:rotate(-90deg);transform-origin:center}.is-collapsed .sidebar{width:76px;padding-left:16px;padding-right:16px}.is-collapsed .sidebar-label{opacity:0;transform:translateX(-6px);position:absolute;pointer-events:none;visibility:hidden}.is-collapsed .nav-count{position:absolute;width:8px;height:8px;min-width:8px;font-size:0;right:-4px;top:8px;margin:0;box-shadow:0 0 0 2px var(--sidebar-bg)}.is-collapsed .group-chevron,.is-collapsed .nav-children{display:none}.is-collapsed .nav-group,.is-collapsed .sidebar nav>a{width:44px}.is-collapsed .session-card{display:none}.is-collapsed .session-mini{display:grid}.is-collapsed .sidebar-divider{width:28px;margin:16px auto}.is-collapsed .nav-icon{margin-right:0}.workspace{padding:0 24px;min-width:0;width:100%;max-width:1728px;margin:0 auto}.topbar{min-height:96px;height:auto;padding:24px 0;display:flex;align-items:center;justify-content:space-between;gap:16px;border:0;flex-wrap:nowrap}.topbar-actions{margin-left:auto}.search-trigger,.topbar-actions{display:flex;align-items:center;gap:12px}.search-trigger{height:48px;background:var(--surface);color:var(--textSecondary);min-width:220px;max-width:360px;width:100%;font-size:14px;text-align:left;border-radius:12px}.search-trigger kbd{margin-left:auto}.search-trigger:hover:not(:disabled),.user-menu-trigger{background:var(--surface)}.user-menu-trigger{height:48px;border:0;padding:8px;border-radius:12px;color:var(--textPrimary);display:flex;align-items:center;gap:8px;text-align:left}.user-menu-trigger>span+span{max-width:150px;overflow:hidden}.user-menu-trigger small,.user-menu-trigger strong{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.user-menu-trigger strong{font-size:13px;line-height:18px}.user-menu-trigger small{font-size:11px;line-height:14px;color:var(--textSecondary)}.user-menu-trigger>svg{width:14px;transform:rotate(90deg)}.session-summary:hover:not(:disabled),.user-menu-trigger:hover:not(:disabled){background:var(--surfaceSunken)}.application-toggle:hover:not(:disabled),.equipment-subgroup:hover:not(:disabled){background:var(--sidebar-itemHoverBg);color:var(--sidebar-itemHoverText)}.avatar{width:32px;height:32px;font-size:13px;font-weight:500;background:var(--surfaceSunken)}.avatar,.header-action{color:var(--textPrimary)}.header-action{height:48px;display:flex;align-items:center;justify-content:center;gap:8px;border-radius:12px;background:var(--surface)}.header-action:hover{background:var(--surfaceMuted)}.notification-trigger{position:relative}.notification-dot{position:absolute;right:12px;top:12px;width:8px;height:8px;border-radius:50%;background:var(--secondary-500);box-shadow:0 0 0 2px var(--surface)}.mobile-menu{display:none}.page-content{min-width:0}.heading{padding:8px 0 24px;align-items:flex-start;gap:16px}.heading h1{font-size:28px}.heading p:last-child{font-size:13px;line-height:18px}.breadcrumbs{margin:0 0 16px;font-size:12px}.footer{border-top:0;padding:24px 0;margin-top:24px;font-size:10px;color:var(--textSecondary)}@media (min-width:768px) and (max-width:1279px){.shell,.shell.is-collapsed{grid-template-columns:76px minmax(0,1fr)}.shell:not(.is-collapsed)>.sidebar{position:fixed;box-shadow:var(--shadow-floating);z-index:40}.shell:not(.is-collapsed)>.workspace{grid-column:2}.header-action{display:none}.user-menu-trigger>span+span{max-width:120px}}@media (max-width:767px){.shell>.sidebar{display:none}.shell,.shell.is-collapsed{display:block}.workspace{padding:0 16px}.topbar{padding:16px 0;min-height:80px;gap:8px}.mobile-menu{display:inline-grid}.topbar-actions{gap:8px}.header-action,.search-trigger>kbd,.search-trigger>span,.user-menu-trigger>span+span,.user-menu-trigger>svg{display:none}.user-menu-trigger{padding:8px}.search-trigger{width:48px;min-width:48px;max-width:48px;padding:0;justify-content:center}.icon-button,.theme-toggle{width:48px;height:48px;min-height:48px}.heading{padding:8px 0 20px}.heading h1{font-size:28px}.heading .muted{font-size:13px}.heading>.badge{font-size:11px}.footer{font-size:10px;letter-spacing:0;gap:12px;flex-wrap:wrap}.check-grid{grid-template-columns:1fr 1fr}.overlay-drawer{position:fixed;inset:0 auto 0 0;margin:0;width:280px;height:100dvh;max-height:100dvh;border-radius:0 20px 20px 0}.overlay-drawer>.overlay-content{padding:0;height:100%;overflow:auto}.overlay-drawer>.overlay-content>.overlay-heading{padding:12px;margin:0}.overlay-drawer .sidebar{position:relative;top:auto;width:100%;height:calc(100dvh - 56px);padding:16px;border:0;overflow:auto}.overlay-drawer .sidebar .sidebar-label{position:static;opacity:1;visibility:visible;transform:none;pointer-events:auto}.overlay-drawer .sidebar nav{flex-direction:column}.overlay-drawer .nav-group,.overlay-drawer .sidebar nav>a{width:100%}.overlay-drawer .sidebar nav a{font-size:15px;padding:0}.overlay-drawer .sidebar .nav-label{display:block}.overlay-drawer .sidebar-bottom{display:grid}.overlay-drawer .session-card{display:block}.overlay-drawer .collapse-row,.overlay-drawer .session-mini,.overlay-drawer .sidebar-handle{display:none}.overlay-drawer .sidebar .nav-children{display:block}.overlay-drawer .nav-children a{padding:8px 0!important;font-size:13px!important}}.sidebar nav{overflow-y:auto;overflow-x:hidden;flex-shrink:1}.sidebar-bottom{flex-shrink:0}.sidebar nav .nav-icon{width:44px;min-width:44px;flex:0 0 44px;margin-right:10px}.sidebar nav .sidebar-label{width:auto;font-size:15px}.is-collapsed .sidebar nav .nav-icon{margin-right:0}.nav-children a[aria-current=page]{color:var(--sidebar-itemActiveText)!important;background:var(--sidebar-itemActiveBg)!important;font-weight:500}.sidebar nav a[aria-current=page]{view-transition-name:active-nav}.sidebar .brand,.sidebar>.nav-label{flex-shrink:0}.sidebar .sidebar-navigation{flex:1 1;overflow-y:auto;overscroll-behavior:contain}.sidebar .sidebar-account{flex:0 0 auto;overflow:visible;border-top:1px solid var(--sidebar-divider);padding-top:8px}.sidebar-bottom{margin-top:0}.application-row{position:relative;min-height:48px}.application-row,.sidebar nav .application-link{display:flex;align-items:center;border-radius:12px}.sidebar nav .application-link{flex:1 1;min-width:0;height:48px;color:var(--sidebar-text);text-decoration:none;padding:0;gap:0;font-weight:400;white-space:nowrap}.sidebar nav .application-link:hover{color:var(--sidebar-text);background:transparent}.sidebar nav .application-link .nav-count{width:20px;font-size:11px;font-weight:500}.nav-application[data-active=true]>.application-row{background:var(--sidebar-itemActiveBg);color:var(--sidebar-itemActiveText)}.nav-application[data-active=true]>.application-row:before{content:"";position:absolute;left:0;top:14px;width:3px;height:20px;border-radius:2px;background:var(--sidebar-indicator)}.application-row:hover{background:var(--sidebar-itemHoverBg)}.nav-application[data-active=true]>.application-row:hover{background:var(--sidebar-itemActiveBg)}.application-toggle{width:28px;min-width:28px;height:44px;padding:4px;border:0;background:transparent;color:inherit;margin-right:4px}.application-toggle svg{width:14px;transform:rotate(90deg)}.application-toggle[aria-expanded=true] svg{transform:rotate(-90deg)}.application-row:has(.application-toggle) .nav-count{margin-right:0}.sidebar nav .application-link .sidebar-label{font-size:14px}.application-children{margin-top:8px;margin-bottom:12px;padding-left:22px}.application-children a{padding:8px!important;border-radius:8px!important;height:auto;min-height:36px}.application-children a:before{left:-22px;width:14px}.application-children a[aria-current=page]:after{content:"";position:absolute;left:0;top:12px;bottom:12px;width:2px;background:var(--sidebar-indicator);border-radius:2px}.equipment-subgroup{display:flex;align-items:center;justify-content:space-between;width:100%;min-height:36px;background:transparent;color:var(--sidebar-text);border:0;border-radius:8px;padding:8px;font-size:13px;text-align:left}.equipment-subgroup svg{width:14px;transform:rotate(90deg)}.equipment-subgroup[aria-expanded=true] svg{transform:rotate(-90deg)}.equipment-links{margin:0 0 4px 8px;padding-left:12px;border-left:1px solid var(--sidebar-treeLine)}.equipment-links a:before{left:-12px;width:8px}.session-compact{border:1px solid var(--sidebar-promoCardBorder);border-radius:16px;padding:12px;background:var(--sidebar-promoCardBg)}.session-summary{display:flex;align-items:center;gap:8px;padding:0 2px;width:100%;min-height:32px;border:0;background:transparent;color:var(--textSecondary);font-size:11px;margin-bottom:8px}.session-summary svg{width:16px}.session-summary strong{font-size:13px;margin-left:auto;color:var(--textPrimary);font-feature-settings:"tnum";font-variant-numeric:tabular-nums;white-space:nowrap}.session-compact .logout{width:100%}.is-collapsed .session-compact{display:none}.is-collapsed .application-row{width:44px}.is-collapsed .sidebar .sidebar-account{overflow:visible}@media (max-width:767px){.overlay-drawer .sidebar .session-compact{display:block}.overlay-drawer .session-summary{min-height:44px}.overlay-drawer .application-row{width:auto}.overlay-drawer .application-children a,.overlay-drawer .equipment-subgroup{min-height:44px;padding:12px 8px!important}.overlay-drawer .application-toggle{width:44px;min-width:44px}}.dashboard-grid{display:grid;grid-template-columns:minmax(0,1fr);gap:16px;margin-bottom:24px}.dashboard-main{display:grid;gap:16px;min-width:0}.hero-chart-card{display:grid;grid-template-columns:minmax(0,1fr) 240px;padding:0!important;overflow:hidden}.chart-panel{padding:24px;position:relative;border-radius:16px;background:var(--surface);box-shadow:var(--shadow-panel);z-index:1;min-width:0}.chart-panel .section-head{align-items:flex-start}.chart-panel .display-xl{display:block}.chart-panel .muted{font-size:12px;margin:8px 0 0}.chart-panel .select-control{width:110px}.chart-panel .select-trigger{min-height:32px;padding:6px 10px;font-size:13px}.chart-panel .sr-label{font-size:0}.chart-legend{display:flex;flex-wrap:wrap;gap:12px;margin:16px 0;color:var(--textSecondary);font-size:11px;line-height:14px}.chart-legend>span{display:flex;gap:6px;align-items:center}.chart-legend i{width:10px;height:10px;border-radius:2px}.bar-chart{position:relative;height:280px;margin:0 0 8px;padding:12px 0 0 30px;isolation:isolate}.chart-grid-lines{position:absolute;inset:12px 0 20px;display:flex;flex-direction:column;justify-content:space-between;z-index:-1}.chart-grid-lines>span{border-top:1px solid var(--divider);position:relative;margin-left:30px}.chart-grid-lines small{position:absolute;right:100%;margin-right:8px;transform:translateY(-50%);font-size:10px;color:var(--textSecondary)}.bar-slots{display:flex;gap:4px;align-items:stretch;height:100%;overflow:hidden}.bar-slot{flex:1 1;min-width:0;color:var(--textSecondary);border:0;padding:0;display:flex;flex-direction:column;align-items:center;justify-content:flex-end;gap:8px;border-radius:0}.bar-slot,.bar-slot:hover:not(:disabled){background:transparent}.bar-slot small{font-size:10px;line-height:12px}.bar-stack{height:calc(100% - 24px);width:66%;max-width:72px;display:flex;flex-direction:column-reverse;justify-content:flex-start;gap:4px}.bar-stack>i{display:block;min-height:2px;border-radius:6px;animation:bar-grow var(--duration-slow) var(--ease-enter);transform-origin:bottom}.bar-stack .empty-bar{height:4px;background:var(--placeholder);min-height:4px}.hatched{position:relative;isolation:isolate;overflow:hidden}.hatched:after{content:"";position:absolute;inset:0;pointer-events:none;background:repeating-linear-gradient(135deg,rgba(255,255,255,.22) 0 1.5px,transparent 1.5px 6px)}.chart-tooltip{position:relative;display:flex;gap:12px;flex-wrap:wrap;align-items:center;border:1px solid var(--divider);border-radius:10px;background:var(--surface);padding:8px 10px;margin:12px 0;min-height:36px;font-size:12px}.chart-tooltip>span{font-size:10px;color:var(--textSecondary)}.chart-tooltip small{font-size:11px;color:var(--textSecondary)}.chart-tooltip b{color:var(--textPrimary);margin-left:4px}.trend-row{font-size:11px;color:var(--textSecondary);display:flex;gap:6px;align-items:center;margin:12px 0 0}.trend-row svg{width:14px;height:14px}.kpi-rail{padding:24px;display:flex;flex-direction:column;justify-content:space-around;gap:40px;background:var(--surfaceMuted)}.metric-block>span{font-size:13px;color:var(--textSecondary);display:block}.metric-block>strong{font-size:32px;line-height:36px;letter-spacing:-.02em;display:block;margin:8px 0}.metric-block>small{font-size:11px;color:var(--textSecondary)}.dashboard-row{display:grid;gap:16px;align-items:stretch}.two-columns{grid-template-columns:repeat(2,minmax(0,1fr))}.three-columns{grid-template-columns:repeat(3,minmax(0,1fr))}.dashboard-row>.panel{margin:0;min-width:0}.capacity-track{height:24px;border-radius:4px;background:var(--placeholder);margin:24px 0 12px;overflow:hidden}.capacity-track>span{display:block;height:100%;width:100%;background:var(--primary-400);transform-origin:left;transition:transform var(--duration-data) var(--ease-enter)}.tip-card{display:flex;align-items:center;gap:16px;overflow:hidden}.tip-card>div:first-child{flex:1 1;min-width:0}.tip-card p{font-size:13px;line-height:18px;color:var(--textSecondary)}.tip-card a{display:flex;gap:6px;align-items:center;font-size:13px}.tip-card svg{width:14px}.mosaic{width:96px;min-width:96px;display:grid;grid-template-columns:repeat(4,24px);gap:4px;-webkit-mask-image:linear-gradient(90deg,transparent,black);mask-image:linear-gradient(90deg,transparent,black);transform:rotate(-6deg)}.mosaic i{width:24px;height:24px;background:var(--primary-200);border-radius:4px}.mosaic i:nth-child(3n){background:var(--primary-400)}.mosaic i:nth-child(5n){background:var(--secondary-300)}.distribution-bar{height:24px;display:flex;gap:2px;border-radius:4px;overflow:hidden;margin:24px 0}.distribution-bar span{min-width:1px;border-radius:4px}.distribution-bar .placeholder{flex:1 1;background:var(--placeholder)}.distribution-legend{display:grid;gap:8px}.distribution-legend>div{display:flex;align-items:center;gap:8px;font-size:11px;color:var(--textSecondary)}.distribution-legend i{width:10px;height:10px;border-radius:2px}.distribution-legend strong{margin-left:auto;color:var(--textPrimary)}.gauge-card{text-align:center}.gauge-card h2{text-align:left}.gauge-card svg{width:100%;max-width:240px;margin:32px auto 0}.gauge-card>.display-md{display:block;margin-top:-48px;position:relative}.gauge-card>.fine{margin:8px 0 0}.progress-list{display:grid;gap:20px;margin-top:24px}.progress-list>a>div:first-child{display:flex;justify-content:space-between;gap:8px;font-size:12px}.progress-list>a>div:first-child>span{font-size:11px}.progress-list small{font-size:11px;color:var(--textSecondary)}.progress-track{height:14px;overflow:hidden;border-radius:4px;background:var(--placeholder);margin:8px 0 4px}.progress-track i{display:block;width:100%;height:100%;background:var(--primary-400);transform-origin:left;transition:transform var(--duration-data) var(--ease-enter)}.dashboard-rail{display:grid;grid-template-rows:auto 1fr;gap:16px;min-width:0}.feature-widget{border-radius:12px;overflow:hidden;padding:24px;background:radial-gradient(ellipse at top left,var(--primary-400),var(--primary-500) 55%,var(--primary-600));box-shadow:0 14px 28px -16px color-mix(in srgb,var(--primary-700) 55%,transparent);transition:transform var(--duration-base) var(--ease-standard)}.feature-widget,.feature-widget .eyebrow{position:relative;color:var(--gray-950)}.feature-widget h2{font-size:20px;position:relative}.feature-widget a,.feature-widget p{position:relative;font-size:13px}.feature-widget a{display:flex;align-items:center;gap:8px}.feature-widget>.icon-button{position:absolute;bottom:16px;right:16px;color:var(--gray-950)}.feature-contours{position:absolute;inset:-50%;border-radius:44%;background:repeating-radial-gradient(ellipse at 70% 35%,transparent 0 24px,rgba(255,255,255,.12) 25px 26px,transparent 27px 40px);transform:rotate(-25deg)}.recent-card{display:flex;flex-direction:column;min-height:300px;margin:0!important}.activity-scroll{overflow:auto;max-height:560px;overscroll-behavior:contain}.activity-row{display:flex;gap:12px;align-items:flex-start;min-height:56px;padding:12px 4px;border-radius:12px}.activity-row:hover{background:var(--surfaceMuted)}.activity-row .app-icon{margin:0}.activity-row>span:nth-child(2){flex:1 1;min-width:0}.activity-row strong{font-size:13px;line-height:18px;display:block}.activity-row small{display:block;font-size:11px;line-height:14px;color:var(--textSecondary);margin-top:2px}.activity-row>strong{text-align:right;white-space:nowrap}.dashboard-skeleton{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin-bottom:24px}.dashboard-skeleton>.panel{height:200px;margin:0}.dashboard-skeleton>.panel:first-child{grid-column:1/-1;height:360px}.skeleton{background:linear-gradient(90deg,var(--placeholder),var(--surfaceSunken),var(--placeholder));background-size:200% 100%;animation:shimmer 1.6s linear infinite}.dashboard-error{margin-bottom:24px}@media (min-width:1280px){.dashboard-grid{grid-template-columns:minmax(0,1fr) 300px}.dashboard-rail .activity-scroll{max-height:860px}}@media (min-width:1536px){.dashboard-grid{grid-template-columns:minmax(0,1fr) 360px}}@media (min-width:768px) and (max-width:1279px){.dashboard-rail{grid-template-columns:1fr 1fr;grid-template-rows:auto}.hero-chart-card{grid-template-columns:minmax(0,1fr) 200px}.kpi-rail{padding:20px}.three-columns{grid-template-columns:1fr 1fr}.progress-card{grid-column:1/-1}.progress-list{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:767px){.dashboard-grid,.dashboard-main,.dashboard-row{gap:12px}.hero-chart-card{grid-template-columns:1fr}.chart-panel,.kpi-rail{padding:20px}.kpi-rail{flex-direction:row;gap:24px;justify-content:flex-start;overflow:auto}.metric-block{min-width:140px}.metric-block>strong{font-size:28px;line-height:32px}.bar-chart{height:220px}.chart-legend{font-size:11px;gap:8px}.dashboard-rail,.dashboard-skeleton,.progress-list,.three-columns,.two-columns{grid-template-columns:1fr}.dashboard-skeleton>.panel:first-child{grid-column:1}}@media (min-width:640px) and (max-width:767px){.two-columns{grid-template-columns:repeat(2,minmax(0,1fr))}}.age-legend{position:sticky;top:0;z-index:5;background:var(--surface);padding:12px 0 16px;margin-bottom:16px}.age-gradient{height:8px;border-radius:4px;background:linear-gradient(90deg,var(--age-0),var(--age-150),var(--age-300),var(--age-450),var(--age-600),var(--age-750),var(--age-900))}.age-buckets{display:grid;grid-template-columns:repeat(8,minmax(0,1fr));gap:4px;margin-top:8px}.age-buckets button{padding:4px 2px;min-height:28px;border:0;background:transparent;color:var(--textSecondary);font-size:11px;line-height:14px;border-radius:6px}.age-buckets button[aria-pressed=true]{background:var(--surfaceSunken);color:var(--textPrimary);box-shadow:inset 0 0 0 1px var(--ink)}.age-buckets button:hover{background:var(--surfaceMuted)}.age-buckets i{display:inline-block;width:8px;height:8px;border-radius:2px;margin-right:4px}.overview-band{gap:8px}.overview-band+.overview-band{margin-top:24px}.overview-title{min-height:28px;padding:4px 0;border:0;background:var(--surfaceSunken);color:var(--textPrimary);font-size:clamp(6px,.7vw,11px);font-weight:500;border-radius:6px}.overview-title:hover:not(:disabled){background:var(--surfaceMuted);color:var(--textPrimary)}.overview-labels{background:transparent;color:var(--textSecondary);padding:4px 0}.overview-cell{position:relative;border:0;border-radius:3px;min-height:0;min-width:0;padding:0;box-shadow:inset 0 0 0 1px rgba(11,11,11,.06);transition:opacity var(--duration-base) var(--ease-standard)}:root[data-theme=dark] .overview-cell{box-shadow:none}.overview-cell[aria-pressed=true]{outline:0;box-shadow:0 0 0 1.5px var(--selectionGap),0 0 0 3px var(--selectionRing);z-index:2}.overview-cell:hover:not(:disabled){outline:1px solid var(--borderStrong);outline-offset:1px;z-index:3}.overview-line,.overview-matrix{gap:2px}.bag-stiffener,.overview-stiffener{margin-top:8px}.overview-row-number{font-size:clamp(6px,.5vw,10px);color:var(--textSecondary)}.bag-layout{grid-template-columns:minmax(0,1.4fr) minmax(240px,.6fr);gap:16px;margin:16px 0}.bag-grid-scroll{overflow:auto;max-width:100%;padding:6px;overscroll-behavior:contain}.bag-grid{grid-template-columns:28px repeat(8,minmax(32px,1fr));gap:4px;max-width:600px;margin:20px auto 0;min-width:320px}.bag-grid>.grid-label{font-size:11px;line-height:14px;padding:8px 0;background:var(--surfaceSunken);border-radius:3px;position:relative;z-index:2;color:var(--textSecondary)}.bag-grid>.grid-label:first-child,.bag-grid>.row-number{position:sticky;left:0}.bag-grid>.grid-label.is-hovered{background:var(--surfaceMuted);color:var(--textPrimary);font-weight:500}.bag-cell{position:relative;border:0;border-radius:3px;aspect-ratio:1.1;min-width:32px;min-height:32px;padding:0;box-shadow:inset 0 0 0 1px rgba(11,11,11,.06);font-size:11px;line-height:14px;font-weight:500;touch-action:pan-y;transition:opacity var(--duration-base) var(--ease-standard),transform var(--duration-fast) var(--ease-standard)}.bag-cell.is-empty{border:1px dashed var(--empty-edge);color:var(--textSecondary)}.bag-cell[aria-pressed=true]{outline:0;box-shadow:0 0 0 1.5px var(--selectionGap),0 0 0 3.5px var(--selectionRing);z-index:3}.bag-cell[aria-pressed=true]:after{content:"✓";position:absolute;top:-5px;right:-5px;display:grid;place-items:center;width:12px;height:12px;border-radius:50%;background:var(--selectionRing);color:var(--selectionGap);font-size:10px;line-height:12px}.bag-cell.is-old:before,.overview-cell.is-old:before{content:"";position:absolute;top:0;right:0;width:0;height:0;border-top:5px solid var(--ink);border-left:5px solid transparent}.bag-cell:hover:not(:disabled){outline:1px solid var(--borderStrong);outline-offset:1px;transform:scale(1.08);z-index:4}.bag-cell:focus-visible,.bag-cell[aria-pressed=true]:focus-visible{outline:2px solid var(--focusBorder);outline-offset:5px;z-index:5}.selection-bar{position:fixed;bottom:24px;left:50%;transform:translateX(-50%);z-index:25;display:flex;align-items:center;gap:16px;border-radius:14px;padding:12px 16px;background:var(--overlay);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);box-shadow:var(--shadow-overlay);animation:selection-in var(--duration-moderate) var(--ease-enter)}.selection-bar strong{font-size:14px;white-space:nowrap}.bag-tooltip{position:fixed;z-index:80;max-width:280px;padding:10px 12px;background:var(--tooltipBg);color:var(--tooltipText);border:1px solid var(--divider);border-radius:10px;box-shadow:var(--shadow-overlay);pointer-events:none;font-size:12px;line-height:16px}.bag-tooltip small,.bag-tooltip strong{display:block}.bag-tooltip small{color:var(--tooltipText);font-size:11px;margin-top:4px}.selection-marquee{position:fixed;pointer-events:none;z-index:75;border:1px dashed var(--ink);background:color-mix(in srgb,var(--ink) 6%,transparent)}.selected-list{margin:16px 0;gap:6px}.selected-list button{min-height:28px;background:var(--surfaceSunken);color:var(--textPrimary);border:0;font-size:11px}.selected-list button:hover:not(:disabled){background:var(--surfaceMuted);color:var(--textPrimary)}.batch-capacity{margin:12px 0 20px}.batch-capacity .capacity-track{height:14px;margin:8px 0}.batch-capacity>div:first-child{display:flex;justify-content:space-between;font-size:12px;color:var(--textSecondary)}.history-count{font-weight:500}.coordinate-links button,.history-count{background:var(--surfaceSunken);color:var(--textPrimary)}.coordinate-links button{font-size:11px;padding:6px 8px;border:0}.coordinate-links button:hover:not(:disabled){background:var(--surfaceMuted);color:var(--textPrimary)}.history-item small,.timeline small{font-size:12px;color:var(--textSecondary)}.timeline .now{color:var(--textPrimary);font-size:28px;line-height:32px}.timeline article:before{background:var(--primary-500)}@media (min-width:768px) and (max-width:1279px){.bag-layout{grid-template-columns:1fr}}@media (max-width:767px){.overview-panel{padding:12px}.overview-band{gap:4px}.overview-line,.overview-matrix{gap:1px}.overview-title{min-height:24px;font-size:clamp(6px,.7vw,11px);padding:4px 0}.overview-title-full{display:none}.overview-labels,.overview-row-number{font-size:6px}.bag-layout{grid-template-columns:1fr;gap:12px}.bag-grid{grid-template-columns:28px repeat(8,44px);min-width:412px;max-width:none;gap:4px}.bag-cell{min-width:44px;min-height:44px;aspect-ratio:1}.bag-grid>.grid-label{min-height:32px;padding:8px 0}.selection-bar{bottom:16px;max-width:calc(100vw - 24px);width:100%;gap:8px;padding:12px;justify-content:space-between}.selection-bar strong{font-size:12px}.selection-bar button{padding:10px;font-size:12px;min-height:44px}.age-buckets{grid-template-columns:repeat(4,minmax(0,1fr));gap:4px}.age-buckets button{min-height:36px}}.history-list{max-height:720px;overflow:auto;overscroll-behavior:contain}.bag-grid{max-width:480px}.installation-form>.notice{margin-bottom:16px}