.admin{display:grid;grid-template-columns:1fr;min-height:100vh}@media (min-width:900px){.admin{grid-template-columns:232px 1fr}}.side{border-bottom:1px solid var(--line);background:var(--surface);padding:18px 20px;min-width:0}@media (min-width:900px){.side{border-bottom:none;border-right:1px solid var(--line);padding:24px 20px;position:sticky;top:0;height:100vh;display:flex;flex-direction:column}}.side .brand{display:inline-block;color:var(--ink);margin-bottom:6px}.side .brand:hover{color:var(--accent)}.side .store{font:600 .66rem/1 var(--sans);letter-spacing:.14em;text-transform:uppercase;color:var(--muted);margin-bottom:22px}.side nav{display:flex;gap:4px;overflow-x:auto;scrollbar-width:none}.side nav::-webkit-scrollbar{display:none}@media (min-width:900px){.side nav{flex-direction:column;overflow:visible}}.side nav a{white-space:nowrap;padding:10px 12px;color:var(--ink-soft);text-decoration:none;font:500 .88rem/1 var(--sans);border-left:2px solid transparent}.side nav a:hover,.side nav a[aria-current=page]{color:var(--ink);background:var(--stone)}.side nav a[aria-current=page]{border-left-color:var(--accent);font-weight:600}.side .foot{margin-top:auto;padding-top:20px;font-size:.78rem;color:var(--muted)}.side .foot a{color:var(--accent);text-decoration:none}.side .foot .signout{display:block;margin-top:12px;padding:0;border:none;background:none;font:inherit;color:var(--muted);cursor:pointer;text-align:left}.side .foot .signout:hover{color:var(--ink)}.main{padding:26px 22px 60px;max-width:1080px;min-width:0}@media (min-width:900px){.main{padding:34px 34px 70px}}.page-head{display:flex;align-items:flex-end;justify-content:space-between;gap:16px;flex-wrap:wrap;margin-bottom:24px}.page-head h1{font-size:1.85rem;line-height:1.1}.page-head p{margin:5px 0 0;color:var(--muted);font-size:.9rem}.notice{display:flex;gap:11px;align-items:flex-start;padding:13px 15px;border:1px solid var(--line);border-left:3px solid var(--accent);background:var(--surface);font-size:.88rem;margin-bottom:22px;color:var(--ink-soft)}.notice b{color:var(--ink)}.notice.ok{border-left-color:var(--pix)}.notice.bad{border-left-color:#b23a48}.stats{display:grid;gap:14px;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));margin-bottom:30px}.stat{border:1px solid var(--line);background:var(--surface);padding:16px 17px}.stat .k{font:600 .62rem/1 var(--sans);letter-spacing:.16em;text-transform:uppercase;color:var(--muted)}.stat .v{font:600 1.75rem/1.1 var(--sans);font-variant-numeric:tabular-nums;margin-top:9px}.stat .n{font-size:.79rem;color:var(--muted);margin-top:4px}.stat .bar{height:4px;background:var(--stone);margin-top:11px;overflow:hidden}.stat .bar span{display:block;height:100%;background:var(--accent)}.tablewrap{overflow-x:auto;border:1px solid var(--line);background:var(--surface)}table.list{width:100%;border-collapse:collapse;min-width:640px}table.list th{text-align:left;font:600 .62rem/1 var(--sans);letter-spacing:.15em;text-transform:uppercase;color:var(--muted);white-space:nowrap}table.list td,table.list th{padding:13px 16px;border-bottom:1px solid var(--line)}table.list td{font-size:.9rem;vertical-align:middle}table.list tr:last-child td{border-bottom:none}table.list .thumb-cell{width:54px}table.list .mini{width:44px;height:55px;border:1px solid var(--line);overflow:hidden;background:var(--stone)}table.list .mini img,table.list .mini svg{width:100%;height:100%;display:block;object-fit:cover}table.list .name{font-weight:600}table.list .tnum{font-variant-numeric:tabular-nums}.pill{display:inline-flex;align-items:center;gap:6px;padding:4px 9px;font:600 .62rem/1 var(--sans);letter-spacing:.1em;text-transform:uppercase;border:1px solid var(--line);white-space:nowrap}.pill:before{content:"";width:6px;height:6px;border-radius:50%;background:currentColor}.pill.active,.pill.published{color:var(--pix)}.pill.draft{color:var(--muted)}.pill.publishing,.pill.queued,.pill.scheduled{color:var(--accent)}.pill.failed,.pill.out_of_stock{color:#b23a48}.pill.done,.pill.paid{color:var(--pix)}.pill.pending,.pill.shipped{color:var(--accent)}.pill.canceled{color:#b23a48}.pill.approved{color:var(--pix)}.pill.rejected{color:var(--muted)}.cal-bar{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin-bottom:16px}.cal-bar h2{font-size:1.25rem;min-width:190px}.cal-nav{display:flex;gap:0;border:1px solid var(--line)}.cal-nav button{width:34px;height:34px;background:var(--surface);border:none;color:var(--ink);display:grid;place-items:center}.cal-nav button:hover{background:var(--ink);color:var(--paper)}.cal-nav button+button{border-left:1px solid var(--line)}.cal-hint{margin-left:auto;font-size:.78rem;color:var(--muted)}.cal{border:1px solid var(--line);background:var(--surface);overflow:hidden}.cal-week{display:grid;grid-template-columns:repeat(7,1fr);border-bottom:1px solid var(--line)}.cal-week span{padding:9px 10px;font:600 .6rem/1 var(--sans);letter-spacing:.13em;text-transform:uppercase;color:var(--muted);text-align:center}.cal-grid{display:grid;grid-template-columns:repeat(7,1fr)}.cal-day{min-height:108px;border-right:1px solid var(--line);border-bottom:1px solid var(--line);padding:7px;display:flex;flex-direction:column;gap:5px;transition:background .12s}.cal-day:nth-child(7n){border-right:none}.cal-day.other{background:var(--stone)}.cal-day.today .daynum{background:var(--ink);color:var(--paper)}.cal-day.drop{background:var(--accent-drop,color-mix(in srgb,var(--accent) 12%,transparent));outline:2px solid var(--accent);outline-offset:-2px}.daynum{align-self:flex-start;font:600 .7rem/1 var(--sans);font-variant-numeric:tabular-nums;color:var(--muted);padding:4px 6px;min-width:22px;text-align:center}.cal-day.other .daynum{opacity:.45}.post-chip{border:1px solid var(--line);border-left:3px solid var(--accent);background:var(--paper);padding:5px 7px;font-size:.72rem;line-height:1.25;cursor:grab;text-align:left;width:100%;display:block}.post-chip:active{cursor:grabbing}.post-chip:hover{border-color:var(--ink)}.post-chip.dragging{opacity:.4}.post-chip .time{font-weight:700;font-variant-numeric:tabular-nums;letter-spacing:.02em}.post-chip .ch{color:var(--muted);text-transform:uppercase;font-size:.6rem;letter-spacing:.1em}.post-chip .txt{display:block;margin-top:2px;color:var(--ink-soft);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.post-chip.published{border-left-color:var(--pix)}.post-chip.failed{border-left-color:#b23a48}.post-chip.draft{border-left-color:var(--muted);border-left-style:dashed}.cal-legend{display:flex;gap:18px;flex-wrap:wrap;margin-top:14px;font-size:.76rem;color:var(--muted)}.cal-legend span{display:inline-flex;align-items:center;gap:7px}.cal-legend i{width:12px;height:3px;background:var(--accent)}.cal-legend i.published{background:var(--pix)}.cal-legend i.failed{background:#b23a48}.cal-legend i.draft{background:var(--muted)}.manual-post{border-top:1px solid var(--line);padding-top:14px}.manual-post .manual-actions{display:flex;flex-wrap:wrap;gap:8px;margin-top:10px}.manual-post .manual-actions .btn{font-size:.82rem;padding:8px 12px}.settings-block{border:1px solid var(--line);background:var(--surface);padding:22px;margin-bottom:20px}.settings-block h2{font-size:1.15rem;margin:0 0 5px}.settings-block>p{color:var(--muted);font-size:.88rem;margin:0 0 18px}.settings-list{display:grid;gap:0;margin:0 0 16px}.settings-list>div{display:flex;justify-content:space-between;gap:16px;padding:11px 0;border-bottom:1px solid var(--line);font-size:.9rem}.settings-list>div:last-child{border-bottom:none}.settings-list dt{color:var(--muted)}.settings-list dd{margin:0;text-align:right}.settings-form{max-width:620px}.settings-form .hint{color:var(--muted);font-size:.82rem;margin:-2px 0 12px}.settings-form .warn{display:flex;gap:8px;color:var(--ink-soft);font-size:.82rem;line-height:1.45;margin:9px 0 0;padding:10px 12px;background:var(--stone);border-left:3px solid var(--accent)}.settings-form .ok-msg{color:var(--pix);font-size:.86rem;margin:0}.slug-field{display:flex;align-items:stretch;border:1px solid var(--line);background:var(--surface)}.slug-field span{display:grid;place-items:center;padding:0 10px;background:var(--stone);border-right:1px solid var(--line);color:var(--muted);font-size:.88rem;font-variant-numeric:tabular-nums}.slug-field input{border:none;flex:1;min-width:0}.slug-field input:focus{outline-offset:-2px}.delivery-list{display:grid;gap:10px}.delivery-item{border:1px solid var(--line);padding:11px 12px;display:grid;gap:8px;background:var(--surface)}.delivery-item .check{display:flex;align-items:center;gap:10px;margin:0;text-transform:none;letter-spacing:0;font-size:inherit;color:inherit}.delivery-item input[type=checkbox]{width:17px;height:17px;flex:none;accent-color:var(--accent)}.delivery-item .d-label{font-weight:600}.delivery-item .d-note{font-size:.85rem;color:var(--ink-soft)}.logo-block{display:grid;gap:18px;grid-template-columns:1fr;align-items:start}@media (min-width:640px){.logo-block{grid-template-columns:260px 1fr}}.logo-frame{aspect-ratio:16/11;border:1px solid var(--line);background:var(--stone);overflow:hidden;display:grid;place-items:center}.logo-frame img{width:100%;height:100%;object-fit:cover;display:block}.logo-frame.focal{position:relative;cursor:crosshair;touch-action:none}.logo-frame.focal img{user-select:none}.logo-empty{color:var(--muted);font-size:.8rem;text-align:center;padding:0 18px;line-height:1.4}.logo-side .actions{display:flex;gap:10px;flex-wrap:wrap}.logo-note{color:var(--muted);font-size:.82rem;margin:12px 0 0}.theme-pick{display:grid;gap:12px;grid-template-columns:repeat(auto-fit,minmax(150px,1fr))}.theme-card{border:1px solid var(--line);background:var(--surface);padding:12px;text-align:left;display:flex;flex-direction:column;gap:4px}.theme-card.on,.theme-card:hover:not(:disabled){border-color:var(--ink)}.theme-card.on{box-shadow:inset 0 0 0 1px var(--ink)}.theme-card:disabled{opacity:.6}.tc-label{font:600 .86rem/1 var(--sans);margin-top:8px}.tc-note{font-size:.74rem;color:var(--muted)}.theme-preview{display:block;border:1px solid var(--line);background:var(--paper);aspect-ratio:16/10;overflow:hidden}.tp-bar{display:block;height:22%;background:var(--ink)}.tp-body{display:block;padding:9px 10px}.tp-line{display:block;height:5px;width:52%;background:var(--muted);opacity:.55;margin-bottom:6px}.tp-line.long{width:80%;background:var(--ink);opacity:.75}.tp-price{display:block;height:7px;width:34%;background:var(--accent)}.accent-pick,.corner-pick{display:grid;gap:12px;grid-template-columns:repeat(auto-fit,minmax(120px,1fr))}.accent-card,.corner-card{border:1px solid var(--line);background:var(--surface);padding:12px;text-align:left;display:flex;flex-direction:column;gap:4px}.accent-card:hover:not(:disabled),.corner-card:hover:not(:disabled){border-color:var(--ink)}.accent-card.on,.corner-card.on{border-color:var(--ink);box-shadow:inset 0 0 0 1px var(--ink)}.accent-card:disabled,.corner-card:disabled{opacity:.6}.accent-chip{display:block;height:44px;border:1px solid var(--line);overflow:hidden}.accent-chip span{display:block;height:62%}.accent-chip .dk{height:38%}.slides-block{display:grid;gap:14px}.slides-empty{color:var(--muted);font-size:.88rem;margin:0}.slide-item{display:grid;grid-template-columns:minmax(0,340px) 1fr;gap:14px;border:1px solid var(--line);padding:12px;background:var(--surface)}@media (max-width:620px){.slide-item{grid-template-columns:1fr}}.slide-frame{position:relative;aspect-ratio:16/9;overflow:hidden;border:1px solid var(--line);background:var(--stone);cursor:crosshair;touch-action:none}.slide-frame img{width:100%;height:100%;object-fit:cover;display:block;user-select:none}.slide-focal{position:absolute;width:18px;height:18px;border:2px solid #fff;border-radius:50%;box-shadow:0 0 0 1px rgba(0,0,0,.55);transform:translate(-50%,-50%);pointer-events:none}.slide-side{display:flex;flex-direction:column;gap:6px;min-width:0}.slide-actions{gap:8px;margin-top:auto}.slide-actions,.slide-add{display:flex;flex-wrap:wrap}.slide-add{gap:10px}.accent-custom{display:flex;gap:12px;align-items:flex-start;border:1px solid var(--line);background:var(--surface);padding:12px;margin-top:12px}.accent-custom.on{border-color:var(--ink);box-shadow:inset 0 0 0 1px var(--ink)}.accent-custom .accent-chip{width:64px;flex:none}.accent-custom-fields{display:grid;gap:8px;min-width:0}.accent-custom-row{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.accent-custom-row input[type=color]{width:44px;height:34px;padding:2px;border:1px solid var(--line);background:var(--surface);cursor:pointer}.accent-custom-row input[type=text]{width:110px;padding:8px 10px;border:1px solid var(--line);background:var(--surface);color:var(--ink);font:600 .85rem/1 var(--sans);font-variant-numeric:tabular-nums;border-radius:0}.accent-custom-row input[type=text]:focus{outline:none;border-color:var(--ink)}.tc-note.warn{color:#9a6a00}.accent-preview{margin-top:16px;border:1px solid var(--line);background:#faf8f3;padding:16px}.accent-preview-label{margin:0 0 12px;font:.72rem/1 var(--sans);letter-spacing:.07em;text-transform:uppercase;color:#8a8070}.accent-preview-strip{display:flex;align-items:center;gap:24px;flex-wrap:wrap}.accent-preview-btn{padding:9px 22px;color:#fff;font:600 .82rem/1 var(--sans);letter-spacing:.05em;text-transform:uppercase;border:none;cursor:default;pointer-events:none}.accent-preview-price{font:600 1.05rem/1 var(--serif,Georgia)}.accent-preview-tab{font:600 .72rem/1 var(--sans);letter-spacing:.09em;text-transform:uppercase;padding-bottom:5px;border-bottom:2px solid}.corner-preview{display:block;width:64px;aspect-ratio:4/5;border:1px solid var(--line);background:linear-gradient(150deg,var(--stone) 55%,var(--line))}.theme-status{min-height:20px;margin-top:12px;font-size:.84rem}.theme-status .ok{color:var(--pix)}.theme-status .err{color:#b23a48}.composer-backdrop{position:fixed;inset:0;background:rgba(15,11,6,.42);backdrop-filter:blur(3px);z-index:60}.composer{position:fixed;top:0;right:0;bottom:0;width:min(460px,100%);background:var(--surface);border-left:1px solid var(--line);z-index:70;display:flex;flex-direction:column;box-shadow:var(--shadow)}.composer-head{display:flex;align-items:center;gap:12px;padding:18px 22px;border-bottom:1px solid var(--line)}.composer-head h3{font-size:1.15rem;margin:0}.composer-head .x{margin-left:auto;width:34px;height:34px;border:1px solid var(--line);background:none;color:var(--ink);font-size:1.2rem;line-height:1}.composer-head .x:hover{background:var(--ink);color:var(--paper)}.composer-body{flex:1;overflow-y:auto;padding:20px 22px;gap:18px}.composer-body,.composer-foot{display:flex;flex-direction:column}.composer-foot{border-top:1px solid var(--line);padding:16px 22px 20px;gap:12px}.composer-foot .actions{display:flex;gap:10px}.composer-foot .actions .btn{flex:1;justify-content:center}.composer-foot .rm{background:none;border:none;color:var(--muted);font:600 .62rem/1 var(--sans);letter-spacing:.12em;text-transform:uppercase;padding:4px 0;align-self:flex-start}.composer-foot .rm:hover{color:#b23a48}.field-block label{display:block;font:600 .64rem/1 var(--sans);letter-spacing:.14em;text-transform:uppercase;color:var(--muted);margin-bottom:8px}.field-block input,.field-block select,.field-block textarea{width:100%;padding:10px 11px;border:1px solid var(--line);background:var(--surface);color:var(--ink);font:inherit;font-size:.9rem;border-radius:0}.field-block textarea{min-height:128px;resize:vertical;line-height:1.5}.field-block input:focus,.field-block select:focus,.field-block textarea:focus{outline:2px solid var(--ink);outline-offset:-1px}.label-row{display:flex;align-items:center;justify-content:space-between;gap:10px}.label-row label{margin-bottom:0}.ai-btn{border:1px solid var(--accent);background:none;color:var(--accent);font:600 .6rem/1 var(--sans);letter-spacing:.12em;text-transform:uppercase;padding:6px 10px;margin-bottom:8px}.ai-btn:hover:not(:disabled){background:var(--accent);color:var(--paper)}.ai-btn:disabled{opacity:.45}.product-pick{display:flex;gap:12px;align-items:flex-start}.pick-thumb{width:56px;height:70px;flex:none;border:1px solid var(--line);overflow:hidden;background:var(--stone)}.pick-thumb img,.pick-thumb svg{width:100%;height:100%;object-fit:cover;display:block}.pick-note{font-size:.76rem;color:var(--muted);margin-top:6px}.channel-pick{display:grid;grid-template-columns:repeat(2,1fr);gap:8px}.channel{border:1px solid var(--line);background:var(--surface);padding:10px 11px;text-align:left;display:flex;flex-direction:column;gap:3px}.channel.on,.channel:hover{border-color:var(--ink)}.channel.on{background:var(--stone)}.channel.locked{opacity:.5}.ch-label{font:600 .82rem/1 var(--sans);color:var(--ink)}.ch-note{font-size:.7rem;color:var(--muted)}.cal-day[role=button]{cursor:pointer}.photo-grid{display:grid;gap:10px;grid-template-columns:repeat(auto-fill,minmax(104px,1fr))}.photo{position:relative;aspect-ratio:4/5;border:1px solid var(--line);background:var(--stone);overflow:hidden}.photo img{width:100%;height:100%;object-fit:cover;display:block}.photo .cover{position:absolute;top:0;left:0;background:var(--ink);color:var(--paper);font:600 .56rem/1 var(--sans);letter-spacing:.12em;text-transform:uppercase;padding:4px 7px}.photo-actions{position:absolute;bottom:0;left:0;right:0;display:flex;background:color-mix(in srgb,var(--surface) 88%,transparent);backdrop-filter:blur(3px);border-top:1px solid var(--line)}.photo-actions button{flex:1;height:27px;border:none;background:none;color:var(--ink);font-size:.9rem;line-height:1}.photo-actions button:hover:not(:disabled){background:var(--ink);color:var(--paper)}.photo-actions button:disabled{opacity:.3}.photo-actions button+button{border-left:1px solid var(--line)}.photo-actions .rm:hover{background:#b23a48;color:#fff}.row-actions{display:flex;gap:8px;white-space:nowrap}.row-actions a,.row-actions button{font:600 .62rem/1 var(--sans);letter-spacing:.1em;text-transform:uppercase;color:var(--ink-soft);text-decoration:none;background:none;border:1px solid var(--line);padding:6px 9px}.row-actions a:hover,.row-actions button:hover{background:var(--ink);color:var(--paper);border-color:var(--ink)}.empty-box{border:1px dashed var(--line);padding:46px 20px;text-align:center;color:var(--muted);font-size:.92rem;background:var(--surface)}