:root{color-scheme:light;--ink: #14241c;--muted: #5c6b63;--line: #d7e2db;--paper: #f3f6f4;--card: #ffffff;--green: #1b6b43;--green-dark: #124d30;--danger: #8d2b2b;font-family:Segoe UI,system-ui,sans-serif}*{box-sizing:border-box}body{margin:0;background:var(--paper);color:var(--ink)}button,input,select{font:inherit}.shell{max-width:1080px;margin:0 auto;padding:32px 20px 64px}.top{display:flex;justify-content:space-between;align-items:flex-end;gap:16px;margin-bottom:24px}h1{margin:0;font-size:1.6rem;font-weight:650;letter-spacing:-.02em}.eyebrow{margin:0 0 4px;color:var(--green);font-size:.78rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase}.lede{margin:6px 0 0;color:var(--muted);max-width:42rem}.card{background:var(--card);border:1px solid var(--line);border-radius:12px;padding:20px}.login{width:min(420px,100%);margin:12vh auto 0}label{display:block;margin:14px 0 6px;font-size:.92rem}input,select{width:100%;border:1px solid var(--line);border-radius:8px;padding:10px 12px;background:#fff;color:var(--ink)}.row-select{width:auto;min-width:9rem}button{border:0;border-radius:8px;padding:10px 14px;background:var(--green);color:#fff;cursor:pointer}button:hover{background:var(--green-dark)}button:disabled{opacity:.55;cursor:default}button.ghost{background:transparent;color:var(--ink);border:1px solid var(--line)}button.ghost:hover{background:#eef3f0}.actions{display:flex;gap:8px;margin-top:18px}.error{color:var(--danger);margin:12px 0 0}.note{color:var(--muted);margin:8px 0 0;font-size:.92rem}.table-wrap{overflow-x:auto;border:1px solid var(--line);border-radius:12px;background:var(--card)}table{width:100%;border-collapse:collapse;min-width:760px}th,td{text-align:left;padding:12px 14px;border-bottom:1px solid var(--line);vertical-align:middle}th{font-size:.78rem;letter-spacing:.04em;text-transform:uppercase;color:var(--muted);font-weight:650}tr:last-child td{border-bottom:0}.name{font-weight:650}.sub{display:block;color:var(--muted);font-weight:400;font-size:.85rem}.plan-cell{display:flex;gap:8px;align-items:center}.section{margin:28px 0 10px;font-size:1.05rem}.empty{padding:28px 16px;text-align:center;color:var(--muted)}
