:root{--ink:#17231d;--muted:#667069;--cream:#f7f4ed;--white:#fff;--lime:#c9f05b;--green:#32664c;--line:#dfe3dd;--red:#a43e2a;--shadow:0 20px 60px rgba(23,35,29,.09)}*{box-sizing:border-box}body{margin:0;background:var(--cream);color:var(--ink);font-family:"DM Sans",sans-serif}button,input{font:inherit}.login-link{color:var(--ink);text-decoration:none;font-size:13px;font-weight:700}.auth-shell{min-height:100vh;display:grid;grid-template-columns:1fr 1fr}.auth-art{background:var(--ink);color:#fff;padding:55px;display:flex;flex-direction:column;justify-content:space-between;position:relative;overflow:hidden}.auth-art:after{content:"";position:absolute;width:430px;height:430px;border:95px solid var(--lime);border-radius:50%;right:-180px;bottom:-180px;opacity:.9}.brand{display:flex;align-items:center;gap:10px;text-decoration:none;color:inherit;font:800 19px Manrope}.brand-mark{display:grid;place-items:center;width:34px;height:34px;border-radius:10px;background:var(--lime);color:var(--ink);transform:rotate(-5deg)}.auth-quote{position:relative;z-index:1;max-width:520px}.auth-quote h1{font:800 clamp(38px,5vw,68px)/1.04 Manrope;margin:0 0 24px}.auth-quote h1 em{font-style:normal;color:var(--lime)}.auth-quote p{color:#b8c2bc;line-height:1.7}.auth-main{display:grid;place-items:center;padding:40px}.auth-card{width:min(420px,100%)}.auth-card h2{font:800 32px Manrope;margin:0 0 8px}.subcopy{color:var(--muted);font-size:14px;line-height:1.5;margin:0 0 28px}.form-group{margin:0 0 17px}.form-group label{display:flex;justify-content:space-between;font-size:12px;font-weight:700;margin-bottom:7px}.form-group label a,.inline-link{color:var(--green);text-decoration:none}.field{width:100%;height:48px;border:1px solid #cdd3cd;border-radius:11px;background:#fff;padding:0 14px;outline:0}.field:focus{border-color:var(--green);box-shadow:0 0 0 3px rgba(50,102,76,.1)}.password-wrap{position:relative}.password-wrap .field{padding-right:58px}.reveal{position:absolute;right:10px;top:9px;border:0;background:0 0;color:var(--muted);font-size:11px;font-weight:700;padding:7px}.button{border:0;border-radius:11px;padding:14px 18px;font-weight:800;cursor:pointer}.button-primary{width:100%;background:var(--lime);color:var(--ink);box-shadow:0 5px 0 #a5ca3c}.button-dark{background:var(--ink);color:#fff}.button-outline{background:#fff;border:1px solid var(--line)}.button-danger{color:var(--red);background:#fff;border:1px solid #e5c9c3}.form-message{font-size:12px;min-height:18px;margin:13px 0;color:var(--red)}.form-message.success{color:var(--green)}.auth-foot{text-align:center;color:var(--muted);font-size:12px;margin-top:22px}.auth-view[hidden]{display:none}.account-header{height:72px;background:#fff;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;padding:0 max(24px,5vw)}.account-header .brand{color:var(--ink)}.account-header .brand-mark{background:var(--ink);color:var(--lime)}.account-nav{display:flex;align-items:center;gap:18px}.account-nav a{font-size:13px;color:var(--muted);text-decoration:none}.avatar{width:34px;height:34px;border-radius:50%;background:var(--green);color:#fff;display:grid;place-items:center;font-weight:800}.dashboard{max-width:1080px;margin:0 auto;padding:58px 24px 90px}.dashboard-title{display:flex;justify-content:space-between;align-items:end;margin-bottom:32px}.dashboard-title h1{font:800 38px Manrope;margin:0}.dashboard-title p{color:var(--muted);margin:7px 0 0}.dashboard-grid{display:grid;grid-template-columns:1fr 1.45fr;gap:20px}.card{background:#fff;border:1px solid var(--line);border-radius:17px;padding:26px;box-shadow:var(--shadow)}.card.full{grid-column:1/-1}.card-head{display:flex;justify-content:space-between;align-items:start;margin-bottom:24px}.card h2{font:700 17px Manrope;margin:0}.card-head p{font-size:12px;color:var(--muted);margin:5px 0}.status{font-size:10px;font-weight:800;letter-spacing:.08em;padding:6px 9px;border-radius:99px;background:#e8f3d0;color:#496614}.profile-row{display:flex;align-items:center;gap:14px;padding:13px 0;border-bottom:1px solid var(--line)}.profile-row:last-child{border:0}.profile-row span{font-size:11px;color:var(--muted);width:80px}.profile-row strong{font-size:13px}.plan-box{background:var(--ink);color:#fff;border-radius:14px;padding:22px;display:flex;justify-content:space-between;gap:20px}.plan-box small{color:#aeb8b2}.plan-box strong{font:800 28px Manrope;display:block;margin:7px 0}.plan-box strong span{font:500 12px "DM Sans"}.billing-meta{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin:16px 0}.billing-meta div{background:#f5f6f3;border-radius:10px;padding:12px}.billing-meta span{display:block;color:var(--muted);font-size:10px;margin-bottom:4px}.billing-meta b{font-size:12px}.card-actions{display:flex;justify-content:space-between;gap:10px;margin-top:18px}.card-actions button{font-size:12px}.danger-zone{border-color:#e7cbc5}.danger-copy{font-size:12px;color:var(--muted);line-height:1.5;max-width:650px}.modal{position:fixed;inset:0;background:rgba(23,35,29,.6);display:grid;place-items:center;padding:20px;z-index:20}.modal[hidden]{display:none}.modal-card{background:#fff;border-radius:16px;padding:28px;width:min(440px,100%)}.modal-card h2{font:700 20px Manrope;margin:0}.modal-card p{font-size:13px;color:var(--muted);line-height:1.6}.modal-actions{display:flex;justify-content:flex-end;gap:9px;margin-top:22px}@media(max-width:760px){.auth-shell{grid-template-columns:1fr}.auth-art{min-height:260px;padding:30px}.auth-quote h1{font-size:38px;margin-top:45px}.auth-quote p{display:none}.auth-main{padding:45px 24px}.dashboard-grid{grid-template-columns:1fr}.card.full{grid-column:auto}.dashboard-title{align-items:start;flex-direction:column;gap:15px}.plan-box{flex-direction:column}.billing-meta{grid-template-columns:1fr}.account-nav>a:first-child{display:none}}.auth-foot,.billing-meta b,.card-actions button,.card-head p,.danger-copy,.form-group label,.form-message,.plan-box strong span,.reveal{font-size:13px}.billing-meta span,.profile-row span,.status{font-size:11px}.account-header{gap:24px;position:relative;z-index:10}.account-header .account-nav{flex:1;justify-content:flex-end;flex-wrap:wrap}.account-header .account-nav a{white-space:nowrap}.account-header .account-logout{font-weight:700;color:var(--ink)}.account-footer{padding:30px max(24px,5vw);display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:24px;border-top:1px solid var(--line);background:#fff;color:var(--muted)}.account-footer nav{display:flex;justify-content:center;gap:18px;flex-wrap:wrap}.account-footer nav a{color:var(--muted);text-decoration:none;font-size:12px}.account-footer p{display:none}.account-footer small{white-space:nowrap}.shared-account-header{position:relative;z-index:3}@media(max-width:920px){.account-header .account-nav a:not(.account-logout){display:none}.account-footer{grid-template-columns:1fr;justify-items:center}.account-footer nav{display:flex}}.footer-contact{color:inherit;text-decoration:none}.footer-contact:hover{color:var(--ink)}.mobile-menu-toggle{display:none;width:40px;height:40px;padding:9px;border:1px solid var(--line);border-radius:10px;background:#fff;align-content:center;justify-items:center;gap:4px}.mobile-menu-toggle span{display:block;width:19px;height:2px;border-radius:2px;background:var(--ink);transition:transform .2s,opacity .2s}.menu-open .mobile-menu-toggle span:first-child{transform:translateY(6px) rotate(45deg)}.menu-open .mobile-menu-toggle span:nth-child(2){opacity:0}.menu-open .mobile-menu-toggle span:nth-child(3){transform:translateY(-6px) rotate(-45deg)}@media(max-width:920px){.account-header .mobile-menu-toggle{display:grid;order:1;margin-right:12px}.account-header>.brand{order:2;margin-right:auto}.account-header .account-nav{display:none;position:absolute;z-index:20;left:16px;right:16px;top:calc(100% + 8px);padding:10px;background:#fff;border:1px solid var(--line);border-radius:14px;box-shadow:0 14px 35px rgba(23,35,29,.16);flex-direction:column;align-items:stretch;gap:2px}.account-header.menu-open .account-nav{display:flex}.account-header .account-nav a,.account-header .account-nav a:not(.account-logout){display:block;padding:11px 13px;border-radius:9px}.account-header .account-logout{width:100%;text-align:left}.account-header .avatar{display:none}}body .account-footer nav a,body .auth-foot,body .billing-meta b,body .billing-meta span,body .card-actions button,body .card-head p,body .danger-copy,body .form-group label,body .form-message,body .plan-box strong span,body .profile-row span,body .reveal,body .status,body small{font-size:13px!important;line-height:1.5}.brand-mark:has(img){width:40px;height:40px;border-radius:0;background:0 0;transform:none;overflow:visible}.brand-mark img{display:block;width:40px;height:40px;object-fit:contain}.topbar{height:76px;padding:0 max(24px,5vw);display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid rgba(23,35,29,.09);background:rgba(247,244,237,.9);position:sticky;top:0;z-index:10;backdrop-filter:blur(14px)}.topbar>nav{display:flex;gap:32px}.topbar>nav a{color:#536058;text-decoration:none;font-weight:600;font-size:14px}.topbar .brand{color:var(--ink)}@media(max-width:920px){.topbar{padding:0 16px;justify-content:flex-start}.topbar .mobile-menu-toggle{display:grid;order:1;margin-right:12px}.topbar>.brand{order:2;margin-right:auto}.topbar>nav{display:none;position:absolute;left:16px;right:16px;top:calc(100% + 8px);padding:10px;background:#fff;border:1px solid var(--line);border-radius:14px;box-shadow:0 14px 35px rgba(23,35,29,.16);flex-direction:column;gap:2px}.topbar.menu-open>nav{display:flex}.topbar>nav a{padding:11px 13px;border-radius:9px}.topbar>nav a:hover{background:#f3f5f0;color:var(--ink)}}@media(max-width:520px){.topbar{height:65px}.topbar .brand span:last-child{display:none}}.auth-art>.auth-quote{margin:auto 0}.session-settings{color:var(--ink);text-decoration:none;font-size:13px;font-weight:700}.session-logout{border:1px solid #e4c5bf;border-radius:10px;background:#fff;color:#a43e2a;padding:9px 13px;font-size:13px;font-weight:700}@media(max-width:760px){.auth-art{min-height:210px;padding:22px 30px}.auth-art .auth-quote h1{margin-top:0;margin-bottom:14px}.auth-art>small{position:relative;z-index:1}}.account-header .brand-mark{background:var(--lime);color:var(--ink)}.account-header .account-logout{border:1px solid #e4c5bf;border-radius:10px;background:#fff;color:var(--red);padding:9px 13px;font-size:13px;font-weight:700;cursor:pointer}.subscription-card .danger-copy{margin:14px 0 0}.subscription-actions{align-items:center;flex-wrap:wrap}.account-pending{visibility:hidden}.terms-consent{display:flex;align-items:flex-start;gap:10px;margin:4px 0 19px;color:var(--muted);font-size:12px;line-height:1.5}.terms-consent input{width:17px;height:17px;margin:2px 0 0;accent-color:var(--green);flex:0 0 auto}.terms-consent a{color:var(--green);font-weight:700;text-decoration:none}.terms-consent a:hover{text-decoration:underline}.legal-main{max-width:860px;margin:0 auto;padding:64px 24px 90px}.legal-card{background:#fff;border:1px solid var(--line);border-radius:20px;padding:clamp(25px,5vw,54px);padding-top:clamp(18px,3vw,30px);box-shadow:var(--shadow)}.legal-card h1{font:800 clamp(34px,5vw,52px)/1.1 Manrope;margin:0 0 10px}.legal-updated{color:var(--muted);font-size:13px;margin:0 0 34px}.legal-card h2{font:700 20px Manrope;margin:31px 0 10px}.legal-card li,.legal-card p{color:#46534c;font-size:14px;line-height:1.75}.legal-card ul{padding-left:22px}.legal-card a{color:var(--green);font-weight:700}.legal-notice{padding:16px 18px;border-left:4px solid var(--lime);background:#f5f8ec;border-radius:8px}.legal-back{display:inline-block;margin-top:28px;text-decoration:none}.legal-back-top{margin:0;padding-bottom:24px}.validation-group{margin-bottom:14px}.validation-field{position:relative}.validation-group:not(.password-validation) .field{padding-right:42px}.validation-icon{position:absolute;right:14px;top:50%;width:19px;height:19px;border-radius:50%;transform:translateY(-50%);display:none;place-items:center;color:#fff;font-size:12px;font-weight:900}.is-valid .validation-icon{display:grid;background:var(--green)}.is-valid .validation-icon:after{content:"✓"}.is-invalid .validation-icon{display:grid;background:var(--red)}.is-invalid .validation-icon:after{content:"!"}.is-valid .field{border-color:#5d9277;background:#fbfefc}.is-invalid .field{border-color:var(--red);background:snow;box-shadow:0 0 0 3px rgba(168,75,58,.08)}.field-feedback{min-height:18px;margin:5px 2px 0;color:var(--red);font-size:12px;line-height:1.35}.password-strength{display:flex;align-items:center;gap:10px;margin-top:9px}.strength-track{height:5px;flex:1;background:#e2e6e1;border-radius:9px;overflow:hidden}.strength-track i{display:block;width:0;height:100%;border-radius:inherit;background:var(--red);transition:width .25s,background .25s}.strength-label{min-width:44px;color:var(--muted);font-size:11px;font-weight:700;text-align:right}.password-strength[data-score="1"] .strength-track i{width:25%}.password-strength[data-score="2"] .strength-track i{width:50%;background:#d29a32}.password-strength[data-score="3"] .strength-track i{width:75%;background:#7b9b3d}.password-strength[data-score="4"] .strength-track i{width:100%;background:var(--green)}.password-requirements{display:flex;flex-wrap:wrap;gap:6px 15px;padding:0;margin:9px 0 0;list-style:none;color:var(--muted);font-size:11px}.password-requirements li:before{content:"○";margin-right:5px}.password-requirements li.met{color:var(--green)}.password-requirements li.met:before{content:"✓";font-weight:900}.validation-consent{margin-bottom:0;padding:9px 10px;border:1px solid transparent;border-radius:9px}.validation-consent.is-invalid{border-color:#e5b9b1;background:#fff7f5}.terms-feedback{margin:2px 10px 10px}.signup-submit{position:relative;transition:transform .15s,box-shadow .15s}.signup-submit:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 6px 0 #a5ca3c}.button.is-loading{position:relative;color:transparent!important;cursor:wait;opacity:.82;pointer-events:none}.button.is-loading span{opacity:0}.button.is-loading:after{content:"";position:absolute;left:50%;top:50%;width:18px;height:18px;margin:-11px;border:2px solid rgba(23,35,29,.3);border-top-color:var(--ink);border-radius:50%;animation:signup-spin .7s linear infinite}@keyframes signup-spin{to{transform:rotate(360deg)}}@media(prefers-reduced-motion:reduce){.signup-submit,.strength-track i{transition:none}.button.is-loading:after{animation-duration:1.4s}}.password-label{display:flex;align-items:center;gap:7px;margin-bottom:7px}.password-label>label{margin:0}.password-validation .field-feedback:empty{display:none}.password-validation .password-strength{margin-top:6px}.password-info{position:relative;display:inline-flex}.info-button{display:grid;place-items:center;width:18px;height:18px;padding:0;border:1px solid #aab3ac;border-radius:50%;background:#fff;color:var(--muted);font:800 11px/1 "DM Sans";cursor:help}.info-button:focus-visible,.info-button:hover{border-color:var(--green);color:var(--green);outline:3px solid rgba(50,102,76,.1)}.password-tooltip{position:absolute;z-index:15;left:50%;bottom:calc(100% + 10px);width:260px;padding:12px 13px;border:1px solid var(--line);border-radius:10px;background:var(--ink);color:#fff;box-shadow:0 12px 30px rgba(23,35,29,.2);font-size:12px;line-height:1.45;transform:translate(-50%,5px);opacity:0;visibility:hidden;pointer-events:none;transition:opacity .16s,transform .16s}.password-tooltip:after{content:"";position:absolute;left:50%;top:100%;margin-left:-6px;border:6px solid transparent;border-top-color:var(--ink)}.password-tooltip strong,.password-tooltip>span{display:block}.password-tooltip strong{margin-bottom:4px;color:var(--lime)}.password-info:focus-within .password-tooltip,.password-info:hover .password-tooltip{opacity:1;visibility:visible;transform:translate(-50%,0)}@media(max-width:520px){.password-tooltip{left:-8px;transform:translate(0,5px)}.password-info:focus-within .password-tooltip,.password-info:hover .password-tooltip{transform:translate(0,0)}.password-tooltip:after{left:16px}}.token-view{text-align:center}.auth-status-icon{width:54px;height:54px;margin:0 auto 18px;border-radius:50%;display:grid;place-items:center;background:#edf5dc;color:var(--green);font-size:24px}.secondary-auth-action{width:100%;margin-top:11px}.token-view .form-message{text-align:left}.token-view .subcopy{max-width:360px;margin-left:auto;margin-right:auto}.delete-account-row{display:flex;align-items:center;justify-content:space-between;gap:24px}.delete-account-row .danger-copy{margin:0}.delete-account-row .button{flex:0 0 auto}.button-danger:disabled{cursor:not-allowed;opacity:.5}.modal-card .form-group{margin-top:20px}@media(max-width:620px){.delete-account-row{align-items:stretch;flex-direction:column}.delete-account-row .button{width:100%}}.saved-list-usage{padding:7px 10px;border-radius:8px;background:#eef2eb;color:var(--green);font-size:12px;font-weight:800}.account-saved-list-grid{display:grid;gap:9px}.account-saved-list-grid article{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:14px;border:1px solid var(--line);border-radius:11px;background:#fafbf8}.account-saved-list-grid article>div:first-child{display:grid;gap:3px}.account-saved-list-grid strong{font-size:13px}.account-saved-list-grid small,.account-saved-list-grid span{color:var(--muted);font-size:11px}.account-saved-list-grid article>div:last-child{display:flex;gap:7px}.saved-list-delete-button,.saved-list-edit-button,.saved-list-group-remove{border-radius:8px;padding:8px 10px;background:#fff;font-size:11px;font-weight:800}.saved-list-edit-button{border:1px solid var(--line);color:var(--green)}.saved-list-delete-button,.saved-list-group-remove{border:1px solid #e4c5bf;color:var(--red)}.saved-list-edit-button:disabled{cursor:not-allowed;opacity:.45}.saved-list-account-empty{padding:22px;border-radius:11px;background:#f5f6f3;color:var(--muted);font-size:12px;text-align:center}.saved-list-editor{width:min(680px,100%);max-height:90vh;overflow:auto}.saved-list-editor>.form-group{margin-top:18px}.saved-list-editor-head{display:flex;align-items:center;justify-content:space-between;margin:18px 0 10px}.saved-list-editor-head strong{font-size:13px}.saved-list-editor-head .button{padding:9px 11px;font-size:11px}.saved-list-edit-group{margin-bottom:10px;padding:13px;border:1px solid var(--line);border-radius:11px;background:#fafbf8}.saved-list-edit-group>div{display:grid;grid-template-columns:1fr auto;align-items:end;gap:10px}.saved-list-edit-group label{display:grid;gap:5px;color:var(--muted);font-size:11px;font-weight:700}.saved-list-edit-group .field{height:40px}.saved-list-group-names{width:100%;min-height:110px;margin-top:5px;resize:vertical;border:1px solid #cdd3cd;border-radius:9px;background:#fff;padding:10px;outline:0;font-size:12px;line-height:1.5}.saved-list-group-names:focus{border-color:var(--green);box-shadow:0 0 0 3px rgba(50,102,76,.1)}.saved-list-editor-footer{display:flex;align-items:center;justify-content:space-between;gap:15px}.saved-list-editor-footer>span{color:var(--muted);font-size:11px}.saved-list-editor-footer>span.over-limit{color:var(--red);font-weight:800}.saved-list-editor-footer .modal-actions{margin-top:10px}@media(max-width:620px){.account-saved-list-grid article{align-items:flex-start;flex-direction:column}.account-saved-list-grid article>div:last-child{width:100%}.account-saved-list-grid article>div:last-child button{flex:1}.saved-list-edit-group>div{grid-template-columns:1fr}.saved-list-editor-footer{align-items:stretch;flex-direction:column}.saved-list-editor-footer .modal-actions{justify-content:stretch}.saved-list-editor-footer .modal-actions button{flex:1}}.verification-notice{position:relative;min-height:0;margin:4px 0 17px;padding:15px 16px 15px 47px;border:1px solid #b8d585;border-radius:12px;background:#f3f9e6;color:#284f3c!important;font-size:15px!important;font-weight:700;line-height:1.5!important}.verification-notice:before{content:"✉";position:absolute;left:16px;top:15px;width:22px;height:22px;border-radius:50%;display:grid;place-items:center;background:var(--green);color:#fff;font-size:12px}