:root { --admin-line:rgba(220,226,232,.11); --admin-muted:#a0a8b2; --admin-panel:rgba(25,30,37,.9); }
.admin-shell { width:min(1320px,calc(100% - 44px)); margin:0 auto; padding:56px 0 72px; }
.admin-hero { display:flex; align-items:center; justify-content:space-between; gap:30px; padding:10px 0 34px; border-bottom:1px solid var(--admin-line); }
.admin-hero h1 { margin:13px 0 10px; font-size:clamp(42px,7vw,76px); line-height:.94; letter-spacing:-.065em; }
.admin-hero h1 em { color:var(--accent-light,#e8c77d); font-style:normal; }
.admin-hero p { max-width:670px; margin:0; color:var(--admin-muted); font-size:13px; line-height:1.7; }
.admin-hero-seal { width:118px; height:118px; flex:none; display:grid; place-content:center; text-align:center; border:1px solid rgba(229,190,111,.48); border-radius:50%; box-shadow:inset 0 0 0 7px rgba(229,190,111,.035),0 0 55px rgba(229,190,111,.07); }
.admin-hero-seal span { color:var(--accent-light,#e8c77d); font:700 48px/1 Georgia,serif; }
.admin-hero-seal small { margin-top:7px; color:#89939f; font:8px/1.5 var(--mono,monospace); letter-spacing:.15em; }
.admin-user { color:#a8b6a5; font:9px var(--mono,monospace); letter-spacing:.1em; }
.admin-metrics { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:11px; margin:23px 0 27px; }
.metric-card { min-height:126px; padding:17px; border:1px solid var(--admin-line); background:linear-gradient(145deg,rgba(38,45,54,.92),rgba(21,25,31,.86)); }
.metric-card span { display:block; color:#9ba4ae; font:8px var(--mono,monospace); letter-spacing:.15em; }
.metric-card strong { display:block; margin:12px 0 4px; color:#f0dfb8; font:700 31px/1 var(--mono,monospace); }
.metric-card small { color:#818b96; font-size:10px; }
.admin-tabs { display:flex; gap:7px; border-bottom:1px solid var(--admin-line); margin-bottom:20px; }
.admin-tab { padding:13px 17px; border:1px solid transparent; border-bottom:0; background:transparent; color:#89939f; cursor:pointer; font:9px var(--mono,monospace); letter-spacing:.08em; }
.admin-tab.active { color:#e8c77d; background:rgba(229,190,111,.075); border-color:rgba(229,190,111,.23); }
.admin-section { padding:15px 0 35px; }
.admin-section-head { display:flex; align-items:flex-end; justify-content:space-between; gap:20px; margin-bottom:17px; }
.admin-section-head h2 { margin:8px 0 7px; color:#f0eee8; font-size:clamp(24px,4vw,35px); letter-spacing:-.045em; }
.admin-section-head p { max-width:760px; margin:0; color:#99a2ad; font-size:11px; line-height:1.65; }
.admin-table-wrap { overflow:auto; border:1px solid var(--admin-line); background:rgba(18,22,28,.72); }
.admin-table { width:100%; border-collapse:collapse; min-width:660px; }
.admin-table th { padding:12px 14px; text-align:left; color:#89939e; font:8px var(--mono,monospace); letter-spacing:.12em; border-bottom:1px solid var(--admin-line); background:rgba(255,255,255,.025); }
.admin-table td { padding:13px 14px; color:#d7dbe0; font-size:11px; border-bottom:1px solid rgba(255,255,255,.055); vertical-align:middle; }
.admin-table tr:last-child td { border-bottom:0; }
.admin-table td:first-child strong { color:#ecd9ae; font-family:var(--mono,monospace); font-size:11px; }
.admin-table .muted { display:block; margin-top:4px; color:#7f8995; font-size:9px; }
.status-pill { display:inline-flex; align-items:center; padding:5px 8px; border:1px solid rgba(128,167,137,.28); color:#a7c4a7; background:rgba(128,167,137,.07); font:8px var(--mono,monospace); letter-spacing:.06em; }
.status-pill.off { border-color:rgba(208,126,113,.3); color:#e2a095; background:rgba(208,126,113,.07); }
.admin-small-button { min-height:30px; padding:0 10px; border:1px solid var(--admin-line); background:rgba(255,255,255,.025); color:#d6dbe0; cursor:pointer; font:8px var(--mono,monospace); }
.admin-small-button.danger { border-color:rgba(210,120,108,.35); color:#e4a297; }
.admin-total { color:#ebd29c; font:700 24px var(--mono,monospace); }
.admin-note { color:#838d99; font-size:10px; line-height:1.6; }
.pack-workspace { display:grid; grid-template-columns:minmax(250px,320px) minmax(0,1fr); gap:14px; align-items:start; }
.pack-sidebar,.pack-editor { padding:18px; min-width:0; }
.pack-list { display:grid; gap:6px; margin:13px 0 20px; }
.pack-select { display:flex; align-items:center; justify-content:space-between; gap:12px; width:100%; padding:11px 12px; border:1px solid var(--admin-line); background:rgba(255,255,255,.025); color:#dfe2e5; text-align:left; cursor:pointer; }
.pack-select.active { border-color:rgba(229,190,111,.52); background:rgba(229,190,111,.08); }
.pack-select strong { display:block; font-size:11px; }
.pack-select small { display:block; margin-top:4px; color:#85909b; font:8px var(--mono,monospace); }
.pack-count { color:#e6c77f; font:10px var(--mono,monospace); }
.admin-form { display:grid; gap:9px; padding:15px; border:1px solid var(--admin-line); background:rgba(8,11,15,.25); }
.admin-form h3 { margin:0 0 4px; color:#e7dfcb; font-size:15px; }
.admin-form label,.pack-meta-form label { display:grid; gap:6px; color:#9aa4ae; font:8px var(--mono,monospace); letter-spacing:.08em; }
.admin-form input,.admin-form select,.admin-form textarea,.pack-meta-form input { width:100%; min-width:0; padding:10px 11px; border:1px solid rgba(255,255,255,.13); outline:0; background:#1c222b; color:#eff0ec; font:11px var(--sans, system-ui, sans-serif); }
.admin-form input:focus,.admin-form select:focus,.admin-form textarea:focus,.pack-meta-form input:focus { border-color:rgba(229,190,111,.55); }
.admin-form textarea { resize:vertical; line-height:1.55; }
.compact-form { padding:13px; }
.compact-form .button { margin-top:5px; font-size:8px; }
.pack-empty { min-height:360px; display:grid; place-content:center; text-align:center; color:#9099a3; }
.pack-empty span { color:#d8bb7d; font-size:38px; }
.pack-empty h3 { margin:10px 0 4px; color:#e8e3d8; font-size:20px; }
.pack-empty p { margin:0; font-size:11px; }
.pack-editor-head { display:flex; justify-content:space-between; gap:15px; align-items:flex-start; }
.pack-editor-head h3 { margin:8px 0 5px; color:#f0e6d0; font-size:25px; }
.pack-editor-head p { margin:0; color:#8f9aa5; font-size:10px; line-height:1.6; }
.code-tag { padding:6px 9px; border:1px solid var(--admin-line); color:#9da8b3; font:8px var(--mono,monospace); }
.pack-meta-form { display:grid; grid-template-columns:1fr 1.5fr auto auto; gap:9px; align-items:end; margin:16px 0 19px; padding:13px; background:rgba(255,255,255,.025); border:1px solid var(--admin-line); }
.toggle-label { display:flex!important; align-items:center; gap:7px!important; white-space:nowrap; font-family:var(--sans, system-ui, sans-serif)!important; letter-spacing:0!important; }
.toggle-label input { width:15px; height:15px; }
.pack-meta-form .button { min-height:37px; font-size:8px; white-space:nowrap; }
.content-inventory { margin-bottom:15px; }
.inventory-head { display:flex; justify-content:space-between; align-items:center; gap:12px; margin:16px 0 10px; }
.inventory-head h4 { margin:0; color:#e8e3d8; font:700 10px var(--mono,monospace); letter-spacing:.11em; }
.inventory-head span { color:#8d98a2; font:9px var(--mono,monospace); }
.pack-items { display:grid; gap:7px; }
.content-item { display:grid; grid-template-columns:90px minmax(0,1fr) auto; gap:11px; align-items:center; padding:10px 11px; border:1px solid rgba(255,255,255,.075); background:rgba(255,255,255,.025); }
.content-item-type { color:#c6aa70; font:8px var(--mono,monospace); text-transform:uppercase; }
.content-item strong { display:block; color:#e6e8e9; font-size:10px; }
.content-item p { margin:3px 0 0; color:#8f99a4; font-size:9px; line-height:1.5; }
.content-item-actions { display:flex; gap:5px; }
.content-item-actions button { padding:6px 8px; border:1px solid var(--admin-line); background:transparent; color:#bfc6ce; cursor:pointer; font:8px var(--mono,monospace); }
.content-item-actions button.remove { color:#db958a; border-color:rgba(210,120,108,.25); }
.item-editor-form { margin-top:19px; }
.item-fields { display:grid; gap:9px; }
.item-fields label { margin-top:3px; }
.item-form-actions { display:flex; align-items:center; gap:13px; flex-wrap:wrap; margin-top:3px; }
.item-form-actions .button { font-size:8px; }
.admin-inline-feedback { color:#b6c7a8; font-size:10px; }
.admin-alert { margin:15px 0; padding:12px 14px; border:1px solid rgba(229,190,111,.3); color:#ead19a; background:rgba(229,190,111,.065); font-size:11px; }
.admin-alert.error { border-color:rgba(215,120,110,.4); color:#e9a297; }
.admin-footer { display:flex; justify-content:space-between; gap:20px; padding-top:17px; border-top:1px solid var(--admin-line); color:#6f7985; font:7px var(--mono,monospace); letter-spacing:.11em; }
@media(max-width:980px) { .pack-workspace { grid-template-columns:1fr; }.pack-sidebar { display:grid; grid-template-columns:1fr 1.5fr; gap:12px; }.pack-sidebar>.card-index { grid-column:1/-1; }.pack-list { margin:0; }.pack-meta-form { grid-template-columns:1fr 1fr; }.pack-meta-form .button { grid-column:1/-1; } }
@media(max-width:700px) { .admin-shell { width:min(100% - 28px,1320px); padding-top:32px; }.admin-hero-seal { width:78px; height:78px; }.admin-hero-seal span { font-size:30px; }.admin-metrics { grid-template-columns:repeat(2,minmax(0,1fr)); }.admin-tabs { overflow:auto; }.admin-tab { white-space:nowrap; padding:12px 10px; font-size:8px; }.admin-section-head { align-items:flex-start; flex-direction:column; }.pack-sidebar { grid-template-columns:1fr; }.pack-meta-form { grid-template-columns:1fr; }.pack-meta-form .button { grid-column:auto; }.content-item { grid-template-columns:1fr; }.content-item-actions { justify-content:flex-end; }.admin-footer { flex-direction:column; }.admin-hero { align-items:flex-start; } }

/* Alpha 1.0 admin panel polish */
.admin-alert.success { border-color:rgba(128,167,137,.32); color:#b8d2b6; background:rgba(128,167,137,.07); }
.admin-alert.error { border-color:rgba(215,120,110,.4); color:#e9a297; background:rgba(215,120,110,.06); }
.admin-small-button:disabled,.button:disabled { opacity:.42; cursor:not-allowed; }
.pack-select { width:100%; border-radius:10px; transition:border-color .18s ease,background .18s ease,transform .18s ease; }
.pack-select:hover { border-color:rgba(229,190,111,.3); transform:translateY(-1px); }
.pack-select i { flex:none; font-style:normal; }
.content-item { grid-template-columns:96px minmax(0,1fr) auto; border-radius:9px; }
.content-item-actions button { border-radius:6px; transition:background .18s ease,border-color .18s ease; }
.content-item-actions button:hover { background:rgba(255,255,255,.06); border-color:rgba(229,190,111,.3); }
.content-item-actions button.remove:hover,.admin-small-button.danger:hover { background:rgba(210,120,108,.1); }
.admin-table td small { display:block; margin-top:4px; color:#7f8995; font-size:9px; }
.guest-actions { display:flex; gap:5px; flex-wrap:wrap; }
.item-editor-form [disabled],.pack-meta-form [disabled] { opacity:.5; cursor:not-allowed; }
@media (max-width:860px) {
 .admin-shell { width:min(100% - 28px,1320px); padding-top:28px; }
 .admin-metrics { grid-template-columns:repeat(2,minmax(0,1fr)); }
 .pack-workspace { grid-template-columns:1fr; }
 .pack-meta-form { grid-template-columns:1fr 1fr; }
 .content-item { grid-template-columns:72px minmax(0,1fr); }
 .content-item-actions { grid-column:2; }
}
@media (max-width:560px) {
 .admin-hero-seal { width:78px; height:78px; }
 .admin-hero-seal span { font-size:32px; }
 .admin-tabs { overflow:auto; }
 .admin-tab { white-space:nowrap; padding:11px 12px; }
 .admin-section-head { align-items:flex-start; flex-direction:column; }
 .pack-meta-form { grid-template-columns:1fr; }
 .content-item { grid-template-columns:1fr; }
 .content-item-actions { grid-column:1; }
}

.card-effect-editor { grid-column: 1 / -1; }
.card-effect-editor textarea { width: 100%; min-height: 132px; resize: vertical; font-family: ui-monospace, SFMono-Regular, Consolas, monospace; font-size: .82rem; line-height: 1.45; }
.card-effect-editor small { display: block; margin-top: .45rem; color: var(--muted, #a5a7ad); line-height: 1.45; }

/* Structured card-effect composer */
.card-effect-editor { display: grid; gap: 12px; padding: 15px; border: 1px solid rgba(220, 184, 113, .22); border-radius: 9px; background: linear-gradient(145deg, rgba(211,169,84,.055), rgba(255,255,255,.018)); }
.effect-editor-heading { display: flex; align-items: center; justify-content: space-between; gap: 12px; }
.effect-editor-heading strong { color: #e8d5ad; font: 700 9px var(--mono, monospace); letter-spacing: .14em; }
.effect-editor-version { padding: 4px 7px; border: 1px solid rgba(211,169,84,.25); border-radius: 99px; color: #c5a76f; font: 8px var(--mono, monospace); }
.effect-editor-help { margin: -3px 0 0; color: #9da6b2; font-size: 10px; line-height: 1.6; }
.effect-composer-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 10px; }
.effect-composer-grid label { display: grid; align-content: start; gap: 6px; color: #939eaa; font: 8px var(--mono, monospace); letter-spacing: .08em; }
.effect-composer-grid input, .effect-composer-grid select { min-width: 0; width: 100%; padding: 10px 11px; border: 1px solid var(--admin-line, #343b46); border-radius: 6px; background: #151a22; color: #e2e5e8; font: 11px var(--sans, Arial, sans-serif); letter-spacing: normal; }
.effect-condition-builder, .effect-json-advanced { padding: 10px 11px; border: 1px solid rgba(255,255,255,.08); border-radius: 7px; background: rgba(0,0,0,.13); }
.effect-condition-builder summary, .effect-json-advanced summary { color: #c9b17f; cursor: pointer; font: 8px var(--mono, monospace); letter-spacing: .09em; }
.effect-condition-grid { margin-top: 12px; }
.effect-condition-builder small, .effect-json-advanced small { display: block; margin-top: 9px; color: #8994a0; font-size: 9px; line-height: 1.55; }
.effect-add-button { justify-self: start; border-color: rgba(211,169,84,.35); color: #e0c58d; }
.effect-add-button:hover:not(:disabled) { background: rgba(211,169,84,.09); }
.card-effect-operation-list { display: grid; gap: 6px; }
.effect-operation-row { display: grid; grid-template-columns: 24px minmax(0,1fr) auto; align-items: center; gap: 9px; padding: 9px 10px; border: 1px solid rgba(255,255,255,.075); border-radius: 6px; background: rgba(255,255,255,.025); }
.effect-operation-number { color: #c2a46b; font: 9px var(--mono, monospace); }
.effect-operation-description { min-width: 0; color: #c3ccd5; font-size: 10px; line-height: 1.5; overflow-wrap: anywhere; }
.effect-operation-remove { padding: 5px 7px; border: 1px solid rgba(211,130,117,.28); border-radius: 5px; background: transparent; color: #d69a91; cursor: pointer; font: 7px var(--mono, monospace); }
.effect-operation-remove:hover { background: rgba(211,130,117,.09); }
.effect-editor-status { margin: 0; color: #92a99a; font-size: 9px; line-height: 1.55; }
.effect-editor-status.is-error { color: #e3a096; }
.card-effect-editor.effect-editor-disabled { opacity: .52; }
.card-effect-editor.effect-editor-disabled .effect-composer-grid, .card-effect-editor.effect-editor-disabled .effect-condition-builder, .card-effect-editor.effect-editor-disabled .effect-add-button { pointer-events: none; }
.effect-json-advanced textarea { margin-top: 10px; }
@media(max-width:600px) { .card-effect-editor { padding: 11px; }.effect-composer-grid { grid-template-columns: 1fr; }.effect-operation-row { grid-template-columns: 20px minmax(0,1fr); }.effect-operation-remove { grid-column: 2; justify-self: end; } }
