:root{--glass-bg: rgba(255, 255, 255, .05);--glass-border: rgba(255, 255, 255, .1);--glass-blur: blur(12px);--accent-blue: #3498db;--accent-red: #e74c3c;--accent-green: #2ecc71;--accent-orange: #f39c12;--accent-purple: #9b59b6;--text-primary: #ffffff;--text-secondary: #bdc3c7;--bg-gradient: linear-gradient(135deg, #0f0c29 0%, #302b63 50%, #24243e 100%);--view-padding: 4px}button,input,select,textarea{background:none;color:inherit;border:none;padding:0;font:inherit;cursor:pointer;outline:inherit}*{box-sizing:border-box;margin:0;padding:0}body{font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;background:var(--bg-gradient);background-attachment:fixed;color:var(--text-primary);min-height:100vh;-webkit-font-smoothing:antialiased}#root{display:flex;flex-direction:column;min-height:100vh}.app-container{display:flex;flex-direction:column;padding:20px 20px 110px;max-width:600px;margin:0 auto;width:100%}.glass-input{display:flex;align-items:center;gap:12px;background:var(--glass-bg);backdrop-filter:var(--glass-blur);-webkit-backdrop-filter:var(--glass-blur);border:1px solid var(--glass-border);padding:12px 16px;border-radius:14px;transition:border-color .2s}.glass-input:focus-within{border-color:var(--accent-blue)}.glass-input input{background:transparent;border:none;color:#fff;width:100%;outline:none;font-size:1rem}.glass-input input::placeholder{color:#ffffff4d}.custom-btn{display:flex;align-items:center;justify-content:center;gap:8px;padding:12px 20px;border-radius:14px;border:none;font-weight:600;cursor:pointer;transition:transform .1s,opacity .2s,background .2s}.custom-btn:active{transform:scale(.97)}.custom-btn:disabled{opacity:.5;cursor:not-allowed}.primary-btn{background:var(--accent-blue);color:#fff}.danger-btn{background:#e74c3c26;color:var(--danger-red);border:1px solid rgba(231,76,60,.3)}.glass-btn{background:var(--glass-bg);color:#fff;border:1px solid var(--glass-border);-webkit-backdrop-filter:var(--glass-blur);backdrop-filter:var(--glass-blur)}.glass-nav{position:fixed;bottom:24px;left:50%;transform:translate(-50%);width:calc(100% - 40px);max-width:400px;display:flex;justify-content:space-around;padding:12px;background:#0f0c29b3;backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border:1px solid rgba(255,255,255,.1);border-radius:28px;z-index:100;box-shadow:0 10px 30px #00000080}.glass-nav button{background:transparent;border:none;color:var(--text-secondary);display:flex;flex-direction:column;align-items:center;gap:6px;font-size:.75rem;font-weight:500}.glass-nav button.active{color:var(--accent-blue)}.glass-header{margin-bottom:24px}.glass-header h1{font-size:1.6rem;margin-bottom:20px;background:linear-gradient(to right,#fff,#3498db);background-clip:text;-webkit-background-clip:text;-webkit-text-fill-color:transparent;font-weight:800}.home-view .welcome{margin-bottom:32px}.home-view .welcome h2{font-size:1.8rem;margin-bottom:12px}.home-view .welcome .add-new-btn{margin-bottom:24px}.box-grid{display:flex;flex-direction:column;gap:14px}.glass-card{background:var(--glass-bg);backdrop-filter:var(--glass-blur);-webkit-backdrop-filter:var(--glass-blur);border:1px solid var(--glass-border);border-radius:18px;box-shadow:0 8px 32px #0000004d}.box-card{padding:18px;display:flex;align-items:center;gap:18px;cursor:pointer;transition:transform .2s,border-color .2s}.box-card:hover{transform:translateY(-3px);border-color:#fff3}.box-header{display:flex;flex-direction:column;align-items:flex-start;gap:4px;padding:2px 0 2px 14px;border-left:4px solid var(--accent-blue);min-width:80px}.box-id{font-weight:700;font-size:1rem;opacity:.7}.box-titles{display:flex;flex-direction:column;align-items:flex-start}.label-title-text{font-weight:800;font-size:1rem;color:#fff;line-height:1.2;margin-bottom:2px}.box-content{flex:1}.item-count{font-size:.9rem;color:var(--text-secondary);margin-bottom:8px}.item-preview{display:flex;flex-wrap:wrap;gap:8px}.item-tag{background:#ffffff14;padding:4px 10px;border-radius:8px;font-size:.8rem;color:var(--text-secondary)}.overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#000000b3;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);z-index:1000;display:flex;align-items:center;justify-content:center;padding:20px}@media(max-width:600px){.overlay{align-items:flex-end;padding:0}.modal-content{border-radius:28px 28px 0 0;width:100%;border-bottom:none}}.modal-content{width:100%;max-width:500px;background:#121225;border:1px solid rgba(255,255,255,.1);border-radius:24px;padding:0;max-height:90vh;display:flex;flex-direction:column;overflow:hidden;box-shadow:0 20px 60px #0009}.modal-header{padding:24px;display:flex;justify-content:space-between;align-items:flex-start;border-bottom:1px solid rgba(255,255,255,.05)}.modal-body{padding:24px;overflow-y:auto;flex:1}.box-settings-row{display:flex;flex-direction:column;gap:8px;margin-bottom:20px}.box-settings-row label{font-size:.9rem;font-weight:500;color:var(--text-secondary)}.add-item-form-row{margin-bottom:20px}.input-with-btn{display:flex;gap:10px}.input-with-btn .glass-input{flex:1}.detail-tabs{display:flex;background:#ffffff0d;padding:4px;border-radius:12px;margin-bottom:24px}.detail-tabs button{flex:1;padding:10px;border:none;background:transparent;color:var(--text-secondary);border-radius:10px;font-weight:600;cursor:pointer;transition:all .2s}.detail-tabs button.active{background:#ffffff1a;color:#fff;box-shadow:0 4px 12px #0003}.item-list{list-style:none;padding:0;display:flex;flex-direction:column;gap:10px}.item-row{padding:14px 18px;display:flex;justify-content:space-between;align-items:center}.delete-item-btn{color:#fff6;transition:color .2s}.delete-item-btn:hover{color:var(--danger-red)}.empty-list{text-align:center;color:var(--text-secondary);padding:20px;font-size:.9rem}.action-footer{padding:24px;display:flex;gap:14px;border-top:1px solid rgba(255,255,255,.05);background:#0000001a}.close-icon-btn{background:#ffffff0d;border:none;color:#fff;padding:8px;border-radius:50%;cursor:pointer;display:flex;align-items:center;justify-content:center}.close-icon-btn:hover{background:#ffffff1a}.danger-zone{margin-top:40px;padding-top:24px;border-top:1px solid rgba(255,100,100,.2)}.danger-zone .hint{color:#ffbaba;font-size:.85rem;margin-bottom:12px;opacity:.8}.home-view,.printer-view,.settings-view{padding:var(--view-padding)}.palette-row{display:flex;gap:12px;margin-top:8px;flex-wrap:wrap}.palette-btn{width:36px;height:36px;border-radius:50%;border:2px solid transparent;cursor:pointer;transition:all .2s;position:relative}.palette-btn.active{border-color:#fff;transform:scale(1.1);box-shadow:0 0 15px #ffffff4d}.palette-btn.active:after{content:"✓";position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);color:#fff;font-weight:700;font-size:14px}.printing-options,.settings-card{padding:24px;margin-top:20px;display:flex;flex-direction:column;gap:20px}.action-buttons{display:flex;flex-direction:column;gap:12px}.option-row{display:flex;flex-direction:column;gap:8px}.option-row label{font-size:.9rem;font-weight:500;color:var(--text-secondary)}.layout-toggle{display:flex;background:#ffffff0d;padding:4px;border-radius:12px}.layout-toggle button{flex:1;padding:10px;border:none;background:transparent;color:var(--text-secondary);border-radius:10px;font-weight:600;cursor:pointer}.layout-toggle button.active{background:#ffffff1a;color:#fff;box-shadow:0 4px 12px #0003}.box-listselection{display:flex;flex-direction:column;gap:10px;margin-top:15px;max-height:400px;overflow-y:auto;padding:2px}.selection-list-item{display:flex;align-items:center;gap:15px;padding:12px 16px;cursor:pointer;transition:all .2s;border:1px solid var(--glass-border)}.selection-list-item.selected{background:#3498db1a;border-color:var(--accent-blue)}.selection-list-item .item-prefix{display:flex;align-items:center;gap:10px;padding-left:10px;border-left:4px solid var(--accent-blue)}.box-titles-mini{display:flex;flex-direction:column}.label-title-mini{font-size:.75rem;font-weight:800;color:#fff;line-height:1.2}.selection-list-item .box-num{font-weight:700;font-size:.9rem;opacity:.7}.selection-list-item .item-info{flex:1}.selection-list-item .items-text{font-size:.85rem;color:var(--text-secondary)}.selection-indicator{display:flex;align-items:center}.selection-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:4px}.selection-actions{display:flex;gap:12px}.color-filter-bar{display:flex;gap:8px;overflow-x:auto;padding-bottom:8px;scrollbar-width:none}.color-filter-bar::-webkit-scrollbar{display:none}.filter-chip{display:flex;align-items:center;gap:6px;padding:8px 14px;background:var(--glass-bg);border:1px solid var(--glass-border);border-radius:20px;font-size:.8rem;white-space:nowrap;cursor:pointer;transition:all .2s;color:var(--text-secondary);font-weight:500}.filter-chip.active{background:var(--accent-blue);color:#fff;border-color:var(--accent-blue)}.filter-chip .dot{width:8px;height:8px;border-radius:50%}.preview-info{margin-top:20px;padding:15px;background:#ffffff08;border-radius:12px;font-size:.85rem;color:var(--text-secondary);line-height:1.5}.floating-scan{position:fixed;bottom:100px;right:24px;z-index:99}.scan-btn{width:68px;height:68px;border-radius:50%;background:var(--accent-blue);box-shadow:0 8px 24px #3498db66}.spin{animation:spin 1s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.scanner-overlay{position:fixed;top:0;left:0;width:100%;height:100%;background:#000;z-index:1000;display:flex;flex-direction:column}.scanner-container{position:relative;width:100%;height:100vh}#reader{width:100%!important;height:100%!important;border:none!important}#reader video{width:100%!important;height:100%!important;object-fit:cover!important}.scanner-ui{position:absolute;top:0;left:0;width:100%;height:100%;pointer-events:none;display:flex;flex-direction:column;justify-content:center;align-items:center}.close-scanner-btn{position:absolute;top:30px;right:20px;background:#00000080;border:none;color:#fff;width:48px;height:48px;border-radius:50%;display:flex;align-items:center;justify-content:center;cursor:pointer;pointer-events:auto;z-index:1001}.scanner-guide{display:flex;flex-direction:column;align-items:center;gap:20px}.guide-box{width:250px;height:250px;border:3px solid var(--accent-blue);border-radius:20px;box-shadow:0 0 0 1000px #0009;position:relative}.scanner-guide p{color:#fff;font-size:1.1rem;font-weight:600;text-shadow:0 2px 4px rgba(0,0,0,.8)}
