:root{--ink:#1f2937;--muted:#64748b;--line:#d9e2ef;--paper:#f5f7fb;--surface:#ffffff;--accent:#0f766e;--accent-soft:rgba(15,118,110,0.16);--danger:#dc2626}*{box-sizing:border-box}body,html{margin:0;min-height:100%;background:var(--paper);color:var(--ink)}body{font-family:Avenir Next,PingFang SC,Hiragino Sans GB,sans-serif;position:relative}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit;color:inherit}button{cursor:pointer}.shell{min-height:100vh;display:flex;flex-direction:column}.auth-page{min-height:100vh;display:grid;place-items:center;padding:24px;background:radial-gradient(circle at 12% 10%,rgba(148,205,250,.24),transparent 34%),linear-gradient(180deg,#f5f7fb,#eef3f9)}.auth-card{width:min(100%,420px);padding:42px;border:1px solid var(--line);background:var(--surface);box-shadow:0 16px 36px rgba(15,23,42,.08);border-radius:14px}.brand{letter-spacing:.08em;font-size:12px;font-weight:700;color:var(--accent);text-transform:uppercase}h1{margin:12px 0 8px;font-size:30px;letter-spacing:-.02em}.lead{color:var(--muted);line-height:1.7;margin:0 0 30px;font-size:14px}.form{display:grid;grid-gap:16px;gap:16px}.field{display:grid;grid-gap:7px;gap:7px;color:var(--muted);font-size:13px}.field input,.field select,.field textarea{width:100%;border:1px solid var(--line);padding:12px 13px;outline:none;color:var(--ink);background:#fff;border-radius:10px}.field input:focus,.field select:focus,.field textarea:focus{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-soft)}.primary{border:0;padding:13px 16px;background:linear-gradient(135deg,#0f766e,#0ea5a3);color:#fff;font-weight:700;border-radius:10px}.primary:disabled{opacity:.55;cursor:wait}.error{color:#7f1d1d;background:#fee2e2;border:1px solid #fecaca;padding:10px 12px;font-size:13px;border-radius:10px}.form-footer{margin-top:22px;color:var(--muted);font-size:13px;text-align:center}.form-footer a{color:#0f766e;font-weight:700}.topbar{min-height:72px;border-bottom:1px solid var(--line);background:#fff;justify-content:space-between;padding:0 max(24px,calc((100vw - 1120px) / 2))}.nav,.topbar{display:flex;align-items:center}.nav{gap:28px;font-size:14px;color:var(--muted)}.nav .active,.nav a:hover{color:var(--ink)}.userMenu{position:relative}.userMenuTrigger{border:1px solid var(--line);background:#f8fafc;padding:8px 12px;color:var(--ink);border-radius:8px}.userMenuPanel{position:absolute;top:calc(100% + 8px);right:0;min-width:136px;border:1px solid var(--line);background:#fff;border-radius:10px;box-shadow:0 14px 26px rgba(15,23,42,.14);padding:6px;display:grid;grid-gap:4px;gap:4px;z-index:90}.userMenuItem{border:0;background:transparent;color:var(--ink);border-radius:8px;font-size:13px;line-height:1;padding:9px 10px;text-align:left}.userMenuItem:hover{background:#f1f5f9}.userMenuLogout{border-top:1px solid #e2e8f0;margin-top:2px;padding-top:10px}.main{width:min(100% - 48px,1120px);margin:0 auto;padding:54px 0}.eyebrow{color:var(--accent);font-weight:700;font-size:12px;letter-spacing:.08em;text-transform:uppercase}.hero{display:flex;align-items:end;justify-content:space-between;gap:24px;margin-bottom:36px}.hero h1{font-size:clamp(30px,5vw,48px);margin-bottom:12px}.user-note{color:var(--muted);font-size:14px}.grid{display:grid;grid-template-columns:repeat(3,1fr);grid-gap:16px;gap:16px}.grid.grid-three{grid-template-columns:repeat(3,minmax(0,1fr))}.grid.grid-two{grid-template-columns:repeat(2,minmax(0,1fr))}.grid.grid-one{grid-template-columns:minmax(0,1fr)}.panel{border:1px solid var(--line);background:var(--surface);padding:24px;min-height:170px;box-shadow:0 10px 28px rgba(15,23,42,.06);border-radius:14px}.panel h2{font-size:17px;margin:12px 0 8px}.panel p{color:var(--muted);font-size:14px;line-height:1.7;margin:0}.panel .status{color:var(--accent);font-size:12px;font-weight:700}.guide-list{margin:0;padding-left:20px;color:var(--muted);line-height:2;font-size:14px}.table{width:100%;border-collapse:collapse;background:#fff;border:1px solid var(--line);font-size:14px;border-radius:12px;overflow:hidden}.table td,.table th{border-bottom:1px solid var(--line);text-align:left;padding:13px 16px}.table th{color:#334155;font-size:12px;font-weight:600;background:#f8fafc}@media (max-width:720px){.auth-card{padding:28px 22px}.topbar{padding:0 20px}.nav{gap:14px}.nav a{display:none}.userMenuTrigger{padding:7px 11px}.main{width:min(100% - 32px,1120px);padding-top:36px}.hero{display:block}.grid,.grid.grid-one,.grid.grid-three,.grid.grid-two{grid-template-columns:1fr}}