:root{color:#493727;font-synthesis:none;--gold:#c99b52;--deep:#5d4935;--cream:#f8f3ea;--line:#eadfce;background:#f8f3ea;font-family:Inter,PingFang SC,Microsoft YaHei,sans-serif}*{box-sizing:border-box}body{background:linear-gradient(135deg,#fbf8f1,#f4ebdc);margin:0}button,input,select{font:inherit}.catalog{width:min(1120px,100%);min-height:100vh;margin:auto;padding:0 24px 40px}.topbar{justify-content:space-between;align-items:center;height:74px;display:flex}.topbar a{color:var(--deep);font-size:14px;text-decoration:none}.topbar .brand{font-size:20px}.hero{background:radial-gradient(circle at 80% 25%,#fff9 0 8%,#0000 9%),linear-gradient(130deg,#ead1ad,#f8e8d6 45%,#d9b37b);border-radius:28px;height:330px;padding:52px 64px;position:relative;overflow:hidden;box-shadow:0 18px 50px #a57b4230}.hero:after{content:"";border:1px solid #fff7;border-radius:50%;width:440px;height:440px;position:absolute;top:-160px;right:-80px}.hero small{letter-spacing:4px}.hero h1{color:#543720;margin:15px 0 12px;font-family:Songti SC,serif;font-size:48px;line-height:1.15}.hero p{color:#725640}.gift-stack{width:260px;height:210px;position:absolute;bottom:42px;right:12%}.gift-stack i{background:linear-gradient(145deg,#fff5e7,#c89550);border-radius:12px;display:block;position:absolute;box-shadow:0 14px 30px #6c432735}.gift-stack i:before,.gift-stack i:after{content:"";background:#af7741;position:absolute}.gift-stack i:before{width:14px;height:100%;left:50%;transform:translate(-50%)}.gift-stack i:after{width:100%;height:14px;top:42%}.gift-stack i:first-child{width:130px;height:120px;bottom:0;left:0}.gift-stack i:nth-child(2){width:110px;height:150px;bottom:0;right:0}.gift-stack i:nth-child(3){width:80px;height:75px;bottom:100px;left:75px}.dots{color:#a56c38;font-size:12px;position:absolute;bottom:16px;left:50%}.category-tabs{scrollbar-width:none;gap:12px;padding:22px 0 10px;display:flex;overflow:auto}.category-tabs button{white-space:nowrap;border:1px solid var(--line);color:#6b5744;background:#fffaf4;border-radius:999px;padding:11px 18px}.category-tabs button.active{color:#fff;background:linear-gradient(135deg,#d7b271,#b9863d);border-color:#0000;box-shadow:0 6px 16px #bc8b4930}.section-head{justify-content:space-between;align-items:center;margin:20px 0 14px;display:flex}.section-head h2{margin:0;font-family:Songti SC,serif}.section-head span{color:#9a8978;font-size:13px}.product-grid{grid-template-columns:repeat(4,1fr);gap:18px;display:grid}.product-card{background:#fffdfa;border:1px solid #eee5d9;border-radius:20px;overflow:hidden;box-shadow:0 8px 24px #5c3c1c0c}.product-image{aspect-ratio:1;background:linear-gradient(145deg,#f2e7d8,#fff);position:relative}.product-image img{object-fit:cover;width:100%;height:100%}.placeholder{text-align:center;color:#b68c57;place-content:center;height:100%;display:grid}.placeholder span{filter:sepia(.7);font-size:65px}.placeholder small{margin-top:8px}.level{color:#fff;background:#c99746;border-radius:8px;padding:5px 9px;font-size:12px;position:absolute;top:10px;right:10px}.level-3{background:#9c779f}.level-4{background:#ec846c}.product-info{padding:15px}.product-info h3{margin:0 0 9px;font-size:16px}.product-info p{color:#998676;white-space:nowrap;text-overflow:ellipsis;margin:0 0 12px;font-size:12px;overflow:hidden}.brand-line{color:#786453;align-items:center;gap:6px;font-size:12px;display:flex}.brand-logo,.mini-logo{color:#bb8b4a;border:1px solid #caa267;border-radius:50%;place-items:center;width:24px;height:24px;display:inline-grid}.catalog footer{text-align:center;color:#b09a84;padding:40px;font-size:12px}.admin-shell{background:#f8f6f2;grid-template-columns:230px 1fr;min-height:100vh;display:grid}.admin-shell aside{border-right:1px solid var(--line);background:linear-gradient(#fffdf9,#f5ebdc);flex-direction:column;padding:30px 18px;display:flex}.admin-logo{padding:0 14px 34px;font-size:20px}.admin-shell aside nav{gap:8px;display:grid}.admin-shell aside button{text-align:left;color:#5d4935;background:0 0;border:0;border-radius:10px;padding:14px 16px}.admin-shell aside button span{margin-right:14px}.admin-shell aside button.active{color:#fff;background:linear-gradient(135deg,#d8b16a,#bf8b3e);box-shadow:0 8px 18px #bf8b3e30}.admin-shell aside>a{color:#7d6b59;margin-top:auto;padding:14px;font-size:13px;text-decoration:none}.admin-main{min-width:0}.admin-main>header{background:#fff;border-bottom:1px solid #eee7dd;justify-content:space-between;align-items:center;height:100px;padding:0 36px;display:flex}.admin-main header h1{margin:4px 0 0;font-size:26px}.admin-main header small{color:#aa9681}.avatar{color:#fff;background:#c99b52;border-radius:50%;place-items:center;width:40px;height:40px;display:grid}.toolbar{background:#fff;gap:12px;padding:26px 30px;display:flex}.toolbar label{border:1px solid #e4ded4;border-radius:8px;align-items:center;padding:0 12px;display:flex}.toolbar input{border:0;outline:0;width:180px;padding:10px}.toolbar select{color:#786b5e;background:#fff;border:1px solid #e4ded4;border-radius:8px;padding:0 14px}.primary{color:#fff;background:linear-gradient(135deg,#d3a95e,#b98237);border:0;border-radius:8px;margin-left:auto;padding:11px 18px}.table-wrap{background:#fff;border:1px solid #e8e1d7;border-radius:14px;margin:0 30px 30px;overflow:auto}table{border-collapse:collapse;width:100%;min-width:900px}th,td{text-align:left;border-bottom:1px solid #eee8df;padding:15px 16px;font-size:13px}th{color:#8b7b6b;background:#fcfaf7;font-weight:500}.product-cell{align-items:center;gap:12px;display:flex}.product-cell>span{background:#f4eadb;border-radius:8px;place-items:center;width:54px;height:54px;font-size:26px;display:grid}.product-cell small{color:#9e8e7e;margin-top:5px;display:block}.mini-logo{margin-right:7px}.status{color:#51a174}.sort{text-align:center;border:1px solid #ddd5ca;border-radius:6px;width:45px;padding:7px}.link{color:#ba833f;background:0 0;border:0;padding:5px}.danger{color:#df715f}.pagination{text-align:right;color:#8c7c6d;padding:18px}.pagination b{color:#fff;background:#c99b52;border-radius:6px;padding:8px 12px}.simple-panel{background:#fff;border:1px solid #e8e1d7;border-radius:14px;flex-wrap:wrap;align-items:center;margin:28px;padding:24px;display:flex}.simple-panel h2{margin:0}.simple-panel p{color:#9a8876}.empty-admin{text-align:center;color:#ad9c8c;border-top:1px solid #eee7dd;width:100%;margin-top:24px;padding:100px 20px}@media (width<=900px){.product-grid{grid-template-columns:repeat(3,1fr)}.hero{height:280px;padding:38px}.hero h1{font-size:40px}.gift-stack{right:5%;transform:scale(.8)}.admin-shell{grid-template-columns:78px 1fr}.admin-logo strong,.admin-shell aside button:not(.active){font-size:0}.admin-shell aside button span{margin:0;font-size:18px}.admin-shell aside button{text-align:center}.admin-shell aside button.active{font-size:0}.admin-shell aside button.active span{font-size:18px}.admin-shell aside>a{font-size:0}.toolbar{overflow:auto}.toolbar>*{flex:none}}@media (width<=600px){.catalog{padding:0 14px 24px}.topbar{height:60px}.hero{border-radius:20px;height:220px;padding:28px 24px}.hero h1{margin:10px 0;font-size:30px}.hero p{font-size:12px}.gift-stack{transform-origin:100% 100%;bottom:20px;right:5%;transform:scale(.55)}.category-tabs{padding-top:16px}.category-tabs button{padding:9px 14px}.product-grid{grid-template-columns:repeat(2,1fr);gap:10px}.product-card{border-radius:14px}.product-info{padding:11px}.product-info h3{font-size:14px}.product-info p{font-size:11px}.placeholder span{font-size:46px}.section-head{margin-top:12px}}.login-page{background:radial-gradient(circle at 20% 20%,#fff 0 3%,#0000 20%),linear-gradient(140deg,#f8f1e7,#e1bf8d);place-items:center;min-height:100vh;padding:24px;display:grid}.login-card{text-align:center;background:#fffdf9;border:1px solid #f3e7d7;border-radius:24px;width:min(440px,100%);padding:44px;box-shadow:0 28px 70px #66421e2c}.login-mark{background:linear-gradient(135deg,#f0d5a9,#bd8539);border-radius:20px;place-items:center;width:68px;height:68px;margin:0 auto 18px;font-size:32px;display:grid}.login-card>small{letter-spacing:3px;color:#ba8a4d}.login-card h1{margin:10px 0;font-family:Songti SC,serif}.login-card>p{color:#9d8873;margin-bottom:30px}.login-card form{text-align:left;gap:18px;display:grid}.login-card label,.form-grid label{color:#6b5744;gap:8px;font-size:13px;display:grid}.login-card input,.form-grid input,.form-grid textarea{color:#493727;background:#fff;border:1px solid #e5dbcf;border-radius:9px;outline:none;width:100%;padding:12px 13px}.login-card input:focus,.form-grid input:focus,.form-grid textarea:focus{border-color:#c99b52;box-shadow:0 0 0 3px #c99b521c}.login-button{width:100%;margin:2px 0 0;padding:13px}.login-card>a{color:#9a8065;margin-top:24px;font-size:13px;text-decoration:none;display:inline-block}.form-error{color:#c65948;background:#fff0ed;border-radius:8px;padding:10px 12px;font-size:13px}.admin-user{color:#766554;background:0 0;border:0;align-items:center;gap:9px;display:flex}.admin-user span{color:#fff;background:#c99b52;border-radius:50%;place-items:center;width:38px;height:38px;display:grid}.resource-toolbar{background:#fff;border:1px solid #ebe4db;border-radius:14px;align-items:center;margin:28px 30px 16px;padding:22px 24px;display:flex}.resource-toolbar h2{margin:0 0 6px;font-size:19px}.resource-toolbar p{color:#9b8977;margin:0;font-size:13px}.resource-list{background:#fff;border:1px solid #e8e1d7;border-radius:14px;margin:0 30px 30px;overflow:auto}.resource-list table{min-width:780px}.resource-list td{height:75px}.resource-list td>strong{display:block}.count-label{color:#aa9989;margin-top:6px;display:block}.brand-thumb{color:#bd8a47;background:#fbf7f0;border:1px solid #eadfce;border-radius:11px;place-items:center;width:48px;height:48px;display:grid;overflow:hidden}.brand-thumb img{object-fit:contain;width:100%;height:100%}.status-switch{color:#897b6f;background:#eeeae4;border:0;border-radius:999px;padding:7px 10px}.status-switch i{background:#aaa;border-radius:50%;width:7px;height:7px;margin-right:6px;display:inline-block}.status-switch.on{color:#39815c;background:#e5f3eb}.status-switch.on i{background:#51a174}.remark-cell{color:#8f8072;max-width:220px}.loading,.page-error{text-align:center;color:#9b8978;padding:80px 20px}.page-error{color:#ba5546;background:#fff0ed;border-radius:12px;margin:0 30px 20px}.page-error button{background:#fff;border:0;border-radius:6px;margin-left:12px;padding:6px 10px}.dialog-backdrop{z-index:20;background:#34291f80;place-items:center;padding:20px;display:grid;position:fixed;inset:0}.dialog{background:#fffdf9;border-radius:20px;width:min(620px,100%);max-height:90vh;overflow:auto;box-shadow:0 25px 80px #25170940}.dialog>header{border-bottom:1px solid #eee5da;justify-content:space-between;align-items:center;padding:23px 26px;display:flex}.dialog>header small{color:#aa8e70}.dialog>header h2{margin:5px 0 0}.dialog>header button{color:#8d7861;background:#f4ede4;border:0;border-radius:50%;width:34px;height:34px;font-size:24px}.form-grid{gap:20px;padding:24px 26px;display:grid}.form-grid label>span{font-weight:600}.form-grid textarea{resize:vertical;min-height:88px}.form-grid label>small{color:#ac9b8a}.form-row{grid-template-columns:1fr 1fr;gap:18px;display:grid}.choice{color:#786654;background:#fff;border:1px solid #e5dbcf;border-radius:8px;margin-right:8px;padding:10px 16px}.choice.selected{color:#a87531;background:#fbf0dd;border-color:#c99b52}.image-input{grid-template-columns:90px 1fr;align-items:center;gap:12px;display:grid}.image-preview{color:#ae9a83;background:#fbf8f3;border:1px dashed #d9c7af;border-radius:9px;place-items:center;width:90px;height:70px;font-size:12px;display:grid;overflow:hidden}.image-preview img{object-fit:contain;width:100%;height:100%}.dialog>footer{border-top:1px solid #eee5da;justify-content:flex-end;gap:10px;padding:17px 26px;display:flex}.dialog>footer .primary{margin:0}.secondary{color:#6d5b49;background:#fff;border:1px solid #ddd2c4;border-radius:8px;padding:10px 18px}.primary:disabled{opacity:.6}.empty-admin{text-align:center;color:#ad9c8c;width:100%;padding:100px 20px}@media (width<=650px){.login-card{padding:32px 22px}.resource-toolbar,.resource-list,.page-error{margin-left:14px;margin-right:14px}.resource-toolbar{align-items:flex-start}.resource-toolbar .primary{white-space:nowrap}.form-row{grid-template-columns:1fr}.dialog{max-height:95vh}.image-input{grid-template-columns:1fr}.admin-main>header{padding:0 18px}}.product-toolbar{background:#fff;border:1px solid #ebe4db;border-radius:14px;gap:12px;margin:28px 30px 16px;padding:18px;display:flex}.search-box{color:#a38e77;border:1px solid #e4ded4;border-radius:8px;align-items:center;min-width:260px;padding:0 12px;display:flex}.search-box input{background:0 0;border:0;outline:0;width:100%;padding:10px}.product-toolbar select,.form-grid select{color:#6c5a48;background:#fff;border:1px solid #e4ded4;border-radius:8px;outline:none;padding:10px 13px}.product-toolbar .secondary{padding:8px 16px}.product-table .product-cell{min-width:290px}.product-thumb{background:#f4eadb;border-radius:9px;flex:0 0 58px;place-items:center;width:58px;height:58px;font-size:26px;display:grid;overflow:hidden}.product-thumb img{object-fit:cover;width:100%;height:100%}.table-brand{white-space:nowrap;align-items:center;gap:8px;display:flex}.table-brand .brand-thumb{border-radius:8px;width:32px;height:32px}.card-tag{color:#976624;white-space:nowrap;background:#fae7c6;border-radius:7px;padding:5px 9px;display:inline-block}.card-tag.card-1{color:#4a7a5d;background:#dff0e5}.card-tag.card-3{color:#76527a;background:#eee1f0}.card-tag.card-4{color:#b65445;background:#ffe0d9}.product-dialog{width:min(720px,100%)}.product-image-input{grid-template-columns:120px 1fr}.product-image-input .image-preview{width:120px;height:100px}.form-grid select{width:100%}@media (width<=800px){.product-toolbar{overflow:auto}.product-toolbar>*{flex:none}.product-toolbar .primary{margin-left:0}.search-box{min-width:220px}}@media (width<=650px){.product-toolbar,.table-wrap{margin-left:14px;margin-right:14px}.product-image-input{grid-template-columns:1fr}}.banner-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;margin:0 30px 30px;display:grid}.banner-grid>.loading,.banner-grid>.empty-admin{background:#fff;border:1px solid #e8e1d7;border-radius:14px;grid-column:1/-1}.banner-admin-card{background:#fff;border:1px solid #e8e1d7;border-radius:16px;min-width:0;overflow:hidden;box-shadow:0 9px 28px #6d4b250b}.banner-thumb{color:#fff;background:linear-gradient(135deg,#ebd2ab,#c89752);place-items:center;height:190px;display:grid;position:relative;overflow:hidden}.banner-thumb img{object-fit:cover;width:100%;max-width:100%;height:100%;max-height:100%;display:block}.banner-state{color:#fff;background:#7b6f65dd;border-radius:999px;padding:5px 9px;font-size:11px;position:absolute;top:12px;right:12px}.banner-state.on{background:#4b9b70e8}.banner-card-body{padding:18px}.banner-card-body h3{margin:0 0 8px}.banner-card-body p{color:#978675;white-space:nowrap;text-overflow:ellipsis;margin:0;font-size:13px;overflow:hidden}.banner-card-body dl{gap:35px;margin:18px 0;display:flex}.banner-card-body dl div{gap:5px;display:grid}.banner-card-body dt{color:#ad9b89;font-size:11px}.banner-card-body dd{margin:0;font-size:13px}.banner-card-body footer{border-top:1px solid #eee7dd;align-items:center;gap:4px;padding-top:14px;display:flex}.banner-card-body footer>span{flex:1}.banner-form-preview{aspect-ratio:3.2;color:#a68765;background:linear-gradient(135deg,#faf1e5,#ead2af);border:1px dashed #d7c5ad;border-radius:11px;place-items:center;width:100%;display:grid;overflow:hidden}.banner-form-preview img{object-fit:cover;width:100%;max-width:100%;height:100%;max-height:100%;display:block}@media (width<=850px){.banner-grid{grid-template-columns:1fr}}@media (width<=650px){.banner-grid{margin-left:14px;margin-right:14px}.banner-thumb{height:150px}}.configured-hero{color:#fff;background-position:50%;background-size:cover;transition:background-image .35s}.configured-hero:after{display:none}.banner-dots{gap:8px;display:flex;left:50%;transform:translate(-50%)}.banner-dots button{background:#ffffff8c;border:0;border-radius:999px;width:8px;height:8px;padding:0}.banner-dots button.active{background:#fff;width:22px}.uploader{background:#fcf8f2;border:1px dashed #d8c4aa;border-radius:12px;grid-template-columns:130px 1fr;align-items:center;gap:16px;padding:12px;display:grid}.uploader.wide{grid-template-columns:220px 1fr}.upload-preview{color:#a58a6d;background:linear-gradient(135deg,#f5eadb,#e3c79e);border-radius:9px;place-items:center;height:105px;display:grid;position:relative;overflow:hidden}.uploader.wide .upload-preview{height:90px}.upload-preview img{object-fit:contain;background:#fff;width:100%;height:100%}.uploader.wide .upload-preview img{object-fit:cover}.upload-preview i{color:#fff;background:#4b3626aa;place-items:center;font-style:normal;display:grid;position:absolute;inset:0}.upload-actions{justify-items:start;gap:8px;display:grid}.upload-button{color:#fff;cursor:pointer;background:#c5954d;border-radius:8px;padding:10px 16px;display:inline-block}.upload-button input{display:none}.upload-actions small{color:#a38e79}.upload-actions em{color:#c65948;font-size:12px;font-style:normal}@media (width<=650px){.uploader,.uploader.wide{grid-template-columns:1fr}.uploader.wide .upload-preview{height:120px}}.card-brand-image{object-fit:contain;background:#fff;border:1px solid #eadfce;border-radius:50%;width:24px;height:24px}.account-actions{align-items:center;gap:10px;display:flex}.account-actions>button:first-of-type{color:#806a53;background:#fff;border:1px solid #dfd4c6;border-radius:8px;padding:9px 13px}.docs-link{color:#9b7a55;font-size:13px;text-decoration:none}.password-dialog{width:min(500px,100%)}.password-hint{color:#8f7961;background:#f8f2e9;border-radius:8px;margin:0;padding:11px;font-size:12px;line-height:1.6}.subcategory-tabs{scrollbar-width:none;gap:10px;padding:4px 0 12px;display:flex;overflow:auto}.subcategory-tabs button{white-space:nowrap;color:#8a7158;background:#fffdf9;border:1px solid #eee1cf;border-radius:999px;padding:8px 15px;font-size:13px}.subcategory-tabs button.active{color:#a87532;background:#fbf0dd;border-color:#d4ad70}.product-toolbar .import-button{color:#a16e2d;background:#fffaf1;border-color:#c99b52}.import-dialog{width:min(680px,100%)}.import-tips{color:#75604b;background:#faf3e7;border-radius:10px;padding:15px 17px}.import-tips b{color:#5c4733;margin-bottom:7px;display:block}.import-tips p{margin:4px 0;font-size:12px;line-height:1.65}.import-drop{cursor:pointer;text-align:center;background:#fffcf7;border:1px dashed #d2b88d;border-radius:13px;align-content:center;place-items:center;padding:22px;gap:7px!important;min-height:150px!important;display:grid!important}.import-drop:hover,.import-drop.selected{background:#fdf5e8;border-color:#be873c}.import-drop>span{color:#bd873f;font-size:30px}.import-drop>strong{color:#5f4a35;font-size:15px}.import-drop input{display:none}.import-result{border:1px solid #e4dbcf;border-radius:10px;overflow:hidden}.import-result>div:first-child{background:#faf8f4;gap:22px;padding:14px 16px;display:flex}.import-result .success{color:#39815c}.import-result .failed{color:#c65948}.import-errors{max-height:220px;overflow:auto}.import-errors table{min-width:0}.import-errors th,.import-errors td{padding:10px 14px}.import-errors th:first-child,.import-errors td:first-child{white-space:nowrap;width:100px}
