:root{--purple:#52148b;--deep:#250742;--lav:#f5e5f8;--ink:#2b2030}*{box-sizing:border-box}body{color:var(--ink);background:#f8f6f9;margin:0;font-family:DM Sans}button,input,select,textarea{font:inherit}.login{background:linear-gradient(130deg,#f5d8fa,#fff);place-items:center;min-height:100vh;display:grid}.login form{background:#fff;border-radius:28px;width:380px;padding:42px;box-shadow:0 20px 70px #3e146326}.logo{color:var(--purple);font:700 31px Playfair Display}.logo span{font-style:italic}.login p{color:#8a788e;margin:4px 0 25px}.login input{border:1px solid #ddd;border-radius:11px;width:100%;margin:6px 0;padding:13px}.login button{background:var(--purple);color:#fff;border:0;border-radius:11px;width:100%;margin-top:10px;padding:13px;font-weight:700}.login small{color:#888;margin-top:15px;display:block}.app{min-height:100vh;display:flex}.app aside{background:var(--deep);color:#fff;flex-direction:column;gap:7px;width:245px;padding:30px 18px;display:flex}.app aside>small{letter-spacing:3px;color:#cda9db;margin:0 12px 25px;font-size:10px}.app aside button{color:#ddd;text-align:left;cursor:pointer;background:0 0;border:0;border-radius:12px;align-items:center;gap:12px;padding:13px 15px;display:flex}.app aside button.active{color:var(--purple);background:#fff}.app aside .logout{margin-top:auto}.app main{flex:1;max-width:1500px;padding:35px 5%}.app header{justify-content:space-between;align-items:center;margin-bottom:28px;display:flex}.app header h1{color:var(--deep);margin:0;font:700 36px Playfair Display}.app header p{color:#8d7d91;margin:4px 0}.primary{background:var(--purple);color:#fff;cursor:pointer;border:0;border-radius:10px;align-items:center;gap:8px;padding:12px 17px;display:flex}.stats{grid-template-columns:repeat(4,1fr);gap:16px;margin-bottom:22px;display:grid}.stat{background:#fff;border:1px solid #eee;border-radius:17px;padding:22px}.stat span{color:#887a8d;font-size:13px;display:block}.stat b{color:var(--deep);margin-top:8px;font-size:25px;display:block}.panel{background:#fff;border:1px solid #eee;border-radius:18px;padding:22px}.panel h2{margin:0 0 20px}.search{border:1px solid #ddd;border-radius:10px;align-items:center;gap:8px;width:300px;padding:9px 12px;display:flex}.search input{border:0;outline:0;width:100%}.toolbar{margin-bottom:18px}.productTable .row,.order{border-bottom:1px solid #eee;grid-template-columns:55px 1fr 130px 120px 40px 40px;align-items:center;gap:14px;padding:12px 0;display:grid}.productTable img{object-fit:cover;border-radius:9px;width:50px;height:50px}.row div small,.order small{color:#888;margin-top:3px;font-size:11px;display:block}.row button{cursor:pointer;color:#67566d;background:0 0;border:0}.orders .order{grid-template-columns:1fr 120px 150px}.order select{border:1px solid #ddd;border-radius:8px;padding:8px}.modal{z-index:20;background:#1b072caa;place-items:center;padding:20px;display:grid;position:fixed;inset:0}.modal form{background:#fff;border-radius:20px;gap:9px;width:min(520px,100%);padding:30px;display:grid;position:relative}.modal input,.modal select,.modal textarea{border:1px solid #ddd;border-radius:9px;padding:11px}.modal textarea{min-height:90px}.modal label{font-size:13px}.close{cursor:pointer;background:0 0;border:0;position:absolute;top:15px;right:15px}.couponIcon{background:var(--lav);width:50px;height:50px;color:var(--purple);border-radius:9px;place-items:center;display:grid}.reorder-btns{gap:4px;display:flex}.reorder-btns button{background:#fff;border:1px solid #eee;border-radius:8px;place-items:center;width:28px;height:28px;display:grid}.reorder-btns button:disabled{opacity:.35;cursor:not-allowed}@media (width<=850px){.app aside{width:75px}.app aside .logo,.app aside>small,.app aside button:not(.active){font-size:0}.app aside button{justify-content:center}.stats{grid-template-columns:1fr 1fr}.productTable .row{grid-template-columns:45px 1fr 80px 40px 40px}.productTable .row>span:nth-of-type(2){display:none}.orders .order{grid-template-columns:1fr 100px 120px}}@media (width<=600px){.stats{grid-template-columns:1fr}.app main{padding:22px}.app header{align-items:start}.productTable .row{grid-template-columns:45px 1fr 40px 40px}.productTable .row>span{display:none}}.brandLogo{object-fit:contain;object-position:center;display:block}.loginLogo{width:min(300px,100%);height:auto;max-height:150px;margin:0 auto 8px}.sidebarLogo{filter:brightness(0)invert();object-fit:contain;width:185px;height:96px;margin:0 auto 4px}.login form{overflow:hidden}.app aside{align-items:stretch}@media (width<=850px){.sidebarLogo{width:54px;height:60px}.app aside{align-items:center}}.link{color:var(--purple);cursor:pointer;background:0 0;border:0;padding:0;font-weight:600}.link:hover{text-decoration:underline}.ghost{color:var(--ink);cursor:pointer;background:#fff;border:1px solid #ddd;border-radius:10px;align-items:center;gap:7px;padding:10px 15px;display:inline-flex}.ghost:disabled,.primary:disabled{opacity:.55;cursor:not-allowed}.primary.danger{background:#b3261e}.muted{color:#8d7d91;font-size:12px}.hint{color:#8d7d91;margin:6px 0 0;font-size:12px}.panel-head{justify-content:space-between;align-items:baseline;margin-bottom:14px;display:flex}.panel-head h2{margin:0}.row-between{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:14px;display:flex}.toolbar.filters{flex-wrap:wrap;align-items:center;gap:12px;display:flex}.toolbar select,.toolbar input[type=date]{background:#fff;border:1px solid #ddd;border-radius:10px;padding:9px 11px}.date{color:#7b6b80;align-items:center;gap:7px;font-size:12px;display:flex}.stat-hint{color:#9a8a9e;margin-top:6px;font-size:11px;display:block}.stat-hint.link{color:var(--purple);text-align:left;font-size:11px}.chips{flex-wrap:wrap;gap:6px;display:flex}.chip{color:#6a5a70;cursor:pointer;background:#fff;border:1px solid #e3d9e6;border-radius:20px;align-items:center;gap:7px;padding:7px 13px;font-size:12px;display:inline-flex}.chip em{background:#f3ecf5;border-radius:10px;padding:1px 7px;font-size:11px;font-style:normal}.chip.active{background:var(--purple);border-color:var(--purple);color:#fff}.chip.active em{color:#fff;background:#fff3}.badge{color:#555;background:#eee;border-radius:20px;margin-left:6px;padding:3px 10px;font-size:11px;font-weight:600;display:inline-block}.badge:first-child{margin-left:0}.badge.green{color:#1f6b3a;background:#e3f4e8}.badge.amber{color:#8a5a08;background:#fbf0d9}.badge.red{color:#a3261f;background:#fbe4e2}.badge.blue{color:#1f4f9a;background:#e2edfb}.badge.purple{color:#6a1b9a;background:#f1e4fa}.badge.grey{color:#666;background:#eee}.empty{text-align:center;color:#7b6b80;padding:54px 20px}.empty-icon{background:var(--lav);width:58px;height:58px;color:var(--purple);border-radius:50%;place-items:center;margin:0 auto 14px;display:grid}.empty.error .empty-icon{color:#a3261f;background:#fbe4e2}.empty h3{color:var(--deep);margin:0 0 6px;font-size:18px}.empty p{max-width:380px;margin:0 auto 18px;font-size:13px;line-height:1.5}.skeleton{gap:12px;display:grid}.sk-row{background:linear-gradient(90deg,#f1eaf3 25%,#f9f4fa 37%,#f1eaf3 63%) 0 0/400% 100%;border-radius:12px;height:52px;animation:1.4s infinite shimmer}@keyframes shimmer{0%{background-position:100%}to{background-position:0}}.banner{color:#7a5a1c;background:#fbf3e4;border:1px solid #efdcb4;border-radius:12px;margin-bottom:14px;padding:10px 14px;font-size:12px}.form-error{color:#a3261f;background:#fbe4e2;border:1px solid #f0c2be;border-radius:10px;margin:8px 0;padding:10px 12px;font-size:13px}.form-error.info{color:#1f4f9a;background:#e9f0fb;border-color:#c5d6f2}.toasts{z-index:60;gap:8px;max-width:min(380px,100vw - 36px);display:grid;position:fixed;bottom:18px;right:18px}.toast{background:var(--deep);color:#fff;border-radius:12px;align-items:flex-start;gap:10px;padding:12px 15px;font-size:13px;display:flex;box-shadow:0 12px 34px #25074244}.toast.error{background:#8f1d17}.toast svg{flex:none;margin-top:2px}.stock{font-size:12px}.stock.low{color:#a16a12;font-weight:700}.stock.out{color:#a3261f;font-weight:700}.row div small .badge{margin-left:8px}.pager{color:#7b6b80;justify-content:space-between;align-items:center;margin-top:16px;font-size:12px;display:flex}.pager div{align-items:center;gap:10px;display:flex}.pager button{cursor:pointer;background:#fff;border:1px solid #ddd;border-radius:8px;place-items:center;width:32px;height:32px;display:grid}.pager button:disabled{opacity:.4;cursor:not-allowed}.orders .orderRow{text-align:left;width:100%;font:inherit;color:inherit;cursor:pointer;background:0 0;border:0;border-bottom:1px solid #eee;border-radius:8px;grid-template-columns:1fr 170px 110px 110px;align-items:center;gap:14px;padding:13px 6px;display:grid}.orders .orderRow:hover{background:#faf6fb}.orderRow small{color:#888;margin-top:3px;font-size:11px;display:block}.modal form.product-form{width:min(620px,100%);max-height:calc(100vh - 40px);overflow:auto}.product-form{gap:9px;display:grid}.create-product-page{max-width:660px;margin:0 auto}.create-product-page .toolbar{margin-bottom:22px}.page-form h2{margin:0 0 4px}.page-form>p.hint{margin:0 0 18px;font-size:13px}.page-form .dialog-actions{justify-content:flex-start;margin-top:14px}.field{color:#6a5a70;gap:5px;font-size:12px;display:grid}.field input,.field select,.field textarea{width:100%;color:var(--ink);border:1px solid #ddd;border-radius:9px;padding:11px}.two{grid-template-columns:1fr 1fr;gap:10px;display:grid}.three{grid-template-columns:1fr 1fr 1fr;gap:10px;display:grid}.checks{gap:8px;margin:4px 0 8px;display:grid}.checks label,.check{align-items:center;gap:8px;font-size:13px;display:flex}.preview{object-fit:cover;border:1px solid #eee;border-radius:12px;width:96px;height:96px;display:none}.dialog-body p{margin:0 0 8px;font-size:14px;line-height:1.5}.dialog-actions{justify-content:flex-end;gap:10px;margin-top:10px;display:flex}.drawer-backdrop{z-index:30;background:#1b072c99;justify-content:flex-end;display:flex;position:fixed;inset:0}.drawer{background:#fff;width:min(460px,100%);height:100%;padding:32px 28px;position:relative;overflow:auto}.drawer h2{color:var(--deep);margin:0;font:700 28px Playfair Display}.drawer h3{letter-spacing:1px;text-transform:uppercase;color:#8d7d91;margin:26px 0 10px;font-size:13px}.drawer select{text-transform:capitalize;border:1px solid #ddd;border-radius:9px;padding:10px}.kv{grid-template-columns:90px 1fr;gap:8px 12px;margin:0;font-size:13px;display:grid}.kv dt{color:#8d7d91}.kv dd{margin:0}.items{gap:8px;margin:0 0 12px;padding:0;font-size:13px;list-style:none;display:grid}.items li{justify-content:space-between;gap:10px;display:flex}.kv.totals{border-top:1px solid #eee;padding-top:12px}.audit,.logs{margin:0;padding:0;list-style:none}.audit>li,.logs>li{border-bottom:1px solid #eee}.dim{opacity:.55;transition:opacity .15s}.audit-head,.log-head{text-align:left;width:100%;font:inherit;color:inherit;cursor:pointer;background:0 0;border:0;align-items:center;gap:14px;padding:13px 4px;display:grid}.audit-head{grid-template-columns:150px 1fr 190px 20px}.log-head{grid-template-columns:70px 150px 80px 1fr 20px}.audit-head:hover,.log-head:hover{background:#faf6fb}.when{color:#8d7d91;font-size:12px}.src{color:#6a5a70;font-size:12px}.who small{color:#8d7d91}.msg{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.chev{color:#9a8a9e;transition:transform .15s}.chev.open{transform:rotate(180deg)}.audit-body,.log-body{padding:4px 8px 16px 158px}.diff{gap:6px;margin:0 0 10px;padding:0;font-size:13px;list-style:none;display:grid}.diff li{flex-wrap:wrap;align-items:baseline;gap:9px;display:flex}.field-name{color:#8d7d91;min-width:96px;font-size:12px}.diff del{color:#a3261f;background:#fbe4e2;border-radius:6px;padding:1px 6px;text-decoration:line-through}.diff ins{color:#1f6b3a;background:#e3f4e8;border-radius:6px;padding:1px 6px;text-decoration:none}.meta{color:#9a8a9e;word-break:break-all;margin:0;font-size:11px}.log-body{padding-left:8px}.log-body pre{color:#ecdff2;background:#1f1027;border-radius:10px;max-height:260px;margin:0 0 8px;padding:12px;font-size:12px;overflow:auto}.log-body .stack{color:#f4c7c3}.log-tools{align-items:center;gap:12px;display:flex}@media (width<=850px){.orders .orderRow{grid-template-columns:1fr 100px 100px}.orders .orderRow>.muted{display:none}.audit-head{grid-template-columns:1fr 20px}.audit-head .when,.audit-head .who{grid-column:1}.audit-body{padding-left:8px}.log-head{grid-template-columns:70px 1fr 20px}.log-head .when,.log-head .src{display:none}.two,.three{grid-template-columns:1fr}}.drawer a{color:var(--purple)}.header-title{align-items:center;gap:12px;display:flex}.mobile-menu{color:var(--deep);cursor:pointer;background:#fff;border:1px solid #e4dce6;border-radius:11px;place-items:center;width:42px;height:42px;display:none}.nav-backdrop{display:none}.productTable,.orders,.audit-wrap,.logs-wrap{-webkit-overflow-scrolling:touch;width:100%;overflow-x:auto}.productTable .row,.orders .orderRow{min-width:650px}@media (width<=850px){.app aside{z-index:50;align-items:stretch;width:245px;padding:24px 18px;transition:transform .2s;position:fixed;top:0;bottom:0;left:0;transform:translate(-105%);box-shadow:16px 0 40px #2507422b}.app.nav-open aside{transform:translate(0)}.app aside .logo,.app aside>small,.app aside button:not(.active){font-size:inherit}.app aside .sidebarLogo{width:185px;height:80px}.app aside button{justify-content:flex-start}.nav-backdrop{z-index:40;background:#1b072c88;border:0;padding:0;display:block;position:fixed;inset:0}.app main{width:100%;max-width:none;padding:24px}.mobile-menu{display:grid}.stats{grid-template-columns:repeat(2,minmax(0,1fr))}.panel{padding:18px}.toolbar.row-between{align-items:stretch}.toolbar .search{width:min(100%,360px)}}@media (width<=600px){.app header{margin-bottom:20px}.app header p{font-size:12px}.stats{grid-template-columns:1fr;gap:10px}.stat{padding:16px}.panel{border-radius:14px;padding:14px}.toolbar.filters,.toolbar.row-between{gap:9px}.chips{flex-wrap:nowrap;width:100%;padding-bottom:3px;overflow-x:auto}.chip{white-space:nowrap}.primary,.ghost{min-height:42px}.toolbar>.primary{justify-content:center;width:100%}.modal{padding:10px}.modal form{border-radius:16px;max-height:calc(100vh - 20px);padding:22px 16px}.orders .orderRow{grid-template-columns:1fr 100px;min-width:420px}.orders .orderRow>strong,.orders .orderRow>.badge{display:none}.productTable .row{grid-template-columns:45px minmax(150px,1fr) 90px 100px 40px 40px;min-width:520px}.drawer{padding:24px 18px}.app main{padding:14px}.header-title,.header-title>div:last-child{min-width:0}.app header h1{font-size:26px}.app header p{white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.panel{padding:12px}.productTable,.orders,.audit-wrap,.logs-wrap{overflow:visible}.productTable .row,.orders .orderRow{min-width:0!important}.productTable .row{align-items:center;gap:10px;padding:12px 0;display:grid;grid-template-columns:48px 1fr auto!important}.productTable .row>span{display:block!important}.productTable .row>span:nth-of-type(2){display:none!important}.productTable .row button{place-items:center;width:34px;height:34px;display:grid}.productTable .row button:last-child{grid-column:auto}.productTable .row>div{min-width:0}.productTable .row>div b{white-space:nowrap;text-overflow:ellipsis;display:block;overflow:hidden}.productTable .row>div small{white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.orders .orderRow{gap:8px;padding:13px 4px;display:grid;grid-template-columns:minmax(0,1fr) auto!important}.orders .orderRow strong{display:block!important}.orders .orderRow .muted{display:none}.orders .orderRow .badge{justify-self:end}.orders .orderRow>div{min-width:0}.orders .orderRow>div b{display:block}.orders .orderRow>div small{white-space:nowrap;text-overflow:ellipsis;max-width:190px;overflow:hidden}.audit-head{grid-template-columns:1fr 20px!important}.log-head{grid-template-columns:auto 1fr 20px!important}.log-head .when,.log-head .src{display:none!important}.toolbar.filters,.toolbar.row-between{grid-template-columns:1fr;align-items:stretch;display:grid}.toolbar .search{width:100%!important}.toolbar .log-tools{justify-content:space-between}.pager{flex-wrap:wrap;gap:10px}.drawer{width:100%;padding:22px 16px}.two,.three{grid-template-columns:1fr}.review-admin-list{gap:12px;display:grid}.review-admin-card{border:1px solid #eee;border-radius:14px;padding:14px}}.review-admin-list{gap:12px;display:grid}.review-admin-card{border:1px solid #eee;border-radius:14px;padding:16px}.review-admin-top{justify-content:space-between;align-items:start;gap:12px;display:flex}.review-admin-top small{color:#8d7d91;margin-top:4px;display:block}.review-admin-rating{color:#d28a17;gap:2px;margin:10px 0;display:flex}.review-admin-card p{margin:8px 0;line-height:1.6}.email-config-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-top:18px;display:grid}.email-config-grid>div{border:1px solid #eee;border-radius:12px;padding:14px}.email-config-grid span{color:#8d7d91;margin-bottom:5px;font-size:11px;display:block}.email-config-grid b{word-break:break-word;font-size:13px}.email-test-card{background:#faf7fb;border:1px solid #eee5ef;border-radius:14px;align-items:flex-start;gap:14px;margin-top:18px;padding:18px;display:flex}.email-test-card h3{margin:0 0 4px}.email-test-card p{color:#8d7d91;margin:0 0 12px;font-size:13px}.email-test-card form{gap:8px;display:flex}.email-test-card input{border:1px solid #ddd;border-radius:9px;min-width:260px;padding:11px}@media (width<=600px){.email-config-grid{grid-template-columns:1fr}.email-test-card form{display:grid}.email-test-card input{width:100%;min-width:0}}.notification-list{margin:0;padding:0;list-style:none}.notification-list li{border-bottom:1px solid #eee}.notification-list button{text-align:left;width:100%;color:inherit;background:0 0;border:0;gap:12px;padding:15px 4px;display:flex}.notification-list li.unread{background:#fbf7fd}.notification-icon{color:#64158e;background:#f0e4f5;border-radius:12px;flex:none;place-items:center;width:38px;height:38px;display:grid}.notification-list b,.notification-list small,.notification-list em{display:block}.notification-list small{color:#6e6272;margin-top:4px;line-height:1.5}.notification-list em{color:#9a8fa0;margin-top:5px;font-size:11px;font-style:normal}
