:root{--bg:#f6f4ee;--ink:#1f2a37;--muted:#6b7280;--accent:#0f766e;--card:#fff;--line:#e5e1d6;--danger:#b42318;color:var(--ink);background:var(--bg);font-family:system-ui,-apple-system,Segoe UI,Roboto,sans-serif}*{box-sizing:border-box}body{background:var(--bg);min-height:100vh;margin:0}h1{margin:0;font-size:1.5rem}button{font:inherit;cursor:pointer}.eyebrow{letter-spacing:.08em;color:var(--muted);margin:0 0 4px;font-size:.75rem}.muted{color:var(--muted)}.auth-shell{place-items:center;min-height:100vh;padding:24px;display:grid}.auth-panel{background:var(--card);border:1px solid var(--line);border-radius:20px;gap:12px;width:min(440px,100%);padding:32px;display:grid}.brand-mark{color:#fff;background:var(--accent);border-radius:14px;place-items:center;width:48px;height:48px;display:grid}.stack-form{gap:14px;display:grid}.stack-form label{gap:6px;font-size:.9rem;display:grid}.stack-form input[type=email],.stack-form input[type=password],.stack-form input[inputmode]{border:1px solid var(--line);border-radius:12px;padding:12px 14px;font-size:1rem}.checkbox-line{align-items:center;gap:8px;display:flex!important}.form-error{color:var(--danger);margin:0;font-size:.9rem}.totp-qr{width:180px;height:180px;margin:8px 0;display:block}.primary-button{background:var(--accent);color:#fff;border:0;border-radius:12px;justify-content:center;align-items:center;gap:8px;padding:14px 18px;font-weight:600;display:inline-flex}.primary-button:disabled{opacity:.6}.text-button{color:var(--muted);background:0 0;border:0}.security-note{color:var(--muted);align-items:center;gap:8px;font-size:.85rem;display:flex}.home-shell{grid-template-rows:auto 1fr auto;gap:24px;min-height:100vh;padding:20px;display:grid}.home-header{justify-content:space-between;align-items:center;gap:16px;display:flex}.header-actions{align-items:center;gap:8px;display:flex}.icon-button{border:1px solid var(--line);background:var(--card);width:44px;height:44px;color:var(--ink);border-radius:12px;place-items:center;display:grid}.offline-badge{color:#92400e;background:#fef3c7;border-radius:999px;align-items:center;gap:6px;padding:8px 12px;font-size:.85rem;display:inline-flex}.tile-grid{grid-template-columns:repeat(auto-fit,minmax(180px,1fr));align-content:start;gap:16px;display:grid}.sync-bar{color:var(--muted);flex-wrap:wrap;align-items:center;gap:12px;font-size:.85rem;display:flex}.pending-badge{color:#92400e;background:#fef3c7;border-radius:999px;align-items:center;gap:4px;padding:4px 10px;display:inline-flex}.sync-error{color:var(--danger)}.text-button{align-items:center;gap:6px;display:inline-flex}.spin{animation:1s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.tile{border:1px solid var(--line);background:var(--card);min-height:150px;color:var(--ink);border-radius:20px;align-content:center;place-items:center;gap:10px;font-size:1.15rem;font-weight:600;display:grid}.tile:disabled{opacity:.45;cursor:default}.board-shell{grid-template-rows:auto auto 1fr;gap:16px;min-height:100vh;padding:16px;display:grid}.board-header{flex-wrap:wrap;align-items:center;gap:12px;display:flex}.board-header h1{flex:1}.board-header select,.board-header input{border:1px solid var(--line);background:var(--card);border-radius:12px;padding:10px 12px;font-size:1rem}.board-columns{grid-template-columns:repeat(4,minmax(220px,1fr));align-items:start;gap:12px;display:grid;overflow-x:auto}.board-column{background:#ece9df;border-radius:16px;gap:10px;padding:12px;display:grid}.board-column h2{justify-content:space-between;margin:0;font-size:1rem;display:flex}.count{color:var(--muted);font-weight:500}.column-cards{gap:10px;display:grid}.task-card{background:var(--card);border:1px solid var(--line);border-radius:14px;gap:6px;padding:12px;display:grid}.task-card.is-correction{border-color:#f59e0b}.task-card header{justify-content:space-between;align-items:center;gap:8px;display:flex}.task-title{margin:0;font-weight:600}.task-meta{color:var(--muted);align-items:center;gap:6px;margin:0;font-size:.85rem;display:flex}.kind-badge{color:#92400e;background:#fef3c7;border-radius:999px;padding:2px 8px;font-size:.75rem}.running-dot{background:#16a34a;border-radius:50%;width:8px;height:8px;display:inline-block}.primary-button.small{padding:10px 14px}
