/* shadcn/ui-inspired admin shell: token-driven, left sidebar + right content */
:root{
  --background:0 0% 100%;
  --foreground:222.2 84% 4.9%;
  --card:0 0% 100%;
  --card-foreground:222.2 84% 4.9%;
  --popover:0 0% 100%;
  --popover-foreground:222.2 84% 4.9%;
  --primary:221.2 83.2% 53.3%;
  --primary-foreground:210 40% 98%;
  --secondary:210 40% 96.1%;
  --secondary-foreground:222.2 47.4% 11.2%;
  --muted:210 40% 96.1%;
  --muted-foreground:215.4 16.3% 46.9%;
  --accent:210 40% 96.1%;
  --accent-foreground:222.2 47.4% 11.2%;
  --destructive:0 84.2% 60.2%;
  --destructive-foreground:210 40% 98%;
  --border:214.3 31.8% 91.4%;
  --input:214.3 31.8% 91.4%;
  --ring:221.2 83.2% 53.3%;
  --success:142.1 76.2% 36.3%;
  --warning:38 92% 50%;
  --radius:.75rem;
}
html.admin-theme-dark{
  color-scheme:dark;
  --background:24 10% 7%;
  --foreground:35 20% 94%;
  --card:24 10% 10%;
  --card-foreground:35 20% 94%;
  --popover:24 10% 10%;
  --popover-foreground:35 20% 94%;
  --primary:217 91% 60%;
  --primary-foreground:0 0% 100%;
  --secondary:24 8% 14%;
  --secondary-foreground:35 18% 92%;
  --muted:24 8% 16%;
  --muted-foreground:32 8% 66%;
  --accent:24 9% 18%;
  --accent-foreground:35 18% 94%;
  --destructive:0 72% 54%;
  --destructive-foreground:0 0% 100%;
  --border:24 8% 20%;
  --input:24 8% 22%;
  --ring:217 91% 62%;
  --success:142 65% 45%;
  --warning:38 92% 56%;
}
*{box-sizing:border-box}html{background:hsl(var(--background))}body{margin:0;min-height:100vh;background:hsl(var(--background));color:hsl(var(--foreground));font-family:Inter,"PingFang SC","Helvetica Neue",Arial,sans-serif;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}a{color:inherit}.admin-layout{min-height:100vh;display:grid;grid-template-columns:280px minmax(0,1fr)}.admin-sidebar{position:sticky;top:0;height:100vh;display:flex;flex-direction:column;padding:1rem;border-right:1px solid hsl(var(--border));background:hsl(var(--background));}.admin-brand{display:flex;align-items:center;gap:.75rem;padding:.5rem .5rem 1.25rem}.admin-brand__mark{display:grid;place-items:center;width:2.5rem;height:2.5rem;border-radius:calc(var(--radius) - 2px);border:1px solid hsl(var(--border));background:hsl(var(--primary));color:hsl(var(--primary-foreground));font-size:.8125rem;font-weight:700}.admin-brand strong{display:block;margin-top:.15rem;font-size:.95rem;font-weight:600;letter-spacing:-.01em}.admin-kicker{display:inline-flex;align-items:center;color:hsl(var(--muted-foreground));font-size:.72rem;font-weight:600;letter-spacing:.08em;text-transform:uppercase}.admin-nav{display:flex;flex-direction:column;gap:.25rem;margin-top:.5rem}.admin-nav__item{display:grid;grid-template-columns:2rem minmax(0,1fr);gap:.65rem;align-items:center;padding:.625rem;border:1px solid transparent;border-radius:calc(var(--radius) - 2px);color:hsl(var(--muted-foreground));text-decoration:none;transition:background-color .15s ease,color .15s ease,border-color .15s ease}.admin-nav__item:hover{background:hsl(var(--accent));color:hsl(var(--accent-foreground))}.admin-nav__item.is-active{background:hsl(var(--secondary));border-color:hsl(var(--border));color:hsl(var(--foreground))}.admin-nav__item b{display:block;font-size:.875rem;font-weight:500;line-height:1.25rem}.admin-nav__icon{display:grid;place-items:center;width:2rem;height:2rem;border-radius:calc(var(--radius) - 4px);background:hsl(var(--muted));color:hsl(var(--muted-foreground))}.admin-nav__icon svg{width:1.05rem;height:1.05rem;display:block;fill:none;stroke:currentColor;stroke-width:1.9;stroke-linecap:round;stroke-linejoin:round}.admin-nav__item.is-active .admin-nav__icon{background:hsl(var(--primary));color:hsl(var(--primary-foreground))}.admin-sidebar__footer{margin-top:auto;padding:.875rem;border:1px solid hsl(var(--border));border-radius:var(--radius);background:hsl(var(--card))}.admin-sidebar__footer span{display:block;color:hsl(var(--muted-foreground));font-size:.75rem}.admin-sidebar__footer b{display:block;margin:.35rem 0 .75rem;font-size:1rem;font-weight:600}.admin-site-link,.admin-button{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;border:1px solid hsl(var(--primary));border-radius:calc(var(--radius) - 2px);background:hsl(var(--primary));color:hsl(var(--primary-foreground));font-weight:600;text-decoration:none;cursor:pointer;transition:background-color .15s ease,border-color .15s ease,opacity .15s ease,box-shadow .15s ease}.admin-site-link{width:100%;height:2.25rem;padding:0 .875rem;font-size:.875rem}.admin-button{height:2.5rem;padding:0 1rem;font-size:.875rem}.admin-site-link:hover,.admin-button:hover{opacity:.92}.admin-site-link:focus-visible,.admin-button:focus-visible,.admin-nav__item:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible,a:focus-visible,button:focus-visible{outline:2px solid hsl(var(--ring));outline-offset:2px}.admin-main{min-width:0;width:100%;overflow-x:auto}.admin-header{padding:2rem clamp(1.25rem,4vw,3rem) 1.125rem;border-bottom:1px solid hsl(var(--border));background:hsl(var(--background))}.admin-header h1{margin:.65rem 0 .45rem;font-size:2rem;line-height:1.1;font-weight:700;letter-spacing:-.03em}.admin-header p{max-width:760px;margin:0;color:hsl(var(--muted-foreground));font-size:.925rem;line-height:1.6}.admin-shell{width:100%;max-width:none;padding:1.25rem clamp(1.125rem,2.4vw,2rem) 3.5rem}.admin-message{margin-bottom:1rem;padding:.75rem .875rem;border:1px solid hsl(var(--success)/.35);border-radius:calc(var(--radius) - 2px);background:hsl(var(--success)/.1);color:hsl(142 72% 29%);font-size:.875rem;font-weight:500}.admin-grid{display:grid;gap:1rem}.admin-grid--cards{grid-template-columns:repeat(4,minmax(0,1fr));margin-bottom:1rem}.admin-grid--two{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}.admin-grid--side{grid-template-columns:320px minmax(0,1fr);align-items:start}.metric-card,.admin-panel{border:1px solid hsl(var(--border));border-radius:var(--radius);background:hsl(var(--card));color:hsl(var(--card-foreground));box-shadow:0 1px 2px 0 rgb(0 0 0/.06)}.metric-card{padding:1rem}.metric-card span{display:block;color:hsl(var(--muted-foreground));font-size:.8125rem;font-weight:500}.metric-card strong{display:block;margin:.65rem 0 .35rem;font-size:1.875rem;line-height:1;font-weight:700;letter-spacing:-.03em}.metric-card em{color:hsl(var(--muted-foreground));font-size:.8125rem;font-style:normal}.admin-panel{padding:1rem}.admin-panel h2{margin:0 0 1rem;font-size:1rem;font-weight:600;letter-spacing:-.01em}.type-bars{display:grid;gap:.7rem}.type-bar{display:grid;grid-template-columns:3rem minmax(0,1fr) 2rem;gap:.65rem;align-items:center;color:hsl(var(--foreground))}.type-bar b{font-size:.8125rem;font-weight:600}.type-bar span{height:.5rem;border-radius:999px;background:hsl(var(--muted));overflow:hidden}.type-bar i{display:block;height:100%;border-radius:999px;background:hsl(var(--primary))}.type-bar em{text-align:right;color:hsl(var(--muted-foreground));font-size:.8125rem;font-style:normal}.mini-list{display:grid;gap:.5rem}.mini-list a{display:flex;justify-content:space-between;gap:.75rem;padding:.75rem;border:1px solid hsl(var(--border));border-radius:calc(var(--radius) - 2px);background:hsl(var(--card));text-decoration:none}.mini-list a:hover{background:hsl(var(--accent))}.mini-list b{font-weight:500}.mini-list span{color:hsl(var(--muted-foreground));font-size:.8125rem}.type-list{position:sticky;top:1rem;max-height:calc(100vh - 2rem);overflow:auto}.type-list a{display:block;margin-bottom:.5rem;padding:.75rem;border:1px solid hsl(var(--border));border-radius:calc(var(--radius) - 2px);background:hsl(var(--card));text-decoration:none}.type-list a:hover{background:hsl(var(--accent))}.type-list a.is-active{background:hsl(var(--secondary));border-color:hsl(var(--primary)/.45)}.type-list b{display:block;font-size:.875rem;font-weight:600}.type-list span{display:block;margin-top:.15rem;color:hsl(var(--muted-foreground));font-size:.75rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.admin-form{display:grid;gap:.875rem}.admin-form label,.admin-toolbar label{display:grid;gap:.45rem;color:hsl(var(--muted-foreground));font-size:.8125rem;font-weight:500}.admin-form input,.admin-form textarea,.admin-form select,.admin-toolbar input,.admin-toolbar select{width:100%;min-height:2.5rem;border:1px solid hsl(var(--input));border-radius:calc(var(--radius) - 2px);background:hsl(var(--background));color:hsl(var(--foreground));padding:.5rem .75rem;font:inherit;font-size:.875rem;outline:none}.admin-form textarea{resize:vertical;line-height:1.55}.admin-form input:focus,.admin-form textarea:focus,.admin-form select:focus,.admin-toolbar input:focus,.admin-toolbar select:focus{border-color:hsl(var(--ring));box-shadow:0 0 0 3px hsl(var(--ring)/.22)}.admin-toolbar{display:flex;gap:.625rem;align-items:center;margin-bottom:.875rem}.admin-toolbar input,.admin-toolbar select{max-width:240px}.admin-table-wrap{overflow:auto;border:1px solid hsl(var(--border));border-radius:var(--radius)}.admin-table{width:100%;border-collapse:collapse;min-width:780px}.admin-table th,.admin-table td{padding:.75rem .875rem;border-bottom:1px solid hsl(var(--border));text-align:left;font-size:.8125rem;vertical-align:middle}.admin-table th{color:hsl(var(--muted-foreground));font-weight:500;background:hsl(var(--muted)/.55)}.admin-table td{color:hsl(var(--foreground))}.admin-table tr:last-child td{border-bottom:0}.admin-table a{color:hsl(var(--primary));text-decoration:none}.pager{color:hsl(var(--muted-foreground));font-size:.8125rem}.pager a{margin-left:.625rem;color:hsl(var(--primary));text-decoration:none}.admin-badge{display:inline-flex;align-items:center;height:1.35rem;padding:0 .55rem;border-radius:999px;border:1px solid hsl(var(--border));background:hsl(var(--secondary));color:hsl(var(--secondary-foreground));font-size:.75rem;font-weight:500}.admin-badge--active,.admin-badge--paid{border-color:hsl(var(--success)/.35);background:hsl(var(--success)/.12);color:hsl(142 72% 29%)}.admin-badge--paused,.admin-badge--pending{border-color:hsl(var(--warning)/.35);background:hsl(var(--warning)/.12);color:hsl(32 95% 28%)}.admin-badge--refunded,.admin-badge--closed{border-color:hsl(var(--muted-foreground)/.25);background:hsl(var(--muted));color:hsl(var(--muted-foreground))}.qr-list{display:grid;gap:.75rem}.qr-item{display:grid;grid-template-columns:4.75rem minmax(0,1fr);gap:.875rem;padding:.75rem;border:1px solid hsl(var(--border));border-radius:var(--radius);background:hsl(var(--card))}.qr-item img,.qr-placeholder{width:4.75rem;height:4.75rem;border-radius:calc(var(--radius) - 2px);border:1px solid hsl(var(--border));background:hsl(var(--muted));object-fit:cover}.qr-placeholder{display:grid;place-items:center;color:hsl(var(--muted-foreground));font-family:ui-monospace,SFMono-Regular,Menlo,monospace}.qr-item h3{margin:0 0 .45rem;font-size:.925rem;font-weight:600}.qr-item p,.qr-item small{display:block;margin:0 0 .35rem;color:hsl(var(--muted-foreground));overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.qr-item footer{display:flex;gap:.75rem;align-items:center}.qr-item footer a,.qr-item footer button,.inline-form button{border:0;background:transparent;color:hsl(var(--primary));font:inherit;font-size:.8125rem;cursor:pointer;padding:0}.inline-form{display:inline;margin-left:.625rem}.empty-text{color:hsl(var(--muted-foreground))}.admin-table .empty-text{text-align:center;padding:1.5rem}.admin-panel ::placeholder{color:hsl(var(--muted-foreground)/.75)}select option{background:hsl(var(--popover));color:hsl(var(--popover-foreground))}@media (max-width:1120px){.admin-layout{grid-template-columns:248px minmax(0,1fr)}.admin-grid--cards{grid-template-columns:repeat(2,minmax(0,1fr))}.admin-grid--side{grid-template-columns:280px minmax(0,1fr)}}@media (max-width:820px){.admin-layout{display:block}.admin-sidebar{position:relative;height:auto}.admin-nav{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}.admin-sidebar__footer{display:none}.admin-header h1{font-size:1.75rem}.admin-grid--cards,.admin-grid--two,.admin-grid--side{grid-template-columns:1fr}.type-list{position:relative;top:auto;max-height:none}.admin-toolbar{align-items:stretch;flex-direction:column}.admin-toolbar input,.admin-toolbar select{max-width:none}}@media (max-width:520px){.admin-sidebar{padding:.75rem}.admin-nav{grid-template-columns:1fr}.admin-shell,.admin-header{padding-left:.875rem;padding-right:.875rem}.metric-card strong{font-size:1.6rem}.qr-item{grid-template-columns:1fr}.qr-item img,.qr-placeholder{width:100%;height:140px}.mini-list a{display:block}.mini-list span{display:block;margin-top:.35rem}}

/* Collapsible sidebar */
.admin-layout,.admin-sidebar,.admin-main,.admin-brand__text,.admin-nav__label,.admin-sidebar__footer{transition:grid-template-columns .18s ease,width .18s ease,opacity .14s ease,transform .18s ease,padding .18s ease}
.admin-brand{position:relative}.admin-brand__text{min-width:0}.admin-sidebar-toggle{margin-left:auto;display:inline-grid;place-items:center;width:2rem;height:2rem;border:1px solid hsl(var(--border));border-radius:calc(var(--radius) - 4px);background:hsl(var(--background));color:hsl(var(--muted-foreground));cursor:pointer;font:inherit;font-size:1.25rem;line-height:1;transition:background-color .15s ease,color .15s ease,border-color .15s ease,transform .18s ease}.admin-sidebar-toggle:hover{background:hsl(var(--accent));color:hsl(var(--accent-foreground))}.admin-sidebar-toggle span{display:block;transform:translateY(-1px)}
html.admin-sidebar-collapsed .admin-layout{grid-template-columns:72px minmax(0,1fr)}
html.admin-sidebar-collapsed .admin-sidebar{padding:.75rem .5rem;align-items:center}
html.admin-sidebar-collapsed .admin-brand{display:grid;gap:.6rem;justify-items:center;padding:.5rem 0 1rem}
html.admin-sidebar-collapsed .admin-brand__mark{width:2.25rem;height:2.25rem}
html.admin-sidebar-collapsed .admin-brand__text,html.admin-sidebar-collapsed .admin-nav__label,html.admin-sidebar-collapsed .admin-sidebar__footer{opacity:0;pointer-events:none;position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
html.admin-sidebar-collapsed .admin-sidebar-toggle{margin:0;width:2.25rem;height:2.25rem;transform:rotate(180deg)}
html.admin-sidebar-collapsed .admin-nav{width:100%;align-items:center}
html.admin-sidebar-collapsed .admin-nav__item{display:flex;align-items:center;justify-content:center;width:2.75rem;height:2.75rem;padding:0;border-radius:calc(var(--radius) - 2px)}
html.admin-sidebar-collapsed .admin-nav__icon{display:grid;position:static;width:2rem;height:2rem;opacity:1;pointer-events:auto;overflow:visible;clip:auto;visibility:visible}
html.admin-sidebar-collapsed .admin-nav__icon svg{display:block;opacity:1;visibility:visible}
html.admin-sidebar-collapsed .admin-nav__item{position:relative}
html.admin-sidebar-collapsed .admin-nav__item:hover::after,html.admin-sidebar-collapsed .admin-nav__item:focus-visible::after{content:attr(aria-label);position:absolute;left:calc(100% + .65rem);top:50%;transform:translateY(-50%);z-index:40;min-width:max-content;padding:.45rem .65rem;border:1px solid hsl(var(--border));border-radius:calc(var(--radius) - 4px);background:hsl(var(--popover));color:hsl(var(--popover-foreground));box-shadow:0 8px 24px rgb(15 23 42/.12);font-size:.8125rem;white-space:nowrap}
@media (max-width:820px){html.admin-sidebar-collapsed .admin-layout{display:block}html.admin-sidebar-collapsed .admin-sidebar{align-items:stretch;padding:.75rem}html.admin-sidebar-collapsed .admin-brand{display:flex;justify-items:normal;padding:.5rem .5rem 1.25rem}html.admin-sidebar-collapsed .admin-brand__text,html.admin-sidebar-collapsed .admin-nav__label,html.admin-sidebar-collapsed .admin-sidebar__footer{opacity:1;pointer-events:auto;position:static;width:auto;height:auto;overflow:visible;clip:auto;white-space:normal}html.admin-sidebar-collapsed .admin-sidebar-toggle{margin-left:auto;transform:none}html.admin-sidebar-collapsed .admin-nav{width:auto;align-items:stretch}html.admin-sidebar-collapsed .admin-nav__item{display:grid;grid-template-columns:2rem minmax(0,1fr);justify-content:normal;width:auto;height:auto;padding:.625rem}html.admin-sidebar-collapsed .admin-nav__item:hover::after,html.admin-sidebar-collapsed .admin-nav__item:focus-visible::after{display:none}}

/* Multi-tab admin shell */
.admin-tabs-bar{position:sticky;top:0;z-index:30;display:flex;align-items:center;min-height:3rem;padding:.4rem clamp(1.125rem,2.4vw,2rem);border-bottom:1px solid hsl(var(--border));background:hsl(var(--background)/.96);backdrop-filter:saturate(180%) blur(12px)}
.admin-tabs{display:flex;align-items:center;gap:.6rem;width:100%;overflow:auto;scrollbar-width:thin}
.admin-tab{position:relative;display:inline-flex;align-items:center;gap:.15rem;max-width:220px;height:2.15rem;padding:0 .25rem 0 0;border:0;border-radius:calc(var(--radius) - 5px);background:transparent;color:hsl(var(--muted-foreground));box-shadow:none;overflow:hidden;white-space:nowrap;flex:0 0 auto}
.admin-tab::after{content:"";position:absolute;left:.55rem;right:.55rem;bottom:0;height:2px;border-radius:999px;background:transparent}
.admin-tab:hover{background:hsl(var(--accent));color:hsl(var(--foreground))}
.admin-tab.is-active{background:hsl(var(--secondary)/.72);color:hsl(var(--foreground))}
.admin-tab.is-active::after{background:hsl(var(--primary))}
.admin-tab a{min-width:0;padding:0 .45rem 0 .7rem;overflow:hidden;text-overflow:ellipsis;font-size:.82rem;font-weight:600;text-decoration:none}
.admin-tab button{display:grid;place-items:center;width:1.35rem;height:1.35rem;border:0;border-radius:999px;background:transparent;color:hsl(var(--muted-foreground));font:inherit;font-size:.92rem;line-height:1;cursor:pointer}
.admin-tab button:hover{background:hsl(var(--muted));color:hsl(var(--foreground))}
.admin-tabs-bar + .admin-shell{padding-top:.875rem}
@media (max-width:820px){.admin-tabs-bar{position:relative;padding:.5rem .875rem}.admin-tab{max-width:180px}.admin-tabs-bar + .admin-shell{padding-top:.875rem}}


/* Operational logic additions */
.admin-hint{margin:.25rem 0 1rem;color:hsl(var(--muted-foreground));font-size:.84rem;line-height:1.65}
.admin-actions{display:flex;align-items:center;gap:.5rem;flex-wrap:wrap}
.admin-actions a,.admin-actions button,.admin-table button[data-copy-link],.admin-table .inline-form button{border:1px solid hsl(var(--border));background:hsl(var(--secondary));color:hsl(var(--foreground));border-radius:calc(var(--radius) - 4px);padding:.38rem .6rem;font-size:.78rem;line-height:1;text-decoration:none;cursor:pointer}
.admin-actions a:hover,.admin-actions button:hover,.admin-table button[data-copy-link]:hover,.admin-table .inline-form button:hover{border-color:hsl(var(--primary));color:hsl(var(--primary))}
.admin-subnav{display:flex;gap:.5rem;align-items:center;overflow:auto;margin:0 0 1rem;padding:.35rem;border:1px solid hsl(var(--border));border-radius:var(--radius);background:hsl(var(--card))}
.admin-subnav a{display:inline-flex;align-items:center;justify-content:center;height:2.15rem;padding:0 .8rem;border-radius:calc(var(--radius) - 4px);color:hsl(var(--muted-foreground));font-size:.84rem;font-weight:600;text-decoration:none;white-space:nowrap}
.admin-subnav a:hover{background:hsl(var(--accent));color:hsl(var(--accent-foreground))}
.admin-subnav a.is-active{background:hsl(var(--primary));color:hsl(var(--primary-foreground))}
.admin-platform-selector{margin-bottom:1rem}.admin-platform-selector .admin-toolbar{margin:0;align-items:end}.admin-platform-selector label{min-width:220px}.platform-inline-form{margin-top:1rem;padding-top:1rem;border-top:1px solid hsl(var(--border))}.admin-checklist{display:grid;gap:.65rem}.admin-checklist p{display:grid;grid-template-columns:1.75rem minmax(0,1fr) max-content;align-items:center;gap:.65rem;margin:0;padding:.7rem .75rem;border:1px solid hsl(var(--border));border-radius:calc(var(--radius) - 2px);background:hsl(var(--secondary)/.45)}.admin-checklist span{display:grid;place-items:center;width:1.35rem;height:1.35rem;border-radius:999px;background:hsl(var(--primary));color:hsl(var(--primary-foreground));font-weight:800;font-size:.78rem}.admin-checklist em{font-style:normal;color:hsl(var(--muted-foreground));font-size:.82rem}.platform-record-grid{margin-top:1rem}.admin-button--secondary{border-color:hsl(var(--border));background:hsl(var(--secondary));color:hsl(var(--secondary-foreground))}.admin-button svg{width:1rem;height:1rem;display:block;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}.admin-link{display:inline-flex;align-items:center;justify-content:center;min-height:2.5rem;color:hsl(var(--primary));font-weight:600;text-decoration:none}.admin-dashboard-toolbar{display:flex;justify-content:flex-end;margin-bottom:1rem}.admin-workspace-header{display:flex;align-items:flex-start;justify-content:space-between;gap:1.25rem;margin-bottom:1rem}.admin-workspace-header h2{margin:.35rem 0 .4rem;font-size:1.25rem}.admin-workspace-header p{margin:0;color:hsl(var(--muted-foreground));font-size:.88rem;line-height:1.6}.admin-workspace-header dl,.setting-summary{display:grid;gap:.55rem;margin:0}.admin-workspace-header dl{grid-template-columns:repeat(2,minmax(0,1fr));min-width:min(100%,520px)}.admin-workspace-header dl div,.setting-summary p{margin:0;padding:.65rem .75rem;border:1px solid hsl(var(--border));border-radius:calc(var(--radius) - 2px);background:hsl(var(--secondary)/.38)}.admin-workspace-header dt{margin:0 0 .25rem;color:hsl(var(--muted-foreground));font-size:.72rem;font-weight:600}.admin-workspace-header dd{margin:0;font-size:.85rem}.setting-summary p{font-size:.86rem;line-height:1.55}.admin-panel code,.admin-table code{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:.78rem;color:hsl(var(--foreground))}
.admin-panel-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem;margin-bottom:1rem}.admin-panel-heading h2{margin:0 0 .35rem}.admin-inline-sync-form{display:flex;flex:0 0 auto}.admin-dashboard-ad-spend-card{grid-column:1}.admin-dashboard-ads-panel{margin-bottom:1rem}.admin-dashboard-ads-heading{display:block}.admin-dashboard-ads-heading-text{min-width:0}.admin-dashboard-ads-title-row{display:flex;align-items:center;justify-content:space-between;gap:.875rem}.admin-dashboard-ads-title-row h2{margin:0}.admin-dashboard-ads-title-row .admin-button--compact{white-space:nowrap}.admin-dashboard-ads-title-row + .admin-hint{margin-top:.35rem}.admin-dashboard-ads-table-wrap{overflow-x:auto;-webkit-overflow-scrolling:touch}.admin-dashboard-ads-table{width:max-content;min-width:860px;table-layout:auto}.admin-dashboard-ads-table th,.admin-dashboard-ads-table td{white-space:nowrap}
@media (max-width:980px){.platform-editor-first .platform-editor-panel{order:-1}}
.admin-table small{color:hsl(var(--muted-foreground));font-size:.76rem}.admin-table-strong{font-weight:800;color:hsl(var(--foreground))}.admin-dashboard-ads-table .admin-table-strong{color:hsl(var(--primary))}.admin-dashboard-ads-table .admin-table-profit--positive{color:hsl(var(--success))}.admin-dashboard-ads-table .admin-table-profit--negative{color:hsl(0 72% 51%)}
.admin-orders-table-wrap{display:block;width:100%;max-width:100%;min-width:0;overflow-x:auto;-webkit-overflow-scrolling:touch}
.admin-orders-table{width:max-content;min-width:1180px;table-layout:auto}
.admin-orders-table th,.admin-orders-table td{white-space:nowrap}
.admin-ad-quality-table-wrap{overflow-x:auto;-webkit-overflow-scrolling:touch}
.admin-ad-quality-table{width:max-content;min-width:760px;table-layout:auto}
.admin-ad-quality-table th,.admin-ad-quality-table td{white-space:nowrap}
.admin-badge--inactive{background:hsl(var(--muted));color:hsl(var(--muted-foreground));border-color:hsl(var(--border))}
.platform-suite-list{grid-template-columns:minmax(0,1fr)}
.platform-suite-list .platform-editor-panel{max-width:720px}
.admin-panel__header{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem;margin-bottom:1rem}
.admin-panel__header h2{margin-bottom:.35rem}
.admin-panel__header .admin-hint{margin:0}
.admin-button--compact{width:auto;min-width:max-content;padding:0 .875rem}
.admin-button.is-loading,.admin-site-link.is-loading{opacity:.88;cursor:wait}
.admin-button.is-loading > svg,.admin-site-link.is-loading > svg{display:none}
.admin-loading-icon{display:none;align-items:center;justify-content:center;width:1rem;height:1rem;flex:0 0 1rem}
.admin-loading-icon svg{display:block;width:1rem;height:1rem;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round;animation:admin-spin .82s linear infinite}
.admin-button.is-loading .admin-loading-icon,.admin-site-link.is-loading .admin-loading-icon{display:inline-flex}
@keyframes admin-spin{to{transform:rotate(360deg)}}
.admin-drawer{position:fixed;inset:0;z-index:80;pointer-events:none}
.admin-drawer__backdrop{position:absolute;inset:0;background:rgb(15 23 42/.24);opacity:0;transition:opacity .18s ease}
.admin-drawer__panel{position:absolute;top:0;right:0;width:min(100%,440px);height:100%;overflow:auto;padding:1.25rem;border-left:1px solid hsl(var(--border));background:hsl(var(--background));box-shadow:-24px 0 60px rgb(15 23 42/.14);transform:translateX(100%);transition:transform .22s ease}
.admin-drawer.is-open{pointer-events:auto}
.admin-drawer.is-open .admin-drawer__backdrop{opacity:1}
.admin-drawer.is-open .admin-drawer__panel{transform:translateX(0)}
.admin-drawer__header{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem;margin-bottom:1rem;padding-bottom:1rem;border-bottom:1px solid hsl(var(--border))}
.admin-drawer__header h2{margin:.35rem 0 0;font-size:1.25rem;line-height:1.25}
.admin-drawer__close{display:grid;place-items:center;width:2rem;height:2rem;border:1px solid hsl(var(--border));border-radius:calc(var(--radius) - 4px);background:hsl(var(--background));color:hsl(var(--muted-foreground));font-size:1.25rem;line-height:1;text-decoration:none}
.admin-drawer__close:hover{background:hsl(var(--accent));color:hsl(var(--accent-foreground))}
@media (max-width:640px){.admin-panel__header{display:grid}.admin-button--compact{width:100%}.admin-dashboard-ads-title-row .admin-button--compact{width:auto}.admin-drawer__panel{width:100%}}


/* Package & payment settings */
.admin-grid--side{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(320px,.75fr);gap:18px;align-items:start}.package-config-form{padding:16px 0;border-top:1px solid hsl(var(--border));margin-top:14px}.package-config-form:first-of-type{border-top:0;margin-top:0}.admin-form hr{border:0;border-top:1px solid hsl(var(--border));margin:16px 0}.admin-check{display:flex!important;align-items:center;gap:10px;color:hsl(var(--foreground));font-weight:600}.admin-check input{width:auto!important}.admin-form textarea{min-height:88px;resize:vertical}.admin-hint{color:hsl(var(--muted-foreground));font-size:13px;line-height:1.7;margin:4px 0 14px}@media (max-width:980px){.admin-grid--side{grid-template-columns:1fr}}
.admin-grid--side.platform-suite-list{grid-template-columns:minmax(0,1fr)}

/* Login page */
.admin-login-page{display:grid;place-items:center;padding:24px;background:radial-gradient(circle at 50% 0,hsl(var(--primary)/.22),transparent 34%),hsl(var(--background))}
.admin-login-shell{width:min(100%,420px)}
.admin-login-card{padding:30px 28px;border:1px solid hsl(var(--border));border-radius:calc(var(--radius) + 6px);background:hsl(var(--card));box-shadow:0 24px 80px rgb(15 23 42/.12)}
.admin-login-card .admin-brand__mark{margin:0 auto 18px}
.admin-login-card .admin-kicker{display:flex;justify-content:center;margin:0 0 10px}
.admin-login-card h1{margin:0;text-align:center;font-size:1.65rem;line-height:1.16;font-weight:700;letter-spacing:-.03em}
.admin-login-copy{margin:12px auto 22px;max-width:310px;text-align:center;color:hsl(var(--muted-foreground));font-size:.9rem;line-height:1.65}
.admin-login-error{margin:0 0 14px;padding:.72rem .8rem;border:1px solid hsl(var(--destructive)/.42);border-radius:calc(var(--radius) - 2px);background:hsl(var(--destructive)/.12);color:hsl(0 72% 38%);font-size:.86rem;text-align:center}
.admin-login-form{display:grid;gap:14px}
.admin-login-form label{display:grid;gap:8px;color:hsl(var(--muted-foreground));font-size:.84rem;font-weight:500}
.admin-login-form input{width:100%;height:44px;border:1px solid hsl(var(--input));border-radius:calc(var(--radius) - 2px);background:hsl(var(--background));color:hsl(var(--foreground));padding:0 13px;font:inherit;outline:none}
.admin-login-form input:focus{border-color:hsl(var(--ring));box-shadow:0 0 0 3px hsl(var(--ring)/.22)}
.admin-login-form .admin-button{width:100%;height:44px;margin-top:4px}
.admin-site-link--ghost{margin-top:.55rem;border-color:hsl(var(--border));background:transparent;color:hsl(var(--muted-foreground))}
.admin-site-link--ghost:hover{color:hsl(var(--foreground));border-color:hsl(var(--primary));opacity:1}
.admin-theme-toggle{display:inline-flex;align-items:center;justify-content:center;gap:.55rem;width:100%;height:2.25rem;border:1px solid hsl(var(--border));border-radius:calc(var(--radius) - 2px);background:hsl(var(--secondary));color:hsl(var(--foreground));font:inherit;font-size:.875rem;font-weight:650;cursor:pointer;transition:background-color .15s ease,border-color .15s ease,color .15s ease,box-shadow .15s ease}
.admin-theme-toggle:hover{border-color:hsl(var(--primary));background:hsl(var(--accent));color:hsl(var(--accent-foreground))}
.admin-theme-toggle svg{width:1rem;height:1rem;display:block;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
.admin-theme-toggle__icon,.admin-theme-toggle__label{color:inherit}
.admin-theme-toggle__icon{display:inline-flex;align-items:center;justify-content:center}
.admin-theme-toggle__icon--sun{display:none}
html.admin-theme-dark .admin-theme-toggle__icon--moon{display:none}
html.admin-theme-dark .admin-theme-toggle__icon--sun{display:inline-flex}
html.admin-sidebar-collapsed .admin-sidebar__footer{display:flex;opacity:1;pointer-events:auto;position:static;width:100%;height:auto;overflow:visible;clip:auto;white-space:normal;margin-top:auto;padding:0;border:0;background:transparent}
html.admin-sidebar-collapsed .admin-sidebar__footer .admin-site-link{display:none}
html.admin-sidebar-collapsed .admin-theme-toggle{width:2.75rem;height:2.75rem;padding:0;border-radius:calc(var(--radius) - 2px)}
html.admin-sidebar-collapsed .admin-theme-toggle__label{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
html.admin-sidebar-collapsed .admin-theme-toggle{position:relative}
html.admin-sidebar-collapsed .admin-theme-toggle:hover::after,html.admin-sidebar-collapsed .admin-theme-toggle:focus-visible::after{content:attr(aria-label);position:absolute;left:calc(100% + .65rem);bottom:.2rem;z-index:40;min-width:max-content;padding:.45rem .65rem;border:1px solid hsl(var(--border));border-radius:calc(var(--radius) - 4px);background:hsl(var(--popover));color:hsl(var(--popover-foreground));box-shadow:0 8px 24px rgb(0 0 0/.22);font-size:.8125rem;white-space:nowrap}
html.admin-mobile-mode .admin-sidebar__footer{display:grid;gap:.55rem;margin-top:1rem;padding:.75rem;border:1px solid hsl(var(--border));background:hsl(var(--card))}
html.admin-mobile-mode .admin-theme-toggle{width:100%;height:2.25rem;padding:0 .875rem}
html.admin-mobile-mode .admin-theme-toggle__label{position:static;width:auto;height:auto;overflow:visible;clip:auto;white-space:normal}
html.admin-mobile-mode .admin-theme-toggle:hover::after,html.admin-mobile-mode .admin-theme-toggle:focus-visible::after{display:none}

/* WeChat material picker */
.admin-material-picker{display:grid;gap:.85rem;padding:.9rem;border:1px solid hsl(var(--border));border-radius:var(--radius);background:hsl(var(--secondary)/.32)}
.admin-material-picker>b,.admin-material-picker b{font-weight:650}
.admin-material-picker .admin-hint{margin:.25rem 0 0}
.admin-material-picker select{max-width:100%;font-size:.82rem}
.admin-material-picker input[type="file"]{height:auto;min-height:2.5rem;padding:.45rem .65rem;line-height:1.6}
.admin-material-upload-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:.65rem;align-items:center}
.admin-material-picker small{color:hsl(var(--muted-foreground));font-size:.76rem;line-height:1.45}
.admin-material-refresh-form{margin-top:.85rem}
@media (max-width:640px){.admin-material-upload-row{grid-template-columns:1fr}.admin-material-upload-row .admin-button{width:100%}}

/* Dashboard metrics and daily charts */
.admin-grid--cards{grid-template-columns:repeat(auto-fit,minmax(160px,1fr))}
body[data-admin-section="dashboard"] .admin-grid--cards{grid-template-columns:repeat(5,minmax(0,1fr))}
.admin-panel--wide{grid-column:1/-1}
.daily-bars{display:grid;grid-template-columns:repeat(31,minmax(18px,1fr));align-items:end;gap:6px;min-height:220px;padding:10px 4px 0;overflow-x:auto}
.daily-bar{display:grid;grid-template-rows:18px minmax(120px,1fr) auto;gap:6px;align-items:end;min-width:18px;text-align:center;color:hsl(var(--muted-foreground))}
.daily-bar span{font-size:10px;writing-mode:vertical-rl;text-orientation:mixed;justify-self:center;opacity:.78}
.daily-bar b{display:block;width:100%;min-height:4px;border-radius:999px 999px 3px 3px;background:linear-gradient(180deg,hsl(var(--primary)),hsl(199 89% 48%));box-shadow:0 8px 18px hsl(var(--primary)/.18)}
.daily-bar em{font-size:10px;font-style:normal;white-space:nowrap;transform:rotate(-35deg);transform-origin:center top;color:hsl(var(--foreground));opacity:.78}
@media (max-width:1280px){.admin-grid--cards{grid-template-columns:repeat(3,minmax(0,1fr))}body[data-admin-section="dashboard"] .admin-grid--cards{grid-template-columns:repeat(3,minmax(0,1fr))}.admin-dashboard-ad-spend-card{grid-column:auto}}
@media (max-width:820px){.admin-grid--cards{grid-template-columns:repeat(2,minmax(0,1fr))}.daily-bars{grid-template-columns:repeat(31,20px)}}
@media (max-width:520px){.admin-grid--cards{grid-template-columns:repeat(2,minmax(0,1fr));gap:.625rem}.metric-card{padding:.7rem}.metric-card span{font-size:.7rem}.metric-card strong{margin:.45rem 0 .25rem;font-size:1.35rem}.metric-card em{font-size:.7rem}.daily-bars{min-height:190px}}
@media (max-width:520px){.admin-order-metrics{grid-template-columns:repeat(4,minmax(0,1fr));gap:.45rem}.admin-order-metrics .metric-card{padding:.52rem .42rem}.admin-order-metrics .metric-card span{font-size:.62rem;line-height:1.2}.admin-order-metrics .metric-card strong{margin:.32rem 0 .18rem;font-size:1.05rem}.admin-order-metrics .metric-card em{font-size:.6rem;line-height:1.25}}
@media (max-width:520px){.admin-analytics-metrics{grid-template-columns:repeat(5,minmax(0,1fr));gap:.35rem}.admin-analytics-metrics .metric-card{padding:.46rem .34rem}.admin-analytics-metrics .metric-card span{font-size:.58rem;line-height:1.18}.admin-analytics-metrics .metric-card strong{margin:.28rem 0 .16rem;font-size:.92rem}.admin-analytics-metrics .metric-card em{font-size:.56rem;line-height:1.22}}

/* ECharts dashboard */
.admin-echart{width:100%;height:320px;min-height:280px}
.admin-panel .admin-echart:empty{background:linear-gradient(180deg,hsl(var(--secondary)/.32),hsl(var(--card)));border-radius:calc(var(--radius) - 2px)}
@media (max-width:820px){.admin-echart{height:280px}}


/* Analytics filter row */
.admin-analytics-filter-panel{margin-bottom:1.5rem}
.admin-analytics-filter-panel .admin-filter-form{margin:0}
.admin-filter-form{display:grid;grid-template-columns:minmax(300px,1.15fr) minmax(220px,1fr) minmax(132px,.45fr) max-content max-content;align-items:end;gap:14px;width:100%;overflow:visible;padding-bottom:2px}
.admin-filter-scroll-row,.admin-filter-actions-row{display:contents}
.admin-filter-form label{margin:0;min-width:0;width:100%}
.admin-filter-form input,.admin-filter-form select{width:100%;min-width:0}
.admin-filter-form__range{display:grid;gap:.45rem;position:relative;z-index:2;margin:0;min-width:0;width:100%;color:hsl(var(--muted-foreground));font-size:.8125rem;font-weight:500}
.admin-field-label{display:block;color:hsl(var(--muted-foreground));font-size:.8125rem;font-weight:500}
.admin-date-range{display:block;position:relative;width:100%;min-height:2.5rem}
.admin-date-range__trigger{display:flex;align-items:center;width:100%;height:2.5rem;border:1px solid hsl(var(--input));border-radius:calc(var(--radius) - 2px);background:hsl(var(--background));color:hsl(var(--foreground));padding:0 .75rem;font:inherit;font-size:.875rem;line-height:1.2;text-align:left;cursor:pointer}
.admin-date-range__trigger:focus{border-color:hsl(var(--ring));box-shadow:0 0 0 3px hsl(var(--ring)/.22);outline:none}
.admin-date-range__trigger span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.admin-date-range__popover{position:absolute;top:calc(100% + .45rem);left:0;z-index:9999;display:block;width:min(39rem,calc(100vw - 2rem));border:1px solid hsl(var(--border));border-radius:calc(var(--radius) + 2px);background:hsl(var(--popover));box-shadow:0 18px 45px hsl(var(--foreground)/.18);padding:.75rem;color:hsl(var(--foreground))}
.admin-date-range__popover[hidden]{display:none}
.admin-date-range__header{display:grid;grid-template-columns:2rem 1fr 2rem;align-items:center;gap:.5rem;margin-bottom:.65rem}
.admin-date-range__header strong{text-align:center;font-size:.9rem;font-weight:700}
.admin-date-range__nav,.admin-date-range__secondary,.admin-date-range__primary{border:1px solid hsl(var(--border));border-radius:calc(var(--radius) - 2px);background:hsl(var(--secondary));color:hsl(var(--foreground));font:inherit;font-size:.85rem;cursor:pointer}
.admin-date-range__nav{width:2rem;height:2rem}
.admin-date-range__nav:hover,.admin-date-range__secondary:hover{border-color:hsl(var(--primary));color:hsl(var(--primary))}
.admin-date-range__calendars{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.75rem}
.admin-date-range__month{display:block}
.admin-date-range__month-title{display:block;margin-bottom:.45rem;text-align:center;font-size:.84rem;font-weight:700;color:hsl(var(--muted-foreground))}
.admin-date-range__weekdays,.admin-date-range__days{display:grid;grid-template-columns:repeat(7,2rem);justify-content:center;gap:.18rem}
.admin-date-range__weekdays span{height:1.35rem;color:hsl(var(--muted-foreground));font-size:.72rem;line-height:1.35rem;text-align:center}
.admin-date-range__day{width:2rem;height:2rem;border:0;border-radius:999px;background:transparent;color:hsl(var(--foreground));font:inherit;font-size:.8rem;cursor:pointer}
.admin-date-range__day:hover{background:hsl(var(--secondary));color:hsl(var(--primary))}
.admin-date-range__day.is-muted{color:hsl(var(--muted-foreground)/.45)}
.admin-date-range__day.is-in-range{border-radius:0;background:hsl(var(--primary)/.12);color:hsl(var(--foreground))}
.admin-date-range__day.is-start,.admin-date-range__day.is-end{border-radius:999px;background:hsl(var(--primary));color:hsl(var(--primary-foreground));font-weight:700}
.admin-date-range__day.is-today{box-shadow:inset 0 0 0 1px hsl(var(--primary))}
.admin-date-range__manual{display:grid;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);align-items:center;gap:.45rem;margin-top:.75rem}
.admin-date-range__manual input{height:2.25rem;border:1px solid hsl(var(--input));border-radius:calc(var(--radius) - 2px);background:hsl(var(--background));color:hsl(var(--foreground));padding:.45rem .55rem;font:inherit;font-size:.8rem}
.admin-date-range__manual i{color:hsl(var(--muted-foreground));font-size:.8rem;font-style:normal;white-space:nowrap}
.admin-date-range__actions{display:flex;justify-content:flex-end;gap:.5rem;margin-top:.75rem}
.admin-date-range__secondary,.admin-date-range__primary{height:2.25rem;padding:0 .85rem}
.admin-date-range__primary{border-color:hsl(var(--primary));background:hsl(var(--primary));color:hsl(var(--primary-foreground));font-weight:700}
.admin-filter-form__submit,.admin-filter-form__reset{height:2.5rem;margin:0;white-space:nowrap;align-self:end}
.admin-filter-form__reset{display:inline-flex;align-items:center;justify-content:center;border:1px solid hsl(var(--border));border-radius:calc(var(--radius) - 2px);background:hsl(var(--secondary));color:hsl(var(--foreground));padding:0 .875rem;font-size:.875rem;font-weight:600;text-decoration:none}
.admin-filter-form__reset:hover{border-color:hsl(var(--primary));color:hsl(var(--primary))}
@media (max-width:1180px){.admin-filter-form{grid-template-columns:repeat(2,minmax(0,1fr))}.admin-filter-form__range,.admin-filter-form__source{grid-column:1 / -1}.admin-filter-form__submit,.admin-filter-form__reset{width:100%}}
@media (max-width:640px){.admin-filter-form{display:grid;grid-template-columns:1fr;gap:.65rem;overflow:visible;padding-bottom:0}.admin-filter-form input[type=hidden]{display:none}.admin-filter-scroll-row{display:flex;gap:.55rem;align-items:end;overflow-x:auto;overflow-y:visible;padding-bottom:.45rem;-webkit-overflow-scrolling:touch}.admin-filter-scroll-row label{flex:0 0 9.5rem;min-width:9.5rem}.admin-filter-scroll-row .admin-filter-form__range{flex-basis:17rem;min-width:17rem}.admin-filter-scroll-row .admin-filter-form__source{flex-basis:12rem;min-width:12rem}.admin-filter-actions-row{display:flex;flex-wrap:wrap;gap:.55rem;align-items:center}.admin-filter-actions-row .admin-filter-form__submit,.admin-filter-actions-row .admin-filter-form__reset{width:auto;min-width:7rem;height:2.5rem;padding:0 .75rem}.admin-date-range__popover{width:min(20rem,calc(100vw - 1.5rem));max-height:70vh;overflow:auto}.admin-date-range__calendars{grid-template-columns:1fr}.admin-date-range__weekdays,.admin-date-range__days{grid-template-columns:repeat(7,1.9rem)}.admin-date-range__day{width:1.9rem;height:1.9rem}.admin-date-range__manual input{font-size:.78rem;padding:.42rem .45rem}.admin-analytics-filter-panel{margin-bottom:1rem}}

/* Mobile admin shell */
.admin-mobile-topbar,.admin-mobile-backdrop{display:none}
@media (max-width:820px){
html.admin-mobile-mode,html.admin-mobile-mode body{overflow-x:hidden}
html.admin-mobile-mode.admin-mobile-menu-open body{overflow:hidden}
html.admin-mobile-mode .admin-layout{display:block;min-height:100vh;background:hsl(var(--background))}
html.admin-mobile-mode .admin-mobile-topbar{position:sticky;top:0;z-index:70;display:grid;grid-template-columns:2.5rem minmax(0,1fr) auto;gap:.65rem;align-items:center;min-height:3.5rem;padding:calc(env(safe-area-inset-top,0px) + .45rem) .75rem .45rem;border-bottom:1px solid hsl(var(--border));background:hsl(var(--background)/.96);backdrop-filter:saturate(180%) blur(14px)}
html.admin-mobile-mode .admin-mobile-menu-button{display:grid;place-items:center;width:2.5rem;height:2.5rem;border:1px solid hsl(var(--border));border-radius:calc(var(--radius) - 4px);background:hsl(var(--card));color:hsl(var(--foreground));cursor:pointer}
html.admin-mobile-mode .admin-mobile-menu-button span,html.admin-mobile-mode .admin-mobile-menu-button span::before,html.admin-mobile-mode .admin-mobile-menu-button span::after{display:block;width:1.1rem;height:2px;border-radius:999px;background:currentColor;content:""}
html.admin-mobile-mode .admin-mobile-menu-button span{position:relative}
html.admin-mobile-mode .admin-mobile-menu-button span::before,html.admin-mobile-mode .admin-mobile-menu-button span::after{position:absolute;left:0}
html.admin-mobile-mode .admin-mobile-menu-button span::before{top:-6px}
html.admin-mobile-mode .admin-mobile-menu-button span::after{top:6px}
html.admin-mobile-mode .admin-mobile-title{min-width:0}
html.admin-mobile-mode .admin-mobile-title span{display:block;color:hsl(var(--muted-foreground));font-size:.68rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase}
html.admin-mobile-mode .admin-mobile-title strong{display:block;margin-top:.12rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:.95rem;font-weight:650;letter-spacing:-.01em}
html.admin-mobile-mode .admin-mobile-logout{display:inline-flex;align-items:center;justify-content:center;height:2.25rem;padding:0 .7rem;border:1px solid hsl(var(--border));border-radius:calc(var(--radius) - 4px);background:hsl(var(--secondary));color:hsl(var(--muted-foreground));font-size:.78rem;font-weight:600;text-decoration:none}
html.admin-mobile-mode .admin-mobile-backdrop{position:fixed;inset:0;z-index:85;display:block;border:0;background:rgb(15 23 42/.34);opacity:0;pointer-events:none;transition:opacity .18s ease}
html.admin-mobile-mode.admin-mobile-menu-open .admin-mobile-backdrop{opacity:1;pointer-events:auto}
html.admin-mobile-mode .admin-sidebar{position:fixed;inset:0 auto 0 0;z-index:90;width:min(86vw,320px);height:100dvh;overflow:auto;padding:calc(env(safe-area-inset-top,0px) + .875rem) .875rem calc(env(safe-area-inset-bottom,0px) + .875rem);border-right:1px solid hsl(var(--border));background:hsl(var(--background));box-shadow:28px 0 70px rgb(15 23 42/.18);transform:translateX(-104%);transition:transform .22s ease;align-items:stretch}
html.admin-mobile-mode.admin-mobile-menu-open .admin-sidebar{transform:translateX(0)}
html.admin-mobile-mode .admin-sidebar-toggle{display:none}
html.admin-mobile-mode .admin-brand{display:flex;justify-items:normal;padding:.25rem .25rem 1rem}
html.admin-mobile-mode .admin-brand__text,html.admin-mobile-mode .admin-nav__label,html.admin-mobile-mode .admin-sidebar__footer{opacity:1;pointer-events:auto;position:static;width:auto;height:auto;overflow:visible;clip:auto;white-space:normal}
html.admin-mobile-mode .admin-nav{display:flex;width:auto;flex-direction:column;align-items:stretch;gap:.35rem;margin-top:.25rem}
html.admin-mobile-mode .admin-nav__item{display:grid;grid-template-columns:2rem minmax(0,1fr);justify-content:normal;width:auto;height:auto;min-height:2.9rem;padding:.625rem;border-radius:calc(var(--radius) - 2px)}
html.admin-mobile-mode .admin-nav__item:hover::after,html.admin-mobile-mode .admin-nav__item:focus-visible::after{display:none}
html.admin-mobile-mode .admin-sidebar__footer{display:grid;gap:.55rem;margin-top:1rem;padding:.75rem}
html.admin-mobile-mode .admin-main{overflow:visible;min-width:0}
html.admin-mobile-mode .admin-tabs-bar{position:sticky;top:calc(3.5rem + env(safe-area-inset-top,0px));z-index:60;min-height:2.85rem;padding:.45rem .75rem;background:hsl(var(--background)/.96)}
html.admin-mobile-mode .admin-tabs{gap:.45rem;padding-bottom:.05rem}
html.admin-mobile-mode .admin-tab{max-width:72vw;height:2rem}
html.admin-mobile-mode .admin-tab a{font-size:.78rem}
html.admin-mobile-mode .admin-tab button{width:1.45rem;height:1.45rem}
html.admin-mobile-mode .admin-tabs-bar + .admin-shell{padding-top:.75rem}
html.admin-mobile-mode .admin-shell{min-width:0;padding:.75rem .75rem calc(2rem + env(safe-area-inset-bottom,0px))}
html.admin-mobile-mode .admin-panel{padding:.875rem;border-radius:calc(var(--radius) - 2px)}
html.admin-mobile-mode .admin-message{margin-bottom:.75rem}
html.admin-mobile-mode .admin-subnav{margin:0 -.1rem .85rem;padding:.28rem;gap:.35rem;border-radius:calc(var(--radius) - 2px)}
html.admin-mobile-mode .admin-subnav a{height:2rem;padding:0 .68rem;font-size:.78rem}
html.admin-mobile-mode .admin-platform-selector label{min-width:0}
html.admin-mobile-mode .admin-workspace-header{display:grid;gap:.85rem}
html.admin-mobile-mode .admin-workspace-header dl{grid-template-columns:1fr;min-width:0}
html.admin-mobile-mode .admin-panel__header{display:grid;gap:.75rem}
html.admin-mobile-mode .admin-actions{align-items:stretch}
html.admin-mobile-mode .admin-actions a,html.admin-mobile-mode .admin-actions button,html.admin-mobile-mode .admin-table button[data-copy-link],html.admin-mobile-mode .admin-table .inline-form button{min-height:2rem}
html.admin-mobile-mode .admin-drawer__panel{width:100%;padding:1rem}
html.admin-mobile-mode .admin-login-card{border-radius:var(--radius)}
}
@media (max-width:640px){
html.admin-mobile-mode .admin-table-wrap{overflow:visible;border:0;border-radius:0}
html.admin-mobile-mode .admin-table{min-width:0;border-collapse:separate;border-spacing:0 .72rem}
html.admin-mobile-mode .admin-table thead{display:none}
html.admin-mobile-mode .admin-table tbody,html.admin-mobile-mode .admin-table tr,html.admin-mobile-mode .admin-table td{display:block;width:100%}
html.admin-mobile-mode .admin-table tr{overflow:hidden;border:1px solid hsl(var(--border));border-radius:calc(var(--radius) - 2px);background:hsl(var(--card));box-shadow:0 1px 2px rgb(15 23 42/.04)}
html.admin-mobile-mode .admin-table td{display:grid;grid-template-columns:minmax(5.5rem,34%) minmax(0,1fr);gap:.75rem;align-items:start;padding:.68rem .78rem;border-bottom:1px solid hsl(var(--border));font-size:.8rem;line-height:1.45;word-break:break-word}
html.admin-mobile-mode .admin-table td:last-child{border-bottom:0}
html.admin-mobile-mode .admin-table td::before{content:attr(data-label);color:hsl(var(--muted-foreground));font-size:.72rem;font-weight:650;line-height:1.45}
html.admin-mobile-mode .admin-table td:only-child{display:block;text-align:center}
html.admin-mobile-mode .admin-table td:only-child::before{display:none}
html.admin-mobile-mode .admin-table .empty-text{padding:1rem;text-align:center}
html.admin-mobile-mode .admin-table .admin-actions,html.admin-mobile-mode .admin-table td.admin-actions{display:flex;flex-wrap:wrap;gap:.5rem}
html.admin-mobile-mode .admin-table td.admin-actions::before{width:100%;flex:0 0 100%}
html.admin-mobile-mode .admin-orders-table-wrap{display:block;width:100%;max-width:100%;min-width:0;overflow-x:auto;overflow-y:hidden;border:1px solid hsl(var(--border));border-radius:var(--radius);-webkit-overflow-scrolling:touch;overscroll-behavior-x:contain}
html.admin-mobile-mode .admin-orders-table{width:max-content;min-width:1180px;border-collapse:collapse;border-spacing:0}
html.admin-mobile-mode .admin-orders-table thead{display:table-header-group}
html.admin-mobile-mode .admin-orders-table tbody{display:table-row-group}
html.admin-mobile-mode .admin-orders-table tr{display:table-row;width:auto;border:0;border-radius:0;background:transparent;box-shadow:none;overflow:visible}
html.admin-mobile-mode .admin-orders-table th,html.admin-mobile-mode .admin-orders-table td{display:table-cell;width:auto;padding:.68rem .75rem;border-bottom:1px solid hsl(var(--border));font-size:.78rem;line-height:1.4;vertical-align:middle;word-break:normal;white-space:nowrap}
html.admin-mobile-mode .admin-orders-table td::before{display:none;content:none}
html.admin-mobile-mode .admin-orders-table td:only-child{display:table-cell;text-align:center}
html.admin-mobile-mode .admin-orders-table .empty-text{padding:1rem;text-align:center}
html.admin-mobile-mode .admin-ad-quality-table-wrap{overflow-x:auto;border:1px solid hsl(var(--border));border-radius:var(--radius);-webkit-overflow-scrolling:touch}
html.admin-mobile-mode .admin-ad-quality-table{width:max-content;min-width:760px;border-collapse:collapse;border-spacing:0}
html.admin-mobile-mode .admin-ad-quality-table thead{display:table-header-group}
html.admin-mobile-mode .admin-ad-quality-table tbody{display:table-row-group}
html.admin-mobile-mode .admin-ad-quality-table tr{display:table-row;width:auto;border:0;border-radius:0;background:transparent;box-shadow:none;overflow:visible}
html.admin-mobile-mode .admin-ad-quality-table th,html.admin-mobile-mode .admin-ad-quality-table td{display:table-cell;width:auto;padding:.68rem .75rem;border-bottom:1px solid hsl(var(--border));font-size:.78rem;line-height:1.4;vertical-align:middle;word-break:normal;white-space:nowrap}
html.admin-mobile-mode .admin-ad-quality-table td::before{display:none;content:none}
html.admin-mobile-mode .admin-ad-quality-table td:only-child{display:table-cell;text-align:center}
html.admin-mobile-mode .admin-ad-quality-table .empty-text{padding:1rem;text-align:center}
html.admin-mobile-mode .admin-dashboard-ads-table-wrap{overflow-x:auto;border:1px solid hsl(var(--border));border-radius:var(--radius);-webkit-overflow-scrolling:touch}
html.admin-mobile-mode .admin-dashboard-ads-table{width:max-content;min-width:860px;border-collapse:collapse;border-spacing:0}
html.admin-mobile-mode .admin-dashboard-ads-table thead{display:table-header-group}
html.admin-mobile-mode .admin-dashboard-ads-table tbody{display:table-row-group}
html.admin-mobile-mode .admin-dashboard-ads-table tr{display:table-row;width:auto;border:0;border-radius:0;background:transparent;box-shadow:none;overflow:visible}
html.admin-mobile-mode .admin-dashboard-ads-table th,html.admin-mobile-mode .admin-dashboard-ads-table td{display:table-cell;width:auto;padding:.68rem .75rem;border-bottom:1px solid hsl(var(--border));font-size:.78rem;line-height:1.4;vertical-align:middle;word-break:normal;white-space:nowrap}
html.admin-mobile-mode .admin-dashboard-ads-table td::before{display:none;content:none}
html.admin-mobile-mode .inline-form{display:inline-flex;margin-left:0}
html.admin-mobile-mode .admin-checklist p{grid-template-columns:1.5rem minmax(0,1fr)}
html.admin-mobile-mode .admin-checklist em{grid-column:2}
html.admin-mobile-mode .metric-card{padding:.875rem}
}

@media (max-width:640px){
html.admin-mobile-mode body[data-admin-section="analytics"] .admin-panel,
html.admin-mobile-mode body[data-admin-section="orders"] .admin-panel,
html.admin-mobile-mode body[data-admin-section="dashboard"] .admin-dashboard-ads-panel{min-width:0;overflow:hidden}
html.admin-mobile-mode body[data-admin-section="analytics"] .admin-table-wrap,
html.admin-mobile-mode body[data-admin-section="orders"] .admin-table-wrap,
html.admin-mobile-mode body[data-admin-section="dashboard"] .admin-dashboard-ads-table-wrap{display:block;width:calc(100% + 1.75rem);max-width:calc(100% + 1.75rem);min-width:0;margin-left:-.875rem;margin-right:-.875rem;overflow-x:auto;overflow-y:hidden;border:1px solid hsl(var(--border));border-radius:var(--radius);-webkit-overflow-scrolling:touch;overscroll-behavior-x:contain;touch-action:pan-x}
html.admin-mobile-mode body[data-admin-section="analytics"] .admin-table,
html.admin-mobile-mode body[data-admin-section="orders"] .admin-table{width:max-content;min-width:max(780px,calc(100vw - 1.5rem));border-collapse:collapse;border-spacing:0;table-layout:auto}
html.admin-mobile-mode body[data-admin-section="analytics"] .admin-table thead,
html.admin-mobile-mode body[data-admin-section="orders"] .admin-table thead{display:table-header-group}
html.admin-mobile-mode body[data-admin-section="analytics"] .admin-table tbody,
html.admin-mobile-mode body[data-admin-section="orders"] .admin-table tbody{display:table-row-group}
html.admin-mobile-mode body[data-admin-section="analytics"] .admin-table tr,
html.admin-mobile-mode body[data-admin-section="orders"] .admin-table tr{display:table-row;width:auto;border:0;border-radius:0;background:transparent;box-shadow:none;overflow:visible}
html.admin-mobile-mode body[data-admin-section="analytics"] .admin-table th,
html.admin-mobile-mode body[data-admin-section="analytics"] .admin-table td,
html.admin-mobile-mode body[data-admin-section="orders"] .admin-table th,
html.admin-mobile-mode body[data-admin-section="orders"] .admin-table td{display:table-cell;width:auto;padding:.68rem .75rem;border-bottom:1px solid hsl(var(--border));font-size:.78rem;line-height:1.4;vertical-align:middle;word-break:normal;white-space:nowrap}
html.admin-mobile-mode body[data-admin-section="analytics"] .admin-table td::before,
html.admin-mobile-mode body[data-admin-section="orders"] .admin-table td::before{display:none;content:none}
html.admin-mobile-mode body[data-admin-section="analytics"] .admin-table td:only-child,
html.admin-mobile-mode body[data-admin-section="orders"] .admin-table td:only-child{display:table-cell;text-align:center}
html.admin-mobile-mode body[data-admin-section="orders"] .admin-orders-table{min-width:1180px}
html.admin-mobile-mode body[data-admin-section="analytics"] .admin-ad-quality-table{min-width:760px}
}

/* Global payment-chain alerts */
.admin-payment-alert{position:sticky;top:.75rem;z-index:45;margin:0 0 1rem;padding:1rem 1rem .95rem;border:1px solid hsl(var(--destructive)/.32);border-radius:calc(var(--radius) + 2px);background:linear-gradient(180deg,hsl(0 100% 98%),hsl(0 100% 99%));color:hsl(0 72% 28%);box-shadow:0 14px 34px rgb(127 29 29/.12)}
.admin-payment-alert__head{display:flex;align-items:center;justify-content:space-between;gap:1rem}
.admin-payment-alert__head strong{display:block;margin-top:.14rem;font-size:1rem;line-height:1.25;font-weight:800;color:hsl(0 75% 24%)}
.admin-payment-alert__eyebrow{display:block;color:hsl(0 58% 46%);font-size:.68rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase}
.admin-payment-alert__badge{display:inline-flex;align-items:center;justify-content:center;min-height:1.75rem;padding:0 .7rem;border-radius:999px;background:hsl(0 84% 60%);color:#fff;font-size:.78rem;font-weight:800;white-space:nowrap}
.admin-payment-alert p{margin:.6rem 0 0;color:hsl(0 42% 38%);font-size:.86rem;line-height:1.6}
.admin-payment-alert__list{display:grid;gap:.45rem;margin:.75rem 0 0;padding:0;list-style:none}
.admin-payment-alert__list li{display:grid;grid-template-columns:minmax(210px,.34fr) minmax(260px,1fr) auto;gap:.7rem;align-items:center;padding:.58rem .65rem;border:1px solid hsl(0 78% 88%);border-radius:calc(var(--radius) - 4px);background:#fff}
.admin-payment-alert__meta{display:grid;gap:.18rem;min-width:0}.admin-payment-alert__list b{font-size:.82rem;color:hsl(0 74% 26%)}
.admin-payment-alert__list span{color:hsl(0 36% 46%);font-size:.78rem;white-space:nowrap}
.admin-payment-alert__list em{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:hsl(0 54% 33%);font-size:.82rem;font-style:normal}
.admin-payment-alert__resolve{display:flex;justify-content:flex-end;margin:0}.admin-payment-alert__resolve button{display:inline-flex;align-items:center;justify-content:center;min-height:1.85rem;padding:0 .7rem;border:1px solid hsl(0 72% 72%);border-radius:999px;background:#fff;color:hsl(0 72% 34%);font-size:.78rem;font-weight:800;white-space:nowrap;cursor:pointer}.admin-payment-alert__resolve button:hover{border-color:hsl(0 72% 48%);background:hsl(0 100% 97%)}
.admin-payment-alert__link{display:inline-flex;margin-top:.75rem;color:hsl(0 72% 38%);font-size:.84rem;font-weight:800;text-decoration:none}
.admin-payment-alert__link:hover{text-decoration:underline}
@media (max-width:820px){
html.admin-mobile-mode .admin-payment-alert{top:calc(6.35rem + env(safe-area-inset-top,0px));padding:.85rem;margin-bottom:.85rem}
html.admin-mobile-mode .admin-payment-alert__head{align-items:flex-start}
html.admin-mobile-mode .admin-payment-alert__badge{font-size:.68rem}
html.admin-mobile-mode .admin-payment-alert__list li{grid-template-columns:1fr;gap:.45rem}
html.admin-mobile-mode .admin-payment-alert__list em{white-space:normal}
html.admin-mobile-mode .admin-payment-alert__resolve{justify-content:flex-start}
}
