:root{--canvas:#f7f7f5;--paper:#fff;--ink:#1b1f32;--muted:#6d7180;--line:#e5e7eb;--accent:#cf451f;--accent-dark:#ad3518;--accent-soft:#fff0ea;--navy:#1b1f32;--navy-soft:#eeeff8;--red:#b42318;--red-soft:#fff0ed;--radius:12px;--shadow:0 16px 36px #1b1f3214}*{box-sizing:border-box}html{background:var(--canvas);color:var(--ink);font-family:-apple-system,system-ui,SF Pro Text,Inter,Segoe UI,sans-serif}body{min-height:100vh;margin:0}a{color:inherit}button,input,select{font:inherit}button{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.55}:focus-visible{outline-offset:3px;outline:3px solid #f0552a59}.shell{width:min(1180px,100% - 48px);margin:0 auto;padding:30px 0 72px}.masthead{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;gap:24px;padding:0 0 22px;display:flex}.brand{letter-spacing:-.02em;align-items:center;gap:11px;font-size:15px;font-weight:760;text-decoration:none;display:flex}.brand-mark{background:var(--accent);color:#fff;border-radius:11px;place-items:center;width:35px;height:35px;font-size:12px;font-weight:800;display:grid}.mast-actions{color:var(--muted);align-items:center;gap:16px;font-size:14px;display:flex}.page-heading{justify-content:space-between;align-items:end;gap:24px;margin:56px 0 24px;display:flex}h1{letter-spacing:-.045em;max-width:760px;margin:0;font-size:clamp(34px,5vw,58px);line-height:.98}h2{letter-spacing:-.03em;margin:0;font-size:24px}p{line-height:1.6}.lede{max-width:66ch;color:var(--muted);margin:12px 0 0}.button{background:var(--accent);color:#fff;border:0;border-radius:12px;justify-content:center;align-items:center;gap:8px;min-height:46px;padding:0 18px;font-weight:760;text-decoration:none;transition:all .16s;display:inline-flex}.button:hover{background:var(--accent-dark);transform:translateY(-1px);box-shadow:0 8px 18px #f0552a33}.button.secondary{color:var(--ink);box-shadow:inset 0 0 0 1px var(--line);background:#fff}.button.secondary:hover{background:var(--navy-soft)}.button.danger{background:var(--red)}.button.text{min-height:auto;color:var(--accent);box-shadow:none;background:0 0;padding:5px}.button.text:hover{box-shadow:none;background:0 0}.panel{background:var(--paper);border-radius:var(--radius);box-shadow:var(--shadow);overflow:hidden}.table-wrap{overflow-x:auto}table{border-collapse:collapse;width:100%;min-width:900px}th{text-align:left;color:#676c7b;text-transform:uppercase;letter-spacing:.04em;background:#f1f2f5;padding:14px 18px;font-size:12px;font-weight:780}td{border-top:1px solid var(--line);vertical-align:top;padding:18px;font-size:14px}tbody tr{transition:background .15s}tbody tr:hover{background:#fffaf8}.identity{gap:4px;display:grid}.identity strong{font-size:15px}.muted{color:var(--muted)}.sr-only{clip:rect(0,0,0,0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.badges{flex-wrap:wrap;gap:6px;display:flex}.badge{color:#525867;background:#eff0f4;border-radius:999px;align-items:center;min-height:25px;padding:3px 9px;font-size:12px;font-weight:740;display:inline-flex}.badge.allowed,.badge.active{background:var(--accent-soft);color:#b9391c}.badge.disabled{background:var(--red-soft);color:var(--red)}.empty{text-align:center;color:var(--muted);padding:56px 24px}.auth-page{grid-template-columns:minmax(310px,1.12fr) minmax(420px,.88fr);min-height:100vh;display:grid}.auth-context{background:var(--navy);color:#fff;flex-direction:column;justify-content:space-between;padding:clamp(38px,7vw,104px);display:flex}.auth-context .brand{color:#fff}.auth-context h1{max-width:650px;font-size:clamp(44px,6.5vw,80px);line-height:.94}.auth-context p{color:#c7c9d6;max-width:52ch;font-size:17px}.auth-context small{color:#afb2c5;font-weight:650}.auth-form-wrap{background:var(--canvas);place-items:center;padding:32px;display:grid}.auth-card{width:min(100%,410px)}.auth-card h2{font-size:30px}.form{gap:20px;margin-top:30px;display:grid}.field{gap:8px;display:grid}.field label,.fieldset legend{color:#454a5d;font-size:13px;font-weight:760}.field input,.field select{border:1px solid var(--line);width:100%;min-height:48px;color:var(--ink);background:#fff;border-radius:12px;padding:10px 13px}.field input:focus,.field select:focus{border-color:var(--accent);outline:none;box-shadow:0 0 0 4px #f0552a1f}.form-grid{grid-template-columns:1fr 1fr;gap:18px;display:grid}.fieldset{border:1px solid var(--line);background:#fcfcfb;border-radius:12px;margin:5px 0 0;padding:20px}.checks{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-top:14px;display:grid}.check{align-items:center;gap:10px;min-height:40px;display:flex}.check input{width:18px;height:18px;accent-color:var(--accent)}.notice{color:var(--red);background:var(--red-soft);border-radius:12px;padding:12px 14px;font-size:14px}.success{color:#b9391c;background:var(--accent-soft)}.form-actions{align-items:center;gap:12px;display:flex}.narrow{width:min(760px,100% - 48px);margin:0 auto;padding:38px 0 72px}.form-panel{margin-top:28px;padding:clamp(24px,4vw,38px)}.section-rule{border:0;border-top:1px solid var(--line);margin:32px 0}.forbidden{text-align:center;place-items:center;min-height:100vh;padding:32px;display:grid}@media (max-width:760px){.shell{width:min(100% - 28px,1180px);padding-top:22px}.auth-page{grid-template-columns:1fr}.auth-context{min-height:265px;padding:36px}.auth-context h1{font-size:48px}.auth-context p{display:none}.auth-form-wrap{padding:48px 24px}.masthead,.page-heading{align-items:flex-start}.page-heading{flex-direction:column;margin-top:38px}.mast-actions span{display:none}.form-grid,.checks{grid-template-columns:1fr}.narrow{width:min(100% - 28px,760px)}.table-wrap{box-shadow:none;background:0 0;overflow:visible}.table-wrap table,.table-wrap tbody,.table-wrap tr,.table-wrap td{width:100%;min-width:0;display:block}.table-wrap thead{display:none}.table-wrap tbody{gap:14px;display:grid}.table-wrap tr{background:var(--paper);border-radius:var(--radius);box-shadow:var(--shadow);padding:18px}.table-wrap td{border:0;grid-template-columns:108px 1fr;gap:12px;padding:9px 0;display:grid}.table-wrap td:before{content:attr(data-label);color:var(--muted);font-size:12px;font-weight:760}.table-wrap td:last-child{padding-top:14px}.table-wrap td:last-child .button{justify-self:start}}
