:root{color-scheme:light;font-family:Avenir Next,Segoe UI,sans-serif;line-height:1.4;--bg-top: #f3d987;--bg-mid: #c8e9e3;--bg-bottom: #eaf4f8;--card-bg: #ffffff;--card-border: #cfdce5;--text-main: #20303a;--text-muted: #5b7082;--panel-bg: #fbfdfd;--panel-border: #d8e4ea;--accent: #4f78a8;--accent-hover: #446a96;--secondary-bg: #d6f3ef;--secondary-text: #1b5c58;--secondary-hover: #c2ece6;--error: #b63349;--success: #1f7a50}*{box-sizing:border-box}body{margin:0;min-height:100vh;background:radial-gradient(circle at top right,var(--bg-top) 0%,var(--bg-mid) 48%,var(--bg-bottom) 100%);color:var(--text-main)}.page{min-height:100vh;display:flex;justify-content:center;align-items:flex-start;padding:36px 24px}.card{width:min(1200px,100%);min-height:calc(100vh - 72px);background:var(--card-bg);border-radius:18px;padding:24px;border:1px solid var(--card-border);box-shadow:0 14px 40px #0e2d3e1a;position:relative}@media (min-width: 1200px){.card{width:min(1400px,92vw);padding:28px}}@media (min-width: 1600px){.card{width:min(1560px,90vw)}}.topbar{display:flex;justify-content:space-between;gap:16px;align-items:flex-start}h1{margin:0 0 6px}.brand{display:grid;grid-template-columns:52px minmax(0,1fr);column-gap:10px;align-items:start}.brand-logo{width:52px;height:52px;display:block}.brand-copy{min-width:0;display:flex;flex-direction:column;gap:8px;max-width:64ch}.brand-copy h1{margin:0;line-height:1.15}.brand-copy p{margin:0;line-height:1.5;letter-spacing:.01em;white-space:normal;overflow-wrap:break-word}.muted{color:var(--text-muted)}.small{font-size:.9rem}.tm{font-size:.55em;vertical-align:super}.account{min-width:260px;border:1px solid var(--panel-border);border-radius:12px;padding:12px;background:#f6fafb}.account-email{font-weight:600;margin-bottom:8px;overflow-wrap:anywhere}.quota-table{width:100%;border-collapse:collapse;margin-top:10px}.quota-table th,.quota-table td{text-align:left;padding:6px 0;border-bottom:1px solid #e1eaef;font-size:.95rem}.invite-panel{margin-top:12px}.invite-panel input[type=email]{min-width:180px;border:1px solid var(--panel-border);border-radius:8px;padding:8px 10px;font:inherit;color:var(--text-main);background:#fff}.login-wrap{margin-top:28px}.upload-section{margin-top:24px}.upload-box{display:block;border:2px dashed #87aeb7;border-radius:12px;padding:20px;cursor:default;background:#fff}.upload-box-title{display:flex;align-items:center;justify-content:center;gap:8px;flex-wrap:wrap;font-weight:600;font-size:1.1rem;margin-bottom:16px;text-align:center;max-width:100%;overflow-wrap:break-word}.upload-box.disabled{opacity:.6}.quota-pill{display:inline-flex;align-items:center;justify-content:center;padding:3px 10px;border-radius:999px;font-size:.78rem;font-weight:600;letter-spacing:.02em;border:1px solid rgba(0,0,0,.08)}.quota-pill.ok{background:#2f79d6;color:#fff}.quota-pill.danger{background:#c62828;color:#fff}.upload-box-actions{display:flex;gap:12px;align-items:stretch}.upload-action-btn:disabled{opacity:.65;cursor:not-allowed}.upload-action-btn{flex:1;background:#c9a961;color:#1a1a1a;border:0;border-radius:10px;padding:10px 12px;cursor:pointer;font-weight:600;font-family:inherit;font-size:1rem;transition:background .2s;text-align:center;display:flex;align-items:center;justify-content:center;text-decoration:none;box-sizing:border-box}.upload-action-btn:hover{background:#d4b670}.upload-action-btn.danger{background:#d9534f;color:#fff}.upload-action-btn.danger:hover{background:#c9302c}input[type=file]{width:100%}input[type=file]::file-selector-button{background:#c9a961;color:#1a1a1a;border:0;border-radius:10px;padding:9px 14px;cursor:pointer;font-weight:600;font-family:inherit;transition:background .2s;margin-right:12px}input[type=file]::file-selector-button:hover{background:#d4b670}.panel,.decision-box{margin:14px 0;padding:12px;border:1px solid var(--panel-border);border-radius:10px;background:var(--panel-bg)}.decision-message{font-size:1.15rem;font-weight:700;margin:4px 0 12px;line-height:1.25}.format-snippet{margin:8px 0 0;padding:10px;background:#f4f8fb;border:1px solid #d9e4ec;border-radius:8px;overflow:auto;font-size:.85rem}.actions{display:flex;gap:8px;margin-top:10px;align-items:center;flex-wrap:wrap}.form-section{margin-bottom:16px}.gender-group{display:flex;flex-direction:column;gap:6px;margin-bottom:24px}.gender-group .actions{margin-top:6px}.gender-buttons{display:flex;gap:8px;margin-top:6px;flex-wrap:wrap}.age-group{display:flex;flex-direction:column;gap:6px}.decision-fields{display:flex;gap:12px;align-items:stretch;margin-bottom:12px}.decision-field{flex:1;border:1px solid var(--panel-border);border-radius:12px;padding:12px;background:#fff}.decision-field .gender-group,.decision-field .age-group{margin-bottom:0}.decision-field .age-group input{margin-top:6px}.age-group input{width:100%;border:1px solid var(--panel-border);border-radius:8px;padding:10px 12px;font:inherit;color:var(--text-main);background:#fff}.decision-actions{display:flex;gap:12px;justify-content:center;margin-top:16px}.decision-actions button{flex:1;max-width:150px}.btn-yes{background:#c9a961;color:#1a1a1a}.btn-yes:hover{background:#d4b670}.btn-yes:disabled{opacity:.6;cursor:not-allowed}.btn-yes:disabled:hover{background:#c9a961}.btn-no{background:#d9534f;color:#fff}.btn-no:hover{background:#c9302c}.spinner-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#fffffff2;display:flex;flex-direction:column;align-items:center;justify-content:center;z-index:1000;gap:16px}.spinner{width:60px;height:60px;border:4px solid #e0e0e0;border-top-color:#4f78a8;border-radius:50%;animation:spin 1s linear infinite}.spinner-text{font-size:1rem;color:var(--text-main);font-weight:500}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}button{background:var(--accent);color:#fff;border:0;border-radius:10px;padding:9px 14px;cursor:pointer;font-weight:600}button:hover{background:var(--accent-hover)}button.secondary{background:var(--secondary-bg);color:var(--secondary-text)}button.secondary:hover{background:var(--secondary-hover)}button.secondary.active{background:#2a9d8f;color:#fff}button.secondary.active:hover{background:#24877b}.error{color:var(--error);font-weight:600}.success{color:var(--success);font-weight:600;text-align:center}.result-image{width:min(420px,100%);display:block;border-radius:10px;border:1px solid #d9e4ec;background:#fff;margin:0 auto}.matched-rsid-wrap{margin-top:10px;overflow:auto;max-height:320px;border:1px solid #d9e4ec;border-radius:8px}.matched-rsid-table{width:100%;border-collapse:collapse;font-size:.9rem;background:#fff}.matched-rsid-table th,.matched-rsid-table td{text-align:left;padding:8px 10px;border-bottom:1px solid #eef3f6;white-space:nowrap}.matched-rsid-table thead th{position:sticky;top:0;background:#f7fbfd;z-index:1}.trait-feedback-wrap{overflow-x:auto;margin-top:10px}.trait-feedback-table{width:100%;border-collapse:collapse;background:#fff;border:1px solid var(--panel-border);border-radius:10px;overflow:hidden}.trait-feedback-table th,.trait-feedback-table td{padding:10px 12px;border-bottom:1px solid var(--panel-border);vertical-align:top}.trait-feedback-table th{text-align:left;font-size:.85rem;color:var(--text-main);background:var(--panel-bg)}.feedback-buttons{display:flex;flex-wrap:wrap;gap:6px}.feedback-btn{border:1px solid var(--panel-border);background:var(--secondary-bg);color:var(--secondary-text);border-radius:999px;padding:6px 10px;font:inherit;font-size:.8rem;cursor:pointer}.feedback-btn.active{background:#2f79d6;color:#fff;border-color:#00000014}.feedback-slider-wrap{display:flex;flex-direction:column;gap:8px;min-width:220px}.feedback-slider-labels{display:flex;justify-content:space-between;gap:8px}.feedback-slider{width:100%}.feedback-not-sure{display:inline-flex;align-items:center;gap:8px;-webkit-user-select:none;user-select:none}.feedback-not-sure input[type=checkbox]{transform:translateY(-.5px)}.feedback-notes{width:min(520px,100%);border:1px solid var(--panel-border);border-radius:10px;padding:10px 12px;font:inherit;font-size:.95rem;color:var(--text-main);background:#fff;resize:vertical}.feedback-notes:disabled{opacity:.65;cursor:not-allowed}@media (max-width: 760px){.topbar{flex-direction:column}.brand{grid-template-columns:44px 1fr}.brand-logo{width:44px;height:44px}.account{width:100%}}.landing-hero{display:flex;justify-content:center;margin-bottom:12px}.landing-logo{width:min(560px,95%);height:auto;display:block}.landing-copy{max-width:850px;margin:0 auto}.landing-copy ul{margin-top:6px}.landing-actions{justify-content:flex-end;margin-top:16px;gap:12px;flex-wrap:wrap}.corner-actions{position:absolute;left:24px;bottom:24px;display:flex;flex-direction:row;gap:12px;width:auto}.corner-bubble{width:50px;height:50px;border-radius:999px;display:inline-flex;align-items:center;justify-content:center;background:#4f78a8;color:#fff;border:1px solid rgba(0,0,0,.08);box-shadow:0 6px 16px #0e2d3e2e;cursor:pointer;font-weight:700;position:relative;font-size:1.45rem}.corner-bubble:hover{background:#446a96}.corner-bubble:focus-visible{outline:3px solid rgba(79,120,168,.35);outline-offset:2px}.corner-bubble:after{content:attr(data-tooltip);position:absolute;left:50%;bottom:calc(100% + 10px);transform:translate(-50%) translateY(4px);padding:6px 10px;border-radius:10px;background:#fffffff5;border:1px solid rgba(0,0,0,.08);color:var(--text-main);white-space:nowrap;font-size:.85rem;font-weight:600;box-shadow:0 10px 24px #0e2d3e2e;opacity:0;pointer-events:none;transition:opacity .15s ease,transform .15s ease;z-index:5}.corner-bubble:hover:after,.corner-bubble:focus-visible:after{opacity:1;transform:translate(-50%) translateY(0)}.download-buttons{display:flex;gap:16px;justify-content:center;margin:24px 0}.download-btn{display:inline-block;padding:8px 18px;background:#c9a961;color:#1a1a1a;text-decoration:none;border-radius:20px;font-weight:500;font-size:.95rem;transition:background .2s,transform .1s,box-shadow .2s;border:none;cursor:pointer;box-shadow:0 2px 4px #00000014}.download-btn:hover{background:#d4b670;transform:translateY(-2px);box-shadow:0 4px 8px #0000001f}.download-btn:active{transform:translateY(0);box-shadow:0 1px 2px #00000014}.link-button{background:none;border:0;padding:0;margin:0;font:inherit;color:var(--accent);font-weight:700;cursor:pointer;text-decoration:underline}.link-button:hover{color:var(--accent-hover)}.modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:#00000059;display:grid;place-items:center;padding:24px;z-index:999}.modal{width:min(560px,100%);background:var(--card-bg);border:1px solid var(--card-border);border-radius:16px;padding:18px;box-shadow:0 18px 60px #0e2d3e38;position:relative;max-height:85vh;overflow:hidden;display:flex;flex-direction:column}.modal-close{position:absolute;top:12px;right:12px;width:32px;height:32px;border-radius:50%;background:var(--secondary-bg);color:var(--secondary-text);border:0;cursor:pointer;font-size:24px;line-height:1;display:flex;align-items:center;justify-content:center;padding:0;font-weight:400;transition:background .2s}.modal-close:hover{background:var(--secondary-hover)}.modal-large{width:min(800px,95%);max-height:85vh;overflow:hidden}.modal-scroll{overflow-y:auto;-webkit-overflow-scrolling:touch;padding-right:6px}.data-req-section{margin:24px 0}.data-req-section h4{margin:16px 0 8px;color:var(--text-main)}.data-req-section ul{margin:8px 0;padding-left:24px}.data-req-modal{background:var(--card-bg);border-color:var(--card-border)}.resource-links-centered{justify-content:center}.side-panel-actions{display:flex;flex-direction:row;gap:14px;width:100%;align-items:stretch;margin-top:auto;justify-content:flex-start}.data-req-section li{margin:6px 0;line-height:1.6}.data-req-section p{margin:8px 0}.resource-links{display:flex;gap:10px;flex-wrap:wrap;align-items:center;justify-content:flex-start;margin:10px 0 12px}.resource-btn{display:inline-flex;align-items:center;justify-content:center;padding:8px 12px;border-radius:10px;background:#c9a961;color:#1a1a1a;font-weight:700;text-decoration:none;border:1px solid rgba(0,0,0,.08);transition:background .2s;white-space:nowrap}.resource-btn:hover{background:#d4b670}.privacy-note{font-size:.78rem;color:#c62828d9;font-weight:600}.prototype-note{color:#c62828e6;font-weight:600;margin:8px 0 0}.top-nav{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:18px}.app-layout{display:grid;grid-template-columns:clamp(220px,20vw,300px) 1fr;gap:24px;align-items:start}.side-panel{display:flex;flex-direction:column;gap:16px;position:sticky;top:24px;align-self:start;min-height:calc(100vh - 120px)}.side-panel-section{display:flex;flex-direction:column;gap:8px}.account-section{background:var(--panel-bg);border:1px solid var(--panel-border);border-radius:10px;padding:12px}.account-email-display{font-size:.78rem;font-weight:500;color:var(--text-muted);margin-bottom:8px;line-height:1.4;text-align:center;overflow-wrap:anywhere;word-break:break-word;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.invite-section,.how-section{text-align:center;padding:12px;background:var(--panel-bg);border:1px solid var(--panel-border);border-radius:10px}.how-section h4{margin:0 0 10px;font-size:.95rem;color:var(--text-main);font-weight:500;letter-spacing:.01em}.dev-section{text-align:center;padding:12px;background:var(--panel-bg);border:1px solid var(--panel-border);border-radius:10px}.dev-section h4{margin:0 0 10px;font-size:.95rem;color:var(--text-main);font-weight:500;letter-spacing:.01em}.developer-modal-body{display:flex;gap:18px;align-items:flex-start}.developer-photo-wrap{flex:0 0 auto}.developer-photo{width:160px;height:200px;object-fit:cover;border-radius:12px;border:2px solid var(--panel-border);background:#fff}.developer-copy{min-width:0}.developer-copy a{color:var(--accent);font-weight:700}.developer-copy a:hover{color:var(--accent-hover)}.invite-section h4{margin:0 0 12px;font-size:.95rem;color:var(--text-main);font-weight:500;letter-spacing:.01em}.invite-input{width:100%;border:1px solid var(--panel-border);border-radius:8px;padding:10px 12px;font:inherit;font-size:.95rem;color:var(--text-main);background:#fff;margin-bottom:8px}.main-content{min-width:0}.main-content-header-section{display:flex;align-items:flex-end;justify-content:center;gap:12px;margin-bottom:24px;margin-top:-20px}.make-your-text{font-size:clamp(2.2rem,2.6vw,3rem);color:#20303acc;font-family:Avenir Next,Segoe UI,sans-serif;font-weight:400;letter-spacing:.01em;font-stretch:condensed;white-space:nowrap}.main-content-logo{height:clamp(150px,10vw,210px);width:auto}.upload-section-box{border:2px solid var(--panel-border);border-radius:12px;padding:20px;background:var(--panel-bg);max-width:640px;margin:0 auto}@media (min-width: 1200px){.upload-section-box{max-width:720px}}.btn-mustard{background:#c9a961;color:#1a1a1a;border:0;border-radius:10px;padding:9px 14px;cursor:pointer;font-weight:600;transition:background .2s;width:100%}.btn-mustard:hover{background:#d4b670}.btn-blue{background:#4f78a8;color:#fff;border:0;border-radius:10px;padding:9px 14px;cursor:pointer;font-weight:600;transition:background .2s;width:100%}.btn-blue:hover{background:#446a96}.btn-red{background:#d9534f;color:#fff;border:0;border-radius:10px;padding:9px 14px;cursor:pointer;font-weight:600;transition:background .2s;width:100%}.btn-red:hover{background:#c9302c}@media (max-width: 760px){.page{padding:24px}.card{min-height:calc(100vh - 48px)}.corner-actions{position:fixed;left:calc(16px + env(safe-area-inset-left));bottom:calc(16px + env(safe-area-inset-bottom));width:auto;z-index:50}.app-layout{grid-template-columns:1fr}.main-content-header-section{flex-direction:column;align-items:center;gap:6px;margin-top:0}.main-content-logo{height:140px;max-width:min(520px,92%)}.make-your-text{font-size:2.1rem;text-align:center;margin-bottom:-14px}.side-panel{flex-direction:row;flex-wrap:wrap;justify-content:center;position:static;min-height:0}.side-panel-actions{position:fixed;left:calc(16px + env(safe-area-inset-left));bottom:calc(16px + env(safe-area-inset-bottom));width:auto;margin-top:0;z-index:50}.side-panel-section{width:min(360px,100%);align-items:center}.account-section,.invite-section,.how-section,.dev-section{width:100%}.developer-modal-body{flex-direction:column;align-items:center;text-align:left}.developer-photo{width:180px;height:220px}.decision-fields{flex-direction:column}}.disclaimer{text-align:left;color:#c62828e6;margin:8px 0 10px;width:100%;max-width:none;line-height:1.35;font-size:.78rem}details.panel>summary{cursor:pointer;list-style:none;-webkit-user-select:none;user-select:none}details.panel>summary::-webkit-details-marker{display:none}details.panel>summary:before{content:"▸";display:inline-block;margin-right:8px;transform:translateY(-1px)}details.panel[open]>summary:before{content:"▾"}.upload-section-box .panel{margin-bottom:0}
