:root{--brand:#0f766e;--brand-strong:#115e59;--brand-soft:#ccfbf1;--bg:#f6f7f9;--surface:#fff;--text:#1f2937;--muted:#6b7280;--border:#e5e7eb;--danger:#b91c1c;--sidebar-w:248px;--radius:12px;--shadow:0 8px 30px #0f172a1f;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;color:var(--text);background:var(--bg);font-family:system-ui,-apple-system,Segoe UI,Roboto,Noto Sans,sans-serif}*{box-sizing:border-box}html,body,#root{height:100%;margin:0}body{background:var(--bg);-webkit-font-smoothing:antialiased}a{color:var(--brand)}h1{margin:0 0 .5rem;font-size:1.5rem}.muted{color:var(--muted)}.btn{border:1px solid var(--border);background:var(--surface);color:var(--text);font:inherit;cursor:pointer;border-radius:10px;justify-content:center;align-items:center;gap:8px;padding:10px 16px;font-weight:600;text-decoration:none;display:inline-flex}.btn--primary{background:var(--brand);border-color:var(--brand);color:#fff}.btn--primary:hover{background:var(--brand-strong)}.btn:disabled{opacity:.6;cursor:default}.icon-btn{width:40px;height:40px;color:inherit;cursor:pointer;background:0 0;border:0;border-radius:10px;justify-content:center;align-items:center;display:inline-flex}.icon-btn:hover{background:#0000000f}.shell{height:100%;display:flex}.sidebar{width:var(--sidebar-w);background:var(--surface);border-right:1px solid var(--border);flex-direction:column;flex:none;display:flex}.brand{align-items:center;gap:10px;padding:18px 18px 12px;font-size:1.15rem;font-weight:700;display:flex}.brand--center{justify-content:center;padding:0 0 8px}.badge{text-transform:uppercase;letter-spacing:.04em;background:var(--brand-soft);color:var(--brand-strong);border-radius:6px;padding:2px 6px;font-size:.68rem;font-weight:700}.nav{flex-direction:column;flex:1;gap:2px;padding:4px 10px;display:flex;overflow-y:auto}.nav__link{color:var(--text);border-radius:10px;align-items:center;gap:12px;padding:10px 12px;font-weight:500;text-decoration:none;display:flex}.nav__link:hover{background:var(--bg)}.nav__link.active{background:var(--brand-soft);color:var(--brand-strong)}.sidebar__foot{border-top:1px solid var(--border);align-items:center;gap:8px;padding:12px 10px 12px 18px;display:flex}.me{flex:1;min-width:0}.me__name,.me__mail{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.me__name{font-size:.9rem;font-weight:600}.me__mail{color:var(--muted);font-size:.8rem}.main{flex-direction:column;flex:1;min-width:0;display:flex}.topbar{padding:8px 12px;padding-top:max(8px, env(safe-area-inset-top));background:var(--surface);border-bottom:1px solid var(--border);align-items:center;gap:8px;display:none}.topbar__title{font-weight:600}.content{flex-direction:column;flex:1;min-height:0;display:flex;overflow:auto}.scrim{display:none}.page{width:100%;max-width:1100px;padding:28px 32px 96px}.state{color:var(--muted);padding:32px}.state--full{place-items:center;height:100%;display:grid}.fd-frame{background:var(--surface);border:0;flex:1;width:100%}.tiles{grid-template-columns:repeat(auto-fill,minmax(170px,1fr));gap:12px;margin-top:24px;display:grid}.tile{border-radius:var(--radius);background:var(--surface);border:1px solid var(--border);color:var(--text);flex-direction:column;gap:10px;padding:18px;font-weight:600;text-decoration:none;display:flex;position:relative}.tile:hover{border-color:var(--brand)}.tile svg{color:var(--brand)}.tile__tag{color:var(--muted);font-size:.7rem;font-weight:600;position:absolute;top:12px;right:12px}.notice{border-radius:var(--radius);background:var(--surface);border:1px solid var(--border);margin-top:16px;padding:20px}.notice p{margin:0 0 16px}.login{place-items:center;min-height:100%;padding:24px 16px;display:grid}.login__card{background:var(--surface);width:100%;max-width:380px;box-shadow:var(--shadow);border-radius:16px;flex-direction:column;gap:14px;padding:28px;display:flex}.login__card h1{text-align:center;font-size:1.25rem}.login__card label{flex-direction:column;gap:6px;font-size:.9rem;font-weight:600;display:flex}.login__card input{font:inherit;border:1px solid var(--border);background:#fff;border-radius:10px;padding:11px 12px;font-weight:400}.login__card input:focus{outline:2px solid var(--brand-soft);border-color:var(--brand)}.login__links{justify-content:space-between;font-size:.875rem;display:flex}.form-error{color:var(--danger);margin:0;font-size:.9rem}.ai-fab{right:20px;bottom:max(20px, env(safe-area-inset-bottom));z-index:30;background:var(--brand);color:#fff;font:inherit;box-shadow:var(--shadow);cursor:pointer;border:0;border-radius:999px;align-items:center;gap:8px;padding:12px 18px;font-weight:700;display:inline-flex;position:fixed}.ai-fab:hover{background:var(--brand-strong)}.ai-fab.is-hidden{display:none}.ai-panel{z-index:40;background:var(--surface);width:min(420px,100vw);box-shadow:var(--shadow);visibility:hidden;flex-direction:column;transition:transform .2s;display:flex;position:fixed;top:0;bottom:0;right:0;transform:translate(100%)}.ai-panel.is-open{visibility:visible;transform:none}.ai-panel__head{padding:8px 8px 8px 16px;padding-top:max(8px, env(safe-area-inset-top));border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;display:flex}.ai-panel__title{color:var(--brand-strong);align-items:center;gap:8px;font-weight:700;display:inline-flex}.ai-panel__body{flex-direction:column;flex:1;min-height:0;display:flex}.btn--ghost{color:var(--muted);background:0 0;border-color:#0000}.btn--ghost:hover:not(:disabled){color:var(--text);background:var(--bg)}.state .btn{margin-top:12px}.chat{flex-direction:column;flex:1;min-height:0;display:flex}.chat__list{flex-direction:column;flex:1;gap:10px;padding:16px;display:flex;overflow-y:auto}.chat__empty{color:var(--muted);text-align:center;margin:auto 0;padding:0 16px}.chat__msg{white-space:pre-wrap;overflow-wrap:anywhere;border-radius:14px;max-width:88%;padding:10px 14px;line-height:1.45}.chat__msg--user{background:var(--brand);color:#fff;border-bottom-right-radius:4px;align-self:flex-end}.chat__msg--assistant{background:var(--bg);border-bottom-left-radius:4px;align-self:flex-start}.chat__msg--error{color:var(--danger);background:#fef2f2;align-self:stretch;font-size:.9rem}.chat__typing{color:var(--muted);letter-spacing:2px}.chat__form{border-top:1px solid var(--border);padding:10px 12px;padding-bottom:max(10px, env(safe-area-inset-bottom))}.chat__form textarea{resize:none;width:100%;font:inherit;border:1px solid var(--border);border-radius:10px;padding:10px 12px}.chat__form textarea:focus{outline:2px solid var(--brand-soft);border-color:var(--brand)}.chat__actions{justify-content:space-between;margin-top:8px;display:flex}@media (width<=860px){.sidebar{z-index:50;width:min(var(--sidebar-w), 85vw);padding-top:env(safe-area-inset-top);transition:transform .2s;position:fixed;inset:0 auto 0 0;transform:translate(-100%)}.menu-open .sidebar{box-shadow:var(--shadow);transform:none}.menu-open .scrim{z-index:45;background:#0f172a59;display:block;position:fixed;inset:0}.topbar{display:flex}.page{padding:20px 16px 96px}.ai-fab span{display:none}.ai-fab{padding:14px}}
