:root{color-scheme:dark;color:#f8f9fb;background:#070b17;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}html,body,#root{min-height:100%;margin:0;overflow-x:hidden}body{background:radial-gradient(circle at top left,rgba(92,120,255,.18),transparent 28%),radial-gradient(circle at top right,rgba(94,255,231,.12),transparent 22%),radial-gradient(circle at bottom left,rgba(255,125,178,.08),transparent 26%),#070b17}button,textarea{font:inherit}.app{--app-max-width: none;max-width:var(--app-max-width);padding:clamp(16px,2vw,40px);margin:auto}.app[data-width=standard]{--app-max-width: 1420px}.app[data-width=wide]{--app-max-width: 1920px}.shell{min-height:100vh;display:grid;place-items:center;padding:24px}.auth-panel{width:min(420px,100%);background:#0d1221f5;border:1px solid rgba(255,255,255,.08);border-radius:28px;box-shadow:0 32px 80px #00000040;padding:36px;text-align:center}.auth-panel h1{margin:0 0 12px;font-size:2rem}.auth-panel p{color:#b7bfd0;margin:0 0 24px}.google-signin-btn{display:block;text-decoration:none;text-align:center}.fallback-login-toggle{display:block;width:100%;margin-top:18px;background:none;border:none;color:#8b96b8;font-size:.8rem;text-decoration:underline;cursor:pointer}.fallback-login-form{margin-top:18px}.public-tools-link{display:block;margin-top:24px;padding-top:20px;border-top:1px solid rgba(255,255,255,.08);color:#8b96b8;text-decoration:none;font-size:.85rem}.public-tools-link:hover{color:#86a2ff;text-decoration:underline}.brand{display:flex;align-items:center;gap:20px}.brand-logo{width:64px;height:64px;flex-shrink:0;border-radius:50%;object-fit:cover;background:#ffffff0a}.brand-logo-lg{width:88px;height:88px;display:block;margin:0 auto 20px}.password-input{width:100%;box-sizing:border-box;font:inherit;padding:14px 16px;border-radius:14px;border:1px solid rgba(255,255,255,.12);background:#ffffff0a;color:#f8f9fb;margin-bottom:18px}.primary-btn,.secondary-btn,.ghost-btn,.icon-btn{border:none;border-radius:999px;cursor:pointer}.primary-btn{background:linear-gradient(135deg,#6a7dff,#51e2d5);color:#07101f;font-weight:700;padding:14px 26px;box-shadow:0 18px 35px #4e74ff38}.secondary-btn{background:#ffffff0f;color:#e6eaf7;padding:12px 22px}.ghost-btn{background:transparent;color:#cfd8ff;border:1px solid rgba(255,255,255,.12);padding:12px 18px}.icon-btn{background:#ffffff0d;width:40px;height:40px;display:grid;place-items:center;color:#e8f1ff}.topbar{display:flex;flex-direction:column;gap:18px;margin-bottom:22px;padding:22px 28px;border-radius:32px;background:linear-gradient(180deg,#16234eeb,#0b101df5);border:1px solid rgba(255,255,255,.08);box-shadow:0 30px 70px #01061359}.topbar-row{display:flex;justify-content:space-between;gap:18px;align-items:flex-start}.eyebrow{text-transform:uppercase;letter-spacing:.25em;color:#86a2ff;margin:0 0 12px;font-size:.8rem}.topbar h1{margin:0;font-size:clamp(1.9rem,2.2vw,2.8rem);line-height:1.02}.subline{margin:10px 0 0;color:#b7c4e8;max-width:540px}.user-block{display:flex;flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:14px;padding:18px 22px;border-radius:28px;background:#ffffff0d;border:1px solid rgba(255,255,255,.08)}.user-name{color:#cfd8ff;font-weight:600}.avatar{width:56px;height:56px;border-radius:50%}.user-email{color:#9fb4d7;font-size:.95rem}.current-events-banner{border-top:1px solid rgba(255,255,255,.08);padding-top:18px}.current-events-label{margin:0 0 10px;text-transform:uppercase;letter-spacing:.2em;font-size:.72rem;color:#86a2ff}.current-events-empty{color:#9fb4d7;font-size:.95rem}.current-events-list{display:flex;flex-wrap:wrap;gap:10px}.current-event-wrapper{position:relative}.current-event-pill{display:flex;align-items:center;gap:8px;padding:8px 14px;border-radius:999px;background:#ffffff0d;border:1px solid;font:inherit;cursor:pointer;transition:background .15s ease}.current-event-pill:hover{background:#ffffff1a}.current-event-tooltip{left:0;transform:none}.current-event-dot{width:8px;height:8px;border-radius:50%;flex-shrink:0}.current-event-title{color:#f3f7ff;font-weight:600;font-size:.9rem}.current-event-time{color:#9fb4d7;font-size:.8rem}.grid-layout{position:relative}.card{position:absolute;background:#ffffff0a;border:1px solid rgba(255,255,255,.08);border-radius:28px;padding:24px;box-shadow:0 20px 50px #050a1929;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);box-sizing:border-box;transition:top .26s ease,left .26s ease,opacity .2s ease}.card.dragging{opacity:.3;transition:opacity .15s ease}.card-header{display:flex;gap:12px;align-items:flex-start}.card-drag-handle{margin-top:4px;cursor:grab}.card-drag-handle:active{cursor:grabbing}.card-header h2{margin:0 0 8px;font-size:1.35rem}.card-header p{margin:0;color:#c3d2f2;line-height:1.5}.link-grid{display:grid;gap:14px;margin-top:22px}.link-card{display:flex;align-items:center;gap:14px;padding:16px 18px;border-radius:20px;text-decoration:none;color:#f3f7ff;background:#ffffff08;border:1px solid rgba(255,255,255,.06);transition:transform .18s ease,border-color .18s ease,background .18s ease}.link-card:hover{transform:translateY(-2px);background:#ffffff14;border-color:#51e2d542}.link-card.dragging{opacity:.3}.link-drag-handle{margin-right:-4px}.link-icon{width:46px;height:46px;flex-shrink:0;display:grid;place-items:center;border-radius:16px;background:linear-gradient(135deg,#51e2d52e,#6a7dff29);font-size:1.3rem;overflow:hidden}.links-search-row{display:flex;align-items:center;gap:10px;margin-bottom:22px}.links-search-input{max-width:480px}.links-search-results .link-grid{grid-template-columns:repeat(auto-fill,minmax(220px,1fr));margin-top:0}.link-card-text{display:flex;flex-direction:column;gap:2px;min-width:0}.links-search-result-section{font-size:.72rem;color:#9fb4d7;font-weight:400}.link-icon img{width:100%;height:100%;object-fit:contain}.footer-bar{margin-top:28px;padding:18px 24px;border-radius:24px;display:flex;justify-content:space-between;align-items:center;gap:12px;background:#ffffff08;border:1px solid rgba(255,255,255,.08)}.modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:#050a17bf;display:grid;place-items:center;padding:24px;z-index:20}.modal-card{width:min(920px,100%);max-height:85vh;display:flex;flex-direction:column;background:#09101e;border:1px solid rgba(255,255,255,.08);border-radius:24px;box-shadow:0 40px 80px #00000059;padding:24px}.modal-header{display:flex;justify-content:space-between;align-items:center;gap:16px;margin-bottom:18px}.admin-editor{overflow-y:auto;display:flex;flex-direction:column;gap:18px;padding-right:4px}.admin-section{background:#ffffff08;border:1px solid rgba(255,255,255,.08);border-radius:18px;padding:16px;display:flex;flex-direction:column;gap:10px}.admin-section.drag-over{border-color:#51e2d580;background:#51e2d50d}.admin-section-header{display:flex;gap:10px;align-items:center}.admin-section-header .text-input{font-weight:700;font-size:1.05rem}.text-input{font:inherit;width:100%;box-sizing:border-box;padding:10px 14px;border-radius:12px;border:1px solid rgba(255,255,255,.12);background:#ffffff0a;color:#f8f9fb;color-scheme:dark}.text-input option{background:#0d1221;color:#f3f7ff}.admin-links{display:flex;flex-direction:column;gap:8px;margin-top:4px}.admin-link-row{display:flex;gap:8px;align-items:center;border-radius:12px;border:1px solid transparent;padding:4px}.admin-link-row.drag-over{border-color:#51e2d580;background:#51e2d50f}.drag-handle{flex-shrink:0;cursor:grab;padding:0 2px;color:#8993b5;font-size:1.1rem;-webkit-user-select:none;user-select:none}.drag-handle:active{cursor:grabbing}.admin-link-row .text-input{flex:1}.icon-cell{display:flex;align-items:center;gap:6px;flex:0 0 auto}.icon-field{flex:0 0 72px;text-align:center;padding:10px 6px}.icon-preview{flex-shrink:0;width:36px;height:36px;display:grid;place-items:center;border-radius:10px;background:#ffffff0f;border:1px solid rgba(255,255,255,.1);overflow:hidden;font-size:1.1rem}.icon-preview img{width:100%;height:100%;object-fit:contain}.upload-btn{flex-shrink:0;width:36px;height:36px;display:grid;place-items:center;border-radius:10px;background:#ffffff0d;border:1px solid rgba(255,255,255,.12);color:#cfd8ff;cursor:pointer;font-size:1rem}.upload-btn:hover{background:#ffffff1a}.add-link-btn{align-self:flex-start;padding:8px 16px;font-size:.9rem}.modal-actions{display:flex;justify-content:flex-end;gap:12px;margin-top:18px}.message{margin-top:14px;color:#bdd18f}.floating-message{position:fixed;right:24px;bottom:24px;margin:0;padding:12px 20px;border-radius:14px;background:#0d1221f5;border:1px solid rgba(255,255,255,.1);box-shadow:0 20px 50px #0000004d;z-index:30}.tab-nav{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:26px}@keyframes tabFadeIn{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}.tab-panel{animation:tabFadeIn .22s ease}@media (prefers-reduced-motion: reduce){.tab-panel{animation:none}}.tab-btn{display:inline-flex;align-items:center;gap:8px;border:1px solid rgba(255,255,255,.08);background:#ffffff08;color:#b7c4e8;padding:12px 22px;border-radius:16px;cursor:pointer;font-weight:600;transition:background .18s ease,color .18s ease,border-color .18s ease}.tab-icon{font-size:1.05rem;line-height:1}.tab-btn:hover{background:#ffffff0f}.tab-btn.active{background:linear-gradient(135deg,#6a7dff40,#51e2d533);border-color:#51e2d54d;color:#f8f9fb}.calendar-tab-status{padding:40px;text-align:center;color:#b7c4e8}.calendar-header-row{display:flex;justify-content:space-between;align-items:flex-start;gap:18px;margin-bottom:24px}.calendar-header-row h2{margin:0 0 6px;font-size:1.6rem}.calendar-key{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:20px}.calendar-key-pill{padding:5px 14px;border-radius:999px;font-size:.8rem;font-weight:600;border:none;cursor:pointer;transition:opacity .15s ease}.calendar-key-pill.hidden{opacity:.35}.calendar-key-pill:hover{opacity:.8}.calendar-key-pill.hidden:hover{opacity:.5}.calendar-empty{color:#9fb4d7;margin:0}.event-dot{width:10px;height:10px;border-radius:50%;flex-shrink:0;display:inline-block}.calendar-panels{display:grid;grid-template-columns:1fr 1.6fr;gap:24px}.calendar-panel{background:#ffffff0a;border:1px solid rgba(255,255,255,.08);border-radius:28px;padding:24px;box-shadow:0 20px 50px #050a1929}.calendar-panel h3{margin:0 0 16px;font-size:1.1rem}.today-panel{grid-row:span 2}.today-panel-header{display:flex;justify-content:space-between;align-items:baseline;gap:10px;margin-bottom:16px}.today-panel-header h3{margin:0}.today-panel-reset{background:none;border:none;color:#86a2ff;cursor:pointer;font:inherit;font-size:.82rem;padding:0;white-space:nowrap}.today-panel-reset:hover{color:#a8b8ff}.today-event-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:14px}.today-event-item{display:flex;gap:12px;align-items:flex-start}.today-event-item .event-dot{margin-top:6px}.event-title{font-weight:600;color:#f3f7ff}.event-meta{color:#9fb4d7;font-size:.88rem;margin-top:2px;overflow-wrap:break-word}.event-description{color:#b7c4e8;font-size:.85rem;margin-top:6px;white-space:pre-wrap;overflow-wrap:anywhere}.event-description a{color:#7fd8ff;text-decoration:underline}.event-description a:hover{color:#a9e9ff}.event-description-block{margin-top:2px}.event-description-toggle{display:block;margin-top:4px;color:#86a2ff;background:none;border:none;font:inherit;font-size:.78rem;padding:0;cursor:pointer}.event-description-toggle:hover{color:#a8b8ff;text-decoration:underline}.week-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:10px}.week-day{background:#ffffff08;border:1px solid rgba(255,255,255,.06);border-radius:16px;padding:10px;min-height:110px;min-width:0}.week-day.today{border-color:#51e2d566;background:#51e2d50f}.week-day.selected{border-color:#6a7dff8c;background:#6a7dff14}.week-day.weekend{background:#ffffff04}.week-day-label{display:flex;flex-direction:column;align-items:center;width:100%;color:#9fb4d7;font-size:.78rem;text-transform:uppercase;letter-spacing:.05em;margin-bottom:8px;background:none;border:none;padding:4px 0;font-family:inherit;cursor:pointer;border-radius:8px;transition:background .15s ease}.week-day-label:hover{background:#ffffff0d}.week-day-number{font-size:1.1rem;color:#f3f7ff;font-weight:700;letter-spacing:0;text-transform:none}.week-day-events{display:flex;flex-direction:column;gap:4px}.week-event-wrapper{position:relative}.week-event{display:flex;align-items:baseline;gap:5px;font-size:.76rem;padding:4px 6px;border-left:3px solid;background:#ffffff0a;border-radius:4px;cursor:default;min-width:0}.week-event-time{flex-shrink:0;color:#9fb4d7;font-size:.68rem;white-space:nowrap}.week-event-title{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;min-width:0}.week-event-allday{font-size:.74rem;font-weight:600;padding:4px 8px;border-radius:999px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.week-event-tooltip{position:absolute;top:100%;left:50%;transform:translate(-50%);margin-top:6px;min-width:180px;max-width:260px;padding:10px 12px;border-radius:12px;background:#090e1cfa;border:1px solid rgba(255,255,255,.12);box-shadow:0 20px 45px #0006;opacity:0;visibility:hidden;pointer-events:none;transition:opacity .15s ease;z-index:25;white-space:normal}.week-event-tooltip:before{content:"";position:absolute;top:-6px;left:0;right:0;height:6px}.week-event-wrapper:hover .week-event-tooltip,.week-event-wrapper:focus-within .week-event-tooltip,.current-event-wrapper:hover .week-event-tooltip,.current-event-wrapper:focus-within .week-event-tooltip{opacity:1;visibility:visible;pointer-events:auto}.week-event-tooltip .event-title{font-size:.85rem;margin-bottom:4px}.week-event-tooltip .event-meta{font-size:.78rem}.week-event-tooltip .event-description{font-size:.76rem;max-height:90px;overflow-y:auto}.week-event-more{font-size:.72rem;color:#86a2ff;padding:2px 6px;background:none;border:none;font:inherit;text-align:left;cursor:pointer}.week-event-more:hover{color:#a8b8ff;text-decoration:underline}.month-panel-header{display:flex;align-items:center;gap:10px;margin-bottom:16px}.month-nav-btn{background:#ffffff0d;border:1px solid rgba(255,255,255,.1);color:#f3f7ff;width:32px;height:32px;border-radius:10px;cursor:pointer;font-size:1.1rem;line-height:1;display:grid;place-items:center;flex-shrink:0;transition:background .15s ease}.month-nav-btn:hover{background:#ffffff1a}.month-nav-select{display:flex;gap:8px}.month-nav-select select{background:#ffffff0a;border:1px solid rgba(255,255,255,.12);color:#f3f7ff;border-radius:10px;padding:6px 10px;font:inherit;font-size:.9rem;cursor:pointer;color-scheme:dark}.month-nav-select select option{background:#0d1221;color:#f3f7ff}.month-today-btn{margin-left:auto}.month-weekday-row{display:grid;grid-template-columns:repeat(7,1fr);text-align:center;color:#9fb4d7;font-size:.75rem;text-transform:uppercase;letter-spacing:.05em;margin-bottom:8px}.month-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:6px}.month-day{aspect-ratio:1;border-radius:12px;background:#ffffff08;border:1px solid rgba(255,255,255,.05);padding:6px;display:flex;flex-direction:column;align-items:center;gap:4px;font-family:inherit;cursor:pointer;width:100%;transition:background .15s ease,border-color .15s ease}.month-day:hover{background:#ffffff0f}.month-day.outside{opacity:.3}.month-day.today{border-color:#51e2d580;background:#51e2d514}.month-day.selected{border-color:#6a7dff8c;background:#6a7dff1a}.month-day-number{font-size:.85rem;color:#f3f7ff}.month-day-dots{display:flex;gap:3px;flex-wrap:wrap;justify-content:center}.month-day-dots .event-dot{width:6px;height:6px}.calendar-list{display:flex;flex-direction:column;gap:10px;margin-bottom:20px}.calendar-list-item{display:flex;align-items:center;gap:12px;padding:10px 14px;border-radius:12px;background:#ffffff08;border:1px solid rgba(255,255,255,.06)}.calendar-name{flex:1;color:#f3f7ff}.calendar-visibility-toggle{display:flex;align-items:center;gap:6px;color:#9fb4d7;font-size:.8rem;cursor:pointer;-webkit-user-select:none;user-select:none}.calendar-visibility-toggle input{accent-color:#6a7dff;cursor:pointer}.add-calendar-form{display:flex;gap:10px;align-items:center}.add-calendar-form .text-input{flex:1}.calendar-list-item-editing{align-items:flex-start;flex-direction:column}.edit-calendar-form{display:flex;gap:10px;align-items:center;width:100%;flex-wrap:wrap}.edit-calendar-form .text-input{flex:1;min-width:140px}.color-input{width:44px;height:44px;padding:2px;border-radius:10px;border:1px solid rgba(255,255,255,.12);background:#ffffff0a;cursor:pointer}.help-toggle{display:block;margin-top:16px;background:none;border:none;color:#86a2ff;cursor:pointer;font:inherit;font-size:.88rem;padding:0}.help-toggle:hover{color:#a8b8ff}.help-steps{margin:12px 0 0;padding-left:20px;color:#c3d2f2;font-size:.88rem;line-height:1.6;display:flex;flex-direction:column;gap:6px}@media (max-width: 1000px){.calendar-panels{grid-template-columns:1fr}.today-panel{grid-row:auto}}@media (max-width: 720px){.week-grid,.month-grid,.month-weekday-row{grid-template-columns:repeat(7,minmax(36px,1fr))}.week-day-events{display:none}}.danger-btn{border:none;border-radius:999px;cursor:pointer;background:linear-gradient(135deg,#ff5d6c,#c0273a);color:#fff;font-weight:700;padding:14px 26px;box-shadow:0 18px 35px #c0273a47}.danger-btn:disabled,.primary-btn:disabled,.secondary-btn:disabled{opacity:.45;cursor:not-allowed}.gam-tab{display:flex;flex-direction:column;gap:20px}.gam-status-banner{padding:12px 18px;border-radius:14px;background:#f447471f;border:1px solid rgba(244,71,71,.3);color:#ffb4b4;font-size:.9rem}.gam-field-grid{display:flex;flex-direction:column;gap:12px}.gam-field{display:flex;flex-direction:column;gap:6px;max-width:460px}.gam-field span{color:#b7c4e8;font-size:.85rem}.gam-target-radio-row{display:flex;align-items:center;gap:16px;flex-wrap:wrap;color:#e6eaf7}.gam-field-label{color:#b7c4e8;font-size:.85rem}.gam-textarea{width:100%;min-height:100px;box-sizing:border-box;font-family:Courier New,monospace;font-size:.88rem;padding:10px 12px;border-radius:12px;border:1px solid rgba(255,255,255,.12);background:#ffffff0a;color:#f8f9fb;resize:vertical}.gam-action-row{display:flex;gap:10px;justify-content:flex-end;flex-wrap:wrap}.gam-hint{color:#9fb4d7;font-size:.8rem;margin:0}.admin-user-list{list-style:none;margin:16px 0 0;padding:0;display:flex;flex-direction:column;gap:1px}.admin-user-row{display:flex;justify-content:space-between;align-items:center;padding:12px 4px;border-bottom:1px solid rgba(255,255,255,.06)}.admin-user-name{font-weight:600}.admin-user-email{color:#9fb4d7;font-size:.85rem}.gam-log-section{display:flex;flex-direction:column;gap:10px}.gam-log-header{display:flex;justify-content:space-between;align-items:center;gap:10px}.gam-log-header h3{margin:0}.gam-log-title-row{display:flex;align-items:center;gap:14px}.gam-running-indicator{display:inline-flex;align-items:center;gap:8px;color:#9cdcfe;font-size:.85rem}.gam-spinner{width:14px;height:14px;border:2px solid rgba(156,220,254,.25);border-top-color:#9cdcfe;border-radius:50%;animation:gam-spin .7s linear infinite;flex-shrink:0}@keyframes gam-spin{to{transform:rotate(360deg)}}@media (prefers-reduced-motion: reduce){.gam-spinner{animation:none}}.gam-log-actions{display:flex;gap:8px}.gam-log-panel{height:260px;overflow-y:auto;background:#12141c;border:1px solid rgba(255,255,255,.08);border-radius:14px;padding:12px 14px;font-family:Courier New,monospace;font-size:.82rem;line-height:1.5}.gam-log-empty{color:#6f7a92;margin:0}.gam-log-line{color:#d4d4d4;white-space:pre-wrap;word-break:break-word}.gam-log-line.tag-success{color:#4ec9b0}.gam-log-line.tag-error{color:#f44747}.gam-log-line.tag-warning{color:#dcdcaa}.gam-log-line.tag-info{color:#9cdcfe}.gam-log-line.tag-cmd{color:#c586c0}.gam-log-line.tag-preview{color:#ce9178}.gam-confirm-message{color:#e6eaf7;white-space:pre-wrap;line-height:1.5}.devices-grid{display:grid;grid-template-columns:1fr;gap:16px}@media (min-width: 920px){.devices-grid{grid-template-columns:minmax(0,1fr) 380px;align-items:start}}.label-bench{background:#12141c;border:1px solid rgba(255,255,255,.08);border-radius:16px;padding:24px 18px;display:flex;justify-content:center;overflow:auto}.label-bench-svg{background:#fff;border-radius:2px;box-shadow:0 1px #ffffff40,0 10px 26px #00000073}.label-bench-svg svg{display:block}.label-queue{list-style:none;margin:0;padding:0;max-height:460px;overflow-y:auto}.label-queue-row{display:grid;grid-template-columns:1fr auto;gap:9px 11px;padding:11px 0;border-bottom:1px solid rgba(255,255,255,.08)}.label-queue-row:last-child{border-bottom:0}.label-queue-thumb{background:#fff;border-radius:4px;padding:4px;grid-column:1 / -1}.label-queue-thumb svg{display:block;width:100%;height:auto}.label-queue-meta{min-width:0;font-family:ui-monospace,SF Mono,Menlo,Consolas,monospace;font-size:.8rem;color:#c3d2f2;line-height:1.6}.label-queue-key{color:#9fb4d7;margin-right:6px}.label-queue-tools{display:flex;align-items:flex-start;gap:6px}.label-queue-copies{width:52px;text-align:center;padding:6px 4px}.mono{font-family:ui-monospace,SF Mono,Menlo,Consolas,monospace}.grade-import-strip{display:flex;gap:8px;overflow-x:auto;padding:12px 0 4px}.grade-import-strip-year{flex:0 0 auto;border:1px solid rgba(255,255,255,.12);border-radius:10px;padding:8px 12px;min-width:100px;background:#ffffff08}.grade-import-strip-year.filled{border-color:#51e2d566;background:#51e2d514}.grade-import-strip-year b{display:block;font-size:.9rem}.grade-import-strip-year span{display:block;font-size:.75rem;color:#9fb4d7}.grade-import-strip-tid{font-size:1.05rem;font-weight:700;color:#86a2ff}.grade-import-year{border:1px solid rgba(255,255,255,.08);border-radius:14px;margin-top:14px;overflow:hidden}.grade-import-year-head{display:flex;flex-wrap:wrap;gap:10px;align-items:center;justify-content:space-between;padding:12px 14px;background:#ffffff0a}.grade-import-year-who{display:flex;align-items:baseline;gap:14px;flex-wrap:wrap;font-size:.85rem;color:#9fb4d7}.grade-import-year-who strong{font-size:1rem;color:#f8f9fb}.grade-import-tid-edit{width:70px;display:inline-block;padding:3px 6px;font-size:.85rem;text-align:right;margin-left:4px}.grade-import-scroller{overflow-x:auto;padding:12px 14px}.grade-import-courses{width:100%;min-width:560px;border-collapse:collapse}.grade-import-courses th{font-size:.72rem;font-weight:500;color:#9fb4d7;text-align:left;padding:0 6px 6px 0;white-space:nowrap}.grade-import-courses td{padding:0 6px 6px 0;vertical-align:top}.grade-import-cw-name{width:38%}.grade-import-bad{border-color:#e28a79!important;box-shadow:inset 3px 0 #e28a79}.grade-import-stats{display:flex;gap:20px;flex-wrap:wrap;margin-bottom:14px}.grade-import-stats div b{display:block;font-size:1.35rem;font-weight:700;line-height:1.1}.grade-import-stats div span{font-size:.75rem;color:#9fb4d7}.grade-import-rowscroll{overflow:auto;max-height:460px}.grade-import-rowtable{border-collapse:collapse;width:100%;font-size:.74rem}.grade-import-rowtable th{position:sticky;top:0;z-index:1;background:#12141c;color:#f8f9fb;text-align:left;font-weight:500;padding:7px 9px;white-space:nowrap;border-bottom:1px solid rgba(255,255,255,.12)}.grade-import-rowtable td{padding:5px 9px;white-space:nowrap;border-bottom:1px solid rgba(255,255,255,.06);color:#c3d2f2}.chromebook-devices-layout{display:grid;grid-template-columns:260px 280px 1fr;gap:24px;align-items:stretch}.chromebook-pane{background:#ffffff0a;border:1px solid rgba(255,255,255,.08);border-radius:28px;padding:20px;height:860px;overflow-y:auto;box-sizing:border-box}.chromebook-device-pane{min-width:0}.device-pane-divider{width:100%;border:none;border-top:1px solid rgba(255,255,255,.1);margin:4px 0}.device-info-grid{display:flex;flex-direction:column;gap:8px}.device-info-row{display:flex;gap:10px;align-items:baseline;flex-wrap:wrap}.device-info-label{color:#9fb4d7;font-size:.82rem;min-width:150px;flex-shrink:0}.device-info-value{color:#e6eaf7;font-size:.92rem;word-break:break-word}.device-info-with-photo{display:flex;gap:24px;align-items:flex-start;flex-wrap:wrap}.device-info-with-photo .device-info-grid{flex:1;min-width:240px}.device-photo-box{flex-shrink:0;width:200px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:10px;padding:12px;border-radius:16px;background:#ffffff0d;border:1px solid rgba(255,255,255,.1);box-sizing:border-box;text-align:center}.device-photo-box img{width:100%;height:140px;object-fit:contain;border-radius:8px}.device-photo-placeholder{color:#6f7a92;font-size:.78rem;height:140px;display:flex;align-items:center;justify-content:center}.device-photo-error{color:#ffb4b4;font-size:.75rem;margin:0}.device-photo-upload-btn{display:inline-flex;align-items:center;justify-content:center;font-size:.82rem;padding:8px 16px;width:100%;box-sizing:border-box}.model-pick-list-wrap{margin-bottom:16px}.model-pick-list{max-height:200px;overflow-y:auto;margin-top:8px;border:1px solid rgba(255,255,255,.08);border-radius:12px;padding:6px}.model-pick-item{display:flex;align-items:center;justify-content:space-between;gap:10px;width:100%;text-align:left;background:none;border:none;color:#e6eaf7;padding:8px 10px;border-radius:8px;cursor:pointer;font-size:.88rem}.model-pick-item:hover{background:#ffffff0f}.model-pick-item.selected{background:#7c9cff2e;font-weight:600}.model-pick-has-photo{color:#4ec9b0;font-size:.72rem;flex-shrink:0}.model-photo-add-row{display:flex;align-items:center;gap:12px;margin-bottom:20px}.model-photo-add-row .device-photo-upload-btn{width:auto;white-space:nowrap}.device-photo-upload-btn.disabled-btn{opacity:.5;cursor:default}.model-photo-list{max-height:50vh;overflow-y:auto}.model-photo-thumb{width:40px;height:40px;object-fit:contain;border-radius:8px;background:#ffffff0f;flex-shrink:0}.model-photo-change-btn{width:auto;white-space:nowrap}.ou-device-list-item{display:flex;flex-direction:column;align-items:flex-start;gap:2px;width:100%;text-align:left;background:none;border:none;border-bottom:1px solid rgba(255,255,255,.06);padding:8px;cursor:pointer;border-radius:8px}.ou-device-list-item:hover{background:#ffffff0f}.ou-device-list-item.selected{background:#7c9cff2e}.ou-device-asset{color:#e6eaf7;font-weight:600;font-size:.88rem}.ou-device-list-item.selected .ou-device-asset{color:#fff}.ou-device-serial{color:#9fb4d7;font-size:.78rem;font-family:Courier New,monospace}.chromebook-search-fields{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:12px 20px}.chromebook-search-fields .gam-field{max-width:none}.ou-tree-heading{margin:0 0 12px;font-size:1rem;color:#e6eaf7}.ou-device-list-heading-row{display:flex;align-items:center;justify-content:space-between;gap:8px}.ou-device-list-heading-row .ou-tree-heading{margin:0 0 12px}.ou-device-list-refresh-btn{background:none;border:none;color:#9fb4d7;font-size:.78rem;cursor:pointer;padding:4px 8px;margin-bottom:12px;border-radius:8px}.ou-device-list-refresh-btn:hover:not(:disabled){background:#ffffff0f;color:#e6eaf7}.ou-device-list-refresh-btn:disabled{opacity:.4;cursor:default}.ou-device-list-search{display:flex;flex-direction:column;gap:6px;margin-bottom:12px}.ou-device-list-search .text-input{padding:8px 12px;font-size:.85rem}.ou-tree-row{display:flex;align-items:center;gap:2px;border-radius:8px}.ou-tree-row.selected{background:#7c9cff2e}.ou-tree-toggle{background:none;border:none;color:#9fb4d7;width:18px;flex-shrink:0;cursor:pointer;font-size:.75rem;padding:4px 0}.ou-tree-toggle:disabled{visibility:hidden;cursor:default}.ou-tree-label{background:none;border:none;color:#d4dcf5;text-align:left;padding:6px;border-radius:8px;cursor:pointer;font-size:.88rem;flex:1;min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.ou-tree-label:hover{background:#ffffff0f}.ou-tree-row.selected .ou-tree-label{color:#fff;font-weight:600}@media (max-width: 1100px){.chromebook-devices-layout{grid-template-columns:1fr}.chromebook-pane{height:auto;max-height:320px}.chromebook-device-pane{max-height:none}}.gam-results-table-wrap{display:flex;flex-direction:column;gap:10px}.gam-results-actions{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.gam-results-count{color:#9fb4d7;font-size:.85rem;margin-left:auto}.gam-results-table-scroll{overflow:auto;max-height:360px;border:1px solid rgba(255,255,255,.08);border-radius:14px}.gam-results-table{width:100%;border-collapse:collapse;font-size:.85rem}.gam-results-table th,.gam-results-table td{padding:8px 12px;text-align:left;border-bottom:1px solid rgba(255,255,255,.06);white-space:nowrap}.gam-results-table th{position:sticky;top:0;background:#0d1221fa;color:#b7c4e8;font-size:.78rem;text-transform:uppercase;letter-spacing:.04em}.gam-results-table tr.selected{background:#6a7dff1a}.penalty-box-layout{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:24px;align-items:start;margin-top:16px}.penalty-box-column{display:flex;flex-direction:column;gap:14px}.penalty-box-search-result{width:100%;text-align:left;border:none;cursor:pointer;font:inherit}.penalty-box-search-result:hover{background:#ffffff14}.penalty-box-member-row{display:flex;flex-direction:column;align-items:stretch;gap:8px}.penalty-box-member-row-main{display:flex;align-items:center;gap:12px}.penalty-box-member-lines{display:flex;flex-direction:column;gap:2px;flex:1;min-width:0}.penalty-box-member-line-top{display:flex;align-items:baseline;gap:12px}.penalty-box-member-name{color:#f3f7ff;font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;flex:0 0 160px}.penalty-box-member-email{color:#9fb4d7;font-size:.88rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;flex:1;min-width:0}.penalty-box-member-line-bottom{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.penalty-box-member-actions{display:flex;gap:4px;flex:none}.expiry-fields{display:flex;flex-direction:column;gap:8px}.expiry-fields-row{display:flex;gap:8px}.expiry-fields-time{width:110px;flex:none}.expiry-fields-ampm{width:80px;flex:none}.gam-custom-command-layout{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);grid-template-rows:600px;gap:20px;align-items:stretch}.gam-custom-command-left{display:flex;flex-direction:column;gap:20px;min-height:0}.gam-custom-command-left .gam-log-section{flex:1;min-height:0}.gam-custom-command-left .gam-log-panel{flex:1;height:auto;min-height:0}.gam-assistant-panel{display:flex;flex-direction:column;gap:12px;background:#ffffff08;border:1px solid rgba(255,255,255,.08);border-radius:20px;padding:20px;height:100%;min-height:0;box-sizing:border-box}.gam-assistant-header h3{margin:0 0 6px}.gam-assistant-messages{flex:1;min-height:0;overflow-y:auto;display:flex;flex-direction:column;gap:12px;padding-right:4px}.gam-assistant-message{display:flex;flex-direction:column;gap:6px;max-width:90%}.gam-assistant-user{align-self:flex-end;align-items:flex-end}.gam-assistant-assistant{align-self:flex-start;align-items:flex-start}.gam-assistant-bubble{padding:10px 14px;border-radius:14px;white-space:pre-wrap;font-size:.88rem;line-height:1.5}.gam-assistant-user .gam-assistant-bubble{background:linear-gradient(135deg,#6a7dff59,#51e2d540);color:#f3f7ff;border-bottom-right-radius:4px}.gam-assistant-assistant .gam-assistant-bubble{background:#ffffff0d;color:#e6eaf7;border-bottom-left-radius:4px}.gam-assistant-insert-btn{font-family:Courier New,monospace;font-size:.78rem;text-align:left;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.gam-assistant-input-row{display:flex;gap:10px}.gam-assistant-input-row .text-input{flex:1}.gam-recommended-commands{border-bottom:1px solid rgba(255,255,255,.08);padding-bottom:16px}.gam-recommended-commands .help-toggle{margin-top:0}.gam-recommended-list{list-style:none;margin:12px 0 0;padding:0;display:flex;flex-direction:column;gap:10px;max-height:260px;overflow-y:auto}.gam-recommended-item{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 12px;border-radius:12px;background:#ffffff08}.gam-recommended-label{color:#f3f7ff;font-weight:600;font-size:.88rem}@media (max-width: 900px){.gam-custom-command-layout,.penalty-box-layout{grid-template-columns:1fr}}.rolodex-top-actions{display:flex;gap:10px}.rolodex-layout{display:grid;grid-template-columns:300px 1fr;gap:24px;align-items:start}.rolodex-sidebar{background:#ffffff0a;border:1px solid rgba(255,255,255,.08);border-radius:28px;padding:20px;height:720px;display:flex;flex-direction:column;gap:14px;box-sizing:border-box}.rolodex-sidebar-list{overflow-y:auto;display:flex;flex-direction:column;gap:16px;min-height:0;flex:1}.rolodex-company-group{display:flex;flex-direction:column;gap:4px}.rolodex-company-header{display:flex;align-items:center;gap:8px;padding:4px 0}.rolodex-company-logo{width:24px;height:24px;border-radius:8px;object-fit:contain;flex-shrink:0;background:#ffffff0f}.rolodex-company-logo-placeholder{display:flex;align-items:center;justify-content:center;font-size:.78rem;font-weight:700;color:#9fb4d7}.rolodex-company-name-col{display:flex;flex-direction:column;gap:1px;min-width:0}.rolodex-manage-name-col{display:flex;flex-direction:column;gap:1px;flex:1;min-width:0}.rolodex-company-name{font-weight:700;color:#e6eaf7;font-size:.95rem}.rolodex-website-link{color:#9cdcfe;font-size:.76rem;text-decoration:none;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:100%}.rolodex-website-link:hover{text-decoration:underline}.rolodex-input-with-btn{display:flex;align-items:center;gap:8px}.rolodex-contact-item{display:block;width:100%;text-align:left;background:none;border:none;color:#b7c4e8;font-size:.85rem;padding:6px 10px 6px 32px;border-radius:8px;cursor:pointer}.rolodex-contact-item:hover{background:#ffffff0f}.rolodex-contact-item.selected{background:#7c9cff2e;color:#fff;font-weight:600}.rolodex-detail{height:720px;overflow-y:auto;box-sizing:border-box;display:flex;flex-direction:column}.rolodex-detail-view{align-items:flex-start;gap:16px;margin-left:48px}.rolodex-detail-photo-row{display:flex;align-items:center;gap:16px}.rolodex-detail-photo{width:72px;height:72px;border-radius:50%;background:#ffffff0f;display:flex;align-items:center;justify-content:center;overflow:hidden;flex-shrink:0}.rolodex-detail-photo img{width:100%;height:100%;object-fit:cover}.rolodex-detail-photo-placeholder{font-size:1.6rem;font-weight:700;color:#9fb4d7}.rolodex-card-row{display:flex;flex-wrap:wrap;align-items:center;gap:14px;perspective:900px}.rolodex-card-stack{position:relative;width:460px;max-width:100%;min-width:0}.rolodex-business-card{position:relative;z-index:1;width:100%;height:380px;overflow-y:auto;background:#ffffff0d;border:2px solid rgba(255,255,255,.2);border-radius:18px;padding:28px;box-shadow:0 24px 48px #00000073;box-sizing:border-box;transform-origin:top center;animation:rolodexFlipIn .32s ease}@keyframes rolodexFlipIn{0%{transform:rotateX(-90deg);opacity:0}to{transform:rotateX(0);opacity:1}}.rolodex-card-nav{display:flex;flex-direction:column;align-items:center;gap:6px;flex-shrink:0;background:#ffffff0d;border:1px solid rgba(255,255,255,.15);border-radius:999px;padding:10px 6px}.rolodex-nav-btn{width:32px;height:32px;border-radius:50%;border:1px solid rgba(255,255,255,.2);background:#ffffff14;color:#cfe0ff;font-size:.9rem;line-height:1;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:background .15s ease}.rolodex-nav-btn:hover{background:#ffffff2e}.rolodex-nav-count{font-size:.7rem;color:#9fb4d7;white-space:nowrap}.rolodex-card-actions{width:100%;max-width:460px;justify-content:flex-start}.rolodex-card-header{display:flex;align-items:center;gap:20px}.rolodex-card-heading{display:flex;flex-direction:column;gap:2px;min-width:0}.rolodex-card-name{margin:0;font-size:1.3rem;color:#f3f7ff}.rolodex-card-title{margin:0;color:#b7c4e8;font-size:.92rem}.rolodex-card-company{margin:0;font-size:.88rem}.rolodex-card-company a{color:#9cdcfe;text-decoration:none}.rolodex-card-company a:hover{text-decoration:underline}.rolodex-card-divider{border:none;border-top:1px solid rgba(255,255,255,.1);margin:18px 0}.rolodex-card-fields{display:flex;flex-direction:column;gap:10px}.rolodex-card-field{display:flex;align-items:center;gap:10px;font-size:.92rem}.rolodex-card-field a{color:#e6eaf7;text-decoration:none}.rolodex-card-field a:hover{text-decoration:underline}.rolodex-card-field-icon{color:#9fb4d7;width:18px;text-align:center;flex-shrink:0}.rolodex-card-phone-label{color:#9fb4d7}.rolodex-card-note{color:#d4dcf5;white-space:pre-wrap;line-height:1.5;margin:0}.rolodex-upload-btn{display:inline-flex;align-items:center;justify-content:center;font-size:.85rem;padding:10px 18px}.rolodex-phone-row{display:flex;align-items:center;gap:8px}.rolodex-manage-add-row{display:flex;align-items:center;gap:12px;margin-bottom:20px}.rolodex-manage-list{max-height:50vh;overflow-y:auto}.rolodex-logo-picker{display:flex;align-items:center;gap:8px;flex-shrink:0}.rolodex-upload-btn-small{display:inline-flex;align-items:center;justify-content:center;font-size:.78rem;padding:6px 12px;white-space:nowrap}.projects-layout{display:grid;grid-template-columns:300px 1fr;gap:24px;align-items:stretch}.project-detail{height:auto;overflow-y:visible}.project-sidebar{height:auto}.project-list-item{display:flex;align-items:center;gap:10px;width:100%;text-align:left;background:none;border:none;color:#b7c4e8;font-size:.85rem;padding:8px 10px;border-radius:8px;cursor:pointer}.project-list-item:hover{background:#ffffff0f}.project-list-item.selected{background:#7c9cff2e;color:#fff;font-weight:600}.project-priority-dot{width:8px;height:8px;border-radius:50%;flex-shrink:0}.project-list-item-text{display:flex;flex-direction:column;gap:2px;min-width:0}.project-list-item-name{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.project-list-item-name.completed{color:#7f8fb8;text-decoration:line-through}.project-list-item-type{font-size:.72rem;color:#7f8fb8}.project-date-toggle{margin-top:0;text-align:left}.project-date-filters{display:flex;flex-direction:column;gap:6px}.project-date-label{font-size:.75rem;color:#9fb4d7}.project-date-range{display:grid;grid-template-columns:1fr 1fr;gap:6px}.project-date-range .text-input{padding:7px 8px;font-size:.8rem;min-width:0}.project-date-clear{align-self:flex-start;padding:6px 12px;font-size:.8rem}.project-chip-row{display:flex;flex-wrap:wrap;gap:8px}.project-chip{display:inline-flex;align-items:center;gap:6px;background:#ffffff14;border:1px solid rgba(255,255,255,.15);border-radius:999px;padding:4px 6px 4px 12px;font-size:.82rem;color:#e6eaf7}.project-chip .icon-btn{width:20px;height:20px;font-size:.85rem}.project-chip-readonly{padding:4px 14px}.project-detail-view{gap:22px}.project-detail-heading{display:flex;flex-direction:column;gap:10px;min-width:0}.project-detail-heading h3{margin:0}.project-badge-row{display:flex;flex-wrap:wrap;gap:8px}.project-priority-badge,.project-status-badge,.project-type-badge{display:inline-flex;align-items:center;padding:4px 12px;border-radius:999px;font-size:.78rem;font-weight:600}.project-status-badge{background:#6a7dff33;color:#cfd8ff;border:none;font:inherit;cursor:pointer}.project-status-badge:hover{background:#6a7dff52}.project-status-badge.completed{background:#ffffff1a;color:#9fb4d7}.project-status-badge.completed:hover{background:#ffffff2e}.project-type-badge{background:#ffffff14;color:#b7c4e8;font-weight:500}.project-description{margin:0;color:#d4dcf5;white-space:pre-wrap;overflow-wrap:break-word;line-height:1.5}.project-people-row{display:flex;flex-wrap:wrap;gap:28px}.project-people-group{display:flex;flex-direction:column;gap:8px}.project-ticket-links{display:flex;flex-wrap:wrap;gap:10px}.project-ticket-link{display:inline-flex;align-items:center;gap:6px;max-width:100%;background:#ffffff0d;border:1px solid rgba(255,255,255,.12);border-radius:10px;padding:6px 14px;font-size:.85rem;color:#9cdcfe;text-decoration:none;overflow-wrap:break-word}.project-ticket-link:hover{background:#ffffff1a}.project-detail-columns{display:grid;grid-template-columns:1fr 340px;gap:32px;align-items:start}.project-detail-main{display:flex;flex-direction:column;gap:22px;min-width:0}.project-detail-timeline-col{min-width:0}.project-detail-timeline-col h4{margin:0 0 14px;font-size:.95rem;color:#e6eaf7}.project-timeline-header{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:14px}.project-timeline-header h4{margin:0}.project-detail-actions,.project-detail-section{border-top:1px solid rgba(255,255,255,.08);padding-top:18px}.project-detail-section h4{margin:0 0 12px;font-size:.95rem;color:#e6eaf7}.project-task-list{list-style:none;margin:6px 0 14px;padding:0;display:flex;flex-direction:column;gap:14px}.project-task-item{display:flex;flex-direction:column;gap:4px}.project-task-row{display:flex;align-items:center;gap:10px}.project-task-label{display:flex;align-items:center;gap:10px;flex:1;min-width:0;cursor:pointer}.project-task-label input[type=checkbox]{width:16px;height:16px;flex-shrink:0;accent-color:#6a7dff}.project-task-text{font-size:.9rem;color:#e6eaf7;word-break:break-word}.project-task-text.done{color:#7f8fb8;text-decoration:line-through}.project-task-completed-meta{margin:0 0 0 26px;font-size:.75rem;color:#7f8fb8}.project-subtask-block{margin-left:26px;padding-left:14px;border-left:2px solid rgba(255,255,255,.08);display:flex;flex-direction:column;gap:6px}.project-subtask-progress{margin:0}.project-subtask-collapse-toggle{display:block;background:none;border:none;font:inherit;text-align:left;cursor:pointer;padding:0}.project-subtask-collapse-toggle:hover{color:#cfd8ff}.project-subtask-toggle{align-self:flex-start;background:none;border:none;color:#86a2ff;cursor:pointer;font:inherit;font-size:.8rem;padding:0}.project-subtask-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:6px}.project-subtask-item{display:flex;flex-direction:column;gap:2px}.project-subtask-item .project-task-text{font-size:.85rem}.project-attachment-name{display:inline-flex;align-items:center;gap:8px;background:none;border:none;color:#e6eaf7;font-size:inherit;cursor:pointer;padding:0;text-align:left}.project-attachment-name:hover{text-decoration:underline}.project-attachment-row{display:flex;align-items:center;gap:10px}.project-attachment-card,.project-attachment-name{flex:1;min-width:0}.project-attachment-filename{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.project-attachment-date,.project-attachment-card .secondary-btn{flex:none}.project-attachment-delete{flex:none;width:40px;height:40px;display:grid;place-items:center;padding:0;border:1px solid rgba(255,255,255,.08);border-radius:10px;background:#ffffff0a;color:#aab4cc;cursor:pointer}.project-attachment-delete:hover,.project-attachment-delete:focus-visible{color:#ff8a8a;border-color:#ff6b6b73;background:#ff6b6b1f}.project-timeline{list-style:none;margin:0;padding:0 0 0 4px}.project-timeline-item{position:relative;padding:0 0 22px 26px}.project-timeline-item:before{content:"";position:absolute;left:5px;top:16px;bottom:0;width:2px;background:#ffffff1f}.project-timeline-item:last-child:before{display:none}.project-timeline-item:last-child{padding-bottom:0}.project-timeline-dot{position:absolute;left:0;top:4px;width:12px;height:12px;border-radius:50%;background:#6a7dff;box-shadow:0 0 0 3px #6a7dff40}.project-timeline-meta{display:flex;align-items:center;gap:10px;font-size:.78rem;color:#9fb4d7;margin-bottom:4px}.project-timeline-author{font-weight:600;color:#cfd8ff}.project-timeline-meta .icon-btn{margin-left:auto;width:22px;height:22px;font-size:.85rem}.project-timeline-text{margin:0;white-space:pre-wrap;overflow-wrap:break-word;color:#d4dcf5;font-size:.9rem}.project-edit-scroll{overflow-y:auto;max-height:60vh;padding-right:4px}.project-fields-grid{display:grid;grid-template-columns:1fr 1fr;gap:4px 24px}.project-fields-grid .gam-field{max-width:none;grid-column:1 / -1}.project-fields-grid .gam-field-half{grid-column:span 1}.project-vendor-picker{position:relative}.project-vendor-dropdown{position:absolute;top:calc(100% + 4px);left:0;right:0;z-index:5;list-style:none;margin:0;padding:6px;background:#0d1424;border:1px solid rgba(255,255,255,.12);border-radius:12px;max-height:220px;overflow-y:auto;box-shadow:0 20px 40px #00000059}.project-vendor-dropdown button{display:flex;align-items:center;gap:10px;width:100%;text-align:left;background:none;border:none;color:#e6eaf7;font:inherit;font-size:.85rem;padding:8px 10px;border-radius:8px;cursor:pointer}.project-vendor-dropdown button:hover{background:#ffffff14}.project-vendor-list{display:flex;flex-direction:column;gap:8px}.project-vendor-item{padding:0}.project-preview-card{width:min(820px,100%)}.project-preview-body{display:flex;justify-content:center}.project-preview-image{max-width:100%;max-height:70vh;border-radius:8px}.project-preview-frame{width:100%;height:70vh;border:none;border-radius:8px;background:#fff}.onboarding-hire-item{box-sizing:border-box;border:2px solid transparent}.onboarding-hire-name{font-weight:600}.onboarding-hire-item-complete .onboarding-hire-name{font-style:italic}.onboarding-progress-bar{height:8px;border-radius:999px;background:#ffffff14;overflow:hidden}.onboarding-progress-bar-fill{height:100%;background:linear-gradient(135deg,#6a7dff,#51e2d5);transition:width .2s ease}.onboarding-checklist{display:flex;flex-direction:column;gap:14px}.onboarding-checklist-row{display:flex;flex-direction:column;gap:4px}.onboarding-nested-item{margin-left:26px;display:flex;flex-direction:column;gap:10px}.onboarding-checklist-divider{border:none;border-top:1px solid rgba(255,255,255,.12);margin:4px 0}.onboarding-static-link{display:inline-flex;align-items:center;gap:6px;font-size:.82rem;color:#9cdcfe;text-decoration:none;white-space:nowrap;background:none;border:none;font-family:inherit;cursor:pointer;padding:0}.onboarding-static-link:hover{text-decoration:underline}.onboarding-static-link:disabled{color:#5c6a86;cursor:not-allowed;text-decoration:none}.onboarding-device-labels{display:flex;flex-wrap:wrap;align-items:center;gap:14px;margin-top:4px}.onboarding-static-link-group-label{font-size:.82rem;color:#9fb4d7}.onboarding-yesno-toggle{display:flex;gap:8px}.onboarding-yesno-toggle .secondary-btn,.onboarding-toggle-active{padding:6px 16px;font-size:.85rem}.onboarding-toggle-active{background:linear-gradient(135deg,#6a7dff,#51e2d5);color:#07101f;font-weight:700}.location-picker-grid{display:flex;flex-wrap:wrap;gap:8px}.onboarding-claim-row{display:flex;align-items:center;gap:12px;flex-shrink:0}.onboarding-hire-info{display:flex;flex-wrap:wrap;gap:4px 20px}.onboarding-status-row{display:flex;align-items:center;gap:10px;margin-bottom:16px}.onboarding-status-select{width:auto;font-weight:600;border-width:2px}.onboarding-status-complete{display:inline-block;cursor:default}.onboarding-status-dot{width:9px;height:9px;border-radius:50%;flex-shrink:0}@media (max-width: 900px){.rolodex-layout,.projects-layout{grid-template-columns:1fr}.rolodex-sidebar,.rolodex-detail{height:auto;max-height:480px;margin-bottom:16px}.project-detail-columns,.project-fields-grid{grid-template-columns:1fr}.project-fields-grid .gam-field-half{grid-column:1 / -1}.chromebook-devices-layout,.penalty-box-layout{grid-template-columns:1fr}.gam-custom-command-layout{grid-template-columns:1fr;grid-template-rows:auto}}@media (max-width: 720px){.topbar{padding:22px}.topbar-row{flex-direction:column}.user-block{width:100%;justify-content:flex-start;flex-wrap:wrap;margin-top:16px}.rolodex-card-row{flex-direction:column}.rolodex-card-stack{width:100%}.rolodex-card-nav{flex-direction:row;width:100%;justify-content:center}}.vault-narrow{max-width:560px}.vault-toolbar{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:12px}.vault-session{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.vault-password-input{display:flex;gap:8px;align-items:center}.vault-password-input .text-input{flex:1;min-width:0}.vault-list{list-style:none;margin:0;padding:0;display:grid;gap:12px}.vault-entry{display:flex;justify-content:space-between;align-items:flex-start;gap:16px;padding:16px 18px;border-radius:18px;background:#ffffff08;border:1px solid rgba(255,255,255,.08)}.vault-entry-main{display:grid;gap:4px;min-width:0}.vault-entry-line{overflow-wrap:anywhere}.vault-entry-line a{color:#9fb4ff}.vault-entry-notes{margin:4px 0;white-space:pre-wrap;color:#cfd8ff}.vault-entry-actions{display:flex;flex-wrap:wrap;gap:8px;justify-content:flex-end}@media (max-width: 700px){.vault-entry{flex-direction:column}.vault-entry-actions{justify-content:flex-start}}.mfa-panel{max-width:460px}.mfa-qr{display:block;margin:8px auto;border-radius:12px;background:#fff}.mfa-secret{text-align:center;letter-spacing:.05em;overflow-wrap:anywhere}.mfa-code-input{text-align:center;letter-spacing:.2em}.mfa-check{display:flex;align-items:center;gap:8px;justify-content:center;margin:8px 0}.mfa-backup-codes{list-style:none;padding:16px;margin:12px 0;display:grid;grid-template-columns:1fr 1fr;gap:8px;border-radius:14px;background:#ffffff0d;text-align:center}.vault-entry-collapsible{display:block;padding:0}.vault-entry-header{display:flex;align-items:center;gap:10px;width:100%;padding:14px 18px;background:none;border:none;color:inherit;text-align:left;cursor:pointer;border-radius:18px}.vault-entry-header:hover{background:#ffffff0a}.vault-chevron{width:1em;color:#9fb4ff}.vault-entry-body{display:grid;gap:10px;padding:0 18px 16px 46px}.vault-field-row{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.vault-field-label{min-width:80px}.vault-field-value{overflow-wrap:anywhere}.vault-field-value a{color:#9fb4ff}.vault-copy-btn{padding:4px 12px;font-size:.85rem}.vault-entry-footer{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap}.vault-modal{position:relative;width:min(480px,100%);overflow-y:auto}.vault-modal .calendar-panel{background:none;border:none;box-shadow:none;padding:0;max-width:none}.vault-modal-close{position:absolute;top:14px;right:14px;width:34px;height:34px;background:#ffffff0f;color:#cfd8ff}.vault-idle-warning{color:#ffcf7a;font-weight:600}.vault-entry-header-user{color:#9aa6c7;font-weight:400;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;min-width:0}.termination-badge{display:inline-flex;align-items:center;padding:3px 10px;border-radius:999px;font-size:.72rem;font-weight:700;letter-spacing:.04em;text-transform:uppercase;background:#ff5d6c29;color:#ff8a96;border:1px solid rgba(255,93,108,.45);vertical-align:middle;margin-right:6px}.hire-badge.kind-badge-sm,.termination-badge.kind-badge-sm{padding:1px 7px;font-size:.65rem;margin-right:2px}.termination-item{box-shadow:inset 4px 0 #ff5d6c;background:#ff5d6c0d}.hire-badge{display:inline-flex;align-items:center;padding:3px 10px;border-radius:999px;font-size:.72rem;font-weight:700;letter-spacing:.04em;text-transform:uppercase;background:#51e2d524;color:#7eeee3;border:1px solid rgba(81,226,213,.45);vertical-align:middle;margin-right:6px}.termination-detail.project-detail-view{padding:20px 24px}.termination-detail{border-top:3px solid rgba(255,93,108,.6);background:linear-gradient(180deg,rgba(255,93,108,.05),transparent 160px);border-radius:20px}.termination-progress-fill{background:linear-gradient(135deg,#ff8a96,#c0273a)}.termination-warning{margin:6px 0 0;color:#ffcf7a;font-size:.85rem}.onboarding-filter{display:flex;gap:4px;padding:4px;border-radius:999px;background:#ffffff0d;margin-bottom:10px}.onboarding-filter-btn{flex:1;border:none;border-radius:999px;padding:6px 10px;background:transparent;color:#b7c4e8;font-size:.85rem;cursor:pointer}.onboarding-filter-btn.active{background:#6a7dff47;color:#fff}.update-badge{display:inline-flex;align-items:center;padding:3px 10px;border-radius:999px;font-size:.72rem;font-weight:700;letter-spacing:.04em;text-transform:uppercase;background:#b18cff29;color:#c9b0ff;border:1px solid rgba(177,140,255,.5);vertical-align:middle;margin-right:6px}.update-badge.kind-badge-sm{padding:1px 7px;font-size:.65rem;margin-right:2px}.update-btn{border:none;border-radius:999px;cursor:pointer;background:linear-gradient(135deg,#b18cff,#7a4fd6);color:#fff;font-weight:700;padding:14px 26px;box-shadow:0 18px 35px #7a4fd647}.update-btn:disabled{opacity:.6;cursor:not-allowed}.staff-update-item{box-shadow:inset 4px 0 #b18cff;background:#b18cff0d}.staff-update-detail{border-top:3px solid rgba(177,140,255,.6);background:linear-gradient(180deg,rgba(177,140,255,.05),transparent 160px);border-radius:20px}.staff-update-detail.project-detail-view{padding:20px 24px}.staff-update-progress-fill{background:linear-gradient(135deg,#c9b0ff,#7a4fd6)}.staff-update-change-picker{display:flex;flex-wrap:wrap;gap:8px}.staff-update-change-option{padding:8px 14px;border-radius:999px;border:1px solid rgba(255,255,255,.12);cursor:pointer}.staff-update-change-option.active{border-color:#b18cffb3;background:#b18cff24}.staff-update-section{display:grid;gap:4px}.staff-update-section+.staff-update-section{margin-top:10px}.staff-update-section-title{margin:0 0 2px;font-size:.78rem;font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:#c9b0ff}.onboarding-filter-btn.filter-terminations.active{background:#ff5d6c4d}.onboarding-filter-btn.filter-updates.active{background:#b18cff4d}.onboarding-filter-btn.filter-hires.active{background:#51e2d540}.user-mgmt{display:grid;gap:24px}.user-row-btn{width:100%;background:none;border:1px solid transparent;border-radius:12px;color:inherit;text-align:left;cursor:pointer;flex-wrap:wrap}.user-row-btn:hover{background:#ffffff0a}.user-row-btn.selected{border-color:#6a7dff99;background:#6a7dff1a}.user-disabled .admin-user-name{opacity:.6}.user-disabled-tag,.admin-staff-tag{margin-left:8px;padding:1px 8px;border-radius:999px;font-size:.7rem;font-weight:700;text-transform:uppercase;letter-spacing:.04em}.user-disabled-tag{background:#ff5d6c29;color:#ff8a96}.admin-staff-tag{margin-left:auto;background:#5cd68a24;color:#7fe3a5}.user-access-summary{flex-basis:100%}.user-editor{border:1px solid rgba(106,125,255,.35)}.perm-heading{margin:0 0 4px;font-weight:700}.perm-tree{display:grid;gap:2px;padding:12px 16px;border-radius:14px;background:#ffffff08}.perm-row{display:flex;align-items:center;gap:10px;padding:5px 0;cursor:pointer}.perm-row-top{font-weight:600;margin-top:6px}.access-audit-list{list-style:none;margin:0;padding:0;display:grid;gap:8px}.access-audit-added{color:#7fe3a5}.access-audit-removed{color:#ff8a96}.idle-warning-card{width:min(420px,100%);text-align:center}.idle-warning-card .gam-action-row{justify-content:center}.kb-layout{display:grid;grid-template-columns:minmax(240px,320px) 1fr;gap:20px;align-items:start}@media (max-width: 900px){.kb-layout{grid-template-columns:1fr}}.kb-sidebar{position:sticky;top:16px;max-height:calc(100vh - 32px);overflow-y:auto;padding:16px;display:grid;gap:12px;align-content:start}.kb-main{min-width:0;display:grid;gap:14px;align-content:start}.kb-tree{display:grid;gap:1px}.kb-tree-row{display:flex;align-items:center;gap:2px;border-radius:8px;border:1px solid transparent;min-height:30px}.kb-tree-row:hover{background:#ffffff0d}.kb-tree-row.selected{background:#6a7dff2e}.kb-tree-row.kb-drop-inside{border-color:#6a7dff;background:#6a7dff1f}.kb-tree-row.kb-drop-before{box-shadow:inset 0 2px #6a7dff}.kb-tree-row.kb-drop-after{box-shadow:inset 0 -2px #6a7dff}.kb-tree-chevron,.kb-tree-label,.kb-tree-actions button{background:none;border:none;color:inherit;cursor:pointer;font:inherit}.kb-tree-chevron{width:20px;color:#9fb4ff;padding:0}.kb-tree-label{flex:1;min-width:0;text-align:left;padding:4px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.kb-tree-actions{display:none;gap:2px}.kb-tree-row:hover .kb-tree-actions,.kb-tree-row.selected .kb-tree-actions{display:flex}.kb-tree-actions button{padding:2px 5px;border-radius:6px;color:#b7c4e8}.kb-tree-actions button:hover{background:#ffffff1a}.kb-tree-root-drop{margin-top:8px;padding:10px;border:1px dashed rgba(255,255,255,.2);border-radius:10px;text-align:center;font-size:.8rem;color:#9aa6c7}.kb-tree-root-drop.active{border-color:#6a7dff;color:#fff}.kb-results{list-style:none;margin:0;padding:0;display:grid;gap:6px}.kb-results a{display:grid;gap:2px;padding:8px 10px;border-radius:10px;color:inherit;text-decoration:none}.kb-results a:hover{background:#ffffff0d}.kb-snippet{font-size:.82rem;color:#9aa6c7}.kb-snippet mark,.kb-content mark{background:#f5c26b59;color:inherit;border-radius:3px}.kb-breadcrumbs{font-size:.85rem;color:#9aa6c7}.kb-breadcrumbs a,.kb-child-list a,.kb-files a,.kb-content a{color:#9fb4ff}.kb-page-actions{display:flex;gap:8px;flex-wrap:wrap}.kb-title-input{font-size:1.4rem;font-weight:700}.kb-section-label{margin:8px 0 4px;font-size:.75rem;font-weight:700;letter-spacing:.05em;text-transform:uppercase;color:#9aa6c7}.kb-child-list,.kb-files ul{list-style:none;margin:0;padding:0;display:grid;gap:6px}.kb-file-remove{margin-left:6px;background:none;border:none;color:#ff8a96;cursor:pointer}.kb-content{line-height:1.6;overflow-wrap:anywhere}.kb-content h1{font-size:1.6rem;margin:1.2em 0 .4em}.kb-content h2{font-size:1.3rem;margin:1.1em 0 .4em}.kb-content h3{font-size:1.1rem;margin:1em 0 .3em}.kb-content>:first-child{margin-top:0}.kb-content img{max-width:100%;height:auto;border-radius:8px}.kb-content table{border-collapse:collapse;width:100%;margin:.8em 0;display:block;overflow-x:auto}.kb-content th,.kb-content td{border:1px solid rgba(255,255,255,.15);padding:6px 10px;vertical-align:top;min-width:60px}.kb-content th{background:#ffffff0f;text-align:left}.kb-content code{background:#ffffff14;border-radius:5px;padding:1px 5px;font-family:ui-monospace,SFMono-Regular,Consolas,monospace;font-size:.9em}.kb-content pre{background:#050913;border:1px solid rgba(255,255,255,.08);border-radius:10px;padding:12px 14px;overflow-x:auto}.kb-content pre code{background:none;padding:0}.kb-content blockquote{margin:.8em 0;padding:4px 14px;border-left:3px solid #6a7dff;color:#cfd8ff}.kb-content hr{border:none;border-top:1px solid rgba(255,255,255,.12);margin:1.4em 0}.kb-content ul[data-type=taskList]{list-style:none;padding-left:4px}.kb-content ul[data-type=taskList] li{display:flex;gap:8px;align-items:flex-start}.kb-content ul[data-type=taskList] li>label{flex:0 0 auto;margin-top:3px}.kb-content ul[data-type=taskList] li>div{flex:1}.kb-content ul[data-type=taskList] li[data-checked=true]>div{text-decoration:line-through;opacity:.65}.kb-editor{border:1px solid rgba(255,255,255,.12);border-radius:14px;overflow:hidden}.kb-toolbar{display:flex;flex-wrap:wrap;gap:2px;padding:6px;background:#ffffff0a;border-bottom:1px solid rgba(255,255,255,.08);position:sticky;top:0;z-index:2}.kb-tool{background:none;border:1px solid transparent;color:#cfd8ff;border-radius:7px;padding:5px 8px;font-size:.85rem;cursor:pointer;min-width:30px}.kb-tool:hover:not(:disabled){background:#ffffff14}.kb-tool.active{background:#6a7dff47;border-color:#6a7dff80;color:#fff}.kb-tool:disabled{opacity:.4;cursor:default}.kb-tool-sep{width:1px;margin:4px;background:#ffffff1f}.kb-editor-content .tiptap{min-height:360px;padding:16px 18px;outline:none}.kb-editor-content .tiptap p.is-editor-empty:first-child:before{content:attr(data-placeholder);color:#6f7a99;float:left;height:0;pointer-events:none}.kb-editor-content .tiptap td,.kb-editor-content .tiptap th{position:relative}.kb-editor-content .tiptap .selectedCell:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:#6a7dff33;pointer-events:none}.kb-editor-content .tiptap img.ProseMirror-selectednode{outline:2px solid #6a7dff}.kb-picker{width:min(520px,100%)}.kb-picker-list{list-style:none;margin:10px 0;padding:0;max-height:50vh;overflow-y:auto}.kb-picker-list button{width:100%;text-align:left;background:none;border:none;color:inherit;padding:8px 10px;border-radius:8px;cursor:pointer;font:inherit}.kb-picker-list button:hover{background:#ffffff0f}.kb-history{width:min(1100px,100%);max-height:88vh}.kb-history-body{display:grid;grid-template-columns:220px 1fr;gap:16px;min-height:0;overflow:hidden;margin-top:12px}.kb-history-list{list-style:none;margin:0;padding:0;overflow-y:auto;max-height:70vh}.kb-history-list button{width:100%;text-align:left;background:none;border:1px solid transparent;border-radius:8px;color:inherit;padding:8px;cursor:pointer;font:inherit;font-size:.85rem}.kb-history-list button.active{border-color:#6a7dff99;background:#6a7dff1f}.kb-history-preview{overflow-y:auto;max-height:70vh;padding-right:6px}.hire-never-started-row{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.hire-cancelled-banner{display:flex;justify-content:space-between;align-items:flex-start;gap:12px;flex-wrap:wrap;padding:12px 16px;border-radius:14px;border:1px solid rgba(138,147,173,.45);background:#8a93ad1a}.hire-already-done{margin:0;padding-left:20px;color:#cfd8ff;font-size:.9rem}.hire-dialog{width:min(640px,100%);overflow-y:auto}.view-toggle{display:inline-flex;padding:3px;border-radius:999px;background:#ffffff0f}.view-toggle button{border:none;background:transparent;color:#b7c4e8;border-radius:999px;padding:8px 14px;cursor:pointer;font:inherit;font-size:.85rem}.view-toggle button.active{background:#6a7dff4d;color:#fff}.onboarding-sheet{display:grid;gap:12px}.sheet-tabs{margin:0}.sheet-count{margin-left:8px;padding:0 7px;border-radius:999px;font-size:.75rem;background:#ffffff1a}.sheet-tab-hires.active{box-shadow:inset 0 -2px #51e2d5}.sheet-tab-updates.active{box-shadow:inset 0 -2px #b18cff}.sheet-tab-terminations.active{box-shadow:inset 0 -2px #ff5d6c}.data-grid{display:grid;gap:10px;min-width:0}.data-grid-toolbar{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.data-grid-search{max-width:320px}.data-grid-scroll{overflow:auto;max-height:72vh;border:1px solid rgba(255,255,255,.08);border-radius:16px;background:#ffffff05}.data-grid-table{border-collapse:separate;border-spacing:0;width:100%;font-size:.88rem}.data-grid-table thead th{position:sticky;z-index:1;background:#0d1424;text-align:left;font-weight:600;white-space:nowrap;border-bottom:1px solid rgba(255,255,255,.1)}.data-grid-table thead tr:first-child th{top:0;padding:0}.data-grid-table thead tr.data-grid-filter-row th{top:38px;padding:4px 6px 6px}.data-grid-sort{width:100%;display:flex;align-items:center;justify-content:space-between;gap:8px;padding:10px;background:none;border:none;color:inherit;font:inherit;cursor:pointer;text-align:left}.data-grid-sort:hover{background:#ffffff0d}.data-grid-sort-icon{font-size:.7rem;color:#6f7a99}th[aria-sort=ascending] .data-grid-sort-icon,th[aria-sort=descending] .data-grid-sort-icon{color:#9fb4ff}.data-grid-filter{width:100%;box-sizing:border-box;min-width:70px;padding:5px 8px;border-radius:7px;border:1px solid rgba(255,255,255,.1);background:#ffffff0a;color:inherit;font:inherit;font-size:.8rem;font-weight:400}.data-grid-table td{padding:8px 10px;border-bottom:1px solid rgba(255,255,255,.05);white-space:nowrap;max-width:320px;overflow:hidden;text-overflow:ellipsis}.data-grid-table tbody tr:nth-child(2n) td{background:#ffffff04}.data-grid-clickable{cursor:pointer}.data-grid-clickable:hover td,.data-grid-clickable:focus td{background:#6a7dff1a;outline:none}.data-grid-empty{text-align:center;color:#9aa6c7;padding:24px!important}.data-grid-table a{color:#9fb4ff}.sheet-row-closed td{color:#8a93ad}.sheet-status{display:inline-block;padding:1px 8px;border:1px solid;border-radius:999px;font-size:.78rem;font-weight:600}.sheet-progress{display:inline-flex;align-items:center;gap:8px}.sheet-progress-bar{width:60px;height:6px;border-radius:999px;background:#ffffff1a;overflow:hidden}.sheet-progress-bar span{display:block;height:100%;background:linear-gradient(135deg,#6a7dff,#51e2d5)}.kb-import{width:min(760px,100%);max-height:88vh}.kb-import-body{overflow-y:auto;display:grid;gap:14px;margin-top:12px;padding-right:4px}.kb-import-step{display:grid;gap:10px}.kb-import-account{display:flex;justify-content:space-between;align-items:center;gap:10px}.kb-import-source{display:flex;gap:10px;align-items:flex-end;flex-wrap:wrap}.kb-import-notebooks{list-style:none;margin:0;padding:10px 14px;border-radius:12px;background:#ffffff08;display:grid;gap:6px}.kb-device-code{padding:14px 16px;border-radius:14px;background:#6a7dff1a;border:1px solid rgba(106,125,255,.35)}.kb-device-code-value{font-size:2rem;font-weight:700;letter-spacing:.15em;margin:6px 0}.kb-device-code a,.kb-import-report a,.kb-import-recent a{color:#9fb4ff}.kb-import-report{display:grid;gap:8px}.kb-import-report summary{cursor:pointer}.kb-import-report ul,.kb-import-recent ul{margin:6px 0 0;padding-left:20px;font-size:.88rem}.kb-import-log pre{max-height:240px;overflow:auto;background:#050913;border-radius:10px;padding:10px;font-size:.78rem;white-space:pre-wrap}.kb-import-recent{display:grid;gap:6px;padding:10px 14px;border-radius:12px;background:#ffffff08}.kb-import-recent li{display:flex;justify-content:space-between;align-items:center;gap:10px;padding:4px 0;list-style:none}.kb-import-recent ul{padding-left:0}.kb-small-btn{padding:6px 12px;font-size:.82rem}.kb-import-listing-head{display:flex;justify-content:space-between;align-items:center;gap:10px}.kb-import-advanced summary{cursor:pointer}.error-boundary{border-color:#ff5d6c73;margin:12px 0}.error-boundary-message{white-space:pre-wrap;background:#050913;border-radius:10px;padding:10px 12px;font-size:.82rem;color:#ffb3bb;max-height:200px;overflow:auto}.kb-sidebar>*,.kb-tree,.kb-tree>div,.kb-tree-row{min-width:0}.kb-tree{grid-template-columns:minmax(0,1fr)}.kb-sidebar{overflow-x:hidden}.kb-tree-actions{flex:0 0 auto}.image-library{width:min(820px,100%);max-height:86vh;overflow-y:auto}.image-library-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(84px,1fr));gap:10px}.image-library-item{aspect-ratio:1;padding:8px;border-radius:14px;border:1px solid rgba(255,255,255,.1);background:#ffffff0a;cursor:pointer;display:flex;align-items:center;justify-content:center}.image-library-item:hover,.image-library-item:focus{border-color:#6a7dff;background:#6a7dff1f;outline:none}.image-library-item img{max-width:100%;max-height:100%;object-fit:contain;border-radius:8px}.notes-box{display:grid;gap:2px}.notes-box-status{margin:0;min-height:1.2em;font-size:.8rem}.onboarding-checklist-col{min-width:0}.onboarding-detail-columns{margin-top:4px}.archive-banner{margin:0;padding:10px 14px;border-radius:12px;background:#f5c26b1a;border:1px solid rgba(245,194,107,.35);color:#f5d9a8;font-size:.9rem}.demo-switch{display:inline-flex;align-items:center;gap:8px;cursor:pointer;-webkit-user-select:none;user-select:none;font-size:.85rem;color:#cfd8ff}.demo-switch input{position:absolute;opacity:0;width:1px;height:1px}.demo-switch-track{position:relative;width:38px;height:22px;border-radius:999px;background:#ffffff26;transition:background .15s ease}.demo-switch-thumb{position:absolute;top:3px;left:3px;width:16px;height:16px;border-radius:50%;background:#fff;transition:transform .15s ease}.demo-switch.on .demo-switch-track{background:#f5a623}.demo-switch.on .demo-switch-thumb{transform:translate(16px)}.demo-switch.on .demo-switch-label{color:#ffd38a;font-weight:700}.demo-switch input:focus-visible+.demo-switch-track{outline:2px solid #6a7dff;outline-offset:2px}.demo-banner{margin:0 0 14px;padding:10px 16px;border-radius:14px;background:#f5a62324;border:1px solid rgba(245,166,35,.5);color:#ffe2b0;font-size:.9rem}.gam-status-line{display:flex;align-items:center;gap:8px;margin:10px 0 0;padding:8px 12px;border-radius:8px;font-size:.9rem;background:#9cdcfe14;border:1px solid rgba(156,220,254,.25)}.gam-status-line.running{color:#9cdcfe}.gam-status-line.ok{border-color:#4caf5073;background:#4caf501a}.gam-status-line.warning{border-color:#ffc10773;background:#ffc1071a}.gam-status-line.error{border-color:#f4433680;background:#f443361a}.gam-status-elapsed{margin-left:auto;font-variant-numeric:tabular-nums;opacity:.8}.status-root{--st-ok: #3fb950;--st-warning: #e3b341;--st-critical: #f85149;--st-unknown: #8b949e}.status-root .small{padding:6px 14px;font-size:.85rem}.status-muted{color:#8b96b5;font-size:.85rem}.status-board{display:flex;flex-direction:column;gap:16px}.status-root:fullscreen{background:#050a17;overflow:auto;padding:20px}.status-board-bar{display:flex;flex-wrap:wrap;align-items:center;gap:10px}.status-board-select{width:auto;min-width:200px}.status-bar-spacer{flex:1}.status-sections{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:16px}.status-section{grid-column:span 6;background:#ffffff08;border:1px solid rgba(255,255,255,.07);border-radius:18px;padding:16px 18px;min-width:0}.status-section.half{grid-column:span 3}.status-section.third{grid-column:span 2}@media (max-width: 900px){.status-section.half,.status-section.third{grid-column:span 6}}.status-section-title{margin:0 0 12px;font-size:1.05rem}.status-summary{display:flex;flex-wrap:wrap;gap:12px}.status-summary-cell{flex:1 1 120px;border-radius:14px;padding:12px 16px;display:flex;flex-direction:column;background:#ffffff0a;border-left:5px solid var(--st-unknown)}.status-summary-cell strong{font-size:1.9rem;line-height:1.1}.status-summary-cell span{color:#8b96b5;font-size:.85rem}.status-summary-cell.ok{border-left-color:var(--st-ok)}.status-summary-cell.warning{border-left-color:var(--st-warning)}.status-summary-cell.critical{border-left-color:var(--st-critical)}.status-summary-cell.critical strong{color:var(--st-critical)}.status-summary-cell.handled{border-left-color:#6a7dff}.status-summary-alert{flex-basis:100%;color:#ffcf7a;font-size:.9rem}.status-all-clear{color:var(--st-ok);margin:0}.status-pill{display:inline-block;padding:2px 10px;border-radius:999px;font-size:.75rem;font-weight:700;color:#07101f;background:var(--st-unknown);white-space:nowrap}.status-pill.ok{background:var(--st-ok)}.status-pill.warning{background:var(--st-warning)}.status-pill.critical{background:var(--st-critical);color:#fff}.status-dot{display:inline-block;width:10px;height:10px;border-radius:50%;background:var(--st-unknown);flex-shrink:0}.status-dot.ok{background:var(--st-ok)}.status-dot.warning{background:var(--st-warning)}.status-dot.critical{background:var(--st-critical)}.status-problems{width:100%;border-collapse:collapse;font-size:.9rem}.status-problems th{text-align:left;color:#8b96b5;font-weight:600;padding:6px 10px;border-bottom:1px solid rgba(255,255,255,.08)}.status-problems td{padding:8px 10px;border-bottom:1px solid rgba(255,255,255,.05);vertical-align:top}.status-problems tbody tr{cursor:pointer}.status-problems tbody tr:hover{background:#ffffff0a}.status-problems tr.critical td:first-child{box-shadow:inset 4px 0 0 var(--st-critical)}.status-problems tr.warning td:first-child{box-shadow:inset 4px 0 0 var(--st-warning)}.status-problems tr.handled{opacity:.55}.status-group{margin-bottom:14px}.status-group-title{display:flex;align-items:center;gap:8px;margin:4px 0 8px;font-size:.95rem}.status-tiles{display:grid;grid-template-columns:repeat(auto-fill,minmax(170px,1fr));gap:8px}.status-tile{position:relative;text-align:left;border:none;border-radius:12px;padding:10px 12px;cursor:pointer;color:#07101f;background:var(--st-unknown);display:flex;flex-direction:column;gap:3px;min-height:64px;font:inherit;transition:transform .12s ease}.status-tile:hover{transform:translateY(-1px)}.status-tile.ok{background:#1f6f35;color:#e8ffee}.status-tile.warning{background:var(--st-warning)}.status-tile.critical{background:var(--st-critical);color:#fff;animation:status-pulse 2s ease-in-out infinite}.status-tile.unknown{background:#3a4152;color:#dfe4f2}.status-tile.handled{animation:none;opacity:.6;background-image:repeating-linear-gradient(135deg,rgba(0,0,0,.12) 0 8px,transparent 8px 16px)}.status-tile-name{font-weight:700;font-size:.92rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;padding-right:18px}.status-tile-detail{font-size:.78rem;opacity:.9;overflow:hidden;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical}.status-tile-badge{position:absolute;top:6px;right:8px}@keyframes status-pulse{0%,to{box-shadow:0 0 #f851498c}50%{box-shadow:0 0 0 6px #f8514900}}@media (prefers-reduced-motion: reduce){.status-tile.critical{animation:none}}.status-board.wall .status-tiles{grid-template-columns:repeat(auto-fill,minmax(210px,1fr))}.status-board.wall .status-tile{min-height:84px}.status-board.wall .status-tile-name{font-size:1.05rem}.status-list{display:flex;flex-direction:column}.status-list-row{display:flex;align-items:center;gap:10px;padding:6px 8px;border:none;background:none;color:inherit;text-align:left;cursor:pointer;border-radius:8px;font:inherit}.status-list-row:hover{background:#ffffff0d}.status-list-row.handled{opacity:.55}.status-list-name{font-weight:600;min-width:160px}.status-section-editor{border:1px dashed rgba(106,125,255,.5);border-radius:12px;padding:10px 12px;margin-bottom:12px;display:flex;flex-direction:column;gap:8px}.status-editor-row{display:flex;flex-wrap:wrap;align-items:center;gap:10px}.status-editor-row>.text-input{width:auto;min-width:140px;flex:1 1 160px}.status-editor-row label .text-input{width:auto}.status-check{display:inline-flex;align-items:center;gap:6px;font-size:.88rem}.status-num{width:80px!important}.status-detail{width:min(1000px,100%)}.status-detail-body{overflow-y:auto;min-height:0;display:flex;flex-direction:column;gap:10px}.status-detail-notes{white-space:pre-wrap;background:#ffffff0a;border-radius:10px;padding:8px 12px;margin:0}.status-maint{display:flex;flex-wrap:wrap;align-items:center;gap:8px;font-size:.9rem}.status-ack-form{display:flex;flex-wrap:wrap;gap:8px;margin-top:6px}.status-ack-form .text-input{flex:1 1 220px}.status-events{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:6px;font-size:.88rem}.status-form-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:12px}.status-check-editor{border:1px solid rgba(255,255,255,.08);border-radius:12px;padding:10px 12px;display:flex;flex-direction:column;gap:6px}.status-check-editor p{margin:0}.status-iface-list{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:4px 12px;max-height:260px;overflow-y:auto}.status-import{min-height:180px;font-family:Courier New,monospace}.status-disabled-row{opacity:.5}.status-collectors{display:flex;flex-direction:column;gap:12px}.status-setup-code{border:1px solid rgba(227,179,65,.5);background:#e3b34114;border-radius:12px;padding:12px 16px}.status-setup-code pre{white-space:pre-wrap;word-break:break-all;background:#050a17;padding:10px;border-radius:8px;-webkit-user-select:all;user-select:all}.status-row-actions{display:flex;flex-wrap:wrap;gap:6px}.cancelled-badge{display:inline-flex;align-items:center;padding:1px 7px;border-radius:999px;font-size:.65rem;font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:#ffcf7a;background:#ffcf7a24;border:1px solid rgba(255,207,122,.45);margin-right:4px}.rehire-badge{display:inline-flex;align-items:center;padding:3px 10px;border-radius:999px;font-size:.72rem;font-weight:700;letter-spacing:.04em;text-transform:uppercase;background:#b084ff29;color:#c9a8ff;border:1px solid rgba(176,132,255,.5);vertical-align:middle;margin-left:6px}.rehire-badge.kind-badge-sm{padding:1px 7px;font-size:.65rem;margin-left:4px}.onboarding-rehire-note{margin:0 0 10px;padding:8px 12px;border-radius:10px;background:#b084ff14;border:1px solid rgba(176,132,255,.3)}.onboarding-rehire-note .rehire-badge{margin:0 6px 0 0}.main-nav{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:26px}.main-tab{display:inline-flex;align-items:center;height:48px;padding:0 13px;border:1px solid rgba(255,255,255,.08);background:#ffffff08;color:#b7c4e8;border-radius:16px;cursor:pointer;font:inherit;font-weight:600;transition:background .18s ease,color .18s ease,border-color .18s ease}.main-tab-icon{flex-shrink:0;transition:transform .22s ease}.main-tab-label{display:inline-block;max-width:0;margin-left:0;opacity:0;overflow:hidden;white-space:nowrap;transition:max-width .3s cubic-bezier(.2,.8,.2,1),margin-left .3s cubic-bezier(.2,.8,.2,1),opacity .22s ease}.main-tab:hover,.main-tab:focus-visible{background:#ffffff12;color:#e6eaf7}.main-tab.active .main-tab-label,.main-tab.peek .main-tab-label{max-width:180px;margin-left:10px;opacity:1}.main-tab:hover .main-tab-icon{transform:scale(1.06)}.main-tab:focus-visible{outline:2px solid rgba(81,226,213,.6);outline-offset:2px}.main-tab.active{background:linear-gradient(135deg,#6a7dff40,#51e2d533);border-color:#51e2d54d;color:#f8f9fb}@media (prefers-reduced-motion: reduce){.main-tab-label,.main-tab-icon{transition:none}}.copy-btn{display:inline-flex;align-items:center;justify-content:center;gap:4px;min-width:26px;height:26px;padding:0 6px;margin-left:6px;border:1px solid rgba(255,255,255,.1);border-radius:8px;background:#ffffff0a;color:#8b96b5;font:inherit;font-size:.75rem;cursor:pointer;vertical-align:middle;transition:background .15s ease,color .15s ease,border-color .15s ease}.copy-btn:hover,.copy-btn:focus-visible{background:#51e2d51f;border-color:#51e2d566;color:#7eeee3}.copy-btn.copied{background:#3fb95026;border-color:#3fb95080;color:#6fdc83}.onboarding-copy-field{display:inline-flex;align-items:center}.copy-value{position:relative;margin-left:4px;padding:1px 4px;border:none;border-radius:6px;background:none;color:#e6eaf7;font:inherit;cursor:copy;text-decoration:underline dotted rgba(183,196,232,.45);text-underline-offset:3px;transition:background .15s ease,color .15s ease}.copy-value:hover,.copy-value:focus-visible{background:#51e2d51f;color:#7eeee3;outline:none}.copy-value.copied{background:#3fb95026;color:#6fdc83}.copy-value-bubble{position:absolute;left:50%;bottom:calc(100% + 6px);transform:translate(-50%,4px);padding:3px 8px;border-radius:6px;background:#1f6f35;color:#e8ffee;font-size:.72rem;font-weight:700;white-space:nowrap;pointer-events:none;opacity:0;transition:opacity .16s ease,transform .16s ease}.copy-value.copied .copy-value-bubble{opacity:1;transform:translate(-50%)}@media (prefers-reduced-motion: reduce){.copy-value-bubble{transition:none}}.input-with-copy{display:flex;align-items:center}.input-with-copy .text-input{flex:1;min-width:0}.security-panel .gam-action-row{justify-content:flex-start;align-items:flex-end}.security-account-field{flex:1 1 280px}.security-target{color:#9fb4d7;font-size:.85rem;align-self:center}.security-group-title{margin:10px 0 0;font-size:.95rem;color:#9cdcfe}.security-group-title.response{color:#f48771}.security-check-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(190px,1fr));gap:8px}.security-check-btn{display:flex;flex-direction:column;align-items:flex-start;text-align:left;gap:2px}.security-check-btn small{color:#9fb4d7;font-size:.72rem;font-weight:400}.security-check-btn.done{border-color:#4ec9b0}.security-results h3{margin:6px 0;font-size:.95rem}.security-section{border-top:1px solid rgba(159,180,215,.25);padding-top:8px;display:flex;flex-direction:column;gap:8px}.security-section summary{cursor:pointer;font-weight:600}.security-section[open]>*+*{margin-top:8px}.security-ioc-table td{vertical-align:middle}.kb-content img{cursor:zoom-in}.kb-content{max-width:1400px}.kb-content a img{cursor:pointer}.kb-zoom-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:60;display:flex;flex-direction:column;background:#03060ff0;color:#e8ecf8}.kb-zoom-toolbar{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 16px}.kb-zoom-count{font-size:.9rem;opacity:.8}.kb-zoom-tools{display:flex;align-items:center;gap:6px}.kb-zoom-btn{min-width:36px;height:36px;padding:0 10px;display:inline-grid;place-items:center;border:1px solid rgba(255,255,255,.18);border-radius:8px;background:#ffffff0f;color:inherit;font-size:1.2rem;line-height:1;text-decoration:none;cursor:pointer}.kb-zoom-btn:hover:not(:disabled){background:#ffffff24}.kb-zoom-btn:disabled{opacity:.4;cursor:default}.kb-zoom-text{font-size:.85rem}.kb-zoom-level{min-width:52px;text-align:center;font-size:.85rem;font-variant-numeric:tabular-nums}.kb-zoom-stage{flex:1;min-height:0;display:flex;align-items:center;justify-content:center;gap:12px;padding:0 16px}.kb-zoom-frame{position:relative;overflow:hidden;line-height:0;border-radius:6px;background:#fff;cursor:zoom-in;touch-action:none;-webkit-user-select:none;user-select:none}.kb-zoom-frame.zoomed{cursor:zoom-out}.kb-zoom-frame img{display:block;max-width:calc(100vw - 140px);max-height:calc(100vh - 190px);width:auto;height:auto;transition:transform .15s ease-out;will-change:transform}.kb-zoom-frame.zoomed img{transition:transform .15s ease-out,transform-origin 0s}.kb-zoom-nav{flex:none;width:44px;height:64px;border:none;border-radius:10px;background:#ffffff14;color:inherit;font-size:2.2rem;line-height:1;cursor:pointer}.kb-zoom-nav:hover{background:#ffffff2e}.kb-zoom-hint{margin:8px 0 0;text-align:center;font-size:.8rem;opacity:.65}.kb-zoom-thumbs{display:flex;justify-content:center;gap:8px;padding:10px 16px 14px;overflow-x:auto}.kb-zoom-thumb{flex:none;width:64px;height:48px;padding:0;border:2px solid transparent;border-radius:6px;background:#fff;overflow:hidden;cursor:pointer;opacity:.6}.kb-zoom-thumb.active,.kb-zoom-thumb:hover{opacity:1}.kb-zoom-thumb.active{border-color:#f0a33a}.kb-zoom-thumb img{width:100%;height:100%;object-fit:cover}@media (max-width: 640px){.kb-zoom-stage{padding:0 4px;gap:4px}.kb-zoom-nav{width:32px}.kb-zoom-frame img{max-width:calc(100vw - 80px)}}.page-width-btn{display:inline-flex;align-items:center;gap:6px;white-space:nowrap}@media (max-width: 1100px){.page-width-btn span{display:none}}.kb-ai{width:min(1100px,100%);height:88vh;max-height:88vh;position:relative;gap:12px}.kb-ai.dragging{border-color:#6a7dffb3}.kb-ai-messages{flex:1;min-height:0;overflow-y:auto;display:flex;flex-direction:column;gap:12px;padding-right:4px}.kb-ai-turn{max-width:100%;width:100%}.kb-ai-turn>.gam-assistant-bubble{max-width:90%}.kb-ai-empty{display:flex;flex-direction:column;align-items:flex-start;gap:8px}.kb-ai-example{text-align:left}.kb-ai-status{font-size:.8rem;color:#8f9bbd;padding-left:4px}.kb-ai-status:before{content:"› "}.kb-ai-working{animation:kb-ai-pulse 1.4s ease-in-out infinite}@keyframes kb-ai-pulse{50%{opacity:.4}}.kb-ai-files{margin-top:6px;font-size:.78rem;opacity:.85}.kb-ai-draft-wrap{width:100%}.kb-ai-draft{display:flex;flex-direction:column;align-items:flex-start;gap:10px;border:1px solid rgba(106,125,255,.45);background:#6a7dff0f;border-radius:16px;padding:14px 16px}.kb-ai-draft>.gam-field{width:100%}.kb-ai-draft.superseded{opacity:.55;border-color:#ffffff1f;background:transparent}.kb-ai-draft.created{border-color:#51e2d580;background:#51e2d50f}.kb-ai-draft-head{display:flex;flex-wrap:wrap;justify-content:space-between;gap:8px;width:100%}.kb-ai-created{margin:0}.kb-ai-preview{width:100%;max-width:none;max-height:460px;overflow-y:auto;box-sizing:border-box;background:#0003;border:1px solid rgba(255,255,255,.08);border-radius:12px;padding:14px 18px}.kb-ai-preview img{cursor:default}.kb-ai-attachments{display:flex;flex-wrap:wrap;gap:8px}.kb-ai-chip{display:inline-flex;align-items:center;gap:6px;max-width:100%;font-size:.8rem;padding:4px 6px 4px 10px;border-radius:999px;background:#ffffff0f;border:1px solid rgba(255,255,255,.1)}.kb-ai-chip.error{border-color:#ff787880}.kb-ai-chip em{color:#ff9d9d;font-style:normal}.kb-ai-chip button{background:none;border:none;color:inherit;cursor:pointer;font-size:1rem;line-height:1;padding:0 4px;opacity:.7}.kb-ai-chip button:hover{opacity:1}.kb-ai-input-row{display:flex;gap:10px;align-items:flex-end}.kb-ai-input-row textarea{flex:1;resize:vertical;min-height:44px;max-height:200px;font-family:inherit}.kb-ai-attach{font-size:1.1rem;padding-inline:12px}.kb-ai-drop{position:absolute;top:0;right:0;bottom:0;left:0;display:grid;place-items:center;border-radius:inherit;background:#09101ed9;border:2px dashed rgba(106,125,255,.8);font-size:1.2rem;pointer-events:none}
