:root{--bg-main:#000;--bg-sidebar:#09090b;--bg-card:#121214;--bg-card-highlight:#271a15;--primary:#3b82f6;--on-primary:#fff;--text-main:#f8fafc;--text-dim:#a1a1aa;--accent-running-low:#f97316;--bg-running-low-pill:#3f1e10;--outline:#ffffff14;--shadow-card:0 4px 30px #0006;--font-display:"Plus Jakarta Sans", sans-serif;--font-body:"Plus Jakarta Sans", sans-serif;--spacing-side-rail:80px;--round-sm:8px;--round-md:16px;--round-lg:32px}*{box-sizing:border-box;touch-action:manipulation}::-webkit-scrollbar{width:5px}::-webkit-scrollbar-thumb{background:var(--outline);border-radius:10px}body{background-color:var(--bg-main);color:var(--text-main);font-family:var(--font-body);height:100vh;margin:0;padding:0;overflow:hidden}.kiosk-container{width:100vw;height:100vh;display:flex}.side-rail{width:var(--spacing-side-rail);background:var(--bg-sidebar);border-right:1px solid var(--outline);z-index:100;flex-direction:column;justify-content:space-between;align-items:center;padding:24px 0;display:flex}.logo-small{font-family:var(--font-display);color:var(--primary);letter-spacing:-.05em;font-size:1.25rem;font-weight:800}.rail-center{flex-direction:column;align-items:center;gap:32px;display:flex}.rail-btn{color:var(--text-dim);cursor:pointer;background:0 0;border:none;flex-direction:column;align-items:center;gap:8px;transition:color .3s;display:flex}.rail-btn.active{color:var(--primary)}.rail-btn i{stroke-width:2.5px;width:24px;height:24px}.rail-btn span{letter-spacing:.05em;font-size:.65rem;font-weight:700}.rail-bottom{text-align:center;font-family:var(--font-display);color:var(--text-dim);font-size:.7rem;font-weight:600;line-height:1.4}.rail-status{flex-direction:column;display:flex}.viewport{background-color:var(--bg-main);flex-direction:column;flex-grow:1;display:flex;position:relative}.top-nav{background-color:var(--bg-main);justify-content:space-between;align-items:center;padding:20px 48px;display:flex}.brand-logo{font-family:var(--font-display);color:var(--primary);letter-spacing:.02em;font-size:1.5rem;font-weight:900}.main-nav{gap:32px;display:flex}.nav-link{color:var(--text-dim);letter-spacing:.05em;padding-bottom:8px;font-size:.85rem;font-weight:800;text-decoration:none;position:relative}.nav-link.active{color:var(--primary)}.nav-link.active:after{content:"";background-color:var(--primary);border-radius:2px;height:3px;position:absolute;bottom:0;left:0;right:0}.user-actions{gap:16px;display:flex}.round-btn{background:var(--bg-card);width:44px;height:44px;color:var(--primary);cursor:pointer;border:none;border-radius:50%;justify-content:center;align-items:center;display:flex;box-shadow:0 4px 12px #0000000d}.content-scroller{flex-grow:1;width:100%;max-width:none;padding:8px 48px 80px;overflow-y:auto}.content-header{justify-content:space-between;align-items:center;margin-top:20px;margin-bottom:40px;display:flex}.header-main h1{letter-spacing:-.04em;color:var(--text-main);margin:0;font-size:3rem;font-weight:900}.header-main p{color:var(--text-dim);margin:5px 0 0;font-size:1rem;font-weight:600}.items-total-pill{border-radius:var(--round-md);background:#3b82f61a;align-items:center;gap:12px;padding:12px 24px;display:flex}.items-total-pill #items-count{color:var(--primary);font-size:1.75rem;font-weight:800}.items-total-pill .label{color:var(--text-dim);font-size:.6rem;font-weight:800;line-height:1.1}.category-group{margin-bottom:40px}.category-title{color:var(--primary);border-bottom:1px solid var(--outline);letter-spacing:.1em;margin-bottom:24px;padding-bottom:12px;font-size:.9rem;font-weight:900}.item-grid{flex-direction:column;gap:12px;display:flex}.item-card{background:var(--bg-card);border-radius:var(--round-md);box-shadow:var(--shadow-card);cursor:pointer;align-items:center;padding:24px;transition:transform .2s cubic-bezier(.4,0,.2,1);display:flex;position:relative;overflow:hidden}.item-card:before{content:"";background:#7b2600;width:0;transition:width .3s;position:absolute;top:0;bottom:0;left:0}.item-card.low-stock{background:var(--bg-card-highlight)}.item-card.low-stock:before{width:6px}.check-container{border:1px solid var(--outline);border-radius:var(--round-sm);background:var(--bg-card);flex-shrink:0;justify-content:center;align-items:center;width:44px;height:44px;margin-right:24px;display:flex}.item-card.completed .check-container{background:var(--primary);color:#fff}.item-card.completed .item-info h4{opacity:.6;text-decoration:line-through}.item-info{flex-grow:1}.item-info h4{margin:0;font-size:1.25rem;font-weight:800}.item-info .meta{color:var(--text-dim);margin-top:4px;font-size:.85rem;font-weight:600}.badge-low-stock{background:var(--bg-running-low-pill);color:var(--accent-running-low);border-radius:100px;margin-left:12px;padding:4px 8px;font-size:.6rem;font-weight:900}.card-actions{color:var(--text-dim);opacity:.4;font-size:1.5rem}.floating-interface{z-index:1000;align-items:center;gap:24px;display:flex;position:fixed;top:40px;right:48px}.voice-active-bubble{-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#121214f2;border:1px solid #00000005;border-radius:100px;align-items:center;gap:24px;padding:12px 32px 12px 12px;transition:opacity .3s,transform .3s;display:flex;box-shadow:0 12px 32px #00000014}.voice-active-bubble.hidden{opacity:0;pointer-events:none;transform:translateY(20px)}.mic-icon-circle{color:#fff;background:#0036a1;border-radius:50%;justify-content:center;align-items:center;width:60px;height:60px;display:flex}.voice-text .label{color:var(--primary);letter-spacing:.05em;font-size:.6rem;font-weight:800}.voice-text p{font-family:var(--font-display);color:var(--text-main);margin:2px 0 0;font-size:1.1rem;font-style:italic;font-weight:700}.action-stack{align-items:center;gap:16px;display:flex}.type-item-pill{background:var(--bg-card);border:1px solid var(--outline);color:var(--primary);letter-spacing:.02em;cursor:pointer;border-radius:12px;align-items:center;gap:16px;padding:16px 24px;font-size:.9rem;font-weight:800;display:flex;box-shadow:0 8px 24px #0000000a}.main-fab{background:var(--primary);color:#fff;cursor:pointer;border:none;border-radius:50%;justify-content:center;align-items:center;width:80px;height:80px;transition:transform .2s;display:flex;box-shadow:0 12px 32px #004dcb4d}.main-fab i,.main-fab svg{stroke-width:3px;width:32px;height:32px}.main-fab:active{transform:scale(.9)}
