@font-face{font-family:Onest;src:url(fonts/Onest-Variable.ttf) format('truetype');font-weight:100 900;font-display:swap}
:root{--bg:#f3f6f4;--surface:#fff;--text:#203c33;--muted:#63756c;--line:#dae3de;--primary:#245d4e;--tint:#e8f0ec;--error:#a33f42;--radius:12px}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--text);font:14px/1.57 Onest,Arial,sans-serif}a{color:var(--primary);text-decoration:none}a:hover{text-decoration:underline}button,input,select,textarea{font:inherit}button,a,input,select,textarea{touch-action:manipulation}button{cursor:pointer}button:disabled{cursor:wait}h1,h2,h3,p{margin:0}h1{font-size:28px;line-height:36px;font-weight:500;overflow-wrap:anywhere}h2{font-size:18px;line-height:26px;font-weight:500;margin-bottom:20px}h3{font-size:16px;font-weight:500}p+p{margin-top:12px}strong,label{font-weight:500}:focus-visible{outline:2px solid var(--primary);outline-offset:3px}[hidden]{display:none!important}.caption,.helper{font-size:12px;line-height:18px;color:var(--muted)}.brand{font-size:19px;line-height:26px;letter-spacing:.02em;font-weight:500;white-space:nowrap}.button{height:44px;min-width:104px;display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:0 16px;border:1px solid transparent;border-radius:8px;white-space:nowrap;font-weight:500;font-size:14px;line-height:20px;text-decoration:none!important}.primary{background:var(--primary);color:#fff}.primary:hover{background:#194637}.secondary{background:white;color:var(--text);border-color:var(--line)}.secondary:hover{background:var(--tint)}.ghost{background:transparent;color:var(--text)}.danger{background:#fbeaec;color:var(--error);border-color:#e5b7b9}.danger-text{color:var(--error)!important}.button:disabled{opacity:.55}.button.is-loading{min-width:152px;opacity:.85}.button.is-loading:before{content:'';width:16px;height:16px;border:2px solid currentColor;border-right-color:transparent;border-radius:50%;animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}@media(prefers-reduced-motion:reduce){.button.is-loading:before{animation:none;border-style:dotted}}
.sidebar{position:fixed;inset:0 auto 0 0;width:240px;padding:20px 16px;background:white;border:1px solid var(--line);overflow:auto;z-index:30}.sidebar>.caption{margin:8px 0 14px;font-size:10px}.sidebar .brand{font-size:18px}.nav-item{display:flex;align-items:center;justify-content:space-between;min-height:40px;padding:9px 12px;margin-bottom:3px;color:var(--text);border-radius:8px;font-size:14px}.nav-item:hover{background:var(--bg);text-decoration:none}.nav-item.active{background:var(--tint)}.nav-heading{display:block;font-size:11px;color:var(--muted);padding:16px 12px 8px}.nested{padding-left:24px}.nav-item.unavailable{color:var(--muted);cursor:default}.unavailable .caption{font-size:10px;opacity:.65}.sidebar-note{margin:20px 12px}.workspace{margin-left:240px}.topbar{height:64px;padding:0 24px;display:flex;align-items:center;gap:24px;background:white}.breadcrumb{margin-right:auto;font-size:12px;color:var(--muted)}.environment{font-size:12px;white-space:nowrap}.environment.dev{color:#855e18}.site-link,.profile-menu{font-size:12px;white-space:nowrap}.profile-menu{position:relative}.profile-menu summary{cursor:pointer}.profile-menu>div{position:absolute;right:0;top:30px;width:210px;background:white;padding:16px;border:1px solid var(--line);border-radius:8px;z-index:40;box-shadow:0 8px 24px #203c3312}.profile-menu a{display:block;padding:8px}.menu-toggle{display:none}.content{padding:24px;max-width:1700px;margin:auto}.page-heading{display:flex;align-items:center;justify-content:space-between;gap:16px;margin:0 0 24px}.page-heading .caption{margin-bottom:8px}.actions{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.panel{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);padding:24px}.panel>p{margin-bottom:16px}.product-columns{display:grid;grid-template-columns:minmax(0,1.76fr) minmax(310px,1fr);gap:24px}.main-column,.side-column{display:flex;flex-direction:column;gap:24px;min-width:0}.field{display:flex;flex-direction:column;gap:8px;margin-bottom:20px;min-width:0}.field>label{font-size:14px;line-height:20px}.field input,.field select,.field textarea,input[type=search]{width:100%;min-width:0;border:1px solid var(--line);border-radius:8px;background:white;padding:10px 12px;color:var(--text);min-height:44px}.field textarea{resize:vertical;line-height:22px}.field input[readonly]{background:var(--bg);color:var(--muted)}.field input:focus,.field textarea:focus,.field select:focus{border-color:var(--primary);outline:2px solid #245d4e20;outline-offset:1px}.field input[aria-invalid=true],.field select[aria-invalid=true],.field textarea[aria-invalid=true],.field input.invalid{border-color:var(--error)}.field-error{font-size:12px;line-height:18px;color:var(--error)}.field-error:empty{display:none}.field .helper{margin:0}.required{color:var(--error)}.editor-toolbar{display:flex;border:1px solid var(--line);border-bottom:0;border-radius:8px 8px 0 0;margin-bottom:-8px;background:var(--bg)}.editor-toolbar .button{height:36px;min-width:36px;padding:0 12px}.editor-toolbar+textarea{border-radius:0 0 8px 8px}.gallery{display:grid;grid-template-columns:repeat(auto-fill,minmax(160px,1fr));gap:16px;margin:20px 0}.photo-tile{border:1px solid var(--line);border-radius:8px;overflow:hidden;min-width:0}.photo-tile>img{display:block;width:100%;height:156px;object-fit:cover;background:var(--tint)}.photo-tile>strong{display:block;padding:8px 10px;font-size:12px}.photo-tile:first-child{border-color:var(--primary)}.photo-tools{display:flex;flex-wrap:wrap;padding:0 6px 8px;gap:3px}.photo-tools button{background:transparent;border:0;color:var(--text);font-size:11px;padding:5px}.photo-tools button:hover{background:var(--tint);border-radius:4px}.file-button{position:relative;overflow:hidden;cursor:pointer}.file-button input{position:absolute;inset:0;opacity:0;cursor:pointer;width:100%}.save-bar{position:sticky;bottom:0;display:flex;align-items:center;gap:12px;background:#ffffffed;border:1px solid var(--line);border-radius:12px;padding:16px;margin:24px 0 0;z-index:10;backdrop-filter:blur(8px)}.save-bar .helper{margin-left:auto}.archive-form{margin:24px 0}.form-panel{max-width:760px}.alert{padding:16px;border:1px solid var(--line);border-radius:8px;margin-bottom:20px;overflow-wrap:anywhere}.alert.success{color:#267354;background:#e6f4ec;border-color:#b8ddc9}.alert.error{color:var(--error);background:#fbeaec;border-color:#e5b7b9}.alert.warning{color:#855e18;background:#fff6de;border-color:#eddbad}.alert.info{color:#315d88;background:#edf4fb;border-color:#cbddec}.table-panel{padding:0;overflow:hidden}.table-scroll{overflow:auto}table{width:100%;border-collapse:collapse;text-align:left}th{background:var(--tint);color:var(--muted);font-size:12px;font-weight:400}th,td{padding:14px 16px;border-bottom:1px solid var(--line);vertical-align:middle}tbody tr:last-child td{border-bottom:0}tbody tr:hover{background:#f8faf9}td .actions{font-size:12px}.table-photo{width:44px;height:58px;object-fit:cover;border-radius:4px;display:block}.photo-placeholder{width:44px;height:58px;background:var(--tint);border-radius:4px}.badge{display:inline-flex;font-size:12px;border-radius:6px;padding:3px 8px;background:var(--bg);color:var(--muted);white-space:nowrap}.badge.success{background:#e6f4ec;color:#267354}.filter-bar{display:flex;flex-wrap:wrap;gap:12px;align-items:flex-end;margin-bottom:24px}.filter-bar .field{margin-bottom:0;flex:1 1 160px}.filter-bar>.button{margin-bottom:0}.filter-bar input,.filter-bar select{font-size:13px}.pagination{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-top:20px}.pagination .actions{flex-wrap:nowrap}.empty-state{padding:48px 24px;text-align:center}.empty-state p{color:var(--muted)}.stats-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-bottom:24px}.stat-number{display:block;font-size:36px;line-height:46px;margin:12px 0}.dashboard-columns{display:grid;grid-template-columns:1fr 1fr;gap:24px}.dashboard-columns li{margin-bottom:10px}.sr-only{position:absolute;width:1px;height:1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.auth-page{min-height:100svh;display:grid;place-items:center;padding:32px 16px}.auth-card{width:100%;max-width:440px;padding:32px;background:white;border:1px solid var(--line);border-radius:12px}.auth-card>.brand{display:block;margin-bottom:12px}.auth-card>h1{font-size:24px;line-height:32px;margin:20px 0 12px}.auth-card>p,.auth-card>form>p{margin-bottom:20px;color:var(--muted)}.auth-card .button[type=submit]{width:100%}.auth-card .password-toggle{width:auto;margin-bottom:16px;min-width:0;padding:0;height:28px;font-size:12px}.auth-card .auth-links{display:flex;justify-content:space-between;margin-top:20px;font-size:12px}.auth-card .alert p{color:inherit}.catalog-preview>header{padding:24px 5vw;display:flex;justify-content:space-between;background:white;border-bottom:1px solid var(--line);gap:20px}.catalog-preview>main{padding:32px 5vw;max-width:1440px;margin:auto}.catalog-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:24px}.catalog-card img{width:100%;height:260px;object-fit:cover;border-radius:8px;margin-bottom:16px}.catalog-card h2{margin-bottom:8px}.catalog-card:hover{text-decoration:none;border-color:var(--primary)}.product-preview{display:grid;grid-template-columns:1fr 1fr;gap:24px;margin-top:24px;align-items:start}.preview-gallery{display:grid;gap:16px}.preview-gallery img{width:100%;border-radius:12px;max-height:700px;object-fit:contain;background:white}.preview-price{font-size:26px;margin:24px 0}.description{margin-top:24px}.description p{margin-bottom:12px}
@media(min-width:1600px){.content{padding:32px}}@media(max-width:1150px){.breadcrumb{display:none}.environment{margin-right:auto}.topbar{gap:16px}.product-columns{grid-template-columns:minmax(0,1.35fr) minmax(280px,1fr)}.content{padding:20px}.panel{padding:20px}.table-panel{padding:0}.filter-bar .field{flex-basis:130px}}@media(max-width:900px){.sidebar{transform:translateX(-100%);transition:transform .15s ease}.sidebar.open{transform:translateX(0);box-shadow:16px 0 60px #203c3320}.workspace{margin-left:0}.menu-toggle{display:inline-flex;min-width:64px;height:36px}.topbar{padding:0 16px}.profile-menu summary{max-width:180px;overflow:hidden;text-overflow:ellipsis}.product-columns{grid-template-columns:minmax(0,1.5fr) minmax(280px,1fr)}}@media(max-width:650px){.topbar{gap:12px;height:60px}.site-link{display:none}.environment{font-size:11px}.profile-menu summary{max-width:105px;font-size:11px}.content{padding:20px 16px}.page-heading{align-items:flex-start;flex-wrap:wrap;margin-bottom:20px}h1{font-size:24px;line-height:32px}.page-heading>.actions{width:100%}.page-heading .button{flex:1}.product-columns,.dashboard-columns,.product-preview{grid-template-columns:1fr;gap:16px}.main-column,.side-column{gap:16px}.panel{padding:20px}.table-panel{padding:0}.gallery{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.photo-tile>img{height:150px}.save-bar{margin:16px -16px 0;bottom:0;border-radius:0;border-left:0;border-right:0;padding:12px 16px;flex-wrap:wrap}.save-bar>.button{flex:1}.save-bar .helper{width:100%;margin:0;font-size:11px}.stats-grid{grid-template-columns:1fr}.pagination{flex-wrap:wrap}.filter-bar .field{flex-basis:calc(50% - 12px)}.filter-bar .field:first-child{flex-basis:100%}.filter-bar>.button{flex:1}.auth-card{padding:24px}.catalog-preview>header{align-items:center}.catalog-preview>header>a:last-child{font-size:11px}.catalog-preview>main{padding:24px 16px}.catalog-grid{grid-template-columns:1fr 1fr;gap:12px}.catalog-card{padding:12px}.catalog-card img{height:180px}.catalog-card h2{font-size:15px}.table-scroll table{min-width:780px}.profile-menu>div{right:-70px}.empty-state{padding:32px 20px}}

.stats{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin:20px 0 24px}.stat>strong{font-size:36px;font-weight:500;display:block;margin:8px 0}.stat:hover{text-decoration:none;border-color:var(--primary)}.muted{color:var(--muted)}.dashboard-columns+.alert,.panel+.alert{margin-top:24px}.price-range{display:flex;gap:8px}.price-range input{width:50%;min-width:60px}.table-wrap{background:white;border:1px solid var(--line);border-radius:12px;overflow:auto}.product-thumb{object-fit:cover;border-radius:4px;display:block}.no-photo{font-size:11px;color:var(--muted);display:block;width:48px}.product-name{display:block;min-width:150px;max-width:280px}.row-menu{position:relative;min-width:32px}.row-menu summary{cursor:pointer;list-style:none;font-size:24px}.row-menu>div{min-width:145px;display:grid;gap:8px;padding:12px;background:var(--bg);border:1px solid var(--line);border-radius:8px;font-size:12px}.empty{padding:48px 24px;text-align:center}.empty>.button{margin-top:20px}.full{width:100%}.align-start{padding-left:0;min-width:0;margin-bottom:12px}.auth-card form>a.full{margin-top:8px}.pagination>nav{display:flex;justify-content:space-between;align-items:center;width:100%;gap:16px}.catalog-card .helper{margin:0}@media(max-width:650px){.stats{grid-template-columns:1fr}.table-wrap{border:0;background:transparent}.data-table thead{display:none}.data-table tbody{display:grid;gap:12px}.data-table tr{display:grid;grid-template-columns:64px 1fr;background:white;border:1px solid var(--line);border-radius:12px;padding:16px;gap:8px}.data-table td{padding:0;border:0}.data-table td[data-label=Фото]{grid-row:span 3}.data-table td[data-label=Товар]{grid-column:2}.data-table td[data-label=Артикул]{grid-column:2;font-size:12px;color:var(--muted)}.data-table td[data-label=Артикул]:before{content:'Артикул '}.data-table td:not([data-label=Фото]):not([data-label=Товар]):not([data-label=Артикул]){grid-column:1/-1}.data-table td[data-label=Цена]{font-weight:500}.row-menu>div{grid-template-columns:1fr 1fr}.pagination>nav{flex-wrap:wrap}.pagination .button{min-width:0}}

.occasion-fieldset { padding: 0; margin: 0; min-width: 0; border: 0; }
.occasion-fieldset legend { font-weight: 500; padding: 0; }
.occasion-list { display: grid; gap: 6px; margin: 10px 0 14px; max-height: 240px; overflow-y: auto; }
.occasion-option { display: flex; gap: 8px; align-items: center; min-height: 30px; cursor: pointer; }
.occasion-option input { accent-color: #245d4e; }
[data-occasion-editor] { margin-top: 12px; }

.product-name-fields { display: flex; align-items: flex-start; flex-wrap: wrap; gap: 0 16px; }
.product-name-fields > .field:first-child { flex: 1 1 220px; }
.popular-field { padding-top: 28px; }
.popular-switch { display: inline-flex; align-items: center; gap: 8px; min-height: 44px; cursor: pointer; }
.popular-switch > input {
    width: 1px;
    min-height: 0;
    padding: 0;
    border: 0;
}
.popular-switch-track {
    display: block;
    position: relative;
    flex: none;
    width: 34px;
    height: 20px;
    border: 1px solid var(--muted);
    border-radius: 999px;
    background: var(--bg);
}
.popular-switch-track::after {
    content: "";
    position: absolute;
    top: 2px;
    left: 2px;
    width: 14px;
    height: 14px;
    border-radius: 50%;
    background: var(--muted);
    transition: transform .15s ease;
}
.popular-switch input:checked + .popular-switch-track { background: var(--primary); border-color: var(--primary); }
.popular-switch input:checked + .popular-switch-track::after { transform: translateX(14px); background: white; }
.popular-switch input:focus-visible + .popular-switch-track,
.category-tab:has(input:focus-visible) { outline: 2px solid var(--primary); outline-offset: 2px; }
.category-fieldset { border: 0; margin: 0; padding: 0; min-width: 0; }
.category-fieldset legend { font-weight: 600; margin-bottom: 8px; }
.category-tabs { display: flex; flex-wrap: wrap; gap: 8px; margin: 12px 0; }
.category-tab {
    display: inline-flex;
    align-items: center;
    min-height: 44px;
    padding: 8px 14px;
    border: 1px solid var(--line);
    border-radius: 8px;
    cursor: pointer;
    overflow-wrap: anywhere;
}
.category-tab:has(input:checked) { background: var(--tint); border-color: var(--primary); }
@media (max-width: 500px) {
    .popular-field { padding-top: 0; }
    .product-name-fields > .field:first-child { flex-basis: 100%; margin-bottom: 4px; }
}
