@keyframes fadeScaleDown{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}.success-badge{color:#059669;background-color:#ecfef6;border:1px solid #c3e6cb}.warning-badge{color:#d97706;background-color:#fffbeb;border:1px solid #fde68a}.danger-badge{color:#dc2626;background-color:#fef2f2;border:1px solid #fecaca}.card-theme{background-color:#fff;box-shadow:0 4px 12px -2px #00000014,0 0 0 .5px #0000000f}.compatibility-landing{--compat-accent:26,115,232;--compat-accent-soft:0,204,153;width:100%;max-width:1040px;margin:0 auto;padding:0 20px}.compatibility-landing[data-scenario=marriage]{--compat-accent:217,89,121;--compat-accent-soft:244,166,197}.compatibility-landing[data-scenario=business]{--compat-accent:26,115,232;--compat-accent-soft:0,163,122}.compatibility-landing[data-scenario=mother_in_law]{--compat-accent:191,120,66;--compat-accent-soft:240,194,122}.compatibility-landing[data-scenario=besties]{--compat-accent:205,70,145;--compat-accent-soft:244,153,211}.compatibility-landing[data-scenario=father_son]{--compat-accent:84,110,147;--compat-accent-soft:148,163,184}.compatibility-landing[data-scenario=mother_son]{--compat-accent:34,139,120;--compat-accent-soft:134,239,172}.compatibility-landing[data-scenario=friends]{--compat-accent:53,132,228;--compat-accent-soft:125,211,252}.compatibility-landing[data-scenario=boss_subordinate]{--compat-accent:76,92,150;--compat-accent-soft:165,180,252}.compatibility-landing .compatibility-header{display:none}.compatibility-landing .compatibility-card{background:radial-gradient(circle at top left,rgba(var(--compat-accent),.05),transparent 34%),#ffffffb8;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);border:1px solid #ffffffbf;border-radius:32px;flex-direction:column;gap:18px;padding:22px;display:flex;box-shadow:0 18px 42px #0f172a0f}.compatibility-landing .compatibility-intro{flex-direction:column;gap:12px;padding:4px 2px 2px;display:flex}.compatibility-landing .compatibility-intro .intro-copy{flex-direction:column;gap:10px;max-width:760px;display:flex}.compatibility-landing .compatibility-intro h1,.compatibility-landing .compatibility-intro h2,.compatibility-landing .compatibility-intro p{margin:0}.compatibility-landing .compatibility-intro h1{letter-spacing:-.03em;color:#202124;text-wrap:balance;font-size:clamp(30px,5vw,48px);font-weight:600;line-height:1.04}.compatibility-landing .compatibility-intro h2{color:rgba(var(--compat-accent),.96);text-wrap:balance;font-size:clamp(18px,2.4vw,24px);font-weight:600;line-height:1.24}.compatibility-landing .compatibility-intro p{color:#202124ad;max-width:720px;font-size:15px;font-weight:400;line-height:1.75}.compatibility-landing .scenario-toolbar{flex-direction:column;gap:14px;display:flex}.compatibility-landing .toolbar-header{justify-content:space-between;align-items:center;gap:16px;display:flex}.compatibility-landing .toolbar-header .toolbar-label{letter-spacing:1.1px;text-transform:uppercase;color:#20212480;font-size:12px;font-weight:600;line-height:1}.compatibility-landing .toolbar-header .role-track{align-items:center;gap:10px;display:flex}.compatibility-landing .toolbar-header .role-pill{border:1px solid rgba(var(--compat-accent),.08);color:#202124b8;background:#ffffffdb;border-radius:999px;justify-content:center;align-items:center;padding:8px 14px;font-size:12px;font-weight:500;line-height:1;display:inline-flex}.compatibility-landing .toolbar-header .role-divider{color:#20212459;font-size:12px;font-weight:500;line-height:1}.compatibility-landing .scenario-strip{flex-wrap:wrap;gap:12px;display:flex}.compatibility-landing .scenario-pill{color:#202124ad;cursor:pointer;background:#ffffffc7;border:1px solid #0f172a0f;border-radius:999px;justify-content:center;align-items:center;min-height:42px;padding:10px 16px;font-size:13px;font-weight:500;line-height:1.3;text-decoration:none;transition:transform .2s,border-color .2s,background .2s,color .2s,box-shadow .2s;display:inline-flex}.compatibility-landing .scenario-pill:hover{color:#202124;border-color:#20212424;transform:translateY(-1px);box-shadow:0 8px 16px #0f172a0d}.compatibility-landing .scenario-pill.active{color:#fff;background:linear-gradient(135deg,rgba(var(--compat-accent),1),rgba(var(--compat-accent),.88));box-shadow:0 10px 20px rgba(var(--compat-accent),.18);border-color:#0000}.compatibility-landing .scenario-summary{background:#ffffffbd;border:1px solid #0f172a0d;border-radius:22px;padding:16px 18px;display:block}.compatibility-landing .scenario-summary .summary-copy{flex-direction:column;gap:6px;display:flex}.compatibility-landing .scenario-summary .summary-kicker{letter-spacing:1px;text-transform:uppercase;color:#20212473;font-size:11px;font-weight:600;line-height:1}.compatibility-landing .scenario-summary h3{color:#202124;margin:0;font-size:22px;font-weight:600;line-height:1.2}.compatibility-landing .scenario-summary p{color:#2021249e;max-width:620px;margin:0;font-size:14px;font-weight:400;line-height:1.7}.compatibility-landing .compatibility-form{flex-direction:column;gap:16px;display:flex}.compatibility-landing .party-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;display:grid}.compatibility-landing .party-panel{background:#ffffffb8;border:1px solid #ffffffbf;border-radius:24px;flex-direction:column;gap:12px;padding:20px;display:flex;box-shadow:inset 0 1px #ffffffb3}.compatibility-landing .party-panel.counterpart{background:linear-gradient(180deg,rgba(var(--compat-accent),.05),#ffffffb8)}.compatibility-landing .party-panel .panel-header{justify-content:space-between;align-items:center;gap:12px;display:flex}.compatibility-landing .party-panel .calendar-indicator{cursor:pointer;background:0 0;border:none;align-items:center;gap:6px;padding:0;transition:opacity .2s;display:flex}.compatibility-landing .party-panel .calendar-indicator:hover{opacity:.72}.compatibility-landing .party-panel .calendar-indicator .calendar-type{color:#2021248f;font-size:12px;font-weight:500;line-height:1}.compatibility-landing .party-panel .calendar-indicator .chevron-icon{opacity:.55;width:10px;height:10px}.compatibility-landing .party-panel .input-label{color:#2021246b;font-size:12px;font-weight:500;line-height:1.4}.compatibility-landing .party-panel .party-input{color:#202124;resize:vertical;background:#ffffffd1;border:1px solid #0f172a14;border-radius:20px;width:100%;min-height:152px;padding:16px 18px;font-size:14px;font-weight:400;line-height:1.7;display:block}.compatibility-landing .party-panel .party-input::placeholder{color:#20212457}.compatibility-landing .party-panel .party-input:focus{border-color:rgba(var(--compat-accent),.28);box-shadow:0 0 0 4px rgba(var(--compat-accent),.08);outline:none}.compatibility-landing .form-footer{justify-content:space-between;align-items:flex-end;gap:16px;display:flex}.compatibility-landing .button-group{flex-shrink:0;gap:8px;display:flex}.compatibility-landing .button-group .submit-button{color:#fff;white-space:nowrap;background:linear-gradient(135deg,rgba(var(--compat-accent),1),rgba(var(--compat-accent),.88));cursor:pointer;border:none;border-radius:50px;justify-content:center;align-items:center;gap:8px;padding:12px 20px;font-size:14px;font-weight:500;line-height:1;transition:opacity .2s,box-shadow .2s,transform .2s;display:inline-flex}.compatibility-landing .button-group .submit-button:hover:not(:disabled){opacity:.9;box-shadow:0 12px 24px rgba(var(--compat-accent),.2);transform:translateY(-1px)}.compatibility-landing .button-group .submit-button:disabled{opacity:.5;cursor:not-allowed}.compatibility-landing .button-group .submit-button .gemini-icon{filter:brightness(1.2)drop-shadow(0 0 8px #fff6)}.compatibility-landing .message-container{justify-content:center;align-items:center;min-height:22px;display:flex}.compatibility-landing .message-container .error-message{color:#d93025;justify-content:center;align-items:center;gap:6px;padding:6px 12px;font-size:11px;line-height:1.4;display:flex}.compatibility-landing .message-container .error-message .warning-icon{background-color:#d93025;border-radius:50%;flex-shrink:0;width:12px;height:12px;padding:2px}@media (max-width:1100px){.compatibility-landing .compatibility-header{display:none}}@media (max-width:800px){.compatibility-landing{padding:0}.compatibility-landing .compatibility-card{border-radius:24px;gap:16px;padding:18px}.compatibility-landing .compatibility-intro{gap:10px}.compatibility-landing .compatibility-intro h1{font-size:34px}.compatibility-landing .compatibility-intro h2{font-size:19px}.compatibility-landing .toolbar-header{flex-direction:column;align-items:stretch;gap:10px}.compatibility-landing .toolbar-header .role-track{flex-wrap:wrap;justify-content:flex-start;gap:8px}.compatibility-landing .scenario-strip{scrollbar-width:none;-webkit-overflow-scrolling:touch;flex-wrap:nowrap;gap:10px;margin:0 -2px;padding:2px 2px 6px;overflow-x:auto}.compatibility-landing .scenario-strip::-webkit-scrollbar{display:none}.compatibility-landing .scenario-pill{white-space:nowrap;flex:none;min-height:40px;padding:10px 14px}.compatibility-landing .scenario-summary{border-radius:18px;padding:14px 16px}.compatibility-landing .scenario-summary h3{font-size:20px}.compatibility-landing .scenario-summary p{font-size:13px;line-height:1.65}.compatibility-landing .party-grid{grid-template-columns:minmax(0,1fr)}.compatibility-landing .form-footer{flex-direction:column;align-items:stretch}.compatibility-landing .party-panel{padding:18px}.compatibility-landing .party-panel .party-input{min-height:136px}.compatibility-landing .button-group .submit-button{width:100%}.compatibility-landing .message-container{justify-content:flex-start;min-height:0}.compatibility-landing .message-container .error-message{text-align:left;justify-content:flex-start;padding:0}}@media (max-width:560px){.compatibility-landing .compatibility-card{border-radius:20px;padding:16px}.compatibility-landing .compatibility-intro h1{font-size:28px}.compatibility-landing .compatibility-intro h2{font-size:17px}.compatibility-landing .compatibility-intro p{font-size:14px}.compatibility-landing .toolbar-header .toolbar-label{font-size:11px}.compatibility-landing .toolbar-header .role-pill{padding:7px 12px;font-size:11px}.compatibility-landing .party-panel{border-radius:20px;gap:10px;padding:16px}.compatibility-landing .party-panel .panel-header{align-items:flex-start}.compatibility-landing .party-panel .party-input{border-radius:18px;min-height:124px;padding:14px 16px;font-size:13px;line-height:1.65}.compatibility-landing .scenario-summary{padding:12px 14px}.compatibility-landing .scenario-summary h3{font-size:18px}.compatibility-landing .scenario-summary p{font-size:13px}.compatibility-landing .button-group .submit-button{min-height:46px;padding:12px 18px;font-size:13px}}
@keyframes fadeScaleDown{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}.success-badge{color:#059669;background-color:#ecfef6;border:1px solid #c3e6cb}.warning-badge{color:#d97706;background-color:#fffbeb;border:1px solid #fde68a}.danger-badge{color:#dc2626;background-color:#fef2f2;border:1px solid #fecaca}.card-theme{background-color:#fff;box-shadow:0 4px 12px -2px #00000014,0 0 0 .5px #0000000f}.compatibility-page{background:radial-gradient(circle at top,#1a73e814,#0000 30%),linear-gradient(#f8faffe6,#fff);width:100%;min-height:calc(100vh - 80px);padding:150px 0}.compatibility-page .compatibility-page-shell{width:100%;max-width:1200px;margin:0 auto;padding:0 20px}.compatibility-page .compatibility-hero-section{width:100%}.compatibility-page .compatibility-loading-card{-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);background:#ffffffb8;border:1px solid #ffffffc7;border-radius:28px;flex-direction:column;gap:22px;max-width:760px;margin:64px auto 0;padding:28px;display:flex;box-shadow:0 18px 44px #0f172a14}.compatibility-page .compatibility-loading-card .loading-copy{flex-direction:column;gap:8px;display:flex}.compatibility-page .compatibility-loading-card strong{color:#202124;font-size:22px;font-weight:600;line-height:1.3}.compatibility-page .compatibility-loading-card p{color:#2021248f;margin:0;font-size:14px;line-height:1.75}.compatibility-page .loading-progress-block{flex-direction:column;gap:12px;display:flex}.compatibility-page .loading-progress-meta{color:#202124bd;justify-content:space-between;align-items:center;gap:12px;font-size:13px;font-weight:600;line-height:1.4;display:flex}.compatibility-page .loading-progress-track{background:#1a73e81a;border-radius:999px;width:100%;height:12px;overflow:hidden}.compatibility-page .loading-progress-fill{border-radius:inherit;background:linear-gradient(90deg,#1a73e8eb,#76befff5);height:100%;transition:width .24s;display:block}.compatibility-page .loading-hint{color:#2021247a;font-size:13px;line-height:1.7}.compatibility-page .compatibility-task-error{background:#ffffffb8;border:1px solid #d930251f;border-radius:18px;max-width:960px;margin:0 auto 16px;padding:14px 16px}.compatibility-page .compatibility-task-error strong{color:#b3261e;font-size:14px;font-weight:600;line-height:1.4;display:block}.compatibility-page .compatibility-task-error p{color:#2021249e;margin:4px 0 0;font-size:13px;line-height:1.65}@media (max-width:800px){.compatibility-page{padding:100px 0 76px}.compatibility-page .compatibility-page-shell{padding:0 16px}.compatibility-page .compatibility-loading-card{margin-top:28px;padding:22px 18px}.compatibility-page .compatibility-loading-card strong{font-size:19px}.compatibility-page .loading-progress-meta{font-size:12px}}@media (max-width:560px){.compatibility-page .compatibility-page-shell{padding:0 12px}.compatibility-page .compatibility-loading-card{border-radius:22px;gap:18px;margin-top:16px;padding:18px 16px}.compatibility-page .compatibility-loading-card strong{font-size:17px}.compatibility-page .compatibility-loading-card p{font-size:13px;line-height:1.65}.compatibility-page .loading-progress-track{height:10px}.compatibility-page .compatibility-task-error{border-radius:16px;margin-bottom:12px;padding:12px 14px}}
