.adbuy-wrap{max-width:1300px;margin:22px auto 44px;padding:0 16px;display:grid;grid-template-columns:minmax(0,1fr) 340px;gap:22px;align-items:start}
.adbuy-main{display:flex;flex-direction:column;gap:18px}
.adbuy-card,.adbuy-hero,.adbuy-side{background:var(--color-bg-card);border:1px solid var(--color-border);border-radius:8px;box-shadow:0 8px 24px rgba(15,23,42,.04)}
.adbuy-hero{padding:22px 24px;background:linear-gradient(180deg,color-mix(in srgb,var(--color-bg-card) 95%, white 5%),color-mix(in srgb,var(--color-bg-secondary) 82%, var(--color-bg-card)))}
.adbuy-kicker{display:inline-flex;align-items:center;gap:8px;font-size:11px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:var(--orange);margin-bottom:10px}
.adbuy-title{font-size:31px;line-height:1.08;font-weight:900;letter-spacing:-.04em;color:var(--color-text-primary);margin:0 0 10px}
.adbuy-desc{font-size:14px;line-height:1.8;color:var(--color-text-secondary);max-width:70ch}
.adbuy-hero-toggle{display:none}
.adbuy-steps-shell{display:block}
.adbuy-steps{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin-top:18px}
.adbuy-step{padding:12px;border:1px solid var(--color-border);background:color-mix(in srgb,var(--color-bg-secondary) 86%, var(--color-bg-card));border-radius:6px;opacity:1}
.adbuy-step.is-active{opacity:1;border-color:rgba(249,115,22,.32);background:rgba(249,115,22,.05)}
.adbuy-step.is-done{opacity:1;border-color:rgba(34,197,94,.22);background:rgba(34,197,94,.05)}
.adbuy-step-num{font-size:10px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:var(--orange)}
.adbuy-step-text{font-size:12.5px;line-height:1.55;color:var(--color-text-secondary);margin-top:6px}
.adbuy-card-head,.adbuy-side-head{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:13px 16px;border-bottom:1px solid var(--color-border);background:var(--color-bg-secondary)}
.adbuy-card-head h3,.adbuy-side-head h3{font-size:13px;font-weight:800;color:var(--color-text-primary);display:flex;align-items:center;gap:8px;margin:0}
.adbuy-card-head h3 i,.adbuy-side-head h3 i{color:var(--orange)}
.adbuy-card-body,.adbuy-side-body{padding:16px}
.adslot-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.adslot-card{display:flex;flex-direction:column;gap:8px;padding:14px;border:1px solid var(--color-border);border-radius:6px;background:var(--color-bg-card);transition:border-color .16s,background .16s,transform .16s}
.adslot-card:hover{border-color:rgba(249,115,22,.35);transform:translateY(-1px)}
.adslot-card.active{border-color:var(--orange);background:rgba(249,115,22,.04)}
.adslot-top{display:flex;align-items:flex-start;justify-content:space-between;gap:10px}
.adslot-name{font-size:15px;font-weight:800;color:var(--color-text-primary)}
.adslot-type{font-size:10px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:var(--color-text-muted)}
.adslot-meta{display:flex;flex-wrap:wrap;gap:8px;font-size:11.5px;color:var(--color-text-muted)}
.adslot-desc{font-size:12.5px;line-height:1.6;color:var(--color-text-secondary);min-height:40px}
.adslot-foot{display:flex;align-items:center;justify-content:space-between;gap:10px;padding-top:6px;border-top:1px dashed var(--color-border)}
.adslot-price{font-size:18px;font-weight:900;color:var(--color-text-primary)}
.adslot-price span{font-size:11px;color:var(--color-text-muted);font-weight:700;margin-left:4px}
.adslot-cap{font-size:11.5px;color:var(--color-text-muted)}
.adslot-actions{display:flex;align-items:center;gap:8px;flex-wrap:wrap;padding-top:4px}
.adbuy-step-panel[hidden]{display:none}
.adslot-stage{margin-top:18px;padding-top:18px;border-top:1px solid var(--color-border);display:flex;flex-direction:column;gap:14px}
.adslot-stage-head{display:flex;align-items:flex-start;justify-content:space-between;gap:14px}
.adslot-stage-kicker{font-size:10px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:var(--orange);margin-bottom:6px}
.adslot-stage-head h4{font-size:18px;font-weight:900;color:var(--color-text-primary);margin:0 0 6px}
.adslot-stage-desc{font-size:12.5px;line-height:1.7;color:var(--color-text-secondary);max-width:68ch}
.adbuy-step-actions{display:flex;align-items:center;justify-content:space-between;gap:10px;padding-top:8px}
.adbuy-accordion{border:1px solid var(--color-border);border-radius:6px;background:var(--color-bg-card);overflow:hidden}
.adbuy-accordion summary{list-style:none;cursor:pointer;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 14px;font-size:13px;font-weight:700;color:var(--color-text-primary)}
.adbuy-accordion summary::-webkit-details-marker{display:none}
.adbuy-accordion summary i{color:var(--orange);transition:transform .16s}
.adbuy-accordion[open] summary i{transform:rotate(90deg)}
.adbuy-accordion strong{font-size:11px;color:var(--color-text-muted);letter-spacing:.04em;text-transform:uppercase}
.adbuy-accordion-body{padding:0 14px 14px}
.period-table{display:flex;flex-direction:column;border:1px solid var(--color-border);border-radius:6px;overflow:hidden}
.period-row{display:grid;grid-template-columns:minmax(0,1.5fr) 100px 120px 120px;gap:0;align-items:center;border-bottom:1px solid var(--color-border);background:var(--color-bg-card)}
.period-row:last-child{border-bottom:none}
.period-row.head{background:var(--color-bg-secondary);font-size:10.5px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:var(--color-text-muted)}
.period-row.is-full{background:linear-gradient(90deg,color-mix(in srgb,var(--color-danger) 10%, var(--color-bg-card)),color-mix(in srgb,var(--color-bg-card) 94%, var(--color-bg-secondary)));box-shadow:inset 4px 0 0 rgba(239,68,68,.7)}
.period-row.is-available{background:linear-gradient(90deg,color-mix(in srgb,var(--color-success) 8%, var(--color-bg-card)),color-mix(in srgb,var(--color-bg-card) 94%, var(--color-bg-secondary)));box-shadow:inset 4px 0 0 rgba(34,197,94,.45)}
.period-row>div{padding:11px 12px;font-size:12.5px;color:var(--color-text-secondary)}
.period-row strong{color:var(--color-text-primary)}
.period-status{display:inline-flex;align-items:center;justify-content:center;padding:4px 8px;border-radius:3px;border:1px solid var(--color-border);font-size:11px;font-weight:800}
.period-status.available{color:var(--color-success);border-color:rgba(34,197,94,.28);background:rgba(34,197,94,.06)}
.period-status.full{color:var(--color-danger);border-color:rgba(239,68,68,.24);background:rgba(239,68,68,.06)}
.adbuy-form{display:flex;flex-direction:column;gap:14px}
.adbuy-period-list{display:flex;flex-direction:column;gap:8px}
.adbuy-period-opt{display:flex;align-items:flex-start;gap:10px;padding:11px 12px;border:1px solid var(--color-border);border-radius:5px;background:var(--color-bg-card);cursor:pointer;transition:border-color .16s,background .16s}
.adbuy-period-opt:hover{border-color:rgba(249,115,22,.35)}
.adbuy-period-opt.is-selected{border-color:var(--orange);background:rgba(249,115,22,.06)}
.adbuy-period-opt.is-full{border-color:rgba(239,68,68,.35);background:rgba(239,68,68,.06);box-shadow:inset 4px 0 0 rgba(239,68,68,.7)}
.adbuy-period-opt.is-full:hover{border-color:rgba(239,68,68,.55)}
.adbuy-period-opt.is-full .adbuy-period-copy strong{color:var(--color-danger)}
.adbuy-period-opt.is-full .adbuy-period-copy span{color:#b91c1c}
.adbuy-period-opt.is-available{box-shadow:inset 4px 0 0 rgba(34,197,94,.42)}
.adbuy-period-opt input{margin-top:2px}
.adbuy-period-copy{display:flex;flex-direction:column;gap:4px}
.adbuy-period-copy strong{font-size:13px;color:var(--color-text-primary)}
.adbuy-period-copy span{font-size:12px;color:var(--color-text-muted)}
.adbuy-period-state-badge{display:inline-flex;align-items:center;justify-content:center;height:20px;padding:0 8px;border-radius:999px;font-size:11px;font-weight:800;margin-right:8px;vertical-align:middle}
.adbuy-period-state-badge.is-available{background:color-mix(in srgb,var(--color-success) 18%, var(--color-bg-card));color:color-mix(in srgb,var(--color-success) 86%, white 14%);border:1px solid color-mix(in srgb,var(--color-success) 34%, var(--color-border));box-shadow:inset 0 1px 0 rgba(255,255,255,.06)}
.adbuy-period-state-badge.is-full{background:rgba(239,68,68,.1);color:#b91c1c;border:1px solid rgba(239,68,68,.24)}
.adbuy-inline-note{font-size:12px;color:var(--color-text-muted);margin-top:10px}
.form-grid-2{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.adbuy-selection-brief{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 13px;border:1px solid var(--color-border);border-radius:6px;background:var(--color-bg-secondary)}
.adbuy-selection-brief strong{font-size:13px;color:var(--color-text-primary)}
.adbuy-selection-brief span{font-size:12px;color:var(--color-text-muted);text-align:right}
.adbuy-side{position:sticky;top:88px}
.adbuy-shortcuts{display:flex;flex-direction:column;gap:10px}
.adbuy-shortcuts .btn{width:100%;justify-content:center}
.adbuy-side-list{display:flex;flex-direction:column;gap:10px}
.adbuy-side-item{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;font-size:12.5px;color:var(--color-text-secondary)}
.adbuy-side-item strong{color:var(--color-text-primary);text-align:right}
.adbuy-balance{font-size:28px;font-weight:900;letter-spacing:-.04em;color:var(--color-text-primary)}
.adbuy-balance span{font-size:12px;font-weight:700;color:var(--color-text-muted);margin-left:4px}
.adbuy-note{padding:12px 13px;border:1px dashed var(--color-border2);background:var(--color-bg-secondary);font-size:12.5px;line-height:1.65;color:var(--color-text-secondary);border-radius:5px}
.adpreview-modal[hidden]{display:none}
.adpreview-modal{position:fixed;inset:0;z-index:1000;display:flex;align-items:center;justify-content:center;padding:12px;overflow:auto}
.adpreview-backdrop{position:absolute;inset:0;background:rgba(15,23,42,.62)}
.adpreview-dialog{position:relative;z-index:1;max-width:1360px;width:min(96vw,1360px);max-height:calc(100vh - 24px);margin:auto;background:linear-gradient(180deg,color-mix(in srgb,var(--color-bg-card) 96%, white 4%),color-mix(in srgb,var(--color-bg-secondary) 86%, var(--color-bg-card)));border-radius:10px;border:1px solid color-mix(in srgb,var(--color-border) 86%, rgba(255,255,255,.08));padding:16px;box-shadow:0 24px 70px rgba(15,23,42,.38);overflow:auto}
.adpreview-close{position:absolute;right:12px;top:12px;width:34px;height:34px;border:1px solid color-mix(in srgb,var(--color-border2) 88%, rgba(255,255,255,.12));border-radius:50%;background:color-mix(in srgb,var(--color-bg-card) 82%, var(--color-bg-secondary));color:var(--color-text-primary);cursor:pointer;display:inline-flex;align-items:center;justify-content:center;box-shadow:0 8px 18px rgba(15,23,42,.22);transition:background .18s ease,border-color .18s ease,color .18s ease,transform .18s ease}
.adpreview-close:hover{background:color-mix(in srgb,var(--color-danger) 12%, var(--color-bg-card));border-color:color-mix(in srgb,var(--color-danger) 34%, var(--color-border));color:#fff;transform:translateY(-1px)}
.adpreview-close i{font-size:14px;line-height:1}
.adpreview-title{font-size:15px;font-weight:800;color:var(--color-text-primary);margin-bottom:14px;padding-right:36px}
.adpreview-dialog img{display:block;width:auto;max-width:100%;height:auto;max-height:calc(100vh - 118px);object-fit:contain;border-radius:8px;border:1px solid var(--color-border);background:var(--color-bg-secondary);margin:0 auto}
@media(max-width:980px){.adbuy-wrap{grid-template-columns:1fr}.adbuy-side{position:static}.adbuy-steps{grid-template-columns:1fr}}
@media(max-width:720px){.adbuy-wrap{padding:0 10px}.adslot-grid,.form-grid-2{grid-template-columns:1fr}.period-row{grid-template-columns:minmax(0,1fr)}.period-row.head{display:none}.period-row>div{padding:6px 12px}.adslot-actions .btn,.adslot-stage-head .btn,.adbuy-step-actions .btn{width:100%;justify-content:center}.adslot-stage-head,.adbuy-selection-brief,.adbuy-step-actions{flex-direction:column;align-items:stretch}.adbuy-selection-brief span{text-align:left}.adbuy-hero{padding:16px 16px 14px;background:linear-gradient(180deg,color-mix(in srgb,var(--color-bg-card) 96%, white 4%),color-mix(in srgb,var(--color-bg-secondary) 82%, var(--color-bg-card)))}.adbuy-kicker{margin-bottom:8px}.adbuy-title{font-size:24px;margin-bottom:8px}.adbuy-desc{font-size:13px;line-height:1.65}.adbuy-hero-toggle{margin-top:14px;width:100%;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:13px 14px;border:1px solid rgba(249,115,22,.18);border-radius:16px;background:linear-gradient(180deg,color-mix(in srgb,var(--color-bg-card) 96%, white 4%),color-mix(in srgb,var(--orange) 10%, var(--color-bg-secondary)));box-shadow:inset 0 1px 0 rgba(255,255,255,.08);color:var(--color-text-primary)}.adbuy-hero-toggle-copy{display:flex;flex-direction:column;gap:4px;min-width:0;text-align:left}.adbuy-hero-toggle-copy strong{font-size:11px;font-weight:900;letter-spacing:.08em;text-transform:uppercase;color:var(--orange)}.adbuy-hero-toggle-copy span{font-size:12.5px;line-height:1.45;color:var(--color-text-secondary);display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;line-clamp:2;overflow:hidden}.adbuy-hero-toggle i{display:flex;align-items:center;justify-content:center;width:34px;height:34px;border-radius:999px;background:color-mix(in srgb,var(--color-bg-card) 84%, var(--orange) 16%);color:var(--orange);font-size:13px;transition:transform .2s ease,background .2s ease}.adbuy-steps-shell{display:grid;grid-template-rows:0fr;overflow:hidden;transition:grid-template-rows .24s ease,margin-top .24s ease; margin-top:0}.adbuy-steps-shell.is-open{grid-template-rows:1fr;margin-top:12px}.adbuy-steps-shell .adbuy-steps{min-height:0;margin-top:0;grid-template-columns:1fr;gap:8px}.adbuy-step{padding:11px 12px;border-radius:14px}.adbuy-step-num{font-size:10px}.adbuy-step-text{font-size:12px;line-height:1.5}.adbuy-hero-toggle[aria-expanded="true"] i{transform:rotate(180deg);background:color-mix(in srgb,var(--orange) 22%, var(--color-bg-card))}.adpreview-modal{padding:8px}.adpreview-dialog{width:min(98vw,1360px);max-height:calc(100vh - 16px);padding:12px}.adpreview-title{font-size:14px;margin-bottom:10px}.adpreview-dialog img{max-height:calc(100vh - 96px)}}

.adbuy-float-nav{position:fixed;bottom:24px;right:24px;display:flex;align-items:center;gap:8px;z-index:999;pointer-events:none;}
.adbuy-float-nav[hidden]{display:none !important}
.adbuy-float-nav [hidden]{display:none !important}
.adbuy-float-nav .btn{pointer-events:all;box-shadow:0 4px 18px rgba(15,23,42,.18);border-radius:999px !important;padding:10px 20px;font-size:13px;}
.adbuy-float-nav .btn-ghost{background:var(--color-bg-card) !important;border-color:var(--color-border) !important;}