:root{--primary-color: #4CAF50;--primary-dark: #388E3C;--primary-light: #81C784;--error-color: #f44336;--warning-color: #ff9800;--bg-color: #f5f5f5;--card-bg: #ffffff;--text-primary: #212121;--text-secondary: #757575;--border-color: #e0e0e0;--shadow: 0 2px 4px rgba(0,0,0,.1);--shadow-lg: 0 4px 8px rgba(0,0,0,.15)}*{box-sizing:border-box;margin:0;padding:0}body{margin:0;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,Hiragino Sans,Hiragino Kaku Gothic ProN,Yu Gothic,Meiryo,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background-color:var(--bg-color);color:var(--text-primary);overflow-x:hidden}#root{min-height:100vh;display:flex;flex-direction:column}button{font-family:inherit;cursor:pointer;border:none;outline:none;transition:all .2s ease}button:active{transform:scale(.98)}input,textarea,select{font-family:inherit;font-size:16px;border:1px solid var(--border-color);border-radius:4px;padding:8px 12px;outline:none}input:focus,textarea:focus,select:focus{border-color:var(--primary-color)}.container{max-width:600px;margin:0 auto;padding:16px}.card{background:var(--card-bg);border-radius:8px;padding:16px;margin-bottom:16px;box-shadow:var(--shadow)}.btn{padding:12px 24px;border-radius:8px;font-size:16px;font-weight:500;display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:48px}.btn-primary{background:var(--primary-color);color:#fff}.btn-primary:hover{background:var(--primary-dark)}.btn-secondary{background:var(--text-secondary);color:#fff}.btn-danger{background:var(--error-color);color:#fff}.btn-outline{background:transparent;color:var(--primary-color);border:2px solid var(--primary-color)}.btn-block{width:100%}.btn:disabled{opacity:.5;cursor:not-allowed}.header{background:var(--primary-color);color:#fff;padding:16px;box-shadow:var(--shadow)}.header h1{font-size:20px;font-weight:600}.low-confidence{border:2px solid var(--warning-color)!important;background-color:#fff3e0}.spinner{border:3px solid var(--border-color);border-top:3px solid var(--primary-color);border-radius:50%;width:40px;height:40px;animation:spin 1s linear infinite;margin:20px auto}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.error-message{background:#ffebee;color:var(--error-color);padding:12px;border-radius:4px;margin:16px 0;border-left:4px solid var(--error-color)}.success-message{background:#e8f5e9;color:var(--primary-dark);padding:12px;border-radius:4px;margin:16px 0;border-left:4px solid var(--primary-color)}video{width:100%;max-width:100%;border-radius:8px}.modal-overlay{position:fixed;inset:0;background:#000000b3;display:flex;align-items:center;justify-content:center;z-index:1000;padding:16px}.modal-content{background:var(--card-bg);border-radius:8px;padding:24px;max-width:500px;width:100%;max-height:90vh;overflow-y:auto}.home-page{min-height:100vh}.mode-selection{margin:24px 0}.mode-selection h2{font-size:18px;margin-bottom:16px;color:var(--text-primary)}.mode-card{background:var(--card-bg);border-radius:12px;padding:20px;margin-bottom:16px;box-shadow:var(--shadow);cursor:pointer;transition:all .2s ease;border:2px solid transparent}.mode-card:active{transform:scale(.98)}.mode-card:hover{box-shadow:var(--shadow-lg);border-color:var(--primary-color)}.mode-icon{font-size:48px;margin-bottom:12px}.mode-card h3{font-size:20px;margin-bottom:8px;color:var(--text-primary)}.mode-desc{color:var(--text-secondary);margin-bottom:12px;font-size:14px}.mode-features{display:flex;gap:8px;flex-wrap:wrap}.feature-tag{background:var(--primary-light);color:#fff;padding:4px 12px;border-radius:12px;font-size:12px;font-weight:500}.quick-actions{display:flex;flex-direction:column;gap:12px;margin:24px 0}.info-card{background:#e3f2fd;border-radius:8px;padding:16px;margin-top:24px;border-left:4px solid #2196F3}.info-card h4{color:#1976d2;margin-bottom:12px;font-size:16px}.info-card ul{list-style:none;padding:0}.info-card li{margin-bottom:8px;font-size:14px;line-height:1.5;color:var(--text-primary)}.info-card strong{color:#1976d2}.receipt-scan-page{min-height:100vh;padding-bottom:32px}.info-banner{background:#fff3e0;border-left:4px solid var(--warning-color);padding:12px;border-radius:4px;margin-bottom:24px}.info-banner p{font-size:13px;line-height:1.5;color:var(--text-primary);margin:0}.capture-section{text-align:center}.capture-placeholder{background:var(--card-bg);border:2px dashed var(--border-color);border-radius:12px;padding:48px 24px;margin-bottom:24px}.placeholder-icon{font-size:64px;margin-bottom:16px}.capture-placeholder p{color:var(--text-secondary);font-size:16px}.preview-section{margin-bottom:24px}.image-preview{background:var(--card-bg);border-radius:8px;padding:16px;margin-bottom:16px;box-shadow:var(--shadow)}.image-preview img{width:100%;border-radius:4px;display:block}.preview-actions{display:flex;gap:12px}.preview-actions button{flex:1}.processing-section{text-align:center;padding:48px 24px}.processing-text{font-size:18px;font-weight:600;color:var(--text-primary);margin:24px 0 16px}.progress-bar{background:var(--border-color);height:8px;border-radius:4px;overflow:hidden;margin:0 auto 8px;max-width:300px}.progress-fill{background:var(--primary-color);height:100%;transition:width .3s ease}.progress-text{font-size:14px;color:var(--text-secondary);margin-bottom:8px}.processing-hint{font-size:13px;color:var(--text-secondary);font-style:italic}.tips-section{background:var(--card-bg);border-radius:8px;padding:16px;margin-top:24px;box-shadow:var(--shadow)}.tips-section h3{font-size:16px;color:var(--text-primary);margin-bottom:12px}.tips-section ul{list-style:none;padding:0;margin:0}.tips-section li{font-size:14px;color:var(--text-secondary);margin-bottom:8px;padding-left:20px;position:relative}.tips-section li:before{content:"•";position:absolute;left:8px;color:var(--primary-color)}.review-page{min-height:100vh;padding-bottom:32px}.mode-badge{background:var(--primary-light);color:#fff;padding:8px 16px;border-radius:8px;display:inline-block;margin-bottom:16px;font-weight:600}.items-review-list{margin-bottom:16px}.item-review-card{background:var(--card-bg);border-radius:8px;padding:16px;margin-bottom:12px;box-shadow:var(--shadow);border:2px solid transparent}.low-confidence-card{border-color:var(--warning-color);background:#fff8e1}.item-header{display:flex;align-items:center;gap:8px;margin-bottom:12px}.item-number{font-weight:600;color:var(--primary-color)}.delete-btn{background:transparent;border:none;font-size:18px;padding:4px;cursor:pointer;margin-left:auto}.form-row{display:flex;gap:8px;margin-bottom:12px}.form-group{flex:1;min-width:0}.form-group label{display:block;font-size:12px;font-weight:600;color:var(--text-secondary);margin-bottom:4px}.form-group input,.form-group select{width:100%}.flex-1{flex:1}.btn-library{background:var(--primary-light);color:#fff;border:none;padding:8px 12px;border-radius:6px;font-size:18px;cursor:pointer;align-self:flex-end;margin-bottom:0}.item-footer{display:flex;justify-content:space-between;align-items:center;padding-top:8px;border-top:1px solid var(--border-color);font-size:13px}.subtotal{font-weight:600;color:var(--text-primary)}.confidence{color:var(--text-secondary);font-size:11px}.note-section{margin:24px 0}.note-section label{display:block;font-weight:600;margin-bottom:8px;color:var(--text-primary)}.note-section textarea{width:100%;resize:vertical}.summary-section{background:var(--card-bg);border-radius:8px;padding:16px;margin-bottom:16px;box-shadow:var(--shadow)}.summary-row{display:flex;justify-content:space-between;padding:8px 0;font-size:14px}.summary-row.total{border-top:2px solid var(--border-color);margin-top:8px;padding-top:12px;font-size:18px;color:var(--primary-color)}.btn-lg{padding:16px 24px;font-size:18px}.search-input{width:100%;margin-bottom:16px}.picker-list{max-height:400px;overflow-y:auto;margin-bottom:16px}.picker-item{padding:12px;border:1px solid var(--border-color);border-radius:6px;margin-bottom:8px;cursor:pointer;transition:all .2s}.picker-item:hover{background:var(--bg-color);border-color:var(--primary-color)}.picker-item:active{transform:scale(.98)}.picker-item-meta{font-size:12px;color:var(--text-secondary);margin-top:4px}.location-section{margin-bottom:24px}.location-section label{display:block;margin-bottom:8px;font-weight:600;color:var(--text-color)}.location-picker-wrapper{display:flex;gap:8px}.location-input{flex:1;cursor:pointer;background-color:#fff;padding:12px;border:1px solid var(--border-color);border-radius:6px;font-size:14px}.btn-select-location{padding:10px 20px;background-color:#f0f0f0;border:1px solid var(--border-color);border-radius:6px;cursor:pointer;transition:all .2s;font-size:14px;white-space:nowrap}.btn-select-location:hover{background-color:#e0e0e0}.btn-select-location:active{transform:scale(.98)}.location-list{max-height:400px;overflow-y:auto;margin-bottom:16px}.location-item{padding:16px;border-bottom:1px solid var(--border-color);cursor:pointer;display:flex;justify-content:space-between;align-items:center;transition:background-color .2s}.location-item:hover{background-color:#f5f5f5}.location-item:last-child{border-bottom:none}.location-item.selected{background-color:#e3f2fd;color:#1976d2;font-weight:600}.check-mark{color:#1976d2;font-size:20px;font-weight:700}.custom-input-section{padding:16px 0}.custom-input-section label{display:block;margin-bottom:8px;font-weight:600}.custom-input-section input{width:100%;padding:12px;border:1px solid var(--border-color);border-radius:6px;font-size:14px}.custom-actions{display:flex;gap:12px;margin-top:16px}.custom-actions button{flex:1}.location-group-label{padding:12px 16px 8px;font-size:12px;font-weight:600;color:#999;text-transform:uppercase;letter-spacing:.5px}.location-item.custom{display:flex;justify-content:space-between;align-items:center}.location-item-actions{display:flex;align-items:center;gap:8px}.btn-delete-location{background:none;border:none;cursor:pointer;padding:4px 8px;font-size:16px;opacity:.6;transition:opacity .2s}.btn-delete-location:hover{opacity:1}.autocomplete-dropdown{position:absolute;top:100%;left:0;right:0;background:#fff;border:1px solid var(--border-color);border-radius:6px;box-shadow:0 4px 12px #00000026;max-height:200px;overflow-y:auto;z-index:1000;margin-top:4px}.autocomplete-item{padding:10px 12px;cursor:pointer;border-bottom:1px solid var(--border-color);transition:background-color .2s}.autocomplete-item:last-child{border-bottom:none}.autocomplete-item:hover{background-color:#f0f7ff}.autocomplete-item:active{background-color:#e3f2fd}.detail-toggle-section{margin-top:12px;padding-top:12px;border-top:1px dashed var(--border-color)}.btn-toggle-details{width:100%;background:transparent;border:1px solid var(--border-color);border-radius:6px;padding:8px 12px;cursor:pointer;font-size:13px;color:var(--text-secondary);transition:all .2s;text-align:left}.btn-toggle-details:hover{background:var(--bg-color);color:var(--primary-color);border-color:var(--primary-color)}.detail-edit-section{margin-top:12px;padding:16px;background:#f8f9fa;border-radius:6px;border:1px solid var(--border-color)}.detail-group{margin-bottom:16px}.detail-group:last-child{margin-bottom:0}.detail-group h4{font-size:14px;font-weight:600;color:var(--text-primary);margin-bottom:12px;padding-bottom:8px;border-bottom:1px solid var(--border-color)}.btn-calculate{background:var(--primary-color);color:#fff;border:none;padding:8px 16px;border-radius:6px;cursor:pointer;font-size:13px;white-space:nowrap;transition:all .2s}.btn-calculate:hover{background:var(--primary-dark)}.btn-calculate:active{transform:scale(.98)}.validation-warning-banner{background:#fff3cd;border:2px solid #ffc107;border-radius:8px;padding:16px;margin-bottom:16px;box-shadow:0 2px 8px #ffc10733}.warning-header{display:flex;align-items:center;gap:8px;margin-bottom:12px}.warning-icon{font-size:24px}.warning-header strong{font-size:16px;color:#856404}.warning-detail{background:#fff;padding:12px;border-radius:6px;margin-bottom:8px;font-size:14px}.warning-label{font-weight:600;color:#856404;display:block;margin-bottom:4px}.warning-value{color:#333}.warning-action{margin-top:12px}.warning-action p{font-size:14px;color:#856404;margin-bottom:8px}.btn-add-missing{background:#ffc107;color:#212121;border:none;padding:10px 16px;border-radius:6px;cursor:pointer;font-weight:600;font-size:14px;transition:all .2s;width:100%}.btn-add-missing:hover{background:#ffb300;transform:translateY(-1px);box-shadow:0 2px 8px #ffc1074d}.btn-add-missing:active{transform:translateY(0)}.price-warning-banner{background:#e3f2fd;border:2px solid #2196f3;border-radius:8px;padding:16px;margin-bottom:16px;box-shadow:0 2px 8px #2196f333}.price-warning-banner .warning-header{display:flex;align-items:center;gap:8px;margin-bottom:8px}.price-warning-banner .warning-icon{font-size:24px}.price-warning-banner .warning-header strong{font-size:16px;color:#1565c0}.warning-badge{font-size:12px;font-weight:700;animation:pulse 2s infinite}@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}.coupon-badge{font-size:12px;font-weight:700;background:#d4edda;color:#155724;padding:4px 8px;border-radius:4px;display:inline-block;margin-left:8px}.price-breakdown{padding:12px;background:#f8f9fa;border-radius:6px;margin-top:12px;font-size:13px;border-left:3px solid #28a745}.price-row{display:flex;justify-content:space-between;margin-bottom:6px;align-items:center}.price-row.discount{color:#d32f2f}.price-row.final{font-weight:600;border-top:1px solid #e0e0e0;padding-top:8px;margin-top:4px;font-size:14px}.price-row.coupon-name{margin-top:-4px;margin-bottom:8px}.form-group input[type=number]{min-height:44px;padding:8px 12px;font-size:16px;border:1px solid var(--border-color);border-radius:6px;-webkit-appearance:none;appearance:none;background-color:#fff}.form-group input[type=number]:focus{outline:none;border-color:var(--primary-color);box-shadow:0 0 0 2px #007aff33}.form-group input:disabled,.form-group input:read-only{background-color:#f5f5f5;color:#999;cursor:not-allowed}.smart-query-page{padding:20px;max-width:1200px;margin:0 auto;min-height:100vh;background:#f5f5f5}.smart-query-page .header{display:flex;align-items:center;gap:15px;margin-bottom:30px}.smart-query-page .back-btn{padding:8px 15px;background:#fff;border:1px solid #ddd;border-radius:6px;cursor:pointer;font-size:14px;transition:all .3s}.smart-query-page .back-btn:hover{background:#f0f0f0}.smart-query-page h1{margin:0;font-size:24px;color:#333}.search-section{margin-bottom:30px;text-align:center}.search-box{display:flex;gap:10px;max-width:600px;margin:0 auto}.search-input{flex:1;padding:12px 20px;font-size:16px;border:2px solid #ddd;border-radius:25px;outline:none;transition:border-color .3s}.search-input:focus{border-color:#1976d2}.search-btn{padding:12px 30px;background:#1976d2;color:#fff;border:none;border-radius:25px;font-size:16px;cursor:pointer;transition:background .3s;white-space:nowrap}.search-btn:hover{background:#1565c0}.results-info{text-align:center;margin-bottom:20px;color:#666;font-size:14px}.subtype-card{background:#fff;border-radius:12px;padding:20px;margin-bottom:20px;box-shadow:0 2px 8px #0000001a}.subtype-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:15px;padding-bottom:10px;border-bottom:2px solid #f0f0f0}.subtype-header h3{margin:0;color:#333;font-size:20px}.item-count{color:#666;font-size:14px;background:#f0f0f0;padding:4px 12px;border-radius:12px}.stats-row{display:flex;gap:15px;margin-bottom:20px;flex-wrap:wrap}.stat-mini{flex:1;min-width:100px;padding:12px;background:#f5f5f5;border-radius:8px;text-align:center;transition:transform .2s}.stat-mini:hover{transform:translateY(-2px)}.stat-mini.best{background:#e8f5e9;border:1px solid #4caf50}.stat-mini .label{display:block;font-size:12px;color:#666;margin-bottom:5px}.stat-mini .value{display:block;font-size:18px;font-weight:700;color:#333}.stat-mini.best .value{color:#2e7d32}.recharts-wrapper{margin-bottom:15px}.toggle-details-btn{width:100%;padding:10px;margin-top:15px;background:#f5f5f5;border:1px solid #ddd;border-radius:6px;cursor:pointer;font-size:14px;transition:all .3s;color:#666}.toggle-details-btn:hover{background:#e0e0e0;color:#333}.detail-table{width:100%;margin-top:15px;border-collapse:collapse}.detail-table th{background:#f5f5f5;padding:10px;text-align:left;font-size:14px;color:#666;border-bottom:2px solid #ddd;font-weight:600}.detail-table td{padding:10px;border-bottom:1px solid #eee;font-size:14px;color:#333}.detail-table tr:hover{background:#fafafa}.detail-table tr.best-price{background:#e8f5e9}.detail-table tr.best-price td{color:#2e7d32;font-weight:500}.warning-icon{margin-left:5px;color:#ff9800;cursor:help}.custom-tooltip{background:#fff;padding:10px 15px;border:1px solid #ddd;border-radius:6px;box-shadow:0 2px 8px #00000026}.custom-tooltip p{margin:5px 0;font-size:13px;color:#333}.custom-tooltip .date{font-weight:600;color:#1976d2}.custom-tooltip .warning{color:#ff9800}.missing-data-section{margin-top:30px;padding:20px;background:#fff3cd;border:1px solid #ffc107;border-radius:8px}.missing-data-section h3{margin:0 0 10px;color:#856404;font-size:18px}.missing-data-section .hint{margin:0 0 15px;color:#856404;font-size:14px}.missing-data-list{display:flex;flex-direction:column;gap:10px}.missing-data-item{display:flex;justify-content:space-between;align-items:center;padding:12px;background:#fff;border:1px solid #ddd;border-radius:6px}.missing-data-item .item-info{flex:1}.missing-data-item .name{display:block;font-weight:700;color:#333;margin-bottom:5px}.missing-data-item .meta{display:block;font-size:12px;color:#666}.edit-form{display:flex;gap:8px;align-items:center}.edit-form input{width:80px;padding:6px 10px;border:1px solid #ddd;border-radius:4px;font-size:14px}.edit-form select{padding:6px 10px;border:1px solid #ddd;border-radius:4px;font-size:14px}.edit-btn,.save-btn,.cancel-btn{padding:6px 15px;border:none;border-radius:4px;font-size:14px;cursor:pointer;transition:all .3s}.edit-btn{background:#1976d2;color:#fff}.edit-btn:hover{background:#1565c0}.save-btn{background:#4caf50;color:#fff}.save-btn:hover{background:#45a049}.cancel-btn{background:#f5f5f5;color:#333}.cancel-btn:hover{background:#e0e0e0}.loading-state,.empty-state{text-align:center;padding:60px 20px;color:#666}.loading-state p,.empty-state p{font-size:16px;margin:10px 0}.empty-state .hint{font-size:14px;color:#999}@media (max-width: 768px){.smart-query-page{padding:15px}.smart-query-page h1{font-size:20px}.stats-row{flex-direction:column}.stat-mini{min-width:100%}.search-box{flex-direction:column}.search-input,.search-btn{width:100%}.missing-data-item{flex-direction:column;align-items:flex-start;gap:10px}.edit-form{width:100%;flex-wrap:wrap}.edit-form input,.edit-form select,.edit-btn,.save-btn,.cancel-btn{flex:1;min-width:70px}.detail-table{font-size:12px}.detail-table th,.detail-table td{padding:8px 5px}.subtype-header{flex-direction:column;align-items:flex-start;gap:8px}.item-count{align-self:flex-start}.detail-table .product-name-cell{max-width:150px;font-size:14px}}.custom-tooltip .product-name{font-weight:700;color:#333;margin-bottom:8px;font-size:14px}.detail-table .product-name-cell{font-weight:500;color:#1976d2;max-width:200px;word-break:break-word}.custom-tooltip .subtype{font-size:13px;margin-bottom:5px}.details-by-subtype{margin-top:20px}.subtype-detail-section{margin-bottom:30px}.subtype-detail-section h4{margin:0 0 15px;font-size:18px;padding-bottom:10px;border-bottom:2px solid #f0f0f0}.subtype-detail-section:last-child{margin-bottom:0}.clickable-subtype{transition:opacity .2s}.clickable-subtype:hover{opacity:.8}.selection-hint{padding:8px;background:#f8f9fa;border-radius:6px;margin-bottom:12px}.data-management-page{max-width:600px;margin:0 auto;padding:20px;min-height:100vh;background:#fafafa}.data-management-page .header{display:flex;align-items:center;gap:16px;margin-bottom:24px}.data-management-page .btn-back{background:none;border:none;font-size:16px;color:#4caf50;cursor:pointer;padding:8px;transition:all .2s}.data-management-page .btn-back:hover{background:#f5f5f5;border-radius:4px}.data-management-page h1{margin:0;font-size:24px;color:#333}.data-management-page .container{display:flex;flex-direction:column;gap:16px}.info-card,.result-card,.help-card{background:#fff;border-radius:8px;padding:20px;box-shadow:0 2px 8px #0000000d}.info-card h3,.result-card h3,.help-card h4{margin-top:0;color:#333;font-size:18px}.info-card p{margin:8px 0;color:#666;line-height:1.6;font-size:15px}.result-card ul{list-style:none;padding:0;margin:12px 0}.result-card li{margin:10px 0;font-size:16px;color:#666}.result-card li strong{color:#333}.result-card .tip{margin-top:16px;padding:12px;background:#e8f5e9;border-radius:4px;color:#2e7d32;line-height:1.5;font-size:15px}.result-card .link-btn{background:none;border:none;color:#4caf50;text-decoration:underline;cursor:pointer;padding:0;margin:0 4px;font-size:inherit;font-weight:500}.result-card .link-btn:hover{color:#388e3c}.help-card details{margin:12px 0;cursor:pointer}.help-card summary{font-weight:500;padding:8px;color:#555;user-select:none;border-radius:4px;transition:background .2s}.help-card summary:hover{background:#f5f5f5}.help-card details[open] summary{margin-bottom:8px;color:#4caf50}.help-card details p{margin:0 0 0 24px;color:#666;line-height:1.6;font-size:14px;padding:8px 0}@media (max-width: 768px){.data-management-page{padding:16px}.data-management-page h1{font-size:22px}.info-card,.result-card,.help-card{padding:16px}.info-card h3,.result-card h3,.help-card h4{font-size:16px}}.history-page{max-width:600px;margin:0 auto;padding:20px;min-height:100vh;background:#fafafa}.history-page .header{display:flex;align-items:center;justify-content:space-between;margin-bottom:24px}.history-page .header h1{margin:0;font-size:24px;color:#333}.btn-back{background:none;border:none;color:#4caf50;cursor:pointer;padding:8px;font-size:16px;transition:all .2s}.btn-back:hover{background:#f5f5f5;border-radius:4px}.btn-export{background:#4caf50;color:#fff;border:none;padding:8px 16px;border-radius:4px;cursor:pointer;font-size:14px;transition:all .2s}.btn-export:hover{background:#388e3c}.loading{text-align:center;padding:40px;color:#666;font-size:16px}.empty-state{text-align:center;padding:60px 20px}.empty-state p{color:#666;font-size:16px;margin-bottom:24px}.empty-state .btn{display:inline-block;padding:12px 24px;border-radius:4px;text-decoration:none;cursor:pointer;transition:all .2s}.empty-state .btn-primary{background:#4caf50;color:#fff;border:none}.sessions-list{margin-top:16px}.session-card{background:#fff;border-radius:8px;margin-bottom:12px;box-shadow:0 2px 8px #0000000d;overflow:hidden}.session-header{padding:16px;cursor:pointer;display:flex;justify-content:space-between;align-items:flex-start;transition:background .2s}.session-header:hover{background:#fafafa}.session-info{flex:1}.session-date{font-size:14px;font-weight:600;color:#333;margin-bottom:8px}.session-meta{display:flex;gap:12px;font-size:13px;color:#666;flex-wrap:wrap}.btn-delete{background:#ff5252;color:#fff;border:none;padding:6px 12px;border-radius:4px;cursor:pointer;font-size:12px;transition:all .2s}.btn-delete:hover{background:#e64545}.session-items{padding:16px;background:#fafafa;border-top:1px solid #eee}.item-row{padding:12px;background:#fff;border-radius:4px;margin-bottom:8px}.item-display{display:flex;justify-content:space-between;align-items:center;gap:12px}.item-info{flex:1;display:flex;flex-direction:column;gap:4px}.item-name{font-weight:500;color:#333;font-size:15px}.item-category{color:#666;font-size:13px}.item-actions{display:flex;align-items:center;gap:12px}.item-price{font-weight:600;color:#4caf50;font-size:15px}.btn-edit{background:none;border:1px solid #4CAF50;color:#4caf50;padding:4px 8px;border-radius:4px;cursor:pointer;font-size:12px;transition:all .2s}.btn-edit:hover{background:#4caf50;color:#fff}.item-edit-form{display:flex;flex-direction:column;gap:8px}.item-edit-form input{padding:8px;border:1px solid #ddd;border-radius:4px;font-size:14px;transition:border-color .2s}.item-edit-form input:focus{outline:none;border-color:#4caf50}.edit-buttons{display:flex;gap:8px}.btn-save{flex:1;padding:8px;background:#4caf50;color:#fff;border:none;border-radius:4px;cursor:pointer;font-size:13px;transition:all .2s}.btn-save:hover{background:#388e3c}.btn-cancel{flex:1;padding:8px;background:#ff5252;color:#fff;border:none;border-radius:4px;cursor:pointer;font-size:13px;transition:all .2s}.btn-cancel:hover{background:#e64545}@media (max-width: 768px){.history-page{padding:16px}.history-page .header h1{font-size:20px}.btn-export{padding:6px 12px;font-size:12px}.session-header{flex-direction:column;gap:12px}.btn-delete{align-self:flex-end}.item-display{flex-direction:column;align-items:flex-start}.item-actions{width:100%;justify-content:space-between}}
