:root{color-scheme:light;--bg:#f3f7fc;--bg-overlay:#dce9f8;--surface:#ffffff;--surface-alt:#f8fbff;--surface-strong:#e9f2fd;--text:#0d2340;--muted:#4f6684;--line:#c7d7ee;--line-strong:#8eb0df;--primary:#004b8d;--primary-hover:#003a6c;--accent:#f5b400;--danger:#c62828;--danger-bg:#ffebee;--success:#15663b;--success-bg:#e8f7ef;--radius:16px;--shadow-soft:0 10px 24px rgba(128,27,27,0.12);--shadow-lift:0 16px 34px rgba(120,16,25,0.16);--font-sans:"Avenir Next","Avenir","Trebuchet MS","Segoe UI","Helvetica Neue",sans-serif;--font-mono:"Menlo","Consolas","Liberation Mono",monospace}@media (prefers-color-scheme:dark){:root{--bg:#08111f;--bg-overlay:#112a48;--surface:#0d1b30;--surface-alt:#13243c;--surface-strong:#19314f;--text:#e7f1ff;--muted:#a4bddf;--line:#274569;--line-strong:#3b6697;--primary:#2a76c9;--primary-hover:#4691e2;--accent:#f5b400;--danger:#ff6b6b;--danger-bg:#3a1f24;--success:#6ad49b;--success-bg:#123927;--shadow-soft:0 10px 24px rgba(0,0,0,0.35);--shadow-lift:0 16px 34px rgba(0,0,0,0.4)}body{background:radial-gradient(circle at 6% 8%,rgba(24,57,99,.45) 0,transparent 38%),radial-gradient(circle at 88% 18%,rgba(22,49,88,.35) 0,transparent 35%),linear-gradient(135deg,#08111f,#0d1a2d)}.sidebar{background:linear-gradient(180deg,#0b192d,#102139)}.topbar-hero{background:linear-gradient(120deg,rgba(16,30,50,.96),rgba(12,24,42,.98)),radial-gradient(circle at 92% 2%,rgba(42,118,201,.3),transparent 36%)}.card{background:linear-gradient(160deg,#0f1e35,#132743)}.supervisor-welcome{background:linear-gradient(145deg,rgba(15,31,52,.96),rgba(12,26,45,.98)),radial-gradient(circle at 94% 8%,rgba(245,180,0,.22),transparent 30%)}.supervisor-focus-card{background:linear-gradient(150deg,#142845,#183153)}input,select,textarea{background:#0f2038;color:var(--text)}.attachment-chip,.audit-item,.entity-row{background:#12243d}.error-box{color:#ffc1c1;border-color:#7b3741}.success-box{color:#8be7b3;border-color:#2f6b4d}}:root[data-theme=dark]{color-scheme:dark;--bg:#08111f;--bg-overlay:#112a48;--surface:#0d1b30;--surface-alt:#13243c;--surface-strong:#19314f;--text:#e7f1ff;--muted:#a4bddf;--line:#274569;--line-strong:#3b6697;--primary:#2a76c9;--primary-hover:#4691e2;--accent:#f5b400;--danger:#ff6b6b;--danger-bg:#3a1f24;--success:#6ad49b;--success-bg:#123927;--shadow-soft:0 10px 24px rgba(0,0,0,0.35);--shadow-lift:0 16px 34px rgba(0,0,0,0.4)}:root[data-theme=dark] body{background:radial-gradient(circle at 6% 8%,rgba(24,57,99,.45) 0,transparent 38%),radial-gradient(circle at 88% 18%,rgba(22,49,88,.35) 0,transparent 35%),linear-gradient(135deg,#08111f,#0d1a2d)}:root[data-theme=dark] .sidebar{background:linear-gradient(180deg,#0b192d,#102139)}:root[data-theme=dark] .topbar-hero{background:linear-gradient(120deg,rgba(16,30,50,.96),rgba(12,24,42,.98)),radial-gradient(circle at 92% 2%,rgba(42,118,201,.3),transparent 36%)}:root[data-theme=dark] .card{background:linear-gradient(160deg,#0f1e35,#132743)}:root[data-theme=dark] .supervisor-welcome{background:linear-gradient(145deg,rgba(15,31,52,.96),rgba(12,26,45,.98)),radial-gradient(circle at 94% 8%,rgba(245,180,0,.22),transparent 30%)}:root[data-theme=dark] .supervisor-focus-card{background:linear-gradient(150deg,#142845,#183153)}:root[data-theme=dark] input,:root[data-theme=dark] select,:root[data-theme=dark] textarea{background:#0f2038;color:var(--text)}:root[data-theme=dark] .attachment-chip,:root[data-theme=dark] .audit-item,:root[data-theme=dark] .entity-row{background:#12243d}:root[data-theme=dark] .error-box{color:#ffc1c1;border-color:#7b3741}:root[data-theme=dark] .success-box{color:#8be7b3;border-color:#2f6b4d}:root[data-theme=light]{color-scheme:light}:root[data-theme=light] body{background:radial-gradient(circle at 6% 8%,var(--bg-overlay) 0,transparent 38%),radial-gradient(circle at 88% 18%,#d7e6f8 0,transparent 35%),linear-gradient(135deg,var(--bg) 0,#edf4fd 100%)}:root[data-theme=light] .sidebar{background:linear-gradient(180deg,#f5faff,#eaf3ff)}:root[data-theme=light] .topbar-hero{background:linear-gradient(120deg,rgba(255,255,255,.96),rgba(245,250,255,.98)),radial-gradient(circle at 92% 2%,rgba(0,75,141,.15),transparent 36%)}:root[data-theme=light] .card{background:linear-gradient(160deg,var(--surface),#f6fbff)}:root[data-theme=light] .supervisor-welcome{background:linear-gradient(145deg,rgba(255,255,255,.96),rgba(244,250,255,.98)),radial-gradient(circle at 94% 8%,rgba(0,75,141,.18),transparent 30%)}:root[data-theme=light] .supervisor-focus-card{background:linear-gradient(150deg,#fff,#eef6ff)}*{box-sizing:border-box}body,html{margin:0;min-height:100%}body{font-family:var(--font-sans);color:var(--text);background:radial-gradient(circle at 6% 8%,var(--bg-overlay) 0,transparent 38%),radial-gradient(circle at 88% 18%,#d7e6f8 0,transparent 35%),linear-gradient(135deg,var(--bg) 0,#edf4fd 100%)}a{color:inherit}h1,h2,h3,p{margin:0}main{width:min(1160px,100% - 2rem);margin:0 auto;padding:2rem 0 3rem}.workspace-shell{min-height:100dvh;display:grid;grid-template-columns:280px minmax(0,1fr)}.sidebar{border-right:1px solid var(--line);background:linear-gradient(180deg,#f5faff,#eaf3ff);padding:1.2rem 1rem;display:flex;flex-direction:column;gap:1rem;position:-webkit-sticky;position:sticky;top:0;max-height:100dvh}.sidebar-header{display:flex;justify-content:space-between;align-items:flex-start;gap:1rem}.sidebar-toggle{display:none}.sidebar-brand h2{font-size:1.1rem}.sidebar-nav{display:grid;grid-gap:.35rem;gap:.35rem}.theme-toggle{display:inline-flex;align-items:center;gap:.65rem;border:1px solid var(--line);border-radius:999px;padding:.45rem .7rem;background:var(--surface-alt);color:var(--text);cursor:pointer}.theme-toggle-track{width:42px;height:24px;border-radius:999px;background:rgba(0,75,141,.16);border:1px solid var(--line);position:relative;flex-shrink:0;transition:background .2s ease}.theme-toggle-track.is-dark{background:rgba(42,118,201,.28)}.theme-toggle-thumb{position:absolute;top:2px;left:2px;width:18px;height:18px;border-radius:50%;background:var(--surface);box-shadow:var(--shadow-soft);transition:transform .2s ease}.theme-toggle-track.is-dark .theme-toggle-thumb{transform:translateX(18px)}.sidebar-tree{gap:.7rem}.sidebar-group{display:grid;grid-gap:.35rem;gap:.35rem}.sidebar-group-title{font-size:.78rem;font-weight:700;color:var(--muted);text-transform:uppercase;letter-spacing:.06em;display:inline-flex;align-items:center;gap:.35rem}.sidebar-submenu{display:grid;grid-gap:.25rem;gap:.25rem;padding-left:.45rem;border-left:2px solid var(--line)}.sidebar-link{text-decoration:none;border-radius:12px;padding:.55rem .7rem;border:1px solid transparent;background:transparent;color:inherit;text-align:left}.sidebar-link:hover{background:#edf5ff;border-color:var(--line)}.sidebar-link.active{background:#e2efff;border-color:var(--line-strong);font-weight:700}.sidebar-subitem{font-size:.92rem}.icon{width:18px;height:18px;flex-shrink:0}.icon-sm{width:15px;height:15px;flex-shrink:0}.icon-label{display:inline-flex;align-items:center;gap:.45rem}.sidebar-logout{margin-top:auto}.workspace-main{padding:1.4rem 1.4rem 2rem;display:grid;grid-gap:1.1rem;gap:1.1rem}.auth-shell{min-height:100dvh;display:grid;place-items:center}.auth-card{width:min(520px,100%);padding:2rem;border-radius:var(--radius);background:linear-gradient(145deg,var(--surface),var(--surface-alt));border:1px solid var(--line);box-shadow:var(--shadow-lift);display:grid;grid-gap:1rem;gap:1rem}.auth-intro{display:grid;grid-gap:.55rem;gap:.55rem}.auth-feature-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-gap:.75rem;gap:.75rem}.auth-feature{border:1px solid var(--line);border-radius:14px;background:var(--surface-alt);padding:.85rem;display:grid;grid-gap:.35rem;gap:.35rem;font-size:.9rem}.auth-demo-box{border:1px dashed var(--line-strong);border-radius:14px;background:rgba(255,255,255,.72);padding:.9rem 1rem;display:grid;grid-gap:.3rem;gap:.3rem}.app-shell{display:grid;grid-gap:1.1rem;gap:1.1rem}.topbar{display:flex;justify-content:space-between;align-items:flex-start;gap:1rem;padding:1.2rem 1.3rem;border-radius:var(--radius);border:1px solid var(--line);background:var(--surface)}.topbar-hero{background:linear-gradient(120deg,rgba(255,255,255,.96),rgba(245,250,255,.98)),radial-gradient(circle at 92% 2%,rgba(0,75,141,.15),transparent 36%);box-shadow:var(--shadow-soft)}.topbar-quick-actions{display:flex;gap:.6rem;flex-wrap:wrap}.panel-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:1rem;gap:1rem}.panel{border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);padding:1rem;display:grid;grid-gap:.85rem;gap:.85rem;box-shadow:var(--shadow-soft)}.panel.subdued{background:var(--surface-alt)}.panel-highlight{background:linear-gradient(140deg,rgba(255,255,255,.97),rgba(241,248,255,.98)),radial-gradient(circle at top right,rgba(245,180,0,.16),transparent 28%)}.stack{display:grid;grid-gap:.8rem;gap:.8rem}.stack-lg{display:grid;grid-gap:1rem;gap:1rem}.section-head{display:flex;justify-content:space-between;align-items:center;gap:.8rem}.filters-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));grid-gap:.8rem;gap:.8rem;align-items:end}.filters-query{grid-column:span 2}.filters-actions{justify-content:flex-end}.card-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-gap:1rem;gap:1rem}.card-link{text-decoration:none}.card{border:1px solid var(--line);border-radius:var(--radius);background:linear-gradient(160deg,var(--surface),#f6fbff);padding:1rem;display:grid;grid-gap:.45rem;gap:.45rem;min-height:170px;transition:transform .2s ease,box-shadow .2s ease,border-color .2s ease}.card:hover{transform:translateY(-2px);box-shadow:var(--shadow-lift);border-color:var(--line-strong)}.kpi-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-gap:.9rem;gap:.9rem}.kpi-card{border:1px solid var(--line);border-radius:var(--radius);background:linear-gradient(160deg,var(--surface),var(--surface-strong));padding:.9rem 1rem;display:grid;grid-gap:.35rem;gap:.35rem}.kpi-card h2{font-size:clamp(1.3rem,2.5vw,1.8rem)}.kpi-icon{color:var(--primary)}.mini-grid{display:grid;grid-gap:.5rem;gap:.5rem}.entity-row{border:1px solid var(--line);border-radius:12px;padding:.65rem .75rem;background:var(--surface-alt);display:flex;justify-content:space-between;align-items:center;gap:.7rem}.entity-link{text-decoration:none;color:inherit}.card-list{gap:.8rem}.project-card-row{align-items:stretch;padding:.9rem 1rem}.project-card-main,.project-card-meta{display:grid;grid-gap:.35rem;gap:.35rem}.project-card-title{display:flex;align-items:center;gap:.55rem;flex-wrap:wrap}.metric-row{border:1px solid var(--line);border-radius:12px;padding:.8rem .9rem;background:var(--surface-alt);display:flex;justify-content:space-between;align-items:center;gap:.75rem}.summary-strip{display:flex;gap:.7rem;flex-wrap:wrap}.summary-chip{min-width:120px;border-radius:14px;border:1px solid var(--line);background:rgba(255,255,255,.72);padding:.75rem .85rem;display:grid;grid-gap:.2rem;gap:.2rem}.summary-chip strong{font-size:1rem}.results-note{margin-left:auto}.search-inline{min-width:min(280px,100%)}.align-right{text-align:right}label{display:grid;grid-gap:.36rem;gap:.36rem;font-size:.95rem}.checkbox-row{display:flex;align-items:center;gap:.6rem;font-size:.95rem}.checkbox-row input[type=checkbox]{width:18px;height:18px}button,input,select,textarea{font:inherit}input,select,textarea{width:100%;border:1px solid var(--line);border-radius:12px;padding:.62rem .75rem;background:#fff;color:var(--text)}input:focus,select:focus,textarea:focus{outline:none;border-color:rgba(0,75,141,.62);box-shadow:0 0 0 3px rgba(0,75,141,.16)}textarea{resize:vertical}.button-link,button{border:1px solid transparent;border-radius:11px;background:var(--primary);color:#fff;padding:.62rem 1rem;cursor:pointer;font-weight:700;text-decoration:none;display:inline-flex;align-items:center;justify-content:center}.button-link:hover,button:hover{background:var(--primary-hover)}.button-link.secondary{border:1px solid var(--line);background:transparent;color:var(--text)}.button-link.secondary:hover{background:var(--surface-alt)}button.secondary{background:transparent;border-color:var(--line);color:var(--text)}button.secondary:hover{background:var(--surface-alt)}button.danger{background:var(--danger)}button.danger:hover{background:#9d1f1f}button.danger.ghost{padding:.36rem .55rem;font-size:.82rem}button.align-left{justify-content:flex-start}button:disabled{opacity:.7;cursor:not-allowed}.entry-ops-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-gap:.7rem;gap:.7rem}.event-metrics{display:flex;gap:.45rem;flex-wrap:wrap}.dot{width:12px;height:12px;border-radius:50%;display:inline-block;margin-right:.5rem}.eyebrow{font-size:.78rem;letter-spacing:.08em;text-transform:uppercase}.eyebrow,.muted{color:var(--muted)}.small{font-size:.86rem}.error-box,.success-box{border-radius:12px;padding:.74rem .9rem;border:1px solid}.error-box{background:var(--danger-bg);color:#8d1f1f;border-color:#efc0c0}.success-box{background:var(--success-bg);color:var(--success);border-color:#bee7cd}.back-link{display:inline-block;margin-bottom:.5rem;text-decoration:none;color:var(--primary)}.entry-header{display:flex;justify-content:space-between;align-items:flex-start;gap:1rem}.timeline-card{position:relative;padding-left:1.1rem}.timeline-card:before{content:"";position:absolute;left:.2rem;top:1rem;width:8px;height:8px;border-radius:50%;background:var(--primary)}.entry-list{display:grid;grid-gap:.55rem;gap:.55rem}.entry-list-item{border:1px solid var(--line);border-radius:12px;background:var(--surface);padding:.4rem .55rem;display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;grid-gap:.3rem;gap:.3rem;box-shadow:none}.entry-list-item>form{grid-column:1/-1}.entry-list-button{width:100%;padding:0;border:0;color:inherit;display:grid;grid-template-columns:minmax(200px,240px) minmax(220px,320px) minmax(0,1fr);grid-template-areas:"headline category preview" "meta meta meta";grid-gap:.12rem .8rem;gap:.12rem .8rem;text-align:left;align-items:center;min-width:0}.entry-list-button,.entry-list-button:hover{background:transparent}.entry-list-top{display:contents}.entry-list-headline{display:flex;align-items:baseline;gap:.5rem;min-width:0;flex-wrap:wrap;grid-area:headline}.entry-list-date{font-size:.8rem;font-weight:700}.entry-list-preview{font-size:.84rem;line-height:1.2;color:var(--text);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;grid-area:preview;min-width:0}.entry-list-meta{display:flex;gap:.4rem;flex-wrap:wrap;color:var(--muted);font-size:.7rem;grid-area:meta}.entry-list-actions{gap:.3rem;justify-self:end}.entry-list-button>.badge,.entry-list-top .badge{grid-area:category;justify-self:start;max-width:100%}.supervisor-summary-strip{margin-top:.85rem}.supervisor-panel-grid{align-items:stretch}.supervisor-kpis{margin-top:.6rem}.supervisor-entry-grid{align-items:stretch}.supervisor-project-kpis{margin-top:.6rem}.supervisor-project-header{gap:.75rem}.client-dashboard-grid{align-items:stretch}.client-dashboard-intro{background:linear-gradient(145deg,rgba(255,255,255,.96),rgba(244,250,255,.98)),radial-gradient(circle at 88% 16%,rgba(0,75,141,.16),transparent 28%)}.client-dashboard-panel{border-color:var(--line-strong);background:linear-gradient(150deg,#fff,#eef6ff)}.client-project-row{align-items:center}.compact-button{padding:.26rem .55rem;border-radius:9px;font-size:.76rem;min-height:32px}.modal-backdrop{position:fixed;inset:0;background:rgba(7,16,31,.48);display:grid;place-items:center;padding:1rem;z-index:40}.modal-card{width:min(760px,100%);max-height:min(88dvh,920px);overflow:auto;border-radius:20px;border:1px solid var(--line);background:var(--surface);box-shadow:var(--shadow-lift);padding:1.2rem;display:grid;grid-gap:1rem;gap:1rem}.attachments{margin-top:.85rem;border-top:1px solid var(--line);padding-top:.75rem}.attachment-grid,.attachments{display:grid;grid-gap:.5rem;gap:.5rem}.attachment-chip{display:flex;flex-wrap:wrap;gap:.5rem;align-items:center;border-radius:10px;border:1px solid var(--line);padding:.45rem .6rem;background:var(--surface-alt)}.attachment-link{color:var(--primary);text-decoration:none;font-weight:600}.attachment-link:hover{text-decoration:underline}.audit-list{display:grid;grid-gap:.55rem;gap:.55rem}.audit-item{display:flex;justify-content:space-between;align-items:center;gap:.8rem;border:1px solid var(--line);border-radius:12px;padding:.62rem .75rem;background:var(--surface-alt)}.audit-title{font-weight:700}.supervisor-welcome{background:linear-gradient(145deg,rgba(255,255,255,.96),rgba(244,250,255,.98)),radial-gradient(circle at 94% 8%,rgba(0,75,141,.18),transparent 30%)}.supervisor-focus-card{border-color:var(--line-strong);background:linear-gradient(150deg,#fff,#eef6ff)}.badge{display:inline-flex;align-items:center;border-radius:999px;padding:.2rem .6rem;border:1px solid rgba(0,75,141,.35);background:rgba(0,75,141,.09);color:#0d3f72;font-size:.78rem;font-weight:700}.badge-success{border-color:rgba(21,102,59,.28);background:rgba(21,102,59,.12);color:var(--success)}.badge-warning{border-color:rgba(245,180,0,.45);background:rgba(245,180,0,.15);color:#7a5600}.badge-neutral{border-color:rgba(79,102,132,.28);background:rgba(79,102,132,.12);color:var(--muted)}.actions-inline{display:flex;gap:.55rem;flex-wrap:wrap}code{font-family:var(--font-mono);font-size:.9em}@media (max-width:1080px){.auth-feature-grid{grid-template-columns:1fr}.workspace-shell{grid-template-columns:220px minmax(0,1fr)}.card-grid,.filters-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.filters-actions,.filters-query{grid-column:span 2}}@media (max-width:820px){.workspace-shell{grid-template-columns:1fr}.sidebar{position:static;max-height:none;border-right:0;border-bottom:1px solid var(--line);gap:.8rem}.sidebar-toggle{display:inline-flex}.sidebar-logout,.sidebar-nav{display:none}.sidebar.sidebar-open .sidebar-logout,.sidebar.sidebar-open .sidebar-nav{display:grid}.workspace-main{padding:1rem 1rem 2rem}.card-grid,.entry-ops-grid,.filters-grid,.kpi-grid,.panel-grid{grid-template-columns:1fr}.filters-actions,.filters-query{grid-column:auto}.audit-item,.entity-row,.entry-header,.entry-list-top,.metric-row,.section-head,.topbar{flex-direction:column;align-items:flex-start}.entry-list-item{grid-template-columns:1fr;align-items:flex-start}.entry-list-button{grid-template-columns:1fr;grid-template-areas:"headline" "category" "preview" "meta";gap:.2rem}.entry-list-actions{justify-self:start}.align-right{text-align:left}.results-note{margin-left:0}.supervisor-kpis,.supervisor-panel-grid .supervisor-focus-card,.supervisor-summary-strip{display:none}.supervisor-entry-grid{display:flex;flex-direction:column;gap:1rem}.supervisor-entry-form{order:1}.supervisor-project-summary{order:2}.supervisor-project-kpis,.supervisor-project-overview{display:none}.supervisor-project-header{padding:1.1rem 1.2rem;min-height:unset}.supervisor-project-header .back-link,.supervisor-project-header .muted{display:none}.supervisor-project-header h1{font-size:clamp(2rem,8vw,2.6rem);line-height:.95;margin:0}.supervisor-project-header .back-link,.supervisor-project-header .muted{font-size:.95rem}}@media (prefers-color-scheme:dark){.sidebar{background:linear-gradient(180deg,#0b192d,#102139);border-right-color:#2e4f77}.sidebar-brand .eyebrow,.sidebar-brand h2,.sidebar-group-title{color:#dce9fc}.sidebar-submenu{border-left-color:#3f6694}.sidebar-link{color:#dbe9fc}.sidebar-link:hover{background:#152a47;border-color:#3f6694}.sidebar-link.active{background:#1d3558;border-color:#5c8bc4;color:#f2f8ff}.sidebar-logout.secondary{color:#dbe9fc;border-color:#3f6694;background:transparent}.sidebar-logout.secondary:hover{background:#152a47}.kpi-icon{color:#f5b400}}