:root{font-family:Inter,ui-sans-serif,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:#e6eaf2;background:#101216;font-size:14px;line-height:1.5;color-scheme:dark;--muted:#9ba5b7;--border:#2c323e;--blue:#5c8eff}*{box-sizing:border-box}body{margin:0}button,input,select{font:inherit}button,input,select{border:1px solid var(--border);border-radius:6px;background:#171b22;color:inherit;min-height:42px;padding:9px 12px}button{cursor:pointer;white-space:nowrap;font-weight:550}button:hover{background:#252d3a;border-color:#64718a}button:disabled{opacity:.45;cursor:not-allowed}button.primary{background:#4379ec;border-color:#4379ec;color:#fff}button.primary:hover{background:#5689f6}a{color:inherit}a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,summary:focus-visible{outline:3px solid #8ab0ff;outline-offset:3px}input,select{width:100%;min-width:0}label{display:flex;flex-direction:column;gap:7px;font-size:13px;font-weight:500}h1,h2,h3,p{margin:0}h1{font-size:28px;letter-spacing:-.8px;line-height:1.2}h2{font-size:19px;letter-spacing:-.35px}h3{font-size:17px}p.muted{margin-top:9px;max-width:64ch}.muted{color:var(--muted);font-weight:400}.eyebrow{font-size:10px;font-weight:650;letter-spacing:1.6px;color:var(--muted);margin-bottom:7px}.brand{display:flex;align-items:center;gap:8px;font-size:19px;font-weight:650;letter-spacing:-.6px;white-space:nowrap}.brand-mark{display:grid;place-items:center;width:27px;height:30px;border-left:4px solid var(--blue);font-size:24px}.badge{display:inline-flex;border:1px solid #3d4d68;background:#192334;color:#acc8ff;font-size:11px;padding:4px 8px;border-radius:4px}.skip{position:fixed;left:15px;top:-100px;z-index:10;padding:10px;background:#4379ec}.skip:focus{top:15px}[hidden]{display:none!important}aside{position:fixed;inset:0 auto 0 0;width:248px;border-right:1px solid var(--border);padding:28px 22px;background:#14171d;display:flex;flex-direction:column;gap:25px;overflow-y:auto}aside>.badge{align-self:flex-start}nav{display:flex;flex-direction:column;gap:7px}nav a{text-decoration:none;padding:10px 12px;color:var(--muted);border-radius:5px}.nav-active{background:#242c3b;color:#d9e5ff}.sidebar-heading{font-size:10px;letter-spacing:1.4px;color:var(--muted)}.sidebar-heading span{float:right}.profile{padding:12px 0;border-bottom:1px solid var(--border);display:flex;gap:10px;align-items:center}.profile-icon{width:30px;height:30px;display:grid;place-items:center;background:#26334a;border-radius:5px;font-weight:600;color:#b5cdff}.profile-name{overflow-wrap:anywhere}.sidebar-note,.sidebar-footer{font-size:12px;color:var(--muted)}.sidebar-footer{margin-top:auto;padding-top:20px;border-top:1px solid var(--border)}main{margin-left:248px;padding:34px 40px;max-width:1700px}header,.section-heading{display:flex;align-items:center;justify-content:space-between;gap:20px}header{margin-bottom:30px}.header-actions{display:flex;align-items:center;gap:10px}.header-actions .muted{font-size:12px}.intro,.scenario,#journal{border:1px solid var(--border);border-radius:8px;background:#15191f;margin-bottom:22px;padding:24px}.intro>div .step{float:left;margin-right:14px}.step{color:#86a9ed;background:#202c40;border:1px solid #34445f;border-radius:5px;width:32px;height:32px;display:grid;place-items:center;font-size:12px;flex-shrink:0}.link-grid{display:grid;grid-template-columns:1fr 1.2fr 1fr auto;gap:14px;align-items:end;margin-top:24px}.section-heading{margin-bottom:22px}.link-picker{width:310px;max-width:45%}.context-line{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:13px 0 20px;border-top:1px solid var(--border)}.actor-grid{display:grid;grid-template-columns:1fr 1fr;gap:0;border:1px solid var(--border);border-radius:6px;overflow:hidden}.actor{padding:22px;min-width:0}.actor+.actor{border-left:1px solid var(--border);background:#181e28}.actor-head{display:flex;align-items:center;gap:12px}.actor .muted{font-size:13px;min-height:58px;margin-bottom:18px}.actions{display:flex;gap:10px;flex-wrap:wrap}.metadata{display:grid;grid-template-columns:70px minmax(0,1fr);gap:8px;font-size:12px;margin:22px 0 0}.metadata dt{color:var(--muted)}.metadata dd{margin:0;font-family:ui-monospace,monospace;overflow-wrap:anywhere;color:#bac7df}.deposit-grid{display:grid;grid-template-columns:1fr .75fr 1.8fr;gap:10px;margin-bottom:12px}.helper{font-size:12px;color:var(--muted);margin-top:14px}.background{margin-top:24px;border-top:1px solid var(--border);padding-top:18px}.background summary{cursor:pointer;font-weight:500}.background form{display:flex;align-items:end;gap:12px;margin-top:15px}.background form label{max-width:140px}.job{display:flex;gap:15px;align-items:center;padding-top:14px}.logs{display:flex;flex-direction:column;gap:0}.log{border-top:1px solid var(--border);padding:12px 0}.log summary{display:grid;grid-template-columns:155px 90px 100px 1fr;align-items:center;gap:12px;cursor:pointer}.log-time{font-variant-numeric:tabular-nums;color:var(--muted);font-size:12px}.log-status{font-size:11px;color:#9ce1ba}.log-status.fail{color:#ffa4a4}.log-message{color:var(--muted);overflow-wrap:anywhere}.log pre{white-space:pre-wrap;word-break:break-word;background:#101319;padding:14px;border:1px solid var(--border);border-radius:5px;max-height:320px;overflow:auto;color:#c4d0e3;font-size:12px}.empty{padding:28px 12px;text-align:center;color:var(--muted)}.notice{border:1px solid #3b577c;border-radius:6px;background:#1a2a40;padding:13px 16px;margin-bottom:20px;overflow-wrap:anywhere}.notice.error,.error{color:#ffb5b5}.notice.error{background:#321e26;border-color:#71414e}footer{display:flex;justify-content:space-between;gap:16px;color:var(--muted);font-size:11px;padding:5px 0 20px}.login{min-height:100vh;display:grid;place-items:center;padding:24px;background:radial-gradient(ellipse at 50% 0,#1d2c49 0,transparent 60%)}.login-card{width:100%;max-width:420px;background:#171b22;border:1px solid var(--border);border-radius:10px;padding:32px;display:flex;flex-direction:column;gap:18px}.login-card .eyebrow{margin-top:16px;margin-bottom:-10px}.login-card h1{font-size:26px}.login-card p.muted{margin-top:-5px}.login-card .error:empty{display:none}.login-card button{margin-top:3px}@media(min-width:1600px){main{padding-left:52px;padding-right:52px}}@media(max-width:1150px){aside{width:210px;padding:24px 16px}.brand{font-size:17px}main{margin-left:210px;padding:26px 22px}.header-actions .muted{display:none}.link-grid{grid-template-columns:1fr 1fr}.actor-grid{grid-template-columns:1fr}.actor+.actor{border-left:0;border-top:1px solid var(--border)}.actor .muted{min-height:0}.log summary{grid-template-columns:140px 70px 90px 1fr}}@media(max-width:720px){aside{position:static;width:auto;padding:16px 20px;flex-direction:row;align-items:center;gap:15px;border-right:0;border-bottom:1px solid var(--border)}aside nav,aside .sidebar-heading,aside #advertiser-list,aside .sidebar-note,aside .sidebar-footer{display:none}aside>.badge{margin-left:auto;align-self:center}main{margin-left:0;padding:22px 14px}header{align-items:flex-start;gap:14px;flex-direction:column}h1{font-size:25px}.header-actions{width:100%;justify-content:flex-end}.intro,.scenario,#journal{padding:18px 15px}.intro>div .step{float:none;margin-bottom:12px}.link-grid{grid-template-columns:1fr}.section-heading{align-items:flex-start;flex-direction:column;gap:14px}.link-picker{max-width:none;width:100%}.actor{padding:18px 14px}.deposit-grid{grid-template-columns:1fr 1fr}.deposit-grid label:last-child{grid-column:1/-1}.background form{flex-wrap:wrap}.background form label{flex:1;min-width:90px}.log summary{grid-template-columns:1fr auto}.log-message{grid-column:1/-1;font-size:12px}.log-time{grid-column:1}.context-line{align-items:flex-start;font-size:12px}footer{flex-direction:column;gap:4px}.login-card{padding:24px}}

.run-controls{display:flex;gap:14px;align-items:end;margin-bottom:20px}.run-controls label{flex:1;max-width:540px}@media(max-width:720px){.run-controls{flex-direction:column;align-items:stretch}.run-controls label{max-width:none}}

.run-results{margin-top:24px;padding-top:20px;border-top:1px solid var(--border)}.results-heading{display:flex;justify-content:space-between;gap:12px;align-items:center;margin-bottom:12px}.results-heading>.muted{font-size:12px}.event-list{border:1px solid var(--border);border-radius:5px;overflow:hidden}.event-row{display:grid;grid-template-columns:70px 1fr 1fr 1.5fr;gap:12px;padding:12px 14px;font-size:13px;align-items:center;font-variant-numeric:tabular-nums}.event-row+.event-row{border-top:1px solid var(--border)}.event-delivered{color:#9ce1ba}.delivery-actions{margin-top:15px}@media(max-width:720px){.results-heading{align-items:flex-start;flex-direction:column}.event-row{grid-template-columns:65px 1fr;gap:6px 12px}.event-row>span:last-child{text-align:right;overflow-wrap:anywhere}}

.log summary>strong{min-width:0;overflow-wrap:anywhere;font-size:12px;line-height:1.4}.log-status{white-space:nowrap}
/* Manual emulators: editable local profiles, no prepared CRM bindings. */
textarea{font:inherit;color:inherit;background:#171b22;border:1px solid var(--border);border-radius:6px;padding:10px 12px;width:100%;resize:vertical;min-width:0}textarea:focus-visible{outline:3px solid #8ab0ff;outline-offset:3px}form{display:flex;flex-direction:column;gap:15px;margin-top:18px}form button{align-self:flex-start}nav button{text-align:left;background:transparent;border-color:transparent;color:var(--muted)}nav button.nav-active{background:#242c3b;color:#d9e5ff}.directions{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px;margin-top:22px}.directions>div{border-left:1px solid var(--border);padding-left:15px}.directions .step{margin-bottom:12px}.directions strong{display:block;margin-bottom:8px}.directions p{font-size:12px;color:var(--muted)}.steps{margin:22px 0 0;padding-left:20px;color:var(--muted);display:grid;grid-template-columns:1fr 1fr;gap:9px 30px;font-size:13px}.editor-grid{display:grid;grid-template-columns:minmax(230px,.7fr) minmax(0,1.5fr);gap:20px;align-items:start}.editor-grid>.intro{min-width:0}.two-col{display:grid;grid-template-columns:1fr 1fr;gap:14px}.copy-field{display:flex;gap:10px;align-items:end}.copy-field label{flex:1;min-width:0}.copy-field button{flex-shrink:0;align-self:flex-end}.copy-field input{font-family:ui-monospace,monospace;font-size:12px}.event-controls{display:grid;grid-template-columns:1.4fr 1fr .7fr auto;gap:12px;align-items:end}.event-controls button{align-self:end}.record-list{margin-top:18px}.record{border-top:1px solid var(--border);padding:13px 0;overflow-wrap:anywhere}.record>p{font-size:12px;margin-top:5px}.record button{margin-top:10px;min-height:34px;padding:5px 10px;font-size:12px}.record pre{white-space:pre-wrap;overflow-wrap:anywhere;font-size:12px}.workspace{margin-top:28px}.workspace details summary{cursor:pointer;font-weight:550}.workspace details label{margin-top:14px}.workspace code{font-size:11px;white-space:nowrap}.workspace details .two-col{margin-top:8px}#partner-panel .editor-grid{grid-template-columns:1.2fr 1fr}#guide{scroll-margin-top:20px}@media(max-width:1100px){.directions{grid-template-columns:1fr 1fr}.editor-grid,#partner-panel .editor-grid{grid-template-columns:1fr}.event-controls{grid-template-columns:1fr 1fr}}@media(max-width:720px){aside{flex-wrap:wrap}aside nav{display:flex;width:100%;flex-direction:row;gap:5px}aside nav>a{display:none}aside nav>button{flex:1;text-align:center}.directions{grid-template-columns:1fr 1fr;gap:16px 10px}.directions strong{font-size:12px}.steps{grid-template-columns:1fr}.two-col{grid-template-columns:1fr}.copy-field{align-items:stretch;flex-direction:column}.copy-field button{align-self:flex-start}.event-controls{grid-template-columns:1fr 1fr}.event-controls label:first-child{grid-column:1/-1}.event-controls button{grid-column:1/-1;justify-self:start}.editor-grid{gap:0}.log summary{grid-template-columns:1fr 1fr}.log-time{overflow-wrap:anywhere}.login-card form{margin-top:0}}

/* Journal summaries keep dates and operation names readable; raw HTTP stays in details. */
.logs .log summary{grid-template-columns:135px minmax(160px,1.4fr) 90px minmax(120px,1fr);gap:12px}.logs .log-time{white-space:nowrap;font-variant-numeric:tabular-nums}.logs .log-kind{overflow-wrap:normal;word-break:normal;font-size:13px}.logs .log-message{font-size:12px}@media(max-width:1000px){.logs .log summary{grid-template-columns:135px minmax(150px,1fr) 90px}.logs .log-message{grid-column:1/-1}}@media(max-width:720px){.logs .log summary{display:flex;flex-direction:column;align-items:flex-start;gap:5px}.logs .log-kind{font-size:14px}aside nav>a[href="/legacy/"]{display:block;font-size:12px;flex-basis:100%}aside nav{flex-wrap:wrap}}

.crm-impact{padding:16px 20px;border:1px solid #8c6b35;border-left:3px solid #d8a557;border-radius:6px;background:#282219;margin-bottom:22px}.crm-impact strong{color:#f3d197}.crm-impact p{font-size:13px;margin-top:6px;line-height:1.6;color:#e3d6c1}.reconfigure{padding:10px 12px;border-left:3px solid #d8a557;background:#282219;color:#f3d197;font-size:13px;overflow-wrap:anywhere}

.setup-heading{margin-bottom:20px}.setup-grid{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:20px;align-items:start}.setup-grid .advertiser-setup{grid-column:1/-1}.setup-grid>.intro{margin:0;min-width:0}.setup-grid{margin-bottom:22px}.template-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.check-label{display:flex!important;flex-direction:row;align-items:flex-start;gap:10px}.check-label input{width:18px;min-height:18px;flex-shrink:0;margin-top:3px}@media(max-width:1000px){.template-grid{grid-template-columns:1fr}}@media(max-width:720px){.setup-grid{grid-template-columns:1fr}.setup-grid .advertiser-setup{grid-column:auto}}

.setup-grid{grid-template-columns:minmax(0,1fr)}

.visitor-test{margin-top:24px;padding-top:20px;border-top:1px solid var(--border)}.visitor-test ol{padding-left:20px;color:var(--muted);font-size:13px;display:grid;gap:8px}.visitor-test .record{padding:10px 0}.visitor-test .record strong{font-size:13px}#visitor-results{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 20px;margin-top:16px}#events details{margin-top:10px}#events pre{white-space:pre-wrap;overflow-wrap:anywhere;font-size:12px}@media(max-width:720px){#visitor-results{grid-template-columns:1fr}}
/* Casino affiliate portal extends the existing standalone emulator. */
.casino-picker{max-width:460px;margin-bottom:16px}.casino-nav{flex-direction:row;flex-wrap:wrap;gap:6px;margin-bottom:20px;border-bottom:1px solid var(--border);padding-bottom:12px}.casino-nav button{min-height:44px}.casino-stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin:20px 0}.casino-stat{border:1px solid var(--border);padding:16px;display:grid;gap:8px}.casino-stat strong{font-size:30px;line-height:1.1;font-variant-numeric:tabular-nums}.casino-path{padding-left:22px;display:grid;gap:10px;color:var(--muted);margin-block:20px}.casino-actions{display:flex;flex-wrap:wrap;gap:10px}.casino-facts{display:grid;grid-template-columns:minmax(110px,.7fr) minmax(0,1.3fr);gap:6px 12px;margin:12px 0;font-size:13px}.casino-facts dt{color:var(--muted)}.casino-facts dd{margin:0;overflow-wrap:anywhere}.casino-ftd{display:grid;grid-template-columns:1fr 1fr auto;gap:10px;align-items:end}.casino-ftd button{align-self:end}#casino-panel .helper{color:var(--muted);font-size:13px;margin:10px 0;line-height:1.55}#casino-panel .record button{min-height:44px}#casino-panel .record .record{padding-left:14px;border-left:2px solid var(--border);margin:12px 0}#casino-panel code{white-space:normal;overflow-wrap:anywhere}#casino-panel .intro>label{margin:18px 0}#casino-panel .copy-field{margin-top:16px}#casino-panel details{margin:12px 0}#casino-panel .record pre{max-height:260px;overflow:auto}#casino-panel .intro{border-radius:4px}@media(max-width:900px){.casino-stats{grid-template-columns:repeat(2,minmax(0,1fr))}.casino-ftd{grid-template-columns:1fr 1fr}.casino-ftd button{grid-column:1/-1}}@media(max-width:600px){.casino-nav{display:grid;grid-template-columns:1fr 1fr}.casino-nav button{white-space:normal;font-size:12px;padding:9px}.casino-facts{grid-template-columns:1fr;gap:3px}.casino-facts dd{margin-bottom:8px}.casino-actions{flex-direction:column}.casino-actions button{width:100%}.casino-stat{padding:12px}.casino-stat strong{font-size:26px}aside nav>button{white-space:normal;font-size:12px}}

/* Casino-only navigation */
aside .casino-nav{display:flex;flex-direction:column;gap:6px;border:0;margin:24px 0;padding:0}aside .casino-nav button{text-align:left;white-space:normal;width:100%}@media(max-width:700px){aside .casino-nav{display:grid;grid-template-columns:1fr 1fr;margin:16px 0 0}aside .casino-nav button{min-height:44px}}

/* Receiver actions remain readable within narrow viewports. */
[data-casino-section="receiver"] button{white-space:normal;overflow-wrap:anywhere;max-width:100%;min-width:0}
