:root{--forest:#1b3d2c;--forest-dark:#12281d;--cream:#faf7f0;--cream-card:#fff;--ink:#1a1a1a;--ink-soft:#55554f;--border:#e5e0d5}*{box-sizing:border-box}body{background:var(--cream);color:var(--ink);margin:0;font-family:-apple-system,BlinkMacSystemFont,Helvetica Neue,Arial,sans-serif;line-height:1.6}h1,h2,h3{color:var(--forest-dark);margin:0 0 .5em;font-family:Georgia,Times New Roman,serif;font-weight:500;line-height:1.2}h1{font-size:2.4rem}h2{font-size:1.8rem}h3{font-size:1.3rem}em{color:var(--forest);font-style:italic}p{color:var(--ink-soft)}a{color:var(--forest);text-decoration:none}a:hover{text-decoration:underline}button{background:var(--forest);color:#fff;cursor:pointer;border:none;border-radius:4px;padding:12px 24px;font-family:inherit;font-size:.95rem;font-weight:500;transition:background .15s}button:hover{background:var(--forest-dark)}button:disabled{opacity:.5;cursor:not-allowed}button.secondary{color:var(--forest);border:1px solid var(--forest);background:0 0}button.secondary:hover{background:var(--forest);color:#fff}input,select,textarea{border:1px solid var(--border);color:var(--ink);background:#fff;border-radius:4px;padding:10px 12px;font-family:inherit;font-size:.95rem}input:focus,select:focus,textarea:focus{border-color:var(--forest);outline:none}label{color:var(--ink-soft);margin-bottom:6px;font-size:.85rem;font-weight:500;display:block}.card{background:var(--cream-card);border:1px solid var(--border);border-radius:8px;padding:24px}.eyebrow{text-transform:uppercase;letter-spacing:.08em;color:var(--forest);margin-bottom:8px;font-size:.75rem;font-weight:600;display:block}table{border-collapse:collapse;width:100%}th,td{text-align:left;border-bottom:1px solid var(--border);padding:10px 8px}th{color:var(--ink-soft);text-transform:uppercase;letter-spacing:.04em;font-size:.8rem}.portal-shell{max-width:900px;margin:0 auto;padding:40px 24px 80px}.portal-header{justify-content:space-between;align-items:center;margin-bottom:32px;display:flex}.portal-header h1{margin:0}.icon-badge{background:var(--forest);color:#fff;border-radius:50%;justify-content:center;align-items:center;width:40px;height:40px;margin-bottom:10px;font-size:1.1rem;display:flex}.status-pill{color:var(--forest-dark);background:#eaf0ea;border-radius:20px;padding:3px 10px;font-size:.75rem;font-weight:500;display:inline-block}.flash-banner{background:var(--forest);color:#fff;text-align:center;letter-spacing:.02em;padding:8px 16px;font-size:.85rem;font-weight:500}.card{transition:transform .25s cubic-bezier(.16,1,.3,1),box-shadow .25s,border-color .25s}.card:hover{border-color:#c9d9ce;transform:translateY(-3px);box-shadow:0 12px 30px -14px #1b3d2c40}button{transition:background .2s,transform .2s cubic-bezier(.16,1,.3,1),box-shadow .2s}button:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 8px 20px -8px #1b3d2c59}button:active:not(:disabled){transform:translateY(0)}.reveal{opacity:0;transition:opacity .7s cubic-bezier(.16,1,.3,1),transform .7s cubic-bezier(.16,1,.3,1);transform:translateY(20px)}.reveal.in{opacity:1;transform:translateY(0)}@media (prefers-reduced-motion:reduce){.card,button,.reveal{transition:none}.reveal{opacity:1;transform:none}}
