.advertising-admin-only[hidden], .advertising-admin-only [hidden] { display: none !important; }
.ad-admin-heading p:last-child { max-width: 670px; color: var(--muted); line-height: 1.6; }
.ad-admin-heading .admin-section-actions { flex-shrink: 0; }
.ad-admin-summary { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)) 1.3fr; margin: 22px 0; overflow: hidden; border: 1px solid rgba(160, 136, 220, .22); border-radius: 14px; background: linear-gradient(115deg, rgba(47, 30, 80, .42), rgba(9, 17, 34, .85)); }
.ad-admin-summary > div { display: flex; align-items: center; gap: 13px; padding: 23px; border-right: 1px solid rgba(160, 136, 220, .15); }
.ad-admin-summary strong { font-size: 1.85rem; line-height: 1; color: #f3edff; }
.ad-admin-summary span { color: #b4b2c8; font-size: .75rem; line-height: 1.5; }
.ad-admin-summary > p { align-self: center; padding: 20px; margin: 0; color: #aaa4bb; font-size: .75rem; }
.ad-admin-summary > p[data-enabled="true"] { color: #90d8c0; }
.ad-admin-workspace { display: grid; grid-template-columns: minmax(275px, .75fr) minmax(0, 1.6fr); gap: 24px; align-items: start; }
.ad-admin-library { min-width: 0; }
.ad-admin-library-head, .ad-admin-editor-head, .ad-admin-preview-head { display: flex; justify-content: space-between; align-items: center; gap: 12px; }
.ad-admin-library-head { padding: 3px 2px 14px; }
.ad-admin-library-head h3 { font-size: 1rem; font-weight: 600; line-height: 1.4; color: #f1eaff; margin: 0; }
.ad-admin-icon-button { width: 36px; height: 36px; border-radius: 9px; border: 1px solid rgba(173, 153, 213, .2); color: #c9c0e4; background: rgba(26, 24, 44, .8); cursor: pointer; font-size: 1.3rem; }
.ad-admin-filters { display: grid; grid-template-columns: 1fr 135px; gap: 9px; margin-bottom: 15px; }
.ad-admin-filters label { min-width: 0; }
.ad-admin-filters label > span { display: block; color: #bdb3d1; font-size: .63rem; margin-bottom: 7px; }
.ad-admin-filters input, .ad-admin-filters select { width: 100%; min-width: 0; padding: 10px 9px; border: 1px solid rgba(168, 144, 213, .22); border-radius: 8px; background: #0b0d1b; color: #e1d8f5; font-size: .7rem; }
.ad-admin-list { display: grid; gap: 12px; }
.ad-admin-item { min-width: 0; padding: 14px; border: 1px solid rgba(160, 136, 220, .2); border-radius: 12px; background: rgba(12, 13, 28, .92); transition: border-color .18s ease; }
.ad-admin-item.is-selected { border-color: rgba(81, 213, 222, .65); background: linear-gradient(135deg, rgba(17, 41, 48, .5), rgba(17, 15, 36, .95)); }
.ad-admin-item-open { display: grid; grid-template-columns: 94px minmax(0, 1fr); align-items: center; width: 100%; padding: 0; gap: 13px; border: 0; color: inherit; background: transparent; text-align: left; cursor: pointer; font: inherit; }
.ad-admin-item-art { display: grid; place-items: center; height: 76px; overflow: hidden; border: 1px solid rgba(189, 162, 238, .15); border-radius: 9px; background: radial-gradient(ellipse at top left, #2e2250, #101529); color: #ae9bcf; font-size: 1.7rem; }
.ad-admin-item-art img { width: 100%; height: 100%; object-fit: contain; }
.ad-admin-item-info { min-width: 0; }
.ad-admin-item-info h4 { margin: 7px 0 4px; color: #f2effb; font-size: .82rem; line-height: 1.45; overflow-wrap: anywhere; }
.ad-admin-item-info p { margin: 0; color: #a59ab9; font-size: .67rem; overflow-wrap: anywhere; }
.ad-admin-badge { display: inline-flex; padding: 4px 7px; border-radius: 5px; color: #b9afc9; background: rgba(173, 153, 213, .09); font-size: .56rem; font-weight: 700; letter-spacing: .02em; }
.ad-admin-badge[data-status="active"] { color: #8addc1; background: rgba(58, 170, 135, .11); }
.ad-admin-badge[data-status="scheduled"] { color: #b8b1f9; background: rgba(134, 112, 218, .14); }
.ad-admin-badge[data-status="paused"] { color: #d8bd8c; background: rgba(186, 140, 69, .09); }
.ad-admin-item-placements { margin: 13px 0 7px; color: #bfb6d0; font-size: .63rem; line-height: 1.6; }
.ad-admin-item-time { display: block; color: #9991aa; font-size: .6rem; line-height: 1.65; }
.ad-admin-item-actions { display: flex; justify-content: space-between; gap: 14px; margin-top: 13px; padding-top: 11px; border-top: 1px solid rgba(160, 136, 220, .12); }
.ad-admin-text-button { padding: 4px 0; border: 0; background: transparent; color: #b9b0de; font-size: .65rem; line-height: 1.5; cursor: pointer; }
.ad-admin-text-button:hover { color: #d5f5ff; }
.ad-admin-text-danger { color: #bb8c9e; }
.ad-admin-text-danger:hover { color: #ffadc1; }
.ad-admin-edit-column { min-width: 0; }
.ad-admin-welcome { display: flex; flex-direction: column; align-items: flex-start; justify-content: center; min-height: 445px; padding: 45px; background: radial-gradient(ellipse at 100% 0, rgba(91, 59, 156, .2), transparent 65%), linear-gradient(155deg, #101224, #090c19); }
.ad-admin-welcome > span { display: grid; place-items: center; width: 62px; height: 62px; margin-bottom: 27px; border: 1px solid rgba(178, 153, 225, .3); border-radius: 17px; color: #d0b4f8; background: rgba(112, 70, 175, .1); font-size: 1.8rem; }
.ad-admin-welcome .eyebrow { font-size: .55rem; letter-spacing: .14em; }
.ad-admin-welcome h3 { max-width: 360px; margin: 8px 0 15px; color: #f5eeff; font-size: 1.8rem; letter-spacing: .01em; }
.ad-admin-welcome > p:not(.eyebrow) { max-width: 410px; margin: 0 0 25px; color: #b5abc7; font-size: .82rem; line-height: 1.8; }
.ad-admin-welcome > small { margin-top: 20px; color: #9389a6; font-size: .64rem; line-height: 1.6; }
.ad-admin-empty { margin: 0; padding: 28px 20px; border: 1px dashed rgba(161, 138, 206, .23); border-radius: 12px; color: #a79dbb; font-size: .77rem; line-height: 1.8; }
.ad-admin-editor { gap: 24px; margin-bottom: 0; scroll-margin-top: 170px; border-color: rgba(150, 123, 202, .32); }
.ad-admin-editor-head { align-items: flex-start; padding-bottom: 4px; }
.ad-admin-editor-head .eyebrow { font-size: .52rem; margin: 0 0 8px; }
.ad-admin-editor-head h3 { margin: 0; color: #f0e8fc; font-size: 1.35rem; }
.ad-admin-unsaved { color: #d4b990; font-size: .6rem; white-space: nowrap; }
.ad-admin-editor .admin-form-grid label > span, .ad-admin-settings .admin-form-grid label > span { text-transform: none; font-size: .69rem; font-weight: 600; letter-spacing: .01em; }
.ad-admin-editor input, .ad-admin-editor textarea, .ad-admin-editor select, .ad-admin-settings input, .ad-admin-settings textarea { font-size: .8rem !important; }
.ad-admin-fieldset { min-width: 0; margin: 0; padding: 0; border: 0; }
.ad-admin-fieldset legend { padding: 0; color: #eae1f9; font-size: .81rem; font-weight: 700; }
.ad-admin-fieldset > p, .ad-admin-help { margin: 9px 0 0; color: #a99ebc; font-size: .65rem; line-height: 1.7; }
.ad-admin-upload-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 12px; margin-top: 14px; }
.ad-admin-upload { display: flex; flex-direction: column; align-items: flex-start; gap: 9px; min-width: 0; padding: 12px; border: 1px solid rgba(153, 127, 196, .2); border-radius: 10px; background: rgba(6, 8, 19, .35); }
.ad-admin-upload-art { display: grid; place-items: center; width: 100%; height: 98px; overflow: hidden; border-radius: 7px; background: linear-gradient(135deg, rgba(63, 41, 92, .5), rgba(18, 24, 41, .6)); color: #87739f; font-size: 1.7rem; }
.ad-admin-upload-art img { width: 100%; height: 100%; object-fit: contain; }
.ad-admin-upload > strong { margin-top: 3px; color: #e5daef; font-size: .68rem; line-height: 1.5; }
.ad-admin-upload em { color: #998eae; font-size: .57rem; font-style: normal; font-weight: 400; }
.ad-admin-upload > small { color: #a89db9; font-size: .6rem; }
.ad-admin-upload .button { min-height: 34px; width: 100%; margin-top: 5px; padding: 9px; text-align: center; font-size: .55rem; cursor: pointer; }
.ad-admin-file-status { color: #ad9fc4; font-size: .6rem; line-height: 1.5; overflow-wrap: anywhere; }
.ad-admin-preview { min-width: 0; padding: 16px; border: 1px solid rgba(142, 169, 202, .18); border-radius: 12px; background: #080c18; }
.ad-admin-preview-head { margin-bottom: 18px; }
.ad-admin-preview-head h4 { margin: 0; color: #c8c2dc; font-size: .71rem; }
.ad-admin-device-switch { display: flex; gap: 3px; padding: 3px; border: 1px solid rgba(142, 169, 202, .13); border-radius: 7px; }
.ad-admin-device-switch button { padding: 6px 9px; border: 0; border-radius: 4px; color: #968eaa; background: transparent; font-size: .58rem; cursor: pointer; }
.ad-admin-device-switch button[aria-pressed="true"] { color: #ece1ff; background: #2b2342; }
.ad-admin-preview-stage { width: 100%; max-width: 100%; margin: auto; transition: max-width .2s ease; }
.ad-admin-preview-stage.is-mobile { max-width: 310px; }
.ad-admin-preview-card { display: grid; grid-template-columns: minmax(0, 1.1fr) minmax(0, 1fr); gap: 0 18px; overflow: hidden; padding: 0 14px; border: 1px solid rgba(150, 135, 192, .23); border-radius: 10px; background: linear-gradient(115deg, #121226, #080f1c); }
.ad-admin-preview-meta { grid-column: 1 / -1; display: flex; flex-wrap: wrap; gap: 7px 12px; padding: 12px 0; color: #a9aec0; font-size: .5rem; line-height: 1.6; }
.ad-admin-preview-meta span:first-child { flex-shrink: 0; letter-spacing: .13em; }
.ad-admin-preview-meta span:last-child { overflow-wrap: anywhere; }
.ad-admin-preview-art { display: none; place-items: center; align-self: center; height: 120px; margin: 5px 0 18px; overflow: hidden; border-radius: 7px; background: rgba(0, 0, 0, .18); }
.ad-admin-preview-card.has-image .ad-admin-preview-art { display: grid; }
.ad-admin-preview-art img { width: 100%; height: 100%; min-height: 0; object-fit: contain; }
.ad-admin-preview-art > span { padding: 20px; color: #766b87; font-size: .65rem; text-align: center; }
.ad-admin-preview-stage.is-mobile .ad-admin-preview-card { grid-template-columns: minmax(0, 1fr); }
.ad-admin-preview-stage.is-mobile .ad-admin-preview-art { height: 148px; margin-bottom: 0; }
.ad-admin-preview-copy { display: flex; flex-direction: column; justify-content: center; align-items: flex-start; gap: 14px; padding: 5px 0 18px; }
.ad-admin-preview-card:not(.has-image) .ad-admin-preview-copy { grid-column: 1 / -1; }
.ad-admin-preview-copy > div { min-width: 0; }
.ad-admin-preview-copy h4 { margin: 0; color: #f1eafa; font-size: .85rem; line-height: 1.5; overflow-wrap: anywhere; }
.ad-admin-preview-copy p { margin: 7px 0 0; color: #aaa0bb; font-size: .63rem; line-height: 1.75; overflow-wrap: anywhere; }
.ad-admin-preview-copy > span { color: #d2c4f7; font-size: .65rem; font-weight: 700; line-height: 1.5; overflow-wrap: anywhere; }
.ad-admin-preview-stage.is-mobile .ad-admin-preview-copy { align-items: flex-start; flex-direction: column; }
.ad-admin-preview-stage.is-mobile .ad-admin-preview-copy > span { max-width: 100%; }
.ad-admin-preview-card > small { grid-column: 1 / -1; display: block; padding: 10px 0 12px; border-top: 1px solid rgba(174, 167, 213, .1); color: #a9aec0; font-size: .53rem; line-height: 1.7; overflow-wrap: anywhere; }
.ad-admin-placements { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 8px; margin-top: 13px; }
.ad-admin-placements label { display: flex; align-items: flex-start; gap: 8px; padding: 12px 9px; border: 1px solid rgba(157, 131, 201, .2); border-radius: 9px; background: rgba(142, 92, 216, .035); cursor: pointer; }
.ad-admin-placements label:has(input:checked) { border-color: rgba(142, 126, 215, .55); background: rgba(142, 92, 216, .11); }
.ad-admin-placements input, .ad-admin-toggle input { flex: 0 0 auto; width: 15px; height: 15px; margin-top: 1px; accent-color: #ac80e8; }
.ad-admin-placements label > span { min-width: 0; text-transform: none; letter-spacing: normal; }
.ad-admin-placements strong { display: block; font-size: .6rem; line-height: 1.55; }
.ad-admin-placements small { display: block; margin-top: 6px; color: #a295b3; font-size: .54rem; font-weight: 400; line-height: 1.6; }
.ad-admin-details { padding-top: 3px; border-top: 1px solid rgba(161, 138, 206, .16); }
.ad-admin-details > summary { padding: 13px 0; color: #b9abce; font-size: .7rem; cursor: pointer; }
.ad-admin-details[open] > summary { margin-bottom: 6px; }
.ad-admin-savebar { padding-top: 16px; border-top: 1px solid rgba(161, 138, 206, .18); }
.ad-admin-savebar > p { margin: 0 0 10px; color: #c5b5dd; font-size: .72rem; line-height: 1.6; }
.ad-admin-savebar > p:empty { display: none; }
.ad-admin-savebar .admin-form-actions { margin: 0; }
.ad-admin-settings { margin-top: 24px; }
.ad-admin-settings > summary { display: flex; align-items: center; justify-content: space-between; gap: 18px; list-style: none; cursor: pointer; }
.ad-admin-settings > summary::-webkit-details-marker { display: none; }
.ad-admin-settings > summary strong { display: block; color: #e0d6f2; font-size: .9rem; }
.ad-admin-settings > summary small { display: block; margin-top: 7px; color: #a79bbd; font-size: .68rem; line-height: 1.6; }
.ad-admin-settings > summary > span:last-child { color: #b498db; font-size: 1.5rem; }
.ad-admin-settings[open] > summary > span:last-child { transform: rotate(45deg); }
.ad-admin-settings > form { margin: 23px 0 0; }
.ad-admin-rotation-row { display: grid; grid-template-columns: minmax(150px, 190px) minmax(0, 1fr); align-items: center; gap: 16px 24px; }
.ad-admin-rotation-row > p { margin: 0; }
.ad-admin-rotation-row input { width: 100%; }
.ad-admin-settings .ad-admin-toggle { display: flex; align-items: flex-start; gap: 12px; padding: 17px; border: 1px solid rgba(148, 116, 198, .24); border-radius: 9px; background: rgba(118, 75, 180, .05); cursor: pointer; }
.ad-admin-toggle span { text-transform: none !important; letter-spacing: normal !important; }
.ad-admin-toggle strong { font-size: .75rem; }
.ad-admin-toggle small { display: block; margin-top: 7px; color: #a69ab8; font-size: .66rem; font-weight: 400; line-height: 1.65; }
.ad-admin-error { margin: 15px 0; padding: 15px 18px; border: 1px solid rgba(227, 140, 169, .32); border-radius: 10px; background: rgba(145, 50, 84, .09); color: #e5b4c5; font-size: .8rem; line-height: 1.7; }
.advertising-admin-only :is(button, input, select, textarea, summary, a):focus-visible { outline: 2px solid #75dce8; outline-offset: 4px; }
.advertising-admin-only button:disabled { opacity: .45; cursor: wait; }
.advertising-admin-only input[type="datetime-local"] { color-scheme: dark; min-width: 0; }
@media (max-width: 1100px) {
  .ad-admin-workspace { grid-template-columns: minmax(245px, .72fr) minmax(0, 1.3fr); gap: 16px; }
  .ad-admin-heading { align-items: flex-start; flex-direction: column; }
  .ad-admin-summary > div { padding: 18px 14px; }
  .ad-admin-filters { grid-template-columns: 1fr; }
  .ad-admin-placements { grid-template-columns: 1fr; }
  .ad-admin-placements small { margin-top: 2px; }
  .ad-admin-welcome { padding: 28px; }
}
@media (max-width: 800px) {
  .ad-admin-workspace { grid-template-columns: 1fr; }
  .ad-admin-filters { grid-template-columns: minmax(0, 1fr) 150px; }
  .ad-admin-list { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .ad-admin-empty { grid-column: 1 / -1; }
  .ad-admin-summary { grid-template-columns: repeat(3, minmax(0, 1fr)); }
  .ad-admin-summary > p { grid-column: 1 / -1; padding: 12px 18px; border-top: 1px solid rgba(160, 136, 220, .15); }
  .ad-admin-summary > div { flex-direction: column; align-items: flex-start; gap: 8px; }
  .ad-admin-summary span { font-size: .65rem; }
  .ad-admin-placements { grid-template-columns: repeat(3, minmax(0, 1fr)); }
  .ad-admin-welcome { min-height: 320px; }
}
@media (max-width: 520px) {
  .ad-admin-rotation-row { grid-template-columns: 1fr; gap: 12px; }
  .ad-admin-list { grid-template-columns: 1fr; }
  .ad-admin-editor { padding: 18px 14px; }
  .ad-admin-editor .admin-form-grid, .ad-admin-settings .admin-form-grid { grid-template-columns: 1fr; }
  .ad-admin-preview { padding: 12px; }
  .ad-admin-preview-head { align-items: flex-start; flex-direction: column; }
  .ad-admin-preview-copy { align-items: flex-start; flex-direction: column; }
  .ad-admin-preview-copy > span { max-width: 100%; }
  .ad-admin-placements { grid-template-columns: 1fr; }
  .ad-admin-heading .admin-section-actions { justify-content: flex-start; }
  .ad-admin-heading .button { padding: 12px; font-size: .6rem; }
  .ad-admin-welcome { padding: 25px; }
  .ad-admin-welcome h3 { font-size: 1.55rem; }
  .ad-admin-upload-grid { gap: 8px; }
  .ad-admin-upload { padding: 9px; }
  .ad-admin-upload-art { height: 76px; }
  .ad-admin-upload em { display: block; }
  .ad-admin-filters { grid-template-columns: minmax(0, 1fr) 125px; }
}
@media (prefers-reduced-motion: reduce) { .ad-admin-preview-stage, .ad-admin-item { transition: none; } }
