:root{--navy:#0b2545;--green:#1f5c46;--canvas:#f6f4ee;--ink:#0e1726;--text:#0e1726;--text-muted:#5a6474;--text-h:#0b2545;--bg:#f6f4ee;--bg-surface:#fff;--border:#dedad2;--accent:#1f5c46;--accent-bg:#1f5c4614;--accent-border:#1f5c464d;--primary:#0b2545;--primary-hover:#0d2e55;--shadow:#0b254514 0 10px 15px -3px, #0b25450a 0 4px 6px -2px;--sans:system-ui, "Segoe UI", Roboto, sans-serif;--heading:system-ui, "Segoe UI", Roboto, sans-serif;--mono:ui-monospace, Consolas, monospace;font:18px/145% var(--sans);letter-spacing:.18px;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light dark;color:var(--text);background:var(--bg);font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}@media (prefers-color-scheme:dark){:root{--lightningcss-light: ;--lightningcss-dark:initial}}@media (width<=1024px){:root{font-size:16px}}@media (prefers-color-scheme:dark){:root{--text:#d1cfc8;--text-muted:#8a8f9a;--text-h:#f6f4ee;--bg:#0d1a2e;--bg-surface:#122040;--border:#1e3050;--accent:#2a7a5e;--accent-bg:#1f5c4633;--accent-border:#1f5c4680;--primary:#1a3a6b;--primary-hover:#1f4580;--shadow:#0006 0 10px 15px -3px, #00000040 0 4px 6px -2px}}#root{text-align:center;border-inline:1px solid var(--border);box-sizing:border-box;flex-direction:column;width:1126px;max-width:100%;min-height:100svh;margin:0 auto;display:flex}body{margin:0}h1,h2{font-family:var(--heading);color:var(--text-h);font-weight:500}h1{letter-spacing:-1.68px;margin:32px 0;font-size:56px}@media (width<=1024px){h1{margin:20px 0;font-size:36px}}h2{letter-spacing:-.24px;margin:0 0 8px;font-size:24px;line-height:118%}@media (width<=1024px){h2{font-size:20px}}p{margin:0}code,.counter{font-family:var(--mono);color:var(--text-h);border-radius:4px;display:inline-flex}code{background:var(--code-bg);padding:4px 8px;font-size:15px;line-height:135%}.admin-shell{text-align:left;flex:1;min-height:100svh;display:flex}.admin-sidebar{background:var(--navy);color:#f6f4ee;box-sizing:border-box;flex-direction:column;flex-shrink:0;width:220px;padding:24px 0;display:flex}.admin-brand{letter-spacing:-.3px;border-bottom:1px solid #ffffff1f;margin-bottom:16px;padding:0 24px 24px;font-size:20px;font-weight:600}.admin-nav{flex-direction:column;flex:1;gap:4px;padding:0 12px;display:flex}.admin-nav-link{color:#f6f4eecc;border-radius:6px;padding:10px 12px;font-size:15px;text-decoration:none;transition:background .15s,color .15s;display:block}.admin-nav-link:hover{color:#f6f4ee;background:#ffffff0f}.admin-nav-link.is-active{background:var(--accent);color:#fff}.admin-footer{border-top:1px solid #ffffff1f;margin-top:16px;padding:16px 24px 0}.admin-footer-name{color:#f6f4ee;font-size:14px;font-weight:500}.admin-footer-tenant{color:#f6f4eea6;margin-top:2px;font-size:12px}.admin-logout{color:#f6f4ee;cursor:pointer;background:0 0;border:1px solid #ffffff2e;border-radius:6px;width:100%;margin-top:12px;padding:8px 12px;font-size:13px;transition:background .15s}.admin-logout:hover{background:#ffffff14}.admin-content{background:var(--bg);box-sizing:border-box;flex:1;padding:32px;overflow-x:auto}@media (width<=768px){.admin-shell{flex-direction:column}.admin-sidebar{flex-flow:wrap;align-items:center;width:100%;padding:12px 16px}.admin-brand{border-bottom:none;margin:0 16px 0 0;padding:0}.admin-nav{flex-direction:row;padding:0}.admin-footer{border-top:none;align-items:center;gap:12px;margin-left:auto;padding:0;display:flex}.admin-footer-tenant{display:none}.admin-logout{width:auto;margin-top:0}}.home-page{text-align:left}.home-header{flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:8px;margin-bottom:24px;display:flex}.home-header h1{margin:0;font-size:32px}.home-date{color:var(--text-muted);font-size:14px}.home-banner{border-radius:6px;margin-bottom:16px;padding:10px 14px;font-size:14px}.home-banner--error{color:#c0392b;background:#c0392b14;border:1px solid #c0392b4d}.home-stats{grid-template-columns:repeat(4,1fr);gap:16px;margin-bottom:24px;display:grid}@media (width<=768px){.home-stats{grid-template-columns:repeat(2,1fr)}}.home-stat-card{background:var(--bg-surface);border:1px solid var(--border);border-radius:8px;padding:20px 24px}.home-stat-value{color:var(--accent);font-size:32px;font-weight:600;line-height:1.2}.home-stat-label{color:var(--text-muted);margin-top:4px;font-size:13px}.home-card{background:var(--bg-surface);border:1px solid var(--border);border-radius:8px;padding:20px 24px}.home-card h2{margin:0 0 16px;font-size:18px}.home-empty{color:var(--text-muted);font-size:14px}.home-table{border-collapse:collapse;width:100%;font-size:14px}.home-table th,.home-table td{text-align:left;border-bottom:1px solid var(--border);padding:10px 12px}.home-table th{color:var(--text-muted);text-transform:uppercase;letter-spacing:.04em;font-size:12px;font-weight:500}.home-table tbody tr:last-child td{border-bottom:none}.users-page{text-align:left}.users-page h1{margin:0 0 24px;font-size:32px}.users-card{background:var(--bg-surface);border:1px solid var(--border);border-radius:8px;margin-bottom:24px;padding:20px 24px}.users-card h2{margin:0 0 16px;font-size:18px}.users-banner{border-radius:6px;margin-bottom:16px;padding:10px 14px;font-size:14px}.users-banner--success{background:var(--accent-bg);color:var(--accent);border:1px solid var(--accent-border)}.users-banner--error{color:#c0392b;background:#c0392b14;border:1px solid #c0392b4d}.invite-form{flex-wrap:wrap;gap:12px;display:flex}.invite-form input,.invite-form select{border:1px solid var(--border);background:var(--bg);color:var(--text);border-radius:6px;padding:8px 10px;font-family:inherit;font-size:14px}.invite-form input[type=email],.invite-form input[type=text]{flex:1;min-width:180px}.invite-form button{background:var(--accent);color:#fff;cursor:pointer;border:none;border-radius:6px;padding:8px 18px;font-size:14px;font-weight:500}.invite-form button:disabled{opacity:.6;cursor:default}.users-table{border-collapse:collapse;width:100%;font-size:14px}.users-table th,.users-table td{text-align:left;border-bottom:1px solid var(--border);padding:10px 12px}.users-table th{color:var(--text-muted);text-transform:uppercase;letter-spacing:.04em;font-size:12px;font-weight:500}.users-table input,.users-table select{border:1px solid var(--border);background:var(--bg);color:var(--text);border-radius:6px;padding:6px 8px;font-family:inherit;font-size:14px}.status-badge--active{background:var(--accent-bg);color:var(--accent)}.status-badge--inactive{color:var(--text-muted);background:#5a64741f}.users-actions{flex-wrap:wrap;gap:8px;display:flex}.users-actions button{border:1px solid var(--border);background:var(--accent);color:#fff;border-color:var(--accent);cursor:pointer;border-radius:6px;padding:6px 12px;font-size:13px}.users-actions button.secondary{background:var(--bg-surface);color:var(--text);border-color:var(--border)}.users-actions button.danger{background:var(--bg-surface);color:#c0392b;border-color:#c0392b4d}.users-actions button:disabled{opacity:.5;cursor:default}.tenants-page{text-align:left}.tenants-page h1{margin:0 0 24px;font-size:32px}.tenants-card{background:var(--bg-surface);border:1px solid var(--border);border-radius:8px;margin-bottom:24px;padding:20px 24px}.tenants-card h2{margin:0 0 16px;font-size:18px}.tenants-banner{border-radius:6px;margin-bottom:16px;padding:10px 14px;font-size:14px}.tenants-banner--success{background:var(--accent-bg);color:var(--accent);border:1px solid var(--accent-border)}.tenants-banner--error{color:#c0392b;background:#c0392b14;border:1px solid #c0392b4d}.create-tenant-form{flex-wrap:wrap;gap:12px;display:flex}.create-tenant-form input{border:1px solid var(--border);background:var(--bg);color:var(--text);border-radius:6px;flex:1;min-width:180px;padding:8px 10px;font-family:inherit;font-size:14px}.create-tenant-form button{background:var(--accent);color:#fff;cursor:pointer;border:none;border-radius:6px;padding:8px 18px;font-size:14px;font-weight:500}.create-tenant-form button:disabled{opacity:.6;cursor:default}.tenants-table{border-collapse:collapse;width:100%;font-size:14px}.tenants-table th,.tenants-table td{text-align:left;border-bottom:1px solid var(--border);padding:10px 12px}.tenants-table th{color:var(--text-muted);text-transform:uppercase;letter-spacing:.04em;font-size:12px;font-weight:500}.tenants-table input{border:1px solid var(--border);background:var(--bg);color:var(--text);border-radius:6px;padding:6px 8px;font-family:inherit;font-size:14px}.tenant-logo{align-items:center;gap:8px;display:flex}.tenant-logo img,.tenant-logo-placeholder{border:1px solid var(--border);object-fit:contain;background:var(--bg);border-radius:6px;width:36px;height:36px}.tenants-actions{flex-wrap:wrap;gap:8px;display:flex}.tenants-actions button{border:1px solid var(--border);background:var(--accent);color:#fff;border-color:var(--accent);cursor:pointer;border-radius:6px;padding:6px 12px;font-size:13px}.tenants-actions button.secondary,.tenant-logo button.secondary{background:var(--bg-surface);color:var(--text);border-color:var(--border)}.tenant-logo button{border:1px solid var(--border);background:var(--bg-surface);color:var(--text);cursor:pointer;border-radius:6px;padding:6px 12px;font-size:13px}.tenants-actions button.danger{background:var(--bg-surface);color:#c0392b;border-color:#c0392b4d}.tenants-actions button:disabled,.tenant-logo button:disabled{opacity:.5;cursor:default}.checklists-page{text-align:left}.checklists-header{justify-content:space-between;align-items:center;gap:16px;margin-bottom:24px;display:flex}.checklists-header h1{margin:0;font-size:32px}.checklists-new-btn{background:var(--accent);color:#fff;white-space:nowrap;border:none;border-radius:6px;padding:8px 18px;font-size:14px;font-weight:500;text-decoration:none}.checklists-card{background:var(--bg-surface);border:1px solid var(--border);border-radius:8px;margin-bottom:24px;padding:20px 24px}.checklists-card h2{margin:0 0 16px;font-size:18px}.checklists-banner{border-radius:6px;margin-bottom:16px;padding:10px 14px;font-size:14px}.checklists-banner--success{background:var(--accent-bg);color:var(--accent);border:1px solid var(--accent-border)}.checklists-banner--error{color:#c0392b;background:#c0392b14;border:1px solid #c0392b4d}.checklists-table{border-collapse:collapse;width:100%;font-size:14px}.checklists-table th,.checklists-table td{text-align:left;border-bottom:1px solid var(--border);padding:10px 12px}.checklists-table th{color:var(--text-muted);text-transform:uppercase;letter-spacing:.04em;font-size:12px;font-weight:500}.checklists-empty{color:var(--text-muted);text-align:center;padding:24px 12px}.status-badge{border-radius:999px;padding:2px 10px;font-size:12px;font-weight:500;display:inline-block}.status-badge--draft{color:var(--text-muted);background:#5a64741f}.status-badge--published{background:var(--accent-bg);color:var(--accent)}.status-badge--archived{color:#c0392b;background:#c0392b14}.checklists-actions{flex-wrap:wrap;gap:8px;display:flex}.checklists-actions a,.checklists-actions button{border:1px solid var(--accent);background:var(--accent);color:#fff;cursor:pointer;border-radius:6px;align-items:center;padding:6px 12px;font-size:13px;text-decoration:none;display:inline-flex}.checklists-actions a.secondary,.checklists-actions button.secondary{background:var(--bg-surface);color:var(--text);border-color:var(--border)}.checklists-actions button.danger{background:var(--bg-surface);color:#c0392b;border-color:#c0392b4d}.checklists-actions button:disabled{opacity:.5;cursor:default}.checklist-editor{text-align:left}.checklist-editor h1{margin:0 0 24px;font-size:32px}.checklist-editor-back{color:var(--accent);margin-bottom:16px;font-size:14px;text-decoration:none;display:inline-block}.checklist-form-row{flex-direction:column;gap:6px;margin-bottom:16px;display:flex}.checklist-form-row label{color:var(--text-muted);font-size:13px;font-weight:500}.checklist-form-row input,.checklist-form-row select,.checklist-form-row textarea{border:1px solid var(--border);background:var(--bg);color:var(--text);border-radius:6px;padding:8px 10px;font-family:inherit;font-size:14px}.checklist-form-row textarea{resize:vertical;min-height:80px}.checklist-items-table{border-collapse:collapse;width:100%;margin-bottom:16px;font-size:14px}.checklist-items-table th,.checklist-items-table td{text-align:left;border-bottom:1px solid var(--border);padding:8px 10px}.checklist-items-table th{color:var(--text-muted);text-transform:uppercase;letter-spacing:.04em;font-size:12px;font-weight:500}.checklist-items-table input[type=text],.checklist-items-table select{border:1px solid var(--border);background:var(--bg);width:100%;color:var(--text);box-sizing:border-box;border-radius:6px;padding:6px 8px;font-family:inherit;font-size:14px}.checklist-add-item-row{flex-wrap:wrap;align-items:center;gap:8px;margin-bottom:16px;display:flex}.checklist-add-item-row input[type=text]{border:1px solid var(--border);background:var(--bg);min-width:180px;color:var(--text);border-radius:6px;flex:1;padding:8px 10px;font-family:inherit;font-size:14px}.checklist-add-item-row select{border:1px solid var(--border);background:var(--bg);color:var(--text);border-radius:6px;padding:8px 10px;font-family:inherit;font-size:14px}.checklist-actions-row{align-items:center;gap:12px;display:flex}.checklist-actions-row button{border:1px solid var(--accent);background:var(--accent);color:#fff;cursor:pointer;border-radius:6px;padding:8px 18px;font-size:14px;font-weight:500}.checklist-actions-row button.secondary{background:var(--bg-surface);color:var(--text);border-color:var(--border)}.checklist-actions-row button.danger{background:var(--bg-surface);color:#c0392b;border-color:#c0392b4d}.checklist-actions-row button:disabled{opacity:.5;cursor:default}.checklist-ai-box{background:var(--accent-bg);border:1px solid var(--accent-border);border-radius:8px;margin-bottom:24px;padding:16px 20px}.checklist-ai-box h2{margin:0 0 8px;font-size:16px}.checklist-ai-box textarea{box-sizing:border-box;border:1px solid var(--border);background:var(--bg-surface);width:100%;color:var(--text);resize:vertical;border-radius:6px;min-height:70px;margin-bottom:8px;padding:8px 10px;font-family:inherit;font-size:14px}.checklist-access-table{border-collapse:collapse;width:100%;margin-top:12px;font-size:14px}.checklist-access-table th,.checklist-access-table td{text-align:left;border-bottom:1px solid var(--border);padding:8px 10px}.checklist-access-table th{color:var(--text-muted);text-transform:uppercase;letter-spacing:.04em;font-size:12px;font-weight:500}.login-page{background:var(--color-background,#f5f5f5);justify-content:center;align-items:center;min-height:100vh;display:flex}.login-card{text-align:center;background:#fff;border-radius:12px;width:100%;max-width:360px;padding:2.5rem 2rem;box-shadow:0 4px 24px #00000014}.login-card h1{margin:0 0 .25rem;font-size:1.5rem;font-weight:700}.login-subtitle{color:#666;margin:0 0 1.75rem;font-size:.95rem}.login-error{color:#c0392b;background:#fff0f0;border-radius:6px;margin-bottom:1rem;padding:.6rem .9rem;font-size:.875rem}.login-form{text-align:left;flex-direction:column;gap:.6rem;margin-bottom:1rem;display:flex}.login-input{box-sizing:border-box;border:1px solid #ddd;border-radius:6px;width:100%;padding:.65rem .8rem;font-size:.95rem}.login-input:focus{border-color:#1a1a2e;outline:none;box-shadow:0 0 0 2px #1a1a2e1f}.login-btn--primary{color:#fff;background:#1a1a2e;border:1px solid #1a1a2e;margin-top:.15rem}.login-btn--primary:hover:not(:disabled){background:#11111f}.login-btn--primary:disabled{opacity:.6;cursor:default}.login-switch{color:#666;margin:0 0 1rem;font-size:.875rem}.login-link{color:#1a1a2e;font-weight:600;font-size:inherit;cursor:pointer;background:0 0;border:none;padding:0;text-decoration:underline}.login-divider{color:#999;align-items:center;gap:.75rem;margin:0 0 1rem;font-size:.8rem;display:flex}.login-divider:before,.login-divider:after{content:"";background:#e5e5e5;flex:1;height:1px}.login-buttons{flex-direction:column;gap:.75rem;display:flex}.login-btn{cursor:pointer;border-radius:6px;justify-content:center;align-items:center;gap:.6rem;padding:.7rem 1rem;font-size:.95rem;font-weight:500;text-decoration:none;transition:background .15s,box-shadow .15s;display:flex}.login-btn--google{color:#333;background:#fff;border:1px solid #ddd;box-shadow:0 1px 3px #00000014}.login-btn--google:hover{background:#f8f8f8;box-shadow:0 2px 6px #0000001f}.login-btn--microsoft{color:#fff;background:#2f2f2f;border:1px solid #2f2f2f}.login-btn--microsoft:hover{background:#1a1a1a}
