@import "https://fonts.googleapis.com/css2?family=Unbounded:wght@400;500;600;700&family=Manrope:wght@400;500;600;700&display=swap";:root{color:#f5f5f4;font-synthesis:none;text-rendering:optimizelegibility;--bg:#202020;--surface:#292929;--surface-2:#323232;--hover:#404040;--text:#f5f5f4;--muted:#a2a2a6;--red:#e3312f;--red-hover:#f04442;--border:#414141;--green:#6fce91;background:#202020;font-family:Manrope,sans-serif}*{box-sizing:border-box}body{min-width:320px;min-height:100dvh;margin:0}button,input,textarea{font:inherit}button{cursor:pointer}button:disabled{opacity:.55;cursor:not-allowed}button,a,input,textarea{outline:none}button:focus-visible,a:focus-visible,input:focus-visible,textarea:focus-visible{box-shadow:0 0 0 3px #e3312f59}h1,h2,p{margin:0}h1,h2,.brand-mark,.topbar-brand strong{font-family:Unbounded,sans-serif}svg{flex-shrink:0}.app-loader{min-height:240px;color:var(--red);justify-content:center;align-items:center;display:flex}.app-loader svg{width:30px;height:30px}.spin{animation:.8s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.topbar{border-bottom:1px solid var(--border);z-index:10;background:#242424;justify-content:space-between;align-items:center;height:80px;padding:0 40px;display:flex;position:sticky;top:0}.topbar-brand{align-items:center;gap:14px;display:flex}.brand-logo{object-fit:contain;width:52px;height:30px;display:block}.brand-mark{background:var(--red);color:#fff;letter-spacing:-2px;border-radius:8px;justify-content:center;align-items:center;width:46px;height:40px;padding-right:2px;font-size:20px;font-weight:700;display:inline-flex}.topbar-brand>div{flex-direction:column;gap:3px;display:flex}.topbar-brand strong{letter-spacing:1px;font-size:13px}.topbar-brand div span{color:var(--muted);font-size:11px}.logout{color:var(--muted);background:0 0;border:0;align-items:center;gap:8px;min-height:44px;padding:0 8px;display:flex}.logout:hover{color:var(--text)}.workspace{max-width:1440px;margin:0 auto;padding:42px 40px 70px}.page-heading{justify-content:space-between;align-items:flex-end;gap:24px;margin-bottom:32px;display:flex}.eyebrow{color:var(--red);letter-spacing:1.7px;text-transform:uppercase;margin-bottom:9px;font-size:11px;font-weight:700;display:block}.page-heading h1{letter-spacing:-1px;margin-bottom:9px;font-size:32px}.page-heading p{color:var(--muted);font-size:14px}.button{border:1px solid #0000;border-radius:9px;justify-content:center;align-items:center;gap:8px;min-height:42px;padding:10px 16px;font-size:13px;font-weight:600;transition:background .16s,transform .16s,border-color .16s;display:inline-flex}.button:active{transform:translateY(1px)}.button.primary{background:var(--red);color:#fff}.button.primary:hover{background:var(--red-hover)}.button.secondary{background:var(--surface-2);border-color:var(--border);color:var(--text)}.button.secondary:hover{background:var(--hover)}.button.danger{border-color:var(--border);color:#f5aaa8;background:0 0}.button.danger:hover{background:#e3312f1a;border-color:#7d3a38}.add-button{min-height:48px;padding-inline:20px}.tabs{border-bottom:1px solid var(--border);gap:6px;margin-bottom:24px;display:flex}.tabs button{color:var(--muted);background:0 0;border:0;align-items:center;gap:9px;padding:14px 18px;font-weight:600;display:flex;position:relative}.tabs button:hover,.tabs button.active{color:var(--text)}.tabs button.active:after{content:"";background:var(--red);height:2px;position:absolute;bottom:-1px;left:10px;right:10px}.tabs b{background:var(--surface-2);color:var(--muted);border-radius:10px;padding:2px 7px;font-size:11px}.list-controls{justify-content:space-between;align-items:center;margin-bottom:22px;display:flex}.search{background:var(--surface);border:1px solid var(--border);color:var(--muted);border-radius:9px;align-items:center;gap:10px;width:320px;padding:0 13px;display:flex}.search:focus-within{border-color:#8c4442}.search input{color:var(--text);background:0 0;border:0;width:100%;height:42px;font-size:13px}.search input:focus-visible{box-shadow:none}.list-count{color:var(--muted);font-size:12px}.product-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;display:grid}.product-card{background:var(--surface);border:1px solid #383838;border-radius:14px;transition:border-color .16s,transform .16s;overflow:hidden}.product-card:hover{border-color:#555;transform:translateY(-2px)}.product-image{background:#242424;justify-content:center;align-items:center;height:230px;display:flex;position:relative}.product-image>img{object-fit:contain;width:100%;height:100%;padding:22px}.product-image>svg{color:#555;width:60px;height:60px}.product-status,.product-badge{border-radius:5px;padding:5px 8px;font-size:10px;font-weight:700;position:absolute;top:14px}.product-status{color:#c4c4c4;background:#333;left:14px}.product-status[data-published=true]{color:var(--green);background:#6fce911f}.product-badge{background:var(--red);color:#fff;text-transform:uppercase;right:14px}.product-body{padding:20px 20px 18px}.product-category{text-transform:uppercase;letter-spacing:1px;color:var(--muted);font-size:10px}.product-body h2{white-space:nowrap;text-overflow:ellipsis;margin:8px 0;font-size:17px;overflow:hidden}.product-body p{color:var(--muted);-webkit-line-clamp:2;-webkit-box-orient:vertical;height:36px;font-size:12px;line-height:1.5;display:-webkit-box;overflow:hidden}.product-body strong{margin-top:16px;font-size:16px;display:block}.product-actions{border-top:1px solid var(--border);grid-template-columns:1fr 1fr;gap:8px;padding:14px 16px;display:grid}.product-actions .button{padding-inline:10px}.empty-state{text-align:center;border:1px dashed var(--border);color:var(--muted);border-radius:14px;grid-column:1/-1;padding:70px 20px}.empty-state h2{color:var(--text);margin:14px 0 8px;font-size:16px}.empty-state p{font-size:13px}.article-list{flex-direction:column;gap:10px;display:flex}.article-row{background:var(--surface);border:1px solid #383838;border-radius:12px;align-items:center;gap:20px;padding:14px;display:flex}.article-thumb{background:var(--surface-2);border-radius:8px;flex-shrink:0;justify-content:center;align-items:center;width:140px;height:92px;display:flex;overflow:hidden}.article-thumb img{object-fit:cover;width:100%;height:100%}.article-thumb svg{color:var(--muted)}.article-info{flex:1;min-width:0}.article-info>div{color:var(--muted);text-transform:uppercase;letter-spacing:.5px;align-items:center;gap:7px;font-size:10px;display:flex}.status-dot{background:#777;border-radius:50%;width:6px;height:6px}.status-dot[data-published=true]{background:var(--green)}.article-info h2{white-space:nowrap;text-overflow:ellipsis;margin:8px 0;font-size:16px;overflow:hidden}.article-info p{color:var(--muted);font-size:12px}.row-actions{gap:8px;display:flex}.modal-backdrop{-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);z-index:30;background:#000000b8;justify-content:center;align-items:center;padding:24px;display:flex;position:fixed;inset:0}.modal{background:#272727;border:1px solid #484848;border-radius:16px;width:min(760px,100%);max-height:calc(100dvh - 48px);overflow:auto;box-shadow:0 30px 80px #00000073}.modal-header{border-bottom:1px solid var(--border);z-index:2;background:#272727;justify-content:space-between;align-items:center;padding:24px 28px;display:flex;position:sticky;top:0}.modal-header .eyebrow{margin-bottom:5px}.modal-header h2{font-size:19px}.icon-button{background:var(--surface-2);border:1px solid var(--border);width:42px;height:42px;color:var(--muted);border-radius:9px;justify-content:center;align-items:center;display:flex}.icon-button:hover{color:var(--text);background:var(--hover)}.editor-form{padding:24px 28px}.image-upload{min-height:170px;color:var(--muted);cursor:pointer;background:#242424;border:1px dashed #555;border-radius:12px;flex-direction:column;justify-content:center;align-items:center;gap:8px;margin-bottom:22px;display:flex;position:relative;overflow:hidden}.image-upload:hover{border-color:var(--red);color:var(--text)}.image-upload img{object-fit:contain;max-width:100%;max-height:190px}.image-upload:has(img){padding:14px}.image-upload span{font-size:13px;font-weight:600}.image-upload small{font-size:11px}.form-grid,.article-settings{grid-template-columns:1fr 1fr;gap:18px;display:grid}.field{flex-direction:column;gap:7px;min-width:0;display:flex}.field>span{text-transform:uppercase;letter-spacing:.7px;color:var(--muted);font-size:11px;font-weight:600}.field input,.field textarea{border:1px solid var(--border);width:100%;color:var(--text);resize:vertical;background:#222;border-radius:8px;padding:11px 12px;font-size:14px;transition:border-color .16s}.field input:focus,.field textarea:focus{border-color:#a54b49}.field input::placeholder,.field textarea::placeholder{color:#707074}.wide{grid-column:1/-1}.switch-row{cursor:pointer;align-items:center;gap:10px;min-height:44px;font-size:13px;display:flex}.switch-row input{appearance:none;cursor:pointer;background:#505050;border-radius:20px;width:38px;height:22px;transition:background .16s;position:relative}.switch-row input:after{content:"";background:#fff;border-radius:50%;width:16px;height:16px;transition:transform .16s;position:absolute;top:3px;left:3px}.switch-row input:checked{background:var(--red)}.switch-row input:checked:after{transform:translate(16px)}.modal-actions{justify-content:flex-end;gap:10px;padding-top:22px;display:flex}.form-error{color:#ffb4b2;background:#e3312f1f;border:1px solid #e3312f4d;border-radius:8px;margin-top:16px;padding:11px 13px;font-size:13px}.error-banner{background:#e3312f1a;border:1px solid #653836;border-radius:9px;justify-content:space-between;align-items:center;margin-bottom:18px;padding:14px 16px;font-size:13px;display:flex}.error-banner button{color:#fff;background:0 0;border:0;text-decoration:underline}.article-modal{width:min(1080px,100%)}.article-form{padding:24px 28px}.rich-editor{border:1px solid var(--border);background:#222;border-radius:10px;margin-top:24px;overflow:hidden}.editor-toolbar{border-bottom:1px solid var(--border);background:#2c2c2c;flex-wrap:wrap;align-items:center;gap:4px;padding:10px;display:flex}.editor-toolbar button{color:#c0c0c2;background:0 0;border:0;border-radius:6px;flex:0 0 36px;justify-content:center;align-items:center;min-width:36px;height:36px;padding:7px;display:flex}.editor-toolbar button:hover,.editor-toolbar button.active{color:#fff;background:#454545}.editor-toolbar svg{width:17px;height:17px}.toolbar-divider{background:#4b4b4b;flex:0 0 1px;width:1px;height:22px;margin:0 5px}.toolbar-spacer{flex:8px}.ProseMirror{color:#e9e9e9;overflow-wrap:anywhere;word-break:normal;outline:none;min-width:0;min-height:330px;padding:22px 26px;font-size:16px;line-height:1.7}.ProseMirror p{margin:0 0 16px}.ProseMirror h2{margin:28px 0 14px;font-size:24px;line-height:1.35}.ProseMirror ul,.ProseMirror ol{margin:0 0 16px;padding-left:28px}.ProseMirror blockquote{border-left:3px solid var(--red);color:#bbb;padding-left:18px;font-style:italic}.ProseMirror img{border-radius:8px;max-width:100%;height:auto}.ProseMirror a{color:#ff716f;text-decoration:underline}.cover-control{align-items:center;gap:14px;display:flex}.cover-control img{object-fit:cover;border-radius:8px;width:140px;height:76px}.cover-control label{cursor:pointer}.confirm-modal{text-align:center;width:min(440px,100%);padding:30px}.confirm-modal h2{margin:18px 0 10px;font-size:18px;line-height:1.5}.confirm-modal>p{color:var(--muted);font-size:13px;line-height:1.6}.danger-icon{color:#ff7472;background:#e3312f1f;border-radius:50%;justify-content:center;align-items:center;width:52px;height:52px;margin:auto;display:flex}.confirm-modal .modal-actions{justify-content:center}.delete-confirm{background:var(--red);color:#fff}.toast{z-index:50;color:#252525;background:#f1f1ef;border-radius:9px;padding:13px 20px;font-size:13px;font-weight:600;position:fixed;bottom:28px;left:50%;transform:translate(-50%);box-shadow:0 12px 40px #0008}.login-page{background:radial-gradient(circle at 50% 15%,#313131 0,#0000 45%),#202020;flex-direction:column;justify-content:center;align-items:center;min-height:100dvh;padding:32px;display:flex}.login-brand{letter-spacing:1px;align-items:center;gap:12px;margin-bottom:34px;font-family:Unbounded;font-size:13px;display:flex}.login-card{background:#292929;border:1px solid #424242;border-radius:16px;width:min(420px,100%);padding:34px;box-shadow:0 25px 70px #0004}.login-icon{color:#ff6d6b;background:#e3312f1f;border-radius:10px;justify-content:center;align-items:center;width:46px;height:46px;margin-bottom:24px;display:flex}.login-card h1{margin-bottom:10px;font-size:22px}.login-card>p{color:var(--muted);margin-bottom:26px;font-size:13px;line-height:1.6}.login-card .field{margin-top:18px}.password-field{position:relative}.password-field input{padding-right:45px}.password-field button{width:38px;height:38px;color:var(--muted);background:0 0;border:0;position:absolute;top:4px;right:4px}.password-field svg{width:18px}.login-submit{width:100%;min-height:46px;margin-top:24px}.login-footer{color:#747478;margin-top:25px;font-size:11px}@media (width<=1050px){.product-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.article-row{flex-wrap:wrap}.article-info{min-width:250px}.row-actions{margin-left:160px}}@media (width<=700px){.topbar{height:68px;padding:0 16px}.workspace{padding:28px 16px 50px}.page-heading{flex-direction:column;align-items:flex-start}.add-button{width:100%}.page-heading h1{font-size:26px}.tabs{overflow-x:auto}.tabs button{padding-inline:12px}.tabs b{display:none}.product-grid{grid-template-columns:1fr}.search{width:100%}.list-count{display:none}.modal-backdrop{padding:0}.modal{border:0;border-radius:0;height:100dvh;max-height:100dvh}.modal-header,.editor-form,.article-form{padding:18px}.form-grid,.article-settings{grid-template-columns:1fr}.wide{grid-column:auto}.article-thumb{width:90px;height:72px}.article-row{gap:12px}.article-info{min-width:calc(100% - 110px)}.article-info h2{font-size:13px}.row-actions{width:100%;margin-left:0}.row-actions .button{flex:1}.confirm-modal{border-radius:14px;height:auto;margin:16px;padding:24px}.editor-toolbar{top:79px}.toolbar-spacer{display:none}.ProseMirror{min-height:260px;padding:18px}.logout span{display:none}}@media (prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important;animation:none!important}}
