:root{--bg:#fcf8fa;--card:#fff;--ink:#382a34;--muted:#9c8993;--rose:#e83f81;--rose-deep:#9b2a56;--pink:#f9dce8;--border:#f2e7eb;--shadow:0 9px 32px rgba(128,70,97,.055);--r:19px;--font:system-ui,-apple-system,'Segoe UI',Roboto,Arial,sans-serif}
*{box-sizing:border-box}html{font-family:var(--font)}body{margin:0;color:var(--ink);background:var(--bg)}button,input,select{font:inherit}button{cursor:pointer}button:disabled{cursor:not-allowed}a{color:inherit;text-decoration:none}input,select{max-width:100%}button:focus-visible,input:focus-visible,a:focus-visible,select:focus-visible{outline:3px solid #e88cac;outline-offset:2px}[hidden]{display:none!important}.muted{color:var(--muted)}.small{font-size:12px}.tiny{font-size:11px}.full{width:100%}
.app-shell{display:flex;min-height:100vh}.sidebar{width:254px;flex:0 0 254px;background:linear-gradient(160deg,#fff9fb 0%,#fff 60%,#fdf1f6 100%);min-height:100vh;border-right:1px solid #f4e6ec;display:flex;flex-direction:column;position:sticky;top:0;height:100vh;overflow:auto;z-index:50}.brand-wrap{display:flex;gap:7px;align-items:center;padding:28px 21px 20px}.brand-icon{width:41px;height:45px;display:grid;place-items:center}.brand-icon img{width:40px;height:42px;object-fit:contain}.brand-title{font-family:Georgia,'Times New Roman',serif;font-size:25px;font-weight:700;letter-spacing:-.8px;line-height:1}.brand-title span{color:var(--rose)}.brand-title small{display:block;font:700 8px var(--font);letter-spacing:1.75px;color:#bd7897;margin-top:6px}.store-pill{margin:7px 17px 26px;background:#fff;border:1px solid #f7dfe8;border-radius:13px;padding:13px 12px;display:flex;gap:10px;align-items:center;box-shadow:0 3px 18px #eda7bb16}.store-pill>div{flex:1}.store-pill b,.store-pill small{display:block}.store-pill b{font-size:12px}.store-pill small{font-size:10px;color:var(--muted);margin-top:3px}.online-dot{height:9px;width:9px;background:#40ac8e;border-radius:50%;box-shadow:0 0 0 3px #dff7ed}.menu-label{color:#bba6af;font-size:9px;letter-spacing:1.6px;font-weight:800;padding:0 29px 10px}.menu{padding:0 13px;display:grid;gap:4px}.nav-item{display:flex;align-items:center;gap:14px;padding:11px 14px;color:#786771;border-radius:12px;font-size:12.5px;font-weight:600;white-space:nowrap;min-height:43px}.nav-item svg{flex-shrink:0}.nav-item span{flex:1}.nav-item:hover{background:#fff1f6}.nav-item.active{color:#cf2f72;background:linear-gradient(95deg,#ffe0eb,#fff3f7);font-weight:750}.nav-item em{font-size:10px;font-style:normal;background:#fce0e9;color:#d43f77;padding:2px 6px;border-radius:16px}.sidebar-bottom{margin-top:auto;padding:25px 17px 22px}.assistant-card{border-radius:16px;padding:17px 17px 22px;background:linear-gradient(125deg,#ffedf2,#ffdce8);position:relative;overflow:hidden;min-height:137px}.assistant-card b{font-size:13px}.assistant-card p{font-size:11px;color:#986478;line-height:1.6;max-width:166px;position:relative;z-index:2}.assistant-card img{position:absolute;right:-3px;bottom:-6px;width:77px;opacity:.42}.assistant-spark{color:#ed629a;font-size:20px;margin-bottom:3px}.build-tag{font-weight:700;color:#be9dab;font-size:9px;letter-spacing:.9px;margin:19px 11px 0}.build-tag span{font-size:10px;letter-spacing:0;font-weight:400;display:block;margin-top:5px}.main-wrap{flex:1;min-width:0}.topbar{height:77px;background:#fff;border-bottom:1px solid var(--border);display:flex;align-items:center;justify-content:space-between;padding:0 36px;gap:15px}.top-left,.top-actions{display:flex;align-items:center;gap:12px}.top-left{font-size:12px;white-space:nowrap}.top-crumb{color:#ac9ca4}.crumb-sep{color:#ddd1d5}.top-current{font-weight:750;color:#4e3a44}.top-actions{gap:17px}.top-search{height:36px;width:238px;display:flex;align-items:center;gap:9px;border:1px solid #f0e6e9;border-radius:11px;background:#fcfafb;padding:0 12px;color:#b49da8}.top-search input{border:0;background:transparent;min-width:0;outline:0;width:100%;font-size:11px;color:var(--ink)}.round-action{background:#fff;border:1px solid #f3e6eb;height:36px;min-width:36px;border-radius:50%;color:#936f83;display:grid;place-items:center;position:relative}.round-action i{position:absolute;right:6px;top:4px;width:7px;height:7px;border-radius:50%;background:var(--rose)}.account{display:flex;align-items:center;gap:10px;border-left:1px solid #f1e7eb;padding-left:14px}.avatar{width:34px;height:34px;background:linear-gradient(135deg,#ec81a9,#df4586);color:white;border-radius:50%;font-size:11px;font-weight:800;display:grid;place-items:center}.account-details{max-width:167px}.account-details b,.account-details small{display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.account-details b{font-size:10px}.account-details small{font-size:9px;color:#9b8d95;margin-top:3px}.content{max-width:1600px;margin:auto;padding:28px 36px 20px}.banner-demo{font-size:11px;border:1px solid #f2d7e1;background:#fff6f9;color:#94637a;padding:8px 12px;border-radius:9px;margin:0 0 22px;line-height:1.5}.demo-badge{font-weight:900;color:#d83f79;margin-right:6px;letter-spacing:.25px}.welcome-bar,.page-title{display:flex;align-items:center;justify-content:space-between;gap:22px;margin-bottom:23px}.eyebrow{font-size:10px;font-weight:800;letter-spacing:1.7px;color:#dd6b98}.welcome-bar h1,.page-title h1{font-family:Georgia,'Times New Roman',serif;font-size:29px;font-weight:700;letter-spacing:-1px;margin:5px 0 8px;line-height:1.17}.welcome-bar p,.page-title p{font-size:12.5px;color:#9a8992;margin:0;line-height:1.6}.flower-symbol{font-family:Georgia;color:#f1abc5;font-size:.8em}.btn{display:inline-flex;justify-content:center;align-items:center;gap:8px;padding:11px 18px;border-radius:12px;border:1px solid transparent;font-size:12px;font-weight:750;transition:transform .12s,box-shadow .12s;white-space:nowrap}.btn:not(:disabled):hover{transform:translateY(-1px)}.btn-primary{background:linear-gradient(103deg,#f2679c,#e13b7a);color:#fff;box-shadow:0 7px 17px #e9548c31}.btn-outline{border-color:#f2dbe4;background:#fff;color:#d74a80}.btn:disabled{background:#ead9e0;color:#ac98a0;box-shadow:none}.metrics{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:17px;margin-bottom:20px}.metric{border:1px solid var(--border);background:#fff;border-radius:var(--r);padding:19px 19px 16px;box-shadow:var(--shadow);min-height:153px}.metric.pink{background:linear-gradient(135deg,#ffe6ef,#fff6f9);border-color:#fbd9e7}.metric-top{display:flex;align-items:start;justify-content:space-between;gap:4px;font-size:11px;color:#977f8b;font-weight:650}.metric-icon,.soft-pink-icon{color:#db6390;background:#fff1f6;border-radius:12px;padding:8px;display:grid;place-items:center}.metric-icon{height:37px;width:37px}.metric-main{font-weight:780;font-size:27px;margin-top:20px;white-space:nowrap}.metric-main span{font-weight:500;color:#9e8e96;font-size:11px}.metric-foot{font-size:10px;color:#a2939b;display:flex;align-items:center;gap:5px;margin-top:10px}.trend{background:#e3f7eb;color:#2f9b70;border-radius:7px;padding:4px;font-weight:750;display:inline-flex;align-items:center;gap:2px}.indicator{height:8px;width:8px;border-radius:50%;display:inline-block}.pink-dot{background:#ed5a94}.orange-dot{background:#efa058}.green-dot{background:#55b591}.dashboard-columns{display:grid;grid-template-columns:1.58fr 1fr;gap:18px;margin-bottom:20px}.dashboard-bottom{display:grid;grid-template-columns:1.5fr 1fr;gap:18px}.panel{border:1px solid var(--border);background:#fff;border-radius:var(--r);padding:19px 20px;box-shadow:var(--shadow);min-width:0}.panel-head{display:flex;align-items:start;justify-content:space-between;gap:10px;margin-bottom:19px}.panel h2{font-family:Georgia,'Times New Roman',serif;letter-spacing:-.35px;font-size:18px;font-weight:700;margin:0 0 6px}.panel h3{font-size:12px;margin-top:20px}.panel-head p{font-size:10.5px;color:#ac9aa4;margin:0;line-height:1.5}.text-link{display:inline-flex;align-items:center;gap:5px;font-size:10.5px;color:#df4e87;font-weight:800;white-space:nowrap}.mini-flower{color:#ee9dbb}.recent-list{display:grid;gap:4px}.recent-item{display:flex;gap:11px;align-items:center;padding:12px 2px;border-bottom:1px solid #f8f0f3}.recent-item:last-child{border-bottom:0}.small-avatar{width:34px;height:34px;border-radius:50%;display:grid;place-items:center;flex-shrink:0;background:linear-gradient(135deg,#ffe0eb,#ffeff4);color:#d4598a;font-weight:800;font-size:12px}.recent-title{flex:1;min-width:0}.recent-title b,.recent-title span{display:block}.recent-title b{font-size:11.5px}.recent-title span{font-size:9.5px;color:#ab9ca4;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;margin-top:5px}.recent-item>strong{font-size:11px;min-width:62px;text-align:right}.pill{display:inline-flex;align-items:center;justify-content:center;border-radius:15px;padding:5px 10px;font-size:9px;font-weight:750;white-space:nowrap;letter-spacing:.1px}.pill.warn{background:#fff4df;color:#ba7929}.pill.info{background:#e9f3ff;color:#547fb4}.pill.violet{background:#f2eaff;color:#8b68ba}.pill.ok{background:#e7f7ed;color:#32926d}.pill.neutral{background:#f3f0f2;color:#968591}.catalog-preview{display:flex;align-items:center;gap:13px;background:#fff6fa;border-radius:13px;padding:12px;margin-bottom:18px}.preview-photo{width:90px;height:76px;background:#ffe5ed;border-radius:11px;overflow:hidden}.preview-photo img{width:100%;height:100%;object-fit:cover}.preview-copy{display:grid;gap:6px}.preview-copy strong{font-family:Georgia,serif;font-size:18px}.preview-copy small{font-size:11px;color:var(--muted)}.live-state{font-size:9px;color:#2b9f78;font-weight:800}.live-state span{display:inline-block;width:7px;height:7px;background:#4cbb96;border-radius:50%;margin-right:4px}.catalog-stat{display:flex;justify-content:space-between;font-size:11px;color:#a3939d;margin-bottom:11px}.catalog-stat strong{font-size:14px;color:#40313c}.catalog-stat small{color:#aca0a5}.progress{height:8px;border-radius:10px;background:#f9ebf0;overflow:hidden;margin-bottom:17px}.progress span{display:block;height:100%;border-radius:10px;background:linear-gradient(90deg,#efa1bf,#e84885)}.inventory-tiles{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:11px}.inventory-tile{display:flex;align-items:center;gap:12px;padding:9px;border:1px solid #f6ebef;border-radius:12px;min-width:0}.inventory-tile img{height:65px;width:60px;object-fit:cover;border-radius:9px;background:#fff0f4}.inventory-tile>div{min-width:0}.inventory-tile strong,.inventory-tile small,.inventory-qty{display:block}.inventory-tile strong{font-size:11px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.inventory-tile small{font-size:9px;color:var(--muted);margin:4px 0}.inventory-qty{font-size:9px;color:#d75289;font-weight:750}.shortcut-grid{display:grid;grid-template-columns:1fr 1fr;gap:11px}.shortcut-grid a{min-height:86px;border:1px solid #f5e6ec;border-radius:12px;background:linear-gradient(145deg,#fffafd,#fff);display:flex;flex-direction:column;justify-content:center;align-items:center;gap:8px;font-size:10.5px;color:#7d5e6d;font-weight:700;text-align:center}.shortcut-grid svg{color:#e75b92}.app-footer{display:flex;justify-content:space-between;gap:12px;color:#b5a5ae;font-size:10px;padding:22px 2px 2px}.page-title{margin-bottom:25px}.readonly-note{display:flex;align-items:center;gap:6px;font-size:11px;color:#bd7696;border:1px solid #f2dbe6;background:#fff5f8;border-radius:10px;padding:9px 12px}.table-tools{display:flex;gap:15px;justify-content:space-between;align-items:center;margin-bottom:16px}.section-tabs{display:flex;gap:8px;flex-wrap:wrap}.tab{background:#fff;border:0;border-bottom:2px solid transparent;color:#a2909a;font-size:11px;padding:9px 6px;font-weight:700}.tab.active{color:#e03e7c;border-bottom-color:#e03e7c}.tab span{font-size:9px;margin-left:2px;opacity:.7}.table-search,.request-search{border:1px solid #f2e6ec;background:#fff;display:flex;align-items:center;gap:8px;color:#ad91a1;border-radius:11px;height:37px;padding:0 12px;min-width:0}.table-search input,.request-search input{border:0;outline:0;background:transparent;font-size:11px;width:100%}.table-scroll{width:100%;overflow:auto}.admin-table{width:100%;border-collapse:collapse;text-align:left;min-width:735px}.admin-table th{background:#fefbfc;color:#b3a0aa;font-size:9px;letter-spacing:.9px;padding:13px 12px}.admin-table td{font-size:11px;padding:13px 12px;border-bottom:1px solid #f6edf1;white-space:nowrap}.admin-table tr:last-child td{border-bottom:0}.admin-table tr[hidden]{display:none}.admin-table td b{font-size:11px}.product-cell{display:flex;align-items:center;gap:10px;min-width:200px}.product-cell img{height:46px;width:45px;border-radius:8px;object-fit:cover;background:#fae9ee}.product-cell strong,.product-cell small{display:block;max-width:188px;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.product-cell small{font-size:9px;color:#a798a0;margin-top:5px}.table-sub{color:#b2a1aa;font-size:9px}.icon-btn{background:#fff;border:0;color:#9d8592;padding:7px}.mini-metrics{display:grid;grid-template-columns:repeat(4,1fr);gap:13px;margin-bottom:20px}.mini-stat{background:#fff;border:1px solid var(--border);border-radius:15px;padding:16px 20px;font-size:11px;color:#a38c98;display:flex;justify-content:space-between;align-items:center;box-shadow:var(--shadow)}.mini-stat b{font-size:22px;color:#503947}.notice-inline{padding:14px 17px;margin-bottom:19px;border-radius:14px;background:#fff4f8;border:1px solid #f7dce6;font-size:11px;color:#936477;display:flex;align-items:center;gap:10px}.request-layout{display:grid;grid-template-columns:1fr 1fr;gap:18px}.request-search{margin-bottom:13px;width:100%}.request-row{padding:12px 10px;display:flex;gap:12px;align-items:center;background:white;border:1px solid transparent;border-radius:13px;width:100%;text-align:left;min-width:0}.request-row:hover,.request-row.selected{background:#fff6f9;border-color:#f7dfe8}.request-row-info{display:grid;gap:5px;flex:1;min-width:0}.request-row-info strong{font-size:11px}.request-row-info small{font-size:9px;color:var(--muted)}.request-row-state{justify-self:start}.request-row-money{font-size:12px;color:#b63b6d;font-weight:850;white-space:nowrap}.request-detail-head{display:flex;align-items:start;justify-content:space-between;gap:6px}.request-detail-head h2{font-size:20px;margin-top:5px}.request-customer{display:flex;gap:10px;align-items:center;padding:19px 0;border-bottom:1px solid #f6ecf0}.request-customer strong,.request-customer small{display:block}.request-customer strong{font-size:12px}.request-customer small{margin-top:4px;color:var(--muted);font-size:10px}.request-products{list-style:none;padding:0;margin:10px 0 16px;display:grid;gap:12px}.request-products li{font-size:11px;color:#77636f;border-bottom:1px solid #fbf4f6;padding-bottom:11px}.summary-pair{display:flex;justify-content:space-between;gap:10px;padding:14px 0;font-size:11px;border-bottom:1px solid #f4e8ec}.request-safe-note,.tip{background:#fff7fa;border:1px solid #f6e3eb;border-radius:11px;padding:13px;color:#9a697f;font-size:10px;line-height:1.6;margin:17px 0}.request-detail .btn{margin-top:9px}.pos-layout{display:grid;grid-template-columns:1.6fr 1fr;gap:18px}.pos-product{display:flex;align-items:center;gap:14px;padding:13px 0;border-bottom:1px solid #f5eaf0}.pos-product img{width:54px;height:56px;border-radius:10px;object-fit:cover}.pos-product>div{flex:1}.pos-product strong,.pos-product small{display:block}.pos-product strong{font-size:11px}.pos-product small{font-size:10px;color:var(--muted);margin-top:4px}.pos-product>strong{font-size:12px}.pos-layout .btn-outline{margin-top:22px}.pos-summary>label{display:grid;gap:7px;margin:17px 0;font-size:11px;color:#9e7e8d}.pos-summary>label input{padding:12px;border:1px solid #f4e4ec;border-radius:10px;background:#fff8fa;color:#6f5261}.summary-total{display:flex;justify-content:space-between;align-items:center;padding:25px 0;font-size:12px}.summary-total strong{color:#d73c7b;font-size:22px}.pos-summary .muted{display:block;line-height:1.6;margin-top:12px}.catalog-control{display:grid;grid-template-columns:1.6fr .8fr;gap:18px}.catalog-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.catalog-product{border:1px solid #f7e7ee;border-radius:13px;overflow:hidden;background:#fff}.catalog-prod-photo{height:128px;background:#fdf2f6}.catalog-prod-photo img{width:100%;height:100%;object-fit:contain}.catalog-prod-body{padding:10px;display:grid;gap:6px}.catalog-prod-body strong{font-size:10px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.catalog-prod-body small{font-size:9px;color:var(--muted)}.catalog-prod-body>b{color:#da427d;font-size:11px}.catalog-toggle-row{display:flex;justify-content:space-between;align-items:center}.toggle{position:relative;width:35px;height:20px;display:inline-block}.toggle input{opacity:0;width:0;height:0}.toggle span{position:absolute;inset:0;background:#ebdce2;border-radius:20px;transition:background .2s}.toggle span:before{content:'';position:absolute;left:3px;top:3px;width:14px;height:14px;border-radius:50%;background:white;transition:transform .2s}.toggle input:checked+span{background:#e9578c}.toggle input:checked+span:before{transform:translateX(15px)}.catalog-setup{align-self:start}.pink-card-decor{background:linear-gradient(110deg,#ffedf4,#ffe0eb);border-radius:13px;min-height:144px;position:relative;overflow:hidden;display:flex;flex-direction:column;justify-content:center;padding:20px;margin:16px 0 24px}.pink-card-decor>img{position:absolute;right:4px;bottom:-11px;width:90px;opacity:.64}.pink-card-decor strong{font-family:Georgia,serif;font-size:26px}.pink-card-decor strong span{color:#dc4082}.pink-card-decor small{font-size:10px;margin-top:10px;color:#ba7193}.catalog-setup>label,.settings-panel .form-field{display:grid;gap:9px;margin:16px 0;font-size:11px;color:#896f7e}.catalog-setup input,.settings-panel input,.settings-panel select{padding:11px;border:1px solid #f0e3e8;border-radius:10px;background:#fff;color:#68515e;min-width:0;width:100%}.swatch-bar{display:flex;align-items:center;gap:10px;color:#715461}.swatch-bar i{height:25px;width:25px;border:3px solid white;border-radius:50%;box-shadow:0 0 0 1px #f0e3e8}.roles-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:11px}.roles-grid>div{padding:15px;border:1px solid #f3e6eb;border-radius:12px}.roles-grid b{font-size:12px}.roles-grid p{font-size:10px;color:var(--muted);min-height:42px;line-height:1.55}.roles-grid+.notice-inline{margin:20px 0 0}.settings-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.settings-panel .panel-head{align-items:center}.setting-check{display:flex;gap:10px;align-items:start;font-size:11px;color:#7c6370;margin:15px 0;line-height:1.5}.setting-check input{accent-color:#e84984;width:15px;height:15px;margin:0;flex-shrink:0}.modal-cover{position:fixed;inset:0;background:#29131d91;display:grid;place-items:center;z-index:99;padding:15px}.modal-card{width:min(650px,100%);max-height:92vh;overflow:auto;border-radius:21px;background:#fff;box-shadow:0 22px 66px #210e1960}.modal-top{display:flex;justify-content:space-between;align-items:center;padding:21px 25px;border-bottom:1px solid #f5e7ed}.modal-top h2{font-family:Georgia,serif;font-size:23px;margin:5px 0 0}.modal-body{padding:20px 25px}.modal-instructions{background:#fff4f8;border-radius:11px;padding:12px;color:#916c7f;font-size:11px;line-height:1.6;margin-bottom:16px}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:11px}.form-grid label,.setup-form label{display:grid;gap:7px;color:#876a79;font-size:11px}.form-grid input,.form-grid select,.setup-form input{border:1px solid #f1dfe7;padding:11px 12px;border-radius:10px;min-width:0;background:#fff}.photo-drop{border:1px dashed #eab8cd;color:#b77d97;border-radius:13px;background:#fff8fb;display:flex;flex-direction:column;align-items:center;gap:7px;padding:18px}.photo-drop strong{font-size:12px}.photo-drop small{font-size:10px;text-align:center;line-height:1.5}.modal-bottom{display:flex;gap:10px;justify-content:flex-end;padding:17px 25px;border-top:1px solid #f6eaf0}.toast{position:fixed;z-index:200;right:22px;bottom:25px;background:#4f3040;color:#fff;border-radius:12px;max-width:370px;padding:13px 17px;font-size:12px;box-shadow:0 13px 29px #42233236;opacity:0;transform:translateY(14px);transition:.2s;pointer-events:none}.toast.visible{opacity:1;transform:translateY(0)}.mobile-menu,.mobile-close,.sidebar-overlay{display:none}.nav-open,.modal-open{overflow:hidden}
/* login and setup */
.login-body{min-height:100vh;background:radial-gradient(circle at 12% 16%,#ffdfeb,transparent 44%),radial-gradient(circle at 84% 85%,#fce3ed,transparent 50%),#fff9fb;display:grid;place-items:center;padding:25px}.login-card,.setup-card{width:min(440px,100%);padding:37px;background:#fff;border:1px solid #f8e6ed;border-radius:24px;box-shadow:0 15px 60px #b3759221}.setup-card{width:min(600px,100%)}.login-brand{display:flex;align-items:center;gap:10px}.login-brand strong{font-family:Georgia,serif;font-size:29px}.login-brand span{color:var(--rose)}.login-card h1,.setup-card h1{font:700 27px Georgia,serif;letter-spacing:-.6px;margin:22px 0 6px}.login-card p,.setup-card>p{font-size:12px;color:#9b7a8b;line-height:1.6;margin:0 0 24px}.setup-form{display:grid;gap:14px}.setup-form .btn{width:100%;margin-top:6px}.setup-form hr{border:0;border-top:1px solid #f4e8ed;width:100%;margin:5px 0}.setup-two{display:grid;grid-template-columns:2fr 1fr;gap:10px}.login-card .tiny{margin-top:25px;text-align:center}.notice{padding:13px;border-radius:10px;font-size:12px;margin-bottom:20px}.notice.error{background:#ffeff0;color:#bb525e}.notice.good{background:#e9faef;color:#36855d}
@media(max-width:1400px){.content{padding:27px 27px 20px}.topbar{padding:0 27px}.sidebar{width:238px;flex-basis:238px}.metric-main{font-size:24px}.dashboard-columns{grid-template-columns:1.35fr 1fr}.recent-item{gap:8px}.recent-item>.pill{font-size:8px;padding:5px}.account-details{max-width:125px}}
@media(max-width:1120px){.metrics{grid-template-columns:repeat(2,1fr)}.dashboard-columns,.dashboard-bottom,.pos-layout,.catalog-control{grid-template-columns:1fr}.catalog-grid{grid-template-columns:repeat(3,1fr)}.top-search{width:175px}.recent-item>.pill{display:inline-flex}}
@media(max-width:850px){.sidebar{position:fixed;left:0;top:0;transform:translateX(-105%);transition:transform .2s;width:254px;box-shadow:14px 0 35px #31212e15}.sidebar.is-open{transform:translateX(0)}.sidebar-overlay.is-open{display:block;position:fixed;inset:0;background:#1f0d1880;z-index:40}.mobile-menu,.mobile-close{display:grid;place-items:center;background:transparent;border:0;color:#806473}.mobile-menu{padding:3px;margin-right:4px}.mobile-close{margin-left:auto}.topbar{padding:0 22px}.request-layout,.settings-grid{grid-template-columns:1fr}.roles-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:600px){.content{padding:20px 14px}.topbar{height:65px;padding:0 15px}.top-crumb,.crumb-sep,.top-search,.account-details,.top-actions>.round-action{display:none}.top-left{font-size:11px}.top-actions{gap:10px}.account{padding-left:0;border-left:0}.avatar{height:32px;width:32px}.welcome-bar,.page-title{display:block}.welcome-bar h1,.page-title h1{font-size:27px;line-height:1.2}.welcome-bar p,.page-title p{font-size:11.5px}.welcome-bar>.btn,.page-title>.btn,.readonly-note{margin-top:17px}.welcome-bar>.btn,.page-title>.btn{width:100%}.metrics{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.metric{min-height:142px;padding:14px 12px;border-radius:14px}.metric-top{font-size:10px}.metric-icon{height:31px;width:31px;padding:6px}.metric-main{font-size:23px;margin-top:20px}.metric-main span{display:block;margin-top:1px;font-size:10px}.metric-foot{font-size:9px;line-height:1.4}.panel{padding:17px 14px;border-radius:15px}.panel h2{font-size:18px}.recent-item{gap:8px}.recent-item>.pill{display:none}.recent-item>strong{font-size:10px}.small-avatar{width:30px;height:30px}.inventory-tiles{grid-template-columns:1fr 1fr;gap:6px}.inventory-tile{display:block;padding:8px}.inventory-tile img{width:100%;height:78px;object-fit:contain;background:#fff4f8}.inventory-tile strong{font-size:10px;line-height:1.3}.inventory-tile small{font-size:9px}.catalog-preview{gap:8px}.preview-photo{height:72px;width:80px}.banner-demo{font-size:10px}.app-footer{font-size:9px;display:block;line-height:1.7}.app-footer>span{display:block}.mini-metrics{grid-template-columns:1fr 1fr;gap:9px}.mini-stat{padding:12px;font-size:10px}.mini-stat b{font-size:19px}.table-tools{display:block}.table-search{margin-top:14px}.section-tabs{gap:9px;justify-content:space-between}.tab{font-size:10px}.request-row{padding:10px 4px}.request-row-info small{font-size:9px}.request-row-money{font-size:10px}.catalog-grid{grid-template-columns:1fr 1fr;gap:10px}.catalog-prod-photo{height:110px}.catalog-prod-body strong{font-size:10px}.pos-summary .summary-total strong{font-size:20px}.form-grid{grid-template-columns:1fr}.modal-top,.modal-body,.modal-bottom{padding:17px}.roles-grid{grid-template-columns:1fr 1fr}.login-card,.setup-card{padding:27px 20px}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{transition:none!important}}
/* Tulipanes BB v0.3.0: producto maestro y escáner */
.tbb-grid-two{display:grid;grid-template-columns:1fr 1fr;gap:18px}.tbb-form-panel{padding:24px;margin-bottom:18px}.tbb-form-panel h2{margin:0 0 12px}.tbb-form-panel h3{margin:18px 0 10px}.tbb-form-panel form{display:grid;gap:14px}.tbb-form-panel label{display:grid;gap:7px;font-weight:650;font-size:13px;color:#553046}.tbb-form-panel input,.tbb-form-panel select,.tbb-form-panel textarea,.scanner-panel input,.scanner-panel select,.tbb-toolbar input{width:100%;min-width:0;border:1px solid #ecd3dc;background:#fffafd;padding:11px 13px;border-radius:12px;font-family:inherit;color:#402838;font-size:14px;outline-offset:3px}.tbb-form-panel input:focus,.tbb-form-panel select:focus,.tbb-toolbar input:focus,.scanner-panel input:focus{border-color:#d95d8b;box-shadow:0 0 0 3px #fbd7e7}.tbb-form-panel small{font-weight:400;color:#916d7e}.tbb-pills{display:flex;flex-wrap:wrap;gap:8px}.tbb-pill{padding:7px 12px;background:#fff0f5;border:1px solid #f6d4e0;border-radius:22px;font-size:12px}.tbb-form-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}.tbb-field-full{grid-column:1/-1}.tbb-product-form .setting-check{margin-top:14px;display:flex;align-items:center;gap:8px}.tbb-product-form .setting-check input{width:auto;accent-color:#e4528c}.tbb-form-actions,.tbb-actions{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:12px;margin:16px 0}.variant-list{display:grid;gap:16px;margin:18px 0}.variant-card{background:#fff8fa;border:1px solid #f0dbe1;border-radius:18px;padding:16px}.variant-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:14px}.tbb-variant-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}.tbb-variant-grid .tbb-toggle-label{display:flex;align-items:center;align-self:end;min-height:42px}.tbb-remove{font:inherit;border:0;background:none;color:#af345f;cursor:pointer;margin-top:10px}.tbb-remove:hover{text-decoration:underline}.scan-input{display:flex;align-items:stretch;gap:6px}.scan-mini{border:1px solid #efb8cc;background:#ffe8f0;color:#bc366b;border-radius:12px;min-width:44px;font-size:23px;cursor:pointer}.tbb-toolbar{display:flex;align-items:end;flex-wrap:wrap;gap:12px;margin-bottom:16px}.tbb-toolbar>input{max-width:280px}.tbb-search{display:grid;gap:6px;flex:1;min-width:220px;font-size:12px;font-weight:600}.tbb-empty{padding:35px;text-align:center;color:#81536b}.tbb-products-table .table-sub{display:block;font-size:12px;color:#8c7882}.tbb-products-table td{vertical-align:middle}.scanner-overlay{position:fixed;z-index:9999;inset:0;background:rgba(31,20,28,.82);display:flex;align-items:center;justify-content:center;padding:16px}.scanner-overlay[hidden]{display:none!important}.scanner-open{overflow:hidden}.scanner-panel{max-height:94vh;overflow-y:auto;background:#fff7fa;border-radius:22px;padding:20px;width:min(100%,560px);box-shadow:0 28px 70px rgba(0,0,0,.32)}.scanner-panel header{display:flex;align-items:start;justify-content:space-between;gap:12px}.scanner-panel header h2{margin:5px 0 12px;font-size:22px}.scanner-viewport{position:relative;overflow:hidden;background:#1a1018;border-radius:16px;aspect-ratio:4/3}.scanner-viewport video{width:100%;height:100%;object-fit:cover;transition:transform .1s}.scanner-frame{position:absolute;inset:24% 10%;border:3px solid #ffb2cc;border-radius:16px;box-shadow:0 0 0 100vmax rgba(0,0,0,.13);pointer-events:none}.scanner-message{background:#fce7ef;border-radius:12px;padding:10px 12px;min-height:34px;font-size:13px;color:#6b3953}.scanner-controls{display:grid;grid-template-columns:1fr 1fr;gap:12px}.scanner-controls label{display:grid;gap:5px;font-size:12px;font-weight:650}.scanner-controls input[type=range]{accent-color:#e3588a;padding:8px 0;box-shadow:none}.scanner-buttons{display:flex;gap:10px;align-self:end}.scanner-buttons button{flex:1}.scanner-manual{display:grid;gap:6px;font-weight:650;font-size:12px;margin-top:16px}.scanner-footnote{display:block;color:#906d7e;margin-top:12px}.scanner-panel .full{width:100%;margin-top:12px}.tbb-search input{font-weight:400}@media(max-width:850px){.tbb-variant-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.tbb-grid-two{grid-template-columns:1fr}}@media(max-width:570px){.tbb-form-grid,.tbb-variant-grid,.scanner-controls{grid-template-columns:1fr}.tbb-form-panel{padding:15px}.scanner-panel{padding:14px;max-height:97vh}.scanner-viewport{aspect-ratio:1/1}.scanner-controls{gap:9px}.scanner-buttons{display:flex}.tbb-actions{width:100%;justify-content:flex-start}.tbb-actions .btn{flex:1}.tbb-products-table{min-width:650px}}

/* v0.4.0 · compras e inventario */
.ops-grid{align-items:start}.ops-form{display:grid;gap:13px}.ops-form label{display:grid;gap:6px;font-size:13px;font-weight:650}.ops-form input,.ops-form select,.ops-search input{min-height:41px;width:100%;border:1px solid #efd6e0;background:#fff;border-radius:12px;padding:9px 12px;font:inherit;color:#3f2933}.ops-purchase-line{display:grid;grid-template-columns:minmax(150px,2fr) minmax(70px,.6fr) minmax(100px,1fr) 32px;gap:9px;align-items:end;border:1px solid #f1dde6;background:#fff9fc;padding:12px;border-radius:15px;margin-bottom:9px}.ops-lookup-feedback{grid-column:1/-1;color:#846b79;font-size:12px}.ops-remove-line{border:0;background:#fbe4ed;color:#ab326a;border-radius:11px;min-height:40px;font-size:23px;cursor:pointer}.ops-line-heading{margin-top:9px}.ops-line-heading h3{margin:0}.ops-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:16px}.ops-actions form{display:inline-flex}.ops-search{display:flex;align-items:end;gap:9px;margin:12px 0}.ops-search label{flex:1;display:grid;gap:6px;font-size:13px;font-weight:600}.ops-detail{margin:18px 0}.ops-metrics{margin-bottom:15px}.ops-grid .panel{min-width:0}
@media(max-width:740px){.ops-purchase-line{grid-template-columns:minmax(0,1fr) minmax(0,1fr) 34px}.ops-purchase-line>label:first-child{grid-column:1/4}.ops-purchase-line>label:nth-of-type(2){grid-column:1/2}.ops-purchase-line>label:nth-of-type(3){grid-column:2/3}.ops-purchase-line>.ops-remove-line{grid-column:3/4}.ops-grid{display:grid;grid-template-columns:1fr}.ops-search{flex-wrap:wrap}.ops-search label{min-width:100%}}
.ops-detail,.ops-grid>.panel,.content>.panel {min-width:0;max-width:100%}
.table-wrap {display:block;max-width:100%;width:100%;overflow-x:auto;overscroll-behavior-inline:contain;-webkit-overflow-scrolling:touch}
.table-wrap .admin-table {min-width:680px}
/* Tulipanes BB v0.5.0 — módulo de publicación */
.tbb-catalog-layout{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(0,1fr);gap:18px;margin:20px 0}
.tbb-catalog-products{max-height:590px;overflow:auto;display:grid;gap:9px;margin-top:15px}
.tbb-catalog-row{display:flex;align-items:center;gap:12px;text-decoration:none;color:inherit;border:1px solid #f0d9e3;padding:12px;border-radius:17px;background:#fff}
.tbb-catalog-row:hover,.tbb-catalog-row.tbb-selected{border-color:#ec75a8;background:#fff3f8}
.tbb-catalog-avatar{width:64px;height:64px;border-radius:14px;background:#fce5ee;display:grid;place-items:center;flex-shrink:0;color:#d45687;font-size:27px;overflow:hidden}
.tbb-catalog-avatar img{width:100%;height:100%;object-fit:cover}
.tbb-catalog-row-detail{flex:1;min-width:0;display:grid;gap:3px}.tbb-catalog-row-detail strong{font-size:14px}.tbb-catalog-row-detail small{color:#83737b;font-size:11px}
.tbb-catalog-row .pill{font-size:10px;text-align:center}
.tbb-publish-form,.tbb-upload-form{display:grid;gap:13px;margin:16px 0}.tbb-publish-form label:not(.tbb-toggle-label),.tbb-upload-form label{display:grid;gap:5px;font-weight:650;font-size:12px;color:#553749}
.tbb-publish-form input:not([type=checkbox]),.tbb-upload-form input,.tbb-publish-form textarea,.tbb-upload-form textarea,.tbb-upload-form select{width:100%;border:1px solid #edcedd;padding:11px;border-radius:13px;background:#fff;font:inherit;color:#382733}
.tbb-toggle-label{display:flex;align-items:center;gap:8px;flex-wrap:wrap;font-size:13px}.tbb-toggle-label small{color:#997b8c}
.tbb-separator{border:0;border-top:1px solid #f1e1e8;margin:20px 0}.tbb-photo-gallery{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin:13px 0}
.tbb-photo-tile{display:flex;flex-direction:column;gap:5px;background:#fff6f9;padding:8px;border-radius:16px;border:1px solid #f5e0e9}.tbb-photo-tile img{width:100%;aspect-ratio:1;object-fit:cover;border-radius:11px}
.tbb-photo-tile small{font-size:10px;color:#76566b;min-height:23px}.tbb-photo-tile button{font-size:11px;padding:7px}.tbb-photo-orders{display:grid;grid-template-columns:repeat(2,1fr);gap:8px;margin:12px 0}
.tbb-order{margin:12px 0}.tbb-order summary{cursor:pointer;font-weight:650;color:#ad3a72}.tbb-photo-orders select{padding:8px;border-radius:10px}
.tbb-banner-list{display:grid;gap:10px;margin-top:16px}.tbb-banner-entry{display:flex;gap:10px;align-items:center;justify-content:space-between;border:1px solid #efd7e1;border-radius:13px;padding:10px}.tbb-banner-entry>div{min-width:0;display:grid;gap:4px}.tbb-banner-entry img{width:100px;max-height:60px;object-fit:cover;border-radius:8px}.tbb-banner-entry small{font-size:11px;color:#867082}
@media(max-width:1000px){.tbb-catalog-layout{grid-template-columns:1fr}}
@media(max-width:540px){.tbb-catalog-row{flex-wrap:wrap}.tbb-catalog-row .pill{margin-left:auto}.tbb-photo-gallery{grid-template-columns:repeat(2,minmax(0,1fr))}.tbb-photo-orders{grid-template-columns:1fr}}
/* Tulipanes BB v0.9.0 — bandeja de solicitudes */
.request-list-panel .request-row{text-decoration:none;color:inherit}.request-list-panel .request-row:hover{background:#fff0f5}.request-detail .order-admin-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin:18px 0}.request-detail .order-admin-actions form{margin:0}.request-detail .request-products{padding:0 0 0 20px;line-height:1.7}.request-detail .request-products li{margin:8px 0}.settings-panel input[type=number]{min-height:42px}
@media(max-width:660px){.request-detail .order-admin-actions{grid-template-columns:1fr}}

/* v0.9.0 - POS */
.tbb-pos-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));align-items:end;gap:12px}.tbb-pos-grid label{display:grid;gap:6px;color:#593044;font-size:13px;font-weight:600}.tbb-pos-grid input,.tbb-pos-grid select{height:43px;width:100%;border:1px solid #efcbd7;background:#fff;border-radius:12px;padding:0 12px;min-width:0;color:#43263a}.tbb-pos-grid .btn{min-height:42px}.tbb-pos-columns{display:grid;grid-template-columns:minmax(250px,.85fr) minmax(0,1.55fr);gap:16px}.tbb-sale-list{display:grid;gap:8px;max-height:600px;overflow:auto}.tbb-sale-row{display:flex;justify-content:space-between;gap:10px;text-decoration:none;border:1px solid #f0d9e1;border-radius:15px;background:#fffafc;padding:12px;color:#55263c}.tbb-sale-row:hover,.tbb-sale-row.is-selected{border-color:#e65186;background:#fff1f7}.tbb-sale-row div{display:grid;gap:4px}.tbb-sale-row small{color:#8c6b7d}.tbb-sale-row b{font-size:13px}.tbb-qty{display:flex;gap:5px;align-items:center;flex-wrap:wrap}.tbb-qty input{width:55px;height:34px;border:1px solid #edcad6;border-radius:9px;padding:0 7px}.tbb-qty .btn{font-size:12px;padding:7px}.tbb-totals{display:grid;gap:7px;margin:18px 0;background:#fff2f7;padding:15px;border-radius:14px}.tbb-totals>div{display:flex;justify-content:space-between;gap:12px}.tbb-totals>div:first-child strong{font-size:19px;color:#d12c72}.tbb-pos-actions{display:grid;gap:9px;margin-top:16px}.tbb-pos-actions .btn{width:100%}.tbb-discount{padding:10px 0}.tbb-discount summary{cursor:pointer;color:#b93472}.tbb-discount form{margin-top:12px}@media(max-width:850px){.tbb-pos-columns{grid-template-columns:1fr}.tbb-pos-grid{grid-template-columns:1fr 1fr}}@media(max-width:520px){.tbb-pos-grid{grid-template-columns:1fr}.tbb-pos-columns .admin-table{font-size:12px}.tbb-qty .btn{padding:6px}}
