:root{background:#101913;--accent:#2f65d9;--ink:#20334e;--muted:#7b889d;--line:#dce3ed;--surface:#fff;--wash:#f0f4fa;--radius:14px;color:var(--ink)}.brand{font-size:23px;letter-spacing:-.9px}.brand-symbol{background:#20392a;border-radius:6px;font-size:25px}.hero-line h1{font-size:clamp(35px,3.6vw,53px);font-weight:650;letter-spacing:-2px}.hero-line h1 span{color:#8eecaa}.passport-layout{display:grid;grid-template-columns:355px 1fr;gap:24px}.vault-panel{padding:0;overflow:hidden;align-self:start}.passport-cover{background:#101b14;color:#edf5ef;padding:28px;position:relative;overflow:hidden}.passport-cover:after{content:"";position:absolute;width:175px;height:175px;border:1px solid #33534033;right:-65px;top:29px;border-radius:50%;box-shadow:0 0 0 19px #00000015,0 0 0 39px #00000010,0 0 0 60px #00000008}.passport-cover .eyebrow{color:#8eecaa;font-size:9px;letter-spacing:2px;margin-bottom:24px}.passport-owner{font-size:26px;font-weight:400;letter-spacing:-.7px;margin-top:12px}.passport-emblem{height:48px;width:48px;border:1px solid #33534080;border-radius:50%;position:relative;display:flex;align-items:center;justify-content:center;color:#8eecaa;font-size:27px}.passport-cover .micro{display:block;color:#8eecaa;font-size:9px;margin-top:5px}.passport-code{font:8px Consolas,monospace;letter-spacing:1px;line-height:1.8;color:#8eecaa;border-top:1px solid #3353404a;padding-top:16px;margin-top:23px;overflow-wrap:anywhere}.vault-content{padding:23px}.vault-content .section-line{margin-bottom:10px}.vault-content h2{font-size:16px}.memory-field{display:flex;gap:12px;align-items:flex-start;padding:16px 0;border-bottom:1px solid #263c2e;cursor:pointer}.memory-field:last-of-type{border:0}.memory-field input{height:16px;width:16px;accent-color:#8eecaa;margin:4px 0 0;flex-shrink:0}.field-title{font-size:12px;color:#a2b6a9;display:block;font-weight:600}.field-value{font-size:11px;color:#a2b6a9;display:block;line-height:1.7;margin-top:5px;font-weight:400}.private-mark{font-size:9px;padding:3px 6px;color:#e0ba76;background:#101913;border-radius:4px;margin-left:6px}.vault-content>.notice{margin-top:12px;font-size:10px}.passport-right{display:grid;gap:23px;align-content:start}.grant-builder{padding:25px 28px}.step-caption{color:#8eecaa;font-size:10px}.agent-picks{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin:21px 0}.agent-choice{background:#101913;border:1px solid #263c2e;border-radius:10px;text-align:left;display:flex;align-items:center;gap:12px;padding:15px}.agent-choice[aria-pressed=true]{background:#101913;border-color:#335340;box-shadow:0 0 0 1px #0000001a}.agent-icon{width:38px;height:38px;background:#101913;color:#8eecaa;border-radius:10px;display:flex;align-items:center;justify-content:center;font-size:20px;font-weight:400;flex-shrink:0}.agent-choice.writer .agent-icon{background:#101913;color:#a2b6a9}.agent-choice strong{display:block;font-size:12px;font-weight:600;color:#a2b6a9}.agent-choice small{display:block;font-size:10px;color:#a2b6a9;margin-top:4px;font-weight:400}.grant-options{display:grid;grid-template-columns:1.25fr .7fr .85fr;gap:13px}.grant-options label{font-size:11px;color:#a2b6a9;font-weight:500}.grant-options input,.grant-options select{font-size:12px;min-height:44px;padding:10px}.grant-summary{display:flex;justify-content:space-between;align-items:center;gap:20px;margin-top:20px;padding-top:18px;border-top:1px solid #263c2e}.grant-summary p{font-size:11px;line-height:1.8}.grant-summary p strong{color:#8eecaa;font-weight:600}.grant-summary button{font-size:12px;padding:12px 23px}.grant-help{font-size:10px;line-height:1.75;color:#a2b6a9;margin-top:12px}.access-panel{padding:25px 28px}.access-list{display:grid;gap:13px}.access-card{border:1px solid #263c2e;padding:17px;border-radius:10px}.access-card-head{display:flex;justify-content:space-between;align-items:center;gap:12px}.access-card h3{font-size:12px;color:#a2b6a9}.access-state{font-size:9px;padding:4px 7px;border-radius:5px;background:#101913;color:#a2b6a9}.access-state.blocked{background:#101913;color:#e0ba76}.grant-scope{display:flex;flex-wrap:wrap;gap:5px;margin:12px 0}.scope-token{color:#a2b6a9;background:#101913;font-size:9px;border-radius:4px;padding:4px 7px}.grant-limits{display:flex;gap:18px;flex-wrap:wrap;color:#a2b6a9;font-size:9px}.grant-card-bottom{display:flex;justify-content:space-between;gap:14px;align-items:center;margin-top:13px}.grant-card-bottom .micro{font-size:9px;overflow-wrap:anywhere}.grant-card-bottom .button-row{gap:6px;flex-shrink:0}.grant-card-bottom button{padding:6px 9px;font-size:10px;font-weight:500}.grant-card-bottom button[data-action=request]{color:#edf5ef}.grant-card-bottom .danger-button{background:#101913;color:#f09f9c;border-color:#263c2e}.access-head-controls{display:flex;align-items:center;gap:12px}.access-head-controls .text-button{font-size:10px}.packet-panel{margin-top:24px;display:grid;grid-template-columns:1fr 1fr;overflow:hidden;padding:0}.packet-data{padding:25px 28px}.packet-data .section-line{margin-bottom:13px}.packet-data h2{font-size:17px}.packet-json{padding:18px;background:#101913;border:1px solid #263c2e;border-radius:9px;min-height:157px;margin:0;font-family:Consolas,monospace;font-size:11px;line-height:1.9;white-space:pre-wrap;overflow-wrap:anywhere;color:#a2b6a9}.packet-proof{padding:25px 28px;background:#101913;border-left:1px solid var(--line)}.packet-proof h2{font-size:15px;margin-bottom:14px}.proof-label{font-size:9px;letter-spacing:.5px;color:#a2b6a9;margin-bottom:6px}.proof-hash{font-family:Consolas,monospace;overflow-wrap:anywhere;font-size:10px;color:#a2b6a9;line-height:1.8}.packet-proof .proof-link{display:inline-block;color:#8eecaa;font-size:11px;margin-top:15px;border-bottom:1px solid #263c2e;padding-bottom:2px}.packet-note{font-size:10px;line-height:1.8;color:#a2b6a9;margin-top:16px}.revocation-note{display:flex;gap:10px;align-items:flex-start;margin-top:20px;font-size:11px;color:#a2b6a9;line-height:1.8}.revocation-note span{color:#8eecaa;font-size:17px}.revocation-note strong{color:#a2b6a9;font-weight:500}.receipts{margin-top:22px}.header-notice{font-size:10px;color:#a2b6a9;max-width:220px;text-align:right;line-height:1.8}@media(max-width:1130px){.passport-layout{grid-template-columns:300px 1fr;gap:20px}.grant-builder,.access-panel{padding:22px}.grant-card-bottom{flex-wrap:wrap}.agent-choice{padding:12px;gap:9px}.agent-choice small{font-size:9px}.grant-options{grid-template-columns:1fr 1fr}.grant-options label:first-child{grid-column:1/-1}.grant-summary{align-items:stretch}.grant-summary button{padding:11px 15px;flex-shrink:0}.brand{font-size:20px}}@media(max-width:850px){.passport-layout{grid-template-columns:1fr}.vault-panel{display:grid;grid-template-columns:40% 1fr}.passport-cover{display:flex;flex-direction:column;justify-content:center;padding:25px}.passport-cover .eyebrow{font-size:8px;letter-spacing:1px}.passport-code{font-size:7px}.vault-content{padding:22px}.memory-field{padding:12px 0}.vault-content>.notice{display:none}.grant-options{grid-template-columns:1.2fr .7fr .9fr}.grant-options label:first-child{grid-column:auto}.packet-panel{grid-template-columns:1fr}.packet-proof{border-left:0;border-top:1px solid var(--line)}.header-notice{display:none}.grant-card-bottom{flex-wrap:nowrap}}@media(max-width:560px){.brand{font-size:18px}.vault-panel{display:block}.passport-cover{padding:23px}.passport-cover .eyebrow{margin-bottom:15px}.passport-owner{font-size:24px;position:absolute;left:88px;top:56px}.passport-cover .micro{margin:0;position:absolute;left:90px;top:101px}.passport-code{padding-top:14px;margin-top:19px}.passport-emblem{width:44px;height:44px}.vault-content{padding:20px}.agent-choice{padding:12px;gap:8px}.agent-icon{width:30px;height:30px;font-size:18px}.agent-choice strong{font-size:10px}.agent-choice small{font-size:9px}.grant-builder,.access-panel{padding:20px}.grant-options{grid-template-columns:1fr 1fr}.grant-options label:first-child{grid-column:1/-1}.grant-summary{align-items:flex-start;flex-direction:column;gap:13px}.grant-summary button{width:100%}.grant-card-bottom{flex-wrap:wrap}.grant-card-bottom .button-row{width:100%}.grant-card-bottom .button-row button{flex:1;padding:8px 6px}.grant-limits{gap:10px}.packet-data,.packet-proof{padding:20px}.passport-right{gap:20px}.section-line h2{font-size:16px}.access-head-controls{gap:7px}.access-head-controls>.micro{display:none}.network{font-size:8px;gap:4px}}

/* PocketPlay hacker theme: static grid, one entrance, no animation loop. */
:root{color-scheme:dark;color:#edf5ef;background:#080d0a;--canvas:#080d0a;--surface:#101913;--ink:#edf5ef;--muted:#9bafa2;--line:#293d30;--border:#293d30;--wash:#15231b;--accent:#8ef0a7;--purple:#8ef0a7;--cobalt:#8ef0a7;--cobalt-pale:#193524;--amber:#e0ba76;--amber-pale:#302817;--pine:#8ef0a7;--pine-pale:#173622;--green:#8ef0a7}
body{background-color:#080d0a;background-image:linear-gradient(#8ef0a705 1px,transparent 1px),linear-gradient(90deg,#8ef0a705 1px,transparent 1px);background-size:40px 40px;color:#edf5ef;animation:desk-arrive .35s ease-out both}
::selection{background:#8ef0a7;color:#08140c}button,a{transition:background-color .16s,border-color .16s,box-shadow .16s}button:hover:not(:disabled){filter:none;box-shadow:0 0 0 1px #8ef0a755}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,summary:focus-visible{outline:2px solid #8ef0a7;outline-offset:3px}
.primary,.button.primary,.step-button.primary{background:#8ef0a7;color:#07110b;border-color:#8ef0a7;box-shadow:0 2px 16px #8ef0a70d}.primary:hover:not(:disabled){background:#b1f8c2}.primary .step-number{color:#07110b;background:#07110b18}.brand-mark,.brand-symbol{background:#8ef0a7;color:#07110b}.secondary,.button.secondary{color:#dcece1;background:#132018;border-color:#304c39}.panel{box-shadow:inset 0 1px 0 #8ef0a709}.eyebrow,.micro,.state-kind,.proof-tag,.recent-label{font-family:'IBM Plex Mono',Consolas,monospace}.hero-line h1 span,.brand strong>span{color:#8ef0a7}input,select,textarea{color-scheme:dark}dialog,.modal{background:#101913;color:#edf5ef;border-color:#35523f}dialog::backdrop,.modal-backdrop{background:#020805b8;backdrop-filter:none}.toast,.feedback{background:#183023;color:#bcf4cd;border-color:#3b704d}.feedback.error,.message{background:#321f20;color:#f6c5bf;border-color:#70423e}
@keyframes desk-arrive{from{opacity:0;transform:translateY(5px)}to{opacity:1;transform:none}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}
