:root{--green:#123b31;--green2:#1c5a48;--mint:#e8f4ee;--lime:#d8f36a;--ink:#17231f;--muted:#66746d;--line:#e2e9e4;--paper:#f5f7f5;--white:#fff;--red:#a73d32;--amber:#91611b;--shadow:0 8px 26px rgba(18,59,49,.07)}*{box-sizing:border-box}body{margin:0;background:var(--paper);color:var(--ink);font-family:Inter,ui-sans-serif,system-ui,-apple-system,"Segoe UI",sans-serif;font-size:14px}.app-shell{max-width:1220px;margin:auto;padding:0 20px 24px}.topbar{display:flex;align-items:center;justify-content:space-between;padding:20px 0 16px}.brand{display:flex;align-items:center;gap:12px}.logo{width:46px;height:46px;border-radius:15px;background:var(--green);color:var(--lime);display:grid;place-items:center;font-weight:900;letter-spacing:-1px;font-size:18px}.brand-title{font-size:20px;font-weight:850;letter-spacing:-.5px}.brand-sub{font-size:12px;color:var(--muted);margin-top:3px}.install-btn,.primary,.secondary,.danger{border:0;border-radius:11px;padding:11px 15px;font-weight:750;cursor:pointer}.install-btn,.primary{background:var(--green);color:#fff}.secondary{background:var(--mint);color:var(--green)}.danger{background:#fff0ee;color:var(--red)}.hidden{display:none!important}.notice{display:flex;align-items:center;gap:9px;padding:11px 13px;background:#fff9e9;border:1px solid #f0e4c6;border-radius:12px;color:#6d5422;font-size:12px}.dot{height:8px;width:8px;border-radius:50%;background:#d29a2e;flex:none}.outlet-row{display:flex;gap:12px;align-items:center;margin:18px 0 14px;flex-wrap:wrap}.outlet-row label{font-weight:750}.outlet-row select{background:#fff;border:1px solid var(--line);border-radius:10px;padding:10px 35px 10px 12px;font-weight:700;color:var(--green)}.master-date{margin-left:auto;color:var(--muted);font-size:12px}.nav{display:flex;gap:6px;overflow:auto;padding:6px;background:#e9efeb;border-radius:14px;margin-bottom:20px;scrollbar-width:thin}.nav-item{border:0;background:transparent;color:#53645b;padding:10px 13px;border-radius:10px;font-weight:750;white-space:nowrap;cursor:pointer;display:flex;gap:7px;align-items:center}.nav-item.active{background:var(--green);color:white}.nav-item span{font-size:12px}main{min-height:400px}.page-head{display:flex;align-items:flex-start;justify-content:space-between;gap:14px;margin:8px 0 18px;flex-wrap:wrap}.eyebrow{text-transform:uppercase;letter-spacing:1.5px;color:var(--green2);font-size:10px;font-weight:900}.page-title{font-size:26px;line-height:1.2;letter-spacing:-.7px;margin:5px 0 7px}.subtext{color:var(--muted);max-width:720px;line-height:1.5}.grid{display:grid;gap:14px}.stats{grid-template-columns:repeat(4,minmax(0,1fr));margin-bottom:16px}.card{background:var(--white);border:1px solid var(--line);border-radius:16px;padding:17px;box-shadow:var(--shadow);min-width:0}.stat-label{font-size:12px;color:var(--muted);font-weight:650}.stat-value{font-size:26px;font-weight:850;letter-spacing:-.8px;margin:10px 0 4px}.stat-foot{font-size:11px;color:var(--muted)}.section-title{font-size:15px;font-weight:850;margin:0 0 12px}.two-col{grid-template-columns:1.1fr .9fr}.module-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.module{display:flex;flex-direction:column;gap:8px;min-height:126px;text-align:left;cursor:pointer;color:inherit}.module .module-icon{width:37px;height:37px;border-radius:12px;background:var(--mint);color:var(--green);display:grid;place-items:center;font-size:18px}.module strong{font-size:14px}.module small{color:var(--muted);line-height:1.4}.field-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.field{display:flex;flex-direction:column;gap:6px}.field label{font-size:12px;font-weight:750;color:#4d5c54}.field input,.field select,.field textarea,.toolbar input,.toolbar select{width:100%;padding:11px 12px;border:1px solid #dbe4dd;border-radius:10px;background:#fff;color:var(--ink);font:inherit;outline-color:var(--green2)}.field textarea{min-height:76px;resize:vertical}.form-actions{display:flex;gap:8px;align-items:center;flex-wrap:wrap;margin-top:14px}.toolbar{display:flex;gap:9px;align-items:center;flex-wrap:wrap;margin-bottom:12px}.toolbar input{max-width:330px}.toolbar select{width:auto;min-width:140px}.table-wrap{overflow:auto;border:1px solid var(--line);border-radius:12px;background:#fff}table{width:100%;border-collapse:collapse;min-width:580px}th,td{text-align:left;padding:11px 12px;border-bottom:1px solid #edf1ed;font-size:12px;vertical-align:top}th{background:#f7faf7;color:#647269;font-size:10px;text-transform:uppercase;letter-spacing:.7px;position:sticky;top:0}tr:last-child td{border-bottom:0}.pill{display:inline-flex;align-items:center;border-radius:999px;padding:4px 8px;font-size:10px;font-weight:800;background:var(--mint);color:var(--green)}.pill.amber{background:#fff2d9;color:#865815}.pill.red{background:#ffedeb;color:#9b3028}.empty{padding:24px;text-align:center;color:var(--muted);border:1px dashed #cbd8cf;border-radius:13px;background:#fbfdfb}.empty b{display:block;color:var(--ink);margin-bottom:5px}.order-list{display:grid;gap:10px}.order-card{border:1px solid var(--line);border-radius:13px;padding:14px;background:white;display:flex;justify-content:space-between;gap:12px;align-items:flex-start}.order-card h3{margin:0 0 5px;font-size:14px}.order-card p{margin:0;color:var(--muted);font-size:12px;line-height:1.5}.order-actions{display:flex;gap:6px;flex-wrap:wrap;justify-content:flex-end}.order-actions button{font-size:11px;padding:8px 10px}.kitchen-columns{grid-template-columns:repeat(3,minmax(0,1fr))}.kitchen-col{background:#eaf0eb;border-radius:15px;padding:12px;min-height:160px}.kitchen-col h3{font-size:12px;text-transform:uppercase;letter-spacing:1px;margin:3px 4px 12px}.kitchen-col .order-card{display:block;margin-bottom:9px}.kitchen-col .order-actions{justify-content:flex-start;margin-top:10px}.note{border-left:3px solid #d5e2d8;background:#f7faf7;padding:12px 14px;color:#526259;border-radius:0 10px 10px 0;line-height:1.5;font-size:12px}.source-summary{display:flex;gap:10px;flex-wrap:wrap;margin-bottom:12px}.source-chip{border:1px solid var(--line);border-radius:10px;padding:9px 11px;background:white;font-size:11px;color:var(--muted)}.source-chip strong{color:var(--ink);display:block;font-size:14px;margin-bottom:3px}.danger-zone{border:1px solid #f0d3cf;background:#fff9f8;border-radius:14px;padding:15px}.toast{position:fixed;bottom:20px;left:50%;transform:translateX(-50%) translateY(20px);background:#182d25;color:white;padding:12px 17px;border-radius:12px;box-shadow:var(--shadow);opacity:0;pointer-events:none;transition:.2s;z-index:10;max-width:calc(100vw - 30px)}.toast.show{opacity:1;transform:translateX(-50%) translateY(0)}footer{padding:22px 0 6px;text-align:center;color:#859188;font-size:11px}.muted{color:var(--muted)}.right{text-align:right}.amount{font-variant-numeric:tabular-nums}.button-row{display:flex;gap:8px;flex-wrap:wrap}.rule-list{margin:10px 0 0;padding-left:18px;color:var(--muted);line-height:1.7;font-size:12px}.subnav{display:flex;gap:7px;flex-wrap:wrap;margin-bottom:13px}.subnav button{border:1px solid var(--line);background:#fff;border-radius:9px;padding:8px 11px;font-size:11px;font-weight:750;color:var(--muted)}.subnav button.active{background:var(--green);color:#fff;border-color:var(--green)}
@media(max-width:800px){.app-shell{padding:0 13px 20px}.topbar{padding-top:15px}.brand-title{font-size:18px}.stats{grid-template-columns:repeat(2,minmax(0,1fr))}.module-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.two-col{grid-template-columns:1fr}.kitchen-columns{grid-template-columns:1fr}.master-date{width:100%;margin-left:0}.page-title{font-size:23px}.nav{margin-left:-2px;margin-right:-2px}.field-grid{grid-template-columns:1fr}.stat-value{font-size:23px}}@media(min-width:801px) and (max-width:1050px){.module-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.stats{grid-template-columns:repeat(2,minmax(0,1fr))}}

/* v0.2 operations modules */
.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.field{min-width:0}.field label{display:block;font-size:12px;font-weight:700;margin-bottom:6px}.field input,.field select,.field textarea, input,select,textarea{max-width:100%}.field input,.field select,.field textarea{width:100%;box-sizing:border-box}.span-2{grid-column:1/-1}.pill{display:inline-block;border-radius:99px;padding:4px 9px;background:#e9efe8;color:#174b3d;font-size:11px;font-weight:700}.toolbar{display:flex;flex-wrap:wrap;gap:8px;align-items:center;margin:10px 0}.small{font-size:12px;color:#66736b}.record-list{display:grid;gap:9px}.record{border:1px solid #e1e7df;border-radius:12px;padding:12px;display:flex;gap:10px;justify-content:space-between;align-items:flex-start;background:#fff}.record strong{display:block}.record .meta{font-size:12px;color:#69766e;margin-top:4px}.record .amount{font-weight:800;white-space:nowrap}.danger-text{color:#a33}.split-line{display:flex;justify-content:space-between;gap:12px;padding:8px 0;border-bottom:1px solid #edf0eb}.split-line:last-child{border-bottom:0}.file-field{padding:12px;border:1px dashed #b5c4b8;border-radius:10px;background:#f8faf7;width:100%;box-sizing:border-box}.muted-box{padding:12px;background:#f3f6f1;border-radius:10px;color:#526158;font-size:13px}.table-wrap{overflow:auto}.table-wrap table{min-width:620px;width:100%;border-collapse:collapse}.table-wrap th,.table-wrap td{padding:9px;border-bottom:1px solid #e6ebe5;text-align:left;font-size:12px}.table-wrap th{background:#f3f6f1;position:sticky;top:0}.primary{background:#174b3d;color:#fff;border:0;border-radius:10px;padding:11px 14px;font-weight:700}.secondary{background:#edf2ed;color:#174b3d;border:1px solid #d8e2d8;border-radius:10px;padding:10px 13px;font-weight:700}.danger{background:#fff0ed;color:#8c2e22;border:1px solid #f0c7bf;border-radius:10px;padding:9px 12px}.form-actions{display:flex;flex-wrap:wrap;gap:8px;margin-top:12px}.hint{font-size:12px;color:#68766e;margin-top:5px}@media(max-width:560px){.form-grid{grid-template-columns:1fr}.span-2{grid-column:auto}.record{gap:6px}.nav{overflow-x:auto}.nav-item{flex:0 0 auto}}


/* BlendTea mobile-first brand refresh */
:root{--green:#35105f;--green2:#571b8b;--mint:#f8e8f4;--lime:#ff5eae;--ink:#251431;--muted:#786b80;--line:#eadfec;--paper:#fff8fd;--white:#fff;--red:#b52864;--amber:#966015;--shadow:0 8px 24px rgba(66,18,92,.08)}
body{background:linear-gradient(180deg,#f7e9ff 0,#fff8fd 250px);padding-bottom:0}
.app-shell{max-width:1220px}.topbar{padding:15px 0 14px}.brand-logo{width:54px;height:54px;object-fit:contain;border-radius:16px;background:#fff;box-shadow:0 4px 14px rgba(53,16,95,.13)}.brand-title{color:#35105f}.brand-sub{color:#8b6b91}.notice{background:#fff0f7;border-color:#f4cde2;color:#71355c}.dot{background:#f04f9d}.outlet-row select{color:#35105f;border-color:#e8d7ed}.nav-item.active,.subnav button.active{background:linear-gradient(135deg,#35105f,#8a1c9b);border-color:#571b8b}.primary,.install-btn{background:linear-gradient(135deg,#35105f,#7b1b93);color:#fff}.secondary{background:#f8e8f4;color:#571b8b;border-color:#ead1e7}.module .module-icon{background:#fae3f4;color:#7b1b93}.card{border-color:#f0e2f0}.stat-value{color:#35105f}.eyebrow{color:#8b248f}.pill{background:#f8e3f2;color:#6e197f}.empty{background:#fffaff;border-color:#e9d6eb}.muted-box{background:#fff0f8;color:#684d6d}.field input:focus,.field select:focus,.field textarea:focus{outline-color:#a72a9c}
.mobile-dock{display:none}
@media(max-width:700px){
 body{padding-bottom:84px}.app-shell{padding:0 12px 18px}.topbar{padding:12px 0}.brand-logo{width:48px;height:48px;border-radius:14px}.brand-title{font-size:17px}.brand-sub{font-size:11px}.notice{font-size:11px;padding:10px;border-radius:13px}.outlet-row{display:grid;grid-template-columns:auto 1fr;gap:7px 10px;margin:12px 0}.outlet-row select{width:100%;min-width:0}.master-date{grid-column:1/-1;font-size:11px}.app-shell>.nav{display:none}.app-shell>.nav.nav-expanded{display:grid;position:fixed;z-index:30;left:10px;right:10px;bottom:78px;margin:0;padding:10px;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px;box-shadow:0 12px 38px rgba(36,8,48,.24);background:#fff;border:1px solid #ead6ef;border-radius:18px;max-height:65vh;overflow:auto}.app-shell>.nav.nav-expanded .nav-item{justify-content:center;white-space:normal;padding:11px 5px;font-size:11px}.app-shell>.nav.nav-expanded .nav-item span{font-size:11px}.mobile-dock{display:flex;position:fixed;z-index:25;left:0;right:0;bottom:0;padding:8px 5px calc(8px + env(safe-area-inset-bottom));justify-content:space-around;gap:2px;background:rgba(255,255,255,.97);border-top:1px solid #ead8ed;box-shadow:0 -5px 22px rgba(56,17,72,.09);backdrop-filter:blur(14px)}.mobile-dock .nav-item,.mobile-dock>button{display:flex;flex:1;min-width:0;flex-direction:column;align-items:center;justify-content:center;gap:3px;padding:5px 2px;border:0;border-radius:12px;background:transparent;color:#88758e;font-size:10px;font-weight:750;white-space:nowrap}.mobile-dock .nav-item.active{background:#f8e7f5;color:#64167f}.mobile-dock .nav-item.active .dock-icon{color:#d92e9a}.mobile-dock .nav-item span:last-child,.mobile-dock>button span:last-child{font-size:10px}.dock-icon{font-size:21px;line-height:1.1;color:#6b2384}.page-head{margin:8px 0 14px}.page-title{font-size:24px}.subtext{font-size:12px}.stats{gap:9px}.stats .card{padding:13px;border-radius:15px}.stat-label{font-size:11px}.stat-value{font-size:21px;margin:8px 0 4px}.stat-foot{font-size:10px}.card{padding:14px;border-radius:15px}.module-grid{gap:9px}.module{min-height:110px;padding:13px}.module strong{font-size:13px}.module small{font-size:11px}.field-grid,.form-grid{grid-template-columns:1fr}.field input,.field select,.field textarea,.toolbar input,.toolbar select{font-size:16px;min-height:44px}.primary,.secondary,.danger,.install-btn{min-height:42px}.form-actions button,.button-row button{flex:1 1 auto}.record{padding:11px;border-radius:13px;flex-wrap:wrap}.record .button-row{width:100%}.record .button-row button{min-height:40px}table{min-width:600px}footer{font-size:10px;padding:18px 0}.toast{bottom:92px}
}
@media(min-width:701px){.mobile-dock{display:none}}

/* BlendTea dashboard: app-home inspired by modern fuel/rewards apps, using original BlendTea branding */
.bt-home{margin:0 -2px 12px}.bt-summary-strip{display:flex;gap:0;overflow-x:auto;margin:0 -12px 16px;padding:10px 12px 13px;background:linear-gradient(120deg,#270344,#4b0d70 60%,#771c83);color:#fff;scroll-snap-type:x mandatory;scrollbar-width:none}.bt-summary-strip::-webkit-scrollbar{display:none}.bt-summary-tile{position:relative;flex:0 0 148px;min-height:106px;border:0;border-right:1px solid rgba(255,255,255,.16);padding:10px 13px;background:transparent;color:#fff;text-align:left;display:flex;flex-direction:column;gap:4px;scroll-snap-align:start}.bt-summary-icon{display:grid;place-items:center;width:25px;height:25px;border-radius:9px;background:rgba(255,255,255,.15);color:#ff83c5;font-size:17px;font-weight:900}.bt-summary-value{font-size:17px;font-weight:850;white-space:nowrap;letter-spacing:-.4px}.bt-summary-label{font-size:9px;font-weight:800;letter-spacing:.6px;color:#f2d8ff;line-height:1.25}.bt-alert{display:flex;gap:11px;align-items:center;padding:13px 14px;background:#fff0f7;border:1px solid #f4cfe4;border-radius:14px;color:#704263;font-size:12px;line-height:1.45;margin-bottom:16px}.bt-alert-mark{width:27px;height:27px;display:grid;place-items:center;flex:none;border-radius:50%;background:#f7d4e8;color:#8a226d;font-size:16px;font-weight:900}.bt-feature-card{position:relative;overflow:hidden;display:grid;grid-template-columns:minmax(0,1fr) 112px;gap:4px 8px;align-items:center;padding:20px 17px 15px;border-radius:23px;background:linear-gradient(125deg,#321052 0%,#60147d 56%,#d72f99 150%);color:white;box-shadow:0 12px 28px rgba(65,12,90,.2);margin-bottom:24px;min-height:190px}.bt-feature-card:after{content:"";position:absolute;width:210px;height:210px;right:-80px;top:-92px;border:1px solid rgba(255,255,255,.15);border-radius:50%;box-shadow:0 0 0 20px rgba(255,255,255,.035),0 0 0 42px rgba(255,255,255,.025);pointer-events:none}.bt-feature-copy{position:relative;z-index:1}.bt-kicker,.bt-promo-label{font-size:9px;font-weight:900;letter-spacing:1.5px;color:#ffb8e0}.bt-feature-card h1{font-size:26px;line-height:1.05;letter-spacing:-.9px;margin:9px 0}.bt-feature-card h1 span{color:#ff75bd}.bt-feature-card p{font-size:12px;color:#f5dff8;line-height:1.45;margin:0;max-width:230px}.bt-feature-meta{display:flex;gap:9px;flex-wrap:wrap;margin-top:12px;font-size:10px;color:#f7dff8}.bt-feature-art{position:relative;z-index:1;display:grid;place-items:center}.bt-feature-art img{width:112px;height:112px;object-fit:contain;border-radius:50%;filter:drop-shadow(0 5px 10px rgba(0,0,0,.2))}.bt-feature-button{position:relative;z-index:1;grid-column:1/-1;display:flex;align-items:center;justify-content:space-between;border:0;border-radius:12px;background:#fff;color:#5a146f;padding:13px 15px;font-weight:900;font-size:11px;letter-spacing:.5px;margin-top:8px;min-height:44px}.bt-section-heading{display:flex;align-items:center;justify-content:space-between;gap:10px;margin:0 2px 13px}.bt-section-heading h2{font-size:17px;letter-spacing:-.35px;margin:0;color:#321047}.bt-section-heading p{font-size:11px;color:#88748e;margin:4px 0 0}.bt-heading-spark{color:#db329d;font-size:23px}.bt-quick-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px 8px;margin:0 0 25px}.bt-quick-item{display:flex;flex-direction:column;align-items:center;gap:8px;min-width:0;border:0;background:transparent;color:#57425f;font:inherit;font-size:10px;font-weight:750;padding:0 2px;cursor:pointer}.bt-quick-icon{width:55px;height:55px;border-radius:50%;display:grid;place-items:center;font-size:24px;box-shadow:inset 0 0 0 5px rgba(255,255,255,.48),0 2px 7px rgba(53,16,95,.06)}.bt-pink{background:#fbd6ef;color:#a41c80}.bt-purple{background:#e6d5fa;color:#54167e}.bt-promo-card{display:flex;align-items:center;gap:13px;padding:16px;border-radius:18px;background:linear-gradient(100deg,#fff0f8,#f3e8ff);border:1px solid #f0d7ec;margin-bottom:19px}.bt-promo-orb{display:grid;place-items:center;flex:none;width:49px;height:49px;border-radius:16px;background:linear-gradient(145deg,#501275,#e13a9e);color:white;font-size:22px}.bt-promo-card>div:nth-child(2){flex:1;min-width:0}.bt-promo-label{font-size:8px;color:#9d4388}.bt-promo-card h2{font-size:15px;margin:4px 0;color:#401153}.bt-promo-card p{font-size:11px;line-height:1.4;color:#7a6382;margin:0}.bt-promo-card>button{border:0;border-radius:50%;width:34px;height:34px;background:white;color:#6d1d86;font-size:20px;flex:none}.bt-today-card{padding:17px;border-radius:18px;background:white;border:1px solid #f0e0f1;box-shadow:0 7px 22px rgba(64,15,85,.055);margin-bottom:13px}.bt-live-dot{width:8px;height:8px;border-radius:50%;background:#e83c9b;box-shadow:0 0 0 4px #fce4f3}.bt-today-row{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 0;border-bottom:1px solid #f2eaf3;font-size:12px}.bt-today-row:last-child{border-bottom:0;padding-bottom:0}.bt-today-row>span{display:flex;align-items:center;gap:9px;color:#6c5b72}.bt-today-row b{font-size:12px;color:#37104c}.bt-mini-icon{font-style:normal;width:28px;height:28px;display:grid;place-items:center;border-radius:9px;background:#f8e7f5;color:#8b258c}.bt-green-text{color:#19805c!important}.bt-red-text{color:#b82c67!important}.bt-workbook-card{display:flex;align-items:center;gap:11px;padding:14px;border:1px solid #f0e0f1;background:#fff;border-radius:16px;margin-bottom:13px}.bt-workbook-icon{width:39px;height:39px;border-radius:12px;display:grid;place-items:center;background:#f4e5fb;color:#651c86;font-size:20px;flex:none}.bt-workbook-copy{flex:1;min-width:0;display:flex;flex-direction:column;gap:4px}.bt-workbook-copy b{font-size:12px;color:#39114f}.bt-workbook-copy span{font-size:10px;color:#87758d;line-height:1.4;overflow-wrap:anywhere}.bt-workbook-card .secondary{min-height:36px;padding:8px 11px;font-size:10px;flex:none}.bt-privacy-note{padding:12px 13px;border-radius:13px;background:#fff5fa;color:#856b83;font-size:10px;line-height:1.55;border:1px solid #f2e0ec}.bt-privacy-note b{color:#6d3272}
@media(max-width:700px){.bt-home{margin:0 -12px 10px}.bt-summary-strip{margin:0 0 14px;padding:10px 8px 12px}.bt-summary-tile{flex-basis:143px;min-height:101px;padding:8px 11px}.bt-summary-value{font-size:16px}.bt-alert,.bt-feature-card,.bt-section-heading,.bt-quick-grid,.bt-promo-card,.bt-today-card,.bt-workbook-card,.bt-privacy-note{margin-left:12px;margin-right:12px}.bt-feature-card{grid-template-columns:minmax(0,1fr) 90px;padding:18px 14px 14px;min-height:180px}.bt-feature-card h1{font-size:24px}.bt-feature-art img{width:90px;height:90px}.bt-quick-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:17px 4px}.bt-quick-icon{width:49px;height:49px;font-size:21px}.bt-quick-item{font-size:9px}.bt-section-heading{margin-bottom:12px}.bt-promo-card{padding:13px;gap:10px}.bt-promo-orb{width:43px;height:43px}.bt-promo-card h2{font-size:14px}.bt-today-card{padding:15px}.bt-workbook-card{padding:12px}.bt-feature-button{margin-top:7px}.bt-summary-strip+.bt-alert{margin-top:0}}
@media(min-width:701px){.bt-summary-strip{border-radius:0 0 18px 18px;margin-left:0;margin-right:0}.bt-home{margin-top:-4px}.bt-feature-card{grid-template-columns:minmax(0,1fr) 170px;padding:28px}.bt-feature-art img{width:155px;height:155px}.bt-quick-grid{grid-template-columns:repeat(8,minmax(0,1fr))}}

/* v0.8 visual polish: BlendTea brand, mobile-first hierarchy and touch comfort */
:root{--green:#42105f;--green2:#85228e;--mint:#f8e7f5;--lime:#ff75bd;--ink:#2d1636;--muted:#806d87;--line:#efdfef;--paper:#fff8fd;--white:#fff;--red:#b82c67;--amber:#94651a;--shadow:0 8px 24px rgba(67,16,95,.075)}
body{background:linear-gradient(180deg,#f4e6fb 0,#fff9fd 280px);color:var(--ink)}
.app-shell{max-width:1280px}
.topbar{position:relative;gap:12px}
.brand-logo{border-radius:17px;box-shadow:0 5px 16px rgba(53,16,95,.16);outline:1px solid rgba(255,255,255,.85)}
.brand-title{letter-spacing:-.65px}
.notice{box-shadow:0 3px 12px rgba(112,35,109,.035)}
.outlet-row{padding:12px 14px;border:1px solid #f0dff0;border-radius:15px;background:rgba(255,255,255,.78);box-shadow:0 4px 16px rgba(66,16,95,.035)}
.outlet-row select{min-height:42px;background-color:#fff}
.nav{background:rgba(255,255,255,.78);border:1px solid #f0dff0;box-shadow:0 4px 15px rgba(66,16,95,.035)}
.nav-item{transition:background .16s ease,color .16s ease,transform .16s ease}
.nav-item.active{box-shadow:0 5px 12px rgba(85,20,119,.18)}
.card,.bt-today-card,.bt-workbook-card{box-shadow:0 7px 24px rgba(66,16,95,.055);transition:transform .16s ease,box-shadow .16s ease}
.card{border-radius:19px}
.stat-value{font-variant-numeric:tabular-nums}
.module{border:1px solid #f0dff0!important;background:rgba(255,255,255,.96)!important;border-radius:17px!important;box-shadow:0 5px 18px rgba(66,16,95,.045);transition:transform .16s ease,box-shadow .16s ease}
.module .module-icon{width:43px;height:43px;border-radius:15px;background:linear-gradient(145deg,#fae5f5,#ead9fb);color:#76218d}
.primary,.install-btn,.secondary,.danger{transition:filter .15s ease,transform .15s ease;letter-spacing:.1px}
.primary,.install-btn{box-shadow:0 5px 12px rgba(74,16,100,.15)}
.secondary{border:1px solid #efd9ed}
.field input,.field select,.field textarea,.toolbar input,.toolbar select{border-color:#ead9ed;border-radius:12px}
.table-wrap{border-color:#eddced;box-shadow:0 4px 15px rgba(66,16,95,.035)}
th{background:#fbf1fb;color:#795e83}
.pill{letter-spacing:.1px}
.bt-summary-strip{box-shadow:0 9px 24px rgba(53,8,78,.16)}
.bt-summary-tile{min-height:112px}
.bt-feature-card{box-shadow:0 14px 30px rgba(65,12,90,.23)}
.bt-feature-button{box-shadow:0 4px 12px rgba(20,0,32,.08)}
.bt-quick-icon{transition:transform .16s ease,box-shadow .16s ease}
.bt-quick-item{min-height:78px;line-height:1.25}
.bt-today-card{border-color:#f0def0}
:where(button,select,input,textarea,a,[role=button]):focus-visible{outline:3px solid #f06bb8;outline-offset:3px}
@media(hover:hover){.module:hover,.card:hover{transform:translateY(-2px);box-shadow:0 11px 27px rgba(66,16,95,.09)}.bt-quick-item:hover .bt-quick-icon{transform:translateY(-3px);box-shadow:0 7px 17px rgba(66,16,95,.12)}.primary:hover,.secondary:hover,.danger:hover{filter:brightness(1.03);transform:translateY(-1px)}}
@media(max-width:700px){
  .app-shell{padding-left:12px;padding-right:12px}
  .topbar{padding-top:13px;padding-bottom:12px}
  .brand-logo{width:50px;height:50px}
  .brand-title{font-size:16px}
  .outlet-row{padding:11px 12px;border-radius:14px}
  .bt-summary-strip{border-radius:0 0 18px 18px}
  .bt-summary-tile{flex-basis:146px}
  .bt-feature-card{border-radius:21px}
  .bt-quick-grid{gap:18px 4px}
  .bt-quick-icon{width:51px;height:51px}
  .mobile-dock{padding-top:9px;background:rgba(255,255,255,.96);border-top:1px solid #ead5ec;box-shadow:0 -7px 25px rgba(56,17,72,.10)}
  .mobile-dock .nav-item.active{box-shadow:inset 0 0 0 1px #f1d5ed}
  .mobile-dock .nav-item,.mobile-dock>button{min-height:49px}
  .app-shell>.nav.nav-expanded{background:#fffaff;box-shadow:0 15px 40px rgba(36,8,48,.24)}
  .stats{grid-template-columns:repeat(2,minmax(0,1fr))}
  .stats .card{min-height:106px}
  .stat-value{overflow-wrap:anywhere}
  .form-actions{gap:9px}
  .form-actions button,.button-row button{min-height:44px}
  footer{padding-bottom:12px}
}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{scroll-behavior:auto!important;transition:none!important;animation:none!important}}

/* Employee detail attendance calendar */
.calendar-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:12px}
.employee-calendar{width:100%}.calendar-week,.calendar-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:5px}.calendar-week span{text-align:center;font-size:11px;color:var(--muted,#718078);padding:6px 0}.calendar-day{min-height:48px;border:1px solid var(--line,#dfe7e1);border-radius:10px;background:var(--surface,#fff);color:var(--text,#17231f);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;font:inherit;cursor:pointer;padding:4px}.calendar-day small{font-size:9px;color:var(--muted,#718078);min-height:10px}.calendar-day.empty{border-color:transparent;background:transparent;pointer-events:none}.calendar-day.selected{outline:2px solid var(--brand,#247b55);outline-offset:1px;font-weight:700}.calendar-day.present{background:#e5f4e9;border-color:#a8d5b4}.calendar-day.leave{background:#fff1d8;border-color:#efd09a}.calendar-day.emergency{background:#fce5e5;border-color:#edb5b5}.calendar-day.pending{background:#e8efff;border-color:#bdcdf5}.calendar-legend{display:flex;flex-wrap:wrap;gap:8px 14px;font-size:11px;color:var(--muted,#718078);margin:12px 0}.calendar-selected{display:flex;flex-direction:column;gap:4px;padding:12px;border-radius:10px;background:var(--surface-2,#f4f7f5);margin:10px 0}.calendar-selected span{font-size:12px;color:var(--muted,#718078)}
@media(max-width:480px){.calendar-week,.calendar-grid{gap:3px}.calendar-day{min-height:42px;border-radius:8px;font-size:13px}.calendar-week span{font-size:9px}}

/* v1.12 Cash Book Smart Import */
.cash-import-card{border:1px solid #e7d7ed;background:linear-gradient(145deg,#fff 0%,#fffaff 100%)}.cash-import-actions{display:flex;flex-wrap:wrap;gap:10px}.cash-import-actions label{display:inline-flex;align-items:center;justify-content:center;min-height:44px;cursor:pointer}.cash-preview{margin-top:14px;padding:14px;border:1px solid var(--line,#e3d9e8);border-radius:14px;background:#fff}.cash-preview h3{margin:0 0 10px}.cash-preview .form-grid{margin-top:12px}.cash-preview input,.cash-preview select{width:100%;min-height:44px}.cash-import-card .hint{overflow-wrap:anywhere}
@media(max-width:700px){.cash-import-actions{display:grid;grid-template-columns:1fr}.cash-import-actions label{width:100%;min-height:48px}.cash-preview{padding:11px}.cash-preview .form-grid{grid-template-columns:1fr}.field input[type=date],input[type=date]{min-height:46px;font-size:16px;max-width:100%}.calendar-day{min-height:44px;touch-action:manipulation}}


/* BlendTea Redesign v1.14 — Royal Purple Light Modern (approved palette) */
:root{--green:#6841A5;--green2:#57358D;--mint:#EEE8F8;--lime:#BBA5DF;--ink:#302344;--muted:#756B83;--line:#D9D2E8;--paper:#F7F5FC;--white:#FFFFFF;--red:#B4234D;--amber:#956313;--shadow:0 8px 24px rgba(48,35,68,.075)}
body{background:var(--paper);color:var(--ink)}
.brand-title,.stat-value{color:#302344}
.brand-sub{color:#756B83}
.logo{background:#6841A5;color:#fff}
.install-btn,.primary{background:#6841A5;color:#fff;box-shadow:0 5px 14px rgba(104,65,165,.18)}
.secondary{background:#EEE8F8;color:#57358D;border-color:#D9D2E8}
.nav{background:#EEEAF4}
.nav-item{color:#655A72}
.nav-item.active,.subnav button.active{background:#6841A5;color:#fff;border-color:#6841A5}
.module .module-icon{background:#EEE8F8;color:#6841A5}
.eyebrow{color:#6841A5}
.field input:focus,.field select:focus,.field textarea:focus{outline-color:#6841A5}
.field input,.field select,.field textarea,.toolbar input,.toolbar select{border-color:#D9D2E8}
th{background:#F1EDF7;color:#655A72}
.pill{background:#EEE8F8;color:#57358D}
.empty{background:#FCFBFE;border-color:#D9D2E8}
.notice{background:#F1ECF8;border-color:#D9D2E8;color:#493663}
.notice .dot{background:#956FC6}
.bt-summary-strip{background:linear-gradient(120deg,#302344,#57358D 60%,#6841A5)}
.bt-feature-card{background:linear-gradient(125deg,#302344 0%,#57358D 58%,#8B6BC0 150%)}
.bt-feature-card h1 span,.bt-kicker,.bt-promo-label{color:#D9D2E8}
.bt-quick-icon{box-shadow:inset 0 0 0 5px rgba(255,255,255,.55),0 2px 7px rgba(48,35,68,.07)}
.bt-promo-card{background:linear-gradient(100deg,#F1ECF8,#F7F5FC);border-color:#D9D2E8}
.bt-promo-orb{background:linear-gradient(145deg,#57358D,#8B6BC0)}
.bt-promo-card h2,.bt-workbook-copy b{color:#302344}
.bt-today-card,.bt-workbook-card{border-color:#D9D2E8}
.bt-workbook-icon{background:#EEE8F8;color:#6841A5}
:where(button,select,input,textarea,a,[role=button]):focus-visible{outline:3px solid #BBA5DF;outline-offset:3px}
.mobile-dock{border-color:#D9D2E8}

/* BlendTea Manager — full professional SaaS layout redesign */
:root{
  --brand:#6841A5;--brand-strong:#57358D;--brand-soft:#EEE8F8;
  --brand-line:#D9D2E8;--text-main:#302344;--text-muted:#756B83;
  --surface:#FFFFFF;--canvas:#F7F5FC;--surface-soft:#FBFAFD;
  --line:#E9E4F0;--shadow:0 2px 8px rgba(48,35,68,.045),0 12px 30px rgba(48,35,68,.035);
}
html{scroll-behavior:smooth}
body{background:var(--canvas);color:var(--text-main);font-family:Inter,ui-sans-serif,system-ui,-apple-system,"Segoe UI",sans-serif;letter-spacing:-.01em}
.app-shell{max-width:none;width:100%;min-height:100vh;margin:0;padding:0 34px 22px 304px;display:flex;flex-direction:column;}
.topbar{min-height:86px;padding:18px 0 15px;border-bottom:1px solid var(--line);margin-bottom:18px;}
.brand{gap:13px}.brand-logo{width:44px;height:44px;object-fit:cover;border-radius:13px;box-shadow:0 2px 7px rgba(48,35,68,.1);outline:0}
.brand-title{font-size:19px;font-weight:800;letter-spacing:-.65px;color:var(--text-main)}
.brand-sub{font-size:11px;color:var(--text-muted);letter-spacing:.01em}
.install-btn,.primary,.secondary,.danger{min-height:40px;border-radius:10px;padding:10px 15px;font-size:12px;font-weight:750;transition:background .16s ease,box-shadow .16s ease,transform .16s ease}
.install-btn,.primary{background:var(--brand);color:#fff;box-shadow:0 3px 8px rgba(104,65,165,.15)}
.install-btn:hover,.primary:hover{background:var(--brand-strong)}
.secondary{background:#F3EFF9;color:var(--brand-strong);border:1px solid var(--brand-line)}
.danger{background:#FFF1F3;color:#A52B49;border:1px solid #F3CDD6}
.notice{border:1px solid #E6DDF2;background:#F2EDF9;color:#58436F;border-radius:10px;padding:10px 13px;font-size:11px;box-shadow:none}
.notice .dot{background:#8B6BC0}
.outlet-row{margin:0 0 20px;padding:11px 13px;border:1px solid var(--line);border-radius:12px;background:var(--surface);box-shadow:none;gap:10px}
.outlet-row label{font-size:11px;color:var(--text-muted);font-weight:700}
.outlet-row select{min-height:38px;border:1px solid var(--line);border-radius:9px;color:var(--text-main);font-size:12px;background:#fff}
.master-date{font-size:11px;color:var(--text-muted)}
.nav{position:fixed;z-index:20;left:18px;top:18px;bottom:18px;width:258px;max-height:calc(100vh - 36px);overflow-y:auto;display:flex;flex-direction:column;align-items:stretch;gap:4px;padding:15px 12px;background:#fff;border:1px solid var(--line);border-radius:18px;box-shadow:var(--shadow);margin:0;scrollbar-width:thin}
.nav::before{content:"BLENDTEA MANAGER";display:block;padding:12px 12px 17px;margin:0 0 5px;border-bottom:1px solid var(--line);font-size:11px;line-height:1.2;font-weight:850;letter-spacing:1.45px;color:var(--brand)}
.nav-item{width:100%;min-height:42px;justify-content:flex-start;gap:12px;padding:10px 12px;border-radius:9px;color:#6B6276;font-size:12px;font-weight:650;transition:background .15s ease,color .15s ease}
.nav-item span{font-size:12px}.nav-item:hover{background:#F7F4FB;color:var(--brand)}
.nav-item.active{background:#EEE8F8;color:var(--brand-strong);box-shadow:inset 3px 0 0 var(--brand);font-weight:800}
main{width:100%;max-width:1600px;min-height:calc(100vh - 230px);margin:0 auto;}
.page-head{margin:5px 0 22px;align-items:center}
.eyebrow{font-size:10px;letter-spacing:1.25px;color:var(--brand);font-weight:850}
.page-title{font-size:27px;line-height:1.18;letter-spacing:-.9px;color:var(--text-main);font-weight:800;margin:5px 0 6px}
.subtext{font-size:12px;color:var(--text-muted);line-height:1.6}
.grid{gap:16px}.stats{gap:14px;margin-bottom:18px}
.card{background:#fff;border:1px solid var(--line);border-radius:13px;padding:18px;box-shadow:var(--shadow)}
.stat-label{font-size:11px;color:var(--text-muted);font-weight:650}.stat-value{font-size:27px;color:var(--text-main);font-weight:800;letter-spacing:-1px;margin:11px 0 4px}.stat-foot{font-size:10px;color:var(--text-muted)}
.section-title{font-size:14px;font-weight:800;color:var(--text-main);margin-bottom:13px}
.module-grid{gap:12px}.module{min-height:116px;border:1px solid var(--line)!important;border-radius:13px!important;background:#fff!important;box-shadow:0 2px 8px rgba(48,35,68,.035)!important;padding:16px!important}
.module .module-icon{width:38px;height:38px;border-radius:11px;background:#F0EAF8;color:var(--brand);font-size:17px}
.module strong{font-size:12px;font-weight:800;color:var(--text-main)}.module small{font-size:10px;color:var(--text-muted)}
.field-grid,.form-grid{gap:14px}.field label{font-size:11px;color:#62576E;font-weight:750}
.field input,.field select,.field textarea,.toolbar input,.toolbar select,.cash-preview input,.cash-preview select{min-height:41px;border:1px solid #E4DEEC;border-radius:9px;background:#fff;color:var(--text-main);font-size:12px;padding:10px 12px;box-shadow:none}
.field textarea{min-height:86px}.field input:focus,.field select:focus,.field textarea:focus,.toolbar input:focus,.toolbar select:focus{outline:3px solid rgba(187,165,223,.28);border-color:#A98CCF}
.toolbar{gap:9px;margin:12px 0 14px}.toolbar input{max-width:360px}.toolbar select{width:auto;min-width:145px}
.table-wrap{border:1px solid var(--line);border-radius:12px;background:#fff;box-shadow:0 2px 8px rgba(48,35,68,.025)}
table{min-width:620px}th,td{padding:12px 14px;border-bottom:1px solid #F0EDF4;font-size:11px}th{background:#F8F6FB;color:#766A83;font-size:9px;font-weight:800;letter-spacing:.75px}td{color:#453B50}tr:hover td{background:#FCFBFE}
.pill{background:#EEE8F8;color:#57358D;padding:4px 9px;font-size:10px}.pill.amber{background:#FFF4DE;color:#8A5B12}.pill.red{background:#FFF0F2;color:#A52B49}
.empty{border:1px dashed #D9D2E8;border-radius:12px;background:#FCFBFE;color:var(--text-muted);padding:30px 18px}.empty b{color:var(--text-main)}
.order-card,.source-chip,.cash-preview{border-color:var(--line);border-radius:12px;box-shadow:none}.kitchen-col{background:#F1EDF7;border:1px solid var(--line)}
.note,.muted-box{background:#F6F3FA;border-color:#C8B6E1;color:#5D506A;border-radius:10px}
footer{margin-top:26px;padding:15px 0 0;border-top:1px solid var(--line);font-size:10px;color:#91879B}
.toast{background:#302344;border:1px solid rgba(255,255,255,.12);border-radius:10px;font-size:12px}
:where(button,select,input,textarea,a,[role=button]):focus-visible{outline:3px solid #BBA5DF;outline-offset:2px}
@media(hover:hover){.module:hover,.card:hover{transform:translateY(-2px);box-shadow:0 8px 22px rgba(48,35,68,.075)!important}.nav-item:hover{transform:translateX(2px)}.primary:hover,.secondary:hover,.danger:hover{transform:translateY(-1px)}}
@media(max-width:1050px) and (min-width:701px){.app-shell{padding-left:260px;padding-right:22px}.nav{width:224px;left:14px}.nav-item{padding-left:9px}.stats{grid-template-columns:repeat(2,minmax(0,1fr))}.module-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:700px){
  .app-shell{display:block;min-height:100vh;padding:0 13px 88px;max-width:none}
  .topbar{padding:13px 0 12px;min-height:68px;margin-bottom:12px}
  .brand-logo{width:42px;height:42px;border-radius:12px}.brand-title{font-size:16px}.brand-sub{font-size:10px}
  .notice{padding:9px 10px;font-size:10px;margin-bottom:12px}
  .outlet-row{margin:0 0 15px;padding:10px;border-radius:11px}.outlet-row label{width:100%}.outlet-row select{flex:1;min-width:0}.master-date{width:100%;margin:0}
  .nav{display:none;position:fixed;left:12px;right:12px;top:auto;bottom:78px;width:auto;max-height:62vh;z-index:50;overflow:auto;grid-template-columns:repeat(2,minmax(0,1fr));flex-direction:unset;padding:12px;border-radius:15px;background:#fff;box-shadow:0 16px 50px rgba(35,20,52,.22)}
  .nav.nav-expanded{display:grid}.nav::before{grid-column:1/-1;padding:7px 9px 12px}.nav-item{min-height:42px;font-size:11px;padding:9px}.nav-item span{font-size:11px}
  .mobile-dock{position:fixed;z-index:40;left:0;right:0;bottom:0;display:flex;justify-content:space-around;gap:2px;padding:7px 6px max(8px,env(safe-area-inset-bottom));background:rgba(255,255,255,.97);border-top:1px solid var(--line);box-shadow:0 -5px 20px rgba(48,35,68,.07);backdrop-filter:blur(14px)}
  .mobile-dock .nav-item,.mobile-dock>button{display:flex;flex:1;min-width:0;min-height:48px;flex-direction:column;justify-content:center;align-items:center;gap:3px;padding:5px 2px;border:0;border-radius:9px;background:transparent;color:#81778D;font-size:9px;font-weight:700}
  .mobile-dock .nav-item.active{background:#F0EAF8;color:var(--brand);box-shadow:none}.mobile-dock .nav-item span:not(.dock-icon){font-size:9px}.dock-icon{font-size:17px;line-height:1}
  main{min-height:calc(100vh - 240px)}.page-head{margin:4px 0 17px}.page-title{font-size:23px}.subtext{font-size:11px}
  .stats{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.stats .card{min-height:102px;padding:14px}.stat-value{font-size:23px}
  .module-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.module{min-height:108px;padding:13px!important}.module .module-icon{width:35px;height:35px}
  .two-col,.kitchen-columns{grid-template-columns:1fr}.field-grid,.form-grid{grid-template-columns:1fr}.span-2{grid-column:auto}
  .card{padding:14px;border-radius:12px}.toolbar{align-items:stretch}.toolbar input,.toolbar select{max-width:none;width:100%}.form-actions button,.button-row button{min-height:43px}
  .bt-home{margin:0 -13px 10px}.bt-summary-strip{border-radius:0 0 15px 15px}.bt-feature-card{border-radius:16px}
  footer{padding-bottom:10px;margin-top:20px}
}

/* v1.16 — refined professional dashboard layout */
:root{--brand:#6841A5;--brand-strong:#57358D;--brand-soft:#F0EAF8;--canvas:#F7F6FA;--text-main:#292334;--text-muted:#777181;--line:#EAE7EF;--shadow:0 2px 8px rgba(35,24,48,.035),0 10px 26px rgba(35,24,48,.035)}
.app-shell{padding-left:292px;padding-right:36px}
.topbar{min-height:78px;margin-bottom:16px;padding:14px 0 13px}
.nav{left:16px;top:16px;bottom:16px;width:250px;padding:14px 11px;border-radius:16px}
.nav::before{content:"BLENDTEA MANAGER";letter-spacing:1.35px;font-size:10px;padding:12px 12px 16px}
.nav-item{min-height:40px;font-size:12px;border-radius:9px}
.notice{margin-bottom:13px}
.outlet-row{margin-bottom:22px}
.dashboard-page{max-width:1500px;margin:0 auto;padding:4px 0 12px}
.dash-welcome{display:flex;align-items:flex-end;justify-content:space-between;gap:20px;margin:5px 0 30px}
.dash-eyebrow{font-size:9px;font-weight:850;letter-spacing:1.5px;color:var(--brand);margin-bottom:8px}
.dash-welcome h1{font-size:29px;line-height:1.15;letter-spacing:-1.05px;margin:0;color:#292334;font-weight:800}
.dash-welcome p{font-size:12px;color:#817B8B;margin:8px 0 0}
.dash-date{display:flex;align-items:center;gap:10px;padding:11px 14px;background:#fff;border:1px solid var(--line);border-radius:11px;box-shadow:0 2px 7px rgba(35,24,48,.025)}
.dash-date-icon{width:34px;height:34px;display:grid;place-items:center;background:#F0EAF8;color:var(--brand);border-radius:9px;font-size:17px}
.dash-date b,.dash-date small{display:block}.dash-date b{font-size:10px;color:#40384A}.dash-date small{font-size:10px;color:#898392;margin-top:4px}
.dash-section-head,.dash-panel-head{display:flex;align-items:center;justify-content:space-between;gap:12px}
.dash-section-head{margin-bottom:13px}.dash-section-head h2,.dash-panel-head h2{font-size:15px;letter-spacing:-.25px;margin:0;color:#302A39}.dash-section-head p,.dash-panel-head p{font-size:10px;color:#8A8492;margin:5px 0 0}
.dash-live{display:flex;align-items:center;gap:6px;font-size:10px;color:#817B89}.dash-live i{width:7px;height:7px;border-radius:50%;background:#36A779;box-shadow:0 0 0 3px #E6F5EE}
.dash-stats-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:13px;margin-bottom:23px}
.dash-stat{appearance:none;text-align:left;display:flex;flex-direction:column;gap:7px;min-width:0;padding:16px 17px 15px;background:#fff;border:1px solid var(--line);border-radius:13px;box-shadow:0 2px 8px rgba(35,24,48,.025);cursor:pointer;transition:transform .15s ease,box-shadow .15s ease}
.dash-stat:hover{transform:translateY(-2px);box-shadow:0 8px 20px rgba(48,35,68,.07)}
.dash-stat-top{display:flex;align-items:center;justify-content:space-between;margin-bottom:3px}.dash-stat-icon{width:32px;height:32px;display:grid;place-items:center;border-radius:9px;background:#F0EAF8;color:#6841A5;font-size:17px;font-weight:800}.dash-stat-arrow{font-size:13px;color:#A49CAB}
.dash-stat-label{font-size:10px;color:#777181;font-weight:650}.dash-stat-value{font-size:22px;letter-spacing:-.7px;line-height:1.2;color:#302A39;white-space:nowrap}.dash-stat-foot{font-size:9px;color:#9A94A0}.dash-stat.green .dash-stat-icon{background:#E9F6EF;color:#26845B}.dash-stat.rose .dash-stat-icon{background:#FCEEF0;color:#B44F62}.dash-stat.amber .dash-stat-icon{background:#FBF4E7;color:#A4772A}
.dash-main-grid{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(300px,.75fr);gap:15px;margin-bottom:16px;align-items:stretch}
.dash-panel{background:#fff;border:1px solid var(--line);border-radius:14px;padding:18px;box-shadow:0 2px 8px rgba(35,24,48,.025);min-width:0}
.dash-panel-head{margin-bottom:17px}.dash-panel-mark{width:31px;height:31px;display:grid;place-items:center;border-radius:9px;background:#F0EAF8;color:var(--brand);font-size:15px}
.dash-actions-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}
.dash-action{display:flex;align-items:center;gap:10px;min-width:0;text-align:left;padding:11px 10px;border:1px solid #F0EDF4;background:#fff;border-radius:10px;cursor:pointer;transition:border-color .15s ease,background .15s ease,transform .15s ease}
.dash-action:hover{background:#FCFAFE;border-color:#D9CBEA;transform:translateY(-1px)}
.dash-action-icon{width:34px;height:34px;flex:none;display:grid;place-items:center;border-radius:9px;background:#F0EAF8;color:#6841A5;font-size:16px}
.dash-action-copy{display:flex;flex-direction:column;gap:3px;min-width:0}.dash-action-copy b{font-size:10px;color:#393241}.dash-action-copy small{font-size:9px;color:#918B98;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.dash-action-arrow{margin-left:auto;color:#A49CAB;font-size:18px}
.dash-activity-row{display:flex;align-items:center;gap:10px;padding:12px 0;border-bottom:1px solid #F1EEF4}.dash-activity-row:last-of-type{border-bottom:0}.dash-activity-icon{width:31px;height:31px;display:grid;place-items:center;flex:none;border-radius:9px;background:#F0EAF8;color:#6841A5;font-size:14px}.dash-activity-icon.green{background:#E9F6EF;color:#26845B}.dash-activity-icon.rose{background:#FCEEF0;color:#B44F62}.dash-activity-icon.amber{background:#FBF4E7;color:#A4772A}.dash-activity-row span:nth-child(2){display:flex;flex-direction:column;gap:3px;min-width:0;flex:1}.dash-activity-row b{font-size:10px;color:#393241}.dash-activity-row small{font-size:9px;color:#918B98}.dash-activity-row>strong{font-size:10px;color:#393241;text-align:right;white-space:nowrap}.dash-activity-row>strong.positive{color:#26845B}
.dash-outline-link{display:flex;justify-content:space-between;align-items:center;width:100%;margin-top:12px;padding:10px 0 0;border:0;border-top:1px solid #F1EEF4;background:none;color:#6841A5;font-size:10px;font-weight:750;cursor:pointer}
.dash-workbook{display:flex;align-items:center;gap:12px;padding:13px 15px;margin-bottom:13px}.dash-workbook-icon{width:37px;height:37px;display:grid;place-items:center;flex:none;border-radius:10px;background:#F0EAF8;color:#6841A5;font-size:18px}.dash-workbook-copy{display:flex;flex-direction:column;gap:4px;min-width:0;flex:1}.dash-workbook-copy b{font-size:11px;color:#393241}.dash-workbook-copy small{font-size:9px;line-height:1.4;color:#898391;overflow-wrap:anywhere}.dash-workbook .secondary{font-size:10px;min-height:34px;padding:7px 11px;white-space:nowrap}
.dash-local-note{display:flex;align-items:flex-start;gap:9px;padding:11px 13px;border:1px solid #E9E2F1;border-radius:10px;background:#F5F1FA;color:#756A82}.dash-local-note>span{font-size:14px;color:#8061A8}.dash-local-note p{margin:0;font-size:9px;line-height:1.55}.dash-local-note b{color:#59466E}
@media(max-width:1100px) and (min-width:701px){.app-shell{padding-left:270px;padding-right:22px}.nav{width:230px;left:13px}.dash-stats-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.dash-main-grid{grid-template-columns:1fr}}
@media(max-width:700px){.app-shell{padding:0 13px 88px}.nav{left:12px;right:12px;width:auto}.topbar{margin-bottom:12px}.dash-welcome{align-items:flex-start;flex-direction:column;margin:5px 0 22px;gap:13px}.dash-welcome h1{font-size:24px}.dash-date{width:100%}.dash-stats-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px;margin-bottom:18px}.dash-stat{padding:13px 12px}.dash-stat-value{font-size:19px}.dash-main-grid{grid-template-columns:1fr;gap:11px}.dash-panel{padding:14px}.dash-actions-grid{gap:8px}.dash-action{padding:10px 8px;gap:8px}.dash-action-icon{width:31px;height:31px}.dash-action-copy b{font-size:9px}.dash-action-copy small{font-size:8px}.dash-workbook{align-items:flex-start;flex-wrap:wrap}.dash-workbook-copy{min-width:calc(100% - 55px)}.dash-workbook .secondary{margin-left:49px}.dash-section-head h2,.dash-panel-head h2{font-size:14px}.dash-live{font-size:9px}}

/* v1.17 — full module interface system (Royal Purple) */
:root{
 --brand:#6841A5;--brand-strong:#56328E;--brand-soft:#F1EBF9;--brand-line:#E2D7F0;
 --canvas:#F7F5FA;--surface:#FFFFFF;--text-main:#2E2738;--text-muted:#777083;--line:#E9E5EF;
 --shadow:0 1px 2px rgba(42,28,58,.025),0 8px 24px rgba(42,28,58,.045);
}
html{background:var(--canvas)}body{background:var(--canvas);color:var(--text-main);font-size:14px;letter-spacing:-.01em}
.app-shell{max-width:none;padding-right:clamp(20px,3vw,48px);padding-bottom:40px}
.topbar{border-bottom:1px solid #ECE8F1;min-height:76px;margin-bottom:17px;padding:12px 0 14px}
.brand{gap:11px}.logo{border-radius:13px;background:linear-gradient(145deg,#7954B3,#56328E);box-shadow:0 5px 13px rgba(104,65,165,.2)}
.brand-title{font-size:18px;letter-spacing:-.55px;color:#30263D}.brand-sub{font-size:11px;color:#81798B}
.install-btn,.primary{background:var(--brand);color:#fff;border:1px solid var(--brand);border-radius:9px;box-shadow:0 2px 5px rgba(104,65,165,.13);transition:background .15s,transform .15s,box-shadow .15s}
.install-btn:hover,.primary:hover{background:var(--brand-strong);box-shadow:0 5px 12px rgba(104,65,165,.18);transform:translateY(-1px)}
.secondary{background:#F5F1FA;color:#5D3B91;border:1px solid #E5DAF1;border-radius:9px}.secondary:hover{background:#EEE6F7;border-color:#D5C4E8}
.danger{border-radius:9px}.notice{border-radius:10px;background:#F7F3FC;border-color:#E8DFF2;color:#65547A;padding:10px 13px}.notice .dot{background:#8A67B7}
.outlet-row{background:#fff;border:1px solid var(--line);border-radius:12px;padding:11px 14px;box-shadow:0 2px 7px rgba(42,28,58,.025)}
.outlet-row label{color:#6D6479;font-size:11px}.outlet-row select{border-radius:8px;border-color:#E3DDEB;color:#433650;min-height:38px}
.nav{background:#fff;border:1px solid #EAE5F0;border-radius:16px;box-shadow:0 8px 28px rgba(42,28,58,.055);gap:4px;padding:13px 10px}
.nav::before{color:#9B91A8}.nav-item{color:#6D6578;font-size:12px;font-weight:650;padding:10px 12px;border-radius:9px;transition:background .15s,color .15s}
.nav-item:hover{background:#F8F5FB;color:#5D3B91}.nav-item.active{background:#F0EAF8;color:#6841A5;font-weight:800;box-shadow:inset 3px 0 0 #6841A5}.nav-item span{font-size:12px}
.page-head{margin:10px 0 20px;align-items:center}.eyebrow{color:#8464AB;font-size:9px;letter-spacing:1.45px}.page-title{font-size:25px;font-weight:800;letter-spacing:-.85px;color:#30283A;margin:5px 0 6px}.subtext{font-size:12px;color:#81798B;line-height:1.55}
.card{background:#fff;border:1px solid #EAE6F0;border-radius:14px;padding:19px;box-shadow:0 2px 8px rgba(42,28,58,.025);margin-bottom:14px}
.section-title{font-size:14px;font-weight:800;letter-spacing:-.25px;color:#352C40;margin:0 0 15px;padding-bottom:11px;border-bottom:1px solid #F0EDF4}
.grid{gap:13px}.stats{gap:12px}.stats .card{margin-bottom:0}.stat-label{font-size:11px;color:#81798B;font-weight:700}.stat-value{font-size:25px;color:#352A42;letter-spacing:-.8px;margin:8px 0 4px}.stat-foot{font-size:10px;color:#938B9C}
.form-grid,.field-grid{gap:14px 16px}.field{gap:7px}.field label{font-size:11px;color:#62596D;font-weight:750}.field input,.field select,.field textarea,.toolbar input,.toolbar select,input,select,textarea{accent-color:var(--brand)}
.field input,.field select,.field textarea,.toolbar input,.toolbar select{min-height:42px;border:1px solid #E2DCE9;border-radius:9px;background:#fff;color:#352D40;padding:10px 12px;font-size:12px;box-shadow:0 1px 2px rgba(42,28,58,.02);transition:border-color .15s,box-shadow .15s}
.field input:focus,.field select:focus,.field textarea:focus,.toolbar input:focus,.toolbar select:focus{border-color:#A98BCB;box-shadow:0 0 0 3px rgba(104,65,165,.10);outline:0}
.field textarea{min-height:92px}.form-actions{gap:9px;margin-top:17px}.form-actions button,.button-row button{min-height:38px;font-size:11px;padding:9px 13px}
.hint,.small{font-size:11px;line-height:1.55;color:#827A8D}.toolbar{gap:9px;margin:13px 0}.toolbar input{max-width:420px}.toolbar select{min-width:155px}
.record-list{display:grid;gap:9px}.record{background:#fff;border:1px solid #ECE8F1;border-radius:11px;padding:13px 14px;gap:12px;align-items:center;transition:border-color .15s,box-shadow .15s}
.record:hover{border-color:#D9CBEA;box-shadow:0 4px 13px rgba(55,35,76,.045)}.record strong{font-size:12px;color:#3A3145}.record .meta{font-size:10px;line-height:1.55;color:#81798B}.record .amount{font-size:13px;font-weight:800;color:#4D3A62}.record select{min-width:145px;max-width:190px;min-height:37px;border:1px solid #E2DCE9;border-radius:8px;background:#fff;padding:8px;font-size:11px;color:#43384F}
.pill{background:#F0EAF8;color:#67449A;border:1px solid #E5D9F1;font-size:9px;font-weight:800;padding:4px 8px}.pill.amber{background:#FBF4E8;color:#946A2B;border-color:#F2E6CE}.pill.red{background:#FCEEF0;color:#A94A5C;border-color:#F2D8DE}
.empty{padding:30px 18px;border:1px dashed #DDD4E8;background:#FBFAFD;border-radius:11px;color:#8B8394;font-size:11px}.empty b{color:#51465F}
.table-wrap{border:1px solid #EAE5EF;border-radius:11px;box-shadow:0 1px 3px rgba(42,28,58,.025)}table{min-width:640px}th{background:#F7F4FA;color:#776B87;font-size:9px;letter-spacing:.8px;padding:12px 13px}td{font-size:11px;color:#51495A;padding:12px 13px;border-color:#F0EDF3}tr:hover td{background:#FCFAFE}
.subnav{gap:7px}.subnav button{border-color:#E7E1EC;color:#756B80;border-radius:8px;padding:9px 12px}.subnav button.active{background:#6841A5;border-color:#6841A5;color:#fff}
.muted-box,.note{background:#F7F4FA;border-color:#E6DDED;color:#6D617B;border-radius:10px}.file-field{border-color:#D9CDE7;background:#FBF9FD}.source-chip{border-color:#EAE5EF;border-radius:9px}.toast{background:#38264C;border-radius:10px}
/* Module-specific refinements without changing business logic */
.card:has(#employeeSearch){background:linear-gradient(180deg,#fff,#FCFAFE)}
.card:has(#employeeSearch) .form-grid{grid-template-columns:minmax(0,1.5fr) minmax(180px,.7fr);align-items:end}
.card:has(#employeeSearch) .form-actions{justify-content:flex-start}
.card:has(#employeeSearch) .record{padding:14px 15px}
.card:has(#employeeSearch) .record img{width:46px!important;height:46px!important;border-radius:12px!important;border:2px solid #F0EAF8}
.card:has(#employeeSearch) .record .button-row{margin-left:auto}
.card:has(#bulkDate){background:#fff}
#bulkAttendanceForm .card{background:#FCFBFD;border-color:#E8E1EF;padding:16px;margin-bottom:11px}
#bulkAttendanceForm .card .section-title{display:flex;align-items:center;gap:8px;color:#57358D}
#bulkAttendanceForm .record{padding:11px 13px;background:#fff}
#bulkAttendanceForm .record select{margin-left:auto}
#bulkAttendanceForm .record input[type=checkbox]{width:17px;height:17px;accent-color:#6841A5}
#payrollPreviewForm .form-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
.card:has(#payrollPreviewForm){border-top:3px solid #6841A5}
.card:has(#payrollPreviewForm) .hint{background:#F8F5FB;border:1px solid #ECE4F4;border-radius:9px;padding:11px 12px;margin:13px 0}
.card:has(#countForm){border-top:3px solid #6841A5}
#countForm .form-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
#countForm .field:nth-child(3),#countForm .field:nth-child(4){background:#FAF8FC;border:1px solid #EEE8F4;border-radius:10px;padding:12px}
#countForm .field:nth-child(3) input,#countForm .field:nth-child(4) input{font-size:16px;font-weight:750;color:#4C3470}
/* Consistent empty states and action hierarchy */
button:focus-visible,[data-go]:focus-visible,[data-action]:focus-visible{outline:3px solid rgba(104,65,165,.25);outline-offset:2px}
button:disabled{opacity:.48;cursor:not-allowed;transform:none!important;box-shadow:none!important}
@media(max-width:1100px) and (min-width:701px){.app-shell{padding-left:270px;padding-right:22px}.nav{width:230px}.stats{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:700px){
 .app-shell{padding:0 13px 92px}.topbar{min-height:66px;padding:10px 0 12px}.brand-title{font-size:16px}.brand-sub{font-size:10px}
 .nav{background:#fff;border:1px solid #EAE5F0}.mobile-dock{background:rgba(255,255,255,.97);border-top:1px solid #EAE5F0}
 .page-head{margin:5px 0 15px}.page-title{font-size:22px}.subtext{font-size:11px}
 .card{padding:15px;border-radius:12px;margin-bottom:11px}.section-title{font-size:13px;margin-bottom:12px}
 .form-grid,.field-grid,.card:has(#employeeSearch) .form-grid,#payrollPreviewForm .form-grid,#countForm .form-grid{grid-template-columns:1fr;gap:11px}
 .field input,.field select,.field textarea{min-height:43px;font-size:13px}
 .record{align-items:flex-start;flex-wrap:wrap;padding:12px}.record .button-row{width:100%;margin-left:0}.record .button-row button{flex:1}.record select{max-width:100%;width:100%}
 #bulkAttendanceForm .record{align-items:center}.record-list{gap:8px}
 .stats{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}.stats .card{min-height:90px;padding:12px}.stat-value{font-size:21px}
 .toolbar{align-items:stretch}.toolbar input,.toolbar select{max-width:none;width:100%}.form-actions button,.button-row button{min-height:42px}
 #countForm .field:nth-child(3),#countForm .field:nth-child(4){padding:10px}
 .table-wrap table{min-width:600px}
}
/* Stock check page */.record-list button.record{width:100%;text-align:left;font:inherit;color:inherit;cursor:pointer}.record-list button.record.sr-selected{outline:2px solid #6841A5;outline-offset:-2px}.sr-order{white-space:pre-wrap;margin:0;padding:14px;border-radius:12px;background:#F7F5FC;border:1px solid #D9D2E8;font:13px/1.55 ui-monospace,Consolas,monospace;color:#302344;max-height:420px;overflow:auto}.sr-cat{font-size:13px;margin:16px 0 6px;color:#6841A5}
#srBody a.secondary{text-decoration:none;display:inline-flex;align-items:center;justify-content:center}
#srBody a.sr-wa{text-decoration:none;display:inline-flex;align-items:center;justify-content:center;background:#1F9D55;border-color:#1F9D55;color:#fff}
