:root { --ink:#171817; --panel:#242522; --panel-2:#2d2f2b; --paper:#f1efe8; --muted:#a7a89f; --line:rgb(255 255 255 / 13%); --accent:#c4a66e; --danger:#d56a62; --success:#7fb68b; --display:"Oswald","Arial Narrow",sans-serif; --body:"Alef",Arial,sans-serif; }
*,*::before,*::after{box-sizing:border-box} html{scroll-behavior:smooth} body{margin:0;background:var(--ink);color:#fff;font-family:var(--body);line-height:1.55} body.admin-menu-open{overflow:hidden} a{color:inherit;text-decoration:none} button,input,textarea,select{font:inherit} button{color:inherit} [hidden]{display:none!important} ::selection{background:var(--accent);color:var(--ink)}
.admin-header{position:sticky;z-index:50;top:0;height:4.75rem;display:grid;grid-template-columns:1fr auto 1fr;align-items:center;padding:0 clamp(1.25rem,3vw,3rem);border-bottom:1px solid var(--line);background:rgb(23 24 23 / 94%);backdrop-filter:blur(14px)}
.admin-brand{justify-self:start;display:flex;align-items:center;gap:.75rem;font-family:var(--display);font-size:.78rem;font-weight:500;letter-spacing:.15em;text-transform:uppercase}.admin-brand span:first-child{display:grid;width:2.25rem;height:2.25rem;place-items:center;border:1px solid var(--accent);color:var(--accent);letter-spacing:0}.admin-nav{display:flex;align-items:center;gap:clamp(1rem,2.5vw,2.5rem)}.admin-nav a,.admin-header__actions a{position:relative;padding:.5rem 0;color:var(--muted);font-size:.7rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase;transition:color .2s}.admin-nav a:hover,.admin-nav a[aria-current=page],.admin-header__actions a:hover{color:#fff}.admin-nav a[aria-current=page]::after{content:"";position:absolute;right:0;bottom:0;left:0;height:1px;background:var(--accent)}.admin-header__actions{justify-self:end;display:flex;gap:1.25rem}.admin-logout{color:#fff!important}.admin-menu-toggle{display:none;border:0;background:transparent;font-size:.72rem;letter-spacing:.12em;text-transform:uppercase}
.admin-main{width:min(82rem,calc(100% - 3rem));min-height:calc(100vh - 8.75rem);margin:auto;padding:clamp(3.5rem,7vw,7rem) 0}.admin-page-header{display:flex;align-items:end;justify-content:space-between;gap:2rem;margin-bottom:3rem;padding-bottom:2rem;border-bottom:1px solid var(--line)}.admin-kicker{margin:0 0 .8rem;color:var(--accent);font-size:.7rem;font-weight:700;letter-spacing:.2em;text-transform:uppercase}.admin-page-header h1,.admin-card h2,.editor-card h2,.auth-card h1{margin:0;font-family:var(--display);font-weight:300;letter-spacing:-.025em;line-height:.95;text-transform:uppercase}.admin-page-header h1{font-size:clamp(3.25rem,7vw,6.5rem)}.admin-page-header p{max-width:30rem;margin:.8rem 0 0;color:var(--muted)}
.admin-section{margin-top:clamp(3.5rem,7vw,6rem)}.section-label{display:flex;align-items:center;justify-content:space-between;gap:1rem;margin-bottom:1.2rem}.section-label h2{margin:0;font-family:var(--display);font-size:1.4rem;font-weight:400;letter-spacing:.04em;text-transform:uppercase}.section-label span{color:var(--muted);font-size:.7rem;letter-spacing:.1em;text-transform:uppercase}
.admin-button{min-height:2.9rem;display:inline-flex;align-items:center;justify-content:center;gap:.55rem;padding:.7rem 1rem;border:1px solid transparent;background:var(--paper);color:var(--ink);font-size:.7rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase;cursor:pointer;transition:background .2s,color .2s,border .2s,transform .2s}.admin-button:hover{background:var(--accent);transform:translateY(-1px)}.admin-button--secondary{background:transparent;color:#fff;border-color:var(--line)}.admin-button--secondary:hover{background:#fff;color:var(--ink)}.admin-button--danger{background:transparent;color:var(--danger);border-color:rgb(213 106 98 / 40%)}.admin-button--danger:hover{background:var(--danger);color:#fff}.admin-button--small{min-height:2.35rem;padding:.5rem .7rem;font-size:.64rem}
.notice{margin:0 0 2rem;padding:1rem 1.15rem;border-left:3px solid var(--accent);background:var(--panel);color:#fff}.notice--success{border-color:var(--success)}.notice--error{border-color:var(--danger)}
.admin-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem}.admin-card{padding:1.5rem;border:1px solid var(--line);background:var(--panel)}.admin-card h2{font-size:2rem}.stat{display:flex;align-items:flex-end;justify-content:space-between;min-height:9rem}.stat strong{font-family:var(--display);font-size:4rem;font-weight:300;line-height:1;color:var(--accent)}.stat span{max-width:8rem;color:var(--muted);font-size:.75rem;text-align:right}
.item-list{display:grid;gap:.75rem}.admin-item{display:grid;grid-template-columns:minmax(10rem,.65fr) 1.35fr auto;gap:1.5rem;align-items:center;padding:1.25rem 1.4rem;border:1px solid var(--line);background:var(--panel);transition:border-color .2s,background .2s}.admin-item:hover{border-color:rgb(196 166 110 / 45%);background:var(--panel-2)}.admin-item time,.admin-meta{color:var(--accent);font-size:.7rem;font-weight:700;letter-spacing:.09em;text-transform:uppercase}.admin-item h2{margin:0;font-family:var(--display);font-size:1.45rem;font-weight:400;line-height:1.2;text-transform:uppercase}.admin-item p{margin:.2rem 0 0;color:var(--muted);font-size:.92rem}.item-actions{display:flex;gap:.5rem}.item-actions form{margin:0}.empty-panel{padding:3rem;border:1px dashed var(--line);color:var(--muted);text-align:center}
.editor-card{width:min(47rem,100%);padding:clamp(1.4rem,4vw,2.5rem);border:1px solid var(--line);background:var(--panel)}.editor-card--wide{width:100%}.editor-card h2{margin-bottom:1.8rem;font-size:clamp(2rem,5vw,3.2rem)}.admin-form{display:grid;gap:1.15rem}.admin-form label{display:grid;gap:.45rem;color:var(--muted);font-size:.7rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase}.admin-form input,.admin-form textarea,.admin-form select{width:100%;padding:.9rem 1rem;border:1px solid var(--line);border-radius:0;outline:none;background:var(--ink);color:#fff;font-size:1rem;letter-spacing:normal;text-transform:none}.admin-form textarea{min-height:26rem;resize:vertical;line-height:1.7}.admin-form input:focus,.admin-form textarea:focus,.admin-form select:focus{border-color:var(--accent);box-shadow:0 0 0 1px var(--accent)}.form-actions{display:flex;flex-wrap:wrap;gap:.65rem;margin-top:.5rem}.field-help{margin:-.65rem 0 0;color:var(--muted);font-size:.82rem}
.content-preview{max-width:57rem;padding:clamp(1.5rem,4vw,3rem);border:1px solid var(--line);background:var(--panel)}.content-preview p{margin:0;color:#dedfd9;font-size:1.02rem;line-height:1.85;white-space:normal}
.media-admin-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem}.media-admin-card{overflow:hidden;border:1px solid var(--line);background:var(--panel)}.js .media-admin-card--extra:not(.is-visible){display:none}.media-admin-card iframe,.youtube-facade{display:block;width:100%;aspect-ratio:16/9;border:0;background:#111}.youtube-facade{position:relative;padding:0;overflow:hidden;cursor:pointer}.youtube-facade::after{position:absolute;inset:0;background:linear-gradient(0deg,rgb(0 0 0 / 30%),transparent 55%);content:"";transition:background .2s}.youtube-facade img{width:100%;height:100%;object-fit:cover;transition:transform .3s}.youtube-facade__play{position:absolute;z-index:1;top:50%;left:50%;width:4rem;height:2.8rem;display:grid;place-items:center;border-radius:.75rem;background:#f03;color:#fff;box-shadow:0 .6rem 2rem rgb(0 0 0 / 35%);transform:translate(-50%,-50%);transition:background .2s,transform .2s}.youtube-facade__play svg{width:1.65rem;fill:currentColor}.youtube-facade:hover img,.youtube-facade:focus-visible img{transform:scale(1.025)}.youtube-facade:hover .youtube-facade__play,.youtube-facade:focus-visible .youtube-facade__play{background:#e0002a;transform:translate(-50%,-50%) scale(1.06)}.youtube-facade:focus-visible{outline:2px solid var(--accent);outline-offset:-2px}.youtube-fallback{display:grid;min-height:12rem;place-items:center;color:var(--accent);text-decoration:underline}.media-admin-card__body{display:flex;justify-content:space-between;gap:1rem;padding:1rem}.media-admin-card__body .item-actions{flex-wrap:wrap}.invalid-media{display:grid;min-height:12rem;place-items:center;padding:1rem;color:var(--muted);text-align:center}.admin-load-more{display:none;margin:2rem auto 0}.js .admin-load-more{display:flex}
.orders-wrap{overflow-x:auto;border:1px solid var(--line);background:var(--panel)}.orders-table{width:100%;min-width:72rem;border-collapse:collapse}.orders-table th,.orders-table td{padding:1rem;border-bottom:1px solid var(--line);text-align:left;vertical-align:top}.orders-table th{position:sticky;top:0;background:var(--panel-2);color:var(--muted);font-size:.65rem;letter-spacing:.1em;text-transform:uppercase}.orders-table td{font-size:.88rem}.orders-table tr:last-child td{border-bottom:0}.orders-table strong{display:block;color:#fff}.orders-table small{display:block;color:var(--muted);line-height:1.5}.money{font-variant-numeric:tabular-nums;white-space:nowrap}.status-pill{display:inline-flex;align-items:center;gap:.4rem;padding:.35rem .55rem;background:rgb(127 182 139 / 13%);color:var(--success);font-size:.67rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase}.pagination{display:flex;flex-wrap:wrap;gap:.4rem;margin-top:1.5rem}.page-link{display:grid;width:2.5rem;height:2.5rem;place-items:center;border:1px solid var(--line);color:var(--muted);font-size:.8rem}.page-link:hover,.page-link.active{border-color:var(--accent);background:var(--accent);color:var(--ink)}
.admin-footer{height:4rem;display:flex;align-items:center;justify-content:center;border-top:1px solid var(--line);color:var(--muted);font-size:.72rem;letter-spacing:.08em;text-transform:uppercase}
.auth-page{min-height:100svh;display:grid;grid-template-columns:1.1fr .9fr;background:var(--ink)}.auth-visual{position:relative;background:url("../../img/home_photo3.jpg") center 26%/cover no-repeat}.auth-visual::after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,transparent,rgb(23 24 23 / 22%))}.auth-brand{position:absolute;z-index:1;top:2rem;left:2rem;display:flex;align-items:center;gap:.8rem;font-family:var(--display);font-size:.8rem;letter-spacing:.12em;text-transform:uppercase}.auth-brand span{display:grid;width:2.5rem;height:2.5rem;place-items:center;border:1px solid #fff}.auth-panel{display:grid;place-items:center;padding:2rem}.auth-card{width:min(25rem,100%)}.auth-card h1{font-size:clamp(3.5rem,7vw,6rem)}.auth-card>p{margin:1rem 0 2rem;color:var(--muted)}.auth-card .admin-form input{background:var(--panel)}.auth-back{display:inline-block;margin-top:1.25rem;color:var(--muted);font-size:.75rem;border-bottom:1px solid var(--line)}
@media(max-width:1050px){.admin-header{grid-template-columns:1fr auto}.admin-menu-toggle{display:flex;align-items:center;gap:.7rem;justify-self:end;cursor:pointer}.admin-menu-toggle i,.admin-menu-toggle i::before{display:block;width:1.25rem;height:1px;background:#fff;content:"";transition:transform .2s}.admin-menu-toggle i::before{transform:translateY(-.35rem)}.admin-menu-toggle[aria-expanded=true] i{transform:rotate(45deg)}.admin-menu-toggle[aria-expanded=true] i::before{transform:rotate(-90deg)}.admin-nav{position:fixed;inset:4.75rem 0 auto;display:flex;flex-direction:column;align-items:stretch;gap:0;padding:1rem 1.5rem 1.5rem;border-bottom:1px solid var(--line);background:var(--ink);opacity:0;visibility:hidden;transform:translateY(-1rem);transition:.25s}.admin-nav.is-open{opacity:1;visibility:visible;transform:none}.admin-nav a{padding:.8rem 0;border-bottom:1px solid var(--line)}.admin-header__actions{display:none}.admin-grid,.media-admin-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:720px){.admin-main{width:calc(100% - 2rem);padding:3.25rem 0}.admin-page-header{display:block}.admin-page-header .admin-button{margin-top:1.5rem}.admin-grid,.media-admin-grid{grid-template-columns:1fr}.admin-item{grid-template-columns:1fr}.item-actions{margin-top:.5rem}.auth-page{grid-template-columns:1fr}.auth-visual{display:none}.auth-panel{padding:1.25rem}.form-actions .admin-button{flex:1}.content-preview{padding:1.25rem}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{scroll-behavior:auto!important;transition:none!important}}
.admin-nav__mobile{display:none}
@media(max-width:1050px){.admin-nav__mobile{display:block}}
