/* Paper console. Existing selectors remain adapters to the semantic palette so operational
   scripts keep their IDs and data contracts. This file is loaded only by console pages. */
@font-face{font-family:"PS Mono";font-style:normal;font-weight:400;font-display:swap;src:url('../fonts/google/ibm-plex-mono-400-latin.woff2') format('woff2')}
:root{
  --ps-page:#fff;--ps-card:#f5f6f4;--ps-sunken:#eceeea;--ps-ink:#17251f;
  --ps-muted:#5e6b65;--ps-line:#e3e6e2;--ps-input:#84928b;--ps-green:#1f6848;
  --ps-green-deep:#164d35;--ps-highlight:#e8f1eb;--ps-ok:#1f7a4d;--ps-warn:#9a6400;--ps-danger:#b3261e;
  --ps-sans:-apple-system,BlinkMacSystemFont,"Segoe UI",system-ui,sans-serif;
  --bq-color-surface:var(--ps-page);--bq-color-surface-sunken:var(--ps-card);
  --bq-color-text-primary:var(--ps-ink);--bq-color-text-muted:var(--ps-muted);
  --bq-color-border-hairline:var(--ps-line);--bq-color-border-strong:var(--ps-input);
  --bq-color-accent:var(--ps-green);--bq-color-accent-deep:var(--ps-green-deep);--bq-color-accent-ink:var(--ps-page);
  --bq-status-ok:var(--ps-ok);--bq-status-warn:var(--ps-warn);--bq-status-danger:var(--ps-danger);
  --bq-font-stack:var(--ps-sans);--bq-radius-100:12px;
  --ink:var(--ps-ink);--muted:var(--ps-muted);--line:var(--ps-line);--surface:var(--ps-page);
  --canvas:var(--ps-card);--green:var(--ps-green);--green-dark:var(--ps-green-deep);--green-soft:var(--ps-highlight);
  --amber:var(--ps-warn);--red:var(--ps-danger);--shadow:none;
}
body.ps-console{background:var(--ps-page);color:var(--ps-ink);font-family:var(--ps-sans)}
.ps-console [hidden],.ps-console .hidden{display:none!important}
.ps-console h1,.ps-console h2,.ps-console h3{font-weight:600;letter-spacing:-.025em}
.ps-console :focus-visible{outline:2px solid var(--ps-page);outline-offset:0;box-shadow:0 0 0 4px var(--ps-ink)}
.ps-console input:not([type=checkbox]):not([type=radio]),.ps-console select{min-height:44px;border-color:var(--ps-input);border-radius:8px;background:var(--ps-page);font-size:16px;max-width:100%}
.ps-console .btn{border-radius:12px;min-height:44px;font-weight:600}
.ps-console .btn.primary{background:var(--ps-green);border-color:var(--ps-green);color:var(--ps-page)}
.ps-console .btn.primary:hover{background:var(--ps-green-deep)}
.ps-console .btn.ghost:hover{background:var(--ps-sunken)}
.ps-console .btn:disabled{cursor:not-allowed}
.ps-console .bqbrand,.ps-console .logo{font-family:var(--ps-sans);font-weight:700}
.ps-console nav[aria-label="Owner navigation"]{background:var(--ps-page);border-color:var(--ps-line)}
.ps-console .bqcrumb{font:400 12px "PS Mono",monospace;letter-spacing:.06em;text-transform:uppercase;color:var(--ps-muted)}
.ps-console .bqchip{background:var(--ps-page);border:1px solid var(--ps-line);border-radius:99px}
.ps-console .bqavatar{background:var(--ps-green);color:var(--ps-page)}
.ps-console .bqmenu{background:var(--ps-page);border-color:var(--ps-line)}
.ps-console .bqmenu a,.ps-console .bqmenu button{min-height:44px}
/* Dashboard rail and workspace. One selected location owns the controls and subscriptions. */
.ps-dashboard #appView,.ps-dashboard .navrow{max-width:1440px}
.ps-dashboard #appView{padding:0 24px 32px}
.ps-page-heading{padding:28px 8px 16px}
.ps-page-heading h1{font-size:28px;margin:0}
.ps-page-heading .sub{margin:4px 0 0}
.ps-dashboard #locationListSect{border:0;padding:0;margin:0}
.ps-dashboard .shopworkspace,.ps-dashboard .shopworkspace.has-inspector{grid-template-columns:288px minmax(0,1fr);gap:32px;min-height:650px}
.ps-dashboard .shopmaster{border:0;border-right:1px solid var(--ps-line);border-radius:0;padding:12px 20px 24px 0;overflow:visible}
.ps-dashboard .locationheading h2{font-size:19px}
.ps-dashboard .locationtools{display:grid;grid-template-columns:minmax(0,1fr);margin:20px 0 16px;gap:10px}
.ps-dashboard .locationfilters{display:flex;flex-wrap:wrap;gap:5px}
.ps-dashboard .locationfilters .btn{width:auto;flex:1 1 auto;padding:7px 8px;min-height:44px;font-size:12px;background:var(--ps-page);border-color:var(--ps-line)}
.ps-dashboard .locationfilters .btn[aria-pressed=true]{background:var(--ps-highlight);color:var(--ps-green-deep);border-color:var(--ps-green)}
.ps-dashboard .shoplisthead{display:none}
.ps-dashboard .shopsummary,.ps-dashboard .shopworkspace.has-inspector .shopsummary{position:relative;display:grid;grid-template-columns:minmax(0,1fr) auto;gap:5px 8px;padding:16px;margin:8px 0;border:1px solid var(--ps-line);border-radius:14px;background:var(--ps-card)}
.ps-dashboard .shopsummary .locationidentity{grid-column:1/-1}
.ps-dashboard .locationidentity strong{white-space:normal;overflow-wrap:anywhere;font-size:15px}
.ps-dashboard .locationidentity span{font:400 11px/1.5 "PS Mono",monospace;overflow-wrap:anywhere}
.ps-dashboard .shopsummary .locationsource{display:none}
.ps-dashboard .locationhealth{font-size:12px;flex-wrap:wrap;grid-column:1}
.ps-dashboard .locationscreens{grid-column:1;white-space:normal;overflow-wrap:anywhere;font-size:12px}
.ps-dashboard .shopsummary [data-a="manage-shop"]{grid-column:2;grid-row:2/4;min-height:44px;padding:6px 8px;align-self:end;font-size:12px;border:1px solid var(--ps-line)}
.ps-dashboard .shopsummary.selected{background:var(--ps-ink);color:var(--ps-page);box-shadow:none;border-color:var(--ps-ink)}
.ps-dashboard .selected .locationidentity span,.ps-dashboard .selected .locationscreens{color:var(--ps-line)}
.ps-dashboard .selected .locationhealth{color:var(--ps-page)}
.ps-dashboard .selected .locationdot{background:var(--ps-page)}
.ps-dashboard .selected [data-a="manage-shop"]{color:var(--ps-page);background:transparent}
.ps-dashboard .selected [data-a="manage-shop"]:hover{background:var(--ps-green)}
.ps-dashboard .ps-create{margin:20px 0 0;padding:0;border:1px dashed var(--ps-input);border-radius:12px}
.ps-create>summary{min-height:48px;padding:12px 16px;cursor:pointer;font-weight:600}
.ps-create[open]>summary{border-bottom:1px solid var(--ps-line)}
.ps-create .shopcreate,.ps-create #createMsg{padding:12px}
.ps-create .field{display:grid;gap:10px}
.ps-create .field input{width:100%;min-width:0}
.ps-create #startFrom{width:100%}
.ps-dashboard .shopinspector{border:0;border-radius:0;overflow:visible;background:var(--ps-page)}
.ps-dashboard .inspectorbar{background:var(--ps-page);padding:8px 0;border:0;min-height:44px}
.ps-dashboard .inspectorbar strong{font:400 11px "PS Mono",monospace;color:var(--ps-muted)}
.ps-dashboard #shopInspectorBody{padding:16px 0}
.ps-dashboard .shop .name{font-size:clamp(24px,2.5vw,32px);line-height:1.2;overflow-wrap:anywhere;font-weight:600}
.ps-dashboard .shophead>div{min-width:0}
.ps-dashboard .slug{font-family:"PS Mono",monospace;font-size:12px;margin-top:6px;overflow-wrap:anywhere}
.ps-dashboard .shophead{align-items:flex-start}
.ps-dashboard .livepill{margin-top:5px}
.ps-dashboard .shop .acts{background:transparent;padding:0;gap:8px;margin:18px 0 24px}
.ps-dashboard .shop .acts .btn.sm{border:1px solid var(--ps-line);background:var(--ps-page);padding:9px 12px}
.ps-dashboard .shop .acts .btn.primary.sm{background:var(--ps-green);border-color:var(--ps-green);color:var(--ps-page)}
.ps-dashboard .moreactionlist{max-width:calc(100vw - 48px);border-color:var(--ps-line)}
.ps-dashboard .moreactionlist .btn{white-space:normal;text-align:left}
.ps-dashboard .setupbox{margin:12px 0 20px}
.ps-dashboard .glstrip{background:var(--ps-highlight)}
.ps-dashboard .glstrip:hover{background:var(--ps-sunken)}
.ps-dashboard .glstrip .pbar{background:var(--ps-line)}
.ps-dashboard .setuppanes{display:block;margin-top:16px}
.ps-dashboard .tasklist{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 24px}
.ps-dashboard .task{padding:12px 0}
.ps-dashboard .ps-operations{display:grid;grid-template-columns:minmax(0,1fr) minmax(280px,.85fr);gap:24px;align-items:start}
.ps-dashboard .ps-live-board h3{font-size:15px;margin:0 0 12px}
.ps-dashboard .ps-live-board .screen{border:6px solid var(--ps-ink);border-radius:16px;box-shadow:0 12px 28px rgba(23,37,31,.16)}
.ps-dashboard .ps-live-board iframe{width:1280px;height:720px;transform:scale(.25)}
.ps-dashboard .screensbox{margin:0;padding:0;border:0;background:transparent}
.ps-dashboard .screenhead{display:flex;gap:6px;flex-wrap:wrap;justify-content:space-between;padding:0 0 12px}
.ps-dashboard .screenlist{display:grid;grid-template-columns:minmax(0,1fr);gap:12px}
.ps-dashboard .screenitem{background:var(--ps-card);border:1px solid var(--ps-line);border-radius:14px;min-width:0;padding:16px}
.ps-dashboard .screenname-row{flex-wrap:wrap;gap:6px}
.ps-dashboard .screenname{overflow-wrap:anywhere}
.ps-dashboard .screencontrols{flex-wrap:wrap}
.ps-dashboard .screenfilterchoices{grid-template-columns:minmax(0,1fr)}
.ps-dashboard .screenfilterchoice{min-height:44px}
.ps-dashboard .screenfilter,.ps-dashboard .screenrecovery{border-color:var(--ps-line)}
.ps-dashboard .screenfilter summary,.ps-dashboard .screenrecovery summary{min-height:44px;display:flex;align-items:center;flex-wrap:wrap}
.ps-dashboard .pairbox{background:var(--ps-card);border-color:var(--ps-line);border-radius:14px}
.ps-dashboard .shopstatus{overflow-wrap:anywhere}
.ps-selection-empty{padding:80px 40px;border:1px dashed var(--ps-line);border-radius:16px;margin:16px 0;align-self:start}
.ps-selection-empty h2{font-size:26px}
.ps-selection-empty p{color:var(--ps-muted);max-width:42ch;margin-top:8px}
.has-inspector>.ps-selection-empty,.is-empty>.ps-selection-empty{display:none}
.ps-dashboard .empty{padding:24px 12px}
.ps-dashboard .empty h3{font-size:20px}
.ps-dashboard #accountView{max-width:820px;margin:0 auto;padding:36px 0}
.ps-account-heading{display:flex;gap:20px;justify-content:space-between;align-items:center;flex-wrap:wrap}
.ps-account-heading h1{font-size:30px;margin:0}
.ps-dashboard #billingSect{background:var(--ps-highlight);border:1px solid var(--ps-line);border-radius:16px;padding:24px;margin-top:24px}
.ps-dashboard #accountSect{margin-top:36px;padding-top:24px;border-color:var(--ps-line)}
.ps-dashboard .lockbanner{border-radius:14px;margin:0 0 18px}
/* The same visual system on focused pages; their forms and save semantics remain intact. */
.ps-settings .wrap,.ps-sources .wrap{max-width:1280px}
.ps-console .card,.ps-console .panel{border-color:var(--ps-line);border-radius:14px;box-shadow:none}
.ps-settings .area-tab[aria-selected=true],.ps-settings .area-tab[aria-pressed=true]{background:var(--ps-ink);color:var(--ps-page)}
.ps-sources h1,.ps-settings h1{font-weight:600}
.ps-console .bqfoot{background:var(--ps-page);border-color:var(--ps-line)}
/* Founder workspace retains six routes and its existing tables, dialogs, and status colors. */
.ps-founder .sidebar{background:var(--ps-page);color:var(--ps-ink);border-right:1px solid var(--ps-line)}
.ps-founder .wordmark{color:var(--ps-ink)}
.ps-founder .wordmark small,.ps-founder .nav-label,.ps-founder .sidebar-foot small{color:var(--ps-muted)}
.ps-founder .nav-item{color:var(--ps-ink);font-weight:500}
.ps-founder .nav-item:hover,.ps-founder .nav-item:focus-visible{background:var(--ps-card);color:var(--ps-ink)}
.ps-founder .nav-item.active{background:var(--ps-ink);color:var(--ps-page);font-weight:600}
.ps-founder .nav-count{background:var(--ps-card);color:var(--ps-muted)}
.ps-founder .nav-item.active .nav-count{background:var(--ps-highlight);color:var(--ps-green-deep)}
.ps-founder .sidebar-foot{border-color:var(--ps-line)}
.ps-founder .gate{background:var(--ps-page)}
.ps-founder .gate-card{border-radius:16px;box-shadow:none}
.ps-founder .gate-card h1{font-weight:600}
.ps-founder .wordmark .brand-mark{background:var(--ps-green)}
.ps-founder .wordmark .brand-mark::before,.ps-founder .wordmark .brand-mark::after{background:var(--ps-page)}
@media(min-width:981px){.ps-dashboard .shopworkspace.has-inspector .shopmaster{display:block}}
@media(max-width:1180px){.ps-dashboard .ps-operations{grid-template-columns:minmax(0,1fr)}.ps-dashboard .ps-live-board{max-width:640px}.ps-dashboard .tasklist{grid-template-columns:minmax(0,1fr)}}
@media(max-width:980px){
  .ps-dashboard #appView{padding:0 20px 24px}
  .ps-dashboard .shopworkspace,.ps-dashboard .shopworkspace.has-inspector{grid-template-columns:minmax(0,1fr);min-height:0}
  .ps-dashboard .shopmaster{border-right:0;padding:0}
  .ps-dashboard .shopworkspace.has-inspector .shopmaster{display:none}
  .ps-dashboard .ps-selection-empty{display:none}
  .ps-dashboard .locationtools{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}
  .ps-dashboard .shop .acts{width:100%}
  .ps-dashboard .ps-live-board{max-width:none}
  .ps-dashboard .ps-operations{grid-template-columns:minmax(0,1fr) minmax(260px,.8fr)}
}
@media(max-width:720px){
  .ps-dashboard #appView{padding:0 16px 24px}
  .ps-page-heading{padding:20px 0 12px}
  .ps-dashboard .locationtools,.ps-dashboard .ps-operations{grid-template-columns:minmax(0,1fr)}
  .ps-dashboard .shophead{flex-wrap:wrap}
  .ps-dashboard .shophead>div{flex:1 1 220px}
  .ps-dashboard .inspectorbar strong{display:none}
  .ps-dashboard .shop .acts{display:flex;flex-wrap:wrap}
  .ps-dashboard .shop .acts>.btn{flex:1 1 auto;justify-content:center}
  .ps-dashboard .moreactions{flex:1 1 auto}
  .ps-dashboard .moreactions>summary{width:100%}
  .ps-dashboard .ps-live-board .screen{border-width:4px}
  .ps-dashboard .ps-account-heading h1{font-size:26px}
  .ps-dashboard .screenitem{padding:14px}
}
@media(prefers-reduced-motion:reduce){.ps-console *{animation:none!important;transition:none!important;scroll-behavior:auto!important}}
/* Product pages keep legal/help links, without a second marketing navigation section. */
.ps-dashboard .bqfoot{margin-top:24px;padding:16px 0}
.ps-dashboard .bqfoot .wrap{max-width:1440px}
.ps-dashboard .bqfootrow{display:flex;align-items:center;flex-wrap:wrap;gap:12px 24px}
.ps-dashboard .bqfootcol{display:flex;align-items:center;flex-wrap:wrap;gap:16px}
.ps-dashboard .bqfootcol b,.ps-dashboard .bqfoot a[href*="showcase"]{display:none}
.ps-dashboard .bqfoot a{min-height:44px;display:inline-flex;align-items:center}
.ps-dashboard .bqlegal{font-size:11px;margin-top:12px;color:var(--ps-muted)}
.ps-dashboard .shopworkspace.has-inspector .shopsummary.selected{background:var(--ps-ink)}
.ps-account-link{display:flex;align-items:center;min-height:48px;margin-top:20px;font-weight:600;color:var(--ps-green);text-decoration:underline;text-underline-offset:3px}
.ps-dashboard #lockMsg{flex-basis:100%;margin:0}
.ps-billing-notice{padding:14px 18px;margin:0 0 18px;border:1px solid var(--ps-line);border-radius:12px;background:var(--ps-highlight);font-size:14px}
.ps-billing-notice a{display:inline-flex;align-items:center;min-height:44px;font-weight:600;margin-left:8px;color:var(--ps-green);text-decoration:underline}
