:root{--navy:#102a43;--ink:#243b53;--blue:#1677ff;--pale:#f4f7fb;--line:#d9e2ec;--white:#fff;--muted:#627d98;--danger:#c53030;--success:#147d64;--shadow:0 10px 28px rgba(16,42,67,.1)}*{box-sizing:border-box}html{font-size:16px}body{margin:0;background:var(--pale);color:var(--ink);font:1rem/1.45 system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}button,input,select{font:inherit}button,a{touch-action:manipulation}.topbar{height:64px;background:var(--navy);color:#fff;display:flex;align-items:center;justify-content:space-between;padding:0 20px;position:sticky;top:0;z-index:20}.wordmark{color:#fff;text-decoration:none;font-weight:800;letter-spacing:.03em}.wordmark span,.brand-mark{display:inline-grid;place-items:center;background:#28c2a0;color:#082f2a;border-radius:9px;padding:5px 7px;margin-right:7px}.top-actions{display:flex;align-items:center;gap:14px;font-size:.875rem}.top-actions a{color:#d9e2ec}.shell{padding:18px 16px 92px;max-width:1500px;margin:auto}.board-head{display:flex;justify-content:space-between;align-items:end;gap:12px;margin-bottom:15px}.eyebrow{font-size:.75rem;font-weight:800;color:var(--muted);letter-spacing:.12em;margin:0 0 3px}.board-head select{border:0;background:transparent;font-size:1.3rem;font-weight:750;color:var(--navy);max-width:min(70vw,700px)}button{border:0}.primary{background:var(--blue);color:#fff;border-radius:11px;padding:13px 18px;font-weight:750;min-height:48px}.primary.compact{min-height:43px;padding:9px 14px}.column-tabs{display:none}.board{display:grid;grid-template-columns:repeat(7,minmax(260px,1fr));gap:14px;overflow-x:auto;scroll-snap-type:x mandatory;padding-bottom:12px}.column{background:#eaf0f6;border:1px solid var(--line);border-radius:15px;min-height:62vh;scroll-snap-align:start}.column>header{display:flex;justify-content:space-between;align-items:center;padding:14px}.column h2{font-size:.95rem;margin:0;color:var(--navy)}.column header span{background:#d2deea;border-radius:999px;padding:2px 8px;font-size:.8rem}.task-list{padding:0 9px 12px}.task-card{display:block;width:100%;text-align:left;background:#fff;border:1px solid #d7e2ec;border-left:4px solid #94a3b8;border-radius:11px;padding:13px;margin-bottom:9px;box-shadow:0 2px 5px rgba(16,42,67,.05);min-height:92px}.task-card.priority-high,.task-card.priority-critical{border-left-color:#e53e3e}.task-card.dragging{opacity:.45}.task-title{display:block;font-weight:700;color:var(--ink);margin-bottom:9px}.task-meta{display:flex;gap:7px;color:var(--muted);font-size:.75rem}.task-meta span{background:#edf2f7;border-radius:999px;padding:2px 7px}.task-assignee{display:block;color:var(--muted);font-size:.78rem;margin-top:9px}.bottom-nav{display:none}dialog{border:0;padding:0;border-radius:18px;box-shadow:var(--shadow);width:min(520px,calc(100% - 24px))}dialog::backdrop{background:rgba(16,42,67,.55)}.sheet{padding:20px}.sheet header{display:flex;justify-content:space-between;align-items:center}.sheet h2{margin:0}.sheet header button{font-size:2rem;background:transparent;color:var(--muted)}label{display:block;font-weight:700;margin:16px 0}input,select{display:block;width:100%;min-height:48px;border:1px solid #bcccdc;border-radius:10px;background:#fff;padding:10px 12px;color:var(--ink);margin-top:6px}.move-options{display:grid;gap:8px;margin-top:16px}.move-options button{min-height:48px;border-radius:10px;text-align:left;padding:10px 14px;background:#edf2f7;font-weight:700}.auth-page{min-height:100vh;display:grid;place-items:center;padding:20px;background:linear-gradient(145deg,#102a43,#1f4d6b)}.auth-card{background:#fff;border-radius:20px;padding:28px;width:min(440px,100%);box-shadow:var(--shadow)}.brand-mark{display:inline-grid;margin:0 0 12px}.auth-card h1{margin:.2rem 0}.auth-card .primary{width:100%}.muted,.small,.hint{color:var(--muted)}.hint{font-size:.78rem}.notice{padding:12px;border-radius:9px;margin:14px 0}.notice.error{background:#fff5f5;color:var(--danger)}.notice.success{background:#e6fffa;color:var(--success)}
.page{max-width:900px;margin:auto;padding:22px 16px 80px}.panel{background:#fff;border:1px solid var(--line);border-radius:16px;padding:20px;margin-bottom:16px;box-shadow:0 3px 12px rgba(16,42,67,.05)}.panel h1,.panel h2{margin-top:.25rem}.top-link{color:#fff}.panel textarea{display:block;width:100%;border:1px solid #bcccdc;border-radius:10px;padding:10px 12px;margin-top:6px;color:var(--ink)}.project-list,.request-list{display:grid;gap:9px}.project-list a,.request-list article{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:13px;border:1px solid var(--line);border-radius:11px;text-decoration:none;color:var(--ink)}.project-list span,.request-list span{display:block;color:var(--muted);font-size:.82rem}.request-list form{display:flex;gap:7px;margin:0}.approve,.reject{min-height:42px;border-radius:9px;padding:8px 11px;font-weight:700}.approve{background:#d7f8ed;color:#116149}.reject{background:#fff0f0;color:var(--danger)}button:disabled{opacity:.45}
@media(max-width:700px){.topbar{height:56px;padding:0 14px}.user-name{display:none}.top-actions{gap:9px}.shell{padding:14px 12px 84px}.board-head{align-items:center}.board-head select{font-size:1.06rem;max-width:65vw}.column-tabs{display:flex;gap:7px;overflow-x:auto;margin:0 -12px 12px;padding:0 12px;scrollbar-width:none}.column-tabs button{white-space:nowrap;border-radius:999px;background:#e2e8f0;color:var(--muted);padding:8px 11px;font-size:.8rem}.column-tabs button.active{background:var(--navy);color:#fff}.column-tabs b{margin-left:5px}.board{grid-template-columns:repeat(7,calc(100vw - 24px));gap:10px}.column{min-height:58vh}.bottom-nav{position:fixed;bottom:0;left:0;right:0;z-index:30;display:grid;grid-template-columns:repeat(5,1fr);background:#fff;border-top:1px solid var(--line);padding:max(7px,env(safe-area-inset-bottom)) 4px 7px}.bottom-nav a,.bottom-nav button{background:transparent;text-decoration:none;color:var(--muted);font-size:.75rem;text-align:center;min-height:42px;padding:10px 2px}.bottom-nav .active{color:var(--blue);font-weight:800}dialog{margin:auto 12px 10px;width:calc(100% - 24px);max-height:88vh}.sheet{padding:18px}.auth-card{padding:23px}.project-list a,.request-list article{align-items:flex-start;flex-direction:column}.request-list form{width:100%}.request-list form button{flex:1}}
