@import"https://fonts.googleapis.com/css2?family=Cormorant+Garamond:wght@300&family=Noto+Sans+JP:wght@300&display=swap";:root{--color-bg: #fafafa;--color-surface: #ffffff;--color-primary: #000000;--color-secondary: #1a1a1a;--color-muted: #767676;--color-border: #d4d4d4;--color-accent: #c8a97e;--color-success: #2e7d32;--color-disabled: #bdbdbd}*{box-sizing:border-box;border-radius:0}body{margin:0;font-family:Noto Sans JP,sans-serif;font-weight:300;background:var(--color-bg);color:var(--color-secondary)}.page-center{min-height:100vh;display:flex;align-items:center;justify-content:center}.login-box{width:min(420px,90%);background:var(--color-surface);border:1px solid var(--color-border);padding:48px}.brand-title{font-family:Cormorant Garamond,serif;font-weight:300;letter-spacing:.15em;color:var(--color-primary)}h1.brand-title{text-align:center;margin:0 0 32px;font-size:44px}.password-input{width:100%;border:none;border-bottom:1px solid var(--color-primary);background:transparent;font-size:24px;padding:12px 0;margin-bottom:20px;outline:none}.primary-button,.secondary-button,.checkin-button{background:transparent;border:1px solid var(--color-primary);color:var(--color-primary);letter-spacing:.2em;padding:12px 48px;cursor:pointer;transition:all .2s}.primary-button:hover,.checkin-button:hover:not(:disabled),.secondary-button:hover{background:var(--color-primary);color:var(--color-bg)}.primary-button:disabled,.checkin-button:disabled,.secondary-button:disabled{border-color:var(--color-disabled);color:var(--color-disabled);cursor:not-allowed;background:transparent}.error-text{color:#b00020;margin:12px 0}.muted{color:var(--color-muted)}.stale-notice{color:#8a6d3b;background:#fff8e8;border:1px solid #f0e0b8;padding:10px 12px;margin:12px 0;font-size:.92rem}.search-page{max-width:960px;margin:0 auto;padding:24px 24px 64px}.header{display:flex;justify-content:space-between;align-items:center;margin-bottom:8px}.logout-link{border:none;background:transparent;text-decoration:underline;color:var(--color-secondary);cursor:pointer}.stats{text-align:right;margin-bottom:20px}.stats-detail{display:block;margin-top:4px;font-size:12px;color:var(--color-muted)}.search-bar-wrap{display:flex;align-items:center;border-bottom:1px solid var(--color-primary);margin-bottom:24px}.search-input{border:none;background:transparent;font-size:24px;width:100%;padding:12px 0;outline:none}.clear-button{border:none;background:transparent;color:var(--color-muted);cursor:pointer;font-size:24px}.customer-card{border:1px solid var(--color-border);box-shadow:0 1px 4px #0000000f;padding:32px;margin-bottom:16px;background:var(--color-surface);transition:transform .2s ease,box-shadow .2s ease}.customer-card.pulse{animation:pulse .9s ease}@keyframes pulse{0%{transform:scale(1)}45%{transform:scale(1.01);box-shadow:0 0 0 2px #2e7d3233}to{transform:scale(1)}}.customer-card.checked-in{opacity:.55}.customer-card.partially-checked-in{border-color:var(--color-accent)}.card-header{display:flex;justify-content:space-between;align-items:flex-start;gap:12px}.customer-name{margin:0;font-size:30px;font-weight:300}.customer-kana{margin:6px 0 0;color:var(--color-muted);font-size:14px}.checked-badge{background:var(--color-primary);color:var(--color-bg);font-size:11px;letter-spacing:.1em;padding:3px 10px;white-space:nowrap}.checked-badge.partial{background:var(--color-accent);color:var(--color-primary)}.card-meta{margin:20px 0 16px;display:flex;gap:28px;flex-wrap:wrap}.card-note{margin:0 0 24px;padding:12px 14px;border-left:2px solid var(--color-accent);background:#faf8f5;color:var(--color-secondary)}.card-note-label{display:block;margin-bottom:6px;font-size:12px;color:var(--color-muted);letter-spacing:.08em}.card-note-text{margin:0;font-size:14px;line-height:1.6;white-space:pre-wrap}.card-action{text-align:center}.modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#0006;display:flex;align-items:center;justify-content:center;padding:24px}.modal-box{width:min(520px,100%);background:var(--color-surface);border:1px solid var(--color-border);padding:28px}.modal-text{margin:0 0 12px;font-size:20px;line-height:1.6}.modal-subtext{margin:0 0 20px;color:var(--color-muted);font-size:14px}.modal-note{margin:16px 0 0;color:var(--color-muted);font-size:13px}.count-selector{display:flex;flex-wrap:wrap;gap:10px}.arrival-selector{display:flex;flex-direction:column;gap:10px}.arrival-option{display:flex;align-items:center;gap:10px;border:1px solid var(--color-border);padding:12px 14px;cursor:pointer;transition:all .2s}.arrival-option input{margin:0}.arrival-option.selected{border-color:var(--color-primary);background:#faf8f5}.update-checkin-panel{margin-bottom:8px}.count-option{min-width:72px;border:1px solid var(--color-border);background:transparent;color:var(--color-secondary);padding:12px 16px;cursor:pointer;transition:all .2s}.count-option:hover:not(:disabled){border-color:var(--color-primary)}.count-option.selected{background:var(--color-primary);border-color:var(--color-primary);color:var(--color-bg)}.count-option:disabled{border-color:var(--color-disabled);color:var(--color-disabled);cursor:not-allowed}.modal-actions{display:flex;justify-content:flex-end;gap:12px}
