
/* Tela de entrada exclusiva — visível antes de qualquer recurso interno. */
#private-app[hidden],#auth-gate[hidden]{display:none!important}
.entry-page{min-height:100vh;display:grid;grid-template-columns:minmax(0,1fr) minmax(390px,520px);background:#151310;color:#f5e9d5;font-family:Inter,ui-sans-serif,system-ui,sans-serif}
.entry-intro{min-height:100vh;background:radial-gradient(circle at 15% 10%,#7151283d 0,transparent 36%),linear-gradient(138deg,#17130f,#302318 55%,#17130f);padding:clamp(35px,5.2vw,86px);display:flex;flex-direction:column;justify-content:space-between;position:relative;overflow:hidden}
.entry-intro:after{content:"";position:absolute;width:480px;height:480px;right:-230px;bottom:-200px;border:1px solid #d4a96244;border-radius:50%;box-shadow:0 0 0 64px #d4a9620d,0 0 0 125px #d4a96210;pointer-events:none}
.entry-brand{display:flex;align-items:center;gap:14px;max-width:430px}
.entry-brand img{height:78px;width:78px;object-fit:contain}
.entry-brand small{display:block;color:#e3bc71;letter-spacing:1.7px;font-size:10px;font-weight:780}
.entry-intro-copy{max-width:620px;position:relative;z-index:1}
.entry-intro-copy .entry-overline{font-size:11px;letter-spacing:2px;font-weight:760;color:#dfb66f;text-transform:uppercase}
.entry-intro-copy h1{font-size:clamp(32px,4.3vw,59px);line-height:1.12;font-weight:840;letter-spacing:-2px;margin:17px 0 21px}
.entry-intro-copy h1 span{color:#e3bc72}
.entry-intro-copy p{color:#d0bea3;font-size:15px;line-height:1.75;max-width:495px}
.entry-features{display:flex;gap:12px;flex-wrap:wrap;margin-top:25px}
.entry-features span{font-size:11px;font-weight:700;padding:10px 13px;border:1px solid #8d6d3b70;border-radius:9px;background:#d2a75b0e;color:#efd4a9}
.entry-intro-foot{font-size:11px;color:#ad9574;letter-spacing:.3px}
.entry-access{background:#f7f4ee;color:#2a231b;min-height:100vh;display:flex;align-items:center;justify-content:center;padding:30px clamp(20px,4vw,55px)}
.entry-panel{width:100%;max-width:420px}
.entry-panel-head{display:grid;gap:8px;margin-bottom:24px}
.entry-panel-head .entry-kicker{font-size:10px;text-transform:uppercase;letter-spacing:1.4px;font-weight:800;color:#946725}
.entry-panel-head h2{font-size:30px;letter-spacing:-.8px;line-height:1.2;color:#292118}
.entry-panel-head p{color:#746a5e;font-size:13px;line-height:1.65}
.entry-tabs{display:flex;padding:4px;border:1px solid #e4d9c9;background:#efebe4;border-radius:11px;gap:4px;margin:15px 0 23px}
.entry-tabs button{flex:1;border:0;background:transparent;padding:11px 7px;border-radius:8px;color:#796e5d;font-size:12px;font-weight:760;cursor:pointer}
.entry-tabs button.active{background:white;color:#3e2f1e;box-shadow:0 1px 8px #00000013}
.entry-field{display:flex;flex-direction:column;gap:9px;font-size:12px;font-weight:720;color:#453c31;margin:15px 0}
.entry-field input{width:100%;height:48px;border:1px solid #d9cfbf;background:#fff;border-radius:10px;padding:11px 14px;color:#2b231a;font:inherit;font-weight:500;outline:none}
.entry-field input:focus{border-color:#ae803a;box-shadow:0 0 0 3px #c79b4c21}
.entry-action{background:linear-gradient(135deg,#d6a95a,#a5742b);border:1px solid #b78943;color:#21190d;min-height:48px;padding:13px 19px;border-radius:10px;width:100%;font-size:13px;font-weight:840;cursor:pointer;margin-top:8px}
.entry-action:hover{filter:brightness(.97)}
.entry-action:disabled{cursor:wait;opacity:.7}
.entry-help{margin:16px 0;font-size:12px;color:#736758;line-height:1.7}
.entry-help button,.entry-settings-button{border:0;background:none;color:#926421;cursor:pointer;padding:3px 0;text-decoration:underline;font:inherit;font-weight:730}
.entry-settings{margin:22px 0 0;border-top:1px solid #ded4c6;padding-top:15px}
.entry-settings summary{cursor:pointer;color:#85612d;font-size:11px;font-weight:770;line-height:1.5}
.entry-settings p{font-size:11px;color:#786d5e;line-height:1.65;margin:11px 0}
.entry-message{padding:11px 12px;min-height:20px;line-height:1.65;color:#615037;font-size:12px;margin:15px 0;border-radius:8px;overflow-wrap:anywhere}
.entry-message:empty{display:none}
.entry-message.is-error{background:#fff0e9;border:1px solid #e8b5a0;color:#9f402a}
.entry-message:not(:empty):not(.is-error){background:#eaf0e6;border:1px solid #c7d8bc;color:#43643f}
.entry-note{font-size:11px;color:#756b5e;line-height:1.6;margin-top:23px}
.entry-note strong{color:#6b4b25}
.entry-loading{display:flex;align-items:center;gap:10px;font-size:13px;color:#635648;padding:20px 0}
.entry-spinner{width:18px;height:18px;border:2px solid #dac6a8;border-top-color:#9a6a26;border-radius:50%;animation:entry-spin .8s linear infinite}
@keyframes entry-spin{to{transform:rotate(360deg)}}
@media(max-width:900px){.entry-page{grid-template-columns:1fr}.entry-intro{min-height:auto;padding:26px 28px 20px}.entry-intro-copy{display:none}.entry-brand img{width:59px;height:59px}.entry-intro-foot{display:none}.entry-access{min-height:calc(100vh - 108px);align-items:flex-start;padding:40px 22px}}
@media(max-width:480px){.entry-intro{padding:14px 18px}.entry-brand img{height:47px;width:47px}.entry-brand small{font-size:9px}.entry-access{padding:28px 18px}.entry-panel-head h2{font-size:27px}.entry-tabs button{font-size:11px}}
@media(prefers-reduced-motion:reduce){.entry-spinner{animation:none}}

/* Google OAuth uses the same Supabase session as e-mail/password. */
.entry-divider{display:flex;align-items:center;gap:12px;margin:20px 0;color:#82786b;font-size:11px}
.entry-divider:before,.entry-divider:after{content:"";height:1px;flex:1;background:#dfd5c9}
.entry-google{width:100%;display:flex;align-items:center;justify-content:center;gap:12px;min-height:48px;padding:12px 16px;
 border:1px solid #d4c8b6;border-radius:10px;background:#fff;color:#30291f;font-size:13px;font-weight:750;
 cursor:pointer;transition:background .15s ease,border-color .15s ease}
.entry-google:hover{background:#f7f2e8;border-color:#b89c6f}
.entry-google:focus-visible{outline:2px solid #b78a43;outline-offset:3px}
.entry-google-icon{width:20px;height:20px;flex:none}
