:root{color:#0f172a;--line:#e8edf2;--muted:#64748b;--primary:#4f46e5;background:#fbfcfd;font-family:Open Sans,-apple-system,BlinkMacSystemFont,sans-serif;font-size:14px;line-height:1.6}*{box-sizing:border-box}body{margin:0}button,input,textarea,select{font:inherit}button,a{touch-action:manipulation}button{cursor:pointer;border:1px solid var(--line);color:inherit;background:#fff;border-radius:8px;padding:9px 14px;transition:transform .14s cubic-bezier(.23,1,.32,1)}button:active{transform:scale(.98)}button:disabled{opacity:.55;cursor:wait}a{color:var(--primary)}:focus-visible{outline:2px solid var(--primary);outline-offset:3px}.primary{background:var(--primary);border-color:var(--primary);color:#fff}.shell{grid-template-columns:236px minmax(0,1fr);min-height:100vh;display:grid}.side{border-inline-end:1px solid var(--line);background:linear-gradient(#f8f9fd,#fbfcfd);flex-direction:column;gap:30px;padding:30px 16px;display:flex}.brand{letter-spacing:-.6px;align-items:center;gap:12px;padding:0 12px;font-size:24px;font-weight:600;display:flex}.brand small{letter-spacing:1.5px;font-size:8px}.project-card{background:#fff;border:1px solid #e2e5f0;border-radius:10px;padding:14px}.project-card select{background:0 0;border:0;width:100%;padding:6px 0;font-weight:600}.eyebrow{letter-spacing:1.6px;color:var(--muted);font-size:10px;font-weight:700}nav{gap:5px;display:grid}nav button{text-align:start;color:var(--muted);background:0 0;border:0;min-height:44px}nav button[aria-current=page]{color:#4338ca;background:#eef0fe;font-weight:600;box-shadow:inset 0 0 0 1px #dcdffb}.side-foot{border-top:1px solid var(--line);color:var(--muted);margin-top:auto;padding:18px 12px;font-size:12px}.workspace{min-width:0}.topbar{border-bottom:1px solid var(--line);height:80px;color:var(--muted);background:#fff;justify-content:space-between;align-items:center;padding:20px 32px;display:flex}main{max-width:1400px;margin:auto;padding:34px 38px}.heading{justify-content:space-between;align-items:center;gap:24px;margin-bottom:32px;display:flex}.heading h1{letter-spacing:-.9px;margin:8px 0;font-size:28px;font-weight:600;line-height:1.3}.muted{color:var(--muted)}h2{font-size:16px;font-weight:600}.overview{grid-template-columns:minmax(0,1.6fr) minmax(240px,1fr);gap:32px;display:grid}.notice{background:linear-gradient(115deg,#eef0fe,#f7f7ff);border:1px solid #dcdffb;border-radius:10px;margin-bottom:26px;padding:22px}.notice .eyebrow{color:var(--primary)}.request{border:0;border-bottom:1px solid var(--line);text-align:start;background:0 0;border-radius:0;justify-content:space-between;align-items:center;gap:14px;width:100%;padding:20px 0;display:flex}.request strong{font-weight:600}.request span{overflow-wrap:anywhere;min-width:0}small,.small{color:var(--muted);font-size:11px;display:block}.badge{color:#4338ca;white-space:nowrap;background:#eef0fe;border-radius:5px;padding:4px 8px;font-size:11px}.activity{border-bottom:1px solid var(--line);padding:14px 0}progress{accent-color:#6366f1;width:100%;height:6px}.empty{color:var(--muted);padding:24px 0}.error{color:#9f1239;background:#fff1f2;border:1px solid #fecdd3;border-radius:8px;padding:12px}dialog[open]{z-index:10;border:1px solid var(--line);background:#fff;border-radius:16px;width:min(680px,100vw - 32px);max-height:85vh;margin:auto;padding:28px;position:fixed;inset:0;overflow:auto;box-shadow:0 20px 80px #0f172a40}label{margin:12px 0;display:block}input,textarea,select{width:100%;color:inherit;background:#fff;border:1px solid #cbd5e1;border-radius:7px;padding:10px;display:block}textarea{resize:vertical;min-height:90px}.actions{justify-content:flex-end;gap:10px;display:flex}.close{float:inline-end}.body-text{white-space:pre-wrap;overflow-wrap:anywhere}.login{max-width:540px;margin:12vh auto}.login h1{font-size:28px}.login .small{margin-top:24px}summary{cursor:pointer;color:var(--primary)}@media (hover:hover) and (pointer:fine){nav button:hover,.request:hover{background:#f3f4fb}.primary:hover{background:#4338ca}}@media (max-width:800px){.shell{grid-template-columns:1fr}.side{border-inline-end:0;border-bottom:1px solid var(--line);gap:16px;padding:18px}.side-foot{display:none}.brand{padding:0}.project-card{margin:0}nav{display:flex;overflow:auto}nav button{flex-shrink:0}.topbar{height:64px;padding:16px 20px}main{padding:24px 20px}.heading{flex-direction:column;align-items:flex-start}.heading h1{font-size:25px}.overview{grid-template-columns:1fr}.request{flex-wrap:wrap}.login{margin:8vh auto}.badge{white-space:normal}}@media (prefers-reduced-motion:reduce){button{transition:none}button:active{transform:none}}dialog::backdrop{background:#0f172a55}
