/* AdSOL workspace identity. Shared across every route. */
:root{--bg:#f4f2eb;--ink:#24332d;--muted:#68756d;--line:#d8dbd1;--mint:#d8ef98;--green:#306044;--sidebar:#f4f2eb}body{background:var(--bg);color:var(--ink);font-family:"Segoe UI",Arial,sans-serif;font-size:14px}.sidebar{position:relative;inset:auto;width:auto;min-height:74px;background:#213c2d;padding:18px 32px;flex-direction:row;align-items:center;gap:40px;border-bottom:4px solid #d8ef98;color:white}.brand{font-size:29px;letter-spacing:-1px;flex-shrink:0}.brand-icon{background:#d8ef98;border-radius:3px}.brand-dot{color:#d8ef98}.sidebar nav{display:flex;gap:6px;flex:1}.sidebar nav a{color:#d0dfd4;border-radius:3px;font-size:13px;padding:12px 14px}.sidebar nav a.active{background:#d8ef98;color:#203a2b}.sidebar nav a:hover{background:#36523e;color:white}.workspace,.sidebar-note,.sidebar-foot,.nav-label{display:none}.app-shell{margin-left:0}.topbar{height:56px;background:#eaece3;border-bottom:1px solid #d2d7cb;padding:0 32px}.top-actions{gap:15px}.prototype-chip{background:transparent;color:#4d6657;border-radius:0;border:1px solid #bdcbbb;font-size:9px;padding:6px 9px}.balance-pill{background:#fff;border:1px solid #c4cdbf;border-radius:3px}main{max-width:1420px;margin:0 auto;padding:26px 32px}.network-panel{background:transparent;border:0;border-bottom:1px solid #ced6c8;border-radius:0;box-shadow:none;padding:0 0 17px;margin-bottom:25px}.network-panel strong{font-size:12px}.network-panel small{font-size:10px}.page-heading{margin-bottom:27px}.page-heading h1,#earn .page-heading h1{font-family:Georgia,"Times New Roman",serif;font-size:38px;font-weight:400;letter-spacing:-1.1px;line-height:1.15;margin:8px 0 12px}.page-heading p{font-size:13px;max-width:650px;line-height:1.65}.eyebrow{font-size:9px;letter-spacing:1.7px;color:#61725f}.heading-badge{display:none}.surface,.stat,.draft-card,.ad-card{box-shadow:none;border-radius:4px;border-color:#d4dacd}.surface{background:#fffef9}.button,.view-button{border-radius:3px!important;font-weight:600}.button.dark,.view-button{background:#2b5037;color:#f0f8eb}.button.dark:hover,.view-button:hover{background:#193d25}.filters button{border-radius:3px;background:transparent;border:1px solid #cbd3c3;padding:9px 12px}.filters button[aria-pressed=true]{background:#2b5037;color:white;border-color:#2b5037}.earn-controls select,.earn-search{border-radius:3px;background:#fffef9}.earn-route,#earn .earn-route{background:#e8eddf;border-radius:3px}.earn-intro{display:none}.earner-steps{font-size:12px}.earner-steps span{background:#d8ef98;border-radius:2px}.earning-side{border-radius:4px;background:#fffef9}.earning-balance{background:#e5edda}.earning-balance h2{font-family:Consolas,monospace;font-size:27px;letter-spacing:-1px}.earning-side>div{padding:22px}.earning-side h3{font-weight:600}.earning-recent-row strong{font-family:Consolas,monospace}#featured-ad{border-radius:4px;background:#dce8cd;border-color:#bccaaf}#featured-ad h2{font-family:Georgia,serif;font-weight:400;font-size:29px;letter-spacing:-.4px}#earn .earning-workspace .ad-art{background:#e4e8db!important;border-radius:3px}#earn .earning-workspace .ad-card{padding:22px 0}#earn .earning-workspace .ad-meta span:last-child{background:transparent;border:1px solid #ced6c7;border-radius:2px}.reward{font-family:Consolas,monospace}.ad-body .ad-requirement{color:#647457}.advertise-layout{grid-template-columns:minmax(0,1fr) 330px;gap:28px}#campaign-form{padding:28px}#campaign-form h2{font-size:20px}input,select,textarea,.draft-card input{border-radius:3px!important;border-color:#c5cebd!important;background:#fffefb!important;padding:12px!important}label{font-weight:500}input:focus,textarea:focus,select:focus{outline-color:#789c51}.campaign-estimate{background:#e2e9d8;border:1px solid #bdcbb0;border-radius:4px;color:#293d2b;padding:27px}.campaign-estimate h2{font-family:Georgia,serif;font-size:29px;font-weight:400;line-height:1.2}.estimate-number{font-family:Consolas,monospace;letter-spacing:-2px}.wallet-card{border-radius:4px;background:#294531;box-shadow:none}.wallet-card h2{font-family:Consolas,monospace}.payout-journey{border-left:0;background:#e5ecda;border-radius:4px}.treasury-panel,.treasury-panel #treasury-address,.deposit-address{border-radius:3px;background:#eef1e7}.table-wrap{border-radius:4px}.status-pill{border-radius:2px}.transparency{font-size:11px}.review-note{border-left:0;background:#edf1e4}.main-footer{border-top:1px solid #ccd5c4;padding-top:22px}.hero-banner{background:#294531;border-radius:4px}.check-label input{accent-color:#365f39}.listing-heading{border-bottom:2px solid #adbda4}.earning-rules p{border-bottom:1px solid #e1e5d9;padding-bottom:9px}
@media(max-width:1000px){.sidebar{gap:20px;padding:14px 22px}.sidebar nav a{padding:10px;font-size:12px}.advertise-layout{grid-template-columns:minmax(0,1fr) 260px}}@media(max-width:700px){.sidebar{display:block;padding:17px 20px 0}.sidebar nav{margin-top:15px;overflow-x:auto;padding-bottom:12px;gap:2px}.sidebar nav a{white-space:nowrap;padding:10px 12px}.sidebar nav a>span:first-child{display:none}.topbar{padding:0 20px;height:49px}main{padding:22px 20px}.page-heading h1,#earn .page-heading h1{font-size:32px}.advertise-layout{grid-template-columns:1fr}#campaign-form{padding:22px}.campaign-estimate{padding:22px}.network-panel .field-note{display:none}.network-panel small{line-height:1.6}.earn-controls{gap:12px}.stats-grid{gap:0}.stat{padding:15px 10px}.stat strong{font-size:18px}#featured-ad h2{font-size:25px}.topbar .breadcrumb{font-size:10px}}

.form-section-heading{display:flex;align-items:center;gap:12px;border-top:1px solid #d5dccf;margin:27px 0 20px;padding-top:20px}.form-section-heading span{font-family:Consolas,monospace;font-size:12px;color:#718168}.form-section-heading h3{font-size:14px;font-weight:600;margin:0}.form-section-heading:first-of-type{margin-top:20px}.campaign-next{list-style:none;padding:0;margin:28px 0 18px;counter-reset:steps}.campaign-next li{counter-increment:steps;position:relative;padding:0 0 18px 28px;border-left:1px solid #b9c7ae;margin-left:7px}.campaign-next li:before{content:counter(steps);position:absolute;left:-10px;top:0;width:18px;height:18px;background:#e2e9d8;color:#526949;font-family:Consolas,monospace;text-align:center;font-size:12px}.campaign-next strong,.campaign-next span{display:block}.campaign-next strong{font-size:12px;margin-bottom:4px}.campaign-next span{font-size:11px;line-height:1.6;color:#65745d}.campaign-next li:last-child{border-left-color:transparent}.campaign-estimate{position:sticky;top:20px;align-self:start}.campaign-preview{border:0;border-top:1px solid #cdd5c5;border-bottom:1px solid #cdd5c5;background:transparent;padding:28px 0;box-shadow:none}.campaign-preview .ad-card{background:#fffef9;border-radius:4px;box-shadow:none}.campaign-preview .art-symbol{display:none}.campaign-preview .ad-art{background:#e3e9da;height:90px}.campaign-preview h2{font-family:Georgia,serif;font-weight:400;font-size:27px}#description-count{text-align:right;margin-top:-6px;font-size:10px}
@media(max-width:700px){.campaign-estimate{position:static}.campaign-preview{gap:22px}.form-section-heading{margin-top:24px}}

.balance-pill{display:inline-flex;gap:0;padding:8px 12px;background:transparent;border:0;font-family:Consolas,monospace;font-size:13px;box-shadow:none}.balance-pill:before{content:"Balance";font-family:"Segoe UI",sans-serif;font-size:11px;color:var(--muted);margin-right:9px}.theme-toggle{background:transparent;border:1px solid #bdc8b7;padding:8px 11px;border-radius:3px;color:var(--ink);font-size:11px}.theme-toggle:hover{background:#dfe6d6}:root{color-scheme:light}:root[data-theme=dark]{color-scheme:dark;--bg:#171e1a;--ink:#e3e9df;--muted:#a6b4a8;--line:#39483c;--mint:#d8ef98;--green:#a5cc8e}:root[data-theme=dark] body{background:var(--bg);color:var(--ink)}:root[data-theme=dark] .topbar{background:#202b23;border-color:#3b483c}:root[data-theme=dark] .surface,:root[data-theme=dark] .stat,:root[data-theme=dark] .ad-card,:root[data-theme=dark] .earning-side,:root[data-theme=dark] .campaign-preview .ad-card{background:#222d25;border-color:#42513e;color:var(--ink)}:root[data-theme=dark] input,:root[data-theme=dark] select,:root[data-theme=dark] textarea{background:#18221c!important;border-color:#52644d!important;color:#e3e9df}:root[data-theme=dark] .campaign-estimate,:root[data-theme=dark] .earning-balance,:root[data-theme=dark] #featured-ad,:root[data-theme=dark] .payout-journey{background:#2d3c29;border-color:#546745;color:#e3e9df}:root[data-theme=dark] #featured-ad p,:root[data-theme=dark] #featured-ad small,:root[data-theme=dark] .featured-label,:root[data-theme=dark] .campaign-next span,:root[data-theme=dark] .campaign-next strong{color:#b8c9ad}:root[data-theme=dark] .campaign-next li:before{background:#2d3c29;color:#c5d7b8}:root[data-theme=dark] .network-panel,:root[data-theme=dark] .form-section-heading,:root[data-theme=dark] .campaign-preview{border-color:#42503d}:root[data-theme=dark] .earn-search,:root[data-theme=dark] .earn-route,:root[data-theme=dark] #earn .earn-route,:root[data-theme=dark] .deposit-address,:root[data-theme=dark] .treasury-panel,:root[data-theme=dark] .treasury-panel #treasury-address,:root[data-theme=dark] .review-note{background:#28352b;color:#dce7d5}:root[data-theme=dark] #earn .earning-workspace .ad-art,:root[data-theme=dark] .campaign-preview .ad-art{background:#354631!important;color:#e3e9df}:root[data-theme=dark] #earn .earning-workspace .ad-card:hover{background:#263328}:root[data-theme=dark] .ad-meta span:last-child,:root[data-theme=dark] .filters button,:root[data-theme=dark] .theme-toggle{color:#dce7d5;border-color:#52644d}:root[data-theme=dark] .theme-toggle:hover{background:#344530}:root[data-theme=dark] .status-pill,:root[data-theme=dark] .form-result:not(:empty){background:#31472f;color:#d8edcb}:root[data-theme=dark] .form-result.error:not(:empty){background:#4b2929;color:#f5caca}:root[data-theme=dark] .table-wrap tbody tr:hover{background:#2d3b2d}:root[data-theme=dark] .ad-bottom{background:transparent}:root[data-theme=dark] .eyebrow,:root[data-theme=dark] .ad-requirement{color:#a9bd9c}:root[data-theme=dark] dialog{background:#222d25;color:#e3e9df}@media(max-width:600px){.top-actions{gap:7px}.balance-pill:before{display:none}.prototype-chip{display:none}.balance-pill{font-size:11px;padding:6px}.theme-toggle{font-size:10px;padding:7px}}

#theme-toggle{position:fixed;right:18px;bottom:18px;z-index:1000;display:block!important;background:#fffef9;color:#24332d;border:1px solid #a7b59f;border-radius:6px;padding:10px 14px;font-size:12px;box-shadow:0 2px 8px #14251920}#theme-toggle:hover{background:#e8eddf}:root[data-theme=dark] #theme-toggle{background:#263329;color:#e3e9df;border-color:#718264}@media(max-width:600px){#theme-toggle{right:12px;bottom:12px;padding:10px 12px}}

/* Neutral themes: no green backgrounds or decorative gradients. */
:root{--bg:#f5f5f5;--ink:#202020;--muted:#686868;--line:#dedede;--sidebar:#fff;--mint:#e6e6e6;--green:#303030}body{background:var(--bg)}.sidebar{background:#fff;color:#222;border-color:#dedede}.brand{color:#181818}.brand-icon{background:#222;color:#fff}.brand-dot{color:#222}.sidebar nav a{color:#555}.sidebar nav a.active{background:#ebebeb;color:#111}.sidebar nav a:hover{background:#f0f0f0;color:#111}.topbar{background:#fff;border-color:#dedede}.network-panel,.earn-intro,.campaign-preview{background:transparent}.surface,.stat,.earning-side,.campaign-preview .ad-card{background:#fff;border-color:#dedede}.campaign-estimate,.earning-balance,#featured-ad,.payout-journey,.earn-route,#earn .earn-route,.treasury-panel,.deposit-address,.treasury-panel #treasury-address{background:#ededed;color:#222;border-color:#d6d6d6;background-image:none}.wallet-card,.hero-banner{background:#252525;background-image:none}.button.dark,.view-button{background:#252525;color:#fff}.button.dark:hover,.view-button:hover{background:#444}.filters button[aria-pressed=true]{background:#252525;border-color:#252525}.campaign-next li:before{background:#ededed;color:#555}.campaign-next span,#featured-ad p,#featured-ad small,.featured-label,.eyebrow{color:#666}.earner-steps span{background:#e5e5e5;color:#333}.form-section-heading,.network-panel{border-color:#ddd}input,select,textarea,.draft-card input{background:#fff!important;border-color:#ccc!important;color:#222}.earn-search{background:#fff}.theme-toggle,#theme-toggle{background:#fff;color:#222;border-color:#ccc}.status-pill,.form-result:not(:empty){background:#e9e9e9;color:#333}#earn .earning-workspace .ad-art,.campaign-preview .ad-art{background:#e5e5e5!important;color:#333}#earn .earning-workspace .ad-card:hover{background:#f1f1f1}.earning-balance>span,.ad-body .ad-requirement{color:#666}
:root[data-theme=dark]{--bg:#090909;--ink:#eee;--muted:#aaa;--line:#333;--mint:#ddd;--green:#ddd}:root[data-theme=dark] body{background:#090909}:root[data-theme=dark] .sidebar,:root[data-theme=dark] .topbar{background:#101010;border-color:#333}:root[data-theme=dark] .brand{color:#fff}:root[data-theme=dark] .brand-icon{background:#ddd;color:#111}:root[data-theme=dark] .brand-dot{color:#ddd}:root[data-theme=dark] .sidebar nav a{color:#bbb}:root[data-theme=dark] .sidebar nav a.active{background:#303030;color:white}:root[data-theme=dark] .sidebar nav a:hover{background:#242424;color:#fff}:root[data-theme=dark] .surface,:root[data-theme=dark] .stat,:root[data-theme=dark] .ad-card,:root[data-theme=dark] .earning-side,:root[data-theme=dark] .campaign-preview .ad-card,:root[data-theme=dark] dialog{background:#151515;border-color:#333;color:#eee}:root[data-theme=dark] .campaign-estimate,:root[data-theme=dark] .earning-balance,:root[data-theme=dark] #featured-ad,:root[data-theme=dark] .payout-journey,:root[data-theme=dark] .earn-route,:root[data-theme=dark] #earn .earn-route,:root[data-theme=dark] .deposit-address,:root[data-theme=dark] .treasury-panel,:root[data-theme=dark] .treasury-panel #treasury-address,:root[data-theme=dark] .review-note{background:#202020;border-color:#3a3a3a;color:#eee}:root[data-theme=dark] input,:root[data-theme=dark] select,:root[data-theme=dark] textarea{background:#111!important;border-color:#444!important;color:#eee}:root[data-theme=dark] .earn-search{background:#151515;border-color:#444}:root[data-theme=dark] #earn .earning-workspace .ad-art,:root[data-theme=dark] .campaign-preview .ad-art{background:#292929!important;color:#eee}:root[data-theme=dark] #earn .earning-workspace .ad-card:hover,:root[data-theme=dark] .table-wrap tbody tr:hover{background:#222}:root[data-theme=dark] .campaign-next li:before{background:#202020;color:#bbb}:root[data-theme=dark] #featured-ad p,:root[data-theme=dark] #featured-ad small,:root[data-theme=dark] .featured-label,:root[data-theme=dark] .campaign-next span,:root[data-theme=dark] .campaign-next strong,:root[data-theme=dark] .eyebrow,:root[data-theme=dark] .ad-requirement{color:#bbb}:root[data-theme=dark] .theme-toggle,:root[data-theme=dark] #theme-toggle{background:#222;color:#eee;border-color:#555}:root[data-theme=dark] .theme-toggle:hover{background:#333}:root[data-theme=dark] .filters button,:root[data-theme=dark] .ad-meta span:last-child{border-color:#444;color:#ddd}:root[data-theme=dark] .status-pill,:root[data-theme=dark] .form-result:not(:empty){background:#303030;color:#eee}:root[data-theme=dark] .network-panel,:root[data-theme=dark] .form-section-heading,:root[data-theme=dark] .campaign-preview{border-color:#333}.network-panel,.hero-banner,.wallet-card,.ad-art,.payout-journey,.campaign-estimate{background-image:none!important}

.draft-tools{display:flex;justify-content:space-between;align-items:center;gap:15px;border-bottom:1px solid var(--line);padding:12px 0 18px;margin-bottom:18px;font-size:11px;color:var(--muted)}button:disabled{opacity:.5;cursor:wait}.form-result:focus{outline:2px solid #888;outline-offset:4px}

.ad-meta{flex-wrap:wrap;gap:7px}.ad-category{font-size:10px;color:var(--muted);border:1px solid var(--line);padding:4px 7px;border-radius:2px}#interest-note{margin:12px 0 0}.earn-controls>label:first-child{font-weight:600}.earn-controls>label:first-child select{max-width:210px}

.task-guide{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:22px 0;margin:24px 0 30px}.task-guide strong{font-size:13px}.task-guide p{font-size:12px;line-height:1.65;color:var(--muted)}.task-inventory{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}.task-card h2{font-size:21px;margin:14px 0}.task-card p{line-height:1.7;white-space:pre-wrap}.task-card small{color:var(--muted)}.task-card details{border-top:1px solid var(--line);padding:15px 0}.task-card-bottom{display:flex;flex-wrap:wrap;gap:15px;justify-content:space-between;align-items:center}.task-card-bottom strong{font-family:Consolas,monospace;font-size:13px}.task-empty{grid-column:1/-1;padding:38px}#task-tasks{margin-top:36px}#task-tasks .draft-card{margin-top:15px}dialog.surface{max-width:650px;width:calc(100% - 32px);max-height:85vh;overflow:auto}dialog.surface textarea{display:block;width:100%;min-height:120px;margin:20px 0}dialog.surface p{white-space:pre-wrap;line-height:1.7}@media(max-width:700px){.task-guide,.task-inventory{grid-template-columns:1fr}.task-guide{gap:12px}.task-guide p{margin-bottom:0}}

.page-heading h1,#earn .page-heading h1,#featured-ad h2,.campaign-estimate h2,.campaign-preview h2{font-family:Consolas,"Courier New",monospace;font-weight:600;letter-spacing:-1px}.home-entrances{display:grid;grid-template-columns:1fr 1fr;gap:24px;margin:30px 0}.home-entrances article{padding:32px}.home-entrances p{line-height:1.8;color:var(--muted)}.home-entrances .text-button{display:inline-block;margin:18px}@media(max-width:700px){.home-entrances{grid-template-columns:1fr}}

/* ---- Harmony layer (2026-10-19): one final voice after four theme layers ---- */
/* Focus rings follow the theme ink instead of the retired purple accent. */
button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,summary:focus-visible,[tabindex]:focus-visible{outline:2px solid var(--ink);outline-offset:3px;border-radius:4px}
/* Monochrome selection + smooth scrolling with sticky-header offset. */
::selection{background:var(--ink);color:var(--bg)}
section[id],div[id]{scroll-margin-top:76px}
/* Buttons: one motion language everywhere. */
.button,.view-button,.text-button,.filters button,.theme-toggle,#theme-toggle{transition:background .18s ease,color .18s ease,border-color .18s ease,transform .12s ease,box-shadow .18s ease}
.button:active,.view-button:active,.filters button:active{transform:scale(.97)}
.button:disabled,.view-button:disabled{cursor:not-allowed}
/* Dialogs: dim + blur backdrop, gentle entrance. */
dialog::backdrop{background:rgba(10,12,10,.55);backdrop-filter:blur(3px)}
dialog[open]{animation:dialog-in .22s cubic-bezier(.2,.7,.3,1)}
@keyframes dialog-in{from{opacity:0;transform:translateY(10px) scale(.985)}to{opacity:1;transform:none}}
@media(prefers-reduced-motion:reduce){dialog[open]{animation:none}}
/* Progress bars: consistent across engines, monochrome accent. */
progress{border:0;border-radius:20px;background:var(--line);height:7px}
progress::-webkit-progress-bar{background:var(--line);border-radius:20px}
progress::-webkit-progress-value{background:var(--green);border-radius:20px;transition:width .4s ease}
progress::-moz-progress-bar{background:var(--green);border-radius:20px}
/* Monochrome accents: retire the leftover purple/orange one-offs. */
.leader-id{color:var(--ink);text-decoration:underline;text-underline-offset:3px}
.leader-note{color:var(--muted)}
.leader-board .recruiters-title{color:var(--muted)}
.badge-on{border-color:var(--muted)}
.brand-dot,.network-dot{color:var(--green)}
/* Forms: single radius + hover affordance. */
input,select,textarea{border-radius:6px;transition:border-color .18s ease,background .18s ease}
input:hover,select:hover,textarea:hover{border-color:var(--muted)}
/* Empty states: friendly, not blank. */
.empty-state{color:var(--muted)}
/* Phones & touch: real tap targets. */
@media(pointer:coarse){.sidebar nav a,.filters button,.text-button,.theme-toggle,#theme-toggle{min-height:44px}}
/* Legal pages print clean (privacy/terms). */
@media print{.sidebar,.topbar,#theme-toggle,.network-panel,.status-pill{display:none!important}body{background:#fff;color:#000}main{max-width:100%;padding:0}.surface{box-shadow:none;border:0}details{break-inside:avoid}}

/* ---- Harmony resolution layer (2026-10-19): final word of the cascade ----
   One typographic identity: iOS-style Segoe UI semibold, tight tracking.
   No serif (reads "bank") and no terminal mono (reads uncanny) for headings.
   Being last, this rule is decisive over Georgia (layer 1/5) and Consolas (layer 22). */
.page-heading h1,#earn .page-heading h1,#featured-ad h2,.campaign-estimate h2,.campaign-preview h2,.earning-balance h2,.wallet-card h2{font-family:"Segoe UI",system-ui,Arial,sans-serif;font-weight:650;letter-spacing:-1.2px}
/* One radius scale: every CTA button 8px, every text field 6px. Ends the 3px-vs-8px !important war. */
.button,.view-button{border-radius:8px!important}
input,select,textarea,.draft-card input{border-radius:6px!important}
/* Token audit: neutralize the last green-tinted hovers/panels left over from phase 1 so both light+dark tokens agree. */
.theme-toggle:hover,#theme-toggle:hover{background:#e6e6e6}
:root[data-theme=dark] .theme-toggle:hover,:root[data-theme=dark] #theme-toggle:hover{background:#333}
.review-note{background:#ededed;border-color:#d6d6d6}
/* Dark muted-text contrast verified >= 4.5:1 -- .leader-note (var(--muted) #aaa = 7.0-7.9:1
   on #151515/#202020 background), .eyebrow (+ 8.5:1 from dark layer), .earn-intro p
   (inherits #aaa; its container is display:none). No lightness bump needed. */

/* ─── layer: offline honesty (sprint 34) ───────────────────────────── */
html.net-pill-on .net-pill{opacity:1;transform:translate(-50%,0);pointer-events:auto;}
.net-pill{position:fixed;left:50%;bottom:18px;transform:translate(-50%,12px);opacity:0;pointer-events:none;
 display:inline-flex;align-items:center;gap:8px;z-index:70;padding:9px 16px;border-radius:999px;
 background:#1b1b27;color:#f4f1ff;font-size:13px;font-weight:600;letter-spacing:.01em;
 border:1px solid rgba(155,134,255,.35);box-shadow:0 10px 30px rgba(10,8,30,.55);
 transition:opacity .25s ease,transform .25s ease;}
.net-pill i{width:8px;height:8px;border-radius:50%;background:#9b86ff;animation:adsol-pulse 1.6s ease-in-out infinite;}
.net-pill[data-mode='offline'] i{background:#ffb86c;}
.net-pill[data-mode='online']{border-color:rgba(124,227,168,.4);}
@keyframes adsol-pulse{0%,100%{opacity:1}50%{opacity:.35}}
/* offline.html — rubber-stamped honesty */
body.offline-page{margin:0;min-height:100vh;display:grid;place-items:center;background:#15151f;color:#f4f1ff;padding:20px;
 font-family:'Inter','Segoe UI',system-ui,sans-serif;background-image:radial-gradient(1200px 600px at 15% -10%,rgba(155,134,255,.14),transparent 60%),radial-gradient(900px 500px at 90% 110%,rgba(255,184,108,.10),transparent 55%);}
.offline-card{max-width:640px;padding:34px 30px;border-radius:20px;background:#1b1b27;border:1px solid rgba(155,134,255,.25);}
.offline-card .eyebrow{color:#9b86ff;font-size:12px;font-weight:700;letter-spacing:.14em;margin:0 0 6px;}
.offline-card h1{font-size:clamp(28px,5vw,40px);line-height:1.08;margin:0 0 14px;}
.offline-card h1 span{color:#9b86ff;}
.offline-card .lede{color:#c9c4e4;font-size:15px;line-height:1.6;margin:0 0 18px;}
.offline-stamps{display:flex;gap:10px;margin:0 0 18px;}
.offline-stamps span{font-size:11px;font-weight:800;letter-spacing:.18em;color:#ffb86c;border:2px dashed rgba(255,184,108,.55);border-radius:6px;padding:6px 10px;}
.offline-facts{margin:0 0 22px;padding:0 0 0 18px;color:#aaa;font-size:13.5px;line-height:1.65;}
.offline-facts li{margin:6px 0;}
.offline-retry{display:inline-block;text-decoration:none;}
.field-note{color:#8f8aa8;font-size:12.5px;line-height:1.5;}
/* advertiser wallet-fund lane (sprint 41) */
.draft-card input[type=number]{width:7.5em;padding:7px 10px;border-radius:8px;border:1px solid rgba(155,134,255,.35);
 background:#15151f;color:#f4f1ff;font:inherit;font-size:13px;}
.draft-card input[type=number]:focus-visible{outline:2px solid #9b86ff;outline-offset:1px;}

/* SolWage mark: tile is the logo itself now */
.brand-icon{background:transparent!important;box-shadow:none}
.brand-icon img{display:block;width:100%;height:auto;border-radius:9px}
