@import"https://fonts.googleapis.com/css2?family=Fraunces:opsz,wght@9..144,500;9..144,600&family=Manrope:wght@400;500;600;700;800&display=swap";:root{color-scheme:light;font-family:Manrope,Segoe UI,sans-serif;line-height:1.5;font-weight:500;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;--bg: #fbf7ef;--bg-strong: #f3ecde;--surface: #fffdf9;--surface-strong: #ffffff;--surface-muted: #f7f1e7;--border: rgba(28, 50, 63, .1);--border-strong: rgba(28, 50, 63, .18);--text: #1a3340;--muted: #667985;--accent: #1f7c69;--accent-strong: #145b4d;--accent-soft: rgba(31, 124, 105, .1);--accent-alt: #d28e43;--accent-alt-soft: rgba(210, 142, 67, .12);--warning: #c68e2c;--warning-soft: rgba(198, 142, 44, .12);--danger: #c86a67;--danger-soft: rgba(200, 106, 103, .12);--success: #2d8d63;--shadow: 0 18px 40px rgba(87, 97, 110, .12);--shadow-soft: 0 8px 18px rgba(87, 97, 110, .06)}*{box-sizing:border-box}html{background:radial-gradient(circle at top left,rgba(31,124,105,.14),transparent 24%),radial-gradient(circle at 82% 8%,rgba(210,142,67,.16),transparent 20%),linear-gradient(180deg,#fefbf5,#fbf6ed 46%,#f5ecdf)}body{margin:0;min-width:320px;min-height:100vh;color:var(--text)}button,input,select,textarea{font:inherit}button{cursor:pointer}#root{min-height:100vh}.app-shell{min-height:100vh;padding:10px}.eyebrow{margin:0;text-transform:uppercase;letter-spacing:.18em;font-size:.74rem;color:var(--accent)}.workspace-brand h1,.panel h2,.panel h3,.panel h4,.modal-panel h2,.modal-panel h3{margin:0;font-family:Fraunces,Georgia,serif;font-weight:600;letter-spacing:-.02em}.hero-copy,.section-copy,.empty-copy,.sheet-card p,.warning-card p,.confirmation-copy span,.detail-list dd,.sample-entry-row span,.sample-entry-row strong,.stat-card span,.management-footnote{color:var(--muted)}.pill,.status-chip,.token-chip{display:inline-flex;align-items:center;justify-content:center;gap:6px;padding:9px 14px;border-radius:999px;border:1px solid var(--border);background:#ffffff94;color:var(--text);box-shadow:inset 0 1px #ffffffa6}.soft-pill{background:#f4f7f6e6}.danger-pill{background:var(--danger-soft);border-color:#bc5f573d;color:#8c453f}.status-chip.ok{background:var(--accent-soft);color:var(--accent-strong)}.status-chip.warn{background:var(--warning-soft);color:#8b6823}.app-main{padding:8px 2px 10px}.workspace-main{overflow:visible}.schedule-screen{gap:8px}.workspace-grid,.workspace-main,.schedule-screen,.dataset-screen,.auth-form,.edit-form,.form-grid,.warning-list,.sample-entry-list,.coworker-list,.compact-warning-list,.import-upload-panel,.confirmation-copy,.inset-panel,.import-preview{display:grid;gap:18px}.panel{border:1px solid rgba(255,255,255,.72);border-radius:22px;background:linear-gradient(180deg,#fffffffa,#fffbf5fa);box-shadow:var(--shadow-soft)}.loading-copy{margin:0;padding:18px 20px;color:var(--muted)}.workspace-nav-panel,.toolbar-panel,.auth-panel,.empty-state-panel,.schedule-grid-panel,.side-panel,.inset-panel,.management-hero,.filter-toggle-panel{padding:14px 18px}.workspace-nav-panel,.toolbar-panel,.management-hero{display:flex;justify-content:space-between;gap:12px;align-items:center}.toolbar-panel{position:relative;z-index:120;overflow:visible}.workspace-nav-panel{position:sticky;top:10px;z-index:140;isolation:isolate;overflow:visible;flex-direction:column;justify-content:center;align-items:center;padding-top:10px;padding-bottom:10px}.workspace-brand h1{font-size:clamp(1.14rem,1.7vw,1.68rem);line-height:1;text-align:center}.workspace-nav-copy,.toolbar-left,.panel-header,.modal-header,.modal-footer,.schedule-grid-header,.detail-grid,.preview-grid,.stats-row,.management-grid,.toolbar-controls,.navigation-cluster,.schedule-grid-meta,.toolbar-identity,.workspace-nav-actions,.modal-actions,.management-hero-actions,.sheet-card header,.warning-card header,.coworker-row,.sample-entry-row,.empty-state-actions{display:flex;gap:14px}.workspace-nav-actions,.toolbar-controls,.navigation-cluster,.schedule-grid-meta,.toolbar-identity,.modal-actions,.management-hero-actions{flex-wrap:wrap;align-items:center}.screen-switcher{min-width:200px}.menu-shell{position:relative;z-index:160;isolation:isolate;align-self:center}.menu-trigger{min-width:96px}.menu-panel{position:absolute;top:calc(100% + 8px);left:50%;right:auto;transform:translate(-50%);z-index:220;width:min(280px,calc(100vw - 48px));padding:10px;border-radius:18px;border:1px solid rgba(255,255,255,.82);background:#fffdf9fa;box-shadow:var(--shadow);display:grid;gap:10px}.menu-section{display:grid;gap:8px}.menu-title{font-size:.76rem;text-transform:uppercase;letter-spacing:.16em;color:var(--muted)}.menu-divider{height:1px;background:#1b2a3314}.menu-item,.menu-user{width:100%;padding:8px 10px;border-radius:14px}.menu-item{border:1px solid var(--border);background:#ffffffb8;color:var(--text);text-align:left}.menu-item.active{border-color:#176f5a38;background:var(--accent-soft);color:var(--accent-strong)}.menu-user{background:#f2eee7e6;color:var(--muted);word-break:break-word}.auth-panel,.empty-state-panel{max-width:760px}.schedule-grid-header,.panel-header,.modal-header,.modal-footer,.coworker-row,.sample-entry-row,.sheet-card header,.warning-card header{justify-content:space-between;align-items:flex-start}.management-grid,.preview-grid,.detail-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}.ghost-button,.primary-button,.select-trigger,.segmented-control button,.select-options button,.day-cell,.file-dropzone{border:1px solid var(--border);border-radius:18px;background:#ffffff9e;color:var(--text);transition:transform .14s ease,border-color .14s ease,background-color .14s ease,box-shadow .14s ease}.ghost-button,.primary-button,.select-options button,.segmented-control button{padding:8px 14px}.ghost-button:hover,.primary-button:hover,.select-trigger:hover,.segmented-control button:hover,.select-options button:hover,.day-cell:hover{transform:translateY(-1px);border-color:var(--border-strong);box-shadow:0 10px 20px #2a343f14}.primary-button{border-color:transparent;background:linear-gradient(135deg,var(--accent) 0%,#2a8d71 100%);color:#f7fbf9;font-weight:800}.ghost-button{background:#ffffffb8}.ghost-button.danger{color:#8f4640;border-color:#bc5f573d;background:#fff7f6eb}button:disabled{opacity:.56;cursor:not-allowed;transform:none;box-shadow:none}.segmented-control{display:inline-flex;gap:4px;padding:3px;border-radius:16px;background:#f1eadfe0;border:1px solid rgba(255,255,255,.55)}.segmented-control button{min-width:70px}.segmented-control button.active{border-color:#176f5a38;background:#fffffff2;color:var(--accent-strong)}.period-label{min-width:250px;padding:8px 14px;border-radius:16px;background:linear-gradient(135deg,#1f7c6914,#ffffffd6);border:1px solid rgba(31,124,105,.14);font-weight:700}.person-selector{position:relative;min-width:220px;z-index:180;isolation:isolate}.select-trigger{width:100%;padding:6px 10px;text-align:left;display:grid;gap:2px}.select-label{font-size:.8rem;color:var(--muted)}.select-panel{position:absolute;inset:calc(100% + 8px) 0 auto;z-index:420;padding:10px;border-radius:18px;border:1px solid rgba(255,255,255,.76);background:#fffffff5;box-shadow:var(--shadow);display:grid;gap:10px}.select-options{max-height:260px;overflow:auto;display:grid;gap:8px}.select-options button{text-align:left}.select-options button.selected{background:var(--accent-soft);border-color:#176f5a2e}.auth-form label,.form-grid label{display:grid;gap:8px;font-weight:700;color:var(--text)}.auth-form input,.select-panel input,.form-grid input,.form-grid textarea{width:100%;padding:12px 14px;border-radius:16px;border:1px solid rgba(27,42,51,.12);background:#faf9f6f2;color:var(--text)}.auth-form input:focus,.select-panel input:focus,.form-grid input:focus,.form-grid textarea:focus{outline:2px solid rgba(23,111,90,.18);outline-offset:1px;border-color:#176f5a42}.error-banner,.inline-status{margin:0;padding:14px 16px;border-radius:16px}.error-banner{background:var(--danger-soft);border:1px solid rgba(188,95,87,.16);color:#8f4640}.inline-status{background:#176f5a14;color:var(--accent-strong)}.calendar-grid{display:grid;gap:4px;width:100%;min-width:0}.week-calendar-grid,.month-calendar-grid{grid-template-columns:22px repeat(7,minmax(0,1fr));align-items:stretch}.month-calendar-grid{grid-auto-rows:minmax(72px,auto)}.calendar-corner,.calendar-weekday,.calendar-week-number{display:flex;align-items:center;justify-content:center;border-radius:14px;color:var(--muted)}.calendar-weekday,.calendar-week-number{background:#fffcf7f0;border:1px solid rgba(27,42,51,.08)}.calendar-weekday{min-height:18px;padding:3px 4px;font-size:.62rem;font-weight:700;line-height:1.05;text-align:center;border-radius:10px;word-break:break-word;overflow-wrap:anywhere}.calendar-week-number{min-height:100%;font-size:.68rem;font-weight:800;border-radius:10px}.day-cell{padding:10px 11px;min-height:96px;text-align:left;display:grid;gap:6px;background:linear-gradient(180deg,#fffffff5,#faf6eff5)}.day-cell.selected{border-color:#176f5a47;background:linear-gradient(180deg,#edf9f5fa,#fcfffdfa)}.day-cell.holiday{border-color:#d6787842;background:linear-gradient(180deg,#ffefeffa,#fff7f7fa)}.day-cell.free{border-color:#70b07e3d;background:linear-gradient(180deg,#edf9effa,#f8fff9fa)}.day-cell.alert{border-color:#d6787842;background:linear-gradient(180deg,#fff1f1fa,#fff8f8fa)}.day-cell.subdued{opacity:.58}.day-cell strong{font-size:1.02rem;line-height:1.2;color:var(--text);overflow-wrap:anywhere}.day-cell.month-density{height:100%;min-height:0;padding:8px 9px;gap:4px;align-content:start;overflow:hidden}.day-cell.month-density .day-cell-header span,.day-cell.month-density span,.day-cell.month-density em{font-size:.66rem}.day-cell.month-density strong{font-size:.92rem}.day-cell span,.day-cell em{color:var(--muted);font-style:normal;font-size:.82rem}.day-cell-header{display:flex;justify-content:space-between;align-items:flex-start;gap:8px;line-height:1.08}.day-flags{display:inline-flex;align-items:center;gap:4px}.status-dot{width:10px;height:10px;border-radius:999px;display:inline-block;background:var(--accent-alt)}.status-dot.edited{background:var(--accent)}.status-dot.note{width:8px;height:8px;background:var(--warning)}.detail-list{margin:0;display:grid;gap:14px}.detail-list div{display:grid;gap:4px}.detail-list dt{font-size:.8rem;text-transform:uppercase;letter-spacing:.08em;color:var(--muted)}.detail-list dd{margin:0}.warning-card,.sheet-card,.stat-card,.coworker-row,.sample-entry-row{padding:12px 13px;border-radius:16px;background:#ffffffad;border:1px solid rgba(27,42,51,.08)}.sheet-grid,.token-list{display:grid;gap:12px}.sheet-grid{grid-template-columns:repeat(auto-fit,minmax(250px,1fr))}.token-list{grid-template-columns:repeat(auto-fit,minmax(120px,1fr))}.token-chip{justify-content:center;background:#ffffffc2}.severity-warning{border-color:#b98a2d38;background:#fffaf1d1}.severity-error{border-color:#bc5f5738;background:#fff6f4db}.severity-info{border-color:#176f5a29}.stat-card{flex:1 1 0;display:grid;gap:7px}.stat-card strong,.sheet-card strong,.warning-card strong,.period-label{color:var(--text)}.coworker-row div{display:grid;gap:4px}.file-dropzone{display:grid;gap:8px;padding:22px;border-style:dashed;background:#ffffff94}.file-dropzone input{margin-top:8px}.file-dropzone-title{font-size:1rem;font-weight:800}.file-dropzone-copy{color:var(--muted)}.modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:420;background:#3e424738;padding:24px}.modal-panel{width:min(1120px,100%);max-height:calc(100vh - 48px);overflow:auto;margin:0 auto;padding:18px;border-radius:24px;border:1px solid rgba(255,255,255,.72);background:#fffdf9fa;box-shadow:0 30px 70px #3c424a2e}.import-modal,.day-detail-modal{display:grid;gap:18px}.day-detail-modal{position:relative}.modal-header,.modal-footer{align-items:flex-start}.modal-close-button{position:sticky;top:0;justify-self:end;z-index:5;width:44px;height:44px;border-radius:999px;border:1px solid var(--border);background:#fffffff5;color:var(--text);font-size:1.5rem;line-height:1;box-shadow:var(--shadow-soft)}.detail-grid{align-items:start}.detail-value-stack{display:grid;gap:4px}.detail-value-stack strong{font-size:1.02rem}.coworker-switcher button{min-width:0}.compact-coworker-row{padding:6px 8px;align-items:center}.coworker-primary{display:grid;gap:2px}.coworker-context{color:var(--muted);font-size:.72rem;text-transform:uppercase;letter-spacing:.08em}.coworker-meta{color:var(--muted);text-align:right;font-size:.86rem}.full-width{grid-column:1 / -1}.form-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.management-hero-actions{flex-direction:column;align-items:flex-end}.compact-toolbar-panel{padding:8px 12px}.filter-toggle-panel{padding:4px 10px}.filter-toggle-button{width:100%;display:flex;align-items:center;justify-content:space-between;gap:10px;padding:6px 10px}.filter-toggle-button span{color:var(--muted);font-size:.78rem}.compact-toolbar-panel .toolbar-controls{gap:8px;justify-content:center}.compact-toolbar-panel .ghost-button,.compact-toolbar-panel .primary-button,.compact-toolbar-panel .segmented-control button,.compact-toolbar-panel .select-trigger{padding-top:6px;padding-bottom:6px}.schedule-grid-panel{padding:8px 12px;overflow:visible}.period-picker-shell{position:relative;z-index:180}.period-label{min-width:180px}.period-label-button{cursor:pointer;text-align:left}.period-picker-panel{position:absolute;top:calc(100% + 8px);left:0;z-index:260;width:min(280px,calc(100vw - 32px));padding:10px;display:grid;gap:8px;border-radius:16px;border:1px solid rgba(255,255,255,.8);background:#fffffff7;box-shadow:var(--shadow)}.period-picker-panel label{display:grid;gap:6px;font-size:.86rem;font-weight:700;color:var(--text)}.period-picker-panel input,.period-picker-panel select{width:100%;padding:10px 12px;border-radius:14px;border:1px solid rgba(27,42,51,.12);background:#faf9f6f2;color:var(--text)}.schedule-grid-header{margin-bottom:8px}.schedule-grid-header h3{font-size:1.3rem}.slim-management-hero{padding-top:10px;padding-bottom:10px}.management-footnote{margin:0;max-width:28ch;text-align:right}.empty-state-actions{align-items:center}@media(max-width:1100px){.management-grid,.preview-grid,.detail-grid{grid-template-columns:1fr}.week-calendar-grid,.month-calendar-grid{grid-template-columns:20px repeat(7,minmax(0,1fr))}}@media(max-width:900px){.app-shell{padding:14px}.workspace-nav-panel,.toolbar-panel,.management-hero,.modal-header,.modal-footer{flex-direction:column}.workspace-nav-panel,.toolbar-panel,.management-hero,.schedule-grid-panel{padding:8px 10px}.person-selector,.period-label{width:100%}.menu-panel{width:min(320px,calc(100vw - 32px))}.form-grid{grid-template-columns:1fr}.week-calendar-grid,.month-calendar-grid{grid-template-columns:18px repeat(7,minmax(0,1fr));gap:4px}.calendar-weekday{min-height:16px;padding:2px 3px;font-size:.5rem}.calendar-week-number{font-size:.58rem}.day-cell{min-height:76px;padding:7px 8px;border-radius:12px}.day-cell strong,.day-cell.month-density strong{font-size:.84rem}.day-cell-header{gap:6px}.day-cell.month-density .day-cell-header span,.day-cell.month-density span,.day-cell.month-density em{font-size:.6rem}.day-cell span,.day-cell em{font-size:.72rem}.compact-toolbar-panel .toolbar-controls{flex-direction:row;justify-content:center}.compact-toolbar-panel .person-selector,.compact-toolbar-panel .period-label{width:auto;min-width:170px}.management-hero-actions,.management-footnote{align-items:flex-start;text-align:left}.modal-backdrop{padding:12px}.modal-panel{width:100%;max-height:calc(100vh - 24px);padding:14px}}@media(max-width:640px){.app-shell{padding:10px}.workspace-nav-panel,.toolbar-panel,.management-hero,.schedule-grid-panel,.filter-toggle-panel{padding:6px 8px}.week-calendar-grid,.month-calendar-grid{grid-template-columns:16px repeat(7,minmax(0,1fr));gap:3px}.calendar-weekday{min-height:14px;font-size:.42rem;padding:2px;border-radius:7px}.calendar-week-number{font-size:.5rem}.day-cell{min-height:60px;padding:5px 6px;border-radius:10px}.day-cell strong,.day-cell.month-density strong{font-size:.74rem}.day-cell-header span,.day-cell.month-density .day-cell-header span,.day-cell.month-density span{font-size:.54rem}.compact-toolbar-panel .toolbar-controls{gap:6px}.compact-toolbar-panel .person-selector,.compact-toolbar-panel .period-label{min-width:150px}}
