@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Fraunces:opsz,wght@9..144,600;9..144,700&display=swap');
:root{--ink:#18342d;--muted:#71817c;--green:#245d4f;--dark:#173f35;--soft:#e8f1ed;--cream:#f7f4ed;--paper:#fffdfa;--line:#e7e6df;--orange:#d97b43;--orange-soft:#fff0e5;--red:#bd4e4e;--red-soft:#fceaea;--shadow:0 10px 30px rgba(32,61,52,.08);--radius:18px}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--cream);color:var(--ink);font-family:"DM Sans",system-ui,sans-serif;-webkit-font-smoothing:antialiased}button,input,select,textarea{font:inherit}button{color:inherit}button,a{-webkit-tap-highlight-color:transparent}.svg-sprite{position:absolute;width:0;height:0;overflow:hidden}svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-linecap:round;stroke-linejoin:round;stroke-width:1.8}
.app-shell{min-height:100vh;display:grid;grid-template-columns:248px 1fr}.sidebar{position:sticky;top:0;height:100vh;padding:30px 22px 24px;background:var(--dark);color:#fff;display:flex;flex-direction:column}.brand{color:inherit;text-decoration:none;display:flex;align-items:center;gap:12px;padding:0 8px 32px}.brand-mark{width:42px;height:42px;border-radius:13px;display:grid;place-items:center;color:var(--dark);background:#f2c99d;transform:rotate(-3deg)}.brand-mark svg{width:24px;height:24px}.brand strong,.brand small{display:block}.brand strong{font:600 19px Fraunces,Georgia,serif}.brand small{margin-top:2px;color:#a9c0b9;font-size:12px}.nav-list{display:grid;gap:7px}.nav-item{width:100%;border:0;background:transparent;cursor:pointer;display:flex;align-items:center;gap:13px;min-height:46px;padding:0 13px;border-radius:12px;color:#b7cac4;text-align:left;transition:.2s}.nav-item:hover,.nav-item.active{color:#fff;background:rgba(255,255,255,.1)}.nav-item svg{width:19px}.nav-item span{flex:1;font-size:14px;font-weight:600}.nav-count{padding:2px 7px;background:#f2c99d;border-radius:999px;color:var(--dark);font-size:11px}.sidebar-bottom{margin-top:auto;display:grid;gap:20px}.privacy-note{margin:0 8px;display:flex;gap:10px;color:#a9c0b9;align-items:center}.privacy-note>span{font-size:9px;color:#7eca8e}.privacy-note.syncing>span,.privacy-note.offline>span{color:#e6ae62}.privacy-note.error>span{color:#ee8484}.privacy-note.local>span{color:#86a39a}.privacy-note strong,.privacy-note small{display:block}.privacy-note strong{color:#d9e6e2;font-size:12px}.privacy-note small{margin-top:2px;font-size:10px}
main{min-width:0}.topbar{height:112px;padding:27px 42px 20px;display:flex;align-items:center;justify-content:space-between;gap:20px;border-bottom:1px solid rgba(24,52,45,.07)}.eyebrow{margin:0 0 4px;color:var(--orange);font-size:10px;font-weight:700;letter-spacing:1.5px}h1,h2,h3,p{margin-top:0}h1{margin-bottom:0;font:700 29px/1.15 Fraunces,Georgia,serif;letter-spacing:-.5px}.top-actions,.toolbar-actions,.filter-row{display:flex;gap:10px}.button{border:0;min-height:43px;padding:0 17px;border-radius:11px;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;gap:8px;font-size:13px;font-weight:700;transition:.15s}.button:hover{transform:translateY(-1px)}.button.primary{background:var(--green);color:#fff;box-shadow:0 6px 15px rgba(36,93,79,.18)}.button.primary:hover{background:var(--dark)}.button.secondary{background:var(--paper);border:1px solid var(--line)}.button.ghost{background:transparent;color:var(--green)}.button.danger{background:var(--red-soft);color:var(--red)}.button.small{min-height:34px;padding:0 12px;font-size:12px}.button svg{width:17px;height:17px}.view-container{padding:30px 42px 48px;max-width:1500px;margin:auto}.view{animation:rise .25s ease}@keyframes rise{from{opacity:0;transform:translateY(6px)}}
.welcome{padding:23px 27px;margin-bottom:22px;border-radius:var(--radius);color:#fff;background:var(--green) radial-gradient(circle at 90% 0,rgba(255,255,255,.12),transparent 36%);display:flex;align-items:center;justify-content:space-between;overflow:hidden;position:relative}.welcome:after{content:"☕";position:absolute;right:3%;bottom:-26px;font-size:108px;opacity:.1;transform:rotate(-12deg)}.welcome h2{margin-bottom:6px;font:600 22px Fraunces,Georgia,serif}.welcome p{margin:0;color:#cfe0db;font-size:13px}.welcome .button{z-index:1;background:#f6d0a9;color:var(--dark)}.metrics{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin-bottom:22px}.metric{padding:19px;background:var(--paper);border:1px solid var(--line);border-radius:15px;box-shadow:0 3px 16px rgba(32,61,52,.035)}.metric-head{display:flex;align-items:center;justify-content:space-between;color:var(--muted);font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.6px}.metric-icon{width:32px;height:32px;border-radius:9px;background:var(--soft);color:var(--green);display:grid;place-items:center}.metric-icon.orange{background:var(--orange-soft);color:var(--orange)}.metric-icon.red{background:var(--red-soft);color:var(--red)}.metric-icon svg{width:16px}.metric strong{display:block;margin-top:14px;font:700 25px/1 Fraunces,Georgia,serif}.metric small{display:block;margin-top:7px;color:var(--muted);font-size:11px}
.money-position{margin:-4px 0 22px;padding:21px 24px;display:flex;align-items:center;justify-content:space-between;gap:24px;border:1px solid #bcd5cc;border-radius:17px;background:linear-gradient(115deg,#e8f3ef,#f8fbfa);box-shadow:0 5px 20px rgba(36,93,79,.07)}
.money-position-copy{display:flex;align-items:center;gap:15px}.money-position-icon{width:44px;height:44px;flex:0 0 auto;display:grid;place-items:center;border-radius:13px;background:var(--green);color:#fff}.money-position-icon svg{width:21px;height:21px}.money-position .eyebrow{margin-bottom:3px;color:var(--green)}.money-position h2{margin:0;font:700 19px Fraunces,Georgia,serif}.money-position-copy>div>p:last-child{margin:4px 0 0;color:var(--muted);font-size:11px}.money-position-copy p strong{color:var(--ink)}.money-position-total{text-align:right}.money-position-total>strong{display:block;color:var(--green);font:700 31px/1 Fraunces,Georgia,serif}.money-position-total small{display:block;margin-top:7px;color:var(--muted);font-size:10px}.money-position-total small b{color:var(--green)}.money-position.negative{border-color:#edc7c7;background:linear-gradient(115deg,#faeeee,#fffafa)}.money-position.negative .money-position-icon{background:var(--red)}.money-position.negative .money-position-total>strong,.money-position-total small b.negative{color:var(--red)}
.dashboard-grid{display:grid;grid-template-columns:1.6fr 1fr;gap:18px}.stack{display:grid;gap:18px;align-content:start}.card,.table-card{background:var(--paper);border:1px solid var(--line);border-radius:var(--radius);box-shadow:0 4px 18px rgba(32,61,52,.035);overflow:hidden}.card-header{min-height:64px;padding:17px 21px;display:flex;align-items:center;justify-content:space-between;gap:12px;border-bottom:1px solid var(--line)}.card-header h2{margin:0;font:700 17px Fraunces,Georgia,serif}.card-header p{margin:3px 0 0;color:var(--muted);font-size:11px}.card-body{padding:20px}.link-button{border:0;background:none;color:var(--green);cursor:pointer;font-size:12px;font-weight:700}.activity-list{margin:0;padding:0;list-style:none}.activity-row{padding:14px 21px;display:grid;grid-template-columns:auto 1fr auto;gap:12px;align-items:center;border-bottom:1px solid var(--line)}.activity-row:last-child{border:0}.activity-icon{width:36px;height:36px;display:grid;place-items:center;border-radius:10px;background:var(--soft);color:var(--green)}.activity-icon.payment{background:#eef6df;color:#62852b}.activity-icon.expense{background:var(--orange-soft);color:var(--orange)}.activity-icon svg{width:17px}.activity-row strong{display:block;font-size:13px}.activity-row small{display:block;margin-top:3px;color:var(--muted);font-size:11px}.activity-amount{font-size:13px;font-weight:700}.activity-amount.positive{color:var(--green)}.activity-amount.negative{color:var(--orange)}.empty{padding:38px 22px;color:var(--muted);text-align:center}.empty-icon{width:48px;height:48px;margin:0 auto 12px;display:grid;place-items:center;border-radius:15px;color:var(--green);background:var(--soft)}.empty h3{margin-bottom:5px;color:var(--ink);font-size:14px}.empty p{margin-bottom:14px;font-size:12px}
.stock-list{padding:7px 20px 14px}.stock-row{display:grid;grid-template-columns:1fr auto;gap:12px;padding:13px 0;border-bottom:1px solid var(--line)}.stock-row:last-child{border:0}.stock-row strong{display:block;font-size:12px}.stock-row small{color:var(--muted);font-size:10px}.stock-level{min-width:75px;text-align:right;font-size:12px;font-weight:700}.progress{height:5px;margin-top:6px;border-radius:5px;background:#eeeae3;overflow:hidden}.progress>span{display:block;height:100%;background:var(--green)}.progress.low>span{background:var(--red)}.alert-strip{margin:0 20px 18px;padding:12px;border-radius:11px;background:var(--orange-soft);color:#95512a;display:flex;gap:9px;font-size:11px}.alert-strip svg{flex:0 0 auto;width:16px}
.section-toolbar{margin-bottom:18px;display:flex;align-items:center;justify-content:space-between;gap:12px}.section-toolbar h2{margin:0;font:700 20px Fraunces,Georgia,serif}.section-toolbar p{margin:5px 0 0;color:var(--muted);font-size:12px}.search{width:230px;height:40px;border:1px solid var(--line);border-radius:10px;background:var(--paper);padding:0 13px;outline:none}.search:focus,input:focus,select:focus,textarea:focus{border-color:#8bad9f;box-shadow:0 0 0 3px rgba(36,93,79,.09)}
.tabs-grid,.data-grid{display:grid;grid-template-columns:repeat(3,minmax(220px,1fr));gap:15px}.person-card,.item-card{padding:19px;background:var(--paper);border:1px solid var(--line);border-radius:16px}.person-card{cursor:pointer;transition:.15s}.person-card:hover{transform:translateY(-2px);box-shadow:var(--shadow)}.person-card-top,.item-top{display:flex;justify-content:space-between;gap:10px}.person-identity{display:flex;align-items:center;gap:11px}.avatar{width:38px;height:38px;flex:0 0 auto;display:grid;place-items:center;border-radius:50%;color:#fff;font-size:13px;font-weight:700}.person-identity h3{margin:0;font-size:14px}.person-identity small{color:var(--muted);font-size:10px}.more-button{width:30px;height:30px;border:0;background:transparent;border-radius:8px;cursor:pointer;color:var(--muted)}.more-button:hover{background:var(--soft);color:var(--green)}.person-balance{margin:22px 0 16px}.person-balance small,.item-stats small{display:block;color:var(--muted);font-size:9px;text-transform:uppercase;letter-spacing:.5px}.person-balance strong{display:block;margin-top:3px;font:700 25px Fraunces,Georgia,serif}.person-balance strong.credit{color:var(--green)}.person-actions{display:grid;grid-template-columns:1fr 1fr;gap:8px}
.tab-detail-head{padding:20px;display:flex;align-items:center;justify-content:space-between;gap:15px;border-bottom:1px solid var(--line)}.tab-detail-head h2{margin:0;font:700 19px Fraunces,Georgia,serif}.big-balance{text-align:right}.big-balance small{color:var(--muted);font-size:10px}.big-balance strong{display:block;font:700 25px Fraunces,Georgia,serif}.transaction-row{padding:13px 20px;display:grid;grid-template-columns:34px 1fr auto auto;gap:12px;align-items:center;border-bottom:1px solid var(--line)}.transaction-row .delete-icon{opacity:0}.transaction-row:hover .delete-icon{opacity:1}.delete-icon{width:29px;height:29px;display:grid;place-items:center;border:0;border-radius:8px;background:transparent;color:var(--red);cursor:pointer}.delete-icon:hover{background:var(--red-soft)}.delete-icon svg{width:15px}
.subtabs{display:flex;gap:4px;margin-bottom:18px;padding:4px;width:max-content;background:#eae8e1;border-radius:11px}.subtab{border:0;padding:8px 15px;border-radius:8px;background:transparent;cursor:pointer;color:var(--muted);font-size:12px;font-weight:700}.subtab.active{background:var(--paper);color:var(--ink);box-shadow:0 2px 6px rgba(30,50,45,.06)}.item-icon{width:39px;height:39px;display:grid;place-items:center;border-radius:11px;color:var(--green);background:var(--soft);font-size:19px}.item-menu{display:flex}.item-card h3{margin:13px 0 3px;font-size:14px}.item-card .meta{min-height:17px;margin:0;color:var(--muted);font-size:10px}.item-card .recipe-meta{min-height:34px;line-height:1.65}.item-stats{margin-top:15px;padding-top:13px;border-top:1px solid var(--line);display:flex;align-items:end;justify-content:space-between;gap:10px}.item-stats strong{display:block;margin-top:2px;font-size:14px}.stock-chip{padding:5px 8px;border-radius:7px;background:var(--soft);color:var(--green);font-size:10px;font-weight:700}.stock-chip.low{color:var(--red);background:var(--red-soft)}.restock-button{width:100%;margin-top:14px}.recipe-warning{margin-top:13px;padding:9px 10px;border-radius:8px;background:var(--orange-soft);color:#95512a;font-size:10px;font-weight:600}
.table-wrap{overflow-x:auto}table{width:100%;border-collapse:collapse;font-size:12px}th{padding:12px 16px;background:#faf8f3;color:var(--muted);text-align:left;font-size:9px;text-transform:uppercase;letter-spacing:.6px}td{padding:14px 16px;border-top:1px solid var(--line);white-space:nowrap}td small{color:var(--muted)}.category-tag{display:inline-flex;padding:4px 8px;border-radius:6px;background:var(--soft);color:var(--green);font-size:10px;font-weight:700}.amount-cell{font-weight:700}.expense-summary{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin-bottom:18px}
.settings-grid{display:grid;grid-template-columns:1.2fr 1fr;gap:18px}.settings-section{padding:21px}.settings-section h2{margin-bottom:5px;font:700 17px Fraunces,Georgia,serif}.settings-section>p{color:var(--muted);font-size:11px;line-height:1.5}.setting-actions{display:grid;grid-template-columns:1fr 1fr;gap:9px;margin-top:17px}.setting-actions .button{width:100%}.danger-zone{border-color:#f0cece}
.modal-backdrop{position:fixed;inset:0;z-index:100;padding:24px;background:rgba(14,33,28,.53);display:grid;place-items:center;backdrop-filter:blur(3px);animation:fade .15s}@keyframes fade{from{opacity:0}}.modal{width:min(530px,100%);max-height:min(800px,calc(100vh - 40px));overflow-y:auto;background:var(--paper);border-radius:20px;box-shadow:0 25px 60px rgba(9,30,24,.28);animation:pop .2s}@keyframes pop{from{transform:scale(.98) translateY(8px);opacity:0}}.modal.wide{width:min(720px,100%)}.modal-header{position:sticky;top:0;z-index:2;padding:20px 22px 15px;display:flex;align-items:center;justify-content:space-between;background:var(--paper);border-bottom:1px solid var(--line)}.modal-header h2{margin:0;font:700 20px Fraunces,Georgia,serif}.close-button{border:0;width:34px;height:34px;display:grid;place-items:center;background:#f0eee8;border-radius:10px;cursor:pointer}.modal-body{padding:20px 22px 23px}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:15px}.field{display:grid;gap:6px}.field.full{grid-column:1/-1}.field label{color:#4c625c;font-size:11px;font-weight:700}.field input,.field select,.field textarea{width:100%;min-height:42px;padding:9px 11px;border:1px solid #dcded8;border-radius:10px;background:#fff;color:var(--ink);outline:none}.field textarea{min-height:75px;resize:vertical}.field small{color:var(--muted);font-size:10px;line-height:1.4}.field output{min-height:42px;padding:11px;border:1px solid #dcded8;border-radius:10px;background:#faf8f3;color:var(--green);font-size:12px;font-weight:700}.modal-actions{display:flex;justify-content:flex-end;gap:9px;margin-top:21px;padding-top:16px;border-top:1px solid var(--line)}.amount-preview{margin:0 0 17px;padding:15px;display:flex;justify-content:space-between;align-items:center;border-radius:12px;background:var(--soft);color:var(--green)}.amount-preview span{font-size:11px;font-weight:700}.amount-preview strong{font:700 22px Fraunces,Georgia,serif}.recipe-builder{display:grid;gap:8px}.recipe-row{display:grid;grid-template-columns:minmax(0,1fr) 105px 82px 34px;gap:8px;align-items:center}.recipe-row select,.recipe-row input{min-width:0}.add-ingredient{width:max-content;margin-top:3px}.recipe-cost-preview{margin-top:18px;padding:14px 16px;display:flex;align-items:center;justify-content:space-between;border-radius:11px;background:var(--soft);color:var(--green)}.recipe-cost-preview span{font-size:11px;font-weight:700}.recipe-cost-preview strong{font:700 21px Fraunces,Georgia,serif}.order-summary{margin-top:18px;padding:13px 15px;display:grid;grid-template-columns:repeat(3,1fr);gap:12px;border-radius:12px;background:var(--soft)}.order-summary div{display:grid;gap:3px}.order-summary span{color:var(--muted);font-size:9px;font-weight:700;text-transform:uppercase}.order-summary strong{color:var(--green);font-size:14px}.toast-root{position:fixed;z-index:200;right:24px;bottom:24px;display:grid;gap:9px}.toast{min-width:260px;padding:13px 16px;border-radius:11px;color:#fff;background:var(--dark);box-shadow:var(--shadow);font-size:12px;font-weight:600;animation:rise .25s}.toast.error{background:var(--red)}.mobile-nav{display:none}
.inventory-entry-intro{margin:-2px 0 18px;padding:13px 14px;display:grid;gap:3px;border-radius:11px;background:var(--soft);color:var(--green)}.inventory-entry-intro strong{font-size:12px}.inventory-entry-intro span{color:var(--muted);font-size:10px;line-height:1.45}.stock-entry-summary{min-height:68px!important;padding:13px 15px!important;display:grid;grid-template-columns:1fr auto;align-items:center;gap:3px 12px}.stock-entry-summary span{font-size:10px;color:var(--muted)}.stock-entry-summary strong{font:700 20px Fraunces,Georgia,serif}.stock-entry-summary small{grid-column:1/-1;color:var(--green)!important}.stock-advanced{padding:11px 13px;border:1px solid var(--line);border-radius:10px;background:#faf8f3}.stock-advanced summary{cursor:pointer;color:var(--muted);font-size:11px;font-weight:700}.stock-advanced[open]{display:grid;gap:7px}.stock-advanced[open] summary{margin-bottom:4px}.stock-advanced label{margin-top:2px}
@media(max-width:1050px){.metrics{grid-template-columns:repeat(2,1fr)}.tabs-grid,.data-grid{grid-template-columns:repeat(2,minmax(220px,1fr))}.dashboard-grid{grid-template-columns:1.35fr 1fr}}
@media(max-width:800px){body{padding-bottom:74px}.app-shell{display:block}.sidebar{display:none}.topbar{height:91px;padding:19px 20px 15px}.desktop-only{display:none!important}.topbar .button{font-size:0;width:43px;padding:0;border-radius:50%}.view-container{padding:20px 16px 32px}.dashboard-grid,.settings-grid{grid-template-columns:1fr}.welcome{padding:20px}.welcome .button{display:none}.mobile-nav{position:fixed;z-index:50;left:0;right:0;bottom:0;height:70px;padding:7px 6px max(7px,env(safe-area-inset-bottom));background:rgba(255,253,250,.96);border-top:1px solid var(--line);display:grid;grid-template-columns:repeat(6,minmax(0,1fr));align-items:center;backdrop-filter:blur(12px)}.mobile-nav .nav-item{min-width:0;min-height:51px;padding:4px;flex-direction:column;justify-content:center;gap:3px;color:var(--muted)}.mobile-nav .nav-item:hover,.mobile-nav .nav-item.active{background:transparent;color:var(--green)}.mobile-nav .nav-item span{flex:initial;font-size:9px}}
@media(max-width:590px){h1{font-size:25px}.metrics{grid-template-columns:1fr 1fr;gap:9px}.metric{padding:15px}.metric strong{font-size:21px}.metric-icon{display:none}.money-position{padding:18px;align-items:flex-start;flex-direction:column;gap:16px}.money-position-icon{display:none}.money-position-total{text-align:left}.money-position-total>strong{font-size:28px}.tabs-grid,.data-grid{grid-template-columns:1fr}.section-toolbar{align-items:flex-start;flex-direction:column}.toolbar-actions,.filter-row{width:100%}.toolbar-actions .button{flex:1}.search{width:100%}.expense-summary{grid-template-columns:1fr}.expense-summary .metric{display:flex;align-items:center;justify-content:space-between}.expense-summary .metric strong{margin:0}.form-grid{grid-template-columns:1fr}.field.full{grid-column:auto}.modal-backdrop{padding:10px;align-items:end}.modal{max-height:calc(100vh - 20px);border-radius:20px 20px 10px 10px}.recipe-row{grid-template-columns:minmax(0,1fr) 75px 66px 34px}.order-summary{grid-template-columns:1fr}.transaction-row{grid-template-columns:34px 1fr auto}.transaction-row .delete-icon{display:none}.setting-actions{grid-template-columns:1fr}}
@media print{.sidebar,.topbar,.mobile-nav,.button,.delete-icon{display:none!important}body{background:#fff;padding:0}.app-shell{display:block}.view-container{padding:0}.card,.table-card{box-shadow:none}}

.payment-field{margin:0;padding:0;border:0}
.payment-field legend{margin-bottom:6px;color:#4c625c;font-size:11px;font-weight:700}
.payment-choice{display:grid;grid-template-columns:1fr 1fr;gap:9px}
.payment-choice label{cursor:pointer}
.payment-choice input{position:absolute;opacity:0;pointer-events:none}
.payment-choice span{min-height:64px;padding:10px 12px;display:grid;grid-template-columns:auto 1fr;grid-template-rows:auto auto;column-gap:8px;align-items:center;border:1px solid #dcded8;border-radius:11px;background:#fff}
.payment-choice svg{grid-row:1/-1;width:19px;height:19px;color:var(--green)}
.payment-choice strong{font-size:12px}
.payment-choice small{color:var(--muted);font-size:10px}
.payment-choice input:checked+span{border-color:var(--green);background:var(--soft);box-shadow:0 0 0 2px rgba(36,93,79,.09)}
.payment-choice input:focus-visible+span{outline:2px solid var(--green);outline-offset:2px}
@media(max-width:590px){.payment-choice{grid-template-columns:1fr}}
.expense-type-menu{display:grid;gap:11px}
.expense-type-option{width:100%;padding:16px;display:flex;align-items:center;gap:13px;border:1px solid var(--line);border-radius:13px;background:#fff;color:var(--ink);text-align:left;cursor:pointer;transition:.15s}
.expense-type-option:hover{border-color:#8bad9f;background:var(--soft);transform:translateY(-1px)}
.expense-type-option:disabled{cursor:not-allowed;opacity:.5;transform:none;background:#f7f5f0}
.expense-type-option>span:last-child{display:grid;gap:3px}
.expense-type-option strong{font-size:13px}
.expense-type-option small{color:var(--muted);font-size:10px;line-height:1.4}
.expense-type-icon{width:40px;height:40px;flex:0 0 auto;display:grid;place-items:center;border-radius:11px;background:var(--soft);color:var(--green)}
.expense-type-icon svg{width:19px;height:19px}
.expense-type-icon.bean{background:var(--orange-soft);color:var(--orange)}
.bean-button{color:#95512a!important;background:var(--orange-soft)!important;border-color:#ebc9ab!important}
.bean-button:hover{background:#f6dcc3!important}
.dial-in-intro{margin:-2px 0 18px;padding:14px;display:flex;align-items:center;gap:12px;border-radius:12px;background:var(--orange-soft);color:#95512a}
.dial-in-intro strong,.dial-in-intro small{display:block}
.dial-in-intro strong{font-size:12px}
.dial-in-intro small{margin-top:3px;color:#795d4c;font-size:10px;line-height:1.45}
.dial-in-bean{width:38px;height:38px;flex:0 0 auto;display:grid;place-items:center;border-radius:50%;background:#fff;color:var(--orange)}
.dial-in-bean svg{width:20px;height:20px}
.dial-in-summary{background:var(--orange-soft)!important;color:#95512a!important}
.dial-in-summary small{color:#795d4c!important}
.dial-in-summary small.summary-warning{color:var(--red)!important}
.stock-chip.used{color:#95512a;background:var(--orange-soft)}
.expense-bean{display:inline-grid;place-items:center;margin-right:6px;color:var(--orange);vertical-align:-2px}
.expense-bean svg{width:15px;height:15px}
.inventory-toggle{min-height:64px;padding:11px 13px;display:flex!important;align-items:center;justify-content:space-between;gap:14px;border:1px solid var(--line);border-radius:11px;background:#faf8f3;cursor:pointer}
.inventory-toggle>span:first-child{display:grid;gap:3px}
.inventory-toggle strong{color:var(--ink);font-size:12px}
.inventory-toggle small{color:var(--muted);font-size:10px;font-weight:400;line-height:1.35}
.toggle-switch{position:relative;width:44px;height:25px;flex:0 0 auto}
.toggle-switch input{position:absolute!important;width:1px!important;height:1px!important;min-height:0!important;opacity:0}
.toggle-switch>span{position:absolute;inset:0;border-radius:20px;background:#b9bfbb;transition:.18s}
.toggle-switch>span:before{content:"";position:absolute;width:19px;height:19px;left:3px;top:3px;border-radius:50%;background:#fff;box-shadow:0 1px 4px rgba(0,0,0,.2);transition:.18s}
.toggle-switch input:checked+span{background:var(--green)}
.toggle-switch input:checked+span:before{transform:translateX(19px)}
.toggle-switch input:focus-visible+span{outline:2px solid var(--green);outline-offset:2px}
.item-menu{align-items:center;justify-content:flex-end;gap:2px;flex-wrap:wrap}.stock-chip.hidden-item{color:#95512a;background:var(--orange-soft)}.notification-recipient-loading{padding:30px;text-align:center;color:var(--muted);font-size:12px}
.settings-only{display:none}
@media(max-width:800px){.settings-only{display:inline-flex}}

[hidden]{display:none!important}
.site-footer{padding:18px 24px;display:flex;align-items:center;justify-content:center;gap:16px;flex-wrap:wrap;border-top:1px solid var(--line);background:var(--paper);color:var(--muted);font-size:11px}.site-footer a{color:var(--green);font-weight:700;text-decoration:none}.site-footer a:hover{text-decoration:underline}.legal-body{min-height:100vh;background:var(--cream)}.legal-header{min-height:82px;padding:18px max(24px,calc((100% - 940px)/2));display:flex;align-items:center;justify-content:space-between;gap:18px;background:var(--dark);color:#fff}.legal-brand{display:flex;align-items:center;gap:11px;color:inherit;text-decoration:none}.legal-brand-mark{width:40px;height:40px;display:grid;place-items:center;border-radius:12px;background:#f2c99d;color:var(--dark);font-size:20px;transform:rotate(-3deg)}.legal-brand strong,.legal-brand small{display:block}.legal-brand strong{font:700 18px Fraunces,Georgia,serif}.legal-brand small{margin-top:2px;color:#a9c0b9;font-size:10px}.legal-header .button{color:var(--ink);text-decoration:none}.legal-main{width:min(940px,calc(100% - 32px));margin:34px auto}.legal-card{padding:clamp(24px,5vw,58px);border:1px solid var(--line);border-radius:22px;background:var(--paper);box-shadow:var(--shadow)}.legal-card h1{margin-bottom:8px;font-size:clamp(30px,5vw,43px)}.legal-card h2{margin:32px 0 9px;font:700 20px Fraunces,Georgia,serif}.legal-card p,.legal-card li{color:#4f625c;font-size:14px;line-height:1.75}.legal-card p{margin-bottom:13px}.legal-card ul{margin:10px 0 0;padding-left:23px}.legal-card li+li{margin-top:8px}.legal-card strong{color:var(--ink)}.legal-card a{color:var(--green);font-weight:700}.legal-card code{padding:2px 5px;border-radius:5px;background:var(--soft);color:var(--green);font-size:.9em}.legal-updated{margin-bottom:28px!important;color:var(--muted)!important;font-size:12px!important}.legal-footer{padding:7px 20px 32px;display:flex;justify-content:center;gap:10px;color:var(--muted);font-size:11px}.legal-footer a{color:var(--green);font-weight:700;text-decoration:none}.legal-footer a:hover{text-decoration:underline}@media(max-width:590px){.site-footer{padding-bottom:84px}.legal-header{padding:14px 16px}.legal-header .button{min-height:38px;padding:0 12px}.legal-main{margin:18px auto}.legal-card{border-radius:16px}.legal-card p,.legal-card li{font-size:13px}.legal-footer{padding-bottom:24px}}
.auth-screen{min-height:100vh;padding:32px;display:grid;place-items:center;background:var(--dark);position:relative;overflow:hidden}
.auth-screen:before,.auth-screen:after{content:"";position:absolute;border-radius:50%;background:rgba(255,255,255,.05)}
.auth-screen:before{width:420px;height:420px;right:-130px;top:-150px}.auth-screen:after{width:300px;height:300px;left:-110px;bottom:-130px}
.auth-panel{position:relative;z-index:1;width:min(430px,100%);padding:30px;background:var(--paper);border-radius:22px;box-shadow:0 28px 70px rgba(3,20,15,.32)}
.auth-brand{display:flex;align-items:center;gap:12px;margin-bottom:25px}.auth-brand .brand-mark{flex:0 0 auto}.auth-brand strong{display:block;font:700 20px Fraunces,Georgia,serif}.auth-brand small{display:block;margin-top:2px;color:var(--muted);font-size:11px}
.auth-panel h1{font-size:27px}.auth-panel>p{margin:7px 0 21px;color:var(--muted);font-size:12px;line-height:1.55}.auth-panel .form-grid{grid-template-columns:1fr}.auth-panel .button{width:100%}.auth-switch{margin:17px 0 0;text-align:center;color:var(--muted);font-size:11px}.auth-switch button{padding:0;border:0;background:none;color:var(--green);font-weight:700;cursor:pointer}.auth-message{margin-bottom:15px;padding:11px 12px;border-radius:10px;background:var(--soft);color:var(--green);font-size:11px;line-height:1.45}.auth-message.error{background:var(--red-soft);color:var(--red)}
.setup-steps{margin:18px 0;padding:0;list-style:none;counter-reset:setup}.setup-steps li{counter-increment:setup;display:grid;grid-template-columns:28px 1fr;gap:10px;align-items:start;margin:12px 0;color:var(--muted);font-size:11px;line-height:1.5}.setup-steps li:before{content:counter(setup);width:25px;height:25px;border-radius:8px;background:var(--soft);color:var(--green);display:grid;place-items:center;font-weight:700}.setup-steps code{font-size:10px}.setup-actions{display:grid;gap:9px}.sync-indicator{align-items:center;gap:6px;color:var(--muted);font-size:10px;font-weight:700;white-space:nowrap}.sync-indicator:not([hidden]){display:inline-flex}.sync-indicator:before{content:"";width:7px;height:7px;border-radius:50%;background:#86a39a}.sync-indicator.synced:before{background:#65a877}.sync-indicator.syncing:before{background:#d9a04d;animation:pulse 1s infinite}.sync-indicator.error:before{background:var(--red)}@keyframes pulse{50%{opacity:.35}}
.account-row{margin:16px 0;padding:13px;border-radius:11px;background:var(--soft);display:flex;align-items:center;justify-content:space-between;gap:12px}.account-row strong,.account-row small{display:block}.account-row strong{font-size:12px}.account-row small{margin-top:2px;color:var(--muted);font-size:10px}
.confirmation-icon{width:56px;height:56px;margin:0 0 18px;display:grid;place-items:center;border-radius:17px;background:var(--soft);color:var(--green)}.confirmation-icon svg{width:27px;height:27px}.confirmation-help{margin:18px 0;padding:13px 14px;display:grid;gap:3px;border-radius:11px;background:#faf8f3;color:var(--muted);font-size:11px;line-height:1.45}.confirmation-help strong{color:var(--ink);font-size:11px}
@media(max-width:800px){.sync-indicator{font-size:9px;max-width:68px;white-space:normal;line-height:1.15}.sync-indicator:before{flex:0 0 auto}}
@media(max-width:400px){.topbar{padding-left:16px;padding-right:16px;gap:10px}.topbar>div:first-child{min-width:0}.topbar h1{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.top-actions{gap:6px}.sync-indicator{max-width:none;font-size:0}}
@media(max-width:520px){.auth-screen{padding:14px}.auth-panel{padding:24px 20px}.auth-panel h1{font-size:24px}}
.order-addon-builder{display:grid;gap:8px}.order-addon-row{display:grid;grid-template-columns:minmax(0,1fr) 90px 90px 34px;gap:8px;align-items:center}.order-addon-row select,.order-addon-row input{min-width:0;width:100%;min-height:42px;padding:9px 11px;border:1px solid #dcded8;border-radius:10px;background:#fff;color:var(--ink);outline:none}.order-addon-preview{grid-column:1/-1;color:var(--muted);font-size:10px}.addon-empty-note{padding:12px 13px;border:1px dashed var(--line);border-radius:10px;background:#faf8f3;color:var(--muted);font-size:11px}
@media(max-width:590px){.order-addon-row{grid-template-columns:minmax(0,1fr) 90px 34px}.order-addon-row [name="addonId"]{grid-column:1/-1}}
.pending-order-grid{display:grid;grid-template-columns:repeat(2,minmax(280px,1fr));gap:15px}.pending-order-card{padding:19px;border:1px solid var(--line);border-radius:17px;background:var(--paper);box-shadow:0 4px 18px rgba(32,61,52,.035);cursor:pointer;transition:.15s}.pending-order-card:hover{transform:translateY(-2px);box-shadow:var(--shadow)}.pending-order-card.urgent{border-color:#e8b888}.pending-order-top{display:grid;grid-template-columns:auto 1fr auto;gap:11px;align-items:center}.pending-order-top h3{margin:0;font-size:14px}.pending-order-top small{display:block;margin-top:3px;color:var(--muted);font-size:10px}.customer-status-chip{display:inline-flex;padding:5px 9px;border-radius:999px;background:var(--orange-soft);color:var(--orange);font-size:9px;font-weight:800;text-transform:uppercase;letter-spacing:.6px}.pending-ready{margin:17px 0 10px;padding:12px 13px;border-radius:11px;background:var(--soft);display:grid;gap:3px}.pending-ready small{color:var(--muted);font-size:9px;font-weight:800;letter-spacing:.7px}.pending-ready strong{color:var(--green);font-size:13px}.pending-order-card>p{margin:0;color:var(--ink);font-size:12px;line-height:1.5}.pending-note{margin-top:10px;padding:10px 11px;border-radius:9px;background:#faf8f3;color:var(--muted);font-size:10px;line-height:1.5}.pending-note strong,.pending-note span{display:block}.pending-note strong{margin-bottom:3px;color:var(--ink)}.pending-order-footer{margin-top:17px;padding-top:14px;border-top:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;gap:12px}.pending-order-footer>strong{font:700 20px Fraunces,Georgia,serif}.pending-detail-items{display:grid;gap:10px}.pending-detail-items>div,.pending-total{display:flex;align-items:center;justify-content:space-between;gap:12px}.pending-detail-items>div{padding:12px 3px;border-bottom:1px solid var(--line);font-size:12px}.pending-total{margin-top:17px;padding:15px;border-radius:11px;background:var(--soft);color:var(--green)}.pending-total span{font-size:11px;font-weight:700}.pending-total strong{font:700 22px Fraunces,Georgia,serif}.pending-order-actions{margin-top:16px;display:grid;grid-template-columns:1fr 1fr;gap:9px}.pending-order-actions .button{width:100%}.pending-complete-help{margin:9px 15px 0;color:var(--muted);font-size:10px;line-height:1.5;text-align:center}.customer-invite-code{margin:12px 20px;padding:11px 13px;border-radius:10px;background:var(--soft);display:flex;align-items:center;justify-content:space-between;gap:12px}.customer-invite-code span{color:var(--muted);font-size:10px}.customer-invite-code strong{color:var(--green);font-size:13px;letter-spacing:1px}.customer-app-link{margin:14px 0 10px;padding:9px;display:flex;align-items:center;gap:8px;border:1px solid var(--line);border-radius:11px;background:#faf8f3}.customer-app-link span{min-width:0;flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--muted);font-size:10px}.customer-open-link{width:100%;text-decoration:none}.customer-login-link a{color:var(--green);font-weight:700}.button:disabled{opacity:.55;cursor:not-allowed;transform:none}
@media(max-width:800px){.pending-order-grid{grid-template-columns:1fr}}
@media(max-width:430px){.pending-order-actions{grid-template-columns:1fr}}
.pending-order-actions.three{grid-template-columns:1fr 1.25fr 1fr}.live-order-edit{display:grid;gap:8px}.live-order-labels,.live-order-edit-row{display:grid;grid-template-columns:minmax(0,1fr) 70px 105px 34px;gap:8px;align-items:center}.live-order-labels{padding:0 4px;color:var(--muted);font-size:9px;font-weight:800;text-transform:uppercase}.live-order-edit-row select,.live-order-edit-row input{min-width:0;width:100%;min-height:42px;padding:9px 10px;border:1px solid #dcded8;border-radius:10px;background:#fff;color:var(--ink)}
.bug-report-section{margin-top:22px}.bug-report-section>h3,.manager-person-history>h3{margin:0 0 10px;font:700 16px Fraunces,Georgia,serif}.bug-report-grid{display:grid;grid-template-columns:repeat(2,minmax(260px,1fr));gap:12px}.bug-report-card{padding:17px;border:1px solid var(--line);border-radius:15px;background:var(--paper);box-shadow:0 4px 18px rgba(32,61,52,.035);cursor:pointer}.bug-report-card>div,.bug-report-detail>div{display:flex;align-items:center;justify-content:space-between;gap:10px}.bug-report-card small,.bug-report-detail small{color:var(--muted);font-size:10px}.bug-report-card h3{margin:13px 0 5px;font-size:14px}.bug-report-card p{margin:0 0 12px;display:-webkit-box;overflow:hidden;-webkit-line-clamp:3;-webkit-box-orient:vertical;color:var(--muted);font-size:11px;line-height:1.5}.bug-report-card>strong{font-size:11px}.customer-status-chip.resolved,.customer-status-chip.completed{background:var(--soft);color:var(--green)}.customer-status-chip.cancelled{background:#f1eeee;color:var(--muted)}.bug-report-detail{margin-bottom:17px}.bug-report-detail p{padding:14px;border-radius:11px;background:#faf8f3;white-space:pre-wrap;color:var(--ink);font-size:12px;line-height:1.6}
.resolved-report-delete{margin-top:17px;padding:13px;display:flex;align-items:center;justify-content:space-between;gap:12px;border:1px solid #efd0d0;border-radius:11px;background:var(--red-soft)}.resolved-report-delete small{color:var(--red);font-size:10px}
.person-detail-actions{display:flex;gap:8px;flex-wrap:wrap;padding:14px 20px;border-bottom:1px solid var(--line)}.manager-person-history{padding:18px 20px;border-top:1px solid var(--line)}.manager-order-history-row{padding:12px 0;display:grid;grid-template-columns:minmax(0,1fr) auto;gap:14px;border-bottom:1px solid var(--line)}.manager-order-history-row:last-child{border-bottom:0}.manager-order-history-row>div{display:grid;gap:4px}.manager-order-history-row>div:last-child{justify-items:end}.manager-order-history-row strong{font-size:12px}.manager-order-history-row small,.manager-history-empty{color:var(--muted);font-size:10px;line-height:1.5}
@media(max-width:800px){.bug-report-grid{grid-template-columns:1fr}}
@media(max-width:590px){.pending-order-actions.three{grid-template-columns:1fr}.live-order-labels,.live-order-edit-row{grid-template-columns:minmax(0,1fr) 62px 90px 34px}.manager-order-history-row{grid-template-columns:1fr}.manager-order-history-row>div:last-child{grid-template-columns:auto 1fr;align-items:center;justify-items:start}.person-detail-actions .button{flex:1}}
@media(max-width:430px){.live-order-labels{display:none}.live-order-edit-row{grid-template-columns:minmax(0,1fr) 62px 34px}.live-order-edit-row [name="menuId"]{grid-column:1/-1}}
.privacy-note.conflict>span{color:#ee8484}.sync-indicator.conflict:before{background:var(--red)}
.sync-conflict{border-color:#e4a0a0;background:#fffafa}.sync-conflict>p{margin-bottom:14px}.conflict-fields{display:grid;gap:8px;margin:12px 0 16px}.conflict-field{display:grid;gap:3px;padding:10px 12px;border:1px solid var(--line);border-radius:10px;background:#fff;font-size:11px}.conflict-field strong{color:var(--dark)}.conflict-field span{color:var(--muted);overflow-wrap:anywhere}
.notification-permission-backdrop{position:fixed;inset:0;z-index:240;padding:24px;display:grid;place-items:center;background:rgba(14,33,28,.58);backdrop-filter:blur(4px);animation:fade .15s}.notification-permission-card{width:min(430px,100%);padding:28px;border-radius:20px;background:var(--paper);box-shadow:0 25px 60px rgba(9,30,24,.3);text-align:center;animation:pop .2s}.notification-permission-icon{width:58px;height:58px;margin:0 auto 16px;display:grid;place-items:center;border-radius:18px;background:var(--soft);font-size:27px}.notification-permission-card h2{margin:0;font:700 23px Fraunces,Georgia,serif}.notification-permission-card p{margin:9px auto 0;max-width:330px;color:var(--muted);font-size:12px;line-height:1.55}.notification-permission-actions{margin-top:22px;display:grid;grid-template-columns:1fr 1.35fr;gap:9px}.notification-permission-actions .button{width:100%}
@media(max-width:590px){.notification-permission-backdrop{padding:12px;align-items:end}.notification-permission-card{padding:24px 19px;border-radius:20px 20px 12px 12px}.notification-permission-actions{grid-template-columns:1fr}}
.customer-status-chip.completed { background: #dff3e5; color: #21663b; }
.customer-status-chip.in_progress { background: #e0edff; color: #24578d; }
.pending-progress-control { margin: 16px 0; }

.order-day-group{margin-bottom:28px;padding:20px;border:1px solid var(--line);border-radius:18px;background:var(--paper)}
.order-day-group.today{border-top:4px solid var(--green);background:var(--soft)}
.order-day-group.tomorrow{border-top:4px solid #6481a1;background:#f3f6fa}
.order-day-group.overdue{border-top:4px solid var(--orange)}
.order-day-heading{margin-bottom:16px}.order-day-heading h2{display:flex;align-items:center;flex-wrap:wrap;gap:12px;margin:0;font:700 23px Fraunces,Georgia,serif}
.order-day-heading p{margin:6px 0 0;color:var(--muted);font-size:12px}
.order-day-count{padding:5px 9px;border-radius:999px;background:var(--paper);border:1px solid var(--line);font:700 11px Manrope,sans-serif;color:var(--ink)}
.order-day-empty{margin:0;color:var(--muted);font-size:12px;padding:10px 0}
.order-day-group .pending-ready strong{font-size:16px}
@media(max-width:590px){.order-day-group{padding:14px}.order-day-group .pending-order-grid{grid-template-columns:minmax(0,1fr)}.order-day-heading h2{font-size:21px}}
/* Coffee Chat setup uses compact checkboxes inside the existing form grid. */
#coffee-chat-shop-form label:has(input[type="checkbox"]) { display: flex; align-items: flex-start; gap: 10px; line-height: 1.5; }
#coffee-chat-shop-form input[type="checkbox"] { width: 20px; height: 20px; min-height: 20px; flex: 0 0 20px; margin: 2px 0 0; }
#coffee-chat-shop-form .field { align-content: start; }
