@font-face{font-family:"Google Sans";src:url("../fonts/GoogleSans-Regular.ttf") format("truetype");font-weight:400;font-display:swap}
@font-face{font-family:"Google Sans";src:url("../fonts/GoogleSans-Medium.ttf") format("truetype");font-weight:500;font-display:swap}
@font-face{font-family:"Google Sans";src:url("../fonts/GoogleSans-SemiBold.ttf") format("truetype");font-weight:600;font-display:swap}
:root{--ink:#07121f;--ink2:#112436;--paper:#eeece6;--white:#fff;--gold:#d9b76f;--line:#d9d6ce;--muted:#6c747c;--danger:#a33737;--radius:20px;--header:74px;--sidebar:260px;--ease:cubic-bezier(.22,1,.36,1)}
*{box-sizing:border-box}body{margin:0;background:var(--paper);color:var(--ink);font-family:"Google Sans",Arial,sans-serif;font-size:15px;line-height:1.45}button,input,textarea,select{font:inherit}a{color:inherit;text-decoration:none}img{display:block;max-width:100%}button{cursor:pointer}
.login-page{min-height:100svh;display:grid;place-items:center;background:radial-gradient(circle at 80% 10%,#203b50,var(--ink) 56%);padding:20px}.login-card{width:min(440px,100%);background:#f4f1ea;border-radius:28px;padding:42px;box-shadow:0 35px 90px rgba(0,0,0,.32)}.login-card>img{width:min(250px,100%);height:auto;object-fit:contain;object-position:left}.login-card>p{color:var(--muted);margin:24px 0 36px}.login-card form{display:grid;gap:9px}.login-card label,.admin-page label{display:block;font-size:11px;text-transform:uppercase;letter-spacing:.075em;color:var(--muted);margin-bottom:7px}.login-card input,.admin-page input,.admin-page textarea,.admin-page select{width:100%;border:1px solid var(--line);border-radius:12px;background:#fff;padding:13px 14px;outline:0;color:var(--ink);transition:border .2s,box-shadow .2s}.login-card input:focus,.admin-page input:focus,.admin-page textarea:focus,.admin-page select:focus{border-color:#9b7a3c;box-shadow:0 0 0 4px rgba(217,183,111,.17)}.login-card button{height:52px;border:0;border-radius:100px;background:var(--ink);color:#fff;margin-top:12px;display:flex;align-items:center;justify-content:center;gap:15px}.login-card>a{display:inline-block;margin-top:24px;color:var(--muted);font-size:13px}
.alert{padding:13px 16px;border-radius:12px;margin-bottom:20px;font-weight:500}.alert-success{background:#dcebdc;color:#1f5b2b}.alert-error{background:#f3dddd;color:#842929}
.admin-header{position:fixed;z-index:30;top:0;left:0;right:0;height:var(--header);display:grid;grid-template-columns:var(--sidebar) 1fr auto;align-items:center;background:var(--ink);color:#fff;padding:0 26px;border-bottom:1px solid rgba(255,255,255,.1)}.admin-brand{display:flex;align-items:center;gap:12px}.admin-brand img{width:118px;height:58px;object-fit:contain;object-position:left;background:#f4f1ea;border-radius:10px;padding:5px 8px}.admin-brand span{font-size:9px;letter-spacing:.18em;color:rgba(255,255,255,.45)}.admin-actions{display:flex;gap:22px;font-size:13px;color:rgba(255,255,255,.65)}.admin-actions a:hover{color:var(--gold)}.admin-menu{display:none;border:0;background:transparent;width:44px;padding:10px}.admin-menu span{display:block;height:1px;background:#fff;margin:6px}
.admin-shell{display:grid;grid-template-columns:var(--sidebar) 1fr;min-height:100svh;padding-top:var(--header)}.admin-sidebar{position:fixed;top:var(--header);bottom:0;left:0;width:var(--sidebar);background:#0c1b2a;color:#fff;padding:30px 18px;overflow:auto}.admin-sidebar>p{text-transform:uppercase;letter-spacing:.12em;font-size:10px;color:rgba(255,255,255,.35);padding:0 12px;margin:0 0 15px}.admin-sidebar>button{width:100%;border:0;background:transparent;color:rgba(255,255,255,.64);display:flex;align-items:center;gap:13px;text-align:left;padding:12px;border-radius:11px;margin-bottom:3px;transition:.2s}.admin-sidebar>button span{font-size:10px;color:rgba(255,255,255,.28)}.admin-sidebar>button:hover,.admin-sidebar>button.is-active{background:rgba(255,255,255,.08);color:#fff}.admin-sidebar>button.is-active span{color:var(--gold)}.admin-tip{margin-top:36px;padding:16px;background:rgba(255,255,255,.055);border:1px solid rgba(255,255,255,.08);border-radius:14px}.admin-tip strong{color:var(--gold);font-size:12px}.admin-tip p{font-size:11px;color:rgba(255,255,255,.42);margin:8px 0 0}
.admin-main{grid-column:2;padding:clamp(28px,5vw,70px);padding-bottom:130px;min-width:0}.admin-panel{display:none;max-width:1180px;margin:0 auto}.admin-panel.is-active{display:block;animation:panelIn .45s var(--ease)}@keyframes panelIn{from{opacity:0;transform:translateY(15px)}to{opacity:1;transform:none}}.panel-heading{display:grid;grid-template-columns:1fr minmax(250px,.55fr);gap:40px;align-items:end;margin-bottom:35px}.panel-heading>div{display:flex;align-items:flex-start;gap:15px}.panel-heading span{font-size:11px;color:#957638;margin-top:12px}.panel-heading h1{font-size:clamp(2.1rem,4vw,4.3rem);line-height:1;letter-spacing:-.055em;font-weight:500;margin:0}.panel-heading>p{color:var(--muted);margin:0;max-width:420px}
.editor-card{background:rgba(255,255,255,.76);border:1px solid rgba(7,18,31,.1);border-radius:var(--radius);padding:clamp(22px,3vw,36px);margin-bottom:18px;box-shadow:0 14px 42px rgba(7,18,31,.045);transition:box-shadow .25s,transform .25s}.editor-card:hover{box-shadow:0 20px 60px rgba(7,18,31,.075)}.editor-card h2{font-size:1.25rem;margin:0 0 25px;font-weight:500}.item-card{position:relative}.item-card.is-moving{opacity:.55;transform:scale(.985)}.card-toolbar{display:flex;align-items:center;justify-content:space-between;gap:20px;border-bottom:1px solid var(--line);padding-bottom:17px;margin-bottom:25px}.card-toolbar strong{font-size:1.05rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.card-toolbar>div{display:flex;gap:5px}.card-toolbar button{border:1px solid var(--line);background:#fff;min-width:36px;height:34px;border-radius:9px;color:var(--muted)}.card-toolbar button:hover{background:var(--ink);color:#fff;border-color:var(--ink)}.card-toolbar button.danger{padding:0 10px;color:var(--danger)}.card-toolbar button.danger:hover{background:var(--danger);color:#fff;border-color:var(--danger)}
.bi-field{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin-top:18px}.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin:18px 0}.form-grid>div,.bi-field>div{min-width:0}.admin-page textarea{resize:vertical;min-height:84px}.admin-page select{height:48px}.image-field{display:grid;grid-template-columns:190px 1fr;gap:22px;align-items:center;padding:16px;background:#f4f1ea;border-radius:15px;margin:0 0 20px}.image-preview{height:105px;border-radius:12px;overflow:hidden;background:var(--ink);position:relative;display:grid;place-items:center;color:rgba(255,255,255,.25);font-size:11px}.image-preview.portrait{height:180px}.image-preview img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:1}.image-field small{display:block;color:var(--muted);font-size:10px;margin-top:7px}.file-input{padding:10px!important;background:#fff!important}.media-editor-grid{display:block}.media-summary{display:flex;gap:12px;margin-bottom:20px}.media-summary>div{background:var(--ink);color:#fff;border-radius:14px;padding:17px 23px;display:flex;align-items:baseline;gap:10px}.media-summary strong{font-size:2rem;color:var(--gold);font-weight:500}.media-summary span{font-size:11px;color:rgba(255,255,255,.5)}.add-button{width:100%;height:58px;border:1px dashed #a9a49a;background:rgba(255,255,255,.35);border-radius:15px;color:var(--ink);font-weight:500}.add-button:hover{background:#fff;border-style:solid}
.media-thumbnail-field small{min-height:18px}.thumbnail-auto-button{margin-top:10px;min-height:36px;padding:0 14px;border:1px solid var(--line);border-radius:10px;background:#fff;color:var(--ink);font-size:12px}.thumbnail-auto-button:hover{border-color:#9b7a3c;background:#faf5e9}.thumbnail-auto-button[hidden]{display:none}
.save-bar{position:fixed;z-index:20;left:calc(var(--sidebar) + 30px);right:30px;bottom:22px;min-height:70px;border-radius:18px;background:rgba(7,18,31,.94);backdrop-filter:blur(14px);color:#fff;display:flex;align-items:center;justify-content:space-between;padding:12px 14px 12px 24px;box-shadow:0 22px 60px rgba(0,0,0,.22)}.save-bar>span{font-size:12px;color:rgba(255,255,255,.55);display:flex;align-items:center;gap:9px}.save-bar>span i{width:7px;height:7px;background:var(--gold);border-radius:50%}.save-bar button{height:48px;border:0;border-radius:100px;background:var(--gold);color:var(--ink);padding:0 22px;font-weight:600}.save-bar button b{margin-left:14px}
@media(max-width:900px){:root{--sidebar:240px}.admin-main{padding:35px 25px 130px}.panel-heading{grid-template-columns:1fr}.bi-field{grid-template-columns:1fr}.image-field{grid-template-columns:160px 1fr}}
@media(max-width:700px){:root{--header:66px}.admin-header{grid-template-columns:45px 1fr auto;padding:0 10px}.admin-menu{display:block}.admin-brand img{width:120px}.admin-brand span{display:none}.admin-actions a:first-child{display:none}.admin-actions{font-size:12px}.admin-shell{grid-template-columns:1fr}.admin-sidebar{z-index:25;transform:translateX(-105%);transition:transform .35s var(--ease);width:min(85vw,310px);box-shadow:20px 0 60px rgba(0,0,0,.25)}body.admin-menu-open .admin-sidebar{transform:none}.admin-main{grid-column:1;padding:28px 12px 125px}.panel-heading{gap:15px;margin-bottom:24px}.panel-heading h1{font-size:2.55rem}.panel-heading>p{font-size:13px}.editor-card{padding:18px 14px;border-radius:16px}.card-toolbar{align-items:flex-start}.card-toolbar>div{flex-wrap:wrap;justify-content:flex-end}.card-toolbar button.danger{font-size:0;width:36px;padding:0}.card-toolbar button.danger::after{content:"×";font-size:19px}.form-grid{grid-template-columns:1fr}.bi-field{gap:12px}.image-field{grid-template-columns:110px 1fr;gap:12px;padding:10px}.image-preview{height:84px}.image-preview.portrait{height:120px}.media-summary>div{padding:13px 16px}.media-summary strong{font-size:1.5rem}.save-bar{left:10px;right:10px;bottom:10px;min-height:62px;padding:8px 8px 8px 13px}.save-bar>span{font-size:0}.save-bar>span::after{content:"Есть несохранённые изменения";font-size:10px}.save-bar button{height:46px;padding:0 16px;font-size:13px}.save-bar button b{margin-left:8px}.login-card{padding:28px 22px}}
