*{margin:0;padding:0;box-sizing:border-box}body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;background:#f5f5f5;color:#333}.container{max-width:1400px;margin:0 auto;padding:20px}header{display:flex;justify-content:space-between;align-items:center;margin-bottom:24px;flex-wrap:wrap;gap:12px}.header-left{display:flex;align-items:center;gap:24px;flex-wrap:wrap}header h1{font-size:24px;font-weight:600}.meal-tabs{display:flex;gap:4px;background:#f3f4f6;border-radius:10px;padding:4px}.meal-tab{padding:8px 24px;font-size:15px;font-weight:600;font-family:inherit;border:none;border-radius:8px;cursor:pointer;background:transparent;color:#666;transition:all .2s}.meal-tab:hover{color:#333}.meal-tab.active{background:#fff;color:#e5a200;box-shadow:0 1px 3px #0000001a}.header-right{display:flex;align-items:center;gap:16px}.date-info{font-size:14px;color:#666}.settings-wrapper{position:relative}.settings-toggle{position:relative;display:flex;align-items:center;justify-content:center;width:40px;height:40px;border:none;border-radius:10px;background:#f3f4f6;color:#555;cursor:pointer;transition:background .2s}.settings-toggle:hover{background:#e5e7eb}.settings-dot{position:absolute;top:6px;right:6px;width:8px;height:8px;border-radius:50%;background:#22c55e}.settings-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:99}.settings-dropdown{position:absolute;right:0;top:48px;z-index:100;background:#fff;border-radius:12px;box-shadow:0 4px 24px #00000026;padding:20px;width:280px}.settings-dropdown h4{font-size:15px;font-weight:600;margin-bottom:16px;color:#333}.settings-checkbox{display:flex;align-items:center;gap:10px;margin-bottom:16px;cursor:pointer;font-size:14px}.settings-checkbox input{width:18px;height:18px;accent-color:#16a34a;cursor:pointer}.settings-field{margin-bottom:14px}.settings-field label{display:block;font-size:12px;font-weight:600;color:#888;text-transform:uppercase;letter-spacing:.04em;margin-bottom:6px}.settings-field select{width:100%;padding:8px 12px;border:1px solid #ddd;border-radius:8px;font-size:14px;font-family:inherit;background:#fff}.settings-field select:disabled{opacity:.5}.settings-field input[type=range]{width:100%;accent-color:#16a34a}.settings-field input[type=range]:disabled{opacity:.4}.settings-test-btn{width:100%;padding:10px;font-size:14px;font-weight:500;font-family:inherit;color:#4472c4;background:#e8f0fe;border:none;border-radius:8px;cursor:pointer;transition:background .2s}.settings-test-btn:hover{background:#d0e1fd}.settings-test-btn:disabled{opacity:.4;cursor:not-allowed}.main-layout{display:flex;gap:24px;align-items:flex-start}.main-content{flex:1;min-width:0}.stats{display:flex;gap:16px;margin-bottom:24px;flex-wrap:wrap}.stat-card{background:#fff;border-radius:12px;padding:16px 24px;flex:1;min-width:140px;box-shadow:0 1px 3px #00000014}.stat-card .value{font-size:32px;font-weight:700}.stat-card .label{font-size:13px;color:#888;margin-top:4px}.stat-card.total .value{color:#333}.stat-card.checked .value{color:#22c55e}.stat-card.pending .value{color:#f59e0b}.stat-card.unmatched .value{color:#ef4444}.table-wrapper{background:#fff;border-radius:12px;box-shadow:0 1px 3px #00000014;overflow:hidden;margin-bottom:24px}.table-wrapper h2{padding:16px 20px 12px;font-size:18px;font-weight:600;border-bottom:1px solid #eee}table{width:100%;border-collapse:collapse}th{text-align:left;padding:12px 16px;font-size:12px;font-weight:600;text-transform:uppercase;letter-spacing:.05em;color:#888;border-bottom:1px solid #eee;background:#fafafa}td{padding:10px 16px;font-size:14px;border-bottom:1px solid #f0f0f0}tr:last-child td{border-bottom:none}tr.row-checked{background:#f0fdf4}tr.row-unmatched{background:#fef2f2}.status-badge{display:inline-flex;align-items:center;gap:6px;padding:4px 10px;border-radius:20px;font-size:12px;font-weight:500}.status-badge.checked{background:#dcfce7;color:#16a34a}.status-badge.pending{background:#fef3c7;color:#d97706}.status-badge.no-order{background:#fee2e2;color:#dc2626}.time{font-size:13px;color:#666;font-variant-numeric:tabular-nums}.refresh-info{text-align:center;font-size:12px;color:#aaa;padding:16px}.top-row{display:flex;gap:24px;margin-bottom:24px;align-items:stretch}.last-event{flex:1;background:#fff;border:3px solid #e5e7eb;border-radius:16px;padding:28px 32px;text-align:center;box-shadow:0 2px 8px #0000000f}.last-event.has-order{border-color:#22c55e;background:#f0fdf4}.last-event.no-order{border-color:#ef4444;background:#fef2f2}.last-event-label{font-size:13px;font-weight:600;text-transform:uppercase;letter-spacing:.08em;color:#888;margin-bottom:12px}.last-event-body{display:flex;align-items:center;gap:24px;justify-content:center}.last-event-photo{flex-shrink:0;width:200px;align-self:stretch;border-radius:12px;overflow:hidden;border:3px solid rgba(0,0,0,.1)}.last-event-photo img,.last-event-avatar{width:100%;height:100%;object-fit:cover;display:block}.last-event-info{text-align:left}.last-event-name{font-size:28px;font-weight:700;color:#111;margin-bottom:8px}.last-event-details{display:flex;justify-content:center;gap:16px;margin-bottom:12px;flex-wrap:wrap}.last-event-position{font-size:16px;color:#555}.last-event-company{font-size:16px;color:#888}.last-event-meta{display:flex;justify-content:center;gap:24px;margin-bottom:12px}.last-event-door{font-size:14px;color:#666}.last-event-time{font-size:18px;font-weight:600;color:#333;font-variant-numeric:tabular-nums}.last-event-status{display:inline-block;padding:6px 20px;border-radius:24px;font-size:14px;font-weight:600}.last-event-status.ok{background:#dcfce7;color:#16a34a}.last-event-status.warn{background:#fee2e2;color:#dc2626}.last-event-empty{font-size:16px;color:#aaa;padding:20px}.archive-notice{flex:1;display:flex;align-items:center;justify-content:center;background:#fff;border:2px dashed #d1d5db;border-radius:16px;padding:28px 32px;font-size:20px;font-weight:600;color:#666}.back-today-btn{display:inline-block;margin-bottom:16px;padding:8px 20px;font-size:14px;font-weight:500;color:#4472c4;background:#e8f0fe;border:none;border-radius:8px;cursor:pointer;transition:background .2s}.back-today-btn:hover{background:#d0e1fd}.export-panel{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:20px;background:#fff;border:2px solid #e5e7eb;border-radius:16px;padding:28px 32px;min-width:220px;box-shadow:0 2px 8px #0000000f}.export-btn{display:flex;align-items:center;gap:10px;padding:14px 28px;font-size:16px;font-weight:600;color:#fff;background:#16a34a;border:none;border-radius:12px;cursor:pointer;transition:background .2s}.export-btn:hover{background:#15803d}.export-btn:disabled{background:#ccc;cursor:not-allowed}.export-stats{display:flex;flex-direction:column;gap:6px;font-size:14px;color:#666;text-align:center}.export-stats strong{color:#333}.history-panel{width:240px;flex-shrink:0;background:#fff;border-radius:12px;box-shadow:0 1px 3px #00000014;overflow:hidden;position:sticky;top:20px;max-height:calc(100vh - 40px);overflow-y:auto}.history-title{padding:16px 16px 12px;font-size:15px;font-weight:600;color:#333;border-bottom:1px solid #eee}.history-list{padding:8px}.history-item{display:flex;justify-content:space-between;align-items:center;width:100%;padding:10px 12px;margin-bottom:2px;border:none;border-radius:8px;background:transparent;cursor:pointer;transition:background .15s;font-family:inherit;text-align:left}.history-item:hover{background:#f3f4f6}.history-item.selected{background:#e8f0fe;border-left:3px solid #4472C4}.history-item.today .history-date{font-weight:700;color:#16a34a}.history-date{font-size:13px;color:#333;font-weight:500}.history-stats{display:flex;flex-direction:column;align-items:flex-end;gap:2px}.history-total{font-size:16px;font-weight:700;color:#333}.history-checked{font-size:11px;color:#16a34a;font-weight:500}.history-empty{padding:20px;text-align:center;color:#aaa;font-size:13px}.row-clickable{cursor:pointer}.row-clickable:hover td{background:#00000008}.modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:#00000080;z-index:200}.modal-content{position:fixed;top:50%;left:50%;transform:translate(-50%,-50%);z-index:201;background:#fff;border-radius:16px;padding:24px;box-shadow:0 8px 40px #00000040;text-align:center;max-width:400px;width:90%}.modal-close{position:absolute;top:12px;right:16px;font-size:28px;background:none;border:none;cursor:pointer;color:#999;line-height:1}.modal-close:hover{color:#333}.modal-photo{width:100%;max-height:350px;object-fit:contain;border-radius:12px;margin-bottom:16px}.modal-no-photo{display:flex;flex-direction:column;align-items:center;gap:12px;margin-bottom:16px;color:#aaa}.modal-info{text-align:center}.modal-name{font-size:20px;font-weight:700;margin-bottom:6px}.modal-detail{font-size:14px;color:#666}.modal-time{margin-top:8px;font-size:16px;font-weight:600;color:#333}.manual-header{display:flex;justify-content:space-between;align-items:center;padding:16px 20px 12px;border-bottom:1px solid #eee}.manual-header h2{padding:0;border:none}.manual-add-btn{padding:6px 16px;font-size:13px;font-weight:600;font-family:inherit;color:#fff;background:#4472c4;border:none;border-radius:8px;cursor:pointer}.manual-add-btn:hover{background:#3a62a8}.manual-form{display:flex;gap:8px;padding:12px 20px;flex-wrap:wrap;border-bottom:1px solid #eee}.manual-form input{padding:8px 12px;border:1px solid #ddd;border-radius:8px;font-size:14px;font-family:inherit;flex:1;min-width:140px}.manual-form input:focus{outline:none;border-color:#4472c4}.manual-form-actions{display:flex;gap:8px}.manual-save-btn{padding:8px 20px;font-size:13px;font-weight:600;font-family:inherit;color:#fff;background:#16a34a;border:none;border-radius:8px;cursor:pointer}.manual-save-btn:disabled{opacity:.6}.manual-cancel-btn{padding:8px 16px;font-size:13px;font-family:inherit;color:#666;background:#f3f4f6;border:none;border-radius:8px;cursor:pointer}.row-manual{background:#fffbeb}.manual-delete-btn{background:none;border:none;font-size:20px;color:#ccc;cursor:pointer;padding:0 4px}.manual-delete-btn:hover{color:#ef4444}.manual-empty{padding:20px;text-align:center;color:#bbb;font-size:13px}.empty-state{text-align:center;padding:60px 20px;color:#aaa}.empty-state p{font-size:16px}@media (max-width: 768px){.container{padding:12px}header h1{font-size:20px}.main-layout{flex-direction:column}.history-panel{width:100%;position:static;max-height:none}.history-list{display:flex;flex-wrap:wrap;gap:4px}.history-item{width:auto;flex:0 0 auto}.top-row{flex-direction:column;gap:16px}.export-panel{min-width:auto}.last-event-name{font-size:22px}.stats{gap:8px}.stat-card{padding:12px 16px;min-width:100px}.stat-card .value{font-size:24px}th,td{padding:8px 10px;font-size:13px}.col-company,.col-position{display:none}}
