:root{color-scheme:light;font-family:Segoe UI,Yu Gothic,sans-serif;line-height:1.5;font-weight:400;background-color:#f6f7fb;color:#1a1a1a}*{box-sizing:border-box}.app-shell{min-height:100vh;display:flex;flex-direction:column}.app-header{background:#ffffff;border-bottom:1px solid #e1e4eb;padding:16px 32px;justify-content:space-between;gap:16px}.app-header,.scenario-select{display:flex;align-items:center}.scenario-select{gap:12px;flex-wrap:wrap}.scenario-select label{display:flex;align-items:center;gap:6px;padding:6px 10px;border-radius:16px;border:1px solid #d3d9e5;background:#f4f6fb;cursor:pointer;font-size:.9rem}.scenario-select input{accent-color:#2267d8}.main-area{padding:32px;display:grid;grid-template-columns:minmax(0,2fr) minmax(0,1.1fr);gap:24px;flex:1}.column{background:#ffffff;padding:24px;box-shadow:0 8px 24px rgba(15,23,42,.06);display:flex;flex-direction:column;gap:24px}.column h2{margin:0;font-size:1.35rem}form{gap:18px}.field,form{display:flex;flex-direction:column}.field{gap:8px;margin-bottom:20px}.field.compact-field{margin-bottom:0}.field label{font-weight:600;font-size:.95rem}.field input{border-radius:3px;border:1px solid #c9d3ea;padding:11px 14px;font-size:1rem;transition:border-color .2s ease}.field input:focus,.field select:focus{outline:none;border:2px;box-shadow:0 0 0 2px rgba(34,103,216,.15)}.field select{border-radius:10px;border:1px solid #c9d3ea;padding:11px 14px;font-size:1rem;background:#ffffff;transition:border-color .2s ease}.checkbox-field{display:flex;align-items:center;gap:10px;font-size:.95rem}.checkbox-field input{width:18px;height:18px}.cta-button{background:linear-gradient(135deg,#2267d8,#0f3a9f);color:#ffffff;border:none;border-radius:12px;padding:14px;font-size:1rem;font-weight:600;cursor:pointer;transition:transform .2s ease,box-shadow .2s ease;display:inline-flex;align-items:center;justify-content:center;gap:8px}.cta-button:hover:enabled{transform:translateY(-1px);box-shadow:0 8px 20px rgba(34,103,216,.35)}.cta-button:disabled{opacity:.6;cursor:not-allowed;box-shadow:none}.link-button{background:none;border:none;color:#2267d8;padding:0;font-size:.95rem;cursor:pointer}.message{padding:14px 16px;font-size:.95rem;border:1px solid transparent}.message.error{background:#ffecec;border-color:#ffb8b8;color:#bf1a1a}.message.info{background:#edf4ff;border-color:#b9d0ff;color:#0f3a9f}.message.success{background:#e9fbf0;border-color:#a7e7c0;color:#096e3f}.guest-card,.register-card{padding:18px;background:#f4f8ff;border:1px solid #d9e5ff;display:flex;flex-direction:column;gap:12px}.guest-card h3,.register-card h3{margin:0;font-size:1.05rem}.guest-card p,.register-card p{margin:0;font-size:.95rem;color:#334160}.supporting-info{background:#f8fafc;border-radius:14px;padding:18px;border:1px dashed #b8c2d6;display:flex;flex-direction:column;gap:12px}.return-summary{background:#f1f5ff;border:1px solid #c7d4ff;border-radius:12px;padding:16px;font-size:.95rem;display:grid;gap:6px}.return-summary strong{font-size:1.05rem}.cart-visual{background:#ffffff;border-radius:12px;padding:16px;border:1px solid #e1e4eb;display:flex;flex-direction:column;gap:10px;font-size:.92rem}.cart-visual .highlight{color:#0f3a9f;font-weight:600}.login-footer{background:#f1f3f8;padding:20px 32px;border-top:1px solid #d6dbe7;display:flex;justify-content:center;gap:24px;font-size:.9rem}.event-log{gap:12px}.event-log,.event-log ul{display:flex;flex-direction:column}.event-log ul{list-style:none;padding:0;margin:0;max-height:180px;overflow-y:auto;gap:8px}.event-log li{background:#f6f7fb;border:1px solid #d8deec;border-radius:10px;padding:8px 10px;font-size:.85rem}.pill{font-size:.75rem;font-weight:600;border-radius:10px;padding:3px 8px}.pill.success{background:#e2f6eb;color:#0f7d46}.pill.info{background:#dce9ff;color:#214a9b}.pill.error{background:#ffe3e3;color:#b91c1c}.toolbox{display:flex;gap:10px;flex-wrap:wrap}.tag{background:#e4ebff;color:#1a3d9c;padding:3px 8px;font-size:.75rem;font-weight:600}.stacked{gap:10px}.registration-email-form,.stacked{display:flex;flex-direction:column}.registration-email-form{gap:12px}.registration-form{gap:20px}.form-section,.registration-form{display:flex;flex-direction:column}.form-section{gap:14px}.form-section h4{margin:0;color:#1f2a44}.form-grid{display:flex;flex-direction:column;gap:12px}.registration-form textarea{resize:vertical;min-height:72px;font-family:inherit;border-radius:10px;border:1px solid #c9d3ea;padding:11px 14px}.registration-form textarea:focus{outline:none;border-color:#2267d8;box-shadow:0 0 0 2px rgba(34,103,216,.15)}.radio-field{border:none;padding:0;margin:0 0 20px}.radio-field legend{font-weight:600;font-size:.95rem;margin-bottom:12px}.radio-group{display:flex;flex-direction:row;flex-wrap:wrap;gap:20px}.radio-option{display:flex;align-items:center;gap:10px;font-size:.95rem;padding:8px 12px;border-radius:8px;transition:background-color .2s ease}.radio-option:hover{background-color:rgba(34,103,216,.05)}.radio-option input[type=radio]{accent-color:#2267d8}.description-text{margin:0;color:#4c5973;font-size:.93rem}.message-caption{font-size:.85rem;margin-top:4px}.mfa-timestamp{font-size:.85rem}.benefits-list{margin:0;padding-left:20px;color:#334160}.password-reset-popup-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:rgba(0,0,0,.5);display:flex;align-items:center;justify-content:center;z-index:1000}.password-reset-popup{background:#ffffff;padding:32px;max-width:600px;width:90%;box-shadow:0 16px 48px rgba(15,23,42,.15);display:flex;flex-direction:column;gap:20px;position:relative}.password-reset-popup .popup-close-button{position:absolute;top:16px;right:16px;background:transparent;border:none;font-size:28px;color:#6b7280;cursor:pointer;padding:4px 8px;line-height:1;transition:color .2s ease}.password-reset-popup .popup-close-button:hover{color:#1a1a1a}.password-reset-popup h3{margin:0;font-size:1.25rem;color:#1a1a1a;padding-right:40px}.password-reset-content{display:flex;flex-direction:column;gap:16px}.password-reset-popup p{margin:0;font-size:.95rem;color:#4c5973;line-height:1.7}.password-reset-popup strong{color:#1a1a1a;font-weight:600}.password-reset-image-container{margin:8px 0;border:1px solid #e5e7eb;border-radius:8px;overflow:hidden;background:#f9fafb}.password-reset-guide-image{width:100%;height:auto;display:block}.password-reset-popup-actions{display:flex;flex-direction:column;gap:12px;margin-top:8px}.password-reset-popup-actions .cta-button{text-decoration:none;text-align:center}.password-reset-popup-actions .link-button{text-align:center;padding:8px}@media (max-width:1024px){.main-area{grid-template-columns:1fr}.app-header{align-items:flex-start;gap:12px}.app-header,.form-grid{flex-direction:column}}