:root{--background: 240 10% 3.9%;--foreground: 0 0% 98%;--card: 240 10% 3.9%;--card-foreground: 0 0% 98%;--popover: 240 10% 3.9%;--popover-foreground: 0 0% 98%;--primary: 240 3.7% 25%;--primary-foreground: 0 0% 90%;--secondary: 240 3.7% 15.9%;--secondary-foreground: 0 0% 98%;--muted: 240 3.7% 15.9%;--muted-foreground: 240 5% 64.9%;--accent: 240 3.7% 15.9%;--accent-foreground: 0 0% 98%;--destructive: 0 62.8% 30.6%;--destructive-foreground: 0 0% 98%;--border: 240 3.7% 15.9%;--input: 240 3.7% 15.9%;--ring: 240 4.9% 83.9%;--radius: .5rem;--chart-1: 220 70% 50%;--chart-2: 160 60% 45%;--chart-3: 30 80% 55%;--chart-4: 280 65% 60%;--chart-5: 340 75% 55%;--safe-bottom: env(safe-area-inset-bottom, 0px);--shadow-opacity: .3;color-scheme:dark}[data-theme=light]{--background: 0 0% 100%;--foreground: 240 10% 3.9%;--card: 0 0% 100%;--card-foreground: 240 10% 3.9%;--popover: 0 0% 100%;--popover-foreground: 240 10% 3.9%;--primary: 240 5.9% 10%;--primary-foreground: 0 0% 98%;--secondary: 240 4.8% 95.9%;--secondary-foreground: 240 5.9% 10%;--muted: 240 4.8% 95.9%;--muted-foreground: 240 3.8% 46.1%;--accent: 240 4.8% 95.9%;--accent-foreground: 240 5.9% 10%;--destructive: 0 84.2% 60.2%;--destructive-foreground: 0 0% 98%;--border: 240 5.9% 90%;--input: 240 5.9% 90%;--ring: 240 5.9% 10%;--shadow-opacity: .08;color-scheme:light}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0;border-color:hsl(var(--border))}html,body{height:100%;overflow:hidden}body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Noto Sans SC,Helvetica,Arial,sans-serif;background:hsl(var(--background));color:hsl(var(--foreground));-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;-webkit-tap-highlight-color:transparent;-webkit-user-select:none;user-select:none;font-size:.875rem;line-height:1.5}#app{height:100%;position:relative}.page{position:absolute;top:0;right:0;bottom:0;left:0;bottom:calc(56px + var(--safe-bottom));overflow-y:auto;overflow-x:hidden;-webkit-overflow-scrolling:touch;opacity:0;visibility:hidden;transition:opacity .15s ease}.page.active{opacity:1;visibility:visible}#bottom-nav{position:fixed;bottom:0;left:0;right:0;height:calc(56px + var(--safe-bottom));padding-bottom:var(--safe-bottom);background:hsl(var(--card));border-top:1px solid hsl(var(--border));display:flex;z-index:100}.nav-btn{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;background:none;border:none;color:hsl(var(--muted-foreground));font-size:.625rem;font-family:inherit;cursor:pointer;transition:color .15s}.nav-btn.active{color:hsl(var(--foreground))}.nav-btn svg{width:20px;height:20px}.page-header{position:sticky;top:0;z-index:10;padding:1rem;background:hsl(var(--background) / .95);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border-bottom:1px solid hsl(var(--border))}.page-title{font-size:1.125rem;font-weight:600;letter-spacing:-.025em;line-height:1.75rem}.page-subtitle{font-size:.8rem;color:hsl(var(--muted-foreground));margin-top:.125rem}.page-title-icon{width:1.25rem;height:1.25rem;vertical-align:-.2em;margin-right:.375rem;display:inline-block}.filter-icon{width:.875rem;height:.875rem;vertical-align:-.15em;margin-right:.25rem;display:inline-block}.btn{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;white-space:nowrap;font-size:.875rem;font-weight:500;font-family:inherit;cursor:pointer;border:none;outline:none;border-radius:var(--radius);transition:background .15s,color .15s,opacity .15s}.btn:disabled{pointer-events:none;opacity:.5}.btn:focus-visible{outline:2px solid hsl(var(--ring));outline-offset:2px}.btn-default{height:2.25rem;padding:0 1rem;background:hsl(var(--primary));color:hsl(var(--primary-foreground))}.btn-default:active{opacity:.9}.btn-secondary{height:2.25rem;padding:0 1rem;background:hsl(var(--secondary));color:hsl(var(--secondary-foreground));border:none}.btn-secondary:active{opacity:.8}.btn-outline{height:2.25rem;padding:0 1rem;background:transparent;border:1px solid hsl(var(--input));color:hsl(var(--foreground))}.btn-outline:active{background:hsl(var(--accent))}.btn-ghost{height:2.25rem;padding:0 1rem;background:transparent;color:hsl(var(--foreground))}.btn-ghost:active{background:hsl(var(--accent))}.btn-destructive,.btn-batch-delete{height:2rem;padding:0 .75rem;background:hsl(var(--destructive));color:hsl(var(--destructive-foreground));font-weight:500;font-size:.75rem}.btn-destructive:active,.btn-batch-delete:not(:disabled):active{opacity:.9}.btn-icon{width:2.25rem;height:2.25rem;padding:0;background:transparent;color:hsl(var(--muted-foreground))}.btn-icon:active{background:hsl(var(--accent));color:hsl(var(--foreground))}.btn-submit{display:inline-flex;align-items:center;justify-content:center;height:2.5rem;padding:0 1rem;border-radius:var(--radius);font-size:.875rem;font-weight:500;font-family:inherit;cursor:pointer;background:transparent;border:1px solid hsl(var(--input));color:hsl(var(--foreground));transition:background .15s,color .15s,opacity .15s}.btn-submit:active{background:hsl(var(--accent))}.btn-submit .spinner{display:none;width:1rem;height:1rem;border:2px solid hsl(var(--muted-foreground) / .3);border-top-color:hsl(var(--foreground));border-radius:50%;animation:spin .6s linear infinite}.btn-submit.loading .btn-text{display:none}.btn-submit.loading .spinner{display:inline-block}@keyframes spin{to{transform:rotate(360deg)}}.form-input{display:flex;width:100%;height:2.25rem;padding:.375rem .75rem;background:transparent;border:1px solid hsl(var(--input));border-radius:calc(var(--radius) - 2px);color:hsl(var(--foreground));font-size:.875rem;font-family:inherit;outline:none;transition:border-color .15s,box-shadow .15s}.form-input:focus{border-color:hsl(var(--ring));box-shadow:0 0 0 2px hsl(var(--ring) / .15)}.form-input::placeholder{color:hsl(var(--muted-foreground))}.form-input:disabled{cursor:not-allowed;opacity:.5}textarea.form-input{height:auto;min-height:5rem;padding:.5rem .75rem;resize:vertical}.form-group{display:flex;flex-direction:column;gap:.375rem}.form-group label{font-size:.875rem;font-weight:500;color:hsl(var(--foreground));letter-spacing:-.025em;line-height:1}.form-group label .required{color:#dc2828;margin-left:.125rem}.order-card{background:hsl(var(--card));border:1px solid hsl(var(--border));border-radius:calc(var(--radius) + 4px);box-shadow:0 1px 2px #0000000d;overflow:hidden}.order-card:active{background:hsl(var(--accent))}.order-card-body{display:flex;gap:.75rem;padding:.75rem}.order-tag{display:inline-flex;align-items:center;border:1px solid hsl(var(--border));padding:0 .375rem;height:1.25rem;font-size:.6875rem;font-weight:600;background:hsl(var(--secondary));color:hsl(var(--secondary-foreground));border-radius:calc(var(--radius) - 2px);white-space:nowrap}.order-category{display:inline-flex;align-items:center;padding:0 .375rem;height:1.25rem;font-size:.6875rem;font-weight:600;background:hsl(var(--secondary));color:hsl(var(--secondary-foreground));border:1px solid transparent;border-radius:9999px}.tag-chip{display:inline-flex;align-items:center;gap:.125rem;height:1.375rem;padding:0 .375rem;background:hsl(var(--secondary));color:hsl(var(--secondary-foreground));border:1px solid hsl(var(--border));border-radius:calc(var(--radius) - 2px);font-size:.75rem;font-weight:500}.tag-chip button{background:none;border:none;color:hsl(var(--muted-foreground));font-size:.875rem;cursor:pointer;padding:0;line-height:1;margin-left:.125rem;border-radius:9999px}.tag-chip button:hover{color:hsl(var(--foreground))}.checkbox-wrapper{display:flex;align-items:center;cursor:pointer;position:relative;width:1rem;height:1rem;flex-shrink:0}.checkbox-wrapper input{position:absolute;opacity:0;width:0;height:0}.checkmark{width:1rem;height:1rem;border:1px solid hsl(var(--primary));border-radius:4px;transition:all .15s;display:flex;align-items:center;justify-content:center}.checkbox-wrapper input:checked+.checkmark{background:hsl(var(--primary))}.checkbox-wrapper input:checked+.checkmark:after{content:"";width:4px;height:7px;border:solid hsl(var(--primary-foreground));border-width:0 1.5px 1.5px 0;transform:rotate(45deg);margin-top:-2px}.select-wrapper{position:relative;width:100%}.select-trigger{display:flex;align-items:center;justify-content:space-between;width:100%;height:2.25rem;padding:0 .75rem;background:transparent;border:1px solid hsl(var(--input));border-radius:calc(var(--radius) - 2px);color:hsl(var(--foreground));font-size:.875rem;font-family:inherit;cursor:pointer;outline:none;transition:border-color .15s,box-shadow .15s}.select-trigger:focus,.select-trigger.open{border-color:hsl(var(--ring));box-shadow:0 0 0 2px hsl(var(--ring) / .15)}.select-value{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.select-value.placeholder{color:hsl(var(--muted-foreground))}.select-chevron{flex-shrink:0;opacity:.5;transition:transform .15s}.select-trigger.open .select-chevron{transform:rotate(180deg)}.select-content{position:absolute;top:calc(100% + 4px);left:0;right:0;background:hsl(var(--popover));color:hsl(var(--popover-foreground));border:1px solid hsl(var(--border));border-radius:var(--radius);box-shadow:0 4px 6px -1px #0000004d,0 2px 4px -2px #0000004d;z-index:50;display:none;overflow:hidden;animation:selectIn .1s ease}@keyframes selectIn{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}.select-content.open{display:block}.select-viewport{max-height:12.5rem;overflow-y:auto;padding:.25rem}.select-item{display:flex;align-items:center;gap:.5rem;padding:.375rem .5rem;font-size:.875rem;cursor:default;border-radius:calc(var(--radius) - 4px);outline:none}.select-item:hover{background:hsl(var(--accent));color:hsl(var(--accent-foreground))}.select-item-check{display:flex;align-items:center;justify-content:center;width:.875rem;flex-shrink:0;opacity:0}.select-item.selected .select-item-check{opacity:1}.autocomplete-wrapper{position:relative}.autocomplete-list{position:absolute;top:calc(100% + 4px);left:0;right:0;background:hsl(var(--popover));color:hsl(var(--popover-foreground));border:1px solid hsl(var(--border));border-radius:var(--radius);max-height:10rem;overflow-y:auto;z-index:50;display:none;padding:.25rem;box-shadow:0 4px 6px -1px #0000004d,0 2px 4px -2px #0000004d}.autocomplete-list.open{display:block}.autocomplete-item{display:flex;align-items:center;padding:.375rem .5rem;font-size:.875rem;cursor:default;border-radius:calc(var(--radius) - 4px)}.autocomplete-item:hover,.autocomplete-item:active{background:hsl(var(--accent))}.filter-section{padding:.625rem 1rem;border-bottom:1px solid hsl(var(--border))}.filter-toggle{display:flex;align-items:center;justify-content:space-between;background:none;border:none;color:hsl(var(--muted-foreground));font-size:.8125rem;font-family:inherit;width:100%;cursor:pointer;padding:.25rem 0}.filter-toggle>svg:last-child{width:1rem;height:1rem;transition:transform .15s}.filter-toggle.open>svg:last-child{transform:rotate(180deg)}.filter-panel{display:none;padding-top:.75rem;gap:.625rem;flex-direction:column}.filter-panel.open{display:flex}.filter-row{display:flex;gap:.5rem}.filter-row .filter-field{flex:1}.filter-field label{display:block;font-size:.75rem;font-weight:500;color:hsl(var(--muted-foreground));margin-bottom:.25rem}.filter-field input[type=date]{display:flex;width:100%;height:2.25rem;padding:0 .75rem;background:transparent;border:1px solid hsl(var(--input));border-radius:calc(var(--radius) - 2px);color:hsl(var(--foreground));font-size:.8125rem;font-family:inherit;outline:none;-webkit-appearance:none;-moz-appearance:none;appearance:none;color-scheme:inherit;transition:border-color .15s,box-shadow .15s}.filter-field input[type=date]:focus{border-color:hsl(var(--ring));box-shadow:0 0 0 2px hsl(var(--ring) / .15)}.datepicker-wrapper{position:relative;width:100%}.datepicker-trigger{display:flex;align-items:center;gap:.5rem;width:100%;height:2.25rem;padding:0 .75rem;background:transparent;border:1px solid hsl(var(--input));border-radius:calc(var(--radius) - 2px);color:hsl(var(--foreground));font-size:.875rem;font-family:inherit;cursor:pointer;outline:none;transition:border-color .15s,box-shadow .15s}.datepicker-trigger:focus{border-color:hsl(var(--ring));box-shadow:0 0 0 2px hsl(var(--ring) / .15)}.datepicker-trigger svg{flex-shrink:0;opacity:.5}.datepicker-text{flex:1;text-align:left;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.datepicker-text.placeholder{color:hsl(var(--muted-foreground))}.datepicker-popover{position:absolute;top:calc(100% + 4px);left:0;background:hsl(var(--popover));color:hsl(var(--popover-foreground));border:1px solid hsl(var(--border));border-radius:var(--radius);box-shadow:0 4px 6px -1px #0000004d,0 2px 4px -2px #0000004d;z-index:50;display:none;padding:.75rem;min-width:17rem;max-width:calc(100vw - 2rem);animation:selectIn .1s ease}.filter-field:last-child .datepicker-popover{left:auto;right:0}.datepicker-popover.open{display:block}.calendar-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:.5rem}.calendar-title{font-size:.875rem;font-weight:500}.calendar-nav{display:inline-flex;align-items:center;justify-content:center;width:1.75rem;height:1.75rem;background:transparent;border:1px solid hsl(var(--border));border-radius:calc(var(--radius) - 2px);color:hsl(var(--muted-foreground));cursor:pointer;transition:all .15s}.calendar-nav:hover{background:hsl(var(--accent));color:hsl(var(--foreground))}.calendar-weekdays{display:grid;grid-template-columns:repeat(7,1fr);text-align:center;margin-bottom:.25rem}.calendar-weekdays span{font-size:.75rem;color:hsl(var(--muted-foreground));font-weight:500;padding:.25rem 0}.calendar-days{display:grid;grid-template-columns:repeat(7,1fr);gap:1px}.calendar-day{display:inline-flex;align-items:center;justify-content:center;width:2rem;height:2rem;margin:0 auto;font-size:.8125rem;background:transparent;border:none;border-radius:calc(var(--radius) - 2px);color:hsl(var(--foreground));cursor:pointer;transition:all .1s}.calendar-day.empty{visibility:hidden}.calendar-day:not(.empty):hover{background:hsl(var(--accent))}.calendar-day.today{background:hsl(var(--accent));font-weight:600}.calendar-day.selected{background:hsl(var(--primary));color:hsl(var(--primary-foreground));font-weight:600}.calendar-day.selected:hover{background:hsl(var(--primary) / .9)}.calendar-footer{display:flex;justify-content:flex-end;margin-top:.5rem;padding-top:.5rem;border-top:1px solid hsl(var(--border))}.calendar-clear{display:inline-flex;align-items:center;height:1.75rem;padding:0 .5rem;background:transparent;border:none;color:hsl(var(--muted-foreground));font-size:.75rem;font-family:inherit;cursor:pointer;border-radius:calc(var(--radius) - 2px)}.calendar-clear:hover{background:hsl(var(--accent));color:hsl(var(--foreground))}.filter-actions{display:flex;gap:.5rem;margin-top:.25rem}.filter-actions .btn{flex:1}.stats-bar{display:flex;align-items:center;padding:.5rem 1rem;font-size:.75rem;color:hsl(var(--muted-foreground))}.order-list{padding:.25rem 1rem 1.5rem;display:flex;flex-direction:column;gap:.5rem}.order-thumb{width:3.5rem;height:3.5rem;border-radius:calc(var(--radius) - 2px);object-fit:cover;flex-shrink:0;background:hsl(var(--muted));cursor:pointer}.order-info{flex:1;min-width:0;display:flex;flex-direction:column;gap:.25rem}.order-merchant{font-size:.875rem;font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;letter-spacing:-.025em}.order-meta{display:flex;align-items:center;gap:.375rem;font-size:.75rem;color:hsl(var(--muted-foreground))}.order-amount{font-size:.875rem;font-weight:600;color:hsl(var(--foreground));font-variant-numeric:tabular-nums}.order-tags{display:flex;flex-wrap:wrap;gap:.25rem;margin-top:.125rem;min-height:1.25rem}.order-date{font-size:.6875rem;color:hsl(var(--muted-foreground))}.order-actions{display:flex;justify-content:flex-end;gap:.5rem;padding:0 .75rem .625rem}.btn-delete{display:inline-flex;align-items:center;justify-content:center;height:1.75rem;padding:0 .625rem;background:transparent;border:none;color:hsl(var(--muted-foreground));font-size:.75rem;font-family:inherit;cursor:pointer;border-radius:calc(var(--radius) - 2px);transition:all .15s}.btn-delete:active{color:hsl(var(--destructive-foreground));background:hsl(var(--destructive))}.batch-bar{display:flex;align-items:center;justify-content:space-between;padding:.5rem 1rem;border-bottom:1px solid hsl(var(--border));background:hsl(var(--card));position:sticky;top:62px;z-index:5}.batch-left{display:flex;align-items:center;gap:.625rem}.batch-count{font-size:.8125rem;color:hsl(var(--muted-foreground))}.batch-right{display:flex;gap:.5rem}.btn-batch-delete{display:inline-flex;align-items:center;gap:.375rem;border:none;border-radius:calc(var(--radius) - 2px);font-family:inherit;cursor:pointer}.btn-batch-delete:disabled{opacity:.3;cursor:not-allowed}.manage-list{padding:.25rem 1rem 1.5rem;display:flex;flex-direction:column;gap:.25rem}.manage-item{display:flex;align-items:center;gap:.625rem;padding:.625rem .75rem;background:hsl(var(--card));border:1px solid hsl(var(--border));border-radius:var(--radius);transition:all .15s}.manage-item.selected{border-color:hsl(var(--ring));background:hsl(var(--accent))}.manage-thumb{width:2.75rem;height:2.75rem;border-radius:calc(var(--radius) - 2px);object-fit:cover;flex-shrink:0;background:hsl(var(--muted));cursor:pointer}.manage-info{flex:1;min-width:0;display:flex;flex-direction:column;gap:.125rem}.manage-merchant{font-size:.8125rem;font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;letter-spacing:-.025em}.manage-meta{display:flex;align-items:center;gap:.375rem;font-size:.75rem;color:hsl(var(--muted-foreground))}.manage-amount{font-weight:500;font-variant-numeric:tabular-nums}.btn-manage-edit{display:inline-flex;align-items:center;justify-content:center;width:2rem;height:2rem;background:transparent;border:none;color:hsl(var(--muted-foreground));cursor:pointer;border-radius:calc(var(--radius) - 2px);flex-shrink:0;transition:all .15s}.btn-manage-edit:active{color:hsl(var(--foreground));background:hsl(var(--accent))}.edit-header-row{display:flex;align-items:center;gap:.75rem}.btn-back{display:inline-flex;align-items:center;justify-content:center;width:2rem;height:2rem;background:transparent;border:none;color:hsl(var(--muted-foreground));cursor:pointer;border-radius:calc(var(--radius) - 2px)}.btn-back:active{background:hsl(var(--accent));color:hsl(var(--foreground))}.edit-image-section{border-radius:calc(var(--radius) + 4px);overflow:hidden;background:hsl(var(--card));border:1px solid hsl(var(--border));box-shadow:0 1px 2px #0000000d}.edit-current-image{width:100%;max-height:15rem;object-fit:contain;display:block;background:hsl(var(--muted))}.edit-image-actions{display:flex;gap:.5rem;padding:.5rem;justify-content:center;border-top:1px solid hsl(var(--border))}.btn-change-image,.btn-view-image{display:inline-flex;align-items:center;gap:.375rem;height:2rem;padding:0 .75rem;background:transparent;border:1px solid hsl(var(--input));border-radius:calc(var(--radius) - 2px);color:hsl(var(--foreground));font-size:.8125rem;font-family:inherit;font-weight:500;cursor:pointer;transition:background .15s}.btn-change-image:active,.btn-view-image:active{background:hsl(var(--accent))}.edit-actions{display:flex;flex-direction:column;gap:.625rem;margin-top:.5rem;padding-bottom:1.25rem}.btn-delete-order{display:inline-flex;align-items:center;justify-content:center;height:2.5rem;background:transparent;border:1px solid hsl(var(--destructive));border-radius:var(--radius);color:#d02f2f;font-size:.875rem;font-family:inherit;font-weight:500;cursor:pointer;transition:all .15s}.btn-delete-order:active{background:hsl(var(--destructive));color:hsl(var(--destructive-foreground))}.upload-form{padding:1rem;display:flex;flex-direction:column;gap:1rem}.image-upload-area{border:2px dashed hsl(var(--border));border-radius:calc(var(--radius) + 4px);display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:11rem;cursor:pointer;transition:all .15s;overflow:hidden;position:relative}.image-upload-area:active{border-color:hsl(var(--ring));background:hsl(var(--accent))}.image-upload-area.has-image{border:1px solid hsl(var(--border));border-radius:calc(var(--radius) + 4px);min-height:auto}.image-upload-area svg{width:2.5rem;height:2.5rem;color:hsl(var(--muted-foreground));margin-bottom:.75rem;opacity:.4}.image-upload-area p{font-size:.875rem;color:hsl(var(--muted-foreground))}.image-upload-area small{font-size:.75rem;color:hsl(var(--muted-foreground));margin-top:.25rem;opacity:.6}.upload-preview{width:100%;max-height:17.5rem;object-fit:contain}.image-upload-area input[type=file]{display:none}.upload-clear{position:absolute;top:.5rem;right:.5rem;width:1.5rem;height:1.5rem;background:hsl(var(--secondary));border:1px solid hsl(var(--border));border-radius:calc(var(--radius) - 2px);color:hsl(var(--foreground));font-size:.875rem;cursor:pointer;display:none;align-items:center;justify-content:center}.image-upload-area.has-image .upload-clear{display:flex}.image-upload-area.has-image .upload-placeholder{display:none}.tag-input-wrapper{display:flex;flex-wrap:wrap;gap:.25rem;padding:.375rem .5rem;background:transparent;border:1px solid hsl(var(--input));border-radius:calc(var(--radius) - 2px);min-height:2.25rem;align-items:center;transition:border-color .15s,box-shadow .15s}.tag-input-wrapper:focus-within{border-color:hsl(var(--ring));box-shadow:0 0 0 2px hsl(var(--ring) / .15)}.tag-input{border:none;background:none;color:hsl(var(--foreground));font-size:.875rem;font-family:inherit;outline:none;flex:1;min-width:5rem;height:1.625rem}.tag-input::placeholder{color:hsl(var(--muted-foreground))}.tag-suggestions{display:flex;flex-wrap:wrap;gap:.25rem;margin-top:.375rem}.tag-suggestion{display:inline-flex;align-items:center;height:1.5rem;padding:0 .5rem;background:transparent;border:1px solid hsl(var(--border));color:hsl(var(--muted-foreground));border-radius:calc(var(--radius) - 2px);font-size:.75rem;font-family:inherit;font-weight:500;cursor:pointer;transition:all .15s}.tag-suggestion:active{background:hsl(var(--accent));color:hsl(var(--accent-foreground));border-color:hsl(var(--ring))}.tag-suggestion.active{background:hsl(var(--primary));color:hsl(var(--primary-foreground));border-color:hsl(var(--primary))}.tag-suggestion.more-btn{border-style:dashed;color:hsl(var(--muted-foreground));opacity:.7}.tag-suggestion.more-btn:active{opacity:1}.quick-suggestions{display:flex;flex-wrap:wrap;gap:.25rem;margin-top:.375rem}.empty-state{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:3.75rem 1.25rem;color:hsl(var(--muted-foreground));text-align:center}.empty-state svg{width:3rem;height:3rem;margin-bottom:1rem;opacity:.3}.empty-state p{font-size:.875rem}.load-more{text-align:center;padding:1rem}.btn-load-more{display:inline-flex;align-items:center;justify-content:center;height:2.25rem;padding:0 1rem;background:hsl(var(--secondary));border:none;color:hsl(var(--secondary-foreground));border-radius:var(--radius);font-size:.8125rem;font-family:inherit;font-weight:500;cursor:pointer}.btn-load-more:active{opacity:.8}.image-viewer{position:fixed;top:0;right:0;bottom:0;left:0;background:hsl(var(--background) / .95);z-index:200;display:none;align-items:center;justify-content:center}.image-viewer.open{display:flex}.image-viewer img{max-width:100%;max-height:100%;object-fit:contain}.viewer-close{position:absolute;top:.75rem;right:.75rem;width:2rem;height:2rem;background:hsl(var(--secondary));border:1px solid hsl(var(--border));border-radius:calc(var(--radius) - 2px);color:hsl(var(--foreground));font-size:1.125rem;cursor:pointer;z-index:201;display:flex;align-items:center;justify-content:center}.order-detail{position:fixed;top:0;right:0;bottom:0;left:0;background:hsl(var(--background));z-index:150;display:none;flex-direction:column;overflow:hidden}.order-detail.open{display:flex}.detail-scroll{flex:1;overflow-y:auto;-webkit-overflow-scrolling:touch;padding-bottom:calc(1rem + var(--safe-bottom))}.detail-header{display:flex;align-items:center;gap:.75rem;padding:1rem;position:sticky;top:0;background:hsl(var(--background) / .95);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border-bottom:1px solid hsl(var(--border));z-index:10}.detail-header .page-title{font-size:1.125rem;font-weight:600;letter-spacing:-.025em}.detail-header .page-subtitle{font-size:.8rem;color:hsl(var(--muted-foreground));margin-top:.125rem}.detail-image{width:100%;max-height:18rem;object-fit:contain;display:block;background:hsl(var(--muted));cursor:pointer}.detail-body{padding:1rem;display:flex;flex-direction:column;gap:1rem}.detail-field{display:flex;flex-direction:column;gap:.25rem}.detail-label{font-size:.75rem;font-weight:500;color:hsl(var(--muted-foreground));letter-spacing:.025em}.detail-value{font-size:.9375rem;color:hsl(var(--foreground));line-height:1.6}.detail-value.empty{color:hsl(var(--muted-foreground));font-style:italic;opacity:.6}.detail-tags{display:flex;flex-wrap:wrap;gap:.25rem}.detail-notes{font-size:.9375rem;color:hsl(var(--foreground));line-height:1.7;white-space:pre-wrap;word-break:break-word;background:hsl(var(--secondary));border:1px solid hsl(var(--border));border-radius:var(--radius);padding:.75rem}.detail-actions{padding:0 1rem 1.25rem;display:flex;gap:.5rem}.detail-actions .btn-submit{flex:1}.toast{position:fixed;bottom:calc(72px + var(--safe-bottom));left:50%;transform:translate(-50%) translateY(.5rem);background:hsl(var(--foreground));color:hsl(var(--background));padding:.625rem 1rem;border-radius:var(--radius);font-size:.875rem;font-weight:500;box-shadow:0 10px 15px -3px #0000004d,0 4px 6px -4px #0000004d;z-index:300;opacity:0;transition:all .2s ease;pointer-events:none}.toast.show{opacity:1;transform:translate(-50%) translateY(0)}.toast.error{background:hsl(var(--destructive));color:hsl(var(--destructive-foreground))}::-webkit-scrollbar{width:4px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:hsl(var(--border));border-radius:2px}.theme-switch{display:inline-flex;align-items:center;gap:2px;background:hsl(var(--secondary));border:1px solid hsl(var(--border));border-radius:var(--radius);padding:2px}.theme-switch-btn{display:inline-flex;align-items:center;justify-content:center;width:1.75rem;height:1.75rem;border:none;background:transparent;color:hsl(var(--muted-foreground));border-radius:calc(var(--radius) - 2px);cursor:pointer;transition:all .15s;padding:0}.theme-switch-btn svg{width:14px;height:14px}.theme-switch-btn.active{background:hsl(var(--background));color:hsl(var(--foreground));box-shadow:0 1px 2px rgb(0 0 0 / var(--shadow-opacity))}.theme-switch-btn:not(.active):active{background:hsl(var(--accent))}.page-header-row{display:flex;align-items:flex-start;justify-content:space-between}@media(min-width:768px){.order-list{display:grid;grid-template-columns:repeat(2,1fr)}}@media(min-width:1024px){#app{max-width:480px;margin:0 auto}#bottom-nav{max-width:480px;left:50%;transform:translate(-50%)}}
