:root {
    color-scheme: dark;
    --bg: #080a0b;
    --surface: #111416;
    --surface-2: #171b1e;
    --surface-3: #1d2226;
    --line: #2b3135;
    --gold: #e6aa2e;
    --gold-light: #f5c65a;
    --red: #d93a42;
    --green: #42b883;
    --text: #f4f5f5;
    --muted: #92999e;
    --shadow: 0 24px 70px rgb(0 0 0 / .34);
    font-family: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
}

* { box-sizing: border-box; }
.sr-only { position: absolute !important; width: 1px !important; height: 1px !important; padding: 0 !important; margin: -1px !important; overflow: hidden !important; clip: rect(0, 0, 0, 0) !important; white-space: nowrap !important; border: 0 !important; }
html { background: var(--bg); }
body { margin: 0; min-height: 100vh; background: var(--bg); color: var(--text); font: 14px/1.55 Inter, ui-sans-serif, system-ui, -apple-system, "Segoe UI", sans-serif; -webkit-font-smoothing: antialiased; text-rendering: optimizeLegibility; }
a { color: inherit; text-decoration: none; }
button, input { font: inherit; }

.brand { display: inline-flex; align-items: center; gap: 12px; color: var(--gold-light); }
.brand__logo { display: block; width: 174px; height: auto; border-radius: 4px; }
.brand__mark { width: 42px; height: 42px; border: 2px solid var(--gold); border-radius: 50%; display: flex; align-items: center; justify-content: center; gap: 2px; }
.brand__mark i { display: block; width: 2px; height: 17px; background: var(--gold); }
.brand__mark i:nth-child(2), .brand__mark i:nth-child(4) { height: 26px; }
.brand__mark i:nth-child(3) { height: 32px; }
.brand > span:last-child { display: grid; line-height: .82; }
.brand strong, .brand b { font-family: Georgia, serif; font-size: 18px; letter-spacing: .04em; }
.brand b { color: #fff; }
.brand small { color: var(--muted); font-size: 11.5px; line-height: 1.4; margin-top: 6px; text-transform: uppercase; letter-spacing: .13em; }
.brand--large .brand__mark { width: 58px; height: 58px; }
.brand--large strong, .brand--large b { font-size: 25px; }

.button { display: inline-flex; min-height: 44px; padding: 0 18px; align-items: center; justify-content: center; border: 1px solid transparent; border-radius: 8px; font-weight: 750; cursor: pointer; }
.button--gold { color: #12100a; background: linear-gradient(135deg, var(--gold-light), var(--gold)); box-shadow: 0 12px 30px rgb(230 170 46 / .16); }
.button--outline { border-color: #454c50; background: var(--surface-2); color: #fff; }
.button--danger { color: #fff; background: #a92830; border-color: #d3464e; }
.button--wide { width: 100%; }
.table-action-link { display: block; width: max-content; margin-top: 6px; }
.mapping-decision-form select { width: 100%; min-height: 48px; padding: 10px 12px; color: var(--text); background: var(--surface-2); border: 1px solid var(--line); border-radius: 8px; }
.mapping-progress { display: grid; justify-items: end; gap: 6px; }
.mapping-progress strong { color: var(--muted); font-size: 13px; }
.admin-filter-bar { display: flex; align-items: end; gap: 10px; margin-bottom: 16px; padding: 14px; background: var(--surface); border: 1px solid var(--line); border-radius: 10px; }
.admin-filter-bar label { min-width: 210px; display: grid; gap: 6px; }
.admin-filter-bar label span { color: var(--muted); font-size: 13px; font-weight: 750; text-transform: uppercase; }
.admin-filter-bar input, .admin-filter-bar select, .stack-form textarea { min-height: 44px; padding: 9px 11px; color: var(--text); background: var(--surface-2); border: 1px solid var(--line); border-radius: 8px; }
.admin-filter-bar--ads label:first-of-type { min-width: 280px; flex: 1 1 280px; }
.eyebrow { display: block; color: var(--gold-light); font-size: 13px; font-weight: 800; letter-spacing: .13em; }
.muted { color: var(--muted); line-height: 1.65; }

.public-status, .auth-page { background: radial-gradient(circle at 70% 20%, rgb(230 170 46 / .08), transparent 32%), var(--bg); }
.status-shell, .auth-shell { width: min(100% - 32px, 560px); min-height: 100vh; margin: auto; display: flex; flex-direction: column; align-items: flex-start; justify-content: center; gap: 28px; padding: 42px 0; }
.status-card, .auth-card { width: 100%; padding: clamp(26px, 6vw, 44px); background: rgb(17 20 22 / .96); border: 1px solid var(--line); border-top-color: rgb(230 170 46 / .75); border-radius: 14px; box-shadow: var(--shadow); }
.status-card h1, .auth-card h1 { margin: 12px 0 10px; font-family: Georgia, serif; font-size: clamp(30px, 6vw, 42px); line-height: 1.08; }
.status-card p { color: var(--muted); line-height: 1.7; }
.status-actions { display: flex; flex-wrap: wrap; gap: 10px; margin-top: 24px; }
.auth-footnote { align-self: center; color: #666d71; font-size: 13.5px; text-align: center; }
.local-install-link { margin: 22px 0 0; color: var(--muted); font-size: 13.5px; text-align: center; }
.local-install-link a { color: var(--gold-light); font-weight: 700; }

.stack-form { display: grid; gap: 16px; margin-top: 24px; }
.stack-form label > span { display: block; margin-bottom: 7px; color: var(--muted); font-size: 14px; font-weight: 700; }
.stack-form input { width: 100%; min-height: 46px; padding: 0 13px; color: #fff; background: var(--bg); border: 1px solid var(--line); border-radius: 7px; outline: none; }
.stack-form select { width: 100%; min-height: 46px; padding: 0 13px; color: #fff; background: var(--bg); border: 1px solid var(--line); border-radius: 7px; outline: none; }
.stack-form input:focus { border-color: var(--gold); box-shadow: 0 0 0 3px rgb(230 170 46 / .12); }
.stack-form .check-row { display: flex; align-items: center; gap: 9px; }
.stack-form .check-row input { width: 17px; min-height: 17px; accent-color: var(--gold); }
.stack-form .check-row span { margin: 0; color: var(--muted); font-weight: 500; }
.notice { margin: 18px 0; padding: 12px 14px; border: 1px solid; border-radius: 7px; font-size: 14px; line-height: 1.5; }
.notice--error { color: #ffb3b7; background: rgb(217 58 66 / .09); border-color: rgb(217 58 66 / .4); }
.notice--success { color: #a7e9cb; background: rgb(66 184 131 / .09); border-color: rgb(66 184 131 / .35); }
.secret-box { display: grid; gap: 10px; margin: 20px 0; padding: 16px; background: var(--bg); border: 1px dashed #555d61; border-radius: 8px; }
.secret-box span { color: var(--muted); font-size: 13.5px; }
.secret-box code, .technical-details code { color: var(--gold-light); word-break: break-all; }
.technical-details { padding: 12px 0; color: var(--muted); font-size: 13.5px; }
.technical-details code { display: block; margin-top: 10px; }
.recovery-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 8px; margin: 22px 0; }
.recovery-grid code { padding: 10px; text-align: center; background: var(--bg); border: 1px solid #30363a; border-radius: 6px; color: var(--gold-light); }

.admin-frame { min-height: 100vh; display: grid; grid-template-columns: 245px minmax(0, 1fr); }
.admin-sidebar { position: sticky; top: 0; height: 100vh; display: flex; flex-direction: column; padding: 24px 18px; background: var(--bg); border-right: 1px solid var(--line); }
.admin-sidebar .brand { flex: 0 0 auto; padding: 0 10px 23px; border-bottom: 1px solid #24292c; }
.admin-nav { min-height: 0; display: grid; gap: 5px; padding: 22px 4px 22px 0; overflow-x: hidden; overflow-y: auto; overscroll-behavior: contain; scrollbar-width: thin; scrollbar-color: #a8791f var(--surface); }
.admin-nav::-webkit-scrollbar { width: 8px; }
.admin-nav::-webkit-scrollbar-track { background: var(--surface); border-radius: 999px; }
.admin-nav::-webkit-scrollbar-thumb { background: #a8791f; border-radius: 999px; }
.admin-nav a, .admin-nav__pending { min-height: 43px; display: grid; grid-template-columns: 28px 1fr auto; align-items: center; gap: 8px; padding: 0 11px; border-radius: 7px; color: #a8aeb2; font-size: 14px; }
.admin-nav a:hover { color: #fff; background: var(--surface-2); }
.admin-nav a.is-active { color: #17130a; background: linear-gradient(135deg, var(--gold-light), var(--gold)); font-weight: 800; }
.admin-nav__pending { color: #666d71; cursor: default; }
.admin-nav__pending small { font-size: 11.5px; text-transform: uppercase; letter-spacing: .08em; }
.admin-sidebar__foot { flex: 0 0 auto; margin-top: auto; padding: 16px 10px 0; border-top: 1px solid #24292c; display: grid; }
.admin-sidebar__foot span { font-size: 14px; font-weight: 750; }
.admin-sidebar__foot small { margin-top: 4px; color: var(--muted); line-height: 1.4; }
.admin-sidebar__foot button { margin-top: 12px; padding: 0; border: 0; background: transparent; color: var(--gold-light); font-size: 13.5px; cursor: pointer; }
.admin-content { min-width: 0; }
.admin-topbar { position:sticky;top:0;z-index:40;min-height:78px;display:flex;align-items:center;justify-content:space-between;padding:0 30px;background:#0c0f10;border-bottom:1px solid #262b2e;box-shadow:0 8px 22px rgb(0 0 0 / .16); }
.admin-topbar > div:first-child { display: grid; gap: 5px; }
.admin-topbar strong { font-family: Georgia, serif; font-size: 21px; }
.environment-badge, .data-truth-badge { padding: 7px 9px; border: 1px solid rgb(230 170 46 / .4); border-radius: 5px; color: var(--gold-light); background: rgb(230 170 46 / .07); font-size: 12px; font-weight: 800; letter-spacing: .1em; }
.admin-main { padding: 30px; }
.page-heading { display: flex; align-items: flex-start; justify-content: space-between; gap: 20px; margin-bottom: 24px; }
.page-heading h1 { margin: 0; font-family: Georgia, serif; font-size: 29px; }
.page-heading p { margin: 8px 0 0; color: var(--muted); }
.page-heading-actions { display: flex; align-items: center; justify-content: flex-end; flex-wrap: wrap; gap: 9px; }
.media-evidence { display: grid; gap: 3px; color: var(--muted); font-size: 12.5px; }
.media-evidence b { color: #c7ccce; font-weight: 700; }
.metric-grid { display: grid; grid-template-columns: repeat(6, minmax(0, 1fr)); gap: 12px; }
.metric-card { min-width: 0; min-height: 126px; display: flex; flex-direction: column; padding: 16px; background: linear-gradient(145deg, var(--surface-2), var(--surface)); border: 1px solid var(--line); border-radius: 9px; }
.metric-card span { color: var(--muted); font-size: 13.5px; }
.metric-card strong { margin-top: 10px; font-family: Georgia, serif; font-size: 25px; }
.metric-card small { margin-top: auto; color: #6f777b; font-size: 12.5px; }
.metric-card--attention { border-top-color: var(--gold); }
.metric-card--danger { border-top-color: var(--red); }
.metric-grid--migration { grid-template-columns: repeat(3, minmax(0, 1fr)); margin-top: 12px; }
.admin-quick-links { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 10px; margin-top: 14px; }
.admin-quick-links a { min-height: 78px; display: grid; grid-template-columns: 36px 1fr; align-content: center; padding: 12px 15px; background: var(--surface); border: 1px solid var(--line); border-radius: 8px; }
.admin-quick-links a:hover { border-color: rgb(230 170 46 / .65); background: var(--surface-2); }
.admin-quick-links span { grid-row: 1 / 3; align-self: center; color: var(--gold); font-size: 25px; }
.admin-quick-links strong { font-size: 13px; }
.admin-quick-links small { margin-top: 3px; color: var(--muted); font-size: 11.5px; }
.dashboard-workspace{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.dashboard-work-card{display:grid;grid-template-columns:48px 1fr auto;align-items:center;gap:14px;min-height:94px;padding:16px 18px;border:1px solid var(--line);border-radius:10px;background:var(--surface);color:var(--text);text-decoration:none}
.dashboard-work-card:hover{border-color:var(--gold);background:var(--surface-2)}
.dashboard-work-card>span{font-family:Georgia,serif;font-size:25px;color:var(--gold)}
.dashboard-work-card>div{display:grid;gap:5px}.dashboard-work-card strong{font-size:15px}.dashboard-work-card small{color:var(--muted);font-size:13.5px}.dashboard-work-card>b{color:var(--gold);font-size:13px}
.dashboard-work-card--primary{border-color:var(--gold);background:linear-gradient(135deg,rgb(230 170 46 / .13),var(--surface))}
.dashboard-attention{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin:14px 0;padding:12px 14px;border:1px solid var(--line);border-radius:9px;background:var(--surface)}
.dashboard-attention>strong{margin-right:auto}.dashboard-attention a{padding:8px 11px;border-radius:7px;background:var(--surface-2);color:var(--text);text-decoration:none}.dashboard-attention a:hover{color:var(--gold)}
.dashboard-technical{margin-top:14px}.dashboard-technical>summary{display:flex;justify-content:space-between;align-items:center;cursor:pointer;padding:16px 18px;list-style:none}.dashboard-technical>summary::-webkit-details-marker{display:none}.dashboard-technical>summary span{display:grid;gap:4px}.dashboard-technical>summary small{color:var(--muted)}.dashboard-technical>summary>b{color:var(--gold);font-size:13px}.dashboard-technical__content{padding:0 14px 14px}
.dashboard-stat-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:10px;margin-bottom:14px}
.dashboard-stat{--stat-tone:#d6a329;position:relative;display:grid;grid-template-columns:38px minmax(0,1fr) 16px;gap:10px;min-height:132px;padding:14px 13px 16px;border:1px solid var(--line);border-radius:8px;background:linear-gradient(145deg,#151716,#101313);color:var(--text);text-decoration:none;overflow:hidden;transition:border-color .16s,transform .16s,background .16s}
.dashboard-stat:hover{border-color:var(--stat-tone);background:#171a19;transform:translateY(-1px)}
.dashboard-stat__icon{display:grid;place-items:center;width:34px;height:34px;border:1px solid color-mix(in srgb,var(--stat-tone) 58%,transparent);border-radius:7px;color:var(--stat-tone);background:color-mix(in srgb,var(--stat-tone) 8%,transparent);font-size:17px;font-weight:800}
.dashboard-stat__body{display:grid;align-content:start;min-width:0}
.dashboard-stat__body small{color:var(--stat-tone);font-size:12px;font-weight:800;letter-spacing:.03em;text-transform:uppercase;line-height:1.25;overflow-wrap:anywhere}
.dashboard-stat__body strong{margin-top:4px;font-family:Georgia,serif;font-size:27px;line-height:1;color:var(--text)}
.dashboard-stat__body em{margin-top:8px;color:var(--muted);font-size:12px;font-style:normal;line-height:1.35}
.dashboard-stat__arrow{color:var(--muted);font-size:14px;transition:color .16s,transform .16s}.dashboard-stat:hover .dashboard-stat__arrow{color:var(--stat-tone);transform:translateX(2px)}
.dashboard-stat>i{position:absolute;right:12px;bottom:10px;left:12px;height:5px;border-radius:9px;background:#272d2f;overflow:hidden}.dashboard-stat>i::after{content:"";display:block;width:var(--dashboard-progress);height:100%;border-radius:inherit;background:var(--stat-tone)}
.dashboard-stat--green{--stat-tone:#54bd73}.dashboard-stat--blue{--stat-tone:#6fa8df}.dashboard-stat--gold{--stat-tone:#e1a821}.dashboard-stat--red{--stat-tone:#e46464}.dashboard-stat--violet{--stat-tone:#a98be0}.dashboard-stat--cyan{--stat-tone:#60bdc7}
.dashboard-shortcuts{margin:0 0 12px;border:1px solid var(--line);border-radius:9px;background:var(--surface);overflow:hidden}
.dashboard-shortcuts>header{display:flex;align-items:center;min-height:58px;padding:0 16px;border-bottom:1px solid var(--line)}
.dashboard-shortcuts h2{margin:0;font-family:Georgia,serif;font-size:17px}.dashboard-shortcuts p{margin:3px 0 0;color:var(--muted);font-size:12.5px}
.dashboard-shortcuts>div{display:grid;grid-template-columns:repeat(4,minmax(0,1fr))}
.dashboard-shortcuts a{display:grid;grid-template-columns:28px minmax(0,1fr);align-content:center;min-height:74px;padding:10px 12px;border-right:1px solid var(--line);color:var(--text);text-decoration:none}
.dashboard-shortcuts a:nth-child(4n){border-right:0}.dashboard-shortcuts a:nth-child(n+5){border-top:1px solid var(--line)}
.dashboard-shortcuts a:last-child{border-right:0}.dashboard-shortcuts a:hover{background:#15191a}.dashboard-shortcuts a>span{grid-row:1/3;align-self:center;color:#d8a52c;font-size:18px}.dashboard-shortcuts a strong{font-size:13px}.dashboard-shortcuts a small{margin-top:3px;color:#737e82;font-size:11.5px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.dashboard-facts{display:flex;align-items:stretch;margin-bottom:14px;border:1px solid var(--line);border-radius:8px;background:#0f1213;overflow:hidden}
.dashboard-facts>div,.dashboard-facts>a{display:flex;align-items:center;justify-content:space-between;gap:16px;flex:1;padding:10px 13px;border-right:1px solid var(--line);color:var(--text);text-decoration:none}.dashboard-facts>:last-child{border-right:0}.dashboard-facts>a:hover{background:#15191a}.dashboard-facts span{color:#7f898d;font-size:12px}.dashboard-facts strong{font-size:14px;white-space:nowrap}
.dashboard-grid { display: grid; grid-template-columns: minmax(0, 2fr) minmax(280px, .8fr); gap: 14px; margin-top: 14px; }
.panel { min-width: 0; background: var(--surface); border: 1px solid var(--line); border-radius: 9px; overflow: hidden; }
.panel__head { display: flex; align-items: center; justify-content: space-between; min-height: 70px; padding: 0 18px; border-bottom: 1px solid var(--line); }
.panel__head h2 { margin: 0; font-family: Georgia, serif; font-size: 18px; }
.panel__head p { margin: 5px 0 0; color: var(--muted); font-size: 13px; }
.panel-actions { display: flex; justify-content: flex-end; flex-wrap: wrap; gap: 8px; }
.panel-actions form { margin: 0; }
.empty-state { min-height: 230px; display: flex; flex-direction: column; align-items: center; justify-content: center; padding: 30px; text-align: center; color: var(--muted); }
.empty-state strong { color: #d8dcde; }
.empty-state p { max-width: 470px; line-height: 1.6; }
.empty-state--compact { min-height: 190px; }
.table-wrap { overflow-x: auto; }
table { width: 100%; border-collapse: collapse; font-size: 13.5px; }
th, td { padding: 13px 16px; border-bottom: 1px solid var(--line); text-align: left; }
th { color: var(--muted); font-size: 12px; text-transform: uppercase; letter-spacing: .08em; }
td { color: var(--muted); }
td strong { color: var(--text); }
.status { display: inline-flex; padding: 5px 7px; border-radius: 4px; background: var(--surface-3); color: var(--muted); font-size: 12px; text-transform: uppercase; }
.status--active { color: #8ce0ba; background: rgb(66 184 131 / .1); }
.status--pending_review { color: var(--gold-light); background: rgb(230 170 46 / .1); }
.status--mapped { color: #8ce0ba; background: rgb(66 184 131 / .1); }
.status--manual_review { color: var(--gold-light); background: rgb(230 170 46 / .1); }
.status--rejected, .status--deleted { color: #ff9da2; background: rgb(217 58 66 / .1); }
.status--draft, .status--paused, .status--expired { color: var(--muted); }
.status-list { margin: 0; padding: 14px 18px; }
.status-list div { display: flex; justify-content: space-between; gap: 20px; padding: 12px 0; border-bottom: 1px solid var(--line); }
.status-list dt { color: var(--muted); }
.status-list dd { margin: 0; color: #fff; }
.filter-tabs { display: flex; gap: 6px; overflow-x: auto; margin: 0 0 14px; padding-bottom: 3px; }
.filter-tabs a { min-width: max-content; padding: 9px 11px; border: 1px solid var(--line); border-radius: 6px; color: #8f979b; background: var(--surface); font-size: 13px; }
.filter-tabs a.is-active { color: #161208; border-color: var(--gold); background: var(--gold); font-weight: 800; }
.filter-tabs b { margin-left: 5px; }
.table-sub { display: block; margin-top: 4px; color: #697175; font-size: 12px; }
.row-link, .back-link { color: var(--gold-light); font-weight: 700; }
.back-link { display: inline-block; margin-bottom: 10px; font-size: 13.5px; }
.pagination { display: flex; align-items: center; justify-content: space-between; gap: 20px; padding: 15px 18px; color: var(--muted); border-top: 1px solid var(--line); font-size: 13px; }
.pagination a { color: var(--gold-light); }
.detail-grid { display: grid; grid-template-columns: minmax(0, 1.6fr) minmax(290px, .8fr); gap: 14px; margin-bottom: 14px; }
.detail-grid--equal { grid-template-columns: repeat(2, minmax(0, 1fr)); }
.detail-list { margin: 0; padding: 8px 18px; }
.detail-list > div { display: grid; grid-template-columns: minmax(130px, .35fr) minmax(0, 1fr); gap: 20px; padding: 13px 0; border-bottom: 1px solid #262b2e; }
.detail-list > div:last-child { border-bottom: 0; }
.detail-list dt { color: var(--muted); font-size: 13px; }
.detail-list dd { margin: 0; color: #e6e9ea; font-size: 14px; }
.legacy-review-copy { white-space: pre-wrap; overflow-wrap: anywhere; line-height: 1.6; }
.preline { white-space: pre-line; line-height: 1.6; }
.media-records, .timeline { display: grid; padding: 8px 18px; }
.media-records > div, .timeline > div { display: grid; gap: 5px; padding: 12px 0; border-bottom: 1px solid #262b2e; }
.media-records span, .timeline span { color: var(--muted); font-size: 13px; }
.media-records .media-record { grid-template-columns: 92px 1fr; align-items: center; gap: 12px; }
.media-record__preview { width: 92px; height: 70px; display: grid; place-items: center; overflow: hidden; color: var(--muted); background: #0b0d0e; border: 1px solid #303537; border-radius: 5px; font-size: 11.5px; }
.media-record__preview img { width: 100%; height: 100%; object-fit: cover; }
.moderation-media-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 8px; padding: 0 18px 18px; }
.moderation-media-grid img { width: 100%; aspect-ratio: 4 / 3; object-fit: cover; background: #0b0d0e; border: 1px solid #303537; border-radius: 5px; }
.timeline > div { grid-template-columns: 135px minmax(180px, .5fr) minmax(0, 1fr); align-items: center; }
.timeline time { color: var(--muted); font-size: 12.5px; }
.timeline-message { grid-column: 2 / -1; margin: 2px 0 0; padding: 8px 10px; color: #c8ced0; background: var(--bg); border-left: 2px solid var(--gold); font-size: 12.5px; line-height: 1.5; }
.timeline-message--private { color: #9ba2a5; border-left-color: #555d61; }
.admin-ad-status-panel { margin-bottom: 14px; border-top-color: var(--gold); }
.admin-status-form { display: grid; grid-template-columns: 1fr 1fr auto; align-items: end; gap: 14px; padding: 18px; }
.admin-status-form label { display: grid; gap: 7px; color: #d8dcde; font-size: 12.5px; font-weight: 750; text-transform: uppercase; letter-spacing: .05em; }
.admin-status-form textarea { width: 100%; min-height: 88px; padding: 10px 11px; color: #fff; background: var(--bg); border: 1px solid #373e42; border-radius: 6px; resize: vertical; text-transform: none; }
.admin-status-form > div { width: min(240px, 100%); }
.admin-status-form > div p { margin: 0 0 10px; color: var(--muted); font-size: 12.5px; line-height: 1.5; }
.admin-status-form > div .button { width: 100%; }
.admin-status-callout { display: flex; align-items: center; justify-content: space-between; gap: 18px; padding: 18px; }
.admin-status-callout strong { font-family: Georgia, serif; font-size: 18px; }
.admin-status-callout p { margin: 5px 0 0; color: var(--muted); font-size: 13px; }
.moderation-list { display: grid; }
.moderation-list > a { display: grid; grid-template-columns: 70px minmax(220px, 1fr) minmax(160px, .45fr) auto; gap: 16px; align-items: center; padding: 16px 18px; border-bottom: 1px solid var(--line); }
.moderation-list > a:hover { background: var(--surface-2); }
.moderation-list span { display: grid; gap: 5px; }
.moderation-list small { color: var(--muted); }
.moderation-list__id { color: var(--gold-light); font-weight: 800; }
.moderation-workspace { display: grid; grid-template-columns: minmax(0, 1.4fr) minmax(320px, .7fr); gap: 14px; }
.decision-stack { display: grid; gap: 14px; align-content: start; }
.decision-card { padding: 20px; }
.decision-card h2 { margin: 0; font-family: Georgia, serif; }
.decision-card p { color: var(--muted); font-size: 13.5px; line-height: 1.5; }
.decision-card label { display: grid; gap: 7px; margin: 14px 0; color: #cbd0d2; font-size: 13px; }
.decision-card input, .decision-card select, .decision-card textarea { width: 100%; padding: 11px; color: #fff; background: #0b0d0e; border: 1px solid #373d41; border-radius: 6px; resize: vertical; }
.decision-card--danger { border-top-color: var(--red); }
.catalog-grid { display: grid; grid-template-columns: minmax(0, 1.05fr) minmax(0, .95fr); gap: 14px; }
.catalog-human-actions { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 14px; margin-bottom: 14px; }
.catalog-human-actions .human-editor { margin: 0; }
.catalog-human-actions .human-editor > summary b { color: var(--gold); font-size: 24px; }
.catalog-human-actions .human-editor[open] { grid-column: 1 / -1; }
.catalog-human-actions .human-editor[open] > form { width: min(760px, 100%); }
.catalog-management-stack, .catalog-category-settings { display: grid; gap: 14px; }
.catalog-category-search { display: flex; align-items: end; gap: 9px; padding: 16px 18px; border-bottom: 1px solid var(--line); }
.catalog-category-search label { flex: 1 1 420px; display: grid; gap: 7px; color: var(--muted); font-size: 13.5px; font-weight: 750; }
.catalog-category-search input { width: 100%; min-height: 44px; padding: 0 12px; color: #fff; background: var(--bg); border: 1px solid #394044; border-radius: 7px; }
.category-manager { padding: 0 18px 18px; }
.category-manager__branch { border-bottom: 1px solid var(--line); }
.category-manager__branch > summary, .category-manager__row { min-height: 58px; display: grid; grid-template-columns: 22px minmax(180px, 1fr) minmax(130px, .45fr) auto 82px; align-items: center; gap: 12px; padding: 7px 10px; list-style: none; }
.category-manager__branch > summary { cursor: pointer; }
.category-manager__branch > summary::-webkit-details-marker { display: none; }
.category-manager__branch > summary:hover, .category-manager__row:hover { background: var(--surface-2); }
.category-manager__toggle { color: var(--gold); font-size: 13px; transition: transform .15s ease; }
.category-manager__branch[open] > summary > .category-manager__toggle { transform: rotate(90deg); }
.category-manager__branch summary small, .category-manager__row small { color: var(--muted); }
.category-manager__branch summary .button, .category-manager__row .button { min-height: 35px; padding: 0 11px; font-size: 12.5px; }
.category-manager__children { margin-left: 24px; border-left: 1px solid var(--line); }
.category-manager__branch--child > summary { padding-left: 14px; }
.category-manager__children--leaf { margin-left: 36px; }
.category-manager__row { padding-left: 16px; }
[data-category-leaf][hidden], [data-category-branch][hidden], [data-category-search-empty][hidden] { display: none !important; }
.category-tree-editor { padding: 14px 18px 18px; }
.category-tree-editor ol { margin: 0; padding: 0; list-style: none; }
.category-tree-editor__children { margin-left: 28px !important; border-left: 1px solid var(--line); }
.category-tree-editor__item[hidden] { display: none !important; }
.category-tree-editor__row { min-height: 58px; display: grid; grid-template-columns: 34px minmax(180px, 1fr) minmax(160px, .55fr) auto 82px; align-items: center; gap: 12px; padding: 8px 10px; background: var(--surface-2); border: 1px solid var(--line); border-radius: 7px; }
.category-tree-editor__row:hover { background: var(--surface-2); border-color: var(--line); }
.category-tree-editor__handle { width: 30px; height: 34px; display: grid; place-items: center; color: #171007; background: var(--gold); border-radius: 5px; cursor: grab; font-size: 17px; }
.category-tree-editor__item.is-dragged { opacity: .42; }
.category-tree-editor__row small { color: var(--muted); }
.category-tree-editor__row .button { min-height: 35px; padding: 0 11px; font-size: 12.5px; }
.category-tree-editor__drop { display: none; min-height: 38px; margin: 5px 0; align-items: center; justify-content: center; color: var(--gold-light); background: rgb(232 174 43 / .08); border: 1px dashed #9c741d; border-radius: 6px; font-size: 12.5px; font-weight: 800; }
.category-tree-editor.is-dragging .category-tree-editor__drop { display: flex; }
.category-tree-editor__drop.is-ready { color: #111; background: var(--gold); border-style: solid; }
.category-tree-editor__drop--inside { margin-left: 38px; }
.category-tree-editor__notice { margin-bottom: 10px; padding: 10px 12px; color: #9aa2a5; background: var(--bg); border-left: 3px solid #4d5558; font-size: 12.5px; }
.category-tree-editor__notice[data-state="saving"] { color: var(--gold-light); border-left-color: var(--gold); }
.category-tree-editor__notice[data-state="saved"] { color: #98e5bc; border-left-color: #45a878; }
.category-tree-editor__notice[data-state="error"] { color: #ff9da0; border-left-color: var(--red); }
.plain-fieldset { margin: 0; padding: 14px; border: 1px solid var(--line); border-radius: 8px; }
.plain-fieldset legend { padding: 0 7px; color: var(--gold-light); font-size: 13.5px; font-weight: 800; }
.catalog-grid--human .category-row { grid-template-columns: 30px minmax(150px, 1fr) auto; }
.catalog-editor { margin-bottom: 14px; background: var(--surface); border: 1px solid var(--line); border-radius: 9px; }
.catalog-editor > summary { padding: 16px 18px; color: var(--gold-light); font-weight: 800; cursor: pointer; }
.catalog-editor__grid { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 12px; padding: 0 14px 14px; }
.catalog-editor form { display: flex; flex-direction: column; min-width: 0; padding: 16px; background: #0c0f10; border: 1px solid #282e31; border-radius: 7px; }
.catalog-editor h2 { min-height: 42px; margin: 0 0 12px; font-family: Georgia, serif; font-size: 17px; }
.catalog-editor label { display: grid; gap: 6px; margin-bottom: 10px; color: var(--muted); font-size: 12.5px; }
.catalog-editor input, .catalog-editor select, .catalog-editor textarea { width: 100%; min-height: 38px; padding: 8px 9px; color: #fff; background: var(--bg); border: 1px solid #343a3e; border-radius: 5px; }
.catalog-editor textarea { resize: vertical; }
.catalog-editor .button { margin-top: auto; }
.form-help { margin: 0 0 12px; color: var(--muted); font-size: 12.5px; line-height: 1.5; }
.catalog-detail-grid { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); gap: 14px; }
.catalog-edit-form { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 13px; padding: 18px; }
.catalog-edit-form label { display: grid; align-content: start; gap: 6px; color: #b6bcc0; font-size: 12.5px; }
.catalog-edit-form label > span { color: var(--muted); font-weight: 750; text-transform: uppercase; letter-spacing: .05em; }
.catalog-edit-form input, .catalog-edit-form select, .catalog-edit-form textarea { width: 100%; min-height: 41px; padding: 8px 10px; color: #fff; background: var(--bg); border: 1px solid #373e42; border-radius: 6px; }
.catalog-edit-form input:disabled, .catalog-edit-form select:disabled { color: #777f83; background: var(--surface); }
.catalog-edit-form textarea { resize: vertical; }
.catalog-edit-form small { color: var(--muted); line-height: 1.45; }
.catalog-edit-form .field-span { grid-column: 1 / -1; }
.catalog-edit-form .form-checks, .catalog-edit-form > .button { grid-column: 1 / -1; }
.catalog-edit-form--compact { grid-template-columns: repeat(4, minmax(0, 1fr)); }
.form-checks { display: flex; flex-wrap: wrap; gap: 10px; margin: 6px 0 14px; }
.form-checks label { display: flex; align-items: center; gap: 6px; margin: 0; }
.form-checks input { width: 15px; min-height: 15px; accent-color: var(--gold); }
.form-checks--stack { display: grid; grid-template-columns: repeat(2, 1fr); }
.category-tree { display: grid; padding: 10px 16px 18px; }
.category-tree section { border-bottom: 1px solid var(--line); }
.category-row { display: grid; grid-template-columns: 30px minmax(150px, 1fr) minmax(120px, .7fr) auto; gap: 12px; align-items: center; padding: 10px; color: var(--muted); font-size: 13px; }
.category-row code { color: var(--gold-light); }
.category-row em { color: var(--muted); font-size: 12px; font-style: normal; text-transform: uppercase; }
.category-row--root { margin-top: 8px; color: #fff; background: #181c1f; border-radius: 5px; }
.category-row--branch { padding-left: 25px; }
.category-row--leaf { padding-left: 45px; color: #8c9498; }
.import-summary { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 12px; margin-bottom: 14px; }
.source-snapshots { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 12px; margin-bottom: 14px; }
.source-snapshots article { min-width: 0; padding: 16px; background: linear-gradient(145deg, var(--surface-2), var(--surface)); border: 1px solid var(--line); border-top-color: rgb(230 170 46 / .55); border-radius: 8px; }
.source-snapshots header, .source-snapshots footer { display: flex; align-items: center; justify-content: space-between; gap: 15px; }
.source-snapshots header span { color: var(--gold-light); font-size: 11.5px; font-weight: 800; letter-spacing: .1em; }
.source-snapshots h2 { margin: 4px 0 0; font-family: Georgia, serif; }
.source-snapshots code { color: #737b7f; font-size: 12px; }
.source-snapshots dl { margin: 14px 0; }
.source-snapshots dl div { display: flex; justify-content: space-between; gap: 14px; padding: 8px 0; border-bottom: 1px solid #292e31; }
.source-snapshots dt { color: var(--muted); font-size: 12.5px; }
.source-snapshots dd { margin: 0; color: #fff; font-weight: 750; }
.source-snapshots footer { color: #656d71; font-size: 12px; }
.import-summary article { display: flex; align-items: center; justify-content: space-between; padding: 15px; background: var(--surface); border: 1px solid var(--line); border-radius: 7px; }
.import-summary span { color: var(--muted); font-size: 13px; }
.import-summary strong { font-family: Georgia, serif; font-size: 24px; }
.metric-grid--small { grid-template-columns: repeat(2, minmax(0, 220px)); }
.panel--spaced { margin-top: 14px; }

@media (max-width: 1180px) {
    .metric-grid { grid-template-columns: repeat(3, 1fr); }
    .admin-quick-links { grid-template-columns: repeat(2, 1fr); }
    .catalog-editor__grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
    .dashboard-stat-grid,.dashboard-shortcuts>div { grid-template-columns: repeat(3,minmax(0,1fr)); }
    .dashboard-shortcuts a:nth-child(3n) { border-right: 0; }
    .dashboard-shortcuts a:nth-child(n+4) { border-top: 1px solid var(--line); }
}

@media (max-width: 820px) {
    .admin-filter-bar { align-items: stretch; flex-direction: column; }
    .admin-filter-bar label, .admin-filter-bar--ads label:first-of-type { width: 100%; min-width: 0; flex: 0 0 auto; }
    .admin-filter-bar input, .admin-filter-bar select { width: 100%; min-width: 0; max-width: 100%; }
    .admin-frame { width: 100%; max-width: 100%; grid-template-columns: minmax(0, 1fr); overflow: hidden; }
    .admin-sidebar { position: static; width: 100%; max-width: 100vw; min-width: 0; height: auto; padding: 14px; overflow: hidden; }
    .admin-sidebar .brand { border: 0; padding-bottom: 10px; }
    .admin-nav { width: 100%; max-width: 100%; min-width: 0; display: flex; overflow-x: auto; padding: 8px 0; overscroll-behavior-inline: contain; scrollbar-width: thin; }
    .admin-nav a, .admin-nav__pending { min-width: max-content; grid-template-columns: 20px auto; }
    .admin-nav__pending small { display: none; }
    .admin-sidebar__foot { display: none; }
    .admin-topbar { padding: 0 18px; }
    .admin-content, .admin-main { width: 100%; max-width: 100%; min-width: 0; }
    .admin-main { padding: 20px 16px; }
    .dashboard-grid { grid-template-columns: 1fr; }
    .dashboard-stat-grid { grid-template-columns: repeat(2,minmax(0,1fr)); }
    .dashboard-facts { display:grid;grid-template-columns:repeat(2,minmax(0,1fr)); }
    .dashboard-facts>div,.dashboard-facts>a { border-right:1px solid var(--line);border-bottom:1px solid var(--line); }
    .detail-grid, .detail-grid--equal, .moderation-workspace, .catalog-grid, .catalog-detail-grid { grid-template-columns: 1fr; }
    .source-snapshots { grid-template-columns: 1fr; }
    .timeline > div { grid-template-columns: 100px 1fr; }
    .timeline span { grid-column: 2; }
    .timeline-message { grid-column: 1 / -1; }
    .admin-status-form { grid-template-columns: 1fr 1fr; }
    .admin-status-form > div { width: 100%; grid-column: 1 / -1; }
}

@media (max-width: 560px) {
    .dashboard-stat-grid,.dashboard-shortcuts>div,.dashboard-facts { grid-template-columns:1fr; }
    .dashboard-shortcuts a { border-right:0;border-top:1px solid var(--line); }
    .dashboard-shortcuts a:first-child { border-top:0; }
    .dashboard-facts>div,.dashboard-facts>a { border-right:0; }
    .status-actions { display: grid; }
    .recovery-grid { grid-template-columns: 1fr; }
    .metric-grid { grid-template-columns: repeat(2, 1fr); }
    .metric-grid--migration, .admin-quick-links { grid-template-columns: 1fr; }
    .page-heading { display: grid; }
    .data-truth-badge { justify-self: start; }
    .environment-badge { display: none; }
    .import-summary { grid-template-columns: repeat(2, 1fr); }
    .moderation-list > a { grid-template-columns: 55px 1fr; }
    .moderation-list > a > span:nth-child(3), .moderation-list > a > b { grid-column: 2; }
    .category-row { grid-template-columns: 25px 1fr; }
    .category-row code, .category-row em { grid-column: 2; }
    .catalog-editor__grid { grid-template-columns: 1fr; }
    .catalog-edit-form, .catalog-edit-form--compact { grid-template-columns: 1fr; }
    .catalog-edit-form .field-span, .catalog-edit-form .form-checks, .catalog-edit-form > .button { grid-column: auto; }
    .catalog-human-actions { grid-template-columns: 1fr; }
    .catalog-human-actions .human-editor[open] { grid-column: auto; }
    .catalog-category-search { align-items: stretch; flex-direction: column; }
    .catalog-category-search label, .catalog-category-search .button { width: 100%; flex-basis: auto; }
    .category-manager { padding-inline: 8px; }
    .category-manager__branch > summary, .category-manager__row { grid-template-columns: 18px minmax(0, 1fr) auto; gap: 8px; }
    .category-manager__branch summary small, .category-manager__row small { grid-column: 2; }
    .category-manager__branch summary .status, .category-manager__row .status { grid-column: 3; grid-row: 1; }
    .category-manager__branch summary .button, .category-manager__row .button { grid-column: 2 / -1; width: 100%; }
    .category-manager__children { margin-left: 10px; }
    .category-manager__children--leaf { margin-left: 12px; }
    .category-tree-editor { padding-inline: 8px; }
    .category-tree-editor__children { margin-left: 10px !important; }
    .category-tree-editor__row { grid-template-columns: 34px minmax(0, 1fr) auto; gap: 8px; }
    .category-tree-editor__row small { grid-column: 2; }
    .category-tree-editor__row .status { grid-column: 3; grid-row: 1; }
    .category-tree-editor__row .button { grid-column: 2 / -1; width: 100%; }
    .panel__head--actions { align-items: flex-start; flex-direction: column; padding-block: 14px; }
    .panel-actions { width: 100%; justify-content: stretch; }
    .panel-actions form, .panel-actions .button { width: 100%; }
    .admin-status-form { grid-template-columns: 1fr; }
    .admin-status-form > div { grid-column: auto; }
    .admin-status-callout { align-items: stretch; flex-direction: column; }
}

/* Krediti, promocije i upravljanje baner pozicijama */
.promotion-offer-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 14px; margin: 18px 0; }
.promotion-offer-card { padding-bottom: 16px; }
.promotion-offer-card .stack-form { padding: 0 16px; }
.form-grid-two, .form-grid-three { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 10px; }
.form-grid-three { grid-template-columns: repeat(3, minmax(0, 1fr)); }
.check-line { min-height: 58px; display: flex !important; align-items: center; gap: 8px; padding: 10px; background: #121617; border: 1px solid var(--line); border-radius: 5px; }
.check-line input { width: auto !important; }
.inline-cancel-form { min-width: 230px; display: flex; gap: 6px; }
.inline-cancel-form input { min-width: 120px; padding: 7px; color: #e4e7e8; background: var(--surface-2); border: 1px solid var(--line); border-radius: 4px; }
.table-subline { display: block; margin-top: 3px; color: #778083; font-size: 12px; }

.admin-credit-grid { display: grid; grid-template-columns: minmax(260px, .8fr) 1.2fr; gap: 22px; padding: 16px; }
.credit-balance { color: #f2bd4b; font: 700 22px/1 Georgia, serif; }
.credit-ledger-admin h3 { margin: 0 0 8px; color: #dfe2e3; font-size: 13.5px; }
.credit-ledger-admin > div { display: grid; grid-template-columns: 112px minmax(0, 1fr) auto; gap: 5px 10px; padding: 8px 0; border-bottom: 1px solid #2c3133; }
.credit-ledger-admin time { color: #788083; font-size: 12px; }
.credit-ledger-admin span { color: #dfe2e3; font-size: 12.5px; }
.credit-ledger-admin b { font-size: 13px; }
.credit-ledger-admin small { grid-column: 2 / -1; color: #757d80; font-size: 11.5px; }

.banner-slot-menu { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 10px; margin: 18px 0; }
.banner-slot-menu a { min-height: 84px; display: grid; grid-template-columns: 30px 1fr; align-content: center; gap: 4px 8px; padding: 12px; background: linear-gradient(145deg, var(--surface-2), #111415); border: 1px solid #4d3c16; border-radius: 7px; }
.banner-slot-menu a:hover { border-color: #d6a22c; }
.banner-slot-menu b { grid-row: 1 / 3; align-self: center; color: #e5ad32; font: 700 24px/1 Georgia, serif; }
.banner-slot-menu span { color: #eef0f1; font-size: 12.5px; font-weight: 800; }
.banner-slot-menu small { color: #7c8487; font-size: 11.5px; }
.banner-slot-panel { scroll-margin-top: 20px; }
.banner-admin-list { display: grid; gap: 16px; padding: 16px; }
.banner-admin-card { overflow: hidden; display: grid; grid-template-columns: minmax(300px, .8fr) 1.2fr; gap: 16px; padding: 12px; background: #0e1213; border: 1px solid var(--line); border-radius: 8px; }
.banner-admin-preview { min-width: 0; }
.banner-admin-preview picture, .banner-admin-preview img { display: block; width: 100%; }
.banner-admin-preview img { aspect-ratio: 3 / 1; object-fit: cover; border: 1px solid #4a3a16; border-radius: 6px; }
.banner-admin-preview span { display: block; margin-top: 5px; color: #747d80; font-size: 11.5px; }
.banner-edit-form { display: grid; gap: 9px; }
.banner-edit-form label { display: grid; gap: 4px; }
.banner-edit-form label > span { color: #92999c; font-size: 12px; font-weight: 700; }
.banner-edit-form input, .banner-edit-form select, .banner-edit-form textarea { min-width: 0; width: 100%; padding: 9px; color: #e8eaeb; background: #161a1b; border: 1px solid var(--line); border-radius: 5px; }
.banner-create-box { margin: 0 16px 16px; padding: 12px; background: var(--surface-2); border: 1px dashed var(--line); border-radius: 7px; }
.banner-create-box summary { color: var(--gold-light); cursor: pointer; font-size: 12.5px; font-weight: 850; }
.banner-create-box .stack-form { margin-top: 14px; }
.admin-partner-strip { display: flex; flex-wrap: wrap; gap: 10px; padding: 16px; }
.admin-partner-strip > a { position: relative; flex: 0 0 200px; width: 200px; height: 50px; overflow: hidden; background: #090c0d; border: 1px solid #4d3b18; border-radius: 5px; }
.admin-partner-strip > a:hover { border-color: #e5ad32; }
.admin-partner-strip picture, .admin-partner-strip img { display: block; width: 100%; height: 100%; }
.admin-partner-strip img { object-fit: contain; }
.admin-partner-strip span { position: absolute; right: 3px; bottom: 3px; padding: 2px 4px; color: #ff8a8a; background: rgb(8 10 11 / .88); border-radius: 2px; font-size: 11px; font-weight: 900; }
.admin-partner-strip span.is-active { color: #61dc95; }
.banner-admin-card { scroll-margin-top: 18px; }
.device-visibility { display: flex; flex-wrap: wrap; gap: 14px; margin: 0; padding: 10px 12px; background: var(--surface-2); border: 1px solid var(--line); border-radius: 5px; }
.device-visibility legend { padding: 0 5px; color: #e5ad32; font-size: 11.5px; font-weight: 850; text-transform: uppercase; }
.device-visibility label { display: flex; align-items: center; gap: 6px; color: #dfe2e3; font-size: 12px; }
.device-visibility input { width: 14px !important; min-height: 14px !important; accent-color: #e5ad32; }
.partner-admin-list { display: grid; gap: 14px; margin-top: 14px; }
.drag-save-status { margin-bottom: 10px; padding: 10px 12px; color: #9aa2a5; background: var(--bg); border-left: 3px solid #4d5558; border-radius: 4px; font-size: 12.5px; }
.drag-save-status[data-state="saving"] { color: var(--gold-light); border-left-color: var(--gold); }
.drag-save-status[data-state="saved"] { color: #98e5bc; border-left-color: #45a878; }
.drag-save-status[data-state="error"] { color: #ff9da0; border-left-color: var(--red); }
[data-drag-list] { display: grid; gap: 9px; padding: 14px; border-radius: 6px; transition: background .12s; }
[data-drag-list].is-drop-target { background: var(--surface-2); outline: 2px dashed var(--gold); outline-offset: -2px; }
[data-drag-hint] { margin: 0; padding: 12px; color: var(--muted); font-size: 12.5px; text-align: center; border: 1px dashed var(--line); border-radius: 6px; }
[data-drag-handle] { cursor: grab; color: var(--muted); font-size: 16px; text-align: center; touch-action: none; user-select: none; }
[data-drag-handle]:active { cursor: grabbing; }
[data-drag-item].is-dragging { opacity: .5; }
.partner-admin-list .banner-admin-card { grid-template-columns: minmax(250px, .65fr) 1.35fr; padding: 14px; }
.partner-admin-preview img { object-fit: contain; background: var(--bg); }
.partner-delete-form { display: flex; justify-content: flex-end; margin-top: 9px; }
.partner-create-box { margin: 14px 0 0; }
.asset-editor-card{overflow:hidden;border:1px solid var(--line);border-radius:8px;background:#0e1213;scroll-margin-top:18px}
.asset-editor-card>summary{list-style:none}.asset-editor-card>summary::-webkit-details-marker{display:none}
.asset-editor-summary{display:grid;grid-template-columns:auto auto minmax(220px,1fr) auto auto;gap:14px;align-items:center;padding:12px 14px;cursor:pointer}
.banner-editor-card>summary.asset-editor-summary{grid-template-columns:auto auto auto minmax(220px,1fr) auto auto}
.asset-editor-summary:hover{background:#121718}
.asset-editor-thumb{display:block;overflow:hidden;border:1px solid #4a3a16;border-radius:5px;background:var(--bg)}
.asset-editor-thumb img{display:block;width:100%;height:100%;object-fit:contain}
.asset-editor-thumb--partner{width:200px;height:50px}
.asset-editor-thumb--banner{width:240px;height:80px}
.asset-editor-title{display:grid;gap:5px;min-width:0}.asset-editor-title strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.asset-editor-title small{color:var(--muted);font-size:13px}
.asset-editor-body{display:grid;gap:12px;padding:16px;border-top:1px solid var(--line)}
.asset-editor-body .banner-delete-form,.asset-editor-body .partner-delete-form{justify-content:flex-start;margin:0;padding-top:12px;border-top:1px solid var(--line)}
.partner-admin-list .asset-editor-card{padding:0}
.banner-layout-form { display: grid; grid-template-columns: repeat(4, minmax(130px, 1fr)) minmax(170px, .8fr) auto; align-items: end; gap: 10px; padding: 14px 16px; border-bottom: 1px solid var(--line); }
.banner-layout-form label { display: grid; gap: 6px; color: var(--muted); font-size: 12.5px; }
.banner-layout-form select { min-height: 40px; padding: 7px 9px; color: #fff; background: var(--surface-2); border: 1px solid var(--line); border-radius: 5px; }
.banner-layout-form .check-line { min-height: 40px; display: flex; align-items: center; }
.banner-row-check { width: 18px; height: 18px; accent-color: var(--gold); }
.banner-slot-panel > .bulk-toolbar { margin: 12px 16px; }
@media(max-width:850px){.asset-editor-summary{grid-template-columns:auto 1fr}.asset-editor-summary>.status,.asset-editor-summary>.button{grid-column:2}.asset-editor-thumb--banner{width:200px;height:67px}}
@media(max-width:560px){.asset-editor-summary{grid-template-columns:1fr}.asset-editor-summary>*{grid-column:1!important}.asset-editor-thumb--partner{width:200px;max-width:100%;height:50px}.asset-editor-thumb--banner{width:100%;height:auto;aspect-ratio:3/1}}

@media (max-width: 1100px) {
    .promotion-offer-grid { grid-template-columns: 1fr; }
    .banner-slot-menu { grid-template-columns: repeat(2, 1fr); }
    .banner-admin-card { grid-template-columns: 1fr; }
    .banner-layout-form { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}

@media (max-width: 700px) {
    .admin-credit-grid, .form-grid-two, .form-grid-three { grid-template-columns: 1fr; }
    .banner-slot-menu { grid-template-columns: 1fr; }
    .credit-ledger-admin > div { grid-template-columns: 90px minmax(0, 1fr) auto; }
}

/* Kontrolisana vizuelna mapa javne početne strane. */
.frontend-layout-editor { display: grid; gap: 12px; padding: 15px; border: 1px solid var(--line); border-radius: 8px; }
.frontend-logo-editor { display: grid; grid-template-columns: 210px 1fr 1fr; align-items: end; gap: 12px; padding: 13px; background: var(--bg); border: 1px solid var(--line); border-radius: 8px; }
.frontend-logo-editor > div, .frontend-logo-editor label { display: grid; gap: 7px; }
.frontend-logo-editor span { color: var(--muted); font-size: 13px; font-weight: 800; }
.frontend-logo-editor picture { height: 72px; display: grid; place-items: center; padding: 5px; background: #fff; border-radius: 5px; }
.frontend-logo-editor img { max-width: 100%; max-height: 62px; object-fit: contain; }
.frontend-trust-editor { display: grid; grid-template-columns: repeat(5, minmax(0, 1fr)); gap: 9px; }
.frontend-trust-editor article { min-width: 0; display: grid; gap: 8px; padding: 11px; background: var(--bg); border: 1px solid var(--line); border-radius: 7px; }
.frontend-trust-editor article > strong { color: var(--gold-light); font-size: 13px; }
.frontend-trust-editor label { display: grid; gap: 5px; }
.frontend-trust-editor label span { color: #9fa7aa; font-size: 12.5px; }
.frontend-layout-editor > legend { padding: 0 7px; color: var(--gold-light); font-size: 14px; font-weight: 900; }
.frontend-layout-editor > p { margin: 0; color: #aab1b4; font-size: 13.5px; line-height: 1.55; }
.frontend-layout-map { display: grid; gap: 8px; }
.frontend-layout-map article { display: grid; grid-template-columns: 76px minmax(0, 1fr); align-items: center; gap: 8px 12px; min-height: 76px; padding: 9px 12px; background: var(--surface-2); border: 1px solid #363d40; border-left: 3px solid #9a711c; border-radius: 7px; cursor: grab; }
.frontend-layout-map article.is-dragging { opacity: .55; border-color: var(--gold); }
.frontend-layout-map strong { font-size: 14px; }
.layout-block-label { display: grid; gap: 4px; }
.layout-block-label small { color: var(--muted); }
.frontend-layout-map .check-line { grid-column: 2; min-height: 34px; margin: 0; padding: 6px 9px; font-size: 13.5px; }
.layout-move-controls { grid-row: 1 / 3; display: flex; gap: 4px; align-self: stretch; }
.layout-move-controls button { width: 34px; min-height: 34px; color: #111; background: var(--gold); border: 0; border-radius: 5px; font-size: 18px; font-weight: 900; cursor: pointer; }
.layout-move-controls button:hover, .layout-move-controls button:focus-visible { background: #ffd56f; }
@media (max-width: 720px) {
    .frontend-logo-editor { grid-template-columns: 1fr; }
    .frontend-trust-editor { grid-template-columns: 1fr; }
    .frontend-layout-map article { grid-template-columns: 76px minmax(0, 1fr); }
    .frontend-layout-map .check-line { grid-column: 2; }
}

/* Upravljanje oglasima i njihovim promotivnim periodima */
.ad-row-action-cell { min-width: 310px; }
.ad-row-actions-visible { display: flex; flex-wrap: wrap; align-items: center; gap: 6px; }
.ad-row-actions-visible form { margin: 0; }
.ad-row-action { min-height: 30px; display: inline-flex; align-items: center; justify-content: center; padding: 6px 9px; color: var(--text); background: var(--surface-2, var(--surface-2)); border: 1px solid var(--line); border-radius: 5px; font: inherit; font-size: 12.5px; font-weight: 750; line-height: 1; text-decoration: none; cursor: pointer; white-space: nowrap; }
.ad-row-action:hover, .ad-row-action:focus-visible { color: #111; border-color: var(--gold); background: var(--gold); }
.ad-row-action--edit { color: var(--gold-light); border-color: #76591c; }
.ad-row-action--state { color: #8ce0ba; }
.ad-row-action--delete { color: #ff8b8f; border-color: #713238; }
.ad-row-action--delete:hover, .ad-row-action--delete:focus-visible { color: #fff; border-color: #b62e3a; background: #9c2630; }
.admin-ad-commandbar { display: flex; flex-wrap: wrap; align-items: center; gap: 8px; margin: -5px 0 16px; padding: 11px; background: var(--surface-2); border: 1px solid var(--line); border-left: 3px solid #dca62c; border-radius: 7px; }
.admin-ad-commandbar form { margin: 0; }
.admin-promotion-manager { margin: 14px 0; scroll-margin-top: 18px; border-top-color: #e3ab2f; }
.promotion-owner-balance { min-width: 120px; display: grid; gap: 3px; padding: 9px 12px; text-align: right; background: #0c0f10; border: 1px solid #4c3b16; border-radius: 6px; }
.promotion-owner-balance span { color: #858d90; font-size: 11.5px; text-transform: uppercase; }
.promotion-owner-balance strong { color: #f0bc49; font: 700 21px/1 Georgia, serif; }
.admin-promotion-create { display: grid; grid-template-columns: repeat(5, minmax(120px, 1fr)); align-items: end; gap: 10px; padding: 16px; background: #0d1112; border-bottom: 1px solid var(--line); }
.admin-promotion-create label, .admin-promotion-record label, .admin-ad-edit-form label { min-width: 0; display: grid; gap: 5px; color: #a5adb0; font-size: 12px; }
.admin-promotion-create label > span, .admin-promotion-record label > span, .admin-ad-edit-form label > span { color: #d9ddde; font-weight: 750; text-transform: uppercase; letter-spacing: .04em; }
.admin-promotion-create input, .admin-promotion-create select, .admin-promotion-create textarea, .admin-promotion-record input, .admin-promotion-record select, .admin-ad-edit-form input, .admin-ad-edit-form select, .admin-ad-edit-form textarea { width: 100%; min-width: 0; min-height: 40px; padding: 8px 9px; color: #fff; background: #161a1b; border: 1px solid var(--line); border-radius: 5px; }
.admin-promotion-create textarea, .admin-ad-edit-form textarea { resize: vertical; }
.admin-promotion-create small { color: #747c7f; }
.admin-promotion-create .field-span { grid-column: 1 / -2; }
.admin-promotion-disabled { margin: 16px; padding: 14px; background: #18130b; border: 1px solid #674d17; border-radius: 6px; }
.admin-promotion-disabled p { margin: 5px 0 0; color: #a6abad; font-size: 12.5px; }
.admin-promotion-list { padding: 16px; }
.admin-promotion-list h3 { margin: 0 0 10px; color: #f0bc49; font-size: 13px; text-transform: uppercase; }
.admin-promotion-record { display: grid; grid-template-columns: minmax(170px, 1.2fr) repeat(4, minmax(125px, .8fr)) minmax(190px, 1.2fr) auto; align-items: end; gap: 9px; padding: 12px 0; border-top: 1px solid #2d3335; }
.promotion-record-title { align-self: center; display: grid; gap: 4px; }
.promotion-record-title strong { color: #fff; }
.promotion-record-title span { color: #757d80; font-size: 11.5px; }
.promotion-management-hint { display: flex; align-items: center; gap: 12px; margin: 14px; padding: 12px; color: #b9bfc1; background: #15130d; border: 1px solid #5d4718; border-radius: 6px; font-size: 12.5px; }
.promotion-management-hint strong { color: #f0bc49; }
.admin-ad-edit-form { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 13px; padding: 18px; }
.admin-ad-edit-form .field-span { grid-column: 1 / -1; }
.admin-ad-edit-form h3 { margin: 5px 0 0; color: #f0bc49; font-size: 13.5px; }
.admin-edit-lock { display: grid; gap: 5px; padding: 13px; color: #c8cdcf; background: var(--surface-2); border: 1px solid var(--line); border-radius: 6px; }
.admin-edit-lock span { color: #f0bc49; }
.admin-edit-lock small { color: #7e8689; }
.admin-edit-actions { display: flex; justify-content: flex-end; gap: 8px; }
.admin-ad-gallery { overflow: hidden; border: 1px solid #40474a; border-top: 3px solid var(--gold); border-radius: 9px; background: #0e1213; }
.admin-ad-gallery__head { display: flex; align-items: center; justify-content: space-between; gap: 18px; padding: 17px 18px; border-bottom: 1px solid #33393c; }
.admin-ad-gallery__head h3 { margin: 3px 0 4px; color: #fff; font: 700 22px/1.1 Georgia, serif; }
.admin-ad-gallery__head p { max-width: 760px; margin: 0; color: #9ca4a7; font-size: 13px; line-height: 1.5; }
.admin-ad-gallery__head > strong { flex: 0 0 auto; padding: 8px 10px; color: var(--gold-light); border: 1px solid #6f531b; border-radius: 5px; font-size: 13px; }
.admin-ad-gallery__grid { display: grid; grid-template-columns: repeat(3, minmax(240px, 1fr)); gap: 12px; padding: 16px; }
.admin-ad-image-card { min-width: 0; overflow: hidden; border: 1px solid #394043; border-radius: 8px; background: #141819; transition: opacity .15s, border-color .15s; }
.admin-ad-image-card.is-marked-for-removal { opacity: .55; border-color: #b52d38; box-shadow: inset 0 0 0 1px #b52d38; }
.admin-ad-image-card__preview { position: relative; min-height: 210px; display: grid; place-items: center; overflow: hidden; color: #81898c; background: #07090a; }
.admin-ad-image-card__preview picture, .admin-ad-image-card__preview img { width: 100%; height: 100%; }
.admin-ad-image-card__preview img { position: absolute; inset: 0; object-fit: contain; }
.admin-ad-image-card__preview > b { position: absolute; top: 9px; left: 9px; padding: 5px 7px; color: #161107; background: var(--gold); border-radius: 4px; font-size: 12px; }
.admin-ad-image-card__preview > small { position: absolute; right: 7px; bottom: 7px; padding: 4px 6px; color: #fff; background: rgb(0 0 0 / .78); border-radius: 4px; font-size: 12px; }
.admin-ad-image-card__body { display: grid; gap: 10px; padding: 12px; }
.admin-ad-image-card__body > a { color: var(--gold-light); font-size: 12.5px; font-weight: 750; }
.admin-ad-image-primary, .admin-ad-image-remove { display: flex !important; grid-template-columns: 18px minmax(0, 1fr); align-items: center; gap: 8px !important; padding: 9px; border: 1px solid var(--line); border-radius: 5px; background: #101415; }
.admin-ad-image-primary input, .admin-ad-image-remove input { width: 16px !important; min-height: 16px !important; margin: 0; accent-color: var(--gold); }
.admin-ad-image-primary span { color: var(--gold-light) !important; }
.admin-ad-image-remove { color: #ff9da1 !important; border-color: #653039; }
.admin-ad-image-remove input { accent-color: #c6303a; }
.admin-ad-image-order { display: grid; gap: 5px; }
.admin-ad-image-order > span { color: #d9ddde; font-size: 12px; font-weight: 750; text-transform: uppercase; letter-spacing: .04em; }
.admin-ad-image-order > div { display: grid; grid-template-columns: 40px 1fr 40px; gap: 6px; }
.admin-ad-image-order button { min-height: 40px; color: #17130a; background: var(--gold); border: 0; border-radius: 5px; cursor: pointer; font-size: 17px; font-weight: 900; }
.admin-ad-image-order select { min-height: 40px; color: #fff; background: #161a1b; border: 1px solid var(--line); border-radius: 5px; text-align: center; }
.admin-ad-image-replace input[type="file"] { padding: 6px; font-size: 12.5px; }
.admin-ad-image-replace small { color: #858e91; line-height: 1.4; }
.admin-ad-gallery__warning { margin: 0 16px 16px; padding: 10px 12px; color: #d7bfc1; background: #1d1214; border: 1px solid #5c2f35; border-radius: 5px; font-size: 12.5px; line-height: 1.5; }
.admin-ad-gallery__empty { display: grid; gap: 5px; margin: 16px; padding: 24px; color: #a8b0b3; text-align: center; border: 1px dashed #495053; border-radius: 7px; }
.admin-ad-gallery__empty strong { color: #fff; font-size: 14px; }
.admin-ad-image-upload { display: grid; gap: 12px; padding: 16px; background: #101415; border-top: 1px solid #33393c; }
.admin-ad-image-upload > label { min-height: 112px; display: grid; grid-template-columns: 44px minmax(0, 1fr); align-content: center; align-items: center; gap: 3px 12px; padding: 16px; border: 2px dashed #8b6820; border-radius: 7px; cursor: pointer; }
.admin-ad-image-upload > label input { position: absolute; width: 1px; height: 1px; opacity: 0; pointer-events: none; }
.admin-ad-image-upload > label > span { grid-row: 1 / span 2; color: var(--gold); font-size: 29px; text-align: center; }
.admin-ad-image-upload > label > strong { color: #fff; font-size: 14px; }
.admin-ad-image-upload > label > small { color: #959da0; font-size: 12.5px; line-height: 1.45; }
.admin-ad-new-image-preview { display: grid; grid-template-columns: repeat(auto-fill, minmax(150px, 1fr)); gap: 8px; }
.admin-ad-new-image-preview > span { overflow: hidden; display: grid; gap: 5px; padding: 6px; color: #b9c0c2; background: #191e20; border: 1px solid #3c4346; border-radius: 5px; font-size: 12px; }
.admin-ad-new-image-preview img { width: 100%; height: 95px; object-fit: cover; border-radius: 3px; }

html[data-cms-theme="light"] .admin-ad-gallery, html[data-cms-theme="light"] .admin-ad-image-upload { background: #f7f2e9; border-color: #c9bcaa; }
html[data-cms-theme="light"] .admin-ad-gallery__head, html[data-cms-theme="light"] .admin-ad-image-upload { border-color: #c9bcaa; }
html[data-cms-theme="light"] .admin-ad-gallery__head h3, html[data-cms-theme="light"] .admin-ad-image-upload > label > strong, html[data-cms-theme="light"] .admin-ad-gallery__empty strong { color: #26231e; }
html[data-cms-theme="light"] .admin-ad-gallery__head p, html[data-cms-theme="light"] .admin-ad-image-upload > label > small, html[data-cms-theme="light"] .admin-ad-image-replace small { color: #696258; }
html[data-cms-theme="light"] .admin-ad-image-card, html[data-cms-theme="light"] .admin-ad-image-primary { background: #fffaf2; border-color: #c9bcaa; }
html[data-cms-theme="light"] .admin-ad-image-card__body input, html[data-cms-theme="light"] .admin-ad-image-card__body select { color: #26231e; background: #fff; border-color: #bcae9a; }
html[data-cms-theme="light"] .admin-ad-image-primary span { color: #815c12 !important; }
html[data-cms-theme="light"] .admin-ad-new-image-preview > span { color: #37322b; background: #fffaf2; border-color: #c9bcaa; }

@media (max-width: 1250px) {
    .admin-promotion-create { grid-template-columns: repeat(3, minmax(150px, 1fr)); }
    .admin-promotion-create .field-span { grid-column: 1 / -1; }
    .admin-promotion-record { grid-template-columns: repeat(3, minmax(150px, 1fr)); }
    .promotion-record-title, .promotion-note { grid-column: span 2; }
    .admin-ad-gallery__grid { grid-template-columns: repeat(2, minmax(240px, 1fr)); }
}

@media (max-width: 700px) {
    .admin-ad-commandbar, .admin-ad-commandbar form, .admin-ad-commandbar .button { width: 100%; }
    .admin-promotion-create, .admin-promotion-record, .admin-ad-edit-form { grid-template-columns: 1fr; }
    .admin-promotion-create .field-span, .admin-ad-edit-form .field-span, .promotion-record-title, .promotion-note { grid-column: auto; }
    .promotion-management-hint { align-items: flex-start; flex-direction: column; }
    .admin-ad-gallery__head { align-items: flex-start; flex-direction: column; }
    .admin-ad-gallery__grid { grid-template-columns: 1fr; padding: 10px; }
    .admin-ad-image-card__preview { min-height: 240px; }
}
.watermark-admin-grid { display: grid; grid-template-columns: minmax(280px, .8fr) minmax(420px, 1.2fr); gap: 24px; align-items: start; }
.watermark-preview { display: grid; gap: 9px; }
.watermark-preview > span { color: var(--gold, #e5a928); font-size: 12.5px; font-weight: 900; letter-spacing: .1em; }
.watermark-preview > div { min-height: 260px; display: grid; place-items: center; padding: 30px; overflow: hidden; background: linear-gradient(135deg, #d7dade 25%, #aeb4ba 25% 50%, #d7dade 50% 75%, #aeb4ba 75%); background-size: 30px 30px; border: 1px solid #4b5155; border-radius: 8px; }
.watermark-preview img { display: block; max-width: 85%; max-height: 190px; object-fit: contain; box-shadow: 0 4px 18px rgb(0 0 0 / .28); }
.watermark-preview small { color: #8d969b; line-height: 1.5; }
.watermark-metrics article:last-child strong { font-size: 18px; }

@media (max-width: 900px) {
    .watermark-admin-grid { grid-template-columns: 1fr; }
}
.frontend-settings-form { display: grid; gap: 16px; padding-bottom: 72px; }

/* Jedna glavna stavka "Korisnici" sa povezanim modulima u podmeniju. */
.admin-nav-group { margin: 0; }
.admin-nav-group > summary { min-height: 42px; display: grid; grid-template-columns: 28px 1fr auto; align-items: center; gap: 8px; padding: 9px 12px; color: #bec5c8; border-radius: 6px; cursor: pointer; list-style: none; font-size: 13.5px; }
.admin-nav-group > summary::-webkit-details-marker { display: none; }
.admin-nav-group > summary:hover, .admin-nav-group > summary.is-active { color: #151008; background: var(--gold); }
.admin-nav-group > summary b { transition: transform .18s ease; }
.admin-nav-group[open] > summary b { transform: rotate(180deg); }
.admin-nav-group > div { display: grid; gap: 2px; margin: 3px 0 5px 24px; padding-left: 12px; border-left: 1px solid #4b5052; }
.admin-nav-group > div a { min-height: 34px; display: flex; align-items: center; padding: 7px 10px; color: #aeb6b9; border-radius: 5px; font-size: 13px; }
.admin-nav-group > div a:hover, .admin-nav-group > div a.is-active { color: #f5f6f6; background: #252a2c; }
.admin-nav-group > div a.is-active { box-shadow: inset 2px 0 #e5ab2e; }

.registration-fields-admin { padding-bottom: 74px; }
.registration-field-row { display: grid; grid-template-columns: 170px minmax(300px, 1fr) 90px 110px 110px; align-items: center; gap: 10px; padding: 10px 13px; border-bottom: 1px solid var(--line); }
.registration-field-row--head { color: #e7b342; background: var(--surface-2); font-size: 13px; font-weight: 900; }
.registration-field-row > div { min-width: 0; display: grid; gap: 4px; }
.registration-field-row strong { font-size: 13.5px; }
.registration-field-row small { color: #899296; font-size: 12.5px; }
.registration-field-row input { min-width: 0; }
.compact-check { display: flex; align-items: center; gap: 7px; font-size: 13px; }
.compact-check input { width: auto; min-height: auto; accent-color: var(--gold); }
.page-heading__actions { display: flex; align-items: center; gap: 9px; }
@media (max-width: 980px) {
    .registration-field-row { grid-template-columns: 130px 1fr 80px; }
    .registration-field-row .compact-check { grid-column: span 1; }
    .registration-field-row--head span:nth-child(n+4) { display: none; }
}
.frontend-settings-form .panel { margin: 0; }
.frontend-section-switches { flex-wrap: wrap; }
.frontend-nav-admin { display: grid; gap: 8px; padding: 14px; }
.frontend-nav-admin article { display: grid; grid-template-columns: 90px minmax(190px, 1fr) 110px auto auto; align-items: end; gap: 10px; padding: 11px; background: var(--surface-2); border: 1px solid #313639; border-radius: 7px; }
.frontend-nav-admin article > span { align-self: center; color: #9ea6aa; font-size: 12.5px; font-weight: 900; text-transform: uppercase; }
.frontend-nav-admin label { display: grid; gap: 5px; }
.frontend-nav-admin label small { color: #81898d; font-size: 12px; }
.frontend-nav-admin .check-line { align-self: center; display: flex; }
.sticky-save-bar { position: sticky; z-index: 20; bottom: 12px; display: flex; align-items: center; justify-content: space-between; gap: 18px; padding: 12px 16px; color: #aeb5b8; background: rgb(13 16 17 / .96); border: 1px solid #8a6118; border-radius: 8px; box-shadow: 0 12px 35px rgb(0 0 0 / .45); }

@media (max-width: 1050px) {
    .frontend-nav-admin article { grid-template-columns: 80px 1fr 100px; }
    .frontend-nav-admin .check-line { grid-row: 2; }
}

/* Javne stranice: svi nacrti i objave se uređuju iz jednog admin menija. */
.content-page-admin-list { display: grid; gap: 12px; margin-bottom: 16px; max-width: 800px; }
.content-page-admin-list details { overflow: hidden; scroll-margin-top: 18px; }
.content-page-admin-list details > summary { min-height: 66px; display: flex; align-items: center; justify-content: space-between; gap: 16px; padding: 13px 16px; border-bottom: 1px solid transparent; cursor: pointer; list-style: none; }
.content-page-admin-list details > summary:hover { background: var(--surface-2); }
.content-page-admin-list details > summary::-webkit-details-marker { display: none; }
.content-page-admin-list details[open] > summary { border-bottom-color: var(--line); }
.content-page-admin-list details > summary span { min-width: 0; display: grid; gap: 4px; }
.content-page-admin-list details > summary b { overflow: hidden; font: 700 17px/1.2 Georgia, serif; text-overflow: ellipsis; white-space: nowrap; }
.content-page-admin-list details > summary small { color: var(--muted); font-size: 11.5px; }
.content-page-admin-list details > summary .status { flex: 0 0 auto; }
.content-page-admin-list .stack-form textarea, .content-page-admin-list .stack-form input:not([type=file]):not([type=number]) { max-width: 720px; }

/* P0 čitljivost administracije. */
.brand small, .admin-nav__pending small { font-size: 12.5px; }
.environment-badge, .data-truth-badge, th, .status { font-size: 13px; }
.media-evidence, .metric-card small, .panel__head p, .detail-list dt, .media-records span, .timeline span, .timeline time, .timeline-message { font-size: 13.5px; }
.admin-quick-links strong, .admin-quick-links small, .table-sub, .table-subline, .pagination { font-size: 13.5px; }
.admin-status-form label, .admin-status-form > div p, .decision-card label, .catalog-editor label, .catalog-edit-form label, .category-row, .category-row em { font-size: 13.5px; }
.source-snapshots header span, .source-snapshots code, .source-snapshots dt, .source-snapshots footer, .credit-ledger-admin time, .credit-ledger-admin span, .credit-ledger-admin b, .credit-ledger-admin small { font-size: 13px; }
.banner-slot-menu span, .banner-slot-menu small, .banner-admin-preview span, .banner-edit-form label > span, .banner-create-box summary, .device-visibility legend, .device-visibility label { font-size: 13px; }
.admin-promotion-create label, .admin-promotion-record label, .admin-ad-edit-form label, .promotion-record-title span, .promotion-management-hint { font-size: 13px; }
.banner-delete-form { display: flex; justify-content: flex-end; margin-top: 12px; padding-top: 12px; border-top: 1px solid var(--line); }
.credit-refund-form { grid-column: 2 / -1; display: grid; grid-template-columns: 110px minmax(180px, 1fr) auto; gap: 7px; margin-top: 7px; }
.credit-refund-form input { min-width: 0; min-height: 38px; padding: 7px 9px; color: #fff; background: var(--bg); border: 1px solid var(--line); border-radius: 5px; }
.credit-refund-form .button { min-height: 38px; }

@media (max-width: 760px) {
    .credit-refund-form { grid-template-columns: 1fr; }
}
.entitlement-permissions, .entitlement-limits { display: grid; gap: 9px; padding: 14px; border: 1px solid var(--line); border-radius: 8px; }
.entitlement-permissions legend, .entitlement-limits legend { padding: 0 7px; color: var(--gold-light); font-size: 13.5px; font-weight: 850; }
.entitlement-permissions { grid-template-columns: repeat(2, minmax(0, 1fr)); }
.entitlement-permissions label { min-width: 0; display: flex; align-items: flex-start; gap: 9px; padding: 10px; background: var(--bg); border: 1px solid #2d3336; border-radius: 6px; }
.entitlement-permissions input { width: 18px; min-height: 18px; accent-color: var(--gold); }
.entitlement-permissions b, .entitlement-permissions small, .entitlement-limits small { display: block; }
.entitlement-permissions small, .entitlement-limits small { margin-top: 3px; color: var(--muted); font-size: 13px; }
.entitlement-limits { grid-template-columns: repeat(4, minmax(0, 1fr)); }
.entitlement-limits label { min-width: 0; display: grid; gap: 7px; }
.entitlement-limits input { width: 100%; min-height: 42px; padding: 8px 10px; color: #fff; background: var(--bg); border: 1px solid #3b4245; border-radius: 6px; }
@media (max-width: 980px) { .entitlement-limits { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (max-width: 620px) { .entitlement-permissions, .entitlement-limits { grid-template-columns: 1fr; } }
.user-profile-tabs { position: sticky; z-index: 5; top: 0; display: flex; gap: 7px; overflow-x: auto; margin-bottom: 14px; padding: 10px; background: rgb(9 11 12 / .96); border: 1px solid var(--line); border-radius: 9px; backdrop-filter: blur(12px); }
.user-profile-tabs button { flex: 0 0 auto; min-height: 42px; padding: 0 15px; color: var(--muted); background: var(--surface-2); border: 1px solid var(--line); border-radius: 7px; font-weight: 750; cursor: pointer; }
.user-profile-tabs button:hover { color: #fff; border-color: #626b6f; }
.user-profile-tabs button.is-active { color: #17130a; background: var(--gold); border-color: var(--gold); }
[data-user-panel][hidden] { display: none !important; }
.human-editor > summary, .user-group-card > summary { list-style: none; cursor: pointer; }
.human-editor > summary::-webkit-details-marker, .user-group-card > summary::-webkit-details-marker { display: none; }
.human-editor > summary { min-height: 86px; display: flex; align-items: center; justify-content: space-between; gap: 16px; padding: 15px 18px; }
.human-editor > summary > span:first-child { display: grid; gap: 5px; }
.human-editor > summary small { color: var(--muted); font-size: 13px; font-weight: 500; }
.human-editor[open] > summary, .user-group-card[open] > summary { border-bottom: 1px solid var(--line); }
.human-editor > form, .user-group-settings { padding: 18px; }
.user-group-list { display: grid; gap: 14px; }
.user-group-card .panel__head { min-height: 82px; }
.user-group-card .panel__head > div { min-width: 0; }
.user-group-card .panel__head p { max-width: 760px; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.settings-section { min-width: 0; margin: 0; padding: 16px; background: var(--bg); border: 1px solid var(--line); border-radius: 8px; }
.settings-section__head { display: grid; gap: 4px; margin-bottom: 14px; }
.settings-section__head strong { color: var(--gold-light); }
.settings-section__head small { color: var(--muted); }
.settings-section.entitlement-permissions, .settings-section.entitlement-limits { margin: 0; }
.user-group-appearance { display: grid; grid-template-columns: minmax(220px, 1fr) minmax(150px, .35fr); gap: 10px; }
.user-group-appearance label { min-width: 0; }
.user-group-appearance input[type="color"] { width: 100%; min-height: 44px; padding: 4px; cursor: pointer; }
.user-group-icon { display: inline-grid; width: 27px; height: 27px; margin-right: 9px; place-items: center; border: 1px solid var(--group-color); border-radius: 50%; color: var(--group-color); font: 800 14px/1 Arial,sans-serif; vertical-align: middle; }
.user-group-summary-status { display: flex; flex-wrap: wrap; justify-content: flex-end; gap: 7px; }
.user-group-edit-hint { display: inline-flex; min-height: 29px; align-items: center; padding: 0 10px; color: #17130a; background: var(--gold); border-radius: 5px; font-size: 12.5px; font-weight: 900; letter-spacing: .035em; }
.user-group-copy-row { display: grid; grid-template-columns: minmax(0, 1fr) auto; align-items: end; gap: 10px; }
.user-group-copy-row label { min-width: 0; }
.user-group-copy-row .button { min-height: 44px; }
.user-group-create-summary { display: flex; align-items: center; justify-content: space-between; gap: 14px; padding: 14px 16px; border: 1px solid var(--gold-dark); border-radius: 8px; background: color-mix(in srgb, var(--panel) 88%, var(--gold) 12%); }
.user-group-create-summary span { color: var(--gold-light); font-size: 12.5px; font-weight: 900; letter-spacing: .08em; }
.user-group-create-summary strong { text-align: right; }
.group-default-help { margin: -6px 0 0; padding-left: 3px; }
.check-line input:disabled + span { opacity: .78; }
.user-group-history { margin: 0 18px 18px; border: 1px solid var(--line); border-radius: 8px; }
.user-group-history > summary { display: flex; min-height: 46px; align-items: center; justify-content: space-between; gap: 12px; padding: 10px 13px; color: var(--gold-light); font-weight: 800; cursor: pointer; }
.user-group-history > summary span { color: var(--muted); font-size: 13px; }
.user-group-history > div { display: grid; gap: 1px; padding: 0 12px 12px; }
.user-group-history article { display: grid; grid-template-columns: 125px minmax(180px, 1fr) minmax(130px, .5fr); gap: 10px; padding: 9px 10px; background: color-mix(in srgb, var(--panel) 95%, var(--gold) 5%); }
.user-group-history time, .user-group-history span, .user-group-history p { color: var(--muted); font-size: 13px; }
.premium-limit-editor { border: 1px solid var(--line); border-radius: 8px; background: color-mix(in srgb, var(--panel) 94%, var(--gold) 6%); }
.premium-limit-editor > summary { display: flex; min-height: 46px; align-items: center; justify-content: space-between; gap: 12px; padding: 10px 12px; color: var(--gold-light); font-weight: 800; cursor: pointer; }
.premium-limit-editor > summary span { color: var(--muted); font-size: 13px; font-weight: 650; }
.premium-limit-editor > .entitlement-limits { margin: 0 10px 10px; grid-template-columns: repeat(2, minmax(0, 1fr)); }
.premium-limit-editor > .form-help { margin: 0 12px 12px; }
.user-group-delete { display: flex; align-items: center; justify-content: space-between; gap: 18px; margin: 0 18px 18px; padding: 15px; border: 1px solid var(--line); border-radius: 8px; background: color-mix(in srgb, var(--panel) 92%, #a92830 8%); }
.user-group-delete > div { display: grid; gap: 4px; min-width: 0; }
.user-group-delete small { color: var(--muted); line-height: 1.45; }
.user-group-delete form { flex: 0 0 auto; }
.user-effective-group { display: grid; justify-items: end; gap: 3px; text-align: right; }
.user-effective-group small { color: var(--muted); font-size: 13.5px; }
.entitlement-permissions--grouped { margin: 12px 0 0; }
.entitlement-permissions--grouped:first-of-type { margin-top: 0; }
html[data-cms-theme="light"] .settings-section { color: #26231e; background: #f7f2e9; border-color: #d3c8b7; }
html[data-cms-theme="light"] .entitlement-permissions, html[data-cms-theme="light"] .entitlement-limits { border-color: #d3c8b7; }
html[data-cms-theme="light"] .entitlement-permissions label { color: #26231e; background: #fffdf8; border-color: #d3c8b7; }
html[data-cms-theme="light"] .entitlement-limits input { color: #28251f; background: #fffdf8; border-color: #bfb4a3; }

@media (max-width: 700px) {
    .human-editor > summary { align-items: stretch; flex-direction: column; }
    .human-editor > summary .button { width: 100%; }
    .user-profile-tabs { top: 0; }
    .user-profile-tabs button { min-height: 40px; padding: 0 12px; }
    .user-group-appearance { grid-template-columns: 1fr; }
    .user-group-copy-row { grid-template-columns: 1fr; }
    .user-group-copy-row .button { width: 100%; }
    .user-group-create-summary { align-items: flex-start; flex-direction: column; }
    .user-group-create-summary strong { text-align: left; }
    .user-group-history article { grid-template-columns: 1fr; gap: 3px; }
    .premium-limit-editor > .entitlement-limits { grid-template-columns: 1fr; }
    .user-group-delete { align-items: stretch; flex-direction: column; }
    .user-group-delete .button { width: 100%; }
    .user-effective-group { justify-items: start; text-align: left; }
}
.content-page-admin-list .stack-form { padding: 16px; }
.page-form-actions { display: flex; flex-wrap: wrap; justify-content: flex-end; gap: 8px; }
.contact-reason-admin-list { display: grid; gap: 8px; padding: 14px; }
.contact-reason-admin-row { display: grid; grid-template-columns: minmax(0, 1fr) auto; align-items: end; gap: 12px; padding: 12px; background: var(--surface-2); border: 1px solid var(--line); border-radius: 7px; }
.contact-reason-admin-row > form:first-child { display: grid; grid-template-columns: minmax(220px, 1fr) 110px auto auto; align-items: end; gap: 10px; }
.contact-reason-admin-meta { min-width: 150px; display: grid; justify-items: end; gap: 5px; color: #899194; font-size: 12.5px; }
.contact-reason-admin-meta small { max-width: 190px; text-align: right; }
.contact-reason-create { display: grid; grid-template-columns: minmax(250px, 1fr) auto; align-items: end; gap: 10px; padding: 0 14px 14px; }
.contact-message-text { max-width: 680px; color: #b8bec0; line-height: 1.55; white-space: pre-wrap; }

@media (max-width: 700px) {
    .content-page-admin-list details > summary { align-items: flex-start; flex-direction: column; }
    .page-form-actions, .page-form-actions .button { width: 100%; }
    .contact-reason-admin-row, .contact-reason-admin-row > form:first-child, .contact-reason-create { grid-template-columns: 1fr; }
    .contact-reason-admin-meta { justify-items: start; }
    .contact-reason-admin-meta small { text-align: left; }
}

/* P1 media galerija */
.media-metric-grid { margin-bottom: 14px; }
.media-filter-bar { display: grid; grid-template-columns: minmax(250px, 1.4fr) repeat(4, minmax(145px, .65fr)) auto auto; align-items: end; }
.media-filter-bar label { min-width: 0; }
.media-filter-bar input, .media-filter-bar select { width: 100%; }
.admin-media-grid { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 14px; }
.media-list-panel { margin-top: 10px; }
.media-admin-table .table-check { width: 44px; text-align: center; }
.media-admin-table input[type="checkbox"] { width: 18px; height: 18px; accent-color: var(--gold); }
.media-list-thumb { width: 112px; height: 76px; display: grid; place-items: center; overflow: hidden; color: var(--muted); background: var(--bg); border: 1px solid var(--line); border-radius: 6px; font-size: 12px; }
.media-list-thumb picture, .media-list-thumb img { width: 100%; height: 100%; display: block; }
.media-list-thumb img { object-fit: cover; }
.bulk-toolbar { display: flex; align-items: center; gap: 12px; padding: 12px 14px; background: var(--surface-2); border: 1px solid var(--line); border-radius: 7px; }
.bulk-toolbar small { color: var(--muted); }
.bulk-toolbar .button { margin-left: auto; }
.admin-media-card { min-width: 0; overflow: hidden; background: var(--surface); border: 1px solid var(--line); border-radius: 9px; }
.admin-media-card__preview { position: relative; min-height: 190px; display: grid; place-items: center; overflow: hidden; color: var(--muted); background: var(--bg); }
.admin-media-card__preview picture, .admin-media-card__preview img { width: 100%; height: 100%; }
.admin-media-card__preview img { position: absolute; inset: 0; object-fit: cover; }
.admin-media-card__preview > b { position: absolute; right: 9px; bottom: 9px; padding: 5px 7px; color: #17130a; background: var(--gold); border-radius: 4px; font-size: 12.5px; }
.admin-media-card__body { display: grid; gap: 12px; padding: 14px; }
.media-card-status { display: flex; align-items: center; justify-content: space-between; gap: 10px; }
.media-card-status small { color: var(--muted); }
.admin-media-card h2 { min-height: 42px; margin: 0; overflow: hidden; font-size: 14px; line-height: 1.45; }
.admin-media-card dl { display: grid; gap: 7px; margin: 0; }
.admin-media-card dl > div { display: flex; justify-content: space-between; gap: 10px; padding-bottom: 6px; border-bottom: 1px solid #292f32; }
.admin-media-card dt { color: var(--muted); font-size: 12.5px; }
.admin-media-card dd { min-width: 0; margin: 0; overflow: hidden; color: #e5e8e9; font-size: 12.5px; text-overflow: ellipsis; white-space: nowrap; }
.admin-media-card dd a { color: var(--gold-light); }
.admin-media-detail { display: grid; grid-template-columns: minmax(0, 1.35fr) minmax(340px, .65fr); gap: 14px; }
.admin-media-detail__preview { min-height: 480px; display: grid; place-items: center; background: #07090a; }
.admin-media-detail__preview picture, .admin-media-detail__preview img { display: block; width: 100%; height: 100%; }
.admin-media-detail__preview img { max-height: 680px; object-fit: contain; }
.media-integrity-notice { margin: 18px; }
.media-integrity-list { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 10px; padding: 18px; }
.media-integrity-list > div { display: grid; gap: 5px; padding: 13px; background: rgb(230 170 46 / .06); border: 1px solid rgb(230 170 46 / .3); border-radius: 7px; }
.media-integrity-list strong { color: var(--gold-light); }
.media-integrity-list span { color: var(--muted); font-size: 13px; line-height: 1.5; }
.media-control-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 14px; }
.media-control-grid .stack-form { padding: 0 18px 18px; }

@media (max-width: 1250px) {
    .media-filter-bar { grid-template-columns: repeat(3, minmax(0, 1fr)); }
    .admin-media-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); }
}

@media (max-width: 900px) {
    .admin-media-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
    .admin-media-detail, .media-control-grid { grid-template-columns: 1fr; }
    .admin-media-detail__preview { min-height: 360px; }
}

@media (max-width: 620px) {
    .media-filter-bar, .admin-media-grid, .media-integrity-list { grid-template-columns: 1fr; }
    .media-filter-bar .button { width: 100%; }
    .admin-media-card__preview { min-height: 220px; }
    .bulk-toolbar { align-items: stretch; flex-direction: column; }
    .bulk-toolbar .button { width: 100%; margin-left: 0; }
    .media-list-thumb { width: 88px; height: 64px; }
}

/* Operacije: bezbedan audit i kontrola neuspešnih queue poslova */
.operations-audit-filter { grid-template-columns: minmax(210px, 1.4fr) minmax(180px, 1fr) minmax(220px, 1.2fr) minmax(130px, .7fr) auto auto; margin: 0 0 16px; }
.inline-retry-form { min-width: 310px; display: grid; grid-template-columns: minmax(150px, 1fr) auto; gap: 8px; }
.inline-retry-form input { min-width: 0; }

@media (max-width: 1180px) {
    .operations-audit-filter { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}

@media (max-width: 720px) {
    .operations-audit-filter, .inline-retry-form { grid-template-columns: 1fr; }
    .inline-retry-form { min-width: 230px; }
}

/* Obavezna čitljivost CMS-a: nijedna operativna informacija nije sitnija od 12px. */
.admin-page { font-size: 14px; }
.admin-page small,
.admin-page .table-sub,
.admin-page .eyebrow,
.admin-page .status,
.admin-page label > span,
.admin-page label > small,
.admin-page legend,
.admin-page dt { font-size: 13.5px !important; line-height: 1.45; }
.admin-page :is(input, select, textarea, button) { font-size: 14px; }
.admin-page :is(th, td) { font-size: 13.5px; line-height: 1.45; }
.admin-nav a, .admin-nav summary, .admin-nav-group a { font-size: 14px; }
@media (max-width: 620px) {
    .admin-page :is(input, select, textarea, button) { font-size: 16px; }
}
.permission-safety-note{padding:18px 20px;margin-bottom:16px;border-left:3px solid var(--gold)}
.permission-safety-note p{margin:6px 0 0;color:var(--muted)}
.role-permission-list{display:grid;gap:14px}
.role-permission-card>summary{cursor:pointer;list-style:none;padding:18px 20px}
.role-permission-card>summary::-webkit-details-marker{display:none}
.role-permission-card>form{padding:0 20px 22px;border-top:1px solid var(--line)}
.permission-area{border:0;padding:18px 0 0;margin:0}
.permission-area legend{font-weight:800;color:var(--gold);padding:0}
.permission-check-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));column-gap:22px;margin-top:6px}
.permission-check-grid label{display:flex;gap:10px;align-items:center;padding:9px 4px;border-bottom:1px solid var(--surface-3);cursor:pointer}
.permission-check-grid label:hover{background:var(--surface-2)}
.permission-check-grid label:last-child{border-bottom:0}
.permission-check-grid input{flex-shrink:0;width:16px;height:16px;accent-color:var(--gold)}
.permission-check-grid label>span{display:grid;gap:2px;margin-bottom:0;font-size:14px}
.permission-check-grid small{color:var(--muted);font-size:13px}
@media(max-width:760px){.permission-check-grid{grid-template-columns:1fr}}
@media(max-width:760px){.dashboard-workspace{grid-template-columns:1fr}.dashboard-work-card{grid-template-columns:38px 1fr}.dashboard-work-card>b{grid-column:2}.dashboard-attention{align-items:stretch;flex-direction:column}.dashboard-attention>strong{margin-right:0}}
.credit-overview-grid{display:grid;grid-template-columns:minmax(260px,.75fr) minmax(0,1.25fr);gap:18px}.credit-overview-grid h3{margin:0 0 10px}.credit-balance-row,.credit-ledger-row{display:grid;align-items:center;gap:10px;padding:11px 0;border-bottom:1px solid var(--line);color:var(--text);text-decoration:none}.credit-balance-row{grid-template-columns:1fr auto}.credit-ledger-row{grid-template-columns:110px 1fr auto}.credit-balance-row span,.credit-ledger-row span{display:grid;gap:3px}.credit-balance-row small,.credit-ledger-row small{color:var(--muted)}.credit-ledger-row time{color:var(--muted);font-size:13px}.credit-ledger-row .is-positive{color:#68c98a}.credit-ledger-row .is-negative{color:#ff6c6c}
@media(max-width:900px){.credit-overview-grid{grid-template-columns:1fr}.credit-ledger-row{grid-template-columns:90px 1fr auto}}
.layout-page-tabs{display:flex;gap:6px;position:sticky;top:0;z-index:5;padding:10px 0;margin-bottom:14px;background:var(--bg)}
.layout-page-tabs button{padding:10px 15px;border:1px solid var(--line);border-radius:7px;color:var(--muted);background:transparent;cursor:pointer;font-weight:700;transition:border-color .15s,color .15s,background .15s}
.layout-page-tabs button:hover{border-color:#566064;color:var(--text)}
.layout-page-tabs button.is-active{border-color:#9c7414;color:#f7c44d;background:#181711;box-shadow:inset 0 -2px #e9ab22}
.site-layout-board{scroll-margin-top:70px}
.site-layout-board[hidden]{display:none}
.site-layout-board .panel__head{margin-bottom:4px}
.site-layout-map{display:grid;gap:7px;padding:4px 0 18px}
.site-layout-map article{display:grid;grid-template-columns:58px minmax(240px,1fr) auto 76px;gap:14px;align-items:center;min-height:68px;padding:9px 12px;border:1px solid var(--line);border-radius:7px;background:var(--surface-2);cursor:grab;transition:border-color .15s,background .15s,transform .15s}
.site-layout-map article:hover{border-color:#465055;background:#14191a}
.site-layout-map article.is-dragging{opacity:.45;transform:scale(.995)}
.site-layout-map .layout-drag-handle{display:flex;align-items:center;justify-content:space-between;width:58px;height:42px;padding:0 9px;border-right:1px solid var(--line);border-radius:0;background:transparent;color:#7e898d;font-size:15px;font-weight:700;cursor:grab}
.site-layout-map .layout-drag-handle b{color:#b8c1c4;font-size:13.5px;letter-spacing:.06em}
.site-layout-map .layout-drag-handle i{font-style:normal;font-size:19px;line-height:1;color:#667175}
.site-layout-map .layout-block-label{display:grid;gap:3px;text-align:left;min-width:0}
.site-layout-map .layout-block-label strong{color:var(--text);font-size:14px;line-height:1.25}
.site-layout-map .layout-block-label small{color:#7f8c91;font-size:13px}
.site-layout-map .layout-visibility{display:flex;align-items:center;gap:9px;min-width:110px;color:#aab4b7;font-size:13.5px;cursor:pointer}
.site-layout-map .layout-visibility input{appearance:none;width:40px;height:22px;margin:0;border:1px solid #465055;border-radius:999px;background:radial-gradient(circle at 8px 50%,#aeb7ba 0 5px,transparent 6px),#242b2d;cursor:pointer;transition:.18s}
.site-layout-map .layout-visibility input:checked{border-color:#8b6815;background:radial-gradient(circle at 30px 50%,#111 0 5px,transparent 6px),#e6a91f}
.site-layout-map .layout-visibility input:disabled{opacity:.6;cursor:not-allowed}
.site-layout-map .layout-move-controls{grid-row:auto;grid-column:auto;display:flex;gap:5px;align-self:center}
.site-layout-map .layout-move-controls button{width:34px;height:34px;min-height:0;padding:0;border:1px solid #374044;border-radius:6px;background:#191e20;color:#aab4b7;font-size:15px;font-weight:700;cursor:pointer}
.site-layout-map .layout-move-controls button:hover,.site-layout-map .layout-move-controls button:focus-visible{border-color:#9c7414;background:#201d15;color:#f2b62c}
.site-layout-save{display:flex;justify-content:space-between;align-items:center;padding-top:14px;border-top:1px solid var(--line);color:var(--muted)}
.homepage-module-card--repeatable{align-items:start;cursor:default}
.homepage-module-card--repeatable .homepage-module-drag{cursor:grab}
.homepage-module-card--repeatable .homepage-module-action{cursor:pointer}
.homepage-module-action--danger{color:#f0a3a8;border-color:#7a3236}
.homepage-module-action--danger:hover{border-color:#c65b62;color:#ffc7ca}
.homepage-module-card--template{border-style:dashed;cursor:grab}
.homepage-module-card--template .homepage-module-drag{font-size:22px;color:#b4841b}
.homepage-module-card--template form{display:contents}
.homepage-module-buttons{display:flex;flex:0 0 auto;gap:6px}
button.homepage-module-copy{display:grid;width:100%;min-width:0;padding:0;margin:0;color:inherit;font:inherit;text-align:left;background:none;border:none;cursor:pointer}
.homepage-module-fields{grid-column:1/-1;display:flex;flex-wrap:wrap;align-items:flex-end;gap:9px 12px;margin:2px 0 0;padding-top:10px;border-top:1px dashed var(--line)}
.homepage-module-fields[hidden]{display:none}
.homepage-module-fields label{display:flex;flex:1 1 130px;min-width:110px;flex-direction:column;gap:4px}
.homepage-module-fields label>span{color:var(--muted);font-size:11.5px}
.homepage-module-fields input,.homepage-module-fields select{width:100%;min-height:34px;padding:0 8px;color:var(--text);background:var(--bg);border:1px solid var(--line);border-radius:6px;outline:none;font-size:12.5px}
.homepage-module-toggle{display:flex;flex:0 0 auto;align-items:center;gap:7px;min-width:0;color:#aab4b7;font-size:12.5px;cursor:pointer}
.homepage-module-status{flex:0 0 auto;align-self:center;min-width:74px;color:var(--gold-light);font-size:12px;font-weight:700}
@media(max-width:820px){.site-layout-map article{grid-template-columns:50px minmax(0,1fr) 72px;gap:10px}.site-layout-map .layout-drag-handle{width:50px;padding:0 6px}.site-layout-map .layout-visibility{grid-column:2;min-width:0}.site-layout-map .layout-move-controls{grid-column:3;grid-row:1/3}.layout-page-tabs{overflow-x:auto}.layout-page-tabs button{white-space:nowrap}.site-layout-save{align-items:stretch;flex-direction:column;gap:10px}}
@media(max-width:520px){.site-layout-map article{grid-template-columns:42px minmax(0,1fr);padding:9px}.site-layout-map .layout-drag-handle{width:42px}.site-layout-map .layout-move-controls{grid-column:2;grid-row:auto;justify-content:flex-end}.site-layout-map .layout-visibility{grid-column:2}.site-layout-map .layout-block-label strong{font-size:14px}}

/* CMS tema: izbor se pamti lokalno i ne utiče na javni sajt. */
.admin-topbar__actions{display:flex;align-items:center;gap:9px}
.admin-mobile-nav-toggle,.admin-nav-backdrop{display:none}
.admin-topbar__identity{display:flex;align-items:center;gap:12px;min-width:0}.admin-topbar__identity>div{display:grid;gap:5px;min-width:0}
.cms-theme-toggle{display:inline-flex;align-items:center;gap:7px;min-height:36px;padding:0 13px;border:1px solid #b48528;border-radius:6px;background:#211b10;color:#f2c75f;cursor:pointer;text-transform:uppercase;letter-spacing:.04em}
.cms-theme-toggle span{color:var(--gold);font-size:16px}.cms-theme-toggle b{font-size:12.5px}.cms-theme-toggle:hover{border-color:var(--gold)}
html[data-cms-theme="light"]{color-scheme:light;--bg:#ebe5d9;--surface:#faf7f0;--surface-2:#f2ecdf;--surface-3:#e8dfd0;--line:#d3c8b7;--gold:#ad7719;--gold-light:#c58c25;--red:#b7333b;--green:#267b55;--text:#26231e;--muted:#716b61;--shadow:0 18px 48px rgb(85 66 35 / .14)}
html[data-cms-theme="light"] body.admin-page{background:#ebe5d9;color:var(--text)}
html[data-cms-theme="light"] .admin-sidebar{background:#f5f0e6;border-color:#d6ccbb;box-shadow:4px 0 18px rgb(71 57 34 / .05)}
html[data-cms-theme="light"] .admin-sidebar .brand,html[data-cms-theme="light"] .admin-sidebar__foot{border-color:#d9cfbf}
html[data-cms-theme="light"] .admin-nav a,html[data-cms-theme="light"] .admin-nav__pending,html[data-cms-theme="light"] .admin-nav-group summary{color:#514d46}
html[data-cms-theme="light"] .admin-nav a:hover,html[data-cms-theme="light"] .admin-nav-group summary:hover{color:#201e1a;background:#e9e1d3}
html[data-cms-theme="light"] .admin-nav a.is-active,html[data-cms-theme="light"] .admin-nav-group summary.is-active{color:#211b0f;background:linear-gradient(135deg,#e7bb55,#d69b25)}
html[data-cms-theme="light"] .admin-nav-group>div{border-color:#d5c8b5}
html[data-cms-theme="light"] .admin-topbar{background:#fffdf8;border-color:#d8cebd;box-shadow:0 3px 14px rgb(77 61 34 / .06)}
html[data-cms-theme="light"] .cms-theme-toggle{border-color:#c9bdab;background:#f3ecdf;color:#302d27}
html[data-cms-theme="light"] .environment-badge,html[data-cms-theme="light"] .data-truth-badge{color:#82590e;background:#f5ead2;border-color:#d3b673}
html[data-cms-theme="light"] .admin-main :is(.panel,.metric-card,.dashboard-shortcuts,.dashboard-facts,.dashboard-stat,.dashboard-work-card,.admin-filter-bar,.check-line,.frontend-layout-map article,.site-layout-map article){background:#faf7f0;border-color:#d3c8b7;color:#26231e;box-shadow:none}
html[data-cms-theme="light"] .admin-main :is(.dashboard-stat,.dashboard-work-card,.site-layout-map article):hover{background:#fffdf8;border-color:#b78a30}
html[data-cms-theme="light"] .admin-main :is(h1,h2,h3,strong,td strong,.layout-block-label strong,.dashboard-stat__body strong){color:#26231e}
html[data-cms-theme="light"] .admin-main :is(p,small,.muted,td,.layout-block-label small){color:#716b61}
html[data-cms-theme="light"] .admin-main :is(input:not([type="checkbox"]):not([type="radio"]),select,textarea){color:#28251f;background-color:#fffdf8;border-color:#bfb4a3;color-scheme:light}
html[data-cms-theme="light"] .admin-main :is(input,select,textarea):focus{border-color:#ad7719;box-shadow:0 0 0 3px rgb(173 119 25 / .12)}
html[data-cms-theme="light"] .button--outline{color:#302d27;background:#f7f2e8;border-color:#bfb4a3}
html[data-cms-theme="light"] .button--outline:hover{background:#ece3d5;border-color:#a77b2a}

/* Header/Footer menu builder */
.menu-create-panel{margin-top:16px}.menu-create-form{display:grid;grid-template-columns:1fr 180px 1fr;align-items:end;gap:12px;padding:18px}.menu-create-form>label,.menu-item-editor label{display:grid;gap:7px}.menu-create-form>label>span,.menu-item-editor label>span{color:#c5cbcd;font-size:13px;font-weight:750}.menu-create-form .check-line{min-height:44px}.menu-create-form>.button{min-height:44px}
.menu-builder{margin-top:16px}.menu-builder__toolbar{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:18px;border:1px solid var(--line);border-radius:9px 9px 0 0;background:var(--surface)}.menu-builder__toolbar h2{margin:3px 0 0;font:700 25px/1.1 Georgia,serif}.menu-builder__toolbar p{margin:5px 0 0;color:var(--muted);font-size:13.5px}.menu-builder__toolbar>div:last-child{display:flex;align-items:center;gap:12px}.menu-save-state{color:var(--muted);font-size:13px}.menu-save-state.is-changed{color:var(--gold-light);font-weight:750}.menu-builder__columns{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;padding-top:14px}.menu-builder-column{overflow:hidden;border:1px solid var(--line);border-radius:9px;background:var(--surface)}.menu-builder-column>header{display:flex;align-items:flex-start;justify-content:space-between;gap:14px;padding:15px 16px;border-bottom:1px solid var(--line)}.menu-builder-column>header span{color:var(--gold-light);font-size:12.5px;font-weight:850;letter-spacing:.08em}.menu-builder-column>header h3{margin:3px 0 0;font:700 20px/1.1 Georgia,serif}.menu-builder-column>header p{margin:5px 0 0;color:var(--muted);font-size:13px}.menu-builder-column>header>b{padding:6px 9px;border:1px solid #4c4228;border-radius:15px;color:#d5b968;font-size:12.5px;white-space:nowrap}
.menu-builder-root{min-height:130px;padding:12px}.menu-builder-item{margin:0 0 9px;border:1px solid var(--line);border-radius:7px;background:#15191a;transition:opacity .15s,border-color .15s}.menu-builder-item.is-dragging{opacity:.42}.menu-builder-item__summary{display:grid;grid-template-columns:28px minmax(0,1fr) auto auto;align-items:center;gap:9px;min-height:58px;padding:8px 10px}.menu-drag-handle{display:grid;width:28px;height:34px;place-items:center;border:1px solid #4b4f50;border-radius:5px;color:#d5b968;background:#0e1112;font-size:18px;cursor:grab}.menu-drag-handle:active{cursor:grabbing}.menu-builder-item__name{min-width:0}.menu-builder-item__name strong,.menu-builder-item__name small{display:block}.menu-builder-item__name strong{overflow:hidden;color:#f1f2f2;font-size:14px;text-overflow:ellipsis;white-space:nowrap}.menu-builder-item__name small{margin-top:4px;overflow:hidden;color:#879194;font-size:12.5px;text-overflow:ellipsis;white-space:nowrap}.menu-builder-item .status{padding:4px 7px;border-radius:12px;font-size:12px;font-weight:800}.menu-builder-item .status--ok{color:#78d99c;background:#123622}.menu-builder-item .status--muted{color:#a0a8aa;background:#292e30}
.menu-item-editor{position:relative}.menu-item-editor>summary{padding:7px 10px;border:1px solid #42494b;border-radius:5px;color:#d9dcdd;font-size:12.5px;font-weight:750;cursor:pointer;list-style:none}.menu-item-editor>summary::-webkit-details-marker{display:none}.menu-item-editor[open]>summary{border-color:#9c7422;color:var(--gold-light)}.menu-item-editor__body{position:fixed;z-index:60;top:50%;left:50%;transform:translate(-50%,-50%);width:min(560px,calc(100vw - 32px));max-height:min(82vh,680px);overflow:auto;padding:16px;border:1px solid #665020;border-radius:9px;background:var(--surface-2);box-shadow:0 24px 64px rgb(0 0 0 / .55)}.menu-item-editor__body form{display:grid;gap:10px}.menu-item-editor__body form+form{margin-top:9px;padding-top:9px;border-top:1px solid var(--line)}.menu-item-editor__body .check-line{min-height:42px}.menu-builder-children{min-height:36px;margin:0 10px 10px 46px;padding:8px 8px 1px;border:1px dashed #3b4244;border-radius:6px;background:#101314}.menu-builder-children>.menu-builder-item .menu-builder-item__summary{grid-template-columns:28px minmax(0,1fr) auto auto}.menu-drop-hint{display:none;margin:0;padding:11px;color:#8d9698;font-size:12.5px;text-align:center}.menu-builder-children:empty+.menu-drop-hint{display:block}.menu-builder-children>.menu-drop-hint:only-child{display:block}.menu-builder-root>.menu-drop-hint--root:only-child{display:block}.menu-builder-root.is-drop-target,.menu-builder-children.is-drop-target{border-color:var(--gold);background:rgb(226 171 48 / .06)}
html[data-cms-theme="light"] :is(.menu-create-panel,.menu-builder__toolbar,.menu-builder-column,.menu-builder-item){background:#faf7f0;border-color:#d3c8b7;color:#26231e}html[data-cms-theme="light"] .menu-builder-children{background:#f3ede2;border-color:#c5bba9}html[data-cms-theme="light"] .menu-drag-handle{color:#755512;background:#fffaf1;border-color:#c9bcaa}html[data-cms-theme="light"] .menu-builder-item__name strong{color:#26231e}html[data-cms-theme="light"] .menu-builder-item__name small,html[data-cms-theme="light"] .menu-create-form>label>span,html[data-cms-theme="light"] .menu-item-editor label>span{color:#696258}html[data-cms-theme="light"] .menu-item-editor__body{background:#fffaf2;border-color:#b68b36;box-shadow:0 18px 40px rgb(80 63 35 / .2)}
@media(max-width:1450px){.menu-builder__columns{grid-template-columns:1fr 1fr}.menu-builder-column:last-child{grid-column:1/-1}}@media(max-width:1050px){.menu-create-form{grid-template-columns:1fr 1fr}.menu-builder__columns{grid-template-columns:1fr}.menu-builder-column:last-child{grid-column:auto}}
@media(max-width:680px){.menu-create-form{grid-template-columns:1fr}.menu-builder__toolbar{align-items:flex-start;flex-direction:column}.menu-builder__toolbar>div:last-child{width:100%;align-items:stretch;flex-direction:column}.menu-builder-item__summary{grid-template-columns:28px minmax(0,1fr) auto}.menu-builder-item__summary>.status{display:none}.menu-builder-children{margin-left:18px}}

/* Vizuelni uređivač početne strane */
.homepage-builder-head{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:20px;border:1px solid var(--line);border-radius:9px;background:var(--surface)}.homepage-builder-head h2{margin:4px 0 0;font:700 26px/1.1 Georgia,serif}.homepage-builder-head p{max-width:760px;margin:6px 0 0;color:var(--muted)}.homepage-builder-grid{display:grid;grid-template-columns:minmax(270px,.62fr) minmax(520px,1.38fr);align-items:start;gap:14px;margin-top:14px}.homepage-module-library,.homepage-canvas-shell{overflow:hidden;border:1px solid var(--line);border-radius:9px;background:var(--surface)}.homepage-module-library>header,.homepage-canvas-shell>header{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;padding:15px 16px;border-bottom:1px solid var(--line)}.homepage-module-library>header strong,.homepage-canvas-shell>header strong{display:block;font-size:16px}.homepage-module-library>header small,.homepage-canvas-shell>header small{display:block;margin-top:4px;color:var(--muted)}.homepage-canvas-shell>header>span{padding:6px 9px;border:1px solid #4c4228;border-radius:16px;color:#aeb6b8;white-space:nowrap}.homepage-canvas-shell>header>span b{color:var(--gold-light)}.homepage-module-list,.homepage-canvas{min-height:160px;padding:11px;background:#0e1112}.homepage-module-list{max-height:min(70vh,640px);overflow-y:auto}.homepage-canvas{min-height:360px}.homepage-module-card{display:grid;grid-template-columns:28px minmax(0,1fr) auto;align-items:center;gap:10px;margin-bottom:8px;padding:11px;border:1px solid var(--line);border-radius:7px;background:#15191a;cursor:grab;transition:border-color .15s,background .15s,opacity .15s}.homepage-module-card:hover{border-color:#525b5e;background:#181d1f}.homepage-module-card.is-active{border-left:3px solid #b4841b}.homepage-module-card.is-dragging{opacity:.42}.homepage-module-drag{display:grid;width:28px;height:38px;place-items:center;color:#8f999c;font-size:19px}.homepage-module-copy{display:grid;min-width:0}.homepage-module-copy small{color:var(--gold-light)!important;font-size:12.5px!important;font-weight:850;letter-spacing:.06em}.homepage-module-copy strong{margin-top:3px;color:#eef0f0;font-size:14px}.homepage-module-copy em{margin-top:4px;color:#849093;font-size:13px;font-style:normal;line-height:1.35}.homepage-module-action{min-height:34px;padding:0 10px;border:1px solid #4b5356;border-radius:5px;color:#d9ddde;background:var(--surface-2);cursor:pointer;font-size:13px;font-weight:750}.homepage-module-action:hover{border-color:#a67b20;color:var(--gold-light)}.homepage-drop-placeholder{margin:0;padding:24px 12px;color:#7e898c;text-align:center;font-size:13px}.homepage-drop-placeholder[hidden]{display:none}.homepage-module-list.is-drop-target,.homepage-canvas.is-drop-target{outline:2px dashed #a77a1c;outline-offset:-6px;background:rgb(225 169 41 / .05)}.homepage-canvas-fixed{display:grid;grid-template-columns:34px minmax(0,1fr) auto;align-items:center;gap:10px;margin:11px 11px 0;padding:11px;border:1px solid #3c4345;border-radius:7px;background:#121617}.homepage-canvas-fixed>span{display:grid;width:31px;height:31px;place-items:center;border-radius:50%;color:#9ca5a7;background:#23292b;font-size:12.5px;font-weight:800}.homepage-canvas-fixed strong,.homepage-canvas-fixed small{display:block}.homepage-canvas-fixed small{margin-top:4px;color:var(--muted)}.homepage-canvas-fixed>b{color:#7f898b;font-size:12.5px}.homepage-canvas-fixed--footer{margin:0 11px 11px}.homepage-builder-grid+.site-layout-save{margin-top:14px}
html[data-cms-theme="light"] :is(.homepage-builder-head,.homepage-module-library,.homepage-canvas-shell){background:#faf7f0;border-color:#d3c8b7}html[data-cms-theme="light"] :is(.homepage-module-list,.homepage-canvas){background:#f2ecdf}html[data-cms-theme="light"] .homepage-module-card{background:#fffdf8;border-color:#d3c8b7}html[data-cms-theme="light"] .homepage-module-card:hover{background:#fffaf1;border-color:#b88a31}html[data-cms-theme="light"] .homepage-module-copy strong{color:#26231e}html[data-cms-theme="light"] .homepage-module-copy em{color:#716b61}html[data-cms-theme="light"] .homepage-module-action{color:#4f4a42;background:#f4ede1;border-color:#c8bdac}html[data-cms-theme="light"] .homepage-canvas-fixed{background:#f7f2e9;border-color:#d3c8b7}html[data-cms-theme="light"] .homepage-canvas-fixed>span{color:#554f46;background:#e5dccd}
@media(max-width:1050px){.homepage-builder-grid{grid-template-columns:1fr}.homepage-canvas{min-height:240px}}
@media(max-width:650px){.homepage-builder-head{align-items:stretch;flex-direction:column}.homepage-module-card{grid-template-columns:25px minmax(0,1fr)}.homepage-module-action{grid-column:2;width:100%}.homepage-canvas-fixed{grid-template-columns:30px minmax(0,1fr)}.homepage-canvas-fixed>b{grid-column:2}.homepage-builder-grid+.site-layout-save{align-items:stretch;flex-direction:column;gap:10px}}
.moderation-policy-panel{margin-bottom:14px}.moderation-policy-panel>form{display:grid;grid-template-columns:1fr 1fr auto;align-items:stretch;gap:10px;padding:16px}.moderation-policy-choice{display:grid;grid-template-columns:22px minmax(0,1fr);align-items:start;gap:9px;padding:13px;border:1px solid #394043;border-radius:7px;background:#121617;cursor:pointer}.moderation-policy-choice.is-selected{border-color:#a47a20;background:rgb(222 166 39 / .07)}.moderation-policy-choice input{margin-top:3px}.moderation-policy-choice span{display:grid;gap:4px}.moderation-policy-choice strong{font-size:14px}.moderation-policy-choice small{color:var(--muted)}html[data-cms-theme="light"] .moderation-policy-choice{background:#f7f2e9;border-color:#d3c8b7}html[data-cms-theme="light"] .moderation-policy-choice.is-selected{border-color:#ad7719;background:#f7ecd5}@media(max-width:1050px){.moderation-policy-panel>form{grid-template-columns:1fr}.moderation-policy-panel>form>.button{width:100%}}
html[data-cms-theme="light"] table{background:#faf7f0}html[data-cms-theme="light"] th,html[data-cms-theme="light"] td{border-color:#ddd3c4}html[data-cms-theme="light"] th{color:#6a6359}
html[data-cms-theme="light"] .dashboard-stat>i{background:#ded6c9}
html[data-cms-theme="light"] .dashboard-shortcuts a,html[data-cms-theme="light"] .dashboard-facts>div,html[data-cms-theme="light"] .dashboard-facts>a{border-color:#d8cebd}
html[data-cms-theme="light"] .dashboard-shortcuts a:hover,html[data-cms-theme="light"] .dashboard-facts>a:hover{background:#f1e9dc}
html[data-cms-theme="light"] .site-layout-map .layout-drag-handle{border-color:#d2c7b6}html[data-cms-theme="light"] .site-layout-map .layout-drag-handle b{color:#655f56}
html[data-cms-theme="light"] .site-layout-map .layout-move-controls button{color:#514b42;background:#eee6d9;border-color:#c9bead}
html[data-cms-theme="light"] .site-layout-map .layout-move-controls button:hover{color:#7c540c;background:#f5ead5;border-color:#b4872c}
html[data-cms-theme="light"] .notice--success{color:#1f6949;background:#e5f3eb}html[data-cms-theme="light"] .notice--error{color:#9d2e35;background:#f8e7e7}
@media(max-width:560px){.cms-theme-toggle b{display:none}.admin-topbar__actions{gap:5px}.cms-theme-toggle{width:36px;padding:0;justify-content:center}}
.theme-default-choice{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.theme-default-choice label{display:flex;align-items:flex-start;gap:10px;padding:13px;background:var(--surface-2);border:1px solid var(--line);border-radius:7px}.theme-default-choice span{display:grid;gap:4px}.theme-default-choice small{color:var(--muted)}
.admin-global-search{display:flex;overflow:hidden;width:min(26vw,310px);height:36px;border:1px solid var(--line);border-radius:6px;background:var(--surface)}.admin-global-search label{flex:1;min-width:0}.admin-global-search input{width:100%;height:100%;padding:0 10px;color:var(--text);background:transparent;border:0;outline:0}.admin-global-search button{width:38px;color:var(--gold);background:var(--surface-2);border:0;border-left:1px solid var(--line);font-size:18px}.admin-search-page{display:grid;grid-template-columns:minmax(240px,1fr) auto;align-items:end;gap:10px;margin-bottom:14px;padding:14px;background:var(--surface);border:1px solid var(--line);border-radius:8px}.admin-search-page label{display:grid;gap:5px}.admin-search-page input{min-height:42px;padding:0 12px}.admin-search-results{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.admin-search-result{display:grid;grid-template-columns:50px minmax(0,1fr) auto;align-items:center;gap:10px;min-height:66px;padding:10px 14px;border-top:1px solid var(--line);color:var(--text);text-decoration:none}.admin-search-result:hover{background:var(--surface-2)}.admin-search-result>span{color:var(--muted)}.admin-search-result>div{display:grid;gap:4px}.admin-search-result small{color:var(--muted)}.admin-search-result>b{color:var(--gold);font-size:12.5px}
html[data-cms-theme="light"] .admin-global-search,html[data-cms-theme="light"] .admin-search-page{background:#faf7f0;border-color:#d3c8b7}html[data-cms-theme="light"] .admin-global-search input{color:#28251f}html[data-cms-theme="light"] .admin-global-search button{background:#f2ecdf;border-color:#d3c8b7}
@media(max-width:980px){.admin-global-search{width:190px}.admin-search-results{grid-template-columns:1fr}}@media(max-width:700px){.admin-global-search{display:none}.theme-default-choice{grid-template-columns:1fr}.admin-search-page{grid-template-columns:1fr}}
.admin-user-ad-thumb{display:block;width:58px;height:42px;object-fit:cover;border:1px solid var(--line);border-radius:5px}.admin-user-ad-noimage{display:grid;width:58px;height:42px;place-items:center;color:var(--muted);background:var(--surface-2);border:1px solid var(--line);border-radius:5px}.row-actions{display:flex;flex-wrap:wrap;gap:6px}
@media(max-width:820px){
body.admin-nav-open{overflow:hidden}.admin-frame{display:block!important;overflow:visible!important}.admin-content{width:100%}
.admin-sidebar{position:fixed!important;z-index:90;top:0;bottom:0;left:0;width:min(86vw,310px)!important;max-width:310px!important;height:100dvh!important;padding:18px!important;overflow-y:auto!important;overflow-x:hidden!important;border-right:1px solid var(--line);box-shadow:20px 0 50px rgb(0 0 0 / .5);transform:translateX(-103%);transition:transform .2s ease}
.admin-sidebar.is-open{transform:translateX(0)}.admin-sidebar .brand{padding:0 8px 16px;border-bottom:1px solid #24292c}.admin-nav{width:100%;display:grid!important;gap:5px;overflow:visible!important;padding:16px 0}.admin-nav a,.admin-nav__pending{min-width:0!important;grid-template-columns:24px minmax(0,1fr) auto!important;white-space:normal}.admin-sidebar__foot{display:grid!important}
.admin-nav-backdrop{position:fixed;z-index:80;inset:0;width:100%;height:100%;padding:0;border:0;background:rgb(0 0 0 / .68);cursor:pointer}.admin-nav-backdrop.is-open{display:block}
.admin-mobile-nav-toggle{display:inline-flex;min-width:70px;min-height:40px;align-items:center;justify-content:center;gap:7px;padding:0 10px;color:#f3c65b;background:#17140d;border:1px solid #a87b20;border-radius:7px;cursor:pointer}.admin-mobile-nav-toggle span{font-size:18px}.admin-mobile-nav-toggle b{font-size:12.5px;text-transform:uppercase}
.admin-topbar{min-height:68px;padding:8px 14px!important;gap:10px}.admin-topbar__identity{min-width:0}.admin-topbar__identity>div{min-width:0}.admin-topbar__identity strong{display:block;max-width:48vw;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:16px}.admin-topbar__identity .eyebrow{font-size:12px}.admin-main{padding:18px 15px!important}.page-heading h1{font-size:clamp(29px,9vw,36px)}
}
@media(max-width:460px){.admin-mobile-nav-toggle{min-width:42px;width:42px;padding:0}.admin-mobile-nav-toggle b{display:none}.admin-topbar__identity strong{max-width:45vw}.admin-main{padding-inline:12px!important}}
.legacy-profile-card {
    border: 1px solid var(--line);
    border-radius: 12px;
    padding: 18px;
    margin-top: 16px;
    background: var(--surface-soft, rgba(255, 255, 255, .02));
}

.legacy-profile-card__head,
.legacy-profile-summary,
.legacy-profile-group dl > div,
.legacy-source-files dl > div {
    display: flex;
    justify-content: space-between;
    gap: 18px;
}

.legacy-profile-card__head { align-items: flex-start; }
.legacy-profile-card__head h3 { margin: 4px 0; }
.legacy-profile-card__head p { margin: 0; color: var(--muted); }
.legacy-profile-summary { margin: 18px 0; flex-wrap: wrap; }
.legacy-profile-summary > div { min-width: 180px; }
.legacy-profile-summary dt,
.legacy-profile-group dt,
.legacy-source-files dt { color: var(--muted); }
.legacy-profile-summary dd,
.legacy-profile-group dd,
.legacy-source-files dd { margin: 3px 0 0; overflow-wrap: anywhere; }

.legacy-profile-groups {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(260px, 1fr));
    gap: 12px;
}

.legacy-profile-group {
    border: 1px solid var(--line);
    border-radius: 10px;
    padding: 14px;
}

.legacy-profile-group h4 { margin: 0 0 10px; }
.legacy-profile-group dl { margin: 0; }
.legacy-profile-group dl > div,
.legacy-source-files dl > div { padding: 7px 0; border-bottom: 1px solid var(--line); }
.legacy-profile-group dl > div:last-child,
.legacy-source-files dl > div:last-child { border-bottom: 0; }
.legacy-profile-group__subtitle { font-weight: 800; color: var(--gold); }
.legacy-source-files { margin-top: 14px; }
.legacy-source-files summary { cursor: pointer; font-weight: 800; }
.commercial-admin-preview { min-height: 90px; display: grid; place-items: center; overflow: hidden; background: var(--bg); border: 1px solid var(--line); border-radius: 7px; }
.commercial-admin-preview img { width: 100%; max-height: 180px; display: block; object-fit: contain; }
.commercial-product-admin-list { display: grid; gap: 9px; padding: 14px; }
.commercial-product-admin-list > details { overflow: hidden; background: var(--surface-2); border: 1px solid var(--line); border-radius: 7px; }
.commercial-product-admin-list > details > summary { display: flex; align-items: center; justify-content: space-between; gap: 15px; padding: 13px 15px; cursor: pointer; }
.commercial-product-admin-list > details > summary span { display: grid; gap: 3px; }
.commercial-product-admin-list > details > summary small { color: var(--muted); font-size: 12px; }
.commercial-product-admin-list > details > summary em { color: var(--gold-light); font-style: normal; font-weight: 800; }
.commercial-product-admin-list > details > .stack-form { padding: 14px; border-top: 1px solid var(--line); }
.commercial-product-admin-list > details > form:last-child { display: flex; justify-content: flex-end; padding: 0 14px 14px; }
.backup-create-form, .backup-row-actions { display: flex; align-items: center; gap: 8px; }
.backup-create-form select { min-width: 190px; }
.backup-row-actions .button { padding: 8px 10px; font-size: 11.5px; }

@media (max-width: 720px) {
    .legacy-profile-card__head,
    .legacy-profile-summary,
    .legacy-profile-group dl > div,
    .legacy-source-files dl > div { display: block; }
    .legacy-profile-card__head .status { display: inline-block; margin-top: 10px; }
}

/* ============================================================
   PHASE 1 — CMS radni sto: "Zahteva pažnju" i kompaktna statistika.
   Sve boje idu preko theme tokena, pa Light i Dark ostaju usklađeni.
   ============================================================ */
.attention{margin:0 0 12px;border:1px solid var(--line);border-radius:9px;background:var(--surface);overflow:hidden}
.attention>header{display:flex;align-items:center;min-height:44px;padding:0 16px;border-bottom:1px solid var(--line)}
.attention h2{margin:0;font-family:Georgia,serif;font-size:15px;color:var(--text)}
.attention__empty{margin:0;padding:14px 16px;color:var(--muted);font-size:13.5px}
.attention__list{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr))}
.attention__item{--tone:var(--gold);display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:10px;padding:13px 16px;border-right:1px solid var(--line);border-top:1px solid transparent;color:var(--text);text-decoration:none;transition:background .16s}
.attention__item:last-child{border-right:0}
.attention__item:hover{background:var(--surface-2)}
.attention__item strong{font-family:Georgia,serif;font-size:23px;line-height:1;color:var(--tone)}
.attention__item span{min-width:0;font-size:13px;line-height:1.3;color:var(--muted)}
.attention__item b{color:var(--tone);font-size:14px;transition:transform .16s}
.attention__item:hover b{transform:translateX(2px)}
.attention__item--danger{--tone:var(--red)}
.attention__item--warning{--tone:var(--gold)}
.attention__item--info{--tone:var(--muted)}
.attention__item--info strong{color:var(--text)}

/* Statistika je sekundarna: kompaktan horizontalan red, ne zid od kartica. */
.dashboard-stat-grid{grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:8px}
.dashboard-stat{min-height:0;grid-template-columns:32px minmax(0,1fr) 14px;gap:9px;padding:11px 12px;border-color:var(--line);background:var(--surface);border-radius:8px}
.dashboard-stat:hover{background:var(--surface-2)}
.dashboard-stat__icon{width:28px;height:28px;font-size:14px}
.dashboard-stat__body strong{margin-top:2px;font-size:20px;color:var(--text)}
.dashboard-stat__body em{margin-top:3px;color:var(--muted)}
.dashboard-stat__arrow{color:var(--muted);align-self:center}
.dashboard-stat>i{position:static;grid-column:1 / -1;margin-top:8px;height:4px;background:var(--surface-3)}

@media (max-width:820px){
    .attention__list{grid-template-columns:1fr}
    .attention__item{border-right:0;border-top:1px solid var(--line)}
    .attention__item:first-child{border-top:0}
    .dashboard-stat-grid{grid-template-columns:repeat(auto-fit,minmax(150px,1fr))}
}

/* ============================================================
   PHASE 1 / CHECKPOINT 2 — jedinstven obrazac tabela.
   Kompaktniji redovi, lepljivo zaglavlje, thumbnail kolona,
   i boje preko theme tokena umesto hardkodovanih vrednosti.
   ============================================================ */
th, td { padding: 9px 12px; border-bottom: 1px solid var(--line); }
th { position: sticky; top: 0; z-index: 2; color: var(--muted); background: var(--surface-2); }
td { color: var(--text); }
td strong { color: var(--text); }
tbody tr { transition: background .12s; }
tbody tr:hover { background: var(--surface-2); }
tbody tr:last-child td { border-bottom: 0; }
.table-sub { display: block; margin-top: 2px; color: var(--muted); font-size: 12.5px; }

/* Naslovna sličica u listama */
.col-thumb { width: 74px; white-space: nowrap; }
.admin-thumb { display: inline-grid; place-items: center; width: 46px; height: 46px; overflow: hidden;
    border: 1px solid var(--line); border-radius: 6px; background: var(--surface-3); vertical-align: middle; }
.admin-thumb img { width: 100%; height: 100%; object-fit: cover; display: block; }
a.admin-thumb:hover { border-color: var(--gold); }
.admin-thumb b { color: var(--muted); font-size: 14px; font-weight: 400; }
.admin-thumb__count { display: inline-block; margin-left: 5px; padding: 1px 5px; border-radius: 4px;
    background: var(--surface-3); color: var(--muted); font-size: 12px; font-style: normal; vertical-align: middle; }

@media (max-width: 820px) {
    th, td { padding: 8px 10px; }
    .admin-thumb { width: 40px; height: 40px; }
}

/* Radna lista oglasa: akcije u jednom redu, destruktivna jasno odvojena. */
.ad-row-action-cell { min-width: 0; }
.ad-row-actions-visible { flex-wrap: nowrap; gap: 4px; }
.ad-row-action { min-height: 26px; padding: 4px 7px; font-size: 12px; }
.ad-row-action--delete { margin-left: 6px; padding-left: 9px; border-left: 1px solid var(--line); border-radius: 5px; }

/* ============================================================
   PHASE 1 / CHECKPOINT 3 — forme.
   Kontrole formi su imale hardkodovane tamne boje pa su u Light temi
   ispadale kao crni blokovi. Sada idu preko tokena i kompaktnije su.
   ============================================================ */
:root { --field-bg: #0d1011; --field-border: #3a4145; --field-text: var(--text); }
html[data-cms-theme="light"] { --field-bg: #ffffff; --field-border: #c3b7a4; }

.stack-form { gap: 12px; margin-top: 14px; }
.stack-form label > span { margin-bottom: 4px; color: var(--text); font-size: 13px; }
.stack-form input,
.stack-form select,
.stack-form textarea,
.admin-filter-bar input,
.admin-filter-bar select {
    min-height: 38px; padding: 7px 11px; border-radius: 6px;
    color: var(--field-text); background-color: var(--field-bg); border: 1px solid var(--field-border);
}
.stack-form textarea { min-height: 96px; line-height: 1.45; }
.stack-form input:focus, .stack-form select:focus, .stack-form textarea:focus,
.admin-filter-bar input:focus, .admin-filter-bar select:focus {
    border-color: var(--gold); box-shadow: 0 0 0 3px rgb(230 170 46 / .12); outline: none;
}
.stack-form input::placeholder, .stack-form textarea::placeholder,
.admin-filter-bar input::placeholder { color: var(--muted); }
.stack-form small { display: block; margin-top: 3px; color: var(--muted); font-size: 12.5px; line-height: 1.35; }
.stack-form .check-row input { min-height: 16px; }

/* Sekcije unutar dugačkih formi */
.plain-fieldset { padding: 12px 14px; border-color: var(--line); background: var(--surface-2); }
.plain-fieldset legend { font-size: 13px; }

/* Zaglavlja panela ne treba da troše 70px visine */
.panel__head { min-height: 54px; padding: 10px 16px; }
.panel__head h2 { font-size: 16px; }
.panel__head p { margin-top: 3px; font-size: 12.5px; }

/* Save / Cancel / Delete uvek isti raspored: primarna levo, destruktivna desno. */
.form-actions { display: flex; flex-wrap: wrap; align-items: center; gap: 8px; margin-top: 4px; }
.form-actions .is-destructive { margin-left: auto; }

@media (max-width: 820px) {
    .stack-form input, .stack-form select, .stack-form textarea { min-height: 40px; font-size: 16px; }
    .form-actions .is-destructive { margin-left: 0; }
}

/* ============================================================
   PHASE 1 / CHECKPOINT 3 — katalog.
   Stablo od 226+ kategorija mora da stane na ekran. Redovi su
   spušteni sa 58px na 38px i prebačeni na theme tokene.
   Drag & drop, hijerarhija i pretraga stabla ostaju netaknuti.
   ============================================================ */
.category-tree-editor { padding: 10px 14px 14px; }
.category-tree-editor__children { margin-left: 18px !important; border-left-color: var(--line); }
.category-tree-editor__row {
    min-height: 38px; gap: 9px; padding: 5px 8px; border-radius: 6px;
    grid-template-columns: 26px minmax(160px, 1fr) minmax(150px, .5fr) auto 66px;
    background: var(--surface-2); border-color: var(--line);
}
.category-tree-editor__row:hover { background: var(--surface-3); border-color: var(--gold); }
.category-tree-editor__row strong { font-size: 13.5px; }
.category-tree-editor__row small { font-size: 12.5px; }
.category-tree-editor__handle { width: 24px; height: 26px; border-radius: 4px; font-size: 14px; }
.category-tree-editor__row .button { min-height: 26px; padding: 0 8px; font-size: 12px; }
.category-tree-editor__drop { font-size: 12.5px; }

@media (max-width: 1100px) {
    .category-tree-editor__row { grid-template-columns: 26px minmax(0, 1fr) auto 66px; }
    .category-tree-editor__row small { display: none; }
}
@media (max-width: 820px) {
    .category-tree-editor__children { margin-left: 10px !important; }
    .category-tree-editor__row { grid-template-columns: 24px minmax(0, 1fr) 62px; }
    .category-tree-editor__row .status { display: none; }
}

/* ============================================================
   PHASE 1 / CHECKPOINT 3 — zajednicki CMS obrazac.
   Jedna kartica, jedna mreza polja, jedna traka akcija, jedan red liste.
   Sve stranice koriste iste primitive umesto sopstvenih stilova.
   ============================================================ */
.cms-page { display: grid; gap: 12px; }

.cms-section { margin: 0 0 12px; border: 1px solid var(--line); border-radius: 9px; background: var(--surface); overflow: hidden; }
.cms-section__head { display: flex; align-items: center; justify-content: space-between; gap: 12px;
    padding: 11px 16px; border-bottom: 1px solid var(--line); background: var(--surface-2); }
.cms-section__head h2 { margin: 0; font-family: Georgia, serif; font-size: 15px; color: var(--text); }
.cms-section__head p { margin: 2px 0 0; color: var(--muted); font-size: 12.5px; }
.cms-section__head-actions { display: flex; gap: 6px; flex-shrink: 0; }
.cms-section__body { padding: 14px 16px; }

/* Mreza polja: dve kolone na desktopu, polja ne razvlacena preko citavog ekrana. */
.cms-fields { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px 16px; align-items: start; }
.cms-fields > .span-2 { grid-column: 1 / -1; }
.cms-fields label { display: block; min-width: 0; }
.cms-fields label > span { display: block; margin-bottom: 4px; color: var(--text); font-size: 13px; font-weight: 700; }
.cms-fields label > span .req { color: var(--gold); }
.cms-fields input, .cms-fields select, .cms-fields textarea {
    width: 100%; max-width: 560px; min-height: 38px; padding: 7px 11px; border-radius: 6px;
    color: var(--field-text); background-color: var(--field-bg); border: 1px solid var(--field-border); font: inherit; }
.cms-fields textarea { min-height: 84px; max-width: 100%; line-height: 1.45; }
/* Padajuce liste moraju izgledati kao ostala polja, ne kao sistemska kontrola.
   Selektor je namerno „tezak" jer tematski blokovi iznad koriste skraceni
   `background`, koji bi inace obrisao strelicu. */
html .admin-main select, html .cms-fields select {
    appearance: none; -webkit-appearance: none; -moz-appearance: none;
    padding-right: 32px;
    background-image: linear-gradient(45deg, transparent 50%, currentColor 50%), linear-gradient(135deg, currentColor 50%, transparent 50%);
    background-position: right 15px center, right 10px center;
    background-size: 5px 5px, 5px 5px;
    background-repeat: no-repeat;
}
.admin-main select::-ms-expand { display: none; }
.cms-fields .w-sm input, .cms-fields .w-sm select, input.w-sm, select.w-sm { max-width: 200px; }
.cms-fields .w-md input, .cms-fields .w-md select { max-width: 340px; }
.cms-fields input:focus, .cms-fields select:focus, .cms-fields textarea:focus {
    border-color: var(--gold); box-shadow: 0 0 0 3px rgb(230 170 46 / .12); outline: none; }
.cms-fields small { display: block; margin-top: 3px; color: var(--muted); font-size: 12.5px; line-height: 1.35; }
.cms-fields .check-line { display: flex; align-items: center; gap: 8px; padding-top: 20px; }
.cms-fields .check-line input { width: 16px; min-height: 16px; accent-color: var(--gold); }
.cms-fields .check-line span { margin: 0; font-weight: 500; color: var(--muted); }

/* Traka akcija: primarna levo, destruktivna uvek desno. */
.cms-actions { display: flex; flex-wrap: wrap; align-items: center; gap: 8px;
    padding: 11px 16px; border-top: 1px solid var(--line); background: var(--surface-2); }
.cms-actions__note { color: var(--muted); font-size: 12.5px; margin-right: auto; }
.cms-actions .is-destructive { margin-left: auto; }

/* Kompaktan red liste - za polja registracije, pakete i slicne CMS spiskove. */
.cms-row { display: grid; align-items: center; gap: 10px; padding: 9px 16px; border-bottom: 1px solid var(--line); }
.cms-row:last-of-type { border-bottom: 0; }
.cms-row:hover { background: var(--surface-2); }
.cms-row--head { padding-top: 8px; padding-bottom: 8px; background: var(--surface-2);
    color: var(--muted); font-size: 12px; text-transform: uppercase; letter-spacing: .08em; }
.cms-row__name strong { display: block; color: var(--text); font-size: 13.5px; }
.cms-row__name code { display: inline-block; margin-top: 2px; color: var(--muted); font-size: 12px;
    font-family: ui-monospace, SFMono-Regular, Menlo, monospace; }
.cms-row input, .cms-row select { min-height: 32px; padding: 5px 9px; border-radius: 5px;
    color: var(--field-text); background: var(--field-bg); border: 1px solid var(--field-border); font: inherit; font-size: 13px; }
.cms-row .compact-check { display: flex; align-items: center; gap: 6px; color: var(--muted); font-size: 12.5px; }
.cms-row .compact-check input { width: 15px; min-height: 15px; accent-color: var(--gold); }

/* Lepljiva traka za cuvanje - bila je crna u obe teme. */
.sticky-save-bar { background: var(--surface-2) !important; border-top: 1px solid var(--line); color: var(--text); }
.sticky-save-bar span { color: var(--muted); }
.frontend-logo-editor { background: var(--surface-2); border-color: var(--line); }
.frontend-logo-editor span { color: var(--text); }

@media (max-width: 900px) {
    .cms-fields { grid-template-columns: 1fr; }
    .cms-fields input, .cms-fields select, .cms-fields textarea { max-width: 100%; font-size: 16px; }
    .cms-fields .check-line { padding-top: 0; }
    .cms-actions .is-destructive { margin-left: 0; }
}

/* Red polja registracije: ljudski naziv primaran, tehnicki kod sekundaran. */
.cms-row--regfield { grid-template-columns: minmax(180px, 1.1fr) minmax(280px, 2fr) 92px 108px 116px; }
.cms-row--regfield .cms-row__inputs { display: grid; gap: 5px; }
.cms-row--regfield .cms-row__order { width: 84px; text-align: center; }
.cms-row--regfield.is-locked .cms-row__name strong::after { content: "obavezno"; margin-left: 7px; padding: 1px 5px;
    border-radius: 4px; background: var(--surface-3); color: var(--muted); font-size: 11.5px; font-weight: 700;
    text-transform: uppercase; letter-spacing: .05em; vertical-align: middle; }
.cms-row--regfield .compact-check input:disabled { opacity: .45; }

/* Forma koja ne treba da se razvlaci preko celog ekrana. */
.cms-form-narrow { max-width: 1080px; }

@media (max-width: 1200px) {
    .cms-row--regfield { grid-template-columns: minmax(150px, 1fr) minmax(220px, 1.6fr) 76px 96px 104px; }
}
@media (max-width: 900px) {
    .cms-row--regfield { grid-template-columns: 1fr 1fr; row-gap: 8px; }
    .cms-row--regfield .cms-row__name, .cms-row--regfield .cms-row__inputs { grid-column: 1 / -1; }
    .cms-row--regfield .cms-row__order { width: 100%; }
    .cms-row--head.cms-row--regfield { display: none; }
}

/* Sekcije unutar forme (fieldset) — jedinstven izgled u celom CMS-u. */
.cms-group { margin: 0 0 12px; padding: 0; border: 0; }
.cms-group:last-of-type { margin-bottom: 0; }
.cms-group > legend { padding: 0 0 6px; color: var(--gold); font-size: 12.5px; font-weight: 800;
    text-transform: uppercase; letter-spacing: .07em; }
.cms-group__count { margin-left: 6px; color: var(--muted); font-weight: 600; text-transform: none; letter-spacing: 0; }
.cms-fields--tight { grid-template-columns: repeat(auto-fit, minmax(170px, 1fr)); gap: 9px 12px; }
.form-help { margin: 7px 0 0; color: var(--muted); font-size: 12.5px; line-height: 1.4; }

/* Lista sa proširivim redom: prvo se vidi šta postoji, pa se otvara uređivanje. */
.cms-expand { border-bottom: 1px solid var(--line); }
.cms-expand:last-of-type { border-bottom: 0; }
.cms-expand > summary { cursor: pointer; list-style: none; }
.cms-expand > summary::-webkit-details-marker { display: none; }
.cms-expand > summary:hover { background: var(--surface-2); }
.cms-expand[open] > summary { background: var(--surface-2); border-bottom: 1px solid var(--line); }
.cms-expand__hint { color: var(--muted); font-size: 12.5px; text-align: right; }
.cms-expand[open] .cms-expand__hint { color: var(--gold); }
.cms-expand__body { padding: 14px 16px; background: var(--surface); }
.cms-row--plan { grid-template-columns: minmax(200px, 1.6fr) 100px 130px 80px 110px 70px; }
.cms-row--newitem { grid-template-columns: 1fr auto; }
.cms-row--newitem b { color: var(--gold); font-size: 13.5px; }
.cms-row--newitem span { color: var(--muted); font-size: 12.5px; }

/* Katalog: grana i krajnja kategorija se razlikuju na prvi pogled. */
.category-tree-editor__row { grid-template-columns: 20px 14px minmax(160px, 1fr) minmax(120px, .5fr) 78px 54px; }
.category-tree-editor__handle { width: 18px; height: 22px; color: var(--muted); background: transparent;
    border: 1px solid transparent; font-size: 13.5px; }
.category-tree-editor__row:hover .category-tree-editor__handle { color: var(--gold); border-color: var(--line); }
.cat-kind { color: var(--muted); font-size: 13px; text-align: center; }
.cat-name { min-width: 0; }
.cat-name strong { display: block; font-size: 13.5px; color: var(--text); overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.cat-name code { display: block; margin-top: 1px; color: var(--muted); font-size: 12px;
    font-family: ui-monospace, SFMono-Regular, Menlo, monospace; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.cat-meta { color: var(--muted); font-size: 12.5px; }
.cat-state { justify-self: start; padding: 2px 6px; border-radius: 4px; background: var(--surface-3);
    color: var(--muted); font-size: 11.5px; text-transform: uppercase; letter-spacing: .04em; }
.cat-state.is-on { color: var(--green); background: rgb(66 184 131 / .12); }
.cat-edit { justify-self: end; padding: 3px 8px; border: 1px solid var(--line); border-radius: 5px;
    color: var(--muted); font-size: 12.5px; font-weight: 700; }
.cat-edit:hover { color: var(--gold); border-color: var(--gold); }
.category-tree-editor__row.is-branch { background: var(--surface-3); }
.category-tree-editor__row.is-branch .cat-name strong { font-weight: 800; }
.category-tree-editor__row.is-branch .cat-kind { color: var(--gold); }
.category-tree-editor__row.is-leaf { background: transparent; border-color: transparent; }
.category-tree-editor__row.is-leaf:hover { background: var(--surface-2); border-color: var(--line); }
.category-tree-editor__row.is-inactive .cat-name strong { color: var(--muted); }

@media (max-width: 1100px) {
    .cms-row--plan { grid-template-columns: minmax(140px, 1.4fr) 84px 104px 64px 96px 62px; }
    .category-tree-editor__row { grid-template-columns: 20px 14px minmax(0, 1fr) 74px 54px; }
    .category-tree-editor__row .cat-meta { display: none; }
}
@media (max-width: 820px) {
    .cms-row--plan { grid-template-columns: 1fr auto; row-gap: 6px; }
    .cms-row--plan .cms-row__name { grid-column: 1 / -1; }
    .cms-row--head.cms-row--plan { display: none; }
    .category-tree-editor__row { grid-template-columns: 18px minmax(0, 1fr) 52px; }
    .category-tree-editor__row .cat-kind, .category-tree-editor__row .cat-state { display: none; }
}

/* display:grid nadjacava HTML hidden atribut - vrati ocekivano ponasanje. */
.cms-fields[hidden], .cms-row[hidden], [hidden] { display: none !important; }

/* ============================================================
   Tree drag & drop — tanka insertion linija umesto velikih drop zona.
   Stablo zadrzava istu visinu tokom celog dragovanja.
   ============================================================ */
.category-tree-editor__drop { display: none !important; }
.category-tree-editor__item { position: relative; }
.category-tree-editor__row { position: relative; }

.category-tree-editor.is-dragging .category-tree-editor__row { cursor: grabbing; }
.category-tree-editor__item.is-dragged > .category-tree-editor__row { opacity: .35; }

/* PRE / POSLE — tanka zlatna linija sa tackom na pocetku. */
.category-tree-editor__row.is-drop-before::before,
.category-tree-editor__row.is-drop-after::after {
    content: ""; position: absolute; left: 0; right: 0; height: 2px;
    background: var(--gold); border-radius: 2px; box-shadow: 0 0 0 1px rgb(230 170 46 / .25); z-index: 3;
}
.category-tree-editor__row.is-drop-before::before { top: -2px; }
.category-tree-editor__row.is-drop-after::after { bottom: -2px; }

/* KAO PODKATEGORIJA — ciljni red se jasno oivici. */
.category-tree-editor__row.is-drop-inside {
    border-color: var(--gold) !important;
    background: color-mix(in srgb, var(--gold) 14%, transparent) !important;
    box-shadow: inset 0 0 0 1px var(--gold);
}
.category-tree-editor__row.is-drop-inside .cat-name strong::after {
    content: "kao podkategorija"; margin-left: 8px; padding: 1px 6px; border-radius: 4px;
    background: var(--gold); color: #14100a; font-size: 11.5px; font-weight: 800;
    text-transform: uppercase; letter-spacing: .04em; vertical-align: middle;
}

/* Kompaktan ghost koji prati kursor. */
.category-drag-ghost { position: fixed; top: -1000px; left: -1000px; padding: 5px 10px;
    border: 1px solid var(--gold); border-radius: 6px; background: var(--surface);
    color: var(--text); font: 700 13.5px/1 Inter, system-ui, sans-serif; white-space: nowrap; pointer-events: none; }

/* Kratko oznaci pomerenu kategoriju posle uspesnog dropa. */
@keyframes cms-just-moved { from { background: color-mix(in srgb, var(--gold) 30%, transparent); } to { background: transparent; } }
.category-tree-editor__item.is-just-moved > .category-tree-editor__row { animation: cms-just-moved 1.4s ease-out; }

/* Zabranjena meta: jasno se vidi da drop nije moguc (sam sebi roditelj / sopstveni potomak). */
.category-tree-editor__row.is-drop-blocked { cursor: not-allowed; opacity: .5;
    outline: 1px dashed color-mix(in srgb, var(--red) 60%, transparent); outline-offset: -1px; }
/* Prigusi samo vuceni red, ne i njegovo podstablo - hijerarhija ostaje citljiva. */
.category-tree-editor__item.is-dragged { opacity: 1; }

/* ============================================================
   Izjednacavanje starog "panel" obrasca sa novim "cms-section".
   Postojece stranice ne moraju da se prepisuju da bi pripadale
   istom CMS-u: iste ivice, isti radius, isto zaglavlje, isti razmaci.
   ============================================================ */
.panel { border-radius: 9px; }
.panel--spaced { margin-top: 12px; }
.panel__head { background: var(--surface-2); }
.panel__head h2 { font-size: 15px; }
.panel > .stack-form,
.panel > form.stack-form { padding: 14px 16px; margin-top: 0; }

/* Stare forme dobijaju istu tipografiju i iste kontrole kao cms-fields. */
.stack-form label > span { font-weight: 700; }
.form-grid-two, .form-grid-three { gap: 12px 16px; align-items: start; }
.stack-form input:not([type=checkbox]):not([type=radio]):not([type=color]),
.stack-form select { max-width: 560px; }
.stack-form .form-grid-two input, .stack-form .form-grid-two select,
.stack-form .form-grid-three input, .stack-form .form-grid-three select { max-width: 100%; }
.stack-form input[type=number] { max-width: 200px; }

/* Dugmad u starim formama poravnata kao cms-actions. */
.stack-form > button[type=submit],
.stack-form > .panel-actions { margin-top: 2px; justify-self: start; }

@media (max-width: 900px) {
    .stack-form input:not([type=checkbox]):not([type=radio]):not([type=color]),
    .stack-form select, .stack-form input[type=number] { max-width: 100%; }
}

/* Razlozi kontakta: jedan red = jedan razlog, bez kartica preko celog ekrana. */
.cms-row--reason { grid-template-columns: minmax(0, 1fr) auto; }
.cms-row--reason .cms-row__form { display: grid; grid-template-columns: minmax(180px, 1fr) 92px 110px 70px 96px;
    align-items: center; gap: 10px; margin: 0; }
.cms-row--reason .cms-row__order { width: 84px; text-align: center; }
.cms-row--reason .cms-row__count { color: var(--muted); font-size: 13px; text-align: center; }
.cms-row--reason .button { min-height: 30px; padding: 0 10px; font-size: 12.5px; }
.cms-row--reason .cms-row__destructive { margin: 0; }
.cms-row--reason .cms-row__locknote { padding: 2px 7px; border-radius: 4px; background: var(--surface-3);
    color: var(--muted); font-size: 12px; text-transform: uppercase; letter-spacing: .04em; cursor: help; }
.cms-row--head.cms-row--reason { grid-template-columns: minmax(180px, 1fr) 92px 110px 70px 96px auto; }

@media (max-width: 1000px) {
    .cms-row--reason, .cms-row--head.cms-row--reason { grid-template-columns: 1fr; }
    .cms-row--reason .cms-row__form { grid-template-columns: 1fr 1fr; }
    .cms-row--head.cms-row--reason { display: none; }
}

/* Dodavanje novog razloga: labela iznad polja, akcija desno. */
.contact-reason-create { display: grid; grid-template-columns: minmax(240px, 1fr) auto; align-items: end;
    gap: 10px; padding: 12px 16px; margin: 0; border-top: 1px solid var(--line); background: var(--surface-2); }
.contact-reason-create label { display: block; }
.contact-reason-create label > span { display: block; margin-bottom: 4px; color: var(--text);
    font-size: 13px; font-weight: 700; }
.contact-reason-create input { width: 100%; max-width: 480px; min-height: 36px; padding: 7px 11px;
    border-radius: 6px; color: var(--field-text); background: var(--field-bg); border: 1px solid var(--field-border); font: inherit; }
@media (max-width: 700px) { .contact-reason-create { grid-template-columns: 1fr; } }

/* ============================================================
   Detalj korisnika — ispravke kontrasta u Light temi.
   Traka tabova je bila fiksno tamna, a vrednosti u listi podataka
   skoro necitljive na svetloj pozadini.
   ============================================================ */
.user-profile-tabs { background: color-mix(in srgb, var(--surface) 96%, transparent); padding: 8px; margin-bottom: 12px; }
.user-profile-tabs button { min-height: 34px; padding: 0 12px; font-size: 13px; }
.detail-list { padding: 4px 16px; }
.detail-list > div { padding: 8px 0; gap: 16px; border-bottom-color: var(--line); }
.detail-list dt { color: var(--muted); font-size: 13px !important; }
.detail-list dd { color: var(--text); font-size: 13.5px; font-weight: 600; }
/* Kartice detalja ne treba da se razvlace jedna prema drugoj. */
.detail-grid--equal { align-items: start; }

/* Detalj oglasa — poslednji fiksno tamni blokovi (promocije i kreditni badge). */
.admin-promotion-create { background: var(--surface-2); padding: 14px 16px; }
.admin-promotion-create label,
.admin-promotion-record label,
.admin-ad-edit-form label { color: var(--muted); }
.admin-promotion-create label > span,
.admin-promotion-record label > span,
.admin-ad-edit-form label > span { color: var(--text); }
.admin-promotion-create input, .admin-promotion-create select, .admin-promotion-create textarea,
.admin-promotion-record input, .admin-promotion-record select,
.admin-ad-edit-form input, .admin-ad-edit-form select, .admin-ad-edit-form textarea {
    min-height: 36px; color: var(--field-text); background-color: var(--field-bg); border-color: var(--field-border); }
.promotion-owner-balance { background: var(--surface-3) !important; border: 1px solid var(--line);
    color: var(--muted) !important; }
.promotion-owner-balance strong, .promotion-owner-balance b { color: var(--text) !important; }

/* Poslednji fiksno tamni element: aktivni tab u Rasporedu stranica. */
.layout-page-tabs button { padding: 8px 13px; font-size: 13px; }
.layout-page-tabs button:hover { border-color: var(--gold); }
.layout-page-tabs button.is-active { border-color: var(--gold); color: var(--gold);
    background: color-mix(in srgb, var(--gold) 12%, transparent); box-shadow: inset 0 -2px var(--gold); }

/* Statisticke kartice: neka se same rasporede umesto fiksnih 6 kolona. */
.metric-grid { grid-template-columns: repeat(auto-fit, minmax(180px, 1fr)); gap: 10px; }
.metric-card { min-height: 0; padding: 12px 14px; }
.metric-card span { font-size: 13px; }
.metric-card strong { margin-top: 6px; font-size: 24px; color: var(--text); }
.metric-card small { margin-top: 6px; color: var(--muted); }

/* ── CMS Update Manager ─────────────────────────────────────────────── */
.update-hash{font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:12.5px;letter-spacing:.01em;word-break:break-all;color:var(--text-2)}
.update-list{margin:8px 0 0;padding-left:18px;max-height:280px;overflow:auto;font-size:13px;line-height:1.7;color:var(--text-2)}
.update-list li{word-break:break-all}

/* Fajl input polja (Update paket, Watermark, Baneri, Partneri, Marketing...)
   nasleđuju width:100% od generičnih .stack-form input pravila, pa je
   klikabilna površina cele izduzene kutije, iako se izgleda vidi samo dugme
   "Browse" i naziv fajla. Ovde se svodi na prirodnu širinu sadržaja, tako
   da vizuelna kutija prati dugme. */
input[type="file"] { width: auto; min-height: 0; padding: 6px 0; background: transparent; border: none; }

/* Suženje vizuelne kutije (gore) nije bilo dovoljno: <label> koji obavija
   naslov + input + pomoćni tekst i dalje prosleđuje klik iz CELE svoje
   površine (uključujući razmak i pomoćni tekst) ka input-u — to je ugrađeno
   ponašanje browsera za <label>, ne stvar CSS layout-a. Zato se ovde sam
   <label> isključuje iz klika (pointer-events:none), a klik se vraća
   isključivo na sam <input> — to je jedino mesto gde korisnik stvarno vidi
   dugme "Browse"/"Odaberi fajl". Namerna izuzetak: „Dodajte nove slike"
   zona na izmeni oglasa (.admin-ad-image-upload) je pravi drag/klik-bilo-gde
   upload prostor — tamo je ceo veliki iscrtkani okvir NAMERNO klikabilan,
   pa se ne dira. */
label:has(> input[type="file"]):not(.admin-ad-image-upload label) { pointer-events: none; }
label:has(> input[type="file"]):not(.admin-ad-image-upload label) > input[type="file"] { pointer-events: auto; }

/* Dugme "Choose file"/"Browse" je iscrtano od strane operativnog sistema i ne
   može se u potpunosti zameniti bez skrivanja pravog <input> iza sopstvenog
   dugmeta (dodatna JS komponenta). Ovde se bar sam pseudo-element dugmeta
   oboji u isti stil kao ostala dugmad u CMS-u, da ne deluje kao "goli"
   sistemski kontrol usred ostatka forme. */
input[type="file"]::file-selector-button {
    margin-right: 10px;
    padding: 8px 14px;
    color: #fff;
    background: var(--surface-2);
    border: 1px solid #454c50;
    border-radius: 7px;
    font-weight: 750;
    font-size: 13px;
    cursor: pointer;
}
input[type="file"]::file-selector-button:hover { background: #262b2d; }
html[data-cms-theme="light"] input[type="file"]::file-selector-button { color: #26231e; background: #efe8d8; border-color: #d3c8b7; }

.content-editor { display: grid; gap: 0; border: 1px solid var(--line); border-radius: 8px; overflow: hidden; }
.content-editor__toolbar { display: flex; flex-wrap: wrap; gap: 4px; padding: 8px; background: var(--surface-2); border-bottom: 1px solid var(--line); }
.content-editor__toolbar button { min-width: 32px; min-height: 32px; padding: 0 8px; color: var(--text); background: var(--surface-3); border: 1px solid var(--line); border-radius: 5px; cursor: pointer; font-size: 13px; }
.content-editor__toolbar button:hover { border-color: var(--gold); color: var(--gold-light); }
.content-editor__body { min-height: 220px; padding: 12px 14px; color: var(--text); background: var(--bg); line-height: 1.6; }
.content-editor__body:focus { outline: none; box-shadow: inset 0 0 0 2px rgb(230 170 46 / .3); }
.content-editor__body h2, .content-editor__body h3 { margin: .6em 0 .3em; color: var(--gold-light); }
.content-editor__body p { margin: 0 0 .8em; }
.content-editor__body ul { margin: 0 0 .8em 1.2em; }
.content-page-cover-preview img { max-width: 220px; border-radius: 7px; border: 1px solid var(--line); }

/* Web statistika */
.stat-period-switch { display: flex; gap: 8px; }
.stat-period-switch a { padding: 8px 14px; border: 1px solid var(--line); border-radius: 7px; background: var(--surface-2); color: var(--muted); font-weight: 700; font-size: 13px; }
.stat-period-switch a.is-active { color: #12100a; background: linear-gradient(135deg, var(--gold-light), var(--gold)); border-color: transparent; }
.stat-bar-chart { display: flex; align-items: flex-end; gap: 6px; height: 190px; padding: 20px 18px 10px; overflow-x: auto; }
.stat-bar-chart__col { display: flex; flex-direction: column; align-items: center; gap: 8px; min-width: 22px; flex: 1 0 auto; height: 100%; }
.stat-bar-chart__bars { display: flex; align-items: flex-end; gap: 2px; height: 100%; width: 100%; }
.stat-bar-chart__bars i { display: block; flex: 1; border-radius: 3px 3px 0 0; min-height: 2px; }
.stat-bar-chart__bars i.is-real { background: var(--green); }
.stat-bar-chart__bars i.is-bot { background: var(--red); }
.stat-bar-chart__bars i.is-single { background: var(--gold); }
.stat-bar-chart__col span { font-size: 10.5px; color: var(--muted); white-space: nowrap; }
.stat-chart-legend { display: flex; gap: 16px; padding: 0 18px 16px; font-size: 12.5px; color: var(--muted); }
.stat-chart-legend span { display: inline-flex; align-items: center; gap: 6px; }
.stat-chart-legend i { width: 10px; height: 10px; border-radius: 3px; display: inline-block; }
.stat-chart-legend i.is-real { background: var(--green); }
.stat-chart-legend i.is-bot { background: var(--red); }
.stat-chart-legend i.is-single { background: var(--gold); }
.stat-breakdown { padding: 14px 18px; }
.stat-breakdown__row { display: grid; grid-template-columns: 170px 1fr 70px; align-items: center; gap: 12px; padding: 9px 0; }
.stat-breakdown__row span:first-child { color: var(--muted); font-size: 13px; }
.stat-breakdown__track { height: 10px; border-radius: 6px; background: var(--surface-3); overflow: hidden; }
.stat-breakdown__track i { display: block; height: 100%; background: linear-gradient(135deg, var(--gold-light), var(--gold)); border-radius: inherit; }
.stat-breakdown__row strong { text-align: right; font-size: 13px; white-space: nowrap; }
.stat-note { padding: 12px 18px; border-top: 1px solid var(--line); color: var(--muted); font-size: 12px; line-height: 1.6; }
html[data-cms-theme="light"] .stat-breakdown__track { background: #e6ddcc; }
html[data-cms-theme="light"] .stat-period-switch a { color: #6a6359; background: #f3ecdf; border-color: #d3c8b7; }
html[data-cms-theme="light"] .stat-bar-chart__col span, html[data-cms-theme="light"] .stat-chart-legend, html[data-cms-theme="light"] .stat-note { color: #716b61; }
