:root{color-scheme:light;font-family:IBM Plex Sans,Segoe UI,system-ui,-apple-system,sans-serif;line-height:1.5;font-weight:450;--primary-blue: #0f2557;--accent-blue: #1d4ed8;--accent-blue-hover: #1e3a8a;--light-blue-bg: #dbeafe;--light-blue-subtle: #eff6ff;--background-main: #f8fafc;--background-alt: #eef4ff;--text-primary: #020617;--text-secondary: #334155;--text-muted: #64748b;--border-light: #e2e8f0;--border-strong: #cbd5e1;--card-bg: #ffffff;--surface-soft: #f8fbff;--surface-strong: #eff6ff;--danger: #b91c1c;--danger-bg: #fef2f2;--danger-border: #fecaca;--success: #15803d;--success-bg: #f0fdf4;--success-border: #bbf7d0;--warning: #b45309;--warning-bg: #fff7ed;--warning-border: #fdba74;--neutral: #475569;--focus-ring: rgba(29, 78, 216, .22);--shadow-sm: 0 1px 3px rgba(15, 23, 42, .08);--shadow-md: 0 4px 12px rgba(15, 23, 42, .08);--shadow-lg: 0 10px 28px rgba(15, 23, 42, .12);--radius-sm: 8px;--radius-md: 12px;--radius-lg: 18px;background:var(--background-main);color:var(--text-primary)}*{box-sizing:border-box}html,body,#root{min-height:100%}body{margin:0;min-width:320px;min-height:100vh;color:var(--text-primary);background:radial-gradient(circle at top left,rgba(219,234,254,.9),transparent 26%),linear-gradient(180deg,#f8fbff,#f8fafc 38%,#f1f5f9)}body:before{content:"";position:fixed;top:0;right:0;bottom:0;left:0;pointer-events:none;background-image:linear-gradient(rgba(148,163,184,.08) 1px,transparent 1px),linear-gradient(90deg,rgba(148,163,184,.08) 1px,transparent 1px);background-size:28px 28px;-webkit-mask-image:linear-gradient(to bottom,rgba(0,0,0,.16),transparent 44%);mask-image:linear-gradient(to bottom,rgba(0,0,0,.16),transparent 44%)}body,button,input,select,textarea{font:inherit}button{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.58;transform:none;box-shadow:none}img,video{display:block;max-width:100%}p,fieldset{margin:0}a{color:inherit}code{padding:.16rem .4rem;border-radius:999px;background:var(--light-blue-subtle);color:var(--accent-blue-hover)}table{width:100%;min-width:0;table-layout:fixed;border-collapse:collapse}th,td{padding:.9rem;text-align:left;border-bottom:1px solid var(--border-light);vertical-align:top;overflow-wrap:anywhere;word-break:break-word}thead th{color:var(--primary-blue);font-size:.74rem;font-weight:800;text-transform:uppercase;letter-spacing:.08em;background:#eff6ff}tbody tr{transition:background .12s ease,box-shadow .12s ease}tbody tr:hover{background:#f8fbff}.page-root{min-height:100vh;overflow-x:clip;background:var(--background-main);color:var(--text-primary)}.page-main{width:100%;max-width:none;margin:0;overflow-x:clip;padding:18px 28px 40px}.page-main>.content-stack{align-content:start}.navbar{position:sticky;top:0;z-index:30;display:grid;gap:.8rem;padding:12px 24px;background:linear-gradient(180deg,#fffffffa,#f8fbfff5);border-bottom:1px solid #dbe8fb;box-shadow:0 10px 24px #0f172a0f;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px)}.navbar-main{display:flex;align-items:center;justify-content:space-between;gap:1rem;min-width:0}.navbar-left{display:flex;align-items:center;gap:12px;min-width:0}.navbar-text{display:flex;flex-direction:column;min-width:0}.navbar-center{flex:1;min-width:0;display:flex;justify-content:center}.navbar-right{display:flex;align-items:center;justify-content:flex-end;gap:.75rem;min-width:0;flex-wrap:wrap}.navbar-nav{display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:.55rem;min-width:0}.navbar-mobile-nav{display:none}.navbar-logo{font-weight:700;font-size:17px;color:var(--primary-blue)}.navbar-subtitle{font-size:12px;color:var(--text-muted)}.navbar-left-org{align-items:flex-start}.navbar-text-org{gap:.12rem}.navbar-org-name{font-weight:800;font-size:clamp(1.18rem,2vw,1.45rem);color:var(--accent-blue-hover);letter-spacing:.01em;overflow-wrap:anywhere}.navbar-org-meta{font-size:.78rem;color:var(--text-muted);font-weight:700;letter-spacing:.08em;text-transform:uppercase}.navbar-org-name{font-weight:700;font-size:1.45rem;color:var(--accent-blue-hover);text-transform:uppercase;letter-spacing:.5px;overflow-wrap:anywhere}.navbar-admin-name{font-size:.98rem;font-weight:600;color:var(--text-secondary);overflow-wrap:anywhere}.navbar-org-select{display:grid;gap:.3rem;min-width:min(280px,100%);color:var(--text-secondary);font-weight:600}.navbar-org-select span{font-size:.8rem}.navbar-org-select select{min-width:220px}.content-stack{width:100%;min-width:0;display:grid;gap:1rem;align-content:start}.workspace-top{position:sticky;top:66px;z-index:24;display:grid;gap:.7rem;padding-bottom:.2rem;background:linear-gradient(180deg,#eff6fffc,#eff6ffeb 72%,#eff6ff00)}.section-heading,.toolbar,.header-actions,.row-actions,.modal-actions,.camera-actions,.section-nav,.section-nav-header,.page-header-main{display:flex;align-items:center;gap:.8rem}.section-heading,.section-nav-header,.page-header-main{justify-content:space-between}.page-header-controls{justify-content:flex-end}.page-header-controls .header-actions{width:100%;justify-content:flex-end}.page-header{position:relative;min-width:0;display:grid;gap:1rem;padding:1.08rem 1.1rem 1.12rem;border-radius:18px;border:1px solid #dbe8fb;background:linear-gradient(180deg,#fffffffc,#f4f9fffa);box-shadow:0 16px 34px #0f172a12;isolation:isolate;overflow:hidden}.page-header h1{font-size:clamp(1.45rem,3vw,1.95rem);color:var(--primary-blue)}.header-copy,.header-badges,.section-heading-copy{display:grid;gap:.75rem;min-width:0}.header-copy{max-width:52rem}.header-subcopy{color:var(--text-secondary);line-height:1.55;font-size:.94rem}.header-actions{flex-wrap:wrap;justify-content:flex-end;align-items:flex-end;flex-shrink:0}.header-actions>*{flex-shrink:0}.header-badges{display:flex;flex-wrap:wrap;gap:.55rem}.header-select{display:grid;gap:.35rem;min-width:220px;color:var(--text-secondary);font-weight:600}.section-nav-card{position:relative;display:grid;gap:.78rem;padding:.95rem 0 0;border-top:1px solid #e2e8f0;background:transparent}.section-nav-header{align-items:flex-end}.section-nav-header strong{color:var(--primary-blue);font-size:.95rem}.section-nav-header div{display:grid;gap:.18rem}.section-nav{flex-wrap:wrap;align-items:stretch;gap:.65rem}.nav-menu-button,.nav-close-button{display:none}.navbar-nav-mobile .nav-button{width:100%;justify-content:flex-start}.nav-overlay{display:none}.page-section{display:grid;gap:1.15rem;min-width:0;align-content:start}.dashboard-page-layout.tone-setup{--page-accent: #1d4ed8;--page-accent-soft: #dbeafe}.dashboard-page-layout.tone-ops{--page-accent: #0f766e;--page-accent-soft: #d9f99d}.dashboard-page-layout.tone-default{--page-accent: #1d4ed8;--page-accent-soft: #dbeafe}.card,.modal-card,.login-card{background:var(--card-bg);border:1px solid var(--border-light);box-shadow:var(--shadow-md)}.card{min-width:0;border-radius:18px;padding:1.05rem}.table-card{overflow:hidden;padding:.92rem .98rem .98rem;border-radius:22px;border-color:#dbe8fb;background:linear-gradient(180deg,#fffffffc,#f8fbfff7);box-shadow:0 18px 34px #0f172a0f;isolation:isolate}.table-card-header{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem;min-width:0;padding:.1rem .35rem .9rem}.table-card-header>*{min-width:0}.table-card-eyebrow{color:var(--page-accent);font-size:.72rem;font-weight:800;letter-spacing:.12em;text-transform:uppercase}.table-card-title{margin:.18rem 0 0;color:var(--primary-blue);font-size:1.08rem}.table-card-copy{margin-top:.32rem;color:var(--text-secondary);line-height:1.56;max-width:68ch}.table-card th,.table-card td{font-size:.92rem;line-height:1.45}.table-card td>*{min-width:0}.table-card .row-actions{justify-content:flex-start;align-items:center}.table-card .status-badge,.table-card .pill{justify-self:start}.spinner-card,.empty-card,.error-card{min-height:220px;display:grid;place-items:center;gap:.85rem;text-align:center}.empty-card p,.error-card p{max-width:460px;color:var(--text-muted)}.spinner{width:42px;height:42px;border:3px solid var(--border-light);border-top-color:var(--accent-blue);border-radius:999px;animation:spin 1s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.eyebrow{margin:0;color:var(--text-muted);font-size:.72rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase}input,textarea,select{width:100%;min-width:0;padding:.78rem .92rem;border:1px solid #93c5fd;border-radius:var(--radius-md);background:#eff6ff;color:var(--text-primary);outline:none;transition:border-color .15s ease,box-shadow .15s ease,background .15s ease}input::placeholder,textarea::placeholder{color:var(--text-muted)}input:focus,textarea:focus,select:focus{border-color:var(--accent-blue);box-shadow:0 0 0 3px var(--focus-ring);background:#fff}textarea{resize:vertical}.nav-button,.secondary-button,.ghost-button,.primary-button,.danger-button,.icon-button{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;min-height:44px;max-width:100%;border-radius:var(--radius-md);white-space:normal;text-align:center;text-decoration:none;transition:background .12s ease,border-color .12s ease,box-shadow .12s ease,color .12s ease,transform .08s ease}.row-actions{gap:.55rem}.row-actions .ghost-button,.row-actions .danger-button,.row-actions .secondary-button{min-height:38px;padding:.58rem .82rem;border-radius:10px;font-size:.84rem}.toolbar{gap:.75rem;min-width:0;padding:.1rem 0}.toolbar .header-select{min-width:190px}.nav-button:hover,.secondary-button:hover,.ghost-button:hover,.primary-button:hover,.danger-button:hover,.icon-button:hover{transform:translateY(-1px)}.nav-button{justify-content:center;padding:.7rem .95rem;border:1px solid #dbe8fb;background:linear-gradient(180deg,#fff,#f8fbff);color:var(--text-secondary);font-size:.86rem;font-weight:700;box-shadow:inset 0 1px #ffffffbf}.nav-button.active{background:linear-gradient(135deg,#2563eb,#1d4ed8);color:#fff;border-color:transparent;box-shadow:0 8px 18px #2563eb38}.secondary-button,.ghost-button,.primary-button,.danger-button{padding:.72rem 1rem;border:1px solid transparent;font-size:.92rem;font-weight:700}.secondary-button{background:transparent;border-color:var(--border-light);color:var(--text-secondary)}.secondary-button:hover{background:var(--background-main);border-color:var(--border-strong)}.secondary-button.nav-menu-button{min-width:86px}.ghost-button{background:transparent;border-color:var(--accent-blue);color:var(--accent-blue)}.ghost-button:hover{background:var(--light-blue-bg)}.primary-button{background:linear-gradient(135deg,#2563eb,#1d4ed8);color:#fff;box-shadow:0 8px 18px #2563eb38}.primary-button:hover{background:var(--accent-blue-hover)}.danger-button{background:transparent;border-color:var(--danger-border);color:var(--danger)}.danger-button:hover{background:var(--danger-bg)}.icon-button{width:42px;min-width:42px;min-height:42px;padding:0;border:1px solid var(--border-light);background:#fff;color:var(--text-secondary)}.full-span{grid-column:1 / -1}.row-actions,.modal-actions,.camera-actions,.toolbar{flex-wrap:wrap}.row-actions>*,.modal-actions>*,.camera-actions>*,.toolbar>*{min-width:0;flex-shrink:0}.status-badge,.pill{display:inline-flex;align-items:center;justify-content:center;gap:.4rem;max-width:100%;padding:.38rem .78rem;border-radius:999px;font-size:.78rem;font-weight:700;letter-spacing:.02em}.pill{border:1px solid #bfdbfe;background:var(--light-blue-subtle);color:var(--accent-blue)}.tone-online,.tone-available,.tone-active,.tone-synced,.tone-small{background:var(--success-bg);color:var(--success)}.tone-offline,.tone-disabled,.tone-inactive,.tone-medium{background:#f1f5f9;color:var(--neutral)}.tone-fault,.tone-deleting,.tone-suspended{background:var(--danger-bg);color:var(--danger)}.tone-pending,.tone-large{background:var(--warning-bg);color:var(--warning)}.tone-assigned{background:var(--light-blue-bg);color:var(--accent-blue)}.token-field{display:flex;min-width:0;align-items:center;justify-content:space-between;gap:.55rem;flex-wrap:wrap;padding:.65rem .75rem;border-radius:12px;background:#f8fbff;border:1px solid #dbe8fb}.token-field span{min-width:0;overflow-wrap:anywhere;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:.88rem;color:var(--primary-blue)}.token-field .ghost-button{min-height:36px;padding:.5rem .8rem;font-size:.82rem}.credential-stack{display:grid;gap:.55rem;min-width:0}.credential-note{font-size:.8rem;line-height:1.45}.credential-stack .token-field{padding:.55rem .65rem}.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem}.form-grid>*{min-width:0}.form-grid label{display:grid;gap:.45rem;min-width:0;color:var(--text-secondary);font-weight:600;font-size:.92rem}.form-grid label>span,.form-grid label>strong{color:var(--primary-blue)}.login-card .form-grid label{color:var(--primary-blue)}.checkbox-fieldset{padding:1rem;border:1px solid #dbe8fb;border-radius:16px;background:linear-gradient(180deg,#f8fbff,#f8fafc)}.checkbox-fieldset legend{padding:0 .3rem;color:var(--primary-blue);font-weight:700}.checkbox-row{display:flex;align-items:flex-start;gap:.7rem;margin-top:.65rem;color:var(--text-primary);font-weight:500}.checkbox-row input{width:auto;margin-top:.18rem}.inline-error{padding:.8rem .92rem;border-radius:var(--radius-md);border:1px solid var(--danger-border);background:var(--danger-bg);color:var(--danger);font-weight:600}.muted-copy{color:var(--text-muted)}.camera-note{display:grid;gap:.2rem;padding:.95rem 1rem;border-radius:var(--radius-md);border:1px solid #bfdbfe;background:var(--light-blue-subtle);color:var(--text-secondary)}.camera-note strong{color:var(--primary-blue)}.assignment-form{gap:1rem}.assignment-meta{display:flex;flex-wrap:wrap;gap:.55rem}.assignment-chip{display:inline-flex;align-items:center;min-height:36px;padding:.45rem .8rem;border-radius:999px;border:1px solid #bfdbfe;background:#eff6ff;color:var(--primary-blue);font-size:.82rem;font-weight:700}.assignment-chip-count{background:#f8fafc;border-color:#dbe8fb;color:var(--text-secondary)}.assignment-panel{padding:1rem;border:1px solid #dbe8fb;border-radius:18px;background:linear-gradient(180deg,#fff,#f8fbff);box-shadow:inset 0 1px #fffc}.assignment-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem}.assignment-footer{display:grid;grid-template-columns:minmax(220px,.9fr) minmax(0,1.1fr);gap:1rem;align-items:start}.assignment-notes textarea{min-height:108px}.locked-input,.locked-input:disabled,input.locked-input:disabled{background:linear-gradient(180deg,#f8fafc,#f1f5f9);color:var(--primary-blue);border-color:#cbd5e1;cursor:not-allowed;opacity:1;font-weight:700}.modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:50;display:grid;place-items:center;padding:1rem;background:#0f172ab8;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.modal-card{width:min(780px,100%);max-width:100%;max-height:min(90vh,960px);overflow:auto;border-radius:22px;padding:1.2rem;border-color:#dbe8fb;background:linear-gradient(180deg,#fffffffc,#f8fbfffa)}.modal-header{display:flex;align-items:center;justify-content:space-between;gap:1rem;margin-bottom:1rem;padding-bottom:.95rem;border-bottom:1px solid #e2e8f0}.modal-header h3{margin:0;color:var(--primary-blue);font-size:1.15rem}.confirm-dialog{display:grid;gap:1rem}.confirm-dialog>p:first-child{color:var(--text-secondary);line-height:1.6}.toast-stack{position:fixed;right:1rem;bottom:1rem;z-index:60;display:grid;gap:.75rem;width:min(360px,calc(100vw - 2rem))}.toast{border-radius:var(--radius-lg);padding:.95rem 1rem;color:#fff;box-shadow:var(--shadow-lg);border:1px solid rgba(255,255,255,.18);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.toast-success{background:linear-gradient(90deg,#15803d,#16a34a)}.camera-preview,.image-preview{width:100%;min-height:260px;border-radius:var(--radius-lg);background:#0f172a;object-fit:cover}.photo-source-switch{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.75rem}.photo-source-switch .secondary-button.active-mode{background:var(--light-blue-bg);border-color:var(--accent-blue);color:var(--accent-blue-hover);box-shadow:inset 0 0 0 1px #2563eb1f}.photo-picker,.camera-stage{display:grid;gap:.85rem;padding:1rem;border:1px solid #dbe8fb;border-radius:18px;background:linear-gradient(180deg,#fffffffa,#f4f9fffa)}.photo-picker-label{font-size:.95rem;font-weight:700;color:var(--primary-blue)}.photo-picker small{color:var(--text-muted);line-height:1.45}.camera-stage .camera-actions{width:100%}.camera-placeholder{min-height:260px;display:grid;place-items:center;gap:.45rem;padding:1rem;border-radius:var(--radius-lg);border:1px dashed #93c5fd;background:linear-gradient(180deg,#eff6ff,#dbeafe);text-align:center}.camera-placeholder strong{color:var(--primary-blue)}.camera-placeholder span{color:var(--text-secondary);max-width:28rem}.login-shell{min-height:100vh;display:grid;place-items:center;padding:1.5rem;background:linear-gradient(180deg,#eff6ff,#f8fafc)}.login-card{width:min(560px,100%);border-radius:24px;padding:2rem;border-color:#dbe8fb;background:linear-gradient(180deg,#fffffffc,#f8fbfff5);box-shadow:0 18px 42px #0f172a1a}.login-card h1{margin:.3rem 0 0;color:var(--primary-blue)}.login-copy{color:var(--text-secondary);line-height:1.6}.stat-strip{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.9rem}.stat-card{display:grid;gap:.32rem;min-width:0;padding:1.05rem 1.08rem;border-radius:18px;border:1px solid #dbe8fb;background:linear-gradient(180deg,#fff,#f5f9ff);box-shadow:0 12px 28px #0f172a0d}.stat-label{color:var(--text-muted);font-size:.76rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase}.stat-value{font-size:clamp(1.3rem,2vw,1.9rem);font-weight:700;color:var(--primary-blue)}.stat-note{color:var(--text-secondary);font-size:.92rem}.table-meta{display:flex;justify-content:space-between;align-items:center;gap:1rem;min-width:0;padding:.15rem .35rem 1rem;color:var(--text-muted);font-size:.84rem;border-top:1px solid #f1f5f9;border-bottom:1px solid #eaf1fb;margin-bottom:.24rem}.table-meta>*{min-width:0;overflow-wrap:anywhere}.table-meta strong{color:var(--primary-blue)}.table-card table{background:#fff;border-radius:18px;overflow:hidden;position:relative}.table-card thead th{position:sticky;top:0;z-index:1}.table-card thead th{padding-top:.82rem;padding-bottom:.82rem}.table-card tbody td{background:#ffffffeb}.table-card tbody tr:nth-child(2n) td{background:#f8fbfff0}.table-card tbody tr:last-child td{border-bottom:none}.table-card tbody tr.group-divider td{padding:.78rem .9rem .42rem;border-bottom:none;background:transparent}.table-group-chip{display:inline-flex;align-items:center;min-height:30px;padding:.32rem .72rem;border-radius:999px;border:1px solid #bfdbfe;background:linear-gradient(180deg,#eff6ff,#dbeafe);color:var(--primary-blue);font-size:.76rem;font-weight:800;letter-spacing:.02em}.table-card tbody tr.group-start td{border-top:10px solid #eef4ff}.table-card tbody tr.group-start:hover td{background:#f8fbfff5}.table-card .entity-cell{padding-right:.2rem}.dashboard-page-layout{gap:1.1rem}.dashboard-utility-row{display:grid;grid-template-columns:minmax(0,1.65fr) minmax(320px,.9fr);gap:1.1rem;align-items:start}.dashboard-utility-row>*{min-width:0;align-self:start}.dashboard-utility-row-single{grid-template-columns:minmax(0,420px)}.dashboard-main-column{min-width:0;display:grid;gap:1rem;align-content:start}.dashboard-main-column-full{width:100%}.dashboard-summary-stack{display:grid;grid-template-columns:minmax(240px,.85fr) minmax(0,1.15fr);gap:1rem;align-items:stretch}.dashboard-summary-stack>*{min-width:0}.dashboard-side-card{display:grid;gap:.95rem;padding:1.08rem;border-radius:20px;border:1px solid #dbe8fb;background:linear-gradient(180deg,#fff,#f8fbff);box-shadow:0 14px 30px #0f172a0f;position:relative;isolation:isolate;overflow:hidden}.dashboard-total-card{display:grid;place-items:center;gap:.35rem;min-height:100%;padding:1.4rem 1.05rem;border-radius:20px;border:1px solid color-mix(in srgb,var(--page-accent) 16%,white);background:linear-gradient(180deg,color-mix(in srgb,var(--page-accent-soft) 55%,white),color-mix(in srgb,var(--page-accent-soft) 82%,white));text-align:center;position:relative;isolation:isolate;overflow:hidden}.dashboard-total-kicker{color:var(--page-accent);font-size:.74rem;font-weight:800;letter-spacing:.12em;text-transform:uppercase}.dashboard-total-label{color:var(--text-muted);font-size:.75rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase}.dashboard-total-value{font-size:clamp(2.1rem,3vw,2.8rem);font-weight:800;line-height:1;color:#1d4ed8}.dashboard-total-note{color:var(--text-secondary);font-size:.9rem}.dashboard-side-header{display:flex;align-items:center;justify-content:space-between;gap:.75rem;min-width:0}.dashboard-side-header>*{min-width:0}.dashboard-side-header h3{margin:0;color:var(--primary-blue);font-size:1rem}.dashboard-side-header span{color:var(--text-muted);font-size:.82rem;font-weight:600}.dashboard-side-copy{margin:0;color:var(--text-secondary);line-height:1.55;font-size:.92rem}.dashboard-metric-list{display:grid;gap:.8rem}.dashboard-metric-item{display:grid;gap:.22rem;min-width:0;padding:.8rem .85rem;border-radius:14px;background:#f8fbff;border:1px solid #e2e8f0}.dashboard-metric-label{color:var(--text-muted);font-size:.74rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase}.dashboard-metric-value{color:var(--primary-blue);font-size:1.25rem;line-height:1.1}.dashboard-metric-note{color:var(--text-secondary);font-size:.86rem}.action-buttons-card{align-content:start;min-height:100%}.dashboard-action-stack{display:grid;gap:.75rem;min-width:0}.dashboard-action-stack>*{width:100%;min-width:0;justify-content:flex-start;text-align:left}.dashboard-action-stack .secondary-button,.dashboard-action-stack .ghost-button,.dashboard-action-stack .primary-button,.dashboard-action-stack .danger-button,.dashboard-action-stack .nav-button{min-height:46px;border-radius:14px;padding-inline:1rem}.dashboard-action-stack .secondary-button:hover,.dashboard-action-stack .ghost-button:hover,.dashboard-action-stack .primary-button:hover,.dashboard-action-stack .danger-button:hover,.dashboard-action-stack .nav-button:hover{transform:translate(4px)}.dashboard-page-layout.tone-setup .dashboard-action-stack>*{border-left-width:3px}.dashboard-page-layout.tone-ops .dashboard-action-stack>*{border-left-width:3px}.section-heading{padding:0}.section-heading-simple{padding:1rem 1.1rem}.section-heading h2{margin:0;color:var(--primary-blue);font-size:clamp(1.4rem,2.3vw,1.8rem)}.section-heading-copy{padding:1.2rem 1.25rem;border-radius:20px;border:1px solid #dbe8fb;background:linear-gradient(180deg,#fffffffc,#f8fbfff7);box-shadow:0 14px 30px #0f172a0d;position:relative;isolation:isolate;overflow:hidden}.section-heading-topline{display:flex;align-items:center;justify-content:space-between;gap:.8rem;min-width:0;flex-wrap:wrap}.section-heading-topline>*{min-width:0}.section-guidance{display:inline-flex;align-items:center;gap:.35rem;padding:.32rem .72rem;border-radius:999px;border:1px solid var(--page-accent-soft);background:color-mix(in srgb,var(--page-accent-soft) 62%,white);color:var(--page-accent);font-size:.78rem;font-weight:700}.section-heading-copy h2{margin:0}.section-heading-copy p:last-child{margin:0;color:var(--text-secondary);line-height:1.62;max-width:72ch}.entity-cell{display:grid;min-width:0}.entity-copy{display:grid;gap:.16rem;min-width:0}.entity-copy strong{color:var(--primary-blue);font-size:.94rem;overflow-wrap:anywhere}.entity-copy span{color:var(--text-muted);font-size:.8rem;overflow-wrap:anywhere}@media (max-width: 1180px){.page-main{padding:18px 22px 36px}}@media (max-width: 980px){.stat-strip,.dashboard-utility-row,.dashboard-summary-stack{grid-template-columns:1fr}.dashboard-utility-row>*,.dashboard-summary-stack>*{align-self:stretch}.dashboard-utility-row-single{grid-template-columns:1fr}.section-heading,.page-header{align-items:flex-start}}@media (max-width: 920px){.table-card{padding:.85rem;overflow:visible}.table-card-header{padding-bottom:.75rem}.table-card table,.table-card thead,.table-card tbody,.table-card tr,.table-card th,.table-card td{display:block;width:100%;min-width:0}.table-card thead{display:none}.table-card tbody{display:grid;gap:.9rem}.table-card tr{padding:.9rem;border-radius:var(--radius-lg);background:#fff;border:1px solid var(--border-light);box-shadow:var(--shadow-sm)}.table-card tr.group-divider{padding:0;border:none;background:transparent;box-shadow:none}.table-card tr.group-divider td{padding:0 0 .2rem;border:none}.table-card tr.group-start{margin-top:.2rem;box-shadow:0 0 0 2px #eef4ff,var(--shadow-sm)}.table-card td{display:grid;grid-template-columns:minmax(108px,132px) minmax(0,1fr);gap:.8rem;align-items:start;padding:.48rem 0;border-bottom:1px solid var(--border-light);overflow-wrap:anywhere}.table-card td .entity-cell{gap:.35rem}.table-card td:last-child{border-bottom:none;padding-bottom:0}.table-card td:before{content:attr(data-label);color:var(--text-muted);font-size:.72rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase}.table-card-header{padding:0 0 .85rem}.table-meta{flex-direction:column;align-items:flex-start;padding:0 0 .9rem}}@media (max-width: 820px){.navbar-main{align-items:flex-start}.navbar-center{display:none}.navbar-right{width:100%}.navbar-org-select{flex:1 1 220px}.navbar-org-select select{min-width:0;width:100%}.navbar-mobile-nav{display:none;width:100%;padding-top:.15rem;border-top:1px solid #e2e8f0}.navbar.nav-open .navbar-mobile-nav{display:block}.workspace-top,.page-header,.page-section,.dashboard-utility-row,.dashboard-summary-stack,.dashboard-main-column{overflow:visible}body:before{opacity:.55}.page-main{padding:16px 16px 32px}.navbar{padding:10px 16px;gap:.85rem}.navbar-logo{font-size:15px}.navbar-org-name{font-size:1.08rem;letter-spacing:.04em}.navbar-admin-name,.navbar-subtitle{font-size:.82rem}.nav-menu-button,.nav-close-button{display:inline-flex}.page-header h1{font-size:clamp(1.25rem,5vw,1.55rem)}.header-subcopy,.dashboard-side-copy,.section-heading-copy p:last-child{font-size:.9rem}.section-nav-card{position:absolute;top:calc(100% + 10px);left:0;right:0;z-index:35;padding:.9rem;border:1px solid #dbe8fb;border-radius:16px;background:#fffffffc;box-shadow:0 18px 34px #0f172a1f;transform:translateY(-8px);opacity:0;pointer-events:none;transition:opacity .18s ease,transform .18s ease}.page-header.nav-open .section-nav-card{transform:translateY(0);opacity:1;pointer-events:auto}.nav-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:25;display:block;border:none;background:#0f172a47}.content-stack{gap:.9rem}.section-heading-copy,.section-heading,.card,.login-card,.modal-card{border-radius:16px}.section-heading,.toolbar,.modal-actions,.camera-actions{flex-direction:column;align-items:stretch}.navbar-right,.toolbar,.row-actions,.modal-actions,.camera-actions,.table-meta{width:100%}.navbar-right>*,.toolbar>*,.row-actions>*,.modal-actions>*,.camera-actions>*,.section-nav>*{width:100%}.row-actions{flex-direction:column;align-items:stretch}}@media (max-width: 680px){.login-shell,.modal-backdrop{padding:.8rem}.photo-source-switch{grid-template-columns:1fr}.camera-preview,.image-preview,.camera-placeholder{min-height:220px}.login-card{padding:1.4rem}.login-card h1,.modal-header h3,.dashboard-total-value{word-break:break-word}.form-grid,.assignment-grid,.assignment-footer{grid-template-columns:1fr}.table-card{padding:.72rem}.table-card tr{padding:.82rem}.table-card td{grid-template-columns:1fr;gap:.35rem}.table-card td:before{margin-bottom:.12rem}.table-meta{gap:.35rem;font-size:.8rem}.toast-stack{right:.8rem;left:.8rem;bottom:.8rem;width:auto}}@media (max-width: 520px){body:before{display:none}.page-main{padding:12px 12px 28px}.navbar{padding:9px 12px}.page-header,.card,.table-card,.login-card,.modal-card{border-radius:14px}.page-header,.card,.modal-card,.login-card{padding:.85rem}.section-nav-card{top:calc(100% + 8px);padding:.78rem}.nav-button,.secondary-button,.ghost-button,.primary-button,.danger-button{min-height:42px;font-size:.88rem}.dashboard-total-card,.dashboard-side-card,.stat-card{padding:.9rem}.status-badge,.pill{width:fit-content;max-width:100%}}.stack-gap-lg{display:grid;gap:1.25rem}
