/* Shared neutral ShushuLab shell for public product login/registration pages. */
.public-product-auth-page{min-height:100svh;background:radial-gradient(circle at 10% 0%,rgba(255,103,173,.12),transparent 29rem),radial-gradient(circle at 90% 10%,rgba(154,239,217,.13),transparent 30rem),var(--paper);color:var(--ink)}
.public-product-auth-page .page{min-height:100svh;display:grid;grid-template-columns:1fr 1fr}.public-product-auth-page .visual{padding:clamp(28px,4vw,48px);display:flex;flex-direction:column;justify-content:space-between;gap:24px;border-right:var(--line);position:relative;overflow:hidden;min-width:0;background:linear-gradient(145deg,#fff 0 55%,#f3efff 55% 78%,#effff9 78%)}.public-product-auth-page .visual::after{content:"SHUSHULAB";position:absolute;left:-24px;bottom:-46px;font-size:clamp(92px,16vw,220px);font-weight:1000;letter-spacing:-.08em;color:rgba(21,18,22,.035);pointer-events:none}.public-product-auth-page .brand,.public-product-auth-page .mini{font-size:12px;letter-spacing:.16em;font-weight:1000}.public-product-auth-page .mini{color:#9c2f67}.public-product-auth-page .visual h1{position:relative;z-index:1;font-size:clamp(62px,10vw,138px);line-height:.82;letter-spacing:-.07em;margin:12px 0 24px}.public-product-auth-page .lead,.public-product-auth-page .sub{color:var(--muted);line-height:1.8;position:relative;z-index:1}.public-product-auth-page .price{font-size:34px;font-weight:1000;position:relative;z-index:1}.public-product-auth-page .panel-wrap{display:grid;place-items:center;padding:30px;min-width:0}.public-product-auth-page .panel,.public-product-auth-page .auth-card{width:min(500px,100%);border:var(--line);border-radius:24px;padding:32px;background:#fff;box-shadow:8px 8px 0 var(--ink)}.public-product-auth-page .panel h2,.public-product-auth-page .auth-card h1{font-size:34px;letter-spacing:-.03em;margin:8px 0}.public-product-auth-page .subtitle{margin:0 0 24px;color:var(--muted);line-height:1.65}.public-product-auth-page .notice,.public-product-auth-page .error,.public-product-auth-page .message{display:none;padding:12px 13px;border:2px solid var(--ink);border-radius:11px;margin:14px 0;font-size:14px;line-height:1.5}.public-product-auth-page .notice{background:#effff9}.public-product-auth-page .error,.public-product-auth-page .message{background:#fff0f4;color:#951f45}.public-product-auth-page .field{margin-bottom:18px}.public-product-auth-page label{display:block;font-size:12px;font-weight:900;margin:16px 0 6px}.public-product-auth-page .field label{margin-top:0}.public-product-auth-page input[type=text],.public-product-auth-page input[type=password]{width:100%;min-height:46px;padding:12px;border:2px solid var(--ink);border-radius:11px;background:#fff;color:var(--ink);font:inherit}.public-product-auth-page .help{margin-top:6px;color:var(--muted);font-size:12px;line-height:1.5}.public-product-auth-page .check{display:flex;gap:10px;align-items:flex-start;margin:18px 0}.public-product-auth-page .check input{width:20px;height:20px;margin-top:2px;flex:0 0 auto}.public-product-auth-page .check label{margin:0;font-weight:700;line-height:1.5}.public-product-auth-page button{width:100%;min-height:48px;margin-top:20px;padding:12px 16px;border:2px solid var(--ink);border-radius:999px;background:var(--pink);color:var(--ink);box-shadow:3px 3px 0 var(--ink);font:inherit;font-weight:1000;cursor:pointer}.public-product-auth-page button:disabled{background:#e8e3e9;color:var(--muted);box-shadow:none;cursor:wait}.public-product-auth-page .links{display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap;margin-top:20px;font-size:13px}.public-product-auth-page .links a{color:inherit;font-weight:850;text-decoration:none}.public-product-auth-page .note{margin-top:18px;padding:12px 13px;border:2px solid var(--ink);border-radius:12px;background:#fff8cf;color:var(--muted);font-size:12px;line-height:1.65}.public-product-auth-page :where(input,button,a):focus-visible{outline:3px solid var(--purple);outline-offset:3px}
.public-product-auth-page.simple{display:grid;place-items:center;padding:24px}.public-product-auth-page.simple .auth-card{max-width:470px}
@media(max-width:820px){.public-product-auth-page .page{grid-template-columns:1fr}.public-product-auth-page .visual{min-height:300px;border-right:0;border-bottom:var(--line);padding:28px}.public-product-auth-page .visual h1{font-size:64px}.public-product-auth-page .panel-wrap{padding:24px 16px 40px}.public-product-auth-page .panel,.public-product-auth-page .auth-card{box-shadow:6px 6px 0 var(--ink)}}
@media(max-width:520px){.public-product-auth-page.simple{padding:16px}.public-product-auth-page .panel,.public-product-auth-page .auth-card{padding:24px 20px;border-radius:20px}.public-product-auth-page .links{display:grid;justify-content:stretch}}
