@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Playfair+Display:wght@600;700&display=swap');
:root{color-scheme:dark}
*{box-sizing:border-box}
body.ft-signin{margin:0;min-height:100vh;background:#101713;color:#f3f2e9;font-family:'DM Sans',system-ui,sans-serif}
.signin-layout{min-height:100vh;display:grid;grid-template-columns:minmax(0,1.08fr) minmax(400px,.92fr)}
.signin-intro{display:flex;flex-direction:column;justify-content:space-between;padding:clamp(28px,5vw,78px);background:radial-gradient(circle at 80% 18%,#4d6b3c99,transparent 36%),radial-gradient(circle at 25% 84%,#202e21,transparent 45%),linear-gradient(145deg,#1c2d22,#101a15 72%);border-right:1px solid #ffffff1c}
.signin-brand{display:inline-flex;align-items:center;gap:12px;width:max-content;color:#f3f2e9;text-decoration:none;font-size:19px;letter-spacing:-.05em}
.signin-brand>span{font-size:25px;color:#b8d893;margin-left:-12px;margin-right:4px}.signin-brand strong{font-weight:700}.signin-brand strong span{font-weight:400;color:#cad7c4}
.signin-intro-copy{max-width:620px;padding:48px 0}.signin-kicker{font-size:11px;font-weight:700;letter-spacing:.24em;color:#b8d893;text-transform:uppercase}
.signin-intro h1{font-family:'Playfair Display',Georgia,serif;font-size:clamp(44px,5.5vw,82px);line-height:1.05;letter-spacing:-.045em;margin:22px 0 24px}
.signin-intro-copy>p:last-child{max-width:480px;color:#c1cfc1;font-size:17px;line-height:1.7}.signin-footnote{color:#a5b4a5;font-size:12px}
.signin-panel{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:26px;padding:32px;background:radial-gradient(circle at 50% 22%,#29402c44,transparent 47%),#111713}
.signin-card{width:min(100%,450px);padding:clamp(30px,4vw,52px);border:1px solid #ffffff1b;border-radius:22px;background:#1a241d;box-shadow:0 28px 70px #0005}
.signin-card h2{font-family:'Playfair Display',Georgia,serif;font-size:clamp(30px,3vw,42px);line-height:1.12;letter-spacing:-.025em;margin:13px 0 16px}.signin-card>p:not(.signin-kicker){color:#b8c5b9;font-size:14px;line-height:1.65}
.signin-google{display:flex;align-items:center;justify-content:center;gap:14px;margin:30px 0 24px;padding:14px 20px;border-radius:10px;background:#f1f4eb;color:#1c2d21;text-decoration:none;font-weight:700;font-size:15px;transition:transform .15s,background .15s}.signin-google:hover{background:#dcebcf;transform:translateY(-2px)}.signin-google:focus-visible,.signin-admin:focus-visible{outline:3px solid #b8d893;outline-offset:4px}
.google-mark{display:grid;place-items:center;width:23px;height:23px;background:#fff;border-radius:50%;font-family:Arial,sans-serif;font-weight:700;font-size:18px;color:#4285f4}
.signin-note{padding-top:20px;border-top:1px solid #ffffff1b;font-size:12px!important}.signin-setup{padding:16px;border:1px solid #b8d89355;border-radius:10px;background:#b8d89316;color:#d8e8c9!important}.signin-public,.signin-admin{color:#b8c5b9;text-decoration:underline;text-underline-offset:3px;font-size:12px}.signin-public{font-weight:700;color:#dcebcf}
@media(max-width:850px){.signin-layout{grid-template-columns:1fr}.signin-intro{min-height:360px}.signin-intro-copy{padding:34px 0}.signin-intro h1{font-size:clamp(38px,9vw,64px)}.signin-panel{padding:32px 20px 64px}.signin-card{max-width:520px}}
@media(max-width:520px){.signin-intro{min-height:310px;padding:24px}.signin-intro h1{font-size:40px}.signin-intro-copy>p:last-child{font-size:14px}.signin-footnote{display:none}.signin-panel{padding:22px 14px 48px}.signin-card{border-radius:16px}}
