:root{--bg:#f8fafc;--card:#ffffff;--text:#0f172a;--muted:#64748b;--accent:#0f766e;--accent-soft:#ccfbf1;--border:#e2e8f0;--danger:#b91c1c}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--text);font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;-webkit-font-smoothing:antialiased}a{color:var(--accent);text-decoration:none}.topbar{display:flex;align-items:center;justify-content:space-between;padding:.7rem 1rem;background:var(--accent);position:-webkit-sticky;position:sticky;top:0;z-index:10}.topbar,.topbar a,.topbar button{color:#fff}.topbar .brand{font-weight:700;font-size:1.05rem;color:#fff}.container{max-width:60rem;margin:0 auto;padding:1rem}.card{background:var(--card);border:1px solid var(--border);border-radius:.75rem;padding:1rem;margin-bottom:1rem}h1{font-size:1.3rem}h2{font-size:1.05rem;margin:0 0 .6rem}input,select{font:inherit;padding:.55rem .7rem;border:1px solid var(--border);border-radius:.5rem;background:#fff;color:var(--text);width:100%}input:focus,select:focus{outline:2px solid var(--accent);outline-offset:0;border-color:var(--accent)}.row,form.row{display:flex;gap:.5rem;align-items:center}.row>input{flex:1 1}.row>select{width:auto}button{font:inherit;border:none;border-radius:.5rem;padding:.55rem .9rem;cursor:pointer;background:var(--accent);color:#fff;white-space:nowrap}button:disabled{opacity:.5;cursor:default}button.ghost{background:transparent;color:var(--muted);padding:.3rem .5rem}.error,button.ghost:hover{color:var(--danger)}.error{font-size:.9rem;margin:.5rem 0}.hint{color:var(--muted);font-size:.85rem}.auth{max-width:22rem;margin:12vh auto 0;padding:1rem}.auth form{display:flex;flex-direction:column;gap:.7rem}.auth .logo{text-align:center;font-size:1.6rem;font-weight:700;color:var(--accent);margin-bottom:1rem}.stat-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(10rem,1fr));grid-gap:.75rem;gap:.75rem;margin-bottom:1rem}.stat{margin-bottom:0}.stat-label{font-size:.8rem;color:var(--muted)}.stat-value{font-size:1.9rem;font-weight:700;line-height:1.2;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.admin-table{width:100%;border-collapse:collapse;font-size:.9rem}.admin-table th{text-align:left;color:var(--muted);font-weight:500;font-size:.8rem}.admin-table td,.admin-table th{padding:.45rem .6rem .45rem 0;border-bottom:1px solid var(--border);white-space:nowrap}.admin-table td:first-child{white-space:normal}.admin-table tr:last-child td{border-bottom:none}.admin-table td:nth-child(n+3){font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.team-link{display:flex;justify-content:space-between;align-items:center;padding:.8rem 1rem;background:var(--card);border:1px solid var(--border);border-radius:.75rem;margin-bottom:.5rem;color:var(--text)}.team-link:hover{border-color:var(--accent)}.workspace{display:grid;grid-template-columns:15rem 1fr;grid-gap:1rem;gap:1rem;align-items:start}@media (max-width:700px){.workspace{grid-template-columns:1fr}}.project-item{display:flex;justify-content:space-between;align-items:center;width:100%;padding:.5rem .7rem;border-radius:.5rem;background:transparent;color:var(--text);text-align:left}.project-item.active,.project-item:hover{background:var(--accent-soft)}.project-item.active{font-weight:600}.badge{font-size:.75rem;background:var(--border);border-radius:999px;padding:.05rem .5rem}.badge,.kind-tag{color:var(--muted)}.kind-tag{font-size:.7rem;text-transform:uppercase;letter-spacing:.03em;margin-right:.4rem}.task{display:flex;align-items:center;gap:.6rem;padding:.55rem .2rem;border-bottom:1px solid var(--border)}.task:last-child{border-bottom:none}.task input[type=checkbox]{width:1.15rem;height:1.15rem;accent-color:var(--accent);flex:none}.task .title{flex:1 1;min-width:0;overflow-wrap:break-word}.task.done .title{text-decoration:line-through;color:var(--muted)}.task .meta{font-size:.5rem;color:var(--muted);flex:none}