@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(/fonts/inter-latin.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(/fonts/inter-latin-ext.woff2) format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}:root{--bb-brand-blue: rgb(2, 82, 144);--bb-brand-orange: rgb(244, 129, 31);--bb-brand-yellow: rgb(255, 202, 6);--bb-brand-ink: rgb(35, 31, 32);--bb-orange: rgb(255, 60, 0);--bb-orange-press: rgb(230, 52, 0);--bb-orange-soft: rgb(255, 241, 235);--bb-orange-tint: rgb(255, 247, 243);--bb-orange-line: rgb(255, 190, 160);--bb-orange-ink: rgb(196, 50, 10);--bb-orange-busy: rgb(255, 150, 110);--bb-blue: rgb(20, 108, 181);--bb-blue-hover: rgb(15, 90, 155);--bb-blue-crumb: rgb(2, 106, 167);--bb-avatar: rgb(21, 94, 160);--slate-950: rgb(2, 6, 23);--slate-900: rgb(15, 23, 42);--slate-700: rgb(51, 65, 85);--slate-600: rgb(71, 85, 105);--slate-500: rgb(100, 116, 139);--slate-400: rgb(148, 163, 184);--slate-300: rgb(203, 213, 225);--slate-250: rgb(215, 221, 230);--slate-200: rgb(226, 232, 240);--slate-150: rgb(237, 240, 244);--slate-100: rgb(241, 245, 249);--slate-75: rgb(244, 246, 249);--slate-50: rgb(248, 250, 252);--slate-25: rgb(250, 251, 252);--white: #fff;--bb-page: #f4f6fa;--bb-side: #f1f4f8;--bb-side-panel: #e9edf3;--bb-sheet: rgb(243, 245, 248);--green-surface: rgb(236, 253, 243);--green-line: rgb(187, 247, 208);--green-ink: rgb(6, 118, 71);--green-ink-2: rgb(21, 128, 61);--green-dot: rgb(23, 178, 106);--amber-surface: rgb(255, 250, 235);--amber-line: rgb(254, 223, 137);--amber-ink: rgb(181, 71, 8);--amber-ink-2: rgb(146, 64, 14);--amber-dot: rgb(247, 144, 9);--red-surface: rgb(254, 242, 242);--red-surface-2: rgb(254, 243, 242);--red-line: rgb(254, 202, 202);--red-ink: rgb(185, 28, 28);--red-ink-2: rgb(180, 35, 24);--red-dot: rgb(217, 45, 32);--red-field: rgb(240, 82, 82);--blue-surface: rgb(239, 248, 255);--blue-line: rgb(191, 219, 254);--blue-ink: rgb(23, 92, 211);--violet-surface: rgb(244, 243, 255);--violet-surface-2: rgb(237, 233, 254);--violet-line: rgb(196, 181, 253);--violet-ink: rgb(89, 37, 220);--violet-ink-2: rgb(91, 33, 182);--orange-surface: rgb(255, 244, 237);--orange-ink: rgb(196, 50, 10);--orange-dot: rgb(234, 88, 12);--teal-surface: rgb(230, 247, 245);--teal-ink: rgb(15, 118, 110);--text-strong: var(--slate-950);--text: var(--slate-900);--text-2: var(--slate-700);--text-3: var(--slate-600);--text-muted: var(--slate-500);--text-faint: var(--slate-400);--text-link: var(--bb-blue);--text-danger: var(--red-dot);--surface-page: var(--white);--surface-app: var(--bb-page);--surface-card: var(--white);--surface-fill: var(--slate-75);--surface-subtle: var(--slate-100);--surface-head: var(--slate-50);--surface-row-hover: var(--slate-25);--surface-sheet: var(--bb-sheet);--surface-nav: var(--bb-side);--surface-nav-panel: var(--bb-side-panel);--line: var(--slate-200);--line-hair: var(--slate-150);--line-soft: var(--slate-100);--action: var(--bb-orange);--action-press: var(--bb-orange-press);--action-soft: var(--bb-orange-soft);--action-ink: var(--bb-orange-ink);--danger: var(--red-dot);--danger-press: var(--red-ink);--success: var(--green-dot);--font-sans: "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--font-mono: ui-monospace, SFMono-Regular, Menlo, Consolas, monospace;--fs-11-5: 11.5px;--fs-12: 12px;--fs-12-5: 12.5px;--fs-13: 13px;--fs-13-5: 13.5px;--fs-14: 14px;--fs-14-5: 14.5px;--fs-15: 15px;--fs-15-5: 15.5px;--fs-16: 16px;--fs-19: 19px;--fs-21: 21px;--fs-22: 22px;--fs-24: 24px;--fs-26: 26px;--fs-28: 28px;--fw-regular: 400;--fw-medium: 500;--fw-semibold: 600;--fw-bold: 700;--lh-body: 1.45;--lh-tight: 1.25;--ls-h1: -.5px;--ls-h2: -.3px;--ls-dialog: -.2px;--ls-eyebrow: .04em;--ls-eyebrow-wide: .06em;--ls-app: .08em;--r-4: 4px;--r-5: 5px;--r-6: 6px;--r-7: 7px;--r-8: 8px;--r-9: 9px;--r-10: 10px;--r-12: 12px;--r-14: 14px;--r-16: 16px;--r-20: 20px;--r-pill: 999px;--sp-2: 2px;--sp-4: 4px;--sp-6: 6px;--sp-8: 8px;--sp-10: 10px;--sp-12: 12px;--sp-14: 14px;--sp-16: 16px;--sp-18: 18px;--sp-20: 20px;--sp-22: 22px;--sp-24: 24px;--sp-32: 32px;--sp-36: 36px;--sp-44: 44px;--sp-56: 56px;--h-tag: 24px;--h-badge: 20px;--h-grid-ctl: 34px;--h-btn-sm: 32px;--h-btn: 38px;--h-btn-lg: 40px;--h-field: 44px;--h-hit: 44px;--h-row-grid: 46px;--h-row-inset: 56px;--h-row-list: 64px;--w-nav: 288px;--w-rail: 76px;--w-sheet: 560px;--w-dialog: 560px;--w-content: 1280px;--pad-main-y: 32px;--pad-main-x: 44px;--ring: inset 0 0 0 1px var(--slate-200);--ring-hair: inset 0 0 0 1px var(--slate-150);--ring-strong: inset 0 0 0 1px var(--slate-300);--ring-focus: 0 0 0 3px var(--bb-orange-soft), inset 0 0 0 1px var(--bb-orange);--ring-error: inset 0 0 0 1px var(--red-field);--shadow-field: inset 0 0 0 1px var(--slate-200), 0 1px 2px rgba(0, 0, 0, .04);--shadow-btn: inset 0 0 0 1px var(--slate-200), 0 1px 2px rgba(0, 0, 0, .05);--shadow-primary: 0 7.8px 7.8px rgba(255, 60, 0, .1), 0 2.1px 4.3px rgba(255, 60, 0, .12);--shadow-seg-on: 0 1px 2px rgba(15, 23, 42, .08);--shadow-nav-on: 0 1px 2px rgba(15, 23, 42, .08), inset 0 0 0 1px var(--slate-200);--shadow-pop: 0 16px 40px rgba(15, 23, 42, .18), 0 0 0 1px rgba(15, 23, 42, .06);--shadow-menu: 0 12px 32px rgba(15, 23, 42, .14), 0 0 0 1px var(--slate-200);--shadow-confirm: 0 12px 36px rgba(15, 23, 42, .22), 0 0 0 1px rgba(15, 23, 42, .06);--shadow-tip: 0 8px 24px rgba(15, 23, 42, .18);--shadow-dialog: 0 24px 60px rgba(15, 23, 42, .25);--shadow-sheet: 0 24px 64px rgba(15, 23, 42, .28);--shadow-toast: 0 12px 30px rgba(15, 23, 42, .25);--shadow-login: 0 1px 2px rgba(0, 0, 0, .05), inset 0 0 0 1px var(--slate-200), 0 12px 32px rgba(15, 23, 42, .06);--scrim: rgba(15, 23, 42, .42);--scrim-sheet: rgba(15, 23, 42, .38);--scrim-confirm: rgba(15, 23, 42, .08);--scrim-nav: rgba(15, 23, 42, .35);--ease: ease;--ease-out: ease-out;--dur-press: 60ms;--dur-pop: .14s;--dur-chev: .15s;--dur-toast: .18s;--dur-sheet: .2s;--dur-shimmer: 1.4s;--press-scale: .975}@keyframes bbPop{0%{opacity:0;transform:translateY(-4px) scale(.98)}to{opacity:1;transform:none}}@keyframes bbSlide{0%{transform:translate(30px);opacity:.6}to{transform:none;opacity:1}}@keyframes bbUp{0%{transform:translateY(8px);opacity:0}to{transform:none;opacity:1}}@keyframes bbNudge{0%,to{transform:none}40%{transform:scale(1.008)}}@keyframes bbSpin{to{transform:rotate(360deg)}}*,*:before,*:after{box-sizing:border-box}html,body,#root{height:100%;margin:0;padding:0}body{font-family:var(--font-sans);font-size:var(--fs-14);line-height:var(--lh-body);color:var(--text);background:var(--surface-page);-webkit-font-smoothing:antialiased}a{color:var(--bb-blue);text-decoration:none}a:hover{color:var(--bb-blue-hover)}h1,h2{font-size:var(--fs-26);font-weight:var(--fw-bold);letter-spacing:var(--ls-h1);margin:0 0 14px;color:var(--text)}h3{font-size:var(--fs-12);font-weight:var(--fw-semibold);letter-spacing:var(--ls-eyebrow);text-transform:uppercase;color:var(--text-faint);margin:14px 0 8px}p{margin:0 0 10px}code,.mono{font-family:var(--font-mono);font-size:var(--fs-12-5)}.muted{color:var(--text-muted)}.small{font-size:var(--fs-13)}.spacer{flex:1}.row{display:flex;gap:8px;align-items:center;flex-wrap:wrap;margin-top:12px}.center{min-height:100%;display:flex;align-items:center;justify-content:center;padding:40px 16px}.error-text{color:var(--red-dot)}.table-wrap{overflow-x:auto}@media (prefers-reduced-motion: reduce){*,*:before,*:after{animation:none!important;transition:none!important}}button{display:inline-flex;align-items:center;justify-content:center;gap:8px;height:var(--h-btn);padding:0 16px;border:0;border-radius:var(--r-pill);font-family:inherit;font-size:var(--fs-14);font-weight:var(--fw-semibold);line-height:1;white-space:nowrap;background:var(--bb-orange);color:#fff;cursor:pointer;transition:transform var(--dur-press) var(--ease),background var(--dur-press) var(--ease)}button:hover:not(:disabled){background:var(--bb-orange-press)}button:active:not(:disabled){transform:scale(var(--press-scale))}button.secondary{background:#fff;color:var(--text);box-shadow:var(--ring)}button.secondary:hover:not(:disabled){background:var(--slate-50)}button.ghost{background:transparent;color:var(--bb-blue);padding:0 6px}button.ghost:hover:not(:disabled){background:transparent;color:var(--bb-blue-hover)}button.soft{background:var(--slate-100);color:var(--text-2)}button.soft:hover:not(:disabled){background:var(--slate-200)}button.danger{background:var(--red-dot);color:#fff}button.danger:hover:not(:disabled){background:var(--red-ink)}button:disabled{opacity:.5;cursor:not-allowed}button.small{height:var(--h-btn-sm);padding:0 12px;font-size:var(--fs-13)}button.large{height:44px;padding:0 18px;font-size:var(--fs-15)}button.rect{border-radius:var(--r-8);height:44px;font-size:var(--fs-15);box-shadow:var(--shadow-primary)}button.rect.secondary{box-shadow:var(--ring)}button.block{width:100%}.icon-btn{width:40px;height:40px;padding:0;border-radius:var(--r-10);background:#fff;color:var(--text-2);box-shadow:var(--shadow-field);flex:none}.icon-btn:hover:not(:disabled){background:var(--slate-50)}.icon-btn.close{width:34px;height:34px;border-radius:var(--r-8);background:transparent;box-shadow:none;color:var(--text-muted)}.icon-btn.close:hover:not(:disabled){background:var(--slate-100)}.icon-btn.more{width:34px;height:34px;border-radius:var(--r-8);background:transparent;box-shadow:none}.icon-btn.more:hover:not(:disabled),.icon-btn.more[aria-expanded=true]{background:var(--slate-100)}.icon-btn.tool{width:28px;height:28px;border-radius:var(--r-6);box-shadow:var(--ring);color:var(--text)}.icon-btn.tool:disabled{color:var(--slate-300);opacity:1}input,select,textarea{width:100%;height:var(--h-field);padding:0 14px;border:0;outline:none;border-radius:var(--r-10);font-family:inherit;font-size:var(--fs-15);color:var(--text);background:#fff;box-shadow:var(--shadow-field);min-width:0}textarea{height:auto;padding:10px 14px;resize:vertical}select{-moz-appearance:none;appearance:none;-webkit-appearance:none;padding-right:34px;cursor:pointer;background:#fff url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%2364748b' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'><path d='m6 9 6 6 6-6'/></svg>") no-repeat right 12px center}input:focus,select:focus,textarea:focus{box-shadow:var(--ring-focus)}input:disabled,select:disabled,textarea:disabled{background:var(--slate-100);color:var(--text-muted);cursor:not-allowed}input[aria-invalid=true]{box-shadow:var(--ring-error)}input.login{border-radius:var(--r-8)}input[type=checkbox],input[type=radio]{-moz-appearance:none;appearance:none;-webkit-appearance:none;width:18px;height:18px;margin:0;padding:0;flex:none;border-radius:5px;background:#fff;box-shadow:inset 0 0 0 1.5px var(--slate-300);cursor:pointer;display:inline-grid;place-items:center}input[type=radio]{border-radius:50%}input[type=checkbox]:checked{background:var(--bb-blue) url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='11' height='11' viewBox='0 0 24 24' fill='none' stroke='white' stroke-width='3.6' stroke-linecap='round' stroke-linejoin='round'><path d='M20 6 9 17l-5-5'/></svg>") no-repeat center;box-shadow:none}input[type=radio]:checked{background:#fff;box-shadow:inset 0 0 0 6px var(--bb-orange)}input[type=checkbox]:focus-visible,input[type=radio]:focus-visible{box-shadow:var(--ring-focus)}input[type=checkbox]:disabled,input[type=radio]:disabled{opacity:.55}input[type=number]{font-variant-numeric:tabular-nums}input[type=date],input[type=datetime-local]{padding-right:10px}::placeholder{color:var(--text-faint)}label{display:flex;flex-direction:column;gap:6px;margin:12px 0 0;font-size:var(--fs-13);font-weight:var(--fw-semibold);color:var(--text-2);min-width:0}label input,label select,label textarea{margin:0;font-weight:var(--fw-regular)}label.inline{display:inline-flex;flex-direction:row;align-items:center;gap:8px;margin:10px 14px 0 0;font-weight:var(--fw-regular);color:var(--text);font-size:var(--fs-14)}label.inline input:not([type=checkbox]):not([type=radio]){width:auto}label.inline input[type=checkbox],label.inline input[type=radio]{width:18px;height:18px}.field-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px 16px}.field-grid label{margin:0}.field-grid .wide{grid-column:1 / -1}.field-stack{display:flex;flex-direction:column;gap:12px}.field-stack label{margin:0}.search{width:320px;max-width:100%}.input-suffix{position:relative;display:block}.input-suffix input{padding-right:56px}.input-suffix .suffix{position:absolute;right:14px;top:50%;transform:translateY(-50%);font-size:var(--fs-13-5);font-weight:var(--fw-semibold);color:var(--text-muted);cursor:pointer}.notice{display:flex;gap:10px;align-items:flex-start;padding:10px 12px;border-radius:var(--r-8);font-size:var(--fs-13);line-height:19px}.notice.compact{gap:6px;align-items:center;padding:8px 10px;border-radius:var(--r-10);font-size:var(--fs-12-5)}.notice svg{flex:none;margin-top:1px}.notice-text{flex:1}.notice.error{background:var(--red-surface);color:var(--red-ink);box-shadow:inset 0 0 0 1px var(--red-line)}.notice.info{background:var(--blue-surface);color:var(--bb-blue);box-shadow:inset 0 0 0 1px var(--blue-line)}.notice.success{background:var(--green-surface);color:var(--green-ink-2);box-shadow:inset 0 0 0 1px var(--green-line)}.notice.warn{background:var(--amber-surface);color:var(--amber-ink);box-shadow:inset 0 0 0 1px var(--amber-line)}.error,.ok{display:block;padding:10px 12px;border-radius:var(--r-8);font-size:var(--fs-13);margin:10px 0}.error{background:var(--red-surface);color:var(--red-ink);box-shadow:inset 0 0 0 1px var(--red-line)}.ok{background:var(--green-surface);color:var(--green-ink-2);box-shadow:inset 0 0 0 1px var(--green-line)}.toast-stack{position:fixed;right:20px;bottom:20px;z-index:100;display:flex;flex-direction:column;gap:8px;max-width:min(420px,calc(100vw - 32px))}.toast{display:flex;gap:10px;align-items:flex-start;padding:12px 14px;border-radius:var(--r-10);background:var(--text);color:#fff;font-size:var(--fs-14);box-shadow:var(--shadow-toast);animation:bbUp var(--dur-toast) var(--ease-out)}.toast svg{flex:none;margin-top:2px}.toast.success svg{color:#4ade80}.toast.info svg{color:#93c5fd}.toast.error svg{color:#fca5a5}.badge{display:inline-flex;align-items:center;gap:6px;height:22px;padding:0 8px;border-radius:var(--r-4);font-size:var(--fs-12);font-weight:var(--fw-semibold);white-space:nowrap;background:var(--slate-100);color:var(--slate-600);vertical-align:middle}.badge:before{content:"";width:6px;height:6px;border-radius:50%;background:var(--slate-400);display:inline-block;flex:none}.badge.good{background:var(--green-surface);color:var(--green-ink)}.badge.good:before{background:var(--green-dot)}.badge.bad{background:var(--red-surface);color:var(--red-ink)}.badge.bad:before{background:var(--red-dot)}.badge.warn{background:var(--amber-surface);color:var(--amber-ink)}.badge.warn:before{background:var(--amber-dot)}.tag{display:inline-flex;align-items:center;gap:5px;height:var(--h-tag);padding:0 9px;border-radius:var(--r-pill);font-size:var(--fs-12-5);font-weight:var(--fw-medium);white-space:nowrap;background:var(--slate-100);color:var(--slate-600)}.tag.blue{background:var(--blue-surface);color:var(--blue-ink)}.tag.green{background:var(--green-surface);color:var(--green-ink)}.tag.violet{background:var(--violet-surface);color:var(--violet-ink)}.count-badge,.nav-badge{display:inline-flex;align-items:center;justify-content:center;min-width:20px;height:20px;padding:0 6px;margin-left:6px;border-radius:10px;background:var(--bb-orange);color:#fff;font-size:var(--fs-11-5);font-weight:var(--fw-bold);font-variant-numeric:tabular-nums}.panel,.card{background:var(--surface-card);border:1px solid var(--line);border-radius:var(--r-8);padding:18px 20px;margin-bottom:0}.panel>h3:first-child,.panel .row:first-child{margin-top:0}.section-label{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:14px 4px 6px;font-size:var(--fs-12);font-weight:var(--fw-semibold);letter-spacing:var(--ls-eyebrow);text-transform:uppercase;color:var(--text-faint)}.section-label>span{display:inline-flex;align-items:center;gap:6px}.section-label:first-child{padding-top:0}.inset-list{background:#fff;border-radius:var(--r-14);box-shadow:var(--ring);overflow:hidden}.inset-list>*+*{border-top:1px solid var(--line-hair)}.fact-row{display:grid;gap:0 14px;padding:11px 16px;font-size:var(--fs-14);align-items:center}.fact-label{color:var(--text-muted)}.fact-value{min-width:0;overflow-wrap:anywhere;color:var(--text);display:flex;align-items:center;flex-wrap:wrap;gap:6px 8px}.inset-row{display:flex;align-items:center;gap:12px;padding:10px 16px;min-height:var(--h-row-inset);font-size:var(--fs-14)}.inset-row .inset-text{flex:1;min-width:0;display:flex;flex-direction:column;gap:1px}.inset-row .inset-title{font-weight:var(--fw-medium);color:var(--text)}.inset-row .inset-sub{font-size:var(--fs-12-5);color:var(--text-muted);font-family:var(--font-mono)}.inset-row input,.inset-row select{height:36px;width:200px;font-size:var(--fs-14)}.grid2{display:grid;grid-template-columns:1fr 1fr;gap:16px;align-items:start}.grid3{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px 16px}.kv{display:grid;grid-template-columns:220px 1fr;gap:10px 14px;font-size:var(--fs-14)}.kv>:nth-child(odd){color:var(--text-muted)}.filters{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px 16px}.caps-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px 16px;margin-top:8px}.choice-list{max-height:180px;overflow:auto;background:#fff;border-radius:var(--r-14);box-shadow:var(--ring);padding:4px 0;margin-top:4px}.choice{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:8px 14px;font-size:var(--fs-13);border-top:1px solid var(--line-hair)}.choice:first-child{border-top:0}pre.detail{margin:0;white-space:pre-wrap;word-break:break-all;font-size:var(--fs-11-5);color:var(--text-muted);max-width:420px;font-family:var(--font-mono)}.recovery-codes{font-family:var(--font-mono);font-size:var(--fs-15);letter-spacing:1px;background:var(--slate-50);box-shadow:var(--ring);border-radius:var(--r-10);padding:12px 16px;-webkit-user-select:text;user-select:text;margin:0}.empty-state{padding:48px 16px;text-align:center;color:var(--text-muted);display:flex;flex-direction:column;align-items:center;gap:10px;font-size:var(--fs-14)}.empty-state svg{color:var(--text-faint)}.switch{display:inline-flex;align-items:center;gap:8px;cursor:pointer;font-size:var(--fs-13);color:var(--text-muted);margin:0;font-weight:var(--fw-regular);flex-direction:row}.switch.disabled{cursor:not-allowed}.switch-track{width:34px;height:20px;border-radius:10px;background:var(--slate-300);position:relative;transition:background .15s;flex:none}.switch-track.on{background:var(--green-dot)}.switch.disabled .switch-track{opacity:.55}.switch-knob{position:absolute;top:2px;left:2px;width:16px;height:16px;border-radius:50%;background:#fff;box-shadow:0 1px 2px #0003;transition:left .15s}.switch-track.on .switch-knob{left:16px}.grid-card{background:#fff;border:1px solid var(--line);border-radius:var(--r-8);overflow:hidden}.grid-tabs{display:flex;align-items:center;gap:24px;padding:0 16px;border-bottom:1px solid var(--line);overflow-x:auto;scrollbar-width:none}.grid-tab{height:44px;padding:0;border-radius:0;background:none;color:var(--text-muted);font-size:var(--fs-13-5);font-weight:var(--fw-medium);gap:6px}.grid-tab:hover:not(:disabled){background:none;color:var(--text)}.grid-tab.on{color:var(--text);font-weight:var(--fw-semibold);box-shadow:inset 0 -2px 0 var(--bb-orange)}.grid-tab:active:not(:disabled){transform:none}.grid-tab-count{font-size:var(--fs-12);font-weight:var(--fw-semibold);color:var(--text-faint)}.grid-tab.on .grid-tab-count{color:var(--bb-orange-ink)}.grid-tools{display:flex;align-items:center;gap:8px;padding:12px 16px;border-bottom:1px solid var(--line);flex-wrap:wrap}.grid-tools-left{display:flex;align-items:center;gap:8px;flex:1 1 auto;min-width:0;flex-wrap:wrap}.grid-tools-right{display:flex;align-items:center;gap:8px;margin-left:auto}.grid-count{font-size:var(--fs-13);color:var(--text-muted);white-space:nowrap;margin-right:6px}.grid-tools select,.grid-tools input:not([type=checkbox]){height:34px;border-radius:var(--r-6);font-size:var(--fs-13);box-shadow:var(--ring);width:auto}.grid-tools label{margin:0;flex-direction:row;align-items:center;gap:6px;font-weight:var(--fw-regular);color:var(--slate-600);font-size:var(--fs-13)}.grid-tools label.inline{color:var(--text)}.grid-tools .filter-chip{display:inline-flex;align-items:center;gap:6px;height:34px;padding:0 10px;border-radius:var(--r-6);background:#fff;box-shadow:var(--ring);font-size:var(--fs-13);color:var(--text-2)}.grid-tools .filter-chip.on{background:var(--bb-orange-soft);box-shadow:inset 0 0 0 1px var(--bb-orange)}.grid-tools .filter-chip select{box-shadow:none;height:32px;padding-left:4px;font-weight:var(--fw-semibold)}.grid-tools button.small{height:var(--h-grid-ctl);border-radius:var(--r-6)}.grid-body{overflow-x:auto}.grid-card table{border:0;border-radius:0;margin:0}.grid-foot{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;min-height:48px;padding:8px 16px;border-top:1px solid var(--line);font-size:var(--fs-13);color:var(--slate-600)}.grid-pager{display:flex;align-items:center;gap:8px;margin-left:auto}.search-field{display:flex;align-items:center;gap:8px;height:34px;padding:0 10px;border-radius:var(--r-6);background:#fff;box-shadow:var(--ring-strong);color:var(--text-faint);flex:0 1 320px;min-width:180px;margin:0;cursor:text;flex-direction:row;font-weight:var(--fw-regular)}.search-field input{flex:1;min-width:0;height:100%;border:0;background:transparent;box-shadow:none;padding:0;font-size:var(--fs-13);color:var(--text);border-radius:0}.search-field:focus-within{box-shadow:var(--ring-focus)}.search-field.pill{height:44px;padding:0 16px;border-radius:22px;background:var(--surface-fill);box-shadow:none;flex:1 1 320px}.search-field.pill:focus-within{background:#fff;box-shadow:var(--ring-focus)}.search-field.pill input{font-size:var(--fs-14-5)}.grid-skeleton{padding:0}.skeleton-row{display:flex;gap:14px;align-items:center;min-height:46px;padding:6px 16px;border-bottom:1px solid var(--line-hair)}.sk{display:block;height:12px;border-radius:6px;background:linear-gradient(90deg,#eef1f5 25%,#f7f9fb 37%,#eef1f5 63%);background-size:400% 100%;animation:bbShimmer var(--dur-shimmer) ease-in-out infinite}@keyframes bbShimmer{0%{background-position:100% 0}to{background-position:0 0}}table{border-collapse:separate;border-spacing:0;width:100%;background:#fff;border:1px solid var(--line);border-radius:var(--r-8);overflow:hidden;margin-bottom:0}th{height:38px;padding:0 16px;text-align:left;vertical-align:middle;background:var(--surface-head);border-bottom:1px solid var(--line);font-size:var(--fs-11-5);font-weight:var(--fw-bold);letter-spacing:.05em;text-transform:uppercase;color:var(--text-muted);white-space:nowrap}td{padding:10px 16px;text-align:left;vertical-align:middle;border-bottom:1px solid var(--line-hair);font-size:var(--fs-13);color:var(--text-2)}tbody tr{min-height:var(--h-row-grid)}tbody tr:last-child td{border-bottom:0}tbody tr:hover{background:var(--surface-row-hover)}td b{color:var(--text);font-weight:var(--fw-semibold)}table.docs tbody tr{cursor:pointer}table.docs tbody tr:hover,table.docs tbody tr:focus{background:var(--slate-50);outline:none}td.name{font-weight:var(--fw-medium);color:var(--text)}th.col-check,td.col-check{width:44px;padding-right:0;cursor:default}td.col-check input,th.col-check input{display:inline-grid;vertical-align:middle}table.docs tbody tr.selected{background:var(--bb-orange-tint)}table.docs tbody tr.selected:hover{background:var(--bb-orange-soft)}.view-toggle{display:inline-flex;gap:3px;padding:3px;border-radius:var(--r-pill);background:var(--slate-100)}.view-toggle button{height:32px;padding:0 12px;background:transparent;color:var(--text-2);font-size:var(--fs-13);border-radius:var(--r-pill);gap:6px}.view-toggle button:hover:not(:disabled){background:#fff9}.view-toggle button.on{background:#fff;color:var(--text);box-shadow:var(--shadow-seg-on)}.view-toggle button.on svg{color:var(--bb-orange)}.grid-tools label.grid-select-all{margin:0 0 0 4px;color:var(--text);font-size:var(--fs-13)}.doc-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(176px,1fr));gap:14px;padding:16px}.doc-card{position:relative;display:flex;flex-direction:column;gap:4px;padding:10px 10px 12px;border-radius:var(--r-12);background:#fff;box-shadow:var(--ring);cursor:pointer;outline:none;transition:background var(--dur-press) var(--ease),transform var(--dur-press) var(--ease)}.doc-card:hover{background:var(--slate-25);box-shadow:var(--ring-strong)}.doc-card:focus-visible{box-shadow:var(--ring-focus)}.doc-card:active{transform:scale(var(--press-scale))}.doc-card.selected{background:var(--bb-orange-tint);box-shadow:inset 0 0 0 1.5px var(--bb-orange)}.doc-card-check{position:absolute;top:14px;left:14px;z-index:2;display:inline-flex;padding:3px;border-radius:7px;background:#ffffffeb;box-shadow:0 1px 2px #0f172a1f;cursor:default}.doc-thumb{aspect-ratio:3 / 4;border-radius:var(--r-8);background:var(--surface-sheet);box-shadow:var(--ring-hair);overflow:hidden;display:flex;align-items:center;justify-content:center;-webkit-user-select:none;user-select:none}.doc-thumb img{width:100%;height:100%;object-fit:contain;background:#fff;pointer-events:none;-webkit-user-drag:none}.doc-thumb-sk{width:100%;height:100%;border-radius:0}.doc-icon{display:flex;flex-direction:column;align-items:center;gap:6px;color:var(--text-faint)}.doc-icon-type{font-size:var(--fs-11-5);font-weight:var(--fw-bold);letter-spacing:.05em;color:var(--text-muted);background:#fff;padding:2px 8px;border-radius:var(--r-4);box-shadow:var(--ring)}.doc-card-name{margin-top:4px;font-size:var(--fs-13-5);font-weight:var(--fw-semibold);color:var(--text);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.doc-card-meta{font-size:var(--fs-12);color:var(--text-muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.dialog.print.bulk{max-width:1040px}.bulk-fieldset{border:0;margin:0;padding:0;min-width:0}.bulk-fieldset:disabled{opacity:.7}.bulk-files{display:flex;flex-direction:column;min-width:0}.dialog.bulk .print-grid{grid-template-columns:minmax(0,1fr) 420px}.bulk-list{max-height:52vh;overflow:auto}td.actions{white-space:normal;min-width:280px}td.actions button{margin:2px 4px 2px 0}td.actions button.small{height:30px;font-size:var(--fs-12-5);padding:0 10px}.row-menu-wrap{position:relative;display:inline-block}.row-menu{position:fixed;z-index:85;min-width:190px;background:#fff;border-radius:var(--r-10);padding:6px;box-shadow:var(--shadow-menu);animation:bbPop var(--dur-pop) var(--ease-out);display:flex;flex-direction:column}.row-menu button{display:flex;align-items:center;gap:8px;width:100%;height:auto;justify-content:flex-start;background:none;padding:9px 12px;border-radius:var(--r-7);font-size:var(--fs-14);font-weight:var(--fw-regular);color:var(--text);text-align:left}.row-menu button:hover:not(:disabled){background:var(--slate-100)}.row-menu button.danger{color:var(--red-dot)}.row-menu button:active:not(:disabled){transform:none}.row-menu .divider{height:1px;background:var(--line-soft);margin:4px 6px}.app{display:flex;min-height:100vh;background:var(--surface-page)}.sidenav{position:sticky;top:0;height:100vh;width:var(--w-nav);flex:none;display:flex;flex-direction:column;background:var(--surface-nav);border-right:1px solid var(--line);overflow-x:hidden;z-index:30}.app.rail .sidenav{width:var(--w-rail)}.nav-head{display:flex;align-items:flex-start;justify-content:space-between;gap:8px;padding:20px 16px 4px 18px}.app.rail .nav-head{flex-direction:column;align-items:center;justify-content:center;gap:10px;padding:18px 8px 12px}.nav-logo{height:48px;width:auto;margin:-2px 0 6px -4px;display:block}.nav-mark{width:36px;height:auto;display:block;mix-blend-mode:multiply}.nav-app{padding:0 18px 8px;font-size:var(--fs-12-5);font-weight:var(--fw-bold);letter-spacing:var(--ls-app);text-transform:uppercase;color:var(--slate-600)}.nav-groups{flex:1;overflow-y:auto;padding:4px 10px 12px;display:flex;flex-direction:column;gap:8px;scrollbar-width:thin}.nav-group-btn{width:100%;display:flex;align-items:center;gap:10px;padding:10px;height:auto;border-radius:var(--r-10);background:transparent;color:var(--text);font-size:var(--fs-15);font-weight:var(--fw-semibold);text-align:left;transition:background var(--dur-press) var(--ease)}.nav-group-btn:hover:not(:disabled){background:#0f172a0a}.nav-group-btn.holds{background:#fff;box-shadow:var(--ring)}.nav-group-btn:active:not(:disabled){transform:none}.app.rail .nav-group-btn{justify-content:center}.nav-group-label{white-space:nowrap}.chev{margin-left:auto;color:var(--text-muted);display:inline-flex;transition:transform var(--dur-chev)}.chev.closed{transform:rotate(-90deg)}.nav-flat{gap:2px;padding-top:6px}.nav-flat-item{width:100%;display:flex;align-items:center;justify-content:flex-start;gap:12px;padding:9px 12px;height:auto;border-radius:var(--r-8);background:transparent;color:var(--text-2);font-size:var(--fs-14);font-weight:var(--fw-medium);text-align:left;white-space:nowrap;transition:background var(--dur-press) var(--ease)}.nav-flat-item svg{color:var(--text-muted)}.nav-flat-item:hover:not(:disabled){background:#0f172a0d;color:var(--text)}.nav-flat-item.current{background:#fff;color:var(--text);font-weight:var(--fw-semibold);box-shadow:var(--shadow-nav-on)}.nav-flat-item.current svg{color:var(--bb-orange)}.nav-flat-item:active:not(:disabled){transform:none}.nav-flat-item .count-badge{margin-left:auto}.app.rail .nav-flat-item{justify-content:center;padding:9px 0}.section-tabs{display:flex;align-items:center;gap:8px;padding-bottom:12px;border-bottom:1px solid var(--line);max-width:100%;overflow-x:auto;scrollbar-width:none;margin-bottom:2px}.section-tab{display:inline-flex;align-items:center;gap:8px;height:38px;padding:0 16px;border:0;border-radius:var(--r-pill);background:#fff;color:var(--text-2);font-size:var(--fs-13-5);font-weight:var(--fw-semibold);white-space:nowrap;text-decoration:none;box-shadow:var(--ring);cursor:pointer;transition:background var(--dur-press) var(--ease)}.section-tab svg{color:var(--text-muted)}.section-tab:hover{color:var(--text);text-decoration:none;background:var(--slate-50)}.section-tab.current,.section-tab.active{color:var(--bb-orange-ink);background:var(--bb-orange-soft);box-shadow:inset 0 0 0 1px var(--bb-orange)}.section-tab.current svg{color:var(--bb-orange)}.section-tab:active{transform:scale(var(--press-scale))}.section-tab .count-badge{margin-left:2px}.nav-panel{margin-top:4px;padding:6px;background:var(--surface-nav-panel);border-radius:var(--r-12);display:flex;flex-direction:column;gap:2px}.nav-panel ul{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:2px}.nav-item{width:100%;display:flex;align-items:center;justify-content:space-between;gap:8px;padding:10px 12px;height:auto;border-radius:var(--r-8);background:transparent;color:var(--text-2);font-size:var(--fs-15);font-weight:var(--fw-regular);text-align:left;white-space:nowrap;text-decoration:none;cursor:pointer;transition:background var(--dur-press) var(--ease)}.nav-item:hover{background:#fff9;color:var(--text-2);text-decoration:none}.nav-item.current,.nav-item.active{background:#fff;color:var(--text);font-weight:var(--fw-semibold);box-shadow:var(--shadow-nav-on)}.nav-item:active{transform:none}.nav-foot{position:relative;border-top:1px solid var(--line);padding:12px 10px 14px;display:flex;flex-direction:column;gap:6px}.user-chip{width:100%;height:auto;padding:6px 8px;border-radius:var(--r-12);background:none;color:var(--text);display:flex;align-items:center;justify-content:flex-start;gap:10px;text-align:left}.user-chip:hover:not(:disabled),.user-chip.expanded{background:var(--slate-100)}.user-chip:active:not(:disabled){transform:none}.app.rail .user-chip{justify-content:center}.nav-signout{align-self:flex-start;height:auto;padding:6px 12px;background:none;color:var(--text-muted);font-size:var(--fs-13-5);font-weight:var(--fw-semibold);gap:8px}.nav-signout:hover:not(:disabled){background:none;color:var(--text)}.nav-signout:active:not(:disabled){transform:none}.avatar{flex:none;border-radius:50%;background:var(--bb-avatar);color:#fff;font-weight:var(--fw-bold);display:inline-flex;align-items:center;justify-content:center}.user-text{min-width:0;flex:1;display:flex;flex-direction:column}.user-name{font-weight:var(--fw-semibold);font-size:var(--fs-14-5);color:var(--text);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.user-role{color:var(--text-muted);font-size:var(--fs-12-5);font-weight:var(--fw-regular);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.user-caret{margin-left:auto;color:var(--text-faint);display:inline-flex}.menu{position:absolute;left:8px;right:8px;bottom:calc(100% - 4px);z-index:80;max-width:320px;background:#fff;border-radius:var(--r-14);padding:6px;box-shadow:var(--shadow-pop);animation:bbPop var(--dur-pop) var(--ease-out)}.app.rail .menu{left:8px;right:auto;width:220px}.menu button{display:flex;align-items:center;gap:8px;width:100%;height:auto;text-align:left;justify-content:flex-start;background:none;padding:9px 12px;border-radius:var(--r-10);font-size:var(--fs-14);font-weight:var(--fw-regular);color:var(--text)}.menu button:hover:not(:disabled){background:var(--slate-100)}.menu button.danger{color:var(--red-dot)}.menu button:active:not(:disabled){transform:none}.menu-divider{height:1px;background:var(--line-soft);margin:4px 6px}.main{flex:1;min-width:0;padding:var(--pad-main-y) var(--pad-main-x) 56px}.main-inner{max-width:var(--w-content);margin:0 auto;display:flex;flex-direction:column;gap:16px}.mobile-bar,.nav-scrim{display:none}.page-head{display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap}.page-head-text{flex:1 1 320px;min-width:0}.page-head h1,.page-head h2{margin:0;display:flex;align-items:center;gap:8px}.page-head p{margin:4px 0 0;color:var(--text-muted);font-size:var(--fs-14)}.page-head-actions{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.stack{display:flex;flex-direction:column;gap:6px}.count{color:var(--text-faint);font-size:var(--fs-11-5);font-variant-numeric:tabular-nums}.crumbs{display:flex;align-items:center;flex-wrap:wrap;gap:2px;margin-bottom:-8px;font-size:var(--fs-13-5);color:var(--text-muted)}button.crumb{height:auto;display:inline-flex;align-items:center;gap:4px;padding:3px 6px;border-radius:var(--r-6);background:transparent;box-shadow:none;color:var(--bb-blue-crumb);font-size:var(--fs-13-5);font-weight:var(--fw-medium)}button.crumb:hover:not(:disabled){background:var(--slate-100);color:var(--bb-blue-hover);text-decoration:underline}button.crumb:active:not(:disabled){transform:none}.crumb-sep{display:inline-flex;color:var(--text-faint)}.crumb-current{padding:3px 6px;color:var(--text);font-weight:var(--fw-semibold)}table.docs tbody tr.folder-row td{background:var(--slate-25)}table.docs tbody tr.folder-row:hover td,table.docs tbody tr.folder-row:focus td{background:var(--slate-50)}table.docs tbody tr.folder-row.selected td{background:var(--bb-orange-tint)}table.docs tbody tr.folder-row.selected:hover td{background:var(--bb-orange-soft)}.folder-name{display:inline-flex;align-items:center;gap:8px;font-weight:var(--fw-semibold);color:var(--text)}.folder-name svg{color:var(--bb-orange);flex:none}.folder-count{margin-left:10px;font-size:var(--fs-12);font-weight:var(--fw-regular);color:var(--text-muted);white-space:nowrap}.grid-section{padding:14px 16px 0;font-size:var(--fs-12);font-weight:var(--fw-semibold);letter-spacing:var(--ls-eyebrow);text-transform:uppercase;color:var(--text-faint)}.grid-section+.doc-grid{padding-top:10px}.folder-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(236px,1fr));gap:12px;padding:10px 16px 6px}.folder-tile{position:relative;display:flex;align-items:center;gap:12px;padding:12px;border-radius:var(--r-12);background:#fff;box-shadow:var(--ring);cursor:pointer;outline:none;transition:background var(--dur-press) var(--ease),transform var(--dur-press) var(--ease)}.folder-tile:hover{background:var(--slate-25);box-shadow:var(--ring-strong)}.folder-tile:focus-visible{box-shadow:var(--ring-focus)}.folder-tile:active{transform:scale(var(--press-scale))}.folder-tile.selected{background:var(--bb-orange-tint);box-shadow:inset 0 0 0 1.5px var(--bb-orange)}.folder-tile-check{display:inline-flex;flex:none;cursor:default}.folder-tile-icon{color:var(--bb-orange);flex:none}.folder-tile-text{flex:1;min-width:0;display:flex;flex-direction:column;gap:2px}.folder-tile-name{font-size:var(--fs-13-5);font-weight:var(--fw-semibold);color:var(--text);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.folder-tile-meta{font-size:var(--fs-12);color:var(--text-muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.folder-tile-go{color:var(--text-faint);flex:none}.folder-tile:hover .folder-tile-go{color:var(--text-muted)}.bulk-skipped{margin:4px 0 0;padding-left:18px;font-weight:var(--fw-regular)}.bulk-skipped li+li{margin-top:2px}.bulk-folder{font-size:var(--fs-12);color:var(--text-muted)}.tiles{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:12px}.tile,button.tile{height:auto;text-align:left;background:#fff;color:var(--text);border:1px solid var(--line);border-radius:var(--r-8);padding:16px 18px;display:flex;flex-direction:column;align-items:flex-start;justify-content:flex-start;gap:6px;font-family:inherit;font-weight:var(--fw-regular);font-size:var(--fs-14);line-height:var(--lh-body);white-space:normal;box-shadow:none}button.tile:hover:not(:disabled){background:var(--slate-50)}button.tile.bad:hover:not(:disabled){background:var(--red-surface-2)}button.tile.warn:hover:not(:disabled){background:var(--amber-surface)}.tile .k{font-size:var(--fs-12);font-weight:var(--fw-semibold);letter-spacing:var(--ls-eyebrow);text-transform:uppercase;color:var(--text-muted)}.tile .v{font-size:var(--fs-28);font-weight:var(--fw-bold);letter-spacing:var(--ls-h1);color:var(--text);line-height:var(--lh-tight)}.tile .s{font-size:var(--fs-13);color:var(--text-muted)}.tile.bad{background:var(--red-surface);border-color:var(--red-line)}.tile.bad .v{color:var(--red-ink)}.tile.warn{background:var(--amber-surface);border-color:var(--amber-line)}.tile.warn .v{color:var(--amber-ink)}.tile.clickable{cursor:pointer;transition:background var(--dur-press) var(--ease),transform var(--dur-press) var(--ease)}.tile.clickable:hover,.tile.clickable:focus-visible{background:var(--slate-50)}.tile.clickable.bad:hover{background:var(--red-surface-2)}.tile.clickable:active{transform:scale(var(--press-scale))}.sheet-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:90;display:flex;justify-content:flex-end;align-items:stretch;padding:12px;background:var(--scrim-sheet)}.sheet{width:100%;height:100%;border-radius:var(--r-20);background:var(--surface-sheet);box-shadow:var(--shadow-sheet);display:flex;flex-direction:column;animation:bbSlide var(--dur-sheet) var(--ease-out);overflow:hidden}.sheet.nudge{animation:bbNudge .18s var(--ease-out)}.sheet-head{display:flex;align-items:flex-start;gap:12px;padding:20px 22px 14px;background:#fff;border-bottom:1px solid var(--line)}.sheet-title{flex:1 1 auto;min-width:0;display:flex;flex-direction:column;gap:2px}.sheet-title h2{margin:0;font-size:var(--fs-19);font-weight:var(--fw-bold);letter-spacing:var(--ls-dialog);line-height:1.25;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.sheet-sub{font-size:var(--fs-13-5);color:var(--text-muted);display:flex;align-items:center;gap:4px 8px;flex-wrap:wrap}.sheet-body{flex:1;min-height:0;overflow-y:auto;padding:10px 20px 22px;display:flex;flex-direction:column;gap:6px;scrollbar-width:thin}.sheet-body .field-grid,.sheet-body .field-stack{background:#fff;border-radius:var(--r-14);box-shadow:var(--ring);padding:16px}.sheet-body .notice{margin-top:8px}.sheet-foot{display:flex;flex-wrap:wrap;gap:8px;padding:14px 22px;border-top:1px solid var(--line);background:#fff}.dialog-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:90;background:var(--scrim);display:flex;align-items:flex-start;justify-content:center;padding:6vh 16px 16px;overflow-y:auto}.dialog{background:#fff;color:var(--text);border-radius:var(--r-20);width:100%;max-width:var(--w-dialog);max-height:88vh;overflow:auto;padding:20px 22px 18px;box-shadow:var(--shadow-dialog);-webkit-user-select:text;user-select:text;animation:bbPop var(--dur-pop) var(--ease-out)}.dialog h2{font-size:var(--fs-19);font-weight:var(--fw-bold);letter-spacing:var(--ls-dialog);margin:0 0 12px}.dialog h3{margin-top:12px}.dialog .row{margin-top:16px}.dialog label{color:var(--text-2)}.dialog.wide{max-width:860px}.dialog.print{max-width:1200px;position:relative;max-height:92vh}.dialog-backdrop:has(>.dialog.print){padding-top:2vh}.dialog.preparing{max-width:440px}.dialog.preparing h2{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.preparing-msg{display:flex;align-items:center;gap:14px;padding:18px 0 8px;color:var(--text-muted, #5b6472)}.preparing-msg .spinner{margin:0;flex:none;width:24px;height:24px;border-color:var(--slate-200);border-top-color:var(--slate-600)}.confirm-scrim{position:fixed;top:0;right:0;bottom:0;left:0;z-index:120;background:var(--scrim-confirm)}.confirm-pop{position:fixed;z-index:121;padding:14px 14px 12px;border-radius:var(--r-14);background:#fff;box-shadow:var(--shadow-confirm);display:flex;flex-direction:column;gap:8px;animation:bbPop var(--dur-pop) var(--ease-out)}.confirm-caret{position:absolute;width:12px;height:12px;margin-left:-6px;background:#fff;transform:rotate(45deg)}.confirm-caret.below{top:-6px;box-shadow:-1px -1px #0f172a0f}.confirm-caret.above{bottom:-6px;box-shadow:1px 1px #0f172a0f}.confirm-title{font-size:var(--fs-15);font-weight:var(--fw-bold);color:var(--text)}.confirm-msg{margin:0;font-size:var(--fs-13-5);color:var(--text-2);line-height:1.45}.confirm-reason{margin:0}.confirm-reason textarea{min-height:56px;font-size:var(--fs-14)}.confirm-actions{display:flex;justify-content:flex-end;gap:8px;padding-top:4px}.print-grid{display:grid;grid-template-columns:minmax(0,1fr) 540px;gap:16px}@media (max-width: 1240px){.print-grid{grid-template-columns:minmax(0,1fr) 460px}}.sheet-preview{background:#fff;box-shadow:0 0 0 1px var(--slate-300),0 2px 12px #0f172a2e;max-width:100%}.drawer{position:fixed;top:0;right:0;bottom:0;width:min(760px,94vw);overflow:auto;background:#fff;border-left:1px solid var(--line);padding:20px 22px;box-shadow:var(--shadow-sheet);z-index:60;animation:bbSlide var(--dur-sheet) var(--ease-out)}.drawer h2{font-size:var(--fs-19);letter-spacing:var(--ls-dialog)}.pd .pd-head{display:flex;align-items:center;gap:12px;margin-bottom:10px}.pd .pd-head h2{margin:0}.pd .pd-doc{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.pd .pd-close{width:34px;height:34px;box-shadow:none;background:transparent}.pd .pd-close:hover:not(:disabled){background:var(--slate-100)}.pd-row{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin-bottom:10px}.pd-label{font-size:var(--fs-13);font-weight:var(--fw-semibold);color:var(--text-2);min-width:56px}.pd-printer select{flex:1 1 260px;max-width:420px;height:38px;font-size:var(--fs-14)}.pd-copies{gap:14px}.pd-spinner{display:inline-flex;align-items:stretch}.pd-spinner input{width:64px;height:36px;border-radius:var(--r-8) 0 0 var(--r-8);font-size:var(--fs-14)}.pd-spin-btns{display:flex;flex-direction:column;width:26px}.pd-spin-btns button{flex:1;height:auto;padding:0;border-radius:0;background:#fff;color:var(--text-2);box-shadow:var(--ring);font-size:9px;line-height:1}.pd-spin-btns button:first-child{border-radius:0 var(--r-8) 0 0}.pd-spin-btns button:last-child{border-radius:0 0 var(--r-8) 0}.pd-spin-btns button:hover:not(:disabled){background:var(--slate-50)}.pd-spin-btns button svg{width:12px;height:12px}.pd-spin-btns button.pd-up svg{transform:rotate(180deg)}.pd-check{margin:0;font-size:var(--fs-13-5);gap:7px}.pd-info{display:inline-flex;color:var(--text-faint);margin-left:4px;vertical-align:middle;cursor:help}.pd-left{display:flex;flex-direction:column;gap:10px;min-width:0}.pd-section{border:1px solid var(--line);border-radius:var(--r-10);padding:12px 14px;display:flex;flex-direction:column;gap:8px}.pd-section h4{margin:0;font-size:var(--fs-13-5);font-weight:var(--fw-semibold);color:var(--text);display:flex;align-items:center}.pd-radios{display:flex;align-items:center;gap:6px 18px;flex-wrap:wrap;font-size:var(--fs-13-5)}.pd-radios.pd-two-col{display:grid;grid-template-columns:1fr 1fr;gap:8px 12px}.pd-radios.pd-indent{padding-left:24px}.pd-radio{display:inline-flex;flex-direction:row;align-items:center;gap:7px;margin:0;font-weight:var(--fw-regular);color:var(--text);white-space:nowrap}.pd-radio-with-field{display:inline-flex;align-items:center;gap:6px}.pd-range{width:150px;height:34px;font-size:var(--fs-13-5)}.pd-percent{width:72px;height:34px;font-size:var(--fs-13-5);text-align:right}.pd-inline-field{display:inline-flex;flex-direction:row;align-items:center;gap:8px;margin:0;font-size:var(--fs-13-5);font-weight:var(--fw-regular);color:var(--text)}.pd-inline-field select{width:auto;height:34px;font-size:var(--fs-13-5);padding-right:30px}.pd-expander{height:auto;padding:2px 0;background:none;color:var(--text);font-size:var(--fs-13);font-weight:var(--fw-regular);gap:4px;align-self:flex-start}.pd-expander:hover:not(:disabled){background:none;color:var(--bb-blue)}.pd-expander:active:not(:disabled){transform:none}.pd-expander .chev{margin:0;color:var(--text-muted)}.pd-more{display:flex;align-items:center;gap:8px 18px;flex-wrap:wrap;padding:6px 0 0 18px}.pd-seg{display:grid;grid-template-columns:repeat(4,1fr);gap:4px;background:var(--slate-100);border-radius:var(--r-10);padding:3px}.pd-seg button{height:34px;padding:0 8px;border-radius:var(--r-8);background:transparent;color:var(--text-2);font-size:var(--fs-13-5);font-weight:var(--fw-semibold)}.pd-seg button:hover:not(:disabled){background:#fff9}.pd-seg button.on{background:#fff;color:var(--text);box-shadow:var(--shadow-seg-on)}.pd-seg button:disabled{opacity:.45}.pd-note{margin:0}.pd-orient{display:flex;flex-direction:column;gap:6px;margin-top:2px}.pd-sublabel{font-size:var(--fs-13);font-weight:var(--fw-semibold);color:var(--text-2)}.pd-preview{display:flex;flex-direction:column;align-items:center;gap:8px;background:var(--surface-sheet);border:1px solid var(--line);border-radius:var(--r-12);padding:12px;min-height:420px}.pd-preview-head{width:100%;display:flex;align-items:center;justify-content:space-between;gap:12px;font-size:var(--fs-13)}.pd-scale{display:flex;flex-direction:column;gap:2px}.pd-canvas{flex:none;width:100%;display:flex;align-items:center;justify-content:center;overflow:auto}.pd-canvas.zoomed{align-items:flex-start;justify-content:flex-start}.pd-canvas.zoomed .sheet-preview{max-width:none;margin:auto}.pd-zoom{display:flex;align-items:center;gap:6px}.pd-zoom .icon-btn.small{width:30px;height:30px}.pd-zoom-value{min-width:44px;text-align:center;font-size:var(--fs-13);font-weight:var(--fw-semibold);font-variant-numeric:tabular-nums}.pd-nav{display:flex;align-items:center;gap:10px;width:100%}.pd-nav input[type=range]{flex:1;height:auto;padding:0;box-shadow:none;accent-color:var(--bb-blue);background:transparent}.pd-nav .icon-btn.small{width:32px;height:32px}.pd-page-of{font-size:var(--fs-13);text-align:center}.pd-foot{display:flex;align-items:flex-end;justify-content:space-between;gap:16px;margin-top:14px;padding-top:12px;border-top:1px solid var(--line-hair);flex-wrap:wrap}.pd-summary{font-size:var(--fs-13)}.pd-actions{display:flex;gap:8px}.pd-actions button{min-width:96px}.pd-panel-backdrop{position:absolute;top:0;right:0;bottom:0;left:0;background:var(--scrim-confirm);display:flex;align-items:center;justify-content:center;border-radius:var(--r-20);z-index:5}.pd-panel{background:#fff;border-radius:var(--r-16);box-shadow:var(--shadow-pop);padding:18px 20px;width:min(520px,92%);max-height:90%;overflow:auto;animation:bbPop var(--dur-pop) var(--ease-out)}.pd-panel .pd-head h2{font-size:var(--fs-16)}.pd-fields{display:flex;flex-direction:column;gap:10px}.pd-fields label{margin:0}.pd-kv{margin-top:12px;grid-template-columns:110px 1fr;gap:4px 12px}.auth{min-height:100vh;width:100%;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:24px;padding:40px 16px;background:#fff url(/login-pattern-edtech.svg) repeat 0 0 / 884px 942.21px}.auth-card{width:100%;max-width:440px;background:#fff;border-radius:var(--r-16);box-shadow:var(--shadow-login);padding:36px 36px 32px;display:flex;flex-direction:column;gap:24px}.auth-card.wide{max-width:480px}.auth-card .logo{height:44px;width:auto;align-self:flex-start;display:block}.auth-back{align-self:flex-start;display:inline-flex;align-items:center;gap:6px;height:auto;padding:0;margin-bottom:-8px;background:none;font-size:var(--fs-14);font-weight:var(--fw-medium);color:var(--slate-600)}.auth-back:hover:not(:disabled){background:none;color:var(--text)}.auth-back:active:not(:disabled){transform:none}.auth-card .auth-title{display:flex;flex-direction:column;gap:6px}.auth-card h1{font-size:var(--fs-24);font-weight:var(--fw-bold);letter-spacing:var(--ls-h1);margin:0;color:var(--text-strong)}.auth-card .auth-title p{margin:0;font-size:var(--fs-14);line-height:21px;color:var(--text-muted);text-wrap:pretty}.auth-card form,.auth-fields{display:flex;flex-direction:column;gap:16px}.auth-card label{margin:0}.auth-card .label-row{display:flex;justify-content:space-between;align-items:center;font-size:var(--fs-13);font-weight:var(--fw-semibold);color:var(--text-2)}.auth-card .label-row a{font-size:var(--fs-13);font-weight:var(--fw-semibold);white-space:nowrap}.auth-card .notice,.auth-card .error,.auth-card .ok{margin:0}.auth-card button[type=submit],.auth-card .block{width:100%}.auth-card .row{margin-top:0}.auth-card .links{display:flex;justify-content:space-between;gap:12px;font-size:var(--fs-14);color:var(--text-muted)}.auth-card .links a{font-weight:var(--fw-semibold)}.auth-divider{display:flex;align-items:center;gap:12px}.auth-divider span{flex:1;height:1px;background:var(--line)}.auth-divider i{font-style:normal;font-size:var(--fs-12);color:var(--text-faint)}.auth-foot{font-size:var(--fs-12-5);color:var(--text-faint);white-space:nowrap}.auth-card ol{margin:0;padding-left:18px;font-size:var(--fs-13);color:var(--text-muted)}.auth-card .qr{display:block;margin:0 auto;border-radius:var(--r-10);box-shadow:var(--ring)}.otp{display:grid;gap:8px}.otp-cell{width:100%;height:54px;border-radius:var(--r-10);text-align:center;font-size:22px;font-weight:var(--fw-semibold);padding:0;box-shadow:var(--ring)}.otp-cell.filled{background:var(--bb-orange-soft);box-shadow:inset 0 0 0 1px var(--bb-orange-busy)}.otp-cell.invalid{box-shadow:var(--ring-error)}.otp-cell:focus{box-shadow:var(--ring-focus)}.viewer{position:fixed;top:0;right:0;bottom:0;left:0;background:var(--slate-900);display:flex;flex-direction:column;z-index:50;user-select:none;-webkit-user-select:none}.viewer-bar{display:flex;align-items:center;gap:12px;padding:8px 14px;background:var(--slate-950);color:var(--slate-200)}.viewer-bar .muted{color:var(--slate-400)}.viewer-bar button.secondary{background:var(--slate-700);color:#fff;box-shadow:none}.viewer-bar button.secondary:hover:not(:disabled){background:var(--slate-600)}.viewer-title{font-weight:var(--fw-semibold);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:50vw}.viewer-pages{flex:1;min-height:0;overflow:auto;padding:18px 0}.viewer-foot{padding:6px 14px;background:var(--slate-950);color:var(--slate-500);text-align:center}.print-status{display:flex;align-items:center;gap:10px;padding:8px 14px;background:var(--blue-surface);color:var(--text);border-bottom:1px solid var(--blue-line);font-size:var(--fs-13)}.page{margin:0 auto 18px;width:min(96%,1100px);background:#fff;box-shadow:0 2px 12px #00000059;position:relative;min-height:400px}.page canvas{display:block;width:100%;height:auto;pointer-events:none;-webkit-user-drag:none}.page canvas.hidden{display:none}.page-placeholder{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center;color:var(--slate-400)}.viewer-msg{color:var(--slate-300);text-align:center;margin-top:20vh;font-size:var(--fs-16)}.spinner{width:28px;height:28px;border:3px solid var(--slate-600);border-top-color:var(--slate-200);border-radius:50%;margin:0 auto 14px;animation:bbSpin .9s linear infinite}@media print{body *{display:none!important}body:after{content:"Printing from the browser is disabled. Use the Print button in DocView.";display:block;padding:40px;font-size:18px}}:focus-visible{outline:2px solid var(--bb-orange);outline-offset:2px}input:focus-visible,select:focus-visible,textarea:focus-visible{outline:none}.skip-link{position:absolute;left:-999px;top:8px;background:var(--bb-orange);color:#fff;padding:6px 10px;border-radius:var(--r-6);z-index:100}.skip-link:focus{left:8px}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}@media (max-width: 1100px){.main{padding:24px 24px 48px}.grid2,.grid3,.filters,.caps-grid,.field-grid{grid-template-columns:1fr}.kv{grid-template-columns:1fr;gap:2px 0}.kv>:nth-child(2n){margin-bottom:8px}.search{width:220px}}@media (max-width: 900px){.app{flex-direction:column}.mobile-bar{display:flex;align-items:center;gap:12px;height:56px;padding:0 12px;background:#fff;border-bottom:1px solid var(--line);position:sticky;top:0;z-index:40}.mobile-bar img{height:30px;width:auto}.mobile-title{font-size:var(--fs-14-5);font-weight:var(--fw-semibold)}.sidenav,.app.rail .sidenav{position:fixed;top:0;left:0;height:100vh;width:var(--w-nav);transform:translate(-100%);transition:transform var(--dur-sheet) var(--ease-out);z-index:70;box-shadow:var(--shadow-sheet)}.sidenav.open{transform:none}.app.rail .nav-head{flex-direction:row;align-items:flex-start;padding:20px 16px 4px 18px}.nav-toggle{display:none}.nav-scrim{display:block;position:fixed;top:0;right:0;bottom:0;left:0;background:var(--scrim-nav);z-index:65}.main{padding:16px 16px 40px}.print-grid,.pd-radios.pd-two-col{grid-template-columns:1fr}.drawer{width:100vw;border-left:0}.sheet-backdrop{padding:0}.sheet{border-radius:0;max-width:100%!important}.viewer-title{max-width:40vw}table{display:block;overflow-x:auto}.auth-card{padding:28px 22px 24px}}.net-states{display:inline-flex;gap:18px;flex-wrap:wrap;align-items:center}.net-states>span{display:inline-flex;gap:8px;align-items:center}.net-list{margin-top:18px}.net-add{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.net-add input{height:36px;font-size:var(--fs-14)}.net-add input.mono{width:210px;font-family:var(--font-mono)}.net-add input:not(.mono){width:240px}.net-warnings{margin:6px 0 0;padding-left:18px}.net-warnings li{margin:2px 0}.net-confirm-actions{display:inline-flex;gap:8px;flex:none;align-self:flex-start}tr.net-removed td{background:var(--amber-surface)}@media (max-width: 720px){.net-add input.mono,.net-add input:not(.mono){width:100%}}.dialog.print.bulk{max-width:1340px}.dialog.bulk .print-grid{grid-template-columns:minmax(0,1fr) 370px 380px}.bulk-list td .badge{white-space:nowrap}.bulk-hint{padding:6px 4px 0}.bulk-list tr.bulk-row{cursor:pointer}.bulk-list tr.bulk-row:hover td{background:var(--slate-50, #f8fafc)}.bulk-list tr.bulk-row.active td{background:var(--blue-surface)}.bulk-list tr.bulk-row.active td:first-child{box-shadow:inset 3px 0 0 var(--bb-orange, #f58a2b)}.bulk-list tr.bulk-row:focus-visible{outline:2px solid var(--bb-blue);outline-offset:-2px}.bulk-files .section-label{display:flex;justify-content:space-between;align-items:baseline;gap:8px}.bulk-preview{min-height:0}.bulk-preview-file{width:100%;display:flex;align-items:center;gap:8px}.bulk-preview-name{flex:1;min-width:0;display:flex;flex-direction:column;align-items:center;text-align:center}.bulk-preview-name b{max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:var(--fs-14)}.bulk-preview .preparing-msg{padding:0}@media (max-width: 1340px){.dialog.bulk .print-grid{grid-template-columns:minmax(0,1fr) 380px}.dialog.bulk .bulk-files{grid-column:1 / -1;grid-row:2}.dialog.bulk .bulk-list{max-height:30vh}}@media (max-width: 900px){.dialog.bulk .print-grid{grid-template-columns:1fr}}
