@import"https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Noto+Sans+SC:wght@400;500;600;700&display=swap";:root{font-family:DM Sans,Noto Sans SC,system-ui,sans-serif;color:#242124;background:#f7f6f4;font-synthesis:none;--brand:#761b36;--brand-dark:#541126;--brand-soft:#f6eaee;--ink:#242124;--muted:#777276;--line:#e5e1de;--surface:#fff;--success:#237a52;--danger:#b42318;--warning:#a15c00;--shadow:0 12px 40px rgba(48,30,36,.08)}*{box-sizing:border-box}body{margin:0;min-width:1024px;background:#f7f6f4}button,input,textarea,select{font:inherit}button,a{transition:.18s ease}button{cursor:pointer}a{color:inherit;text-decoration:none}input,textarea,select{border:1px solid #d9d4d1;border-radius:8px;padding:11px 13px;color:var(--ink);background:#fff;outline:none}input:focus,textarea:focus,select:focus{border-color:var(--brand);box-shadow:0 0 0 3px #761b361a}textarea{min-height:96px;resize:vertical}label{display:grid;gap:7px;font-size:13px;font-weight:600;color:#514c4f}button:disabled{cursor:not-allowed;opacity:.5}.content-width{width:min(1240px,calc(100% - 64px));margin-inline:auto}.eyebrow{font-size:11px;letter-spacing:.16em;font-weight:700;color:var(--brand);margin:0 0 10px;text-transform:uppercase}.subtle,.stock-text,.sku,.description,.form-note{color:var(--muted)}.primary,.secondary{border-radius:8px;padding:10px 16px;border:1px solid transparent;font-weight:600;display:inline-flex;align-items:center;justify-content:center;gap:8px}.primary{background:var(--brand);color:#fff}.primary:hover{background:var(--brand-dark)}.secondary{background:#fff;border-color:#d9d4d1;color:#413c3f}.secondary:hover{border-color:#a59da1;background:#fbfaf9}.wide{width:100%}.icon-only{width:36px;height:36px;border:0;background:transparent;border-radius:8px;display:grid;place-items:center;color:#5c5659}.icon-only:hover{background:#f0edeb}.icon-only.danger:hover{color:var(--danger);background:#fff0ef}.text-button{border:0;background:transparent;color:var(--brand);font-weight:600;padding:6px}.back{border:0;background:transparent;display:flex;gap:7px;align-items:center;color:#686164;margin-bottom:24px;padding:6px 0}.panel{background:var(--surface);border:1px solid var(--line);border-radius:10px}.topbar{height:72px;background:#fffffff5;border-bottom:1px solid var(--line);display:flex;align-items:center;padding:0 32px;position:sticky;top:0;z-index:20}.brand{display:flex;align-items:center;gap:11px;font-size:18px;letter-spacing:.02em}.brand b{font-size:14px;font-weight:500;color:#6e686b;margin-left:5px}.brand-mark{width:35px;height:35px;background:var(--brand);color:#fff;display:grid;place-items:center;border-radius:50% 50% 46% 54%/44% 52% 48% 56%;font-family:Georgia,serif;font-size:21px;font-weight:700}.topbar nav{height:100%;display:flex;align-items:center;gap:36px;margin-left:80px}.topbar nav a{height:100%;display:flex;align-items:center;border-bottom:2px solid transparent;color:#635d60;font-size:14px;font-weight:500}.topbar nav a.active{color:var(--brand);border-color:var(--brand)}.top-actions{margin-left:auto;display:flex;align-items:center;gap:14px}.icon-link{display:flex;align-items:center;gap:7px;font-size:14px}.user-chip{display:flex;align-items:center;gap:8px;font-size:13px;border-left:1px solid var(--line);padding-left:16px}.user-chip span{width:30px;height:30px;border-radius:50%;background:var(--brand-soft);color:var(--brand);display:grid;place-items:center;font-weight:700}.app-shell main{min-height:calc(100vh - 128px)}.app-shell>footer{text-align:center;color:#969093;font-size:12px;padding:24px}.announcement{height:40px;background:#f3e8eb;color:#68162f;display:flex;align-items:center;justify-content:center;gap:8px;font-size:13px}.hero{height:286px;margin-top:30px;background:#e9e1db;display:flex;align-items:center;justify-content:space-between;padding:48px 64px;overflow:hidden;position:relative}.hero h1{font-family:Georgia,"Noto Serif SC",serif;font-size:40px;line-height:1.15;margin:0 0 16px;font-weight:500;color:#33282b}.hero p:last-child{color:#71686a;margin:0}.hero-art{width:340px;height:230px;position:relative;display:grid;place-items:center}.hero-art:before{content:"";position:absolute;width:185px;height:185px;background:linear-gradient(145deg,#93304c,#571327);border-radius:46% 54% 48% 52%;box-shadow:0 28px 42px #4618263d;transform:rotate(-8deg)}.hero-art span{position:relative;z-index:1;color:#fff;font-family:Georgia,serif;font-size:58px;letter-spacing:-6px}.hero-art i{position:absolute;width:90px;height:90px;border:1px solid rgba(118,27,54,.24);border-radius:50%;right:6px;top:8px}.hero-art i:last-child{width:56px;height:56px;right:275px;top:155px}.catalog-section{padding:48px 0 64px}.section-head,.page-title{display:flex;justify-content:space-between;align-items:flex-end}.section-head h2,.page-title h1{font-size:28px;margin:0}.search-box{width:330px;height:42px;border:1px solid #d9d4d1;background:#fff;border-radius:8px;display:flex;align-items:center;gap:9px;padding:0 12px;color:#8b8588}.search-box input{border:0;box-shadow:none;padding:0;width:100%}.category-row,.tabs{display:flex;gap:8px;margin:25px 0}.category-row button,.tabs button{border:1px solid transparent;background:transparent;padding:8px 14px;border-radius:7px;color:#686164}.category-row button:hover,.tabs button:hover{background:#eeeae8}.category-row button.active,.tabs button.active{background:var(--brand);color:#fff}.product-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:22px}.product-card{background:#fff;border:1px solid var(--line);min-width:0}.product-card:hover{transform:translateY(-3px);box-shadow:var(--shadow);border-color:#d4cbce}.product-image{height:270px;background:#eee9e5;position:relative;overflow:hidden}.product-image img,.detail-image img,.cart-thumb img{width:100%;height:100%;object-fit:cover}.product-placeholder{width:100%;height:100%;background:linear-gradient(145deg,#f0e7e4,#d8c8c5);display:flex;align-items:center;justify-content:center;flex-direction:column;color:#7a1d39;position:relative;overflow:hidden}.product-placeholder:before,.product-placeholder:after{content:"";position:absolute;border:1px solid rgba(118,27,54,.2);border-radius:50%;width:140px;height:140px;right:-35px;top:-30px}.product-placeholder:after{width:75px;height:75px;left:-20px;top:auto;bottom:-18px}.product-placeholder span{font-family:Georgia,serif;font-size:32px;letter-spacing:.08em}.product-placeholder b{font-size:9px;letter-spacing:.14em;margin-top:6px}.sold-out{position:absolute;top:12px;right:12px;background:#302c2e;color:#fff;padding:5px 9px;font-size:11px;border-radius:4px}.product-body{padding:18px}.product-meta{font-size:11px;color:#8f888b;text-transform:uppercase;letter-spacing:.05em;margin:0 0 7px}.product-body h3{font-size:15px;line-height:1.45;height:44px;margin:0 0 12px;font-weight:600}.price-line{display:flex;align-items:baseline;gap:9px}.price-line strong{font-size:21px;color:var(--brand)}del{color:#aaa2a6;font-size:12px}.stock-text{font-size:11px;margin:7px 0 14px}.add-cart{width:100%;height:38px;background:#fff;border:1px solid var(--brand);color:var(--brand);font-weight:600;border-radius:7px}.add-cart:hover{background:var(--brand);color:#fff}.skeleton{pointer-events:none}.skeleton .product-image,.skeleton i{background:linear-gradient(90deg,#eeeae8,#f8f6f5,#eeeae8);background-size:200% 100%;animation:shimmer 1.2s infinite}.skeleton i{display:block;height:12px;margin:10px 0}.skeleton i:nth-child(2){width:80%}.skeleton i:nth-child(3){width:45%}@keyframes shimmer{to{background-position:-200% 0}}.page{padding:44px 0 64px}.page-detail{padding:32px 0 64px}.detail-grid{display:grid;grid-template-columns:1.05fr .95fr;background:#fff;border:1px solid var(--line)}.detail-image{height:560px;background:#eee9e5}.detail-info{padding:55px}.detail-info h1{font-size:34px;line-height:1.3;margin:0 0 12px}.detail-price{margin:30px 0 22px;background:#faf6f5;border-left:3px solid var(--brand);padding:17px 20px;display:flex;align-items:baseline;gap:13px}.detail-price strong{font-size:30px;color:var(--brand)}.description{line-height:1.75;font-size:14px}.rule-grid{display:grid;grid-template-columns:repeat(3,1fr);border-block:1px solid var(--line);margin:28px 0}.rule-grid div{padding:16px 8px}.rule-grid div+div{border-left:1px solid var(--line)}.rule-grid span,.rule-grid b{display:block}.rule-grid span{font-size:12px;color:var(--muted);margin-bottom:5px}.buy-row{display:flex;gap:10px;align-items:center}.quantity{height:41px;border:1px solid #d8d2cf;border-radius:7px;display:flex;align-items:center;background:#fff}.quantity button{border:0;background:transparent;width:34px;height:100%;display:grid;place-items:center}.quantity span{width:33px;text-align:center;font-size:14px}.page-title{margin-bottom:26px}.page-title>span{color:var(--muted);font-size:13px}.cart-layout,.checkout-layout{display:grid;grid-template-columns:minmax(0,1fr) 340px;gap:22px;align-items:start}.cart-list{padding:0 22px}.cart-item{display:grid;grid-template-columns:24px 88px minmax(180px,1fr) 104px 90px 36px;align-items:center;gap:16px;padding:20px 0}.cart-item+.cart-item{border-top:1px solid var(--line)}.cart-thumb{width:88px;height:88px}.cart-product h3{font-size:14px;margin:0 0 6px}.cart-product p{font-size:12px;color:var(--muted);margin:0 0 10px}.cart-product strong{color:var(--brand)}.line-total{text-align:right}.summary{padding:24px;position:sticky;top:94px}.summary h2{font-size:18px;margin:0 0 22px}.summary>div{display:flex;justify-content:space-between;margin:13px 0;font-size:13px}.summary-total{border-top:1px solid var(--line);padding-top:18px;margin-top:20px!important;align-items:baseline}.summary-total strong{font-size:25px;color:var(--brand)}.summary button{margin-top:18px}.summary>p{font-size:11px;line-height:1.55;color:#969093;text-align:center}.checkout-main{display:grid;gap:18px}.section-panel{padding:24px}.panel-title{display:flex;align-items:center;justify-content:space-between;margin-bottom:20px}.panel-title>div{display:flex;align-items:center;gap:9px}.panel-title h2{font-size:17px;margin:0}.address-list{display:grid;gap:10px}.address-card{display:flex;align-items:flex-start;gap:12px;border:1px solid var(--line);padding:15px;border-radius:8px;cursor:pointer}.address-card.selected{border-color:var(--brand);background:#fffafb}.address-card input{margin-top:4px}.address-card div{flex:1}.address-card b,.address-card span{font-size:13px;margin-right:13px}.address-card p{font-size:12px;color:var(--muted);margin:8px 0 0}.address-card em{font-style:normal;color:var(--brand);font-size:10px;background:var(--brand-soft);padding:3px 6px;border-radius:4px}.order-list{display:grid;gap:14px}.order-card{overflow:hidden}.order-card>header{padding:14px 20px;background:#faf9f8;border-bottom:1px solid var(--line);display:flex;justify-content:space-between;align-items:center}.order-card header span,.order-card header small{display:block}.order-card header span{font-size:13px;font-weight:600}.order-card header small{font-size:11px;color:var(--muted);margin-top:4px}.order-content{display:grid;grid-template-columns:1fr 150px;align-items:center;padding:18px 20px}.order-items>div{display:flex;align-items:center;gap:12px}.order-items>div+div{margin-top:10px}.mini-product{width:58px;height:58px}.order-items p{margin:0}.order-items b,.order-items span{display:block;font-size:13px}.order-items span{font-size:11px;color:var(--muted);margin-top:5px}.order-amount{text-align:right;border-left:1px solid var(--line)}.order-amount span,.order-amount strong{display:block}.order-amount span{font-size:11px;color:var(--muted);margin-bottom:5px}.order-amount strong{font-size:20px}.order-card>footer{padding:0 20px 16px;display:flex;justify-content:flex-end;gap:8px}.shipment-line{margin:0 20px 15px;background:#f3f8f5;color:#397258;padding:10px 13px;display:flex;align-items:center;gap:8px;font-size:12px}.status{font-size:11px;padding:4px 8px;border-radius:5px;font-weight:600;white-space:nowrap}.status.warning{background:#fff4df;color:#925600}.status.info{background:#eaf2fb;color:#246394}.status.danger{background:#ffedeb;color:#a93026}.status.success{background:#e9f6ef;color:#237a52}.status.muted{background:#efedec;color:#726c6f}.profile-hero{background:#fff;border:1px solid var(--line);padding:32px;display:flex;align-items:center;gap:20px;margin-bottom:20px}.profile-avatar{width:68px;height:68px;border-radius:50%;background:var(--brand);color:#fff;display:grid;place-items:center;font-size:26px;font-weight:700}.profile-hero h1{margin:0 0 5px;font-size:25px}.profile-hero p:last-child{margin:0;color:var(--muted);font-size:13px}.profile-grid{display:grid;grid-template-columns:1fr 420px;gap:20px}.rules{margin:0;padding-left:21px;color:#615b5e;font-size:13px;line-height:2}.quick-links{padding:6px 20px}.quick-links a{display:grid;grid-template-columns:34px 1fr 18px;gap:12px;align-items:center;padding:16px 0}.quick-links a+a{border-top:1px solid var(--line)}.quick-links a>svg:first-child{color:var(--brand)}.quick-links span b,.quick-links span small{display:block}.quick-links span b{font-size:13px}.quick-links span small{font-size:11px;color:var(--muted);margin-top:4px}.empty{text-align:center;padding:80px 20px;color:var(--muted)}.empty>div{width:54px;height:54px;border-radius:50%;background:#eeeae8;display:grid;place-items:center;margin:0 auto 18px;color:#7c7478}.empty h2{font-size:18px;color:#494346;margin:0 0 8px}.empty p{font-size:13px;margin:0 0 20px}.loading-state{min-height:420px;display:grid;place-content:center;justify-items:center;gap:13px;color:var(--muted);font-size:13px}.loading-state.compact{min-height:220px}.loading-state span{width:27px;height:27px;border:3px solid #dfd9d6;border-top-color:var(--brand);border-radius:50%;animation:spin .7s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:#1a14167a;z-index:100;display:grid;place-items:center;padding:30px}.modal{width:520px;max-height:90vh;overflow:auto;background:#fff;border-radius:12px;padding:26px;box-shadow:0 24px 80px #140a0e40}.modal-wide{width:760px}.modal-head{display:flex;align-items:flex-start;justify-content:space-between;margin-bottom:22px}.modal-head h2{margin:0;font-size:21px}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}.form-grid .full{grid-column:1/-1}.check-row{display:flex;align-items:center;gap:9px;margin-top:16px}.modal-actions{display:flex;justify-content:flex-end;gap:9px;margin-top:24px}.payment-order{background:#faf5f6;padding:16px;margin-bottom:18px}.payment-order span,.payment-order small{display:block}.payment-order strong{display:block;color:var(--brand);font-size:26px;margin:4px 0}.payment-order small{color:var(--muted)}.modal>label{margin-top:14px}.toast{position:fixed;right:24px;bottom:24px;z-index:200;background:#263b31;color:#fff;padding:12px 17px;border-radius:8px;box-shadow:var(--shadow);font-size:13px}.toast.error{background:#8f291f}.login-shell{min-height:100vh;display:grid;grid-template-columns:1.15fr .85fr}.login-brand{background:#68162f;color:#fff;display:flex;flex-direction:column;justify-content:center;padding:10%;position:relative;overflow:hidden}.login-brand:after{content:"";position:absolute;width:420px;height:420px;border:1px solid rgba(255,255,255,.14);border-radius:50%;right:-180px;bottom:-100px;box-shadow:0 0 0 90px #ffffff08,0 0 0 180px #ffffff06}.brand-mark.large{width:52px;height:52px;font-size:30px;background:#fff;color:var(--brand);margin-bottom:60px}.login-brand .eyebrow{color:#d9aeba}.login-brand h1{font-family:Georgia,"Noto Serif SC",serif;font-size:48px;line-height:1.22;font-weight:400;margin:0 0 22px}.login-brand>p:last-child{color:#e1c7cf;max-width:480px;line-height:1.8}.login-panel{display:grid;place-items:center;background:#f7f3f1}.login-card{width:380px;background:#fff;padding:38px;box-shadow:0 18px 60px #3f252d1a}.login-card h2{font-size:25px;margin:0 0 8px}.login-card .subtle{font-size:13px;margin:0 0 25px}.login-card label{margin-top:18px}.admin-shell{min-height:100vh;display:grid;grid-template-columns:230px minmax(0,1fr);background:#f5f4f2}.admin-sidebar{position:sticky;top:0;height:100vh;background:#251c20;color:#fff;padding:24px 16px;display:flex;flex-direction:column}.brand.light{padding:0 7px}.brand.light b{color:#b8afb3}.admin-sidebar nav{margin-top:38px;display:grid;gap:5px}.admin-sidebar nav button{height:43px;border:0;background:transparent;color:#bdb4b8;border-radius:7px;text-align:left;padding:0 12px;display:flex;align-items:center;gap:11px;font-size:13px}.admin-sidebar nav button svg{width:17px}.admin-sidebar nav button.active,.admin-sidebar nav button:hover:not(:disabled){background:#3b2a31;color:#fff}.admin-sidebar nav button:disabled{opacity:.38}.admin-user{margin-top:auto;border-top:1px solid #45383d;padding:18px 5px 0;display:grid;grid-template-columns:34px 1fr 30px;gap:9px;align-items:center}.admin-user>span{width:34px;height:34px;background:#7a2942;border-radius:50%;display:grid;place-items:center}.admin-user b,.admin-user small{display:block}.admin-user b{font-size:12px}.admin-user small{font-size:10px;color:#a99fa3;margin-top:3px}.admin-user button{background:transparent;border:0;color:#aca3a7}.admin-user svg{width:16px}.admin-main{padding:30px 36px 60px;min-width:0}.admin-main>header{display:flex;justify-content:space-between;align-items:center;margin-bottom:28px}.admin-main>header h1{font-size:27px;margin:0}.metric-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin-bottom:20px}.metric-card{background:#fff;border:1px solid var(--line);padding:20px;display:flex;justify-content:space-between;align-items:flex-start}.metric-card span,.metric-card strong{display:block}.metric-card span{font-size:12px;color:var(--muted)}.metric-card strong{font-size:30px;margin-top:10px}.metric-card svg{width:20px;color:var(--brand);background:var(--brand-soft);box-sizing:content-box;padding:10px;border-radius:8px}.admin-panel{padding:24px}.system-ok{display:flex;align-items:flex-start;gap:12px}.system-ok>span{width:9px;height:9px;background:#31a06e;border-radius:50%;margin-top:5px;box-shadow:0 0 0 5px #e5f6ed}.system-ok b{font-size:13px}.system-ok p{font-size:12px;color:var(--muted);margin:5px 0}.admin-toolbar{display:flex;justify-content:space-between;align-items:center;margin-bottom:14px}.admin-toolbar .primary svg{width:17px}.table-wrap{overflow:auto}.table-wrap table{width:100%;border-collapse:collapse;font-size:12px}.table-wrap th{text-align:left;background:#faf9f8;color:#777174;font-weight:600;padding:13px 15px;border-bottom:1px solid var(--line);white-space:nowrap}.table-wrap td{padding:14px 15px;border-bottom:1px solid #eeeae8;vertical-align:middle}.table-wrap tr:last-child td{border-bottom:0}.table-wrap td b,.table-wrap td small{display:block}.table-wrap td small{color:var(--muted);margin-top:4px}.danger-text{color:var(--danger)!important}.success-text{color:var(--success)!important}.action-cell{white-space:nowrap}.tabs.compact{margin:0}.tabs.compact button{font-size:12px;padding:7px 11px}@media(max-width:1180px){.product-grid{grid-template-columns:repeat(3,1fr)}.product-image{height:260px}.hero{padding-inline:42px}.topbar nav{margin-left:45px;gap:25px}.cart-item{grid-template-columns:22px 74px minmax(150px,1fr) 104px 80px 34px}.cart-thumb{width:74px;height:74px}.profile-grid{grid-template-columns:1fr 360px}.metric-grid{grid-template-columns:repeat(2,1fr)}}.auth-unavailable{background:#fff3e4;color:#8b540b;border:1px solid #f0d5ad;padding:13px;border-radius:8px;font-size:13px;margin-top:22px}.role-options{display:grid;gap:9px}.role-options label{display:flex;align-items:flex-start;gap:11px;border:1px solid var(--line);border-radius:8px;padding:13px;cursor:pointer}.role-options input{margin-top:3px}.role-options span b,.role-options span small{display:block}.role-options span small{font-weight:400;color:var(--muted);margin-top:4px}
