:root{color-scheme:dark;font-family:Segoe UI,system-ui,sans-serif;line-height:1.4;--surface: #141619;--surface-container: #20242a;--surface-highest: #2b3038;--primary: #b4e300;--primary-container: rgba(180, 227, 0, .18);--on-primary: #000000;--secondary: #4ed3c4;--on-surface: #ffffff;--on-surface-variant: #b5bbc4;--outline: #3b4048;--outline-variant: rgba(59, 64, 72, .75);--error: #ff6a6a;background:var(--surface);color:var(--on-surface)}*{box-sizing:border-box}body{margin:0;min-height:100vh}button,input,select{font:inherit}.app-shell{max-width:960px;margin:0 auto;padding:12px 12px calc(52px + env(safe-area-inset-bottom,0px))}.legal-footer{position:fixed;left:0;right:0;bottom:0;z-index:20;display:flex;align-items:center;justify-content:center;gap:8px;padding:10px 12px calc(10px + env(safe-area-inset-bottom,0px));font-size:.8rem;background:color-mix(in srgb,var(--surface-container) 92%,transparent);border-top:1px solid var(--outline-variant);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.legal-footer a{color:var(--on-surface-variant);text-decoration:none}.legal-footer a:hover,.legal-footer a:focus-visible{color:var(--secondary);text-decoration:underline}.legal-footer-sep{color:var(--outline)}.app-header-top{display:flex;align-items:center;justify-content:space-between;gap:12px}.app-header-title{display:flex;align-items:center;gap:10px}.app-header-title h1,.app-header h1{margin:0;font-size:1.5rem}.app-icon{border-radius:8px;flex-shrink:0}.app-header-meta{margin:8px 0 0;color:var(--on-surface-variant);font-size:.95rem}.app-header-actions{display:flex;align-items:center;gap:8px}.icon-btn{border:1px solid var(--outline);background:var(--surface-container);color:var(--on-surface-variant);border-radius:10px;padding:8px;cursor:pointer;display:inline-flex;align-items:center;justify-content:center}.icon-btn-active{color:var(--primary);border-color:var(--primary);background:var(--primary-container)}.icon-btn-subtle{padding:6px;background:transparent;border-color:transparent;color:var(--on-surface-variant)}.conn-icon{display:inline-flex;padding:4px}.conn-icon--ok{color:var(--secondary)}.conn-icon--error{color:var(--error)}.conn-icon--loading,.conn-icon--idle{color:var(--on-surface-variant)}.tabs{display:flex;gap:8px;margin:16px 0;flex-wrap:wrap}.tab,.tab-active{border:1px solid var(--outline);background:var(--surface-container);color:var(--on-surface);border-radius:10px;padding:8px 14px;cursor:pointer}.tab-active{background:var(--primary-container);border-color:var(--primary);color:var(--primary);font-weight:600}.card{border:1px solid var(--outline-variant);background:var(--surface-container);border-radius:16px;padding:12px;margin-bottom:12px}.card-clickable{padding:0;overflow:hidden}.card-header-btn{width:100%;text-align:left;border:none;background:transparent;color:inherit;padding:12px;cursor:pointer}.card-header-btn h3{margin:0;font-size:1rem}.card-expanded .done-details{border-top:1px solid var(--outline);padding:0 12px 12px}.card h3{margin:0 0 8px;font-size:1rem}.meta{color:var(--on-surface-variant);font-size:.85rem}.help-text{margin:0;font-size:.88rem;color:var(--on-surface-variant);line-height:1.45}.line-row{display:flex;justify-content:space-between;align-items:center;gap:8px;padding:8px 0;border-top:1px solid var(--outline)}.line-row:first-of-type{border-top:none}.line-done{opacity:.55}.line-done span:first-child{text-decoration:line-through}.product-list-card .line-row{border-top-color:var(--outline-variant)}.product-list-row{font-size:1.15rem;padding:10px 0}.product-qty{margin-right:6px}.status-badge{font-size:.8rem;padding:4px 8px;border-radius:8px;white-space:nowrap}.status-badge--done{background:var(--primary-container);color:var(--primary)}.btn{border:none;border-radius:10px;padding:8px 12px;cursor:pointer;background:var(--primary);color:var(--on-primary);font-weight:600}.btn-secondary{background:var(--surface-highest);color:var(--on-surface);font-weight:500;border:1px solid var(--outline)}.btn-block{width:100%}.form-grid{display:grid;gap:12px}.form-grid label{display:grid;gap:4px;font-size:.9rem}.form-grid input,.form-grid select{padding:10px;border-radius:12px;border:1px solid var(--outline);background:var(--surface-highest);color:var(--on-surface)}.product-picker-header{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:8px}.product-picker-header p{margin:0}.btn-compact{padding:6px 10px;font-size:.85rem}.product-picker{max-height:280px;overflow:auto;border:1px solid var(--outline);border-radius:12px;padding:8px}.product-category-block{margin-bottom:12px}.product-category-block:last-child{margin-bottom:0}.product-category-label{display:flex;gap:8px;align-items:center;padding:6px 4px;border-bottom:1px solid var(--outline-variant);margin-bottom:4px}.product-category-items{padding-left:8px}.product-picker label{display:flex;gap:8px;align-items:center;padding:4px 0}.error{color:var(--error);margin:8px 0}.view-toggle{display:flex;justify-content:space-between;gap:8px;margin-bottom:12px}.view-toggle .tab-right{margin-left:auto}.empty{color:var(--on-surface-variant);padding:24px 8px;text-align:center}
