:root{--canvas:#f8fafc;--surface:#fff;--surface-muted:#f1f5f9;--border:#e2e8f0;--border-strong:#64748b;--text:#0f172a;--text-muted:#475569;--cobalt:#2563eb;--cobalt-hover:#1d4ed8;--cobalt-soft:#eff6ff;--indigo:#4f46e5;--indigo-text:#3730a3;--indigo-soft:#eef2ff;--success:#166534;--success-soft:#dcfce7;--warning:#92400e;--warning-soft:#fef3c7;--danger:#b91c1c;--danger-soft:#fee2e2;color:var(--text);background:var(--canvas);font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}*{box-sizing:border-box}body{min-width:320px;margin:0}button,a{font:inherit}button{cursor:pointer}button:focus-visible,a:focus-visible{outline:3px solid var(--indigo);outline-offset:3px}.auth-page{place-items:center;min-height:100vh;padding:24px;display:grid}.auth-card{border:1px solid var(--border);background:var(--surface);border-radius:16px;width:min(460px,100%);padding:36px;box-shadow:0 16px 48px #0f172a14}.auth-card .brand-mark{color:#fff;background:var(--cobalt);border-radius:10px;place-items:center;width:40px;height:40px;margin-bottom:28px;display:grid}.auth-card h1{letter-spacing:-.035em;margin:0;font-size:28px}.auth-card p:not(.eyebrow){color:var(--text-muted);margin:14px 0 28px;line-height:1.55}.modal-backdrop{z-index:10;background:#0f172a73;place-items:center;padding:20px;display:grid;position:fixed;inset:0}.meeting-dialog{background:var(--surface);border-radius:16px;width:min(520px,100%);box-shadow:0 24px 80px #0f172a40}.meeting-dialog>header,.meeting-dialog footer{justify-content:space-between;align-items:center;gap:16px;padding:20px 24px;display:flex}.meeting-dialog>header{border-bottom:1px solid var(--border)}.meeting-dialog h2{margin:0;font-size:20px}.meeting-dialog form{gap:16px;padding:24px;display:grid}.meeting-dialog label{color:var(--text-muted);gap:7px;font-size:13px;font-weight:700;display:grid}.meeting-dialog input,.meeting-dialog select{border:1px solid var(--border-strong);width:100%;min-height:42px;color:var(--text);background:var(--surface);border-radius:8px;padding:0 11px}.meeting-dialog footer{padding:16px 0 0}.form-grid{grid-template-columns:1.4fr 1fr;gap:12px;display:grid}.form-error{color:var(--danger);margin:0;font-size:13px}.button-secondary{border:1px solid var(--border-strong);color:var(--text);background:var(--surface)}.app-shell{grid-template-columns:248px minmax(0,1fr);min-height:100vh;display:grid}.sidebar{color:#cbd5e1;background:#0f172a;flex-direction:column;padding:20px 12px;display:flex}.brand{color:#fff;align-items:center;gap:10px;padding:8px 12px 28px;font-weight:700;text-decoration:none;display:flex}.brand-mark{background:var(--cobalt);border-radius:8px;place-items:center;width:28px;height:28px;display:grid}.nav-list{gap:4px;display:grid}.nav-item{color:#cbd5e1;border-radius:8px;align-items:center;gap:12px;min-height:44px;padding:0 12px;font-size:14px;font-weight:600;text-decoration:none;display:flex}.nav-item:hover{color:#fff;background:#1e293b}.nav-item.is-active{color:#fff;background:#1e3a8a}.sidebar-footer{border-top:1px solid #334155;margin-top:auto;padding:12px 4px 0}.workspace-switcher{align-items:center;gap:9px;padding:8px;display:flex}.workspace-switcher span:nth-child(2){flex:1;min-width:0}.workspace-switcher strong,.workspace-switcher small{text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.workspace-switcher strong{color:#fff;font-size:12px}.workspace-switcher small{color:#94a3b8;margin-top:2px;font-size:11px}.signout-button{color:#94a3b8;background:0 0;border:0;border-radius:7px;place-items:center;width:32px;height:32px;display:grid}.signout-button:hover{color:#fff;background:#334155}.content{width:min(1440px,100%);padding:40px clamp(24px,5vw,72px)}.topbar,.topbar-actions,.panel-heading,.meeting-row,.meeting-title,.task-card{align-items:center;display:flex}.topbar{justify-content:space-between;gap:24px;margin-bottom:32px}.eyebrow{color:var(--indigo);letter-spacing:.08em;text-transform:uppercase;margin:0 0 6px;font-size:12px;font-weight:800}.topbar h1,.panel h2,.panel h3,.metric-card p{margin:0}.topbar h1{letter-spacing:-.035em;font-size:clamp(26px,3vw,34px)}.topbar-actions{gap:12px}.api-state{color:var(--text-muted);align-items:center;gap:7px;font-size:13px;font-weight:600;display:flex}.api-state span{background:#22c55e;border-radius:50%;width:8px;height:8px}.button,.icon-button,.text-button{background:0 0;border:0}.button{border-radius:8px;justify-content:center;align-items:center;gap:8px;min-height:42px;padding:0 14px;font-size:14px;font-weight:700;display:inline-flex}.button-primary{color:#fff;background:var(--cobalt)}.button-primary:hover{background:var(--cobalt-hover)}.icon-button{border:1px solid var(--border-strong);width:42px;height:42px;color:var(--text-muted);background:var(--surface);border-radius:8px;place-items:center;display:inline-grid}.icon-button:hover{border-color:var(--text-muted);color:var(--text)}.text-button{color:var(--cobalt);font-size:13px;font-weight:700}.text-button:hover{color:var(--cobalt-hover);text-decoration:underline}.summary-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin-bottom:20px;display:grid}.metric-card,.panel{border:1px solid var(--border);background:var(--surface);border-radius:12px}.metric-card{min-height:156px;padding:20px}.metric-icon{border-radius:9px;place-items:center;width:36px;height:36px;margin-bottom:18px;display:grid}.metric-icon.cobalt{color:var(--cobalt);background:var(--cobalt-soft)}.metric-icon.indigo{color:var(--indigo);background:var(--indigo-soft)}.metric-icon.amber{color:var(--warning);background:var(--warning-soft)}.metric-card p{color:var(--text-muted);font-size:13px;font-weight:600}.metric-card strong{letter-spacing:-.03em;margin:5px 8px 0 0;font-size:28px;display:inline-block}.metric-card small{color:var(--text-muted);font-size:12px}.dashboard-grid{grid-template-columns:minmax(0,1.2fr) minmax(360px,.8fr);gap:20px;display:grid}.panel{overflow:hidden}.panel-heading{border-bottom:1px solid var(--border);justify-content:space-between;gap:16px;padding:22px 24px}.panel h2{letter-spacing:-.01em;font-size:16px}.panel-heading p{color:var(--text-muted);margin:4px 0 0;font-size:13px}.panel-message{color:var(--text-muted);margin:0;padding:24px;font-size:14px}.panel-error{color:var(--danger)}.detail-page{max-width:1120px;margin:0 auto}.breadcrumbs{color:var(--text-muted);gap:8px;margin-bottom:12px;font-size:13px;display:flex}.breadcrumbs a,.back-link{color:var(--cobalt);font-weight:700;text-decoration:none}.back-link{margin-bottom:22px;display:inline-block}.detail-header{justify-content:space-between;align-items:flex-start;gap:20px;margin-bottom:28px;display:flex}.detail-header h1{letter-spacing:-.035em;margin:0;font-size:clamp(28px,4vw,40px)}.detail-header p{color:var(--text-muted);flex-wrap:wrap;align-items:center;gap:7px;margin:10px 0 0;display:flex}.detail-stack{gap:20px;display:grid}.detail-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;display:grid}.detail-section{border:1px solid var(--border);background:var(--surface);border-radius:12px;padding:24px}.detail-section-heading{justify-content:space-between;align-items:flex-start;gap:12px;margin-bottom:16px;display:flex}.detail-section h2{margin:0;font-size:18px}.participant-list,.detail-task-list,.instance-list,.agenda-list,.dependency-list,.standing-agenda-list{gap:10px;margin:0;padding:0;list-style:none;display:grid}.participant-list li,.detail-task-list li,.instance-list li,.dependency-list li,.standing-agenda-list li{border-top:1px solid var(--border);align-items:center;gap:10px;padding:10px 0;display:flex}.participant-list li:first-child,.detail-task-list li:first-child,.instance-list li:first-child,.dependency-list li:first-child,.standing-agenda-list li:first-child{border-top:0}.participant-list li>span:nth-child(2),.instance-list li>span,.dependency-list li>span,.standing-agenda-list li>span{flex:1;min-width:0}.participant-list strong,.participant-list small,.instance-list strong,.instance-list small,.dependency-list strong,.dependency-list small,.standing-agenda-list strong,.standing-agenda-list small{display:block}.participant-list small,.instance-list small,.dependency-list small,.standing-agenda-list small{color:var(--text-muted);margin-top:2px;font-size:12px}.detail-task-list strong{flex:1;font-size:14px}.participant-controls,.inline-form{border-top:1px solid var(--border);align-items:end;gap:12px;margin-top:16px;padding-top:16px;display:flex}.participant-controls label,.inline-form label{color:var(--text-muted);flex:1;gap:6px;font-size:13px;font-weight:700;display:grid}.participant-controls select,.inline-form input,.inline-form select{border:1px solid var(--border-strong);min-height:42px;color:var(--text);background:var(--surface);border-radius:8px;padding:0 10px}.empty-state{color:var(--text-muted);margin:0;padding:20px 0;line-height:1.5}.danger-button{color:var(--danger);margin-left:auto}.danger-icon{color:var(--danger)}.agenda-section{padding-bottom:20px}.agenda-list{gap:8px}.agenda-item{border-top:1px solid var(--border);grid-template-columns:28px 34px minmax(0,1fr) 42px;align-items:center;gap:10px;min-height:58px;padding:8px 0;display:grid}.agenda-item:first-child{border-top:0}.agenda-item.is-dragging{opacity:.55}.agenda-order{height:28px;color:var(--text-muted);background:var(--surface-muted);border-radius:7px;place-items:center;font-size:12px;font-weight:800;display:grid}.agenda-title{min-width:0}.agenda-title strong,.agenda-title small{text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.agenda-title strong{font-size:14px}.agenda-title small{color:var(--text-muted);margin-top:3px;font-size:12px}.minutes-section textarea{resize:vertical;min-height:120px}.minutes-upload{grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:12px;display:grid}.minutes-upload label,.minutes-review label,.minutes-action label{color:var(--text-muted);gap:6px;font-size:13px;font-weight:700;display:grid}.minutes-upload textarea,.minutes-review textarea,.minutes-action input,.minutes-action select{border:1px solid var(--border-strong);width:100%;color:var(--text);background:var(--surface);font:inherit;border-radius:8px;padding:10px}.minutes-status{color:var(--success);align-items:center;gap:7px;margin:14px 0 0;font-size:13px;font-weight:700;display:flex}.minutes-status.is-error{color:var(--danger)}.minutes-review{gap:18px;margin-top:18px;display:grid}.minutes-columns{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;display:grid}.minutes-columns h3,.minutes-actions h3{margin:0 0 10px;font-size:15px}.minutes-note,.minutes-action{border:1px solid var(--border);background:var(--surface-muted);border-radius:8px;gap:8px;padding:12px;display:grid}.minutes-note+.minutes-note,.minutes-action+.minutes-action{margin-top:8px}.minutes-note strong{font-size:14px}.minutes-note p{color:var(--text-muted);margin:0;font-size:13px}.minutes-note small,.minutes-action small{color:var(--text-muted);font-size:12px;line-height:1.45}.minutes-action{grid-template-columns:minmax(0,1.4fr) minmax(160px,.8fr) minmax(180px,.8fr);align-items:end}.minutes-action small{grid-column:1/-1}.minutes-footer{justify-content:flex-end;gap:10px;display:flex}.minutes-history{grid-column:1/-1}.minutes-search-form{grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:12px;margin-bottom:16px;display:grid}.minutes-search-form label{color:var(--text-muted);gap:6px;font-size:13px;font-weight:800;display:grid}.minutes-search-form input{border:1px solid var(--border-strong);min-height:42px;color:var(--text);background:var(--surface);border-radius:8px;padding:0 10px}.minutes-history-list{gap:10px;display:grid}.minutes-history-row{border-top:1px solid var(--border);grid-template-columns:24px minmax(0,1fr);gap:10px;padding:12px 0;display:grid}.minutes-history-row:first-child{border-top:0}.minutes-history-row a{color:var(--cobalt);text-decoration:none}.minutes-history-row a:hover{text-decoration:underline}.minutes-history-row strong,.minutes-history-row small{display:block}.minutes-history-row small{color:var(--text-muted);margin-top:3px;font-size:12px}.minutes-history-row p{color:var(--text-muted);margin:8px 0 0;font-size:13px;line-height:1.45}.minutes-history-row ul{color:var(--text-muted);gap:5px;margin:8px 0 0;padding-left:18px;font-size:12px;display:grid}.meeting-row{border-bottom:1px solid var(--border);gap:16px;min-height:94px;padding:16px 24px}.meeting-row:last-child{border-bottom:0}.meeting-row time{width:38px;color:var(--text-muted);font-size:13px;font-weight:700}.meeting-line{border-radius:3px;align-self:stretch;width:3px}.cobalt-line{background:var(--cobalt)}.indigo-line{background:var(--indigo)}.meeting-row>div{flex:1;min-width:0}.meeting-title{flex-wrap:wrap;gap:8px}.meeting-title h3,.task-card h3{font-size:14px}.meeting-row p,.task-card p{color:var(--text-muted);align-items:center;gap:5px;margin:6px 0 0;font-size:12px;display:flex}.badge{white-space:nowrap;border-radius:6px;align-items:center;gap:4px;width:fit-content;padding:4px 7px;font-size:11px;font-weight:800;display:inline-flex}.badge-indigo{color:var(--indigo-text);background:var(--indigo-soft)}.badge-warning{color:var(--warning);background:var(--warning-soft)}.badge-danger{color:var(--danger);background:var(--danger-soft)}.badge-neutral{color:var(--text-muted);background:var(--surface-muted)}.task-card{border-bottom:1px solid var(--border);gap:12px;padding:18px 24px}.task-card:last-child{border-bottom:0}.task-card>div{flex:1;min-width:0}.task-check{border:2px solid var(--border-strong);border-radius:50%;flex:none;width:18px;height:18px}.avatar{color:#fff;background:var(--indigo);border-radius:50%;place-items:center;width:28px;height:28px;font-size:10px;font-weight:800;display:inline-grid}.avatar-small{width:18px;height:18px;font-size:8px}.dot{color:#94a3b8}.kanban-section{margin-top:36px}.section-heading{justify-content:space-between;align-items:end;gap:24px;margin-bottom:16px;display:flex}.section-heading h2{letter-spacing:-.025em;margin:0;font-size:22px}.section-heading>p{color:var(--text-muted);margin:0;font-size:13px}.kanban-board{grid-template-columns:repeat(4,minmax(220px,1fr));gap:14px;padding-bottom:4px;display:grid;overflow-x:auto}.kanban-column{border:1px solid var(--border);background:var(--surface-muted);border-radius:12px;min-height:220px;padding:12px;transition:border-color .15s,background .15s}.kanban-column.is-over{border-color:var(--indigo);background:var(--indigo-soft)}.kanban-column header{justify-content:space-between;align-items:center;padding:2px 4px 12px;display:flex}.kanban-column h3{margin:0;font-size:13px}.kanban-column header span{min-width:22px;height:22px;color:var(--text-muted);background:var(--surface);border-radius:6px;place-items:center;font-size:11px;font-weight:800;display:grid}.kanban-cards{gap:10px;display:grid}.kanban-card{border:1px solid var(--border);background:var(--surface);border-radius:9px;gap:7px;min-height:132px;padding:12px 10px;display:flex;box-shadow:0 1px 2px #0f172a0a}.kanban-card.is-overdue{background:snow;border-color:#fecaca}.kanban-card.is-dragging{opacity:.5}.kanban-card>div{min-width:0}.kanban-card h3{margin:0;font-size:13px;line-height:1.35}.kanban-card p{color:var(--text-muted);align-items:center;gap:4px;margin:8px 0 0;font-size:11px;display:flex}.kanban-card-body{flex:1;align-content:start;gap:8px;display:grid}.kanban-card-meta{color:var(--text-muted);gap:5px;font-size:11px;display:grid}.kanban-card-meta span,.kanban-card-links,.kanban-card-links a{align-items:center;gap:5px;min-width:0;display:flex}.kanban-card-links{flex-wrap:wrap;margin-top:2px;font-size:11px;font-weight:800}.kanban-card-links a{color:var(--cobalt);text-decoration:none}.kanban-card-links a:hover{text-decoration:underline}.kanban-card-links span{color:var(--text-muted)}.is-danger{color:var(--danger)!important}.drag-handle{color:#94a3b8;cursor:grab;background:0 0;border:0;flex:none;place-items:center;width:22px;height:24px;padding:0;display:grid}.drag-handle:active{cursor:grabbing}.tasks-page{max-width:1240px;margin:0 auto}.task-summary{flex-wrap:wrap;justify-content:flex-end;gap:10px;display:flex}.task-summary span{border:1px solid var(--border);min-height:38px;color:var(--text-muted);background:var(--surface);border-radius:8px;align-items:baseline;gap:6px;padding:8px 10px;font-size:12px;font-weight:800;display:inline-flex}.task-summary strong{color:var(--text);font-size:18px}.task-controls input,.task-controls select{border:1px solid var(--border-strong);min-width:150px;min-height:38px;color:var(--text);background:var(--surface);border-radius:8px;padding:0 10px}.checkbox-label{border:1px solid var(--border);background:var(--surface-muted);border-radius:8px;min-height:38px;padding:0 10px}.checkbox-label input{min-width:auto}.task-create-panel{border:1px solid var(--border);background:var(--surface);border-radius:12px;grid-template-columns:180px minmax(0,1fr);align-items:end;gap:18px;margin-bottom:18px;padding:18px;display:grid}.task-create-panel h2{margin:0;font-size:18px}.task-create-panel form{grid-template-columns:minmax(180px,1.2fr) minmax(190px,1fr) minmax(160px,.8fr) minmax(180px,.8fr) auto;align-items:end;gap:12px;display:grid}.task-create-panel label{color:var(--text-muted);gap:6px;font-size:13px;font-weight:800;display:grid}.task-create-panel label svg{display:none}.task-create-panel input,.task-create-panel select{border:1px solid var(--border-strong);width:100%;min-height:42px;color:var(--text);background:var(--surface);border-radius:8px;padding:0 10px}.calendar-page{max-width:1180px;margin:0 auto}.calendar-topbar{margin-bottom:18px}.calendar-toolbar,.calendar-controls,.segmented-control,.calendar-event{align-items:center;display:flex}.calendar-toolbar{gap:10px}.calendar-toolbar>strong{text-align:center;text-transform:capitalize;min-width:180px}.calendar-controls{border:1px solid var(--border);background:var(--surface);border-radius:12px;flex-wrap:wrap;gap:12px;margin-bottom:18px;padding:14px}.calendar-controls label{color:var(--text-muted);align-items:center;gap:8px;font-size:13px;font-weight:700;display:flex}.calendar-controls select{border:1px solid var(--border-strong);min-width:170px;min-height:38px;color:var(--text);background:var(--surface);border-radius:8px;padding:0 10px}.segmented-control{border:1px solid var(--border);background:var(--surface-muted);border-radius:9px;gap:4px;padding:3px}.segmented-control button{min-height:32px;color:var(--text-muted);background:0 0;border:0;border-radius:7px;padding:0 12px;font-weight:800}.segmented-control button.is-selected{color:#fff;background:var(--cobalt)}.calendar-grid{gap:10px;display:grid}.calendar-grid.month{grid-template-columns:repeat(7,minmax(120px,1fr))}.calendar-grid.week{grid-template-columns:repeat(7,minmax(140px,1fr))}.calendar-day{border:1px solid var(--border);background:var(--surface);border-radius:10px;min-height:174px;padding:10px}.calendar-day.is-muted{background:var(--surface-muted)}.calendar-day header{justify-content:space-between;align-items:baseline;gap:8px;margin-bottom:10px;display:flex}.calendar-day header span{color:var(--text-muted);text-transform:capitalize;font-size:12px;font-weight:800}.calendar-day header strong{font-size:13px}.calendar-day-events,.calendar-list{gap:8px;display:grid}.calendar-empty{color:var(--text-muted);padding-top:8px;font-size:12px;display:block}.calendar-event{width:100%;min-height:34px;color:var(--text);border-radius:8px;gap:6px;padding:7px 8px;font-size:12px;line-height:1.25;text-decoration:none}.calendar-event.meeting{background:var(--cobalt-soft);cursor:grab}.calendar-event.meeting:active{cursor:grabbing}.calendar-event.task{background:var(--success-soft)}.calendar-event strong{text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;overflow:hidden}.calendar-event time{color:var(--text-muted);font-size:11px;font-weight:800}.calendar-list{border:1px solid var(--border);background:var(--surface);border-radius:12px;padding:8px}.calendar-list-row{border-bottom:1px solid var(--border);grid-template-columns:180px minmax(0,1fr);align-items:center;gap:12px;padding:10px;display:grid}.calendar-list-row:last-child{border-bottom:0}.calendar-list-row>time{color:var(--text-muted);text-transform:capitalize;font-size:13px;font-weight:800}@media (width<=1180px){.task-create-panel{grid-template-columns:1fr}.task-create-panel form{grid-template-columns:repeat(2,minmax(0,1fr))}.task-create-panel .button{width:fit-content}}@media (width<=980px){.app-shell{grid-template-columns:72px minmax(0,1fr)}.sidebar{padding-inline:10px}.brand{justify-content:center;padding-inline:0}.brand>span:last-child,.nav-item{justify-content:center;padding:0;font-size:0}.nav-item svg{width:20px;height:20px}.workspace-switcher>span:nth-child(2),.workspace-switcher>svg{display:none}.workspace-switcher{justify-content:center}.dashboard-grid{grid-template-columns:1fr}}@media (width<=700px){.app-shell{display:block}.sidebar{display:none}.content{padding:24px 16px}.topbar,.detail-header,.detail-section-heading{flex-direction:column;align-items:flex-start}.topbar-actions{flex-wrap:wrap;justify-content:flex-end}.api-state{display:none}.summary-grid,.detail-grid,.minutes-columns{grid-template-columns:1fr}.panel-heading,.meeting-row,.task-card{padding-inline:16px}.meeting-row{gap:10px}.meeting-row>.icon-button{display:none}.participant-controls,.inline-form,.minutes-upload,.minutes-footer{flex-direction:column;align-items:stretch}.minutes-upload,.minutes-action,.task-create-panel form{grid-template-columns:1fr}.task-create-panel .button{width:100%}.agenda-item{grid-template-columns:28px minmax(0,1fr) 42px}.agenda-order{display:none}.calendar-toolbar{justify-content:space-between;width:100%}.calendar-toolbar>strong{min-width:0}.calendar-controls{flex-direction:column;align-items:stretch}.calendar-controls label,.calendar-controls select,.task-controls input{width:100%}.calendar-grid.month,.calendar-grid.week{grid-template-columns:1fr}.calendar-day{min-height:132px}.calendar-list-row{grid-template-columns:1fr}}
