:root{color-scheme:light;--ink:#263e30;--muted:#66776a;--accent:#285747;--accent-dark:#193f30;--line:#dce4d9;font-family:system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}
*{box-sizing:border-box}
body{margin:0;min-height:100vh;min-height:100dvh;display:grid;place-items:center;background:#f1f3ee;color:var(--ink);padding:40px 24px;-webkit-font-smoothing:antialiased}
.signin-shell{width:min(100%,1000px);min-height:640px;display:grid;grid-template-columns:1fr 1fr;background:#fff;border:1px solid #e1e5dd;border-radius:27px;overflow:hidden;box-shadow:0 15px 70px #33452e07}
.signin-story{background:#edf1d5;padding:38px 38px 29px;display:flex;flex-direction:column;min-width:0;position:relative}
.signin-brand{display:flex;align-items:center;gap:10px}.signin-brand .mark{display:block;width:46px;height:56px;object-fit:contain;flex-shrink:0}.signin-brand h1{font-size:29px;font-weight:680;letter-spacing:-1.3px;line-height:1.1;margin:0 0 5px}.eyebrow{font-size:12px;letter-spacing:.2px;color:#556640;margin:0}
.signin-story-content{margin-top:46px}.signin-story h2{font-size:39px;line-height:1.15;letter-spacing:-1.6px;font-weight:580;margin:0 0 18px;color:#32482d}.signin-story-content>p{font-size:13px;line-height:1.8;color:#556640;margin:0}.signin-story-footer{font-size:12px;letter-spacing:1px;color:#5b6846;margin:auto 0 0;padding-top:25px}
.signin-art{height:202px;position:relative;margin-top:32px;max-width:295px}.art-calendar{position:absolute;left:0;top:9px;width:232px;height:171px;background:#fafbf3;border:1px solid #d4dfb8;border-radius:16px;padding:19px;transform:rotate(-5deg);box-shadow:0 14px 30px #46592a0b}.art-calendar-top{display:flex;gap:6px;align-items:center;margin-bottom:18px}.art-calendar-top span{display:block;height:6px;width:69px;border-radius:3px;background:#b6c496;margin-right:auto}.art-calendar-top i{width:13px;height:13px;border:1px solid #c7d4b0;border-radius:4px}.art-calendar-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:7px}.art-calendar-grid b{height:23px;background:#eef2e2;border-radius:5px}.art-calendar-grid b:nth-child(3),.art-calendar-grid b:nth-child(9){background:#c8dab4}.art-calendar-grid b:nth-child(7),.art-calendar-grid b:nth-child(14){background:#dcd4e9}.art-calendar-grid b:nth-child(11){background:#ebd9b5}.art-note{position:absolute;right:0;bottom:0;width:121px;height:123px;border:1px solid #d5cee2;border-radius:15px;background:#ede8f5;padding:21px;transform:rotate(8deg);box-shadow:0 12px 25px #55416b0d;color:#83729a}.art-note svg{width:29px;height:29px;display:block;margin-bottom:16px}.art-note span{display:block;height:4px;background:#c2b7d4;border-radius:3px;margin-bottom:8px}.art-note span:last-child{width:60%}
.signin{min-width:0;padding:57px 46px 30px;display:flex;flex-direction:column;justify-content:center;background:#fff}.signin-section-label{font-size:12px;font-weight:600;letter-spacing:1.4px;color:#607354;margin:0 0 12px}.signin>h2{font-size:30px;line-height:1.2;font-weight:620;letter-spacing:-1px;margin:0 0 10px}.intro{font-size:13px;line-height:1.7;color:var(--muted);margin:0 0 27px}
label{display:block;font-size:12px;font-weight:600;margin-bottom:9px}input{width:100%;min-height:49px;font:inherit;font-size:16px;padding:12px 14px;border:1px solid #7b907f;border-radius:11px;background:#fdfefb;color:var(--ink);box-shadow:0 1px 3px #293b2303}input:focus{border-color:#5a8563;outline:2px solid #c6dac1;outline-offset:2px}
button{display:flex;align-items:center;justify-content:space-between;width:100%;min-height:48px;margin-top:19px;padding:12px 16px;border:1px solid var(--accent);border-radius:11px;background:var(--accent);color:#fff;font:inherit;font-weight:590;font-size:13px;cursor:pointer;box-shadow:0 3px 7px #2857470a}button:hover{background:var(--accent-dark);border-color:var(--accent-dark)}button:disabled{background:#e8eee3;border-color:#d5dfcc;color:#64705b;cursor:default;box-shadow:none}
.status{min-height:20px;font-size:12px;line-height:1.6;color:#963c3c;margin:12px 0 0}.privacy{font-size:12px;line-height:1.7;color:var(--muted);border-top:1px solid var(--line);padding-top:21px;margin:19px 0 0}.adult-check{display:flex;align-items:flex-start;gap:10px;margin:18px 0 3px;font-size:12px;font-weight:400;line-height:1.7;cursor:pointer;min-height:43px}.adult-check input{width:17px;height:17px;flex:none;min-height:17px;margin:2px 0 0;padding:0;accent-color:var(--accent)}
.policy-links{display:flex;gap:1px 13px;flex-wrap:wrap;font-size:12px;color:var(--muted);margin-top:12px}.policy-links a{display:inline-flex;align-items:center;min-height:36px;text-underline-offset:3px;color:inherit}.policy-links a:hover{color:var(--accent-dark)}:is(a,button,input):focus-visible{outline:2px solid #4d7955;outline-offset:3px}
.signin-spinner{display:none;margin-left:8px}.signin button[aria-busy="true"] .signin-spinner{display:inline-block;animation:signin-spin 1s linear infinite}.login-check{margin:14px 0 0}.check-status{font-size:12px;line-height:1.6;color:var(--muted);margin:7px 0 0}.check-retry{width:auto;min-height:36px;font-size:12px;padding:7px 10px;margin-top:8px;background:#fff;color:var(--accent);border-color:var(--line)}.check-retry:hover{color:#fff}.check-retry[hidden],.login-check[hidden]{display:none}
button,input,.policy-links a{transition:background-color 150ms ease,color 150ms ease,border-color 150ms ease,box-shadow 160ms ease}@keyframes signin-spin{to{transform:rotate(360deg)}}
@media(max-width:760px){body{padding:24px 18px}.signin-shell{grid-template-columns:1fr;max-width:470px;min-height:0;border-radius:24px}.signin-story{padding:22px 28px;background:#edf1d5}.signin-story-content,.signin-story-footer{display:none}.signin-brand .mark{width:39px;height:47px}.signin-brand h1{font-size:27px}.signin{padding:31px 28px 27px}.signin>h2{font-size:28px}.signin-section-label{font-size:11px}.intro{font-size:13px}.privacy{margin-top:12px}.policy-links{gap:2px 14px;font-size:12px}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important;scroll-behavior:auto!important}.art-calendar,.art-note{transform:none}}
