:root{--paper:#f6f2ea;--paper-2:#efe9dd;--ink:#1c1916;--ink-soft:#5c554c;--line:#d8cfbe;--oxblood:#7a1f2b;--oxblood-deep:#5c141d;--good:#2f6b3f;--display:"Fraunces",Georgia,serif;--body:"IBM Plex Sans",-apple-system,sans-serif;--mono:"IBM Plex Mono",ui-monospace,monospace}*{box-sizing:border-box}body,html{margin:0;padding:0}body{background-color:var(--paper);background-image:repeating-linear-gradient(0deg,transparent,transparent 31px,rgba(120,108,92,.06) 32px),radial-gradient(120% 80% at 50% -10%,var(--paper) 40%,var(--paper-2) 100%);color:var(--ink);font-family:var(--body);-webkit-font-smoothing:antialiased}.eyebrow{text-transform:uppercase;letter-spacing:.22em;font-size:11px;color:var(--oxblood);margin:0 0 6px}.eyebrow,.mono{font-family:var(--mono)}.auth-shell{min-height:100vh;display:grid;place-items:center;padding:24px}.auth-card{width:100%;max-width:420px;background:#fffdf9;border:1px solid var(--line);box-shadow:inset 0 1px 0 #fff,0 24px 60px -28px rgba(28,25,22,.35);padding:44px 40px 32px;position:relative;animation:rise .5s cubic-bezier(.2,.7,.2,1) both}.auth-rule{position:absolute;top:0;left:0;right:0;height:3px;background:linear-gradient(90deg,var(--oxblood),var(--oxblood-deep))}.auth-title{font-family:var(--display);font-weight:600;font-size:34px;line-height:1.05;margin:0 0 10px;letter-spacing:-.01em}.auth-sub{color:var(--ink-soft);margin:0 0 28px;font-size:15px}.btn-google{width:100%;padding:13px 16px;font-family:var(--body);font-size:15px;font-weight:500;color:#fffdf9;background:var(--ink);border:1px solid var(--ink);cursor:pointer;transition:transform .15s ease,background .2s ease}.btn-google:hover{background:var(--oxblood-deep);border-color:var(--oxblood-deep);transform:translateY(-1px)}.auth-foot{margin:22px 0 0;font-size:12.5px;color:var(--ink-soft);line-height:1.6}.auth-error{margin:0 0 18px;padding:10px 12px;border-left:3px solid var(--oxblood);background:var(--paper-2);color:var(--oxblood-deep);font-size:14px}.shell{max-width:960px;margin:0 auto;padding:40px 28px}.topbar{display:flex;justify-content:space-between;align-items:flex-start;border-bottom:1px solid var(--line);padding-bottom:22px;margin-bottom:34px}.brandmark{font-family:var(--display);font-weight:600;font-size:28px;margin:0;letter-spacing:-.01em}.who{display:flex;align-items:center;gap:14px}.who-name{font-size:14px;color:var(--ink-soft)}.role-badge{font-size:11px;letter-spacing:.08em;padding:4px 9px;border:1px solid var(--oxblood);color:var(--oxblood);border-radius:2px}.btn-ghost{background:none;border:1px solid var(--line);padding:7px 13px;font-family:var(--body);font-size:13px;cursor:pointer;color:var(--ink);transition:border-color .2s ease}.btn-ghost:hover{border-color:var(--ink)}.panel{background:#fffdf9;border:1px solid var(--line);padding:30px 32px;position:relative;animation:rise .5s cubic-bezier(.2,.7,.2,1) both}.panel h2{font-family:var(--display);font-weight:600;font-size:22px;margin:0 0 10px}.panel p{margin:0 0 8px;line-height:1.6}.muted{color:var(--ink-soft);font-size:14px}.status-dot{display:inline-block;width:9px;height:9px;border-radius:50%;background:var(--good);margin-bottom:14px;box-shadow:0 0 0 4px rgba(47,107,63,.15)}@keyframes rise{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}.nav{display:flex;align-items:center;justify-content:space-between;padding:16px 28px;border-bottom:1px solid var(--line);background:#fffdf9}.nav-left{display:flex;align-items:baseline;gap:30px}.nav-brand{font-family:var(--display);font-weight:600;font-size:19px}.nav-links{display:flex;gap:22px}.nav-links a{color:var(--ink-soft);text-decoration:none;font-size:14px}.nav-links a:hover{color:var(--ink)}.container{max-width:1040px;margin:0 auto;padding:36px 28px 80px}.page-head{display:flex;justify-content:space-between;align-items:flex-end;gap:20px;margin-bottom:26px}.page-title{font-family:var(--display);font-weight:600;font-size:30px;margin:4px 0 0;letter-spacing:-.01em}.stat-row{display:grid;grid-template-columns:repeat(3,1fr);grid-gap:16px;gap:16px;margin-bottom:14px}.stat{background:#fffdf9;border:1px solid var(--line);padding:20px 22px}.stat-num{font-family:var(--display);font-size:36px;font-weight:600;line-height:1}.stat-label{font-family:var(--mono);font-size:10.5px;letter-spacing:.12em;text-transform:uppercase;color:var(--ink-soft);margin-top:9px}table.reg{width:100%;border-collapse:collapse;background:#fffdf9;border:1px solid var(--line);font-size:14px}.reg th{text-align:left;font-family:var(--mono);font-size:10.5px;letter-spacing:.1em;text-transform:uppercase;color:var(--ink-soft);padding:11px 16px;border-bottom:1px solid var(--line);font-weight:500}.reg td{padding:12px 16px;border-bottom:1px solid var(--paper-2)}.reg tr:last-child td{border-bottom:none}.reg a{color:var(--oxblood);text-decoration:none}.reg a:hover{text-decoration:underline}.badge{font-family:var(--mono);font-size:10.5px;letter-spacing:.05em;padding:3px 8px;border:1px solid;border-radius:2px;display:inline-block}.b-valid{color:var(--good);border-color:rgba(47,107,63,.5)}.b-expiring{color:#9a6a00;border-color:rgba(154,106,0,.5)}.b-expired{color:var(--oxblood);border-color:rgba(122,31,43,.5);background:rgba(122,31,43,.05)}.b-muted{color:var(--ink-soft);border-color:var(--line)}.section{margin-top:38px}.section h2{font-family:var(--display);font-weight:600;font-size:21px;margin:0 0 14px}form.stack{display:grid;grid-gap:14px;gap:14px;max-width:560px}.inline-form{display:flex;gap:10px;flex-wrap:wrap;align-items:flex-end;max-width:none}.field{display:grid;grid-gap:5px;gap:5px}.field label{font-size:12.5px;color:var(--ink-soft)}.field input,.field select{padding:9px 11px;border:1px solid var(--line);background:#fff;font-family:var(--body);font-size:14px;color:var(--ink)}.field input:focus,.field select:focus{outline:none;border-color:var(--ink)}.btn{background:var(--ink);color:#fffdf9;border:1px solid var(--ink);padding:10px 17px;font-family:var(--body);font-size:14px;cursor:pointer;text-decoration:none;display:inline-block;justify-self:start;transition:background .2s ease}.btn:hover{background:var(--oxblood-deep);border-color:var(--oxblood-deep)}.muted-sm{color:var(--ink-soft);font-size:13px}.evt{display:flex;gap:14px;padding:12px 0;border-bottom:1px solid var(--paper-2);font-size:14px;line-height:1.5}.evt-meta{font-size:11px;color:var(--ink-soft);min-width:150px}.evt-hash,.evt-meta{font-family:var(--mono)}.evt-hash{font-size:10px;color:#b9ad98}.empty{padding:22px;border:1px dashed var(--line);text-align:center;background:rgba(255,253,249,.5)}.empty,.notice{color:var(--ink-soft);font-size:14px}.notice{padding:12px 16px;margin-bottom:18px;border-left:3px solid #9a6a00;background:var(--paper-2)}.viewas-bar{position:-webkit-sticky;position:sticky;top:0;z-index:10;display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:10px 16px;padding:10px 28px;background:var(--oxblood);color:#fffdf9;font-size:14px}.viewas-exit{background:transparent;color:#fffdf9;border:1px solid rgba(255,253,249,.6);padding:6px 12px;font-family:var(--body);font-size:13px;cursor:pointer}.viewas-exit:hover{background:rgba(255,253,249,.12)}.stack{display:grid;grid-gap:14px;gap:14px}.contract{background:#fffdf9;border:1px solid var(--line);padding:22px 24px}.contract-head{display:flex;flex-wrap:wrap;align-items:baseline;justify-content:space-between;gap:6px 16px;margin-bottom:16px}.contract-head h2{font-family:var(--display);font-weight:600;font-size:21px;margin:0}.facts{display:grid;grid-template-columns:repeat(auto-fill,minmax(230px,1fr));grid-gap:14px 24px;gap:14px 24px;margin:0}.facts dt{font-family:var(--mono);font-size:10.5px;letter-spacing:.1em;text-transform:uppercase;color:var(--ink-soft);margin-bottom:3px}.facts dd{margin:0;font-size:14px;line-height:1.5}.sub{margin-top:22px}.sub h3{font-family:var(--mono);font-size:11px;letter-spacing:.1em;text-transform:uppercase;color:var(--ink-soft);font-weight:500;margin:0 0 8px}.reg.compact td,.reg.compact th{padding:8px 12px}.plain{padding-left:18px;line-height:1.7}.clauses,.plain{margin:0;font-size:14px}.clauses{padding-left:20px}.clauses li{margin-bottom:10px}.clauses p{margin:3px 0 0;color:var(--ink-soft);line-height:1.55}.flags{margin:0;padding:14px 18px 14px 34px;background:rgba(154,106,0,.07);border-left:3px solid #9a6a00;font-size:14px;line-height:1.6}.flags li{margin-bottom:6px}@media (max-width:640px){.nav{flex-wrap:wrap;gap:10px;padding:14px 16px}.nav-left{flex-wrap:wrap;gap:12px 20px}.container{padding:24px 16px 60px}.contract{padding:18px 16px}.reg{display:block;overflow-x:auto}}