/* Lif'invest — desenvolvido por Lifetech.
   Branding base; the authored appearance layer follows below.
   Financial/domain/authentication behavior remains in the original modules. */
:root { --lif-petrol-detail:#2b7785; --lif-petrol-ink:#83c2cd; }
:root[data-theme=light] { --lif-petrol-detail:#0f4c5c; --lif-petrol-ink:#0f4c5c; }
.brand-symbol { box-shadow:inset 0 -2px 0 var(--lif-petrol-detail); }
.brand-sub,.lifetech-credit { color:var(--lif-petrol-ink); }
/* Lif'invest — Monitor surface. Local system typography, no external assets. */
:root{--bg:#0b1412;--side:#0e1815;--surface:#101a17;--surface-2:#172a21;--line:#293a32;--ink:#f2f6f3;--muted:#b0bdb6;--accent:#adf582;--accent-ink:#14250e;--green:#adf582;--blue:#60adeb;--lif-petrol-ink:#8fc6cf;--lif-petrol-detail:#2b7785}
:root[data-theme=light]{--bg:#f3f6f2;--side:#fff;--surface:#fff;--surface-2:#edf4e9;--line:#d2dfd1;--ink:#16291e;--muted:#526657;--accent:#286c35;--accent-ink:#fff;--green:#24723b;--blue:#27659e;--lif-petrol-ink:#0f4c5c}
.brand-sub,.lifetech-credit{color:var(--lif-petrol-ink)}
.sidebar{width:270px;padding:32px 15px 22px;gap:0}.workspace{margin-left:270px}.sidebar .brand{font-size:28px;padding:0 17px 38px;gap:15px}.brand-sub{font-size:10px;letter-spacing:.25em;line-height:1.35}.brand-symbol{position:relative;flex-shrink:0;width:45px;height:50px;background:var(--accent);border-radius:0;clip-path:polygon(0 15%,43% 0,43% 64%,78% 46%,100% 58%,100% 82%,43% 100%,0 77%);font-size:0;color:transparent;box-shadow:none}.brand-symbol span{display:none}#navigation{gap:6px}.nav-item,.nav-group>summary{font-size:15px;gap:17px;min-height:51px;padding:12px 18px;border-radius:11px}.nav-item svg,.nav-group>summary svg{width:22px;height:22px}.nav-item.active{font-weight:600;background:var(--surface-2)}.lif-nav-group:nth-last-child(3){border-top:1px solid var(--line);padding-top:17px;margin-top:16px}.nav-children{margin-left:29px}.nav-children .nav-item{font-size:13px;min-height:44px}.lif-sidebar-footer{display:block;padding:30px 13px 0}.lif-plan{display:flex;gap:14px;align-items:center;margin-bottom:20px}.lif-plan>a{border:1px solid var(--line);border-radius:9px;background:var(--surface-2);color:var(--accent);padding:6px 12px;font-size:13px}.lif-plan>div{font-size:12px}.lif-sidebar-footer small{font-size:11px}.lif-sidebar-profile{display:flex;align-items:center;gap:12px;text-align:left;width:100%;padding:21px 0 0;border:0;border-top:1px solid var(--line);background:transparent;color:var(--ink)}.lif-sidebar-profile strong{font-weight:500;font-size:13px;overflow-wrap:anywhere}.lif-sidebar-profile>span:last-child{margin-left:auto}.lif-profile-mark{display:grid;place-items:center;background:var(--surface-2);border-radius:50%;width:45px;height:45px;flex-shrink:0;font-size:22px;color:var(--accent)}
.topbar{min-height:70px;padding:12px 40px}.breadcrumb{font-size:13px}.topbar .demo-chip{font-family:inherit;letter-spacing:0;border:1px solid var(--line);border-radius:25px;padding:6px 13px;font-size:10px}.topbar-actions{gap:20px}.theme-toggle{min-height:44px;min-width:90px;font-size:14px}.avatar{font-size:13px;width:44px;height:44px}main{padding:30px 26px 20px;max-width:1800px}.page-heading{gap:20px;margin:0 14px 26px}.page-heading .eyebrow{display:none}.page-heading h1{font-size:clamp(28px,2.65vw,42px);font-weight:700;letter-spacing:-.04em;line-height:1.16}.lif-highlight{color:var(--accent)}.page-heading .subtitle{font-size:17px;margin-top:8px;color:var(--muted)}.heading-actions{gap:18px}.month-control{font-size:12px;gap:6px}.month-control input{font-size:14px;min-height:49px;padding:10px 13px;max-width:215px}.primary{font-size:14px;min-height:49px;padding:12px 19px;border-radius:10px}.lif-data-note{font-size:11px;color:var(--muted);margin:-12px 14px 18px}.metrics-grid{gap:15px;margin-bottom:20px}.metric{padding:24px 23px;border-radius:14px;min-height:157px}.metric.balance{border-color:#6c9164;background:radial-gradient(ellipse at 95% 0,#395e2a66,transparent 65%),linear-gradient(140deg,var(--surface-2),var(--surface));}.metric-top{font-size:14px;color:var(--muted)}.metric-top svg{width:21px;height:21px}.metric-value{font-size:clamp(25px,2.3vw,37px);font-weight:700;margin:10px 0 10px;letter-spacing:-.03em}.metric-note{font-size:11px}.panel{border-radius:14px}.panel-header{padding:19px 20px 0;margin-bottom:17px;gap:12px;align-items:flex-start}.panel-header h2{font-size:20px;font-weight:650;line-height:1.3}.panel-header a{font-size:12px;padding-top:4px}.panel-sub{font-size:12px;margin-top:4px}.legend{font-size:12px;margin-top:8px;gap:16px;flex-shrink:0}.legend i{width:10px;height:10px}.legend .out{background:var(--blue)}.lif-overview-grid{display:grid;grid-template-columns:minmax(0,1.85fr) minmax(0,1fr);gap:18px;margin-bottom:20px;align-items:start}.lif-flow{min-height:300px}.lif-bill-list{padding:0 17px 9px}.lif-bill{display:flex;align-items:center;gap:12px;padding:13px 0;border-top:1px solid var(--line);min-height:73px}.lif-bill-icon{display:grid;place-items:center;width:43px;height:43px;flex-shrink:0;border-radius:10px;background:var(--surface-2);color:var(--blue)}.lif-bill-icon svg{width:25px;height:25px}.lif-bill-copy{flex:1;min-width:0}.lif-bill-copy strong{display:block;font-weight:600;font-size:13px;overflow-wrap:anywhere}.lif-bill-copy small{display:block;color:var(--muted);font-size:10px;margin-top:5px}.lif-bill-value{font-size:14px;font-variant-numeric:tabular-nums}.lif-panel-note{font-size:11px;line-height:1.6;color:var(--muted);padding:11px 17px 14px}.lif-panel-note a{color:var(--accent);text-decoration:underline;text-underline-offset:3px}.lif-recent-table th{background:transparent;text-transform:none;letter-spacing:0;font-size:11px}.lif-recent-table td{font-size:12px;padding:11px 18px}.lif-recent-table th{padding:8px 18px}.lif-goal-list{padding:0 13px}.lif-goal{display:block;border:1px solid var(--line);border-radius:11px;padding:13px;margin-bottom:8px}.lif-goal h3{display:flex;align-items:center;gap:12px;font-size:14px;margin-bottom:14px}.lif-goal h3 svg{width:27px;height:27px;color:var(--accent);flex-shrink:0}.lif-goal .goal-amount{display:flex;justify-content:space-between;gap:10px;margin-bottom:8px}.lif-goal .goal-amount strong{font-size:21px}.lif-goal .progress-track{height:9px}.lif-goal small{display:block;text-align:right;font-size:10px;color:var(--accent);margin-top:5px}.lif-more{border-top:1px solid var(--line);padding-top:17px}.lif-more>summary{cursor:pointer;color:var(--accent);font-size:14px;min-height:44px;padding:8px 0;margin-bottom:12px}.lif-more .panel-header h2{font-size:16px}.lif-more .panel-sub{font-size:11px}.quick-start{margin-top:20px}.lif-more>section{margin-bottom:18px}
.auth-page{background:#0c110e;padding:34px 16px;place-items:center}.auth-shell{width:min(100%,470px)}.auth-top{margin-bottom:26px}.auth-top .brand{font-size:27px;gap:13px}.auth-top .brand-symbol{width:43px;height:45px;clip-path:none;border-radius:11px;box-shadow:inset 0 -3px 0 var(--lif-petrol-detail)}.auth-top .brand-symbol:after{content:'l';font-size:33px;font-weight:800;color:var(--accent-ink)}.auth-top .brand-sub{font-size:9px;letter-spacing:.25em}.auth-card{padding:30px 27px;border-radius:18px;background:#171f19}.auth-card .eyebrow{font-size:11px;letter-spacing:.16em;margin-bottom:12px}.auth-card h1{font-size:35px;font-weight:700}.auth-card .subtitle{font-size:15px;margin-top:12px;margin-bottom:28px}.auth-card .cloud-form{gap:22px}.auth-card .cloud-form label:not(.cloud-check){font-size:16px;gap:10px}.auth-card input:not([type=checkbox]){min-height:51px;border-radius:9px;background:#0c110e}.auth-card .cloud-check{font-size:14px;align-items:center;gap:14px}.auth-card .cloud-check input{width:23px;height:23px;min-height:23px}.auth-card .primary{min-height:49px;font-size:16px;margin-top:1px}.auth-links{gap:12px 23px;margin-top:22px;font-size:15px}.auth-links a{min-height:30px;display:flex;align-items:center}.auth-footer{font-size:12px;line-height:1.6;margin-top:20px}.legal-content{margin-top:22px;overflow-wrap:anywhere}.legal-content h2{font-size:22px;margin:14px 0}.legal-content h3{margin:14px 0 8px}.legal-content p{margin-bottom:12px}.legal-content ul{padding-left:20px}:root[data-theme=light] .auth-page{background:var(--bg)}:root[data-theme=light] .auth-card{background:var(--surface)}:root[data-theme=light] .auth-card input:not([type=checkbox]){background:var(--bg)}
/* SVG plots retain exact per-day cents in accessible point titles. */
.lif-daily-chart{padding:0 12px 0}.lif-daily-chart svg{display:block;width:100%;height:226px;overflow:visible}.lif-daily-chart text{font:11px 'Segoe UI',Arial,sans-serif;fill:var(--muted)}.lif-chart-grid{stroke:var(--line);stroke-width:1}.lif-chart-zero{stroke:var(--muted);stroke-opacity:.45}.lif-income-line,.lif-expense-line{fill:none;stroke-width:2.5;stroke-linejoin:round;stroke-linecap:round}.lif-income-line{stroke:var(--accent)}.lif-expense-line{stroke:var(--blue)}.lif-income-dot{fill:var(--accent)}.lif-expense-dot{fill:var(--blue)}.lif-daily-chart .lif-panel-note{font-size:10px;padding:0 7px 13px}
/* Keep values visible on narrow overview tables; category moves below description. */
.lif-recent-table .lif-mobile-category{display:none}
@media(max-width:600px){.lif-recent-table{table-layout:fixed;white-space:normal}.lif-recent-table th,.lif-recent-table td{padding:11px 9px;font-size:11px;overflow-wrap:anywhere}.lif-recent-table th:nth-child(1){width:25%}.lif-recent-table th:nth-child(2){width:45%}.lif-recent-table th:nth-child(4){width:30%;text-align:right}.lif-recent-table th:nth-child(3),.lif-recent-table td:nth-child(3){display:none}.lif-recent-table .description-cell{min-width:0;max-width:none}.lif-recent-table .lif-mobile-category{display:block}.lif-recent-table td.amount{white-space:normal;font-size:12px}}
@media(min-width:1450px){.page-heading{flex-wrap:nowrap}.heading-actions{gap:16px}.heading-actions .primary{white-space:nowrap}.metric{min-height:160px}.lif-flow{min-height:300px}}
@media(max-width:1449px) and (min-width:901px){.page-heading{flex-direction:column;align-items:stretch}.heading-actions{align-self:stretch;justify-content:flex-end}.metric{padding:20px 15px}.metric-top{font-size:12px}.metric-value{font-size:27px}.lif-overview-grid{grid-template-columns:minmax(0,1.5fr) minmax(0,1fr)}.panel-header h2{font-size:17px}.lif-flow .panel-header{flex-wrap:wrap}}
@media(max-width:900px){.sidebar{width:270px}.workspace{margin-left:0}.topbar{padding:12px 20px}.page-heading{margin:0 0 24px}.page-heading .subtitle{font-size:15px}.metric{padding:20px}.metric-value{font-size:29px}.lif-overview-grid{grid-template-columns:minmax(0,1.5fr) minmax(0,1fr)}.lif-flow .panel-header{flex-wrap:wrap}.panel-header h2{font-size:18px}.topbar-actions{gap:12px}.lif-bill{flex-wrap:wrap}.lif-bill-value{margin-left:55px}}
@media(max-width:600px){main{padding:24px 15px 18px}.page-heading h1{font-size:31px;max-width:340px}.page-heading .subtitle{font-size:14px;line-height:1.6}.heading-actions{gap:12px;align-items:flex-end}.heading-actions .primary{font-size:12px;padding:12px 10px;min-width:155px}.month-control{min-width:0;font-size:11px}.month-control input{font-size:12px;width:100%;min-width:0;max-width:none;padding:10px 8px}.lif-data-note{font-size:10px;margin:-8px 0 18px}.metrics-grid{gap:10px}.metric{padding:17px 13px;min-height:144px;border-radius:12px}.metric-top{font-size:11px;align-items:flex-start;gap:5px}.metric-top svg{width:16px;height:16px;flex-shrink:0}.metric-value{font-size:24px;margin-top:12px;overflow-wrap:anywhere}.metric-note{font-size:10px;line-height:1.5}.lif-overview-grid{grid-template-columns:1fr;gap:15px}.lif-flow{min-height:280px}.panel-header{padding:18px 16px 0;flex-wrap:wrap}.panel-header h2{font-size:18px}.panel-sub{font-size:11px}.panel-header a{min-height:30px}.lif-bill{flex-wrap:nowrap}.lif-bill-value{margin-left:0}.lif-recent-table td,.lif-recent-table th{padding:10px 13px}.lif-flow .legend{font-size:11px;margin-top:0}.lif-more>summary{font-size:12px}.auth-page{display:block;padding:25px 15px 17px}.auth-shell{margin:0 auto}.auth-top{margin-bottom:25px}.auth-top .brand{font-size:23px;gap:12px}.auth-top .brand-sub{font-size:8px}.auth-top .theme-toggle{font-size:13px;min-width:72px;padding:8px 10px;min-height:45px}.auth-top .brand-symbol{width:39px;height:42px}.auth-card{padding:25px 20px 23px;border-radius:16px}.auth-card .eyebrow{font-size:10px;margin-bottom:10px}.auth-card h1{font-size:30px}.auth-card .subtitle{font-size:14px;margin-top:12px;margin-bottom:27px}.auth-card .cloud-form{gap:21px}.auth-card input:not([type=checkbox]){min-height:49px}.auth-card .cloud-form label:not(.cloud-check){font-size:15px}.auth-card .cloud-check{font-size:13px}.auth-links{font-size:14px;gap:9px 20px;margin-top:19px}.auth-links a{min-height:32px}.auth-footer{font-size:12px;margin-top:19px}.legal-content h2{font-size:21px}}
/* Essential navigation: presentation only; auth rules remain untouched. */
.sidebar:has(.lif-settings-link){overflow-y:auto;overscroll-behavior:contain;padding-top:26px;padding-bottom:16px}
.sidebar:has(.lif-settings-link) .brand{padding-bottom:26px}
.sidebar:has(.lif-settings-link) #navigation{flex:0 0 auto;gap:5px}
.sidebar:has(.lif-settings-link) #navigation .nav-item{min-height:48px;padding:11px 16px}
.lif-sidebar-footer:has(.lif-settings-link){margin-top:auto;flex:0 0 auto;padding:20px 0 0;border-top:0}
.lif-settings-link{display:flex;align-items:center;gap:17px;min-height:48px;padding:11px 16px;border-radius:11px;color:var(--muted);font-size:13px;text-decoration:none}
.lif-settings-link.active{background:var(--surface-2);color:var(--accent)}
.lif-footer-account{display:flex;gap:8px;align-items:center;border-top:1px solid var(--line);margin-top:12px;padding:14px 8px 0}
.lif-footer-account .lif-sidebar-profile{min-width:0;flex:1;min-height:44px;padding:0;border:0;gap:10px;cursor:pointer}
.lif-footer-account .lif-sidebar-profile>span:last-child{margin-left:0;min-width:0}
.lif-footer-account .lif-sidebar-profile strong{display:block;font-size:12px;line-height:1.4}
.lif-footer-account .lif-sidebar-profile small{display:block;font-size:10px;color:var(--muted);line-height:1.5}
.lif-footer-account .lif-profile-mark{width:34px;height:34px;font-size:12px;font-weight:700}
.lif-footer-account #sidebar-plan{flex:0 0 auto;display:flex;align-items:center;min-height:44px;padding:4px 7px;color:var(--accent);font-size:11px;text-decoration:none;border-radius:7px}
.lif-footer-account #sidebar-plan::first-letter{font-weight:700}
.lif-section-tabs{display:flex;gap:6px;overflow-x:auto;max-width:100%;min-width:0;padding:2px 2px 10px;margin:0 0 18px;overscroll-behavior-x:contain;scroll-padding:3px}
.lif-section-tabs a{display:flex;align-items:center;justify-content:center;flex:0 0 auto;min-height:44px;padding:10px 15px;border:1px solid var(--line);border-radius:8px;color:var(--muted);font-size:13px;text-decoration:none;white-space:nowrap}
.lif-section-tabs a[aria-current=page]{background:var(--surface-2);border-color:var(--accent);color:var(--accent);font-weight:600}
.lif-section-tabs a:focus-visible,.lif-settings-link:focus-visible,.lif-footer-account a:focus-visible,.lif-footer-account button:focus-visible{outline:2px solid var(--accent);outline-offset:2px}
@media(max-height:740px){.sidebar:has(.lif-settings-link){padding-top:18px}.sidebar:has(.lif-settings-link) .brand{padding-bottom:18px}.lif-sidebar-footer:has(.lif-settings-link){padding-top:14px}}
@media(max-width:600px){.lif-section-tabs{margin-bottom:15px}.lif-section-tabs a{padding:10px 12px;font-size:12px}}


/* Screenshot-led account surface. All selectors isolated from the dashboard. */
html:has(.lif-auth-page){scrollbar-width:none}
.auth-page.lif-auth-page{--u:min(1px,.1111111111vw);--bg:#070e0a;--surface:#0d1510;--line:#344238;--ink:#fafbfa;--muted:#b7b9bc;--accent:#b0f47b;display:block;min-height:100dvh;padding:0;background:radial-gradient(ellipse 60% 34% at 100% 0%,#41672c66,transparent 72%),var(--bg);color:var(--ink);font-family:Arial,Helvetica,sans-serif;position:relative;isolation:isolate}
.lif-auth-page:before{content:"";position:absolute;z-index:-1;right:0;top:0;width:calc(620 * var(--u));height:calc(350 * var(--u));opacity:.3;background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 620 350' fill='none' stroke='%23546749' stroke-width='1'%3E%3Cpath d='M0 -30C430 80 300 190 670 250M0 -10C420 100 300 210 670 270M0 10C410 120 300 230 670 290M0 30C400 140 300 250 670 310M0 50C390 160 300 270 670 330M0 70C380 180 300 290 670 350'/%3E%3C/svg%3E") center/contain no-repeat;pointer-events:none}
.lif-auth-page .auth-shell{width:calc(816 * var(--u));max-width:816px;margin:0 auto;padding:calc(69 * var(--u)) 0 calc(42 * var(--u));min-height:0}
.lif-auth-page .auth-top{display:flex;align-items:center;justify-content:space-between;gap:calc(16 * var(--u));min-height:0;padding:0 calc(8 * var(--u));margin:0 0 calc(46 * var(--u));border:0}
.lif-auth-page .auth-top .brand{display:flex;gap:calc(27 * var(--u));font-size:calc(56 * var(--u));font-weight:800;line-height:1.15;letter-spacing:-.045em;white-space:nowrap;color:var(--ink);text-decoration:none}
.lif-auth-page .auth-top .brand-sub{display:block;color:var(--accent);font-size:calc(17 * var(--u));font-weight:600;letter-spacing:.28em;line-height:1.4;margin-top:calc(11 * var(--u))}
.lif-auth-page .lif-auth-mark{display:grid;place-items:center;width:calc(111 * var(--u));height:calc(113 * var(--u));flex-shrink:0;background:linear-gradient(145deg,#1e301a77,#0b120c);border:calc(2 * var(--u)) solid #344a2e;border-radius:calc(28 * var(--u));clip-path:none;color:var(--accent)}
.lif-auth-page .lif-auth-mark svg{width:calc(60 * var(--u));height:calc(72 * var(--u))}
.lif-auth-page .theme-toggle{position:relative;width:calc(77 * var(--u));min-width:44px;height:calc(77 * var(--u));min-height:44px;padding:0;border:1px solid #344a2e;border-radius:calc(16 * var(--u));background:#0c160d33;font-size:0;color:var(--ink);flex-shrink:0}
.lif-auth-page .theme-toggle:before{content:"";display:block;width:55%;height:55%;margin:auto;background:currentColor;mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 40 40' fill='none' stroke='black' stroke-width='1.8'%3E%3Ccircle cx='20' cy='20' r='9'/%3E%3Cpath d='M20 1v6m0 26v6M1 20h6m26 0h6M6.6 6.6l4.3 4.3m18.2 18.2 4.3 4.3M6.6 33.4l4.3-4.3M29.1 10.9l4.3-4.3'/%3E%3C/svg%3E") center/contain no-repeat}
.lif-auth-page .lif-auth-intro{position:static;padding:0 calc(9 * var(--u));margin:0 0 calc(32 * var(--u))}
.lif-auth-page .lif-auth-intro h2{margin:0;font-size:calc(86 * var(--u));line-height:.98;font-weight:800;letter-spacing:-.045em}
.lif-auth-page .lif-auth-intro h2 span{color:#a4ee73}
.lif-auth-page .lif-auth-intro p{font-size:calc(36 * var(--u));line-height:1.35;letter-spacing:-.025em;color:var(--muted);margin:calc(17 * var(--u)) 0 0}
.lif-auth-page .auth-card.lif-auth-panel{padding:calc(48 * var(--u));background:linear-gradient(130deg,#111b13aa,#0b120ed9);border:calc(2 * var(--u)) solid var(--line);border-radius:calc(34 * var(--u));box-shadow:0 0 calc(35 * var(--u)) #294c1610}
.lif-auth-page .lif-auth-panel h1{font-size:calc(48 * var(--u));font-weight:750;letter-spacing:-.01em;line-height:1.2;margin:0}
.lif-auth-page .lif-auth-panel .subtitle{font-size:calc(30 * var(--u));line-height:1.4;letter-spacing:-.015em;color:var(--muted);margin:calc(10 * var(--u)) 0 calc(25 * var(--u));max-width:none}
.lif-auth-page .lif-auth-panel .cloud-form{display:flex;flex-direction:column;gap:calc(27 * var(--u));padding:0}
.lif-auth-page .lif-auth-panel .cloud-form .lif-auth-field{display:flex;flex-direction:column;gap:calc(11 * var(--u));font-size:max(14px,calc(27 * var(--u)));font-weight:500;line-height:1.3;min-width:0}
.lif-auth-page .lif-input-wrap{position:relative;display:flex;align-items:center;min-width:0}
.lif-auth-page .lif-input-wrap>svg{position:absolute;left:calc(31 * var(--u));width:calc(39 * var(--u));height:calc(39 * var(--u));color:var(--muted);pointer-events:none}
.lif-auth-page .lif-auth-panel input:not([type=checkbox]){width:100%;min-height:max(44px,calc(92 * var(--u)));height:calc(92 * var(--u));border:calc(2 * var(--u)) solid #404842;border-radius:calc(17 * var(--u));background:#070c09;color:var(--ink);padding:0 calc(83 * var(--u)) 0 calc(102 * var(--u));font:inherit;font-size:max(16px,calc(28 * var(--u)));box-shadow:none}
.lif-auth-page input::placeholder{color:#a3a5aa;opacity:1}
.lif-auth-page .lif-password-toggle{position:absolute;right:calc(20 * var(--u));width:max(44px,calc(54 * var(--u)));height:max(44px,calc(54 * var(--u)));display:grid;place-items:center;padding:calc(7 * var(--u));border:0;background:transparent;color:var(--muted)}
.lif-auth-page .lif-password-toggle svg{width:calc(40 * var(--u));height:calc(40 * var(--u));min-width:22px;min-height:22px}
.lif-auth-page .lif-auth-options{display:flex;align-items:center;justify-content:space-between;gap:calc(10 * var(--u));min-height:calc(48 * var(--u));margin-top:calc(1 * var(--u));font-size:calc(26 * var(--u))}
.lif-auth-page .lif-auth-panel .cloud-check{display:flex;align-items:center;gap:calc(23 * var(--u));font-size:max(12px,calc(27 * var(--u)));font-weight:400;line-height:1.4;color:var(--muted);min-height:44px}
.lif-auth-page .lif-auth-panel .cloud-check input{appearance:none;width:calc(39 * var(--u));height:calc(39 * var(--u));min-width:20px;min-height:20px;flex-shrink:0;margin:0;border:calc(3 * var(--u)) solid #bec1c5;border-radius:calc(11 * var(--u));background:#070b09;accent-color:var(--accent)}
.lif-auth-page .lif-auth-panel .cloud-check input:checked{background:var(--accent);border-color:var(--accent);box-shadow:inset 0 0 0 4px #152214}
.lif-auth-page .lif-auth-options>a{color:var(--accent);text-decoration:underline;text-underline-offset:calc(6 * var(--u));white-space:nowrap;min-height:44px;display:flex;align-items:center;font-size:max(11px,calc(26 * var(--u)))}
.lif-auth-page .lif-auth-panel .primary{width:100%;min-height:max(46px,calc(105 * var(--u)));border:0;border-radius:calc(17 * var(--u));background:var(--accent);color:#081207;display:flex;align-items:center;justify-content:center;gap:calc(24 * var(--u));font-size:calc(38 * var(--u));font-weight:750;letter-spacing:-.02em;margin-top:calc(3 * var(--u));padding:calc(14 * var(--u))}
.lif-auth-page .primary svg{width:calc(40 * var(--u));height:calc(40 * var(--u))}
.lif-auth-page #auth-links{display:flex;align-items:center;justify-content:center;gap:calc(16 * var(--u));margin:calc(33 * var(--u)) 0 0;font-size:max(12px,calc(25 * var(--u)));color:var(--muted);flex-wrap:wrap}
.lif-auth-page #auth-links a{color:var(--accent);text-decoration:none;min-height:44px;display:flex;align-items:center}
.lif-auth-page [data-mode=login] #auth-links{flex-wrap:nowrap;white-space:nowrap}
.lif-auth-page [data-mode=login] #auth-links:before,.lif-auth-page [data-mode=login] #auth-links:after{content:"";height:1px;background:var(--line);flex:1;min-width:0}
.lif-auth-page .lif-auth-security{display:flex;align-items:center;gap:calc(32 * var(--u));margin:calc(39 * var(--u)) calc(48 * var(--u)) 0;color:var(--muted)}
.lif-auth-page .lif-auth-security svg{width:calc(46 * var(--u));height:calc(54 * var(--u));flex-shrink:0;color:#b9dbb9}
.lif-auth-page .lif-auth-security p{font-size:max(10px,calc(23 * var(--u)));line-height:1.45;margin:0;letter-spacing:.01em}
.lif-auth-page .lif-auth-security strong{font-weight:600}
.lif-auth-page .lif-auth-footer{text-align:center;margin-top:calc(61 * var(--u));font-size:max(10px,calc(22 * var(--u)));color:#85888e}
.lif-auth-page .lif-auth-footer .auth-links{display:flex;justify-content:center;align-items:center;gap:calc(20 * var(--u));margin:0;font-size:inherit}
.lif-auth-page .lif-auth-footer .auth-links a{color:var(--muted);text-decoration:none;min-height:44px;display:flex;align-items:center}
.lif-auth-page .lif-auth-footer .auth-links a+a:before{content:"·";margin-right:calc(20 * var(--u))}
.lif-auth-page .lif-auth-footer p{margin:calc(2 * var(--u)) 0 0}
.lif-auth-page .lif-auth-footer p span{color:var(--accent)}
.lif-auth-page .legal-content{font-size:max(14px,calc(22 * var(--u)));line-height:1.65;padding:16px;min-width:0;overflow-wrap:anywhere}
.lif-auth-page .legal-content h2{font-size:1.35em}.lif-auth-page .legal-content h3{font-size:1.1em}.lif-auth-page .legal-content legend{max-width:100%;white-space:normal}
.lif-auth-page :is(a,button,input,summary):focus-visible{outline:2px solid var(--accent);outline-offset:4px}
html[data-theme=light] .lif-auth-page{--bg:#f0f5ee;--surface:#fff;--line:#c1d0bb;--ink:#17251a;--muted:#536051;--accent:#9ce26d;background:radial-gradient(ellipse at 100% 0%,#d3eac5,transparent 60%),var(--bg)}
html[data-theme=light] .lif-auth-page .auth-card{background:#ffffffdb}html[data-theme=light] .lif-auth-page input:not([type=checkbox]){background:#f8fbf6;border-color:#a9b6a4}html[data-theme=light] .lif-auth-page .lif-auth-intro h2 span,html[data-theme=light] .lif-auth-page a,html[data-theme=light] .lif-auth-page .brand-sub{color:#387321}html[data-theme=light] .lif-auth-page .lif-auth-mark{background:#deefd1;color:#43822d}
html[data-theme=light] .lif-auth-page #auth-links a,html[data-theme=light] .lif-auth-page .lif-auth-options>a,html[data-theme=light] .lif-auth-page .lif-auth-footer p span,html[data-theme=light] .lif-auth-page .lif-auth-security svg{color:#387321}
html[data-theme=light] .lif-auth-page .cloud-check input{background:#fff;border-color:#66725f}
/* Desktop uses interface sizing, not the portrait reference's raster scale. */
@media(min-width:800px) and (min-aspect-ratio:1/1){
 .auth-page.lif-auth-page{--u:.46px}
 .lif-auth-page .auth-shell{width:430px;max-width:calc(100% - 48px);padding:18px 0 14px}
 .lif-auth-page .auth-top{padding:0 4px;margin-bottom:16px}
 .lif-auth-page .auth-top .brand{gap:12px;font-size:26px}
 .lif-auth-page .auth-top .brand-sub{font-size:8px;margin-top:5px;letter-spacing:.23em}
 .lif-auth-page .lif-auth-mark{width:50px;height:52px;border-width:1px;border-radius:13px}
 .lif-auth-page .lif-auth-mark svg{width:28px;height:34px}
 .lif-auth-page .theme-toggle{width:42px;height:42px;min-width:42px;min-height:42px;border-radius:10px}
 .lif-auth-page .lif-auth-intro{padding:0 4px;margin-bottom:16px}
 .lif-auth-page .lif-auth-intro h2{font-size:38px;line-height:1}
 .lif-auth-page .lif-auth-intro p{font-size:16px;margin-top:9px;line-height:1.4}
 .lif-auth-page .auth-card.lif-auth-panel{padding:22px;border-width:1px;border-radius:20px}
 .lif-auth-page .lif-auth-panel h1{font-size:24px;line-height:1.2}
 .lif-auth-page .lif-auth-panel .subtitle{font-size:14px;margin:7px 0 16px;line-height:1.4}
 .lif-auth-page .lif-auth-panel .cloud-form{gap:12px}
 .lif-auth-page .lif-auth-panel .cloud-form .lif-auth-field{gap:6px;font-size:13px}
 .lif-auth-page .lif-auth-panel input:not([type=checkbox]){height:44px;min-height:44px;padding:0 44px;font-size:15px;border-width:1px;border-radius:9px}
 .lif-auth-page .lif-input-wrap>svg{left:14px;width:20px;height:20px}
 .lif-auth-page .lif-password-toggle{right:3px;width:40px;height:40px;padding:9px}
 .lif-auth-page .lif-password-toggle svg{width:22px;height:22px}
 .lif-auth-page .lif-auth-options{gap:10px;min-height:32px;margin:0;font-size:12px}
 .lif-auth-page .lif-auth-panel .cloud-check{gap:9px;min-height:32px;font-size:12px}
 .lif-auth-page .lif-auth-panel .cloud-check input{width:18px;height:18px;min-width:18px;min-height:18px;border-width:2px;border-radius:5px}
 .lif-auth-page .lif-auth-options>a{min-height:32px;font-size:12px;text-underline-offset:3px}
 .lif-auth-page .lif-auth-panel .primary{min-height:48px;font-size:18px;border-radius:9px;gap:12px;padding:10px;margin-top:0}
 .lif-auth-page .primary svg{width:22px;height:22px}
 .lif-auth-page #auth-links{gap:10px;margin-top:10px;font-size:12px}
 .lif-auth-page #auth-links a{min-height:32px}
 .lif-auth-page .lif-auth-security{gap:12px;margin:14px 22px 0}
 .lif-auth-page .lif-auth-security svg{width:24px;height:28px}
 .lif-auth-page .lif-auth-security p{font-size:11px;line-height:1.45}
 .lif-auth-page .lif-auth-footer{margin-top:12px;font-size:11px}
 .lif-auth-page .lif-auth-footer .auth-links{gap:12px}
 .lif-auth-page .lif-auth-footer .auth-links a{min-height:32px}
 .lif-auth-page .lif-auth-footer .auth-links a+a:before{margin-right:12px}
 .lif-auth-page .lif-auth-footer p{margin:0}
}
@media(min-width:800px) and (min-aspect-ratio:1/1) and (max-height:740px){
 .lif-auth-page .auth-shell{padding-top:12px;padding-bottom:8px}
 .lif-auth-page .auth-top{margin-bottom:12px}
 .lif-auth-page .lif-auth-intro{margin-bottom:12px}
 .lif-auth-page .lif-auth-intro h2{font-size:34px}
 .lif-auth-page .lif-auth-footer{margin-top:8px}
}
@media(max-width:480px){.lif-auth-page .auth-top .brand{gap:12px}.lif-auth-page .auth-top .brand-sub{font-size:6.5px;letter-spacing:.24em}.lif-auth-page .lif-auth-panel .cloud-form{gap:14px}.lif-auth-page .lif-auth-panel .primary{font-size:20px}.lif-auth-page .lif-password-toggle{right:4px}.lif-auth-page .lif-auth-options{gap:6px}.lif-auth-page .lif-auth-panel .cloud-check{gap:9px}.lif-auth-page .lif-auth-footer{margin-top:24px}}

