.admin-page { min-height: 100vh; background: radial-gradient(circle at 80% 0%, rgba(247,201,92,.09), transparent 28%), var(--bg); }
.admin-nav { height: 100%; display:flex; align-items:center; justify-content:space-between; gap:20px; }
.admin-nav-right { display:flex; align-items:center; gap:18px; }
.admin-status { color:#9aa7b7; font-size:11px; }
.admin-status i { display:inline-block; width:7px; height:7px; margin-right:7px; border-radius:50%; background:#36e0a2; box-shadow:0 0 10px #36e0a2; }
.admin-user { max-width:190px; overflow:hidden; color:var(--gold-soft); font-size:11px; text-overflow:ellipsis; white-space:nowrap; }
.admin-shell { padding-top:72px; padding-bottom:90px; }
.admin-heading { display:flex; align-items:flex-end; justify-content:space-between; gap:35px; margin-bottom:27px; }
.admin-heading h1 { margin-bottom:12px; font-size:clamp(37px,5vw,60px); }
.admin-heading > div > p:last-child { margin:0; color:var(--muted); font-size:14px; }
.admin-actions { display:flex; flex-wrap:wrap; justify-content:flex-end; gap:9px; }
.admin-actions .button { min-height:42px; font-size:12px; }
.admin-notice { display:flex; gap:12px; align-items:flex-start; padding:15px 17px; margin-bottom:25px; border:1px solid rgba(54,224,162,.24); border-radius:12px; background:rgba(54,224,162,.06); color:#a8cabe; font-size:12px; }
.admin-notice > span { width:19px; height:19px; display:grid; place-items:center; flex-shrink:0; border:1px solid #36e0a2; border-radius:50%; color:#36e0a2; font-size:11px; }
.admin-notice p { margin:0; line-height:1.55; }.admin-notice strong { color:#8ee7c4; }
.admin-layout { display:grid; grid-template-columns:minmax(0,1.25fr) minmax(360px,.75fr); align-items:start; gap:20px; }
.admin-panel { border:1px solid var(--line); border-radius:17px; background:rgba(13,23,36,.72); box-shadow:0 18px 45px rgba(0,0,0,.14); }
.panel-head { display:flex; justify-content:space-between; align-items:flex-start; gap:16px; padding:22px 23px 18px; border-bottom:1px solid var(--line); }
.panel-head h2 { margin:0 0 4px; font-size:19px; letter-spacing:-.03em; }.panel-head p { margin:0; color:#7f8b9a; font-size:11px; }
.text-button { border:0; padding:0; background:transparent; color:var(--gold); font-size:11px; cursor:pointer; }.danger-text { color:#ff99a9; }
.admin-product-list { padding:7px 15px 15px; }
.admin-product-row { display:grid; grid-template-columns:44px minmax(0,1fr) auto auto; align-items:center; gap:13px; padding:14px 8px; border-bottom:1px solid rgba(255,255,255,.07); }.admin-product-row:last-child { border-bottom:0; }
.row-icon { width:43px; height:43px; display:grid; place-items:center; border:1px solid color-mix(in srgb,var(--row-accent) 50%,transparent); border-radius:12px; color:var(--row-accent); background:color-mix(in srgb,var(--row-accent) 13%,transparent); font-size:20px; }
.row-info { min-width:0; }.row-info strong { display:block; overflow:hidden; color:#eef1f5; font-size:13px; text-overflow:ellipsis; white-space:nowrap; }.row-info small { display:block; overflow:hidden; margin-top:3px; color:#8793a2; font-size:10px; text-overflow:ellipsis; white-space:nowrap; }
.row-price { color:var(--gold-soft); font-size:12px; font-weight:800; white-space:nowrap; }.row-actions { display:flex; gap:6px; }
.row-action { width:29px; height:29px; display:grid; place-items:center; border:1px solid var(--line); border-radius:7px; background:rgba(255,255,255,.035); color:#b7c0cb; cursor:pointer; }.row-action:hover { border-color:var(--gold); color:var(--gold); }.row-action.delete:hover { border-color:#f27f90; color:#ff9eaa; }
.empty-products { padding:52px 22px; color:var(--muted); text-align:center; font-size:13px; }.editor-panel { position:sticky; top:101px; }
.icon-close { display:none; border:0; background:transparent; color:var(--muted); font-size:23px; cursor:pointer; }
.product-form { display:grid; gap:13px; padding:22px 23px 24px; }.product-form label { display:grid; gap:6px; color:var(--muted-strong); font-size:11px; font-weight:700; }.label-hint { color:#748294; font-weight:400; }
.product-form input:not([type=color]), .product-form select, .product-form textarea { width:100%; border:1px solid rgba(255,255,255,.11); border-radius:8px; outline:0; color:var(--text); background:rgba(255,255,255,.045); font-size:12px; }
.product-form input:not([type=color]), .product-form select { height:40px; padding:0 11px; }.product-form textarea { resize:vertical; min-height:77px; padding:10px 11px; line-height:1.5; }.product-form input:focus, .product-form select:focus, .product-form textarea:focus { border-color:var(--gold); box-shadow:0 0 0 3px rgba(247,201,92,.08); }
.product-form input[type=color] { width:100%; height:40px; padding:3px; border:1px solid rgba(255,255,255,.11); border-radius:8px; background:rgba(255,255,255,.045); cursor:pointer; }.product-form select { appearance:auto; }.form-row { display:grid; grid-template-columns:1fr 1fr; gap:10px; }
.editor-actions { display:flex; justify-content:flex-end; gap:9px; margin-top:6px; padding-top:17px; border-top:1px solid var(--line); }.editor-actions .button { min-height:42px; font-size:12px; }
.admin-page .toast { bottom:28px; }.admin-page .toast.show { opacity:1; visibility:visible; transform:translate(-50%,0); }
.auth-gate { max-width:570px; margin:25px 0 80px; padding:42px; border:1px solid rgba(247,201,92,.28); border-radius:20px; background:radial-gradient(circle at 90% 0%, rgba(247,201,92,.14), transparent 35%), rgba(13,23,36,.84); box-shadow:0 20px 55px rgba(0,0,0,.2); }
.auth-symbol { width:52px; height:52px; display:grid; place-items:center; margin-bottom:28px; border:1px solid rgba(247,201,92,.7); border-radius:50% 50% 50% 12px; color:var(--gold); background:rgba(247,201,92,.08); font-size:29px; font-weight:900; transform:rotate(-10deg); }
.auth-gate .eyebrow { margin-bottom:12px; }.auth-gate h2 { margin:0 0 12px; color:var(--text); font-size:clamp(25px,4vw,35px); letter-spacing:-.04em; }.auth-gate > p:not(.eyebrow):not(.auth-error) { max-width:470px; margin-bottom:25px; color:var(--muted); font-size:13px; line-height:1.7; }.auth-error { margin:16px 0 0; color:#ff9da9; font-size:12px; line-height:1.5; }
.login-form { display:grid; gap:14px; max-width:410px; }.login-form label { display:grid; gap:7px; color:var(--muted-strong); font-size:11px; font-weight:700; }.login-form input { width:100%; height:43px; padding:0 12px; border:1px solid rgba(255,255,255,.12); border-radius:9px; outline:0; color:var(--text); background:rgba(255,255,255,.05); font-size:13px; }.login-form input:focus { border-color:var(--gold); box-shadow:0 0 0 3px rgba(247,201,92,.1); }.login-form button { justify-self:start; margin-top:5px; min-height:44px; }
.admin-page [hidden], .admin-page .is-hidden { display:none !important; }
@media(max-width:900px){.admin-heading{align-items:flex-start;flex-direction:column}.admin-actions{justify-content:flex-start}.admin-layout{grid-template-columns:1fr}.editor-panel{position:relative;top:auto;inset:auto;overflow:visible;border-radius:17px;transform:none;transition:none}.editor-panel.open{transform:none}.icon-close{display:none}.admin-nav-right .admin-status{display:none}}
@media(max-width:560px){.admin-shell{padding-top:43px}.admin-nav-right .button{padding:0 12px;font-size:10px}.admin-product-row{grid-template-columns:39px minmax(0,1fr) auto;gap:9px}.row-icon{width:39px;height:39px}.row-price{grid-column:2;font-size:11px}.row-actions{grid-column:3;grid-row:1 / span 2}.form-row{grid-template-columns:1fr}.admin-heading h1{font-size:38px}.panel-head{padding:18px}.product-form{padding:18px}.auth-gate{padding:27px 22px;margin-bottom:55px}.admin-user{display:none}}
