.onboarding-shell{width:min(100%,430px);min-height:100dvh;overflow:hidden;border:0;background:#fff}
.onboarding-shell>.site-header,.onboarding-shell>.dev-panel{display:none}
.guitto-onboarding{min-height:100dvh;background:linear-gradient(155deg,#fff 70%,#fff1f6 100%)}
.onboarding-hero{position:relative;height:265px;overflow:hidden;background:linear-gradient(145deg,#fff6f9,#f5e6e9)}
.onboarding-hero img{width:150%;max-width:none;height:100%;margin-left:-25%;object-fit:cover;object-position:center 30%}
.onboarding-hero>span{position:absolute;inset:auto 0 -1px;height:105px;background:linear-gradient(transparent,#fff)}
.onboarding-brand{position:absolute;z-index:2;top:28px;left:24px;display:flex;flex-direction:column;align-items:flex-start;gap:5px}
.onboarding-brand strong{color:#f43d70;font-family:"Arial Rounded MT Bold","Hiragino Maru Gothic ProN",ui-rounded,sans-serif;font-size:35px;font-weight:800;line-height:1;letter-spacing:-.07em}
.onboarding-brand small{color:#77727a;font-size:10px;font-weight:650;letter-spacing:.08em}
.onboarding-content{position:relative;margin-top:-22px;padding:0 25px 28px}
.onboarding-copy{position:relative}.onboarding-step{margin:0 0 5px;color:#f43d70;font-size:9px;font-weight:800;letter-spacing:.14em}.onboarding-copy h1{margin:0;color:#20212a;font-size:31px;line-height:1.22;letter-spacing:-.035em}.onboarding-copy h1 em{color:#f43d70;font-style:normal}.onboarding-copy>p:last-child{margin:9px 0 0;color:#817d86;font-size:12px;line-height:1.6}
.onboarding-progress{display:flex;justify-content:center;gap:8px;margin:13px 0}.onboarding-progress i{width:8px;height:8px;border-radius:50%;background:#f9cad7}.onboarding-progress i:first-child{background:#f43d70}
.onboarding-form,.guitto-onboarding .server-form{display:grid;gap:10px;margin:0}.onboarding-form fieldset,.guitto-onboarding .server-form fieldset{display:grid;gap:8px;margin:0;padding:14px;border:0;border-radius:18px;background:#fff7fa}.onboarding-form legend,.guitto-onboarding .server-form legend{margin-bottom:8px;color:#3d3b43;font-size:12px;font-weight:800}.onboarding-form fieldset label,.guitto-onboarding .server-form fieldset label{display:flex;align-items:center;gap:10px;min-height:34px;color:#55515a;font-size:12px;font-weight:650;line-height:1.45}.onboarding-form input,.guitto-onboarding .server-form input{flex:0 0 auto;width:20px;height:20px;margin:0;accent-color:#f43d70}.onboarding-required{margin:-2px 2px 0;color:#8d8790;font-size:10px;text-align:center}
.guitto-onboarding .server-form .onboarding-purpose{gap:10px;padding:0;background:transparent}.guitto-onboarding .server-form .onboarding-purpose legend{margin:0 0 2px;padding:0 2px}.guitto-onboarding .server-form .onboarding-purpose label{min-width:0;min-height:54px;padding:10px 14px;border:1px solid #eee5e9;border-radius:17px;background:#fff;cursor:pointer}.guitto-onboarding .server-form .onboarding-purpose label:has(input:checked){border-color:#f43d70;color:#c92e5a;background:#fff1f5;box-shadow:0 0 0 1px rgba(244,61,112,.08)}.guitto-onboarding .server-form .onboarding-purpose label:focus-within{outline:2px solid #ffc8da;outline-offset:1px}.guitto-onboarding .server-form .onboarding-purpose span{min-width:0;overflow-wrap:anywhere}
.onboarding-primary{height:54px;display:flex;align-items:center;justify-content:center;gap:18px;border:0;border-radius:27px;color:#fff;background:linear-gradient(100deg,#f82f69,#f33d70);box-shadow:0 9px 24px rgba(243,52,104,.18);font-size:16px;font-weight:800;cursor:pointer}.onboarding-primary span{font-size:22px;font-weight:400}
.onboarding-primary:disabled{color:#aaa5aa;background:#ece9eb;box-shadow:none;cursor:not-allowed}
.onboarding-login{display:block;margin:13px auto 0;color:#f43d70;text-align:center;text-decoration:none;font-size:12px;font-weight:700}
@media(max-width:380px){.onboarding-hero{height:245px}.onboarding-content{padding-inline:20px}.onboarding-copy h1{font-size:28px}.onboarding-form fieldset,.guitto-onboarding .server-form fieldset{padding-inline:12px}}
.consent-shell{min-height:100dvh;background:linear-gradient(180deg,#fff7fa,#fff)}.registration-consent,.legal-draft{box-sizing:border-box;width:min(100%,480px);min-height:100dvh;margin:auto;padding:34px 22px 40px}.registration-consent header{display:flex;align-items:center;justify-content:space-between}.registration-consent header strong{color:#ef3e72;font-size:23px}.registration-consent header p,.legal-draft>p{color:#c49aa6;font-size:10px;font-weight:800;letter-spacing:.14em}.registration-consent h1,.legal-draft h1{margin:36px 0 10px;color:#342f35;font-size:29px;line-height:1.3}.registration-consent>p{margin:0 0 22px;color:#756d75;font-size:13px;line-height:1.7}.registration-consent form{display:grid;gap:18px}.registration-consent fieldset{display:grid;gap:10px;margin:0;padding:15px;border:1px solid #f1dce3;border-radius:18px;background:#fff}.registration-consent legend{padding:0 6px;color:#504850;font-size:12px;font-weight:800}.registration-consent label{display:flex;align-items:flex-start;gap:10px;padding:12px;border-radius:12px;background:#fff8fa;color:#4c454c;font-size:12px;line-height:1.55}.registration-consent input{width:20px;height:20px;margin:0;accent-color:#ed3c70;flex:none}.registration-consent a{color:#d82d61;font-weight:800}.consent-primary{min-height:52px;border:0;border-radius:26px;color:#fff;background:#ec3b70;font-size:14px;font-weight:800}.consent-primary:disabled{color:#aaa5aa;background:#ece9eb}.registration-consent>small{display:block;margin-top:17px;color:#8a8289;font-size:10px;line-height:1.6}.legal-draft>a{color:#d82d61;text-decoration:none;font-size:12px;font-weight:800}.legal-draft>div{margin-top:24px;padding:20px;border:1px solid #f0dfe4;border-radius:18px;background:#fff}.legal-draft>div strong{color:#d82d61}.legal-draft>div p{color:#6f676e;line-height:1.7}.legal-draft>div small{color:#968d94}@media(max-width:390px){.registration-consent,.legal-draft{padding:26px 16px 32px}.registration-consent h1,.legal-draft h1{font-size:26px}.registration-consent fieldset{padding:12px}.registration-consent label{padding:10px}}
