:root{
  --primary:#6956E8;--primary-2:#9D8CFF;--success:#45D6A0;--warning:#FFB547;--danger:#F45B69;
  --ink:#191725;--ink-2:#6E6B7B;--muted:#A09DAB;--border:#E7E5ED;--bg:#F7F7FB;--surface:#FFFFFF;--dark:#171525;
  --surface-2:#F1EFF8;--shadow:0 18px 50px rgba(32,24,85,.10);--shadow-sm:0 10px 24px rgba(32,24,85,.08);--radius:16px;
}
:root[data-theme="dark"]{--ink:#F5F3FF;--ink-2:#B5B0C6;--muted:#858094;--border:#373247;--bg:#11101A;--surface:#1B1926;--dark:#0C0B12;--surface-2:#242033;--shadow:0 18px 50px rgba(0,0,0,.3);--shadow-sm:0 10px 24px rgba(0,0,0,.22)}
*{box-sizing:border-box}html{scroll-behavior:smooth;scrollbar-width:thin;scrollbar-color:var(--primary) var(--surface-2)}body{margin:0;cursor:default;background:var(--bg);color:var(--ink);font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;line-height:1.5;min-height:100vh;transition:background .25s,color .25s}body::-webkit-scrollbar{width:10px;height:10px}body::-webkit-scrollbar-track{background:var(--surface-2)}body::-webkit-scrollbar-thumb{background:linear-gradient(var(--primary),var(--primary-2));border-radius:999px;border:2px solid var(--surface-2)}button,input,select,textarea{font:inherit}input,textarea,[contenteditable="true"]{cursor:text}select{cursor:pointer}button,a{-webkit-tap-highlight-color:transparent}.no-scroll{overflow:hidden}a{color:inherit;text-decoration:none}.no-text-caret,.brand,.service-logo,.ui-icon,.radar-visual,.stat-card,.badge,.feature-icon,.sidebar,.dash-topbar{user-select:none;-webkit-user-select:none}.brand,.service-logo,button,a{cursor:pointer}.brand *,.service-logo *,.ui-icon *{pointer-events:none}.container{width:min(1180px,calc(100% - 40px));margin:auto}.muted{color:var(--ink-2)}.eyebrow{font-size:.78rem;text-transform:uppercase;letter-spacing:.12em;color:var(--primary);font-weight:800}.centered{text-align:center;margin-inline:auto}.sr-only{position:absolute;width:1px;height:1px;clip:rect(0,0,0,0);overflow:hidden}.card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);box-shadow:0 8px 24px rgba(32,24,85,.045)}
.ui-icon{display:block;flex:none}.site-header{position:sticky;top:0;z-index:50;background:color-mix(in srgb,var(--bg) 88%,transparent);backdrop-filter:blur(18px);border-bottom:1px solid var(--border)}.header-inner{height:72px;display:flex;align-items:center;justify-content:space-between;gap:24px}.brand{display:flex;align-items:center;gap:10px;font-weight:800;font-size:1.16rem;caret-color:transparent}.brand img{width:34px;height:34px;object-fit:contain}.brand b{color:var(--primary)}.nav{display:flex;align-items:center;gap:24px}.nav a{color:var(--ink-2);font-weight:650;font-size:.94rem;transition:.2s}.nav a:hover,.nav a.active{color:var(--primary)}.header-actions{display:flex;align-items:center;gap:9px}.burger{display:none;border:0;background:transparent;padding:9px;border-radius:10px}.mobile-menu{display:none}.lang-wrap,.profile-menu-wrap{position:relative}.lang-menu,.profile-menu{position:absolute;top:calc(100% + 9px);right:0;z-index:80;background:var(--surface);border:1px solid var(--border);border-radius:13px;box-shadow:var(--shadow);padding:7px;min-width:175px;opacity:0;transform:translateY(-5px) scale(.98);pointer-events:none;transition:.18s}.lang-menu.open,.profile-menu.open{opacity:1;transform:none;pointer-events:auto}.lang-menu button,.profile-menu button,.profile-menu a{width:100%;border:0;background:transparent;color:var(--ink);display:flex;gap:10px;align-items:center;text-align:left;padding:9px 10px;border-radius:9px;cursor:pointer}.lang-menu button:hover,.profile-menu button:hover,.profile-menu a:hover{background:var(--surface-2)}.lang-menu button span{color:var(--ink-2);font-size:.85rem;margin-left:auto}
.btn{border:0;border-radius:12px;padding:11px 16px;font-weight:750;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;gap:8px;transition:transform .18s,box-shadow .18s,background .18s,border-color .18s;min-height:44px}.btn:hover{transform:translateY(-2px)}.btn:active{transform:translateY(0) scale(.98)}.btn-primary{color:white;background:linear-gradient(135deg,var(--primary),#745bf7);box-shadow:0 9px 20px rgba(105,86,232,.25)}.btn-secondary{background:var(--surface);border:1px solid var(--border);color:var(--ink)}.btn-ghost{background:transparent;color:var(--ink-2)}.btn-danger{background:#fff0f2;color:#d94352;border:1px solid #ffd8de}.btn-block{width:100%}.btn-small{min-height:36px;padding:7px 11px}.icon-btn{width:42px;height:42px;padding:0;border:1px solid var(--border);background:var(--surface);color:var(--ink);border-radius:12px;cursor:pointer;display:grid;place-items:center;transition:.2s}.icon-btn:hover{transform:translateY(-1px);box-shadow:var(--shadow-sm);color:var(--primary)}.icon-btn.compact{width:34px;height:34px;border-radius:10px}
.hero{padding:88px 0 70px;overflow:hidden}.hero-grid{display:grid;grid-template-columns:1.02fr .98fr;align-items:center;gap:58px}.hero h1{font-size:clamp(2.8rem,6vw,5.3rem);line-height:.98;letter-spacing:-.06em;margin:12px 0 20px}.hero h1 span{color:var(--primary)}.hero p{font-size:1.14rem;color:var(--ink-2);max-width:600px}.hero-actions{display:flex;gap:12px;margin-top:28px;flex-wrap:wrap}.hero-note{margin-top:13px;color:var(--muted);font-size:.9rem}.hero-art{position:relative;min-height:470px;display:grid;place-items:center}.float-card{position:absolute;background:var(--surface);border:1px solid var(--border);border-radius:16px;box-shadow:var(--shadow);padding:13px 16px;min-width:160px;animation:float 5s ease-in-out infinite}.float-card strong{display:block}.float-card small{color:var(--ink-2)}.float-card .soon{color:var(--danger)}.float-one{top:8%;right:0}.float-two{bottom:10%;left:-5%}@keyframes float{50%{transform:translateY(-8px)}}.section{padding:76px 0}.section-title{max-width:710px;margin-bottom:30px}.section-title h2{font-size:clamp(2rem,4vw,3.2rem);letter-spacing:-.04em;line-height:1.05;margin:8px 0 12px}.section-title p{color:var(--ink-2);font-size:1.05rem}.feature-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.feature-card{padding:24px;transition:.25s}.feature-card:hover{transform:translateY(-5px);box-shadow:var(--shadow-sm)}.feature-icon{width:46px;height:46px;border-radius:13px;background:#efedff;color:var(--primary);display:grid;place-items:center;margin-bottom:18px}.feature-card h3{margin:0 0 7px}.feature-card p{margin:0;color:var(--ink-2)}.dark-cta{padding:34px;display:grid;grid-template-columns:1fr auto;gap:20px;align-items:center;background:linear-gradient(145deg,#1d1930,#171525);color:#fff}.dark-cta .eyebrow{color:#bfb4ff}.dark-cta h2{font-size:clamp(2rem,4vw,3.3rem);margin:8px 0}.dark-cta p{color:#c9c5d6;margin:0}.pricing-grid{display:grid;grid-template-columns:repeat(2,minmax(0,440px));gap:20px;justify-content:center}.price-card{padding:28px}.price-card.pro{border-color:#cfc7ff;box-shadow:0 20px 54px rgba(105,86,232,.14)}.badge{display:inline-flex;padding:5px 9px;border-radius:999px;background:#efedff;color:var(--primary);font-size:.78rem;font-weight:800}.price{font-size:2.7rem;font-weight:850;letter-spacing:-.05em;margin:16px 0 4px}.price small{font-size:.95rem;color:var(--ink-2);font-weight:600}.check-list{list-style:none;padding:0;margin:22px 0;display:grid;gap:12px}.check-list li:before{content:'✓';color:var(--success);font-weight:900;margin-right:9px}.contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:50px;align-items:start}.contact-grid h1{font-size:clamp(2.2rem,5vw,4rem);line-height:1;letter-spacing:-.05em}.contact-form{padding:26px}.contact-email{padding:16px;display:flex;gap:12px;align-items:center}.contact-email small,.contact-email strong{display:block}.legal-card{max-width:820px;margin:auto;padding:40px}.legal-card h1{font-size:2.5rem}.legal-card h2{margin-top:30px}.footer{margin-top:70px;background:#171525;color:#fff}.footer-inner{padding:48px 0 26px}.footer-grid{display:grid;grid-template-columns:1.5fr repeat(3,1fr);gap:34px}.footer p,.footer a{color:#b9b5c9}.footer-col{display:grid;gap:9px;align-content:start}.footer-bottom{border-top:1px solid rgba(255,255,255,.1);margin-top:30px;padding-top:20px;display:flex;justify-content:space-between;gap:18px;color:#aaa5ba;font-size:.86rem}
.auth-shell{min-height:100vh;display:grid;grid-template-columns:1fr 1fr;background:var(--surface)}.auth-side{padding:42px;display:flex;flex-direction:column;background:linear-gradient(145deg,#F5F2FF,#E9E5FF);position:relative;overflow:hidden;color:#191725}.auth-side-copy{margin:auto 0;max-width:560px}.auth-side h2{font-size:clamp(2.5rem,5vw,4.8rem);line-height:1;letter-spacing:-.055em;margin:16px 0}.auth-side p{color:#6E6B7B}.auth-radar{width:340px;max-width:70%;margin-top:28px}.auth-main{display:grid;place-items:center;padding:32px;background:var(--surface)}.auth-card{width:min(460px,100%)}.auth-card h1{font-size:2.1rem;letter-spacing:-.04em;margin:0 0 8px}.auth-mobile-brand{display:none}.form{display:grid;gap:14px;margin-top:24px}.field{display:grid;gap:7px}.field label{font-size:.9rem;font-weight:700}.input{width:100%;border:1px solid var(--border);border-radius:12px;padding:12px 13px;background:var(--surface);outline:none;transition:.2s;color:var(--ink);caret-color:var(--primary)}.input:focus{border-color:#afa3ff;box-shadow:0 0 0 4px rgba(105,86,232,.10)}textarea.input{resize:vertical}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:12px}.form-meta{display:flex;justify-content:space-between;font-size:.9rem}.form-meta a,.auth-switch a{color:var(--primary);font-weight:700}.auth-switch{text-align:center;color:var(--ink-2);margin-top:18px}.form-message{border-radius:12px;padding:11px 12px;font-size:.9rem}.form-message.error{background:#fff0f2;color:#b93644;border:1px solid #ffd8de}.form-message.success{background:#eefcf7;color:#147f5c;border:1px solid #cef4e7}
.dashboard{min-height:100vh;display:grid;grid-template-columns:230px minmax(0,1fr)}.sidebar{position:sticky;top:0;height:100vh;background:var(--surface);border-right:1px solid var(--border);padding:20px 13px;display:flex;flex-direction:column;z-index:40;overflow-y:auto;scrollbar-width:none}.sidebar::-webkit-scrollbar{display:none}.sidebar .brand{padding:2px 8px 18px}.side-nav{display:grid;gap:4px}.side-link{display:flex;align-items:center;gap:11px;padding:10px 11px;border-radius:11px;color:var(--ink-2);font-weight:650;font-size:.9rem;transition:.2s}.side-link:hover,.side-link.active{background:#efedff;color:var(--primary)}:root[data-theme="dark"] .side-link:hover,:root[data-theme="dark"] .side-link.active{background:#2a2446}.side-link.locked .mini-lock{margin-left:auto}.upgrade-card{margin-top:auto;background:linear-gradient(145deg,#f2efff,#e6e0ff);border:1px solid #dcd5ff;border-radius:15px;padding:14px;color:#191725;flex:none}.upgrade-card strong{display:block;color:var(--primary)}.upgrade-card p{font-size:.79rem;color:#6E6B7B;margin:7px 0 10px}.upgrade-card .btn{min-height:38px;padding:8px 12px}.dash-main{min-width:0}.dash-topbar{height:72px;position:sticky;top:0;z-index:35;background:color-mix(in srgb,var(--bg) 92%,transparent);backdrop-filter:blur(16px);border-bottom:1px solid var(--border);display:flex;align-items:center;padding:0 24px;gap:18px}.dash-search{width:min(400px,38vw);height:40px;border:1px solid var(--border);border-radius:11px;background:var(--surface);display:flex;align-items:center;gap:8px;padding:0 12px;color:var(--muted)}.dash-search input{border:0;outline:0;background:transparent;color:var(--ink);min-width:0;width:100%;caret-color:var(--primary)}.dash-actions{margin-left:auto;display:flex;gap:8px;align-items:center}.notification-btn{position:relative}.notification-btn i{position:absolute;width:7px;height:7px;border-radius:50%;background:var(--danger);right:7px;top:7px}.profile-button{border:0;background:transparent;color:var(--ink);display:flex;align-items:center;gap:9px;border-radius:12px;padding:5px 7px;cursor:pointer}.profile-button:hover{background:var(--surface-2)}.avatar{width:34px;height:34px;display:grid;place-items:center;border-radius:50%;background:#ddd7ff;color:var(--primary);font-weight:800}.profile-menu{min-width:190px}.sidebar-toggle{display:none}.mobile-section-title{display:none}.dash-content{padding:24px;max-width:1500px;margin:auto}.dash-heading{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:18px}.dash-heading h1{font-size:1.8rem;letter-spacing:-.035em;margin:0}.dash-heading p{margin:3px 0 0}.stats-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}.stat-card{position:relative;min-height:92px;background:var(--surface);border:1px solid var(--border);border-radius:13px;padding:15px 17px;overflow:hidden}.stat-card>strong{font-size:1.45rem;display:block}.stat-card>span{font-size:.82rem;color:var(--ink-2)}.stat-card>em{font-style:normal;color:#1ca676;font-size:.75rem;font-weight:750;margin-left:7px}.stat-card>.ui-icon{position:absolute;right:16px;top:18px;color:var(--primary)}.new-badge{position:absolute;right:14px;top:14px;color:var(--primary);background:#efedff;padding:3px 7px;border-radius:999px;font-size:.7rem}.mini-bars{position:absolute;right:15px;bottom:14px;height:35px;width:72px;display:flex;gap:4px;align-items:end}.mini-bars i{width:8px;background:#bdb3ff;border-radius:3px}.mini-ring{position:absolute;right:17px;bottom:17px;width:35px;height:35px;border-radius:50%;border:7px solid #dcd6ff;border-right-color:var(--primary)}.dashboard-grid{display:grid;grid-template-columns:.82fr 1.08fr .78fr;gap:12px;margin-top:12px;align-items:start}.upcoming-card,.spending-card,.radar-card{padding:16px}.card-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:12px}.card-head h2{font-size:1rem;margin:0}.card-head a{color:var(--primary);font-size:.78rem;font-weight:700}.card-head.vertical{display:block}.card-head.vertical p{margin:2px 0;color:var(--ink-2);font-size:.8rem}.renewal-list{display:grid}.renewal-row{border:0;background:transparent;color:var(--ink);width:100%;display:grid;grid-template-columns:38px 1fr auto 17px;align-items:center;gap:10px;padding:9px 3px;border-radius:10px;text-align:left;cursor:pointer}.renewal-row:hover{background:var(--surface-2)}.renewal-name strong,.renewal-name small,.renewal-price strong,.renewal-price small{display:block}.renewal-name small,.renewal-price small{font-size:.73rem;color:var(--ink-2)}.renewal-price{text-align:right}.danger-text{color:var(--danger)!important}.service-logo{width:36px;height:36px;border-radius:50%;display:grid;place-items:center;background:var(--service);color:#fff;font-weight:850;overflow:hidden;box-shadow:0 3px 10px color-mix(in srgb,var(--service) 20%,transparent);caret-color:transparent}.service-logo svg{width:100%;height:100%;display:block}.service-logo span{line-height:1}.spending-chart{height:176px;display:flex;gap:5px;align-items:end;border-bottom:1px solid var(--border);padding:16px 6px 0;margin-bottom:16px}.spending-bar-wrap{height:100%;flex:1;border:0;background:transparent;padding:0;display:flex;flex-direction:column;align-items:center;justify-content:flex-end;gap:6px;color:var(--muted);cursor:pointer}.spending-bar{width:min(18px,72%);background:#c7beff;border-radius:4px 4px 1px 1px;transition:.2s}.spending-bar-wrap:hover .spending-bar,.spending-bar.active{background:var(--primary);transform:scaleX(1.15)}.spending-bar-wrap small{font-size:.64rem}.tiny-select{border:1px solid var(--border);background:var(--surface);color:var(--ink);border-radius:8px;padding:5px 8px}.category-list{display:grid;gap:9px}.category-row{display:grid;grid-template-columns:12px 110px 1fr 34px 70px;align-items:center;gap:7px;font-size:.72rem}.category-row .cat-icon{width:9px;height:9px;border-radius:3px;background:var(--primary)}.category-row .c1{background:#3296ff}.category-row .c2{background:#9b7cff}.category-row .c3{background:#7b8098}.cat-track{height:6px;background:var(--surface-2);border-radius:99px;overflow:hidden}.cat-track i{display:block;height:100%;background:var(--primary);border-radius:inherit}.category-row>b{text-align:right}.radar-column{display:grid;gap:10px}.radar-card{min-height:360px}.radar-legend{display:flex;gap:12px;justify-content:center;flex-wrap:wrap;font-size:.69rem;color:var(--ink-2)}.dot{display:inline-block;width:8px;height:8px;border-radius:50%;margin-right:4px}.dot.danger{background:var(--danger)}.dot.primary{background:var(--primary)}.dot.later{background:#409BF5}.all-clear{padding:13px;display:flex;gap:10px;align-items:center}.success-icon{width:32px;height:32px;border-radius:50%;background:#dff8ef;color:#1aaa79;display:grid;place-items:center}.all-clear p{margin:2px 0 0;font-size:.73rem;color:var(--ink-2)}
.radar-visual{position:relative;width:min(100%,300px);aspect-ratio:1;margin:7px auto 10px;border-radius:50%;overflow:visible;caret-color:transparent}.radar-ring{position:absolute;left:50%;top:50%;border:1px solid color-mix(in srgb,var(--primary) 18%,transparent);border-radius:50%;transform:translate(-50%,-50%)}.r1{width:28%;height:28%}.r2{width:52%;height:52%}.r3{width:76%;height:76%}.r4{width:100%;height:100%}.radar-sweep{position:absolute;inset:0;border-radius:50%;background:conic-gradient(from 250deg,transparent 0 73%,rgba(105,86,232,.24) 84%,rgba(105,86,232,.02) 93%,transparent 100%);animation:sweep 6s linear infinite;transform-origin:center}.radar-center{position:absolute;width:15%;height:15%;left:50%;top:50%;transform:translate(-50%,-50%);border-radius:50%;background:var(--primary);display:grid;place-items:center;box-shadow:0 0 0 8px rgba(105,86,232,.08)}.radar-center img{width:68%;height:68%}.radar-node{position:absolute;left:var(--x);top:var(--y);transform:translate(-50%,-50%);border:0;background:transparent;padding:0;z-index:3;cursor:pointer}.radar-node .service-logo{width:31px;height:31px;font-size:.73rem;border:3px solid var(--surface)}.node-pulse{position:absolute;inset:0;border:2px solid var(--service);border-radius:50%;opacity:0;animation:nodePulse 2.6s ease-out infinite;animation-delay:var(--delay);pointer-events:none}.radar-tooltip{position:absolute;transform:translate(-50%,calc(-100% - 18px));background:var(--dark);color:white;border-radius:10px;padding:7px 9px;z-index:10;font-size:.7rem;opacity:0;pointer-events:none;white-space:nowrap;transition:.15s}.radar-tooltip strong,.radar-tooltip span{display:block}.radar-tooltip span{color:#c9c5d6}.radar-tooltip.show{opacity:1}.marketing-radar{width:100%;max-width:500px}.marketing-radar .radar-visual{width:100%;max-width:470px}.marketing .radar-node .service-logo{width:42px;height:42px;font-size:.85rem}.marketing .radar-center{width:13%;height:13%}@keyframes sweep{to{transform:rotate(360deg)}}@keyframes nodePulse{0%{transform:scale(.8);opacity:.7}70%,100%{transform:scale(2.2);opacity:0}}
.toolbar{padding:11px 14px;display:flex;justify-content:space-between;align-items:center;margin-bottom:13px}.filter-pills{display:flex;gap:6px}.filter-pills button{border:0;background:transparent;color:var(--ink-2);border-radius:9px;padding:7px 10px}.filter-pills button.active{background:#efedff;color:var(--primary);font-weight:700}.subscription-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}.subscription-card{padding:17px;position:relative;overflow:hidden}.subscription-card:before{content:'';position:absolute;left:0;top:0;right:0;height:3px;background:var(--service)}.sub-card-top{display:flex;justify-content:space-between;align-items:center}.subscription-card h3{margin:13px 0 2px}.subscription-card p{margin:0;color:var(--ink-2);font-size:.8rem}.sub-price{font-size:1.45rem;font-weight:800;margin:15px 0}.sub-price small{font-size:.75rem;color:var(--ink-2);font-weight:500}.sub-meta{display:flex;justify-content:space-between;border-top:1px solid var(--border);padding:9px 0 0;margin-top:9px;font-size:.75rem}.sub-meta span{color:var(--ink-2)}.status-manual{color:var(--primary)}
.calendar-card{padding:20px}.calendar-head{display:flex;justify-content:center;align-items:center;gap:20px;margin-bottom:16px}.calendar-head h2{min-width:240px;text-align:center;text-transform:capitalize}.calendar-week,.calendar-grid{display:grid;grid-template-columns:repeat(7,1fr)}.calendar-week span{font-size:.7rem;color:var(--muted);padding:8px;text-align:center}.calendar-cell{min-height:112px;background:transparent;border:1px solid var(--border);color:var(--ink);padding:8px;text-align:left;cursor:default}.calendar-cell.has-renewal{cursor:pointer}.calendar-cell.has-renewal:hover{background:var(--surface-2)}.calendar-cell strong{font-size:.8rem}.calendar-cell span{display:block;margin-top:5px;border-left:3px solid var(--service);background:color-mix(in srgb,var(--service) 9%,transparent);border-radius:5px;padding:4px 5px;font-size:.64rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.muted-cell{background:color-mix(in srgb,var(--surface-2) 45%,transparent)}
.pro-gate{max-width:680px;margin:60px auto;padding:42px;text-align:center}.pro-gate-art{width:86px;height:86px;border-radius:24px;background:linear-gradient(145deg,#efeaff,#ded6ff);color:var(--primary);display:grid;place-items:center;margin:0 auto 16px}.pro-gate h1{font-size:2.2rem;letter-spacing:-.04em}.pro-gate p{color:var(--ink-2)}.pro-gate .check-list{display:inline-grid;text-align:left}.insight-grid{display:grid;grid-template-columns:2fr 1fr;gap:12px}.insight-big{grid-row:span 2;padding:22px}.insight-big>strong{font-size:2.4rem;display:block}.insight-big>em{color:#1ca676;font-style:normal}.insight-stat{padding:22px}.insight-stat strong{font-size:1.5rem;display:block;margin:7px 0}.insight-stat p{color:var(--ink-2)}.change-list,.unused-list{display:grid;gap:10px}.change-row{display:grid;grid-template-columns:44px 1fr auto auto;align-items:center;gap:16px;padding:15px}.change-row div strong,.change-row div small{display:block}.change-row div small{color:var(--ink-2)}.change-row em{font-style:normal;color:var(--danger);font-weight:700}.unused-row{display:grid;grid-template-columns:44px 1fr auto;gap:15px;align-items:center;padding:16px}.unused-row p{margin:3px 0;color:var(--ink-2)}.unused-actions{display:flex;gap:8px}.empty-state{padding:38px;text-align:center;color:var(--ink-2)}.docs-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.doc-card{padding:14px;display:grid;grid-template-columns:36px 1fr auto;gap:12px;align-items:center}.doc-card small{display:block;color:var(--ink-2)}.empty-illustration{color:var(--primary);display:flex;justify-content:center}.file-button{cursor:pointer}.settings-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}.settings-card{padding:21px;display:grid;gap:14px}.settings-card h2{margin:0}.setting-row{display:flex;justify-content:space-between;gap:15px;align-items:center}.setting-row p{margin:2px 0;color:var(--ink-2);font-size:.8rem}.switch{width:50px;height:29px;border:0;background:#cbc7d7;border-radius:99px;padding:3px;cursor:pointer}.switch i{display:block;width:23px;height:23px;border-radius:50%;background:white;transition:.2s}.switch.on{background:var(--primary)}.switch.on i{transform:translateX(21px)}.compact-select{width:auto;min-width:140px}.danger-zone{border-color:#f0cbd1}
.floating-tip{position:fixed;right:22px;bottom:22px;z-index:70;width:min(300px,calc(100vw - 28px));background:#171525;color:#fff;border-radius:15px;padding:17px 42px 17px 17px;box-shadow:0 20px 50px rgba(10,8,25,.28);animation:tipIn .35s ease both}.floating-tip strong{display:block}.floating-tip p{font-size:.82rem;color:#e6e2f2;margin:6px 0 10px}.floating-tip a{font-weight:800;color:#c8bfff;display:inline-flex;gap:5px;align-items:center}.tip-close{position:absolute;right:9px;top:9px;width:28px;height:28px;border:0;border-radius:8px;background:rgba(255,255,255,.08);color:white;display:grid;place-items:center;cursor:pointer}.tip-close:hover{background:rgba(255,255,255,.16)}.floating-tip.hiding{opacity:0;transform:translateY(14px);transition:.22s}@keyframes tipIn{from{opacity:0;transform:translateY(18px)}to{opacity:1;transform:none}}
.modal-backdrop{position:fixed;inset:0;background:rgba(18,16,30,.55);backdrop-filter:blur(6px);z-index:100;display:grid;place-items:center;padding:18px;overflow:auto}.modal{width:min(580px,100%);background:var(--surface);border:1px solid var(--border);border-radius:20px;padding:22px;box-shadow:0 30px 90px rgba(15,12,35,.3);animation:modalIn .2s ease}.modal.wide{width:min(680px,100%)}@keyframes modalIn{from{opacity:0;transform:translateY(10px) scale(.98)}to{opacity:1;transform:none}}.modal-head{display:flex;justify-content:space-between;gap:15px;align-items:flex-start;margin-bottom:16px}.modal-head h2{margin:0 0 3px;letter-spacing:-.03em}.modal-head p{margin:0;color:var(--ink-2);font-size:.88rem}.close{width:38px;height:38px;border:0;border-radius:11px;background:var(--surface-2);color:var(--ink);display:grid;place-items:center;cursor:pointer;flex:none}.modal-search{display:flex;align-items:center;gap:8px;border:1px solid var(--border);border-radius:11px;padding:0 11px;height:42px;color:var(--muted)}.modal-search input{border:0;outline:0;background:transparent;color:var(--ink);width:100%;caret-color:var(--primary)}.modal-label{margin:14px 0 8px}.preset-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:8px}.preset-card{border:1px solid var(--border);background:var(--surface);color:var(--ink);border-radius:12px;padding:11px 7px;display:grid;justify-items:center;gap:7px;font-size:.69rem;cursor:pointer;transition:.18s}.preset-card:hover{border-color:#b8adff;transform:translateY(-2px);background:var(--surface-2)}.preset-card .service-logo{width:34px;height:34px}.manual-add{width:100%;margin-top:10px;border:1px solid var(--border);background:var(--surface);color:var(--ink);border-radius:12px;padding:11px;display:flex;gap:11px;align-items:center;text-align:left;cursor:pointer}.manual-add:hover{background:var(--surface-2)}.manual-add>.ui-icon{width:34px;height:34px;padding:7px;background:#efedff;color:var(--primary);border-radius:10px}.manual-add span strong,.manual-add span small{display:block}.manual-add span small{color:var(--ink-2)}.connection-box{background:linear-gradient(145deg,#f4f1ff,#ece8ff);color:#191725;border:1px solid #ddd6ff;border-radius:13px;padding:12px;display:grid;grid-template-columns:38px 1fr auto;gap:10px;align-items:center}.connection-box p{margin:2px 0;color:#6E6B7B;font-size:.75rem}.divider{text-align:center;color:var(--muted);font-size:.75rem;margin:12px 0}.connection-summary{display:flex;gap:12px;align-items:center;background:var(--surface-2);border-radius:13px;padding:15px}.connection-summary p{margin:4px 0 0;color:var(--ink-2)}.modal-service-title{display:flex;gap:11px;align-items:center}.detail-price{font-size:2.3rem;font-weight:850;margin:10px 0 17px}.detail-price small{font-size:.85rem;color:var(--ink-2)}.detail-grid{display:grid;grid-template-columns:1fr 1fr;gap:9px}.detail-grid>div{background:var(--surface-2);border-radius:11px;padding:11px}.detail-grid span,.detail-grid strong{display:block}.detail-grid span{font-size:.7rem;color:var(--ink-2)}.modal-actions{display:flex;justify-content:flex-end;gap:8px;margin-top:18px}.pro-offer-visual{background:linear-gradient(135deg,#171525,#352b74);color:#fff;border-radius:16px;padding:20px;text-align:center;margin:15px 0}.timer{font-size:2.3rem;font-weight:850;letter-spacing:.05em}.pro-offer-visual span{color:#c9c4e8}.cookie-banner{position:fixed;left:20px;bottom:20px;z-index:90;width:min(560px,calc(100vw - 40px));background:var(--surface);border:1px solid var(--border);border-radius:15px;box-shadow:var(--shadow);padding:14px;display:flex;gap:15px;align-items:center}.cookie-banner p{margin:0;font-size:.8rem;color:var(--ink-2);flex:1}.cookie-banner a{color:var(--primary);font-weight:700}.cookie-banner>div{display:flex;gap:6px}.toast-root{position:fixed;top:18px;right:18px;z-index:200;display:grid;gap:8px}.toast{background:#171525;color:white;padding:11px 14px;border-radius:11px;box-shadow:var(--shadow);max-width:330px;font-size:.85rem}.toast.success{background:#147f5c}.toast.error{background:#b93644}
@media(max-height:740px) and (min-width:861px){.sidebar{padding-top:14px}.sidebar .brand{padding-bottom:10px}.side-link{padding:8px 10px}.upgrade-card{padding:10px}.upgrade-card p{display:none}.upgrade-card strong{font-size:.85rem}.upgrade-card .btn{margin-top:8px}}
@media(max-width:1180px){.dashboard{grid-template-columns:205px 1fr}.dashboard-grid{grid-template-columns:1fr 1fr}.radar-column{grid-column:1/-1;grid-template-columns:1fr 1fr}.radar-card{min-height:auto}.subscription-grid{grid-template-columns:repeat(3,1fr)}.stats-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:860px){.nav,.desktop-cta{display:none}.burger{display:grid}.mobile-menu{position:absolute;top:72px;left:0;right:0;background:var(--surface);border-bottom:1px solid var(--border);padding:12px 20px;gap:4px}.mobile-menu.open{display:grid}.mobile-menu a{padding:11px;border-radius:9px}.mobile-menu a:hover{background:var(--surface-2)}.hero{padding-top:55px}.hero-grid{grid-template-columns:1fr}.hero-art{min-height:390px}.feature-grid{grid-template-columns:1fr 1fr}.contact-grid{grid-template-columns:1fr}.footer-grid{grid-template-columns:1fr 1fr}.auth-shell{grid-template-columns:1fr}.auth-side{display:none}.auth-main{min-height:100vh}.auth-mobile-brand{display:block;margin-bottom:42px}.dashboard{display:block}.sidebar{position:fixed;left:0;top:0;width:255px;transform:translateX(-105%);transition:.25s;box-shadow:var(--shadow);z-index:60}.sidebar.open{transform:none}.sidebar-toggle{display:grid}.dash-topbar{padding:0 14px}.dash-search{width:min(330px,45vw)}.profile-button strong,.profile-chevron{display:none}.dash-content{padding:15px}.mobile-section-title{display:none}.subscription-grid{grid-template-columns:repeat(2,1fr)}.calendar-cell{min-height:90px}.calendar-cell span{font-size:.58rem}.docs-grid{grid-template-columns:1fr 1fr}.settings-grid{grid-template-columns:1fr}}
@media(max-width:620px){.container{width:min(100% - 28px,1180px)}.header-inner{height:64px}.mobile-menu{top:64px}.header-actions>.btn-ghost{display:none}.header-actions{gap:5px}.icon-btn{width:38px;height:38px}.brand{font-size:1.05rem}.brand img{width:30px;height:30px}.hero{padding:42px 0}.hero h1{font-size:3rem}.hero-art{min-height:320px}.float-card{font-size:.8rem;min-width:135px}.feature-grid,.pricing-grid,.footer-grid{grid-template-columns:1fr}.dark-cta{grid-template-columns:1fr}.footer-bottom{display:block}.footer-bottom span{display:block;margin-top:5px}.form-row{grid-template-columns:1fr}.dash-topbar{height:62px}.dash-search{display:none}.dash-actions{width:100%;justify-content:flex-end}.dash-actions .icon-btn.notification-btn{display:none}.mobile-section-title{display:flex;align-items:center;justify-content:space-between;padding:10px 14px;border-bottom:1px solid var(--border);background:var(--surface);font-weight:750}.dash-heading{align-items:flex-start}.dash-heading>.btn{display:none}.stats-grid{grid-template-columns:1fr 1fr}.stat-card{min-height:84px;padding:12px}.stat-card>strong{font-size:1.2rem}.dashboard-grid{grid-template-columns:1fr}.radar-column{grid-column:auto;grid-template-columns:1fr}.spending-chart{height:150px}.category-row{grid-template-columns:10px 90px 1fr 30px}.category-row>b{display:none}.subscription-grid{grid-template-columns:1fr}.toolbar{overflow:auto}.calendar-card{padding:8px;overflow:auto}.calendar-week,.calendar-grid{min-width:650px}.insight-grid{grid-template-columns:1fr}.change-row{grid-template-columns:40px 1fr}.change-row>span,.change-row>em{grid-column:2}.unused-row{grid-template-columns:38px 1fr}.unused-actions{grid-column:1/-1}.docs-grid{grid-template-columns:1fr}.floating-tip{right:14px;bottom:14px}.modal{padding:17px}.preset-grid{grid-template-columns:repeat(3,1fr)}.connection-box{grid-template-columns:38px 1fr}.connection-box>.btn{grid-column:1/-1}.detail-grid{grid-template-columns:1fr}.cookie-banner{left:12px;bottom:12px;width:calc(100vw - 24px);display:block}.cookie-banner>div{margin-top:10px}.contact-grid h1{font-size:2.5rem}.legal-card{padding:25px}.pricing-grid{display:grid}.price-card{min-width:0}.auth-main{padding:22px}.auth-card h1{font-size:1.8rem}}
@media(max-width:400px){.stats-grid{grid-template-columns:1fr}.preset-grid{grid-template-columns:repeat(2,1fr)}.profile-button{padding:2px}.lang-wrap .icon-btn{display:none}.hero h1{font-size:2.55rem}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;scroll-behavior:auto!important;transition-duration:.01ms!important}}

/* Interaction and accessibility polish */
button:disabled,.btn:disabled{cursor:not-allowed;opacity:.58;transform:none!important;box-shadow:none!important}
button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid color-mix(in srgb,var(--primary) 32%,transparent);outline-offset:3px}
.filter-pills button{cursor:pointer;transition:background .18s,color .18s,transform .18s}
.filter-pills button:hover{background:var(--surface-2);color:var(--ink)}
.subscription-empty{grid-column:1/-1}
.offer-note{margin:10px 0 0;text-align:center;color:var(--ink-2);font-size:.78rem}
.calendar-cell:not(.has-renewal){pointer-events:none}
.radar-node:focus-visible{outline:none}
.radar-node:focus-visible .service-logo{box-shadow:0 0 0 4px color-mix(in srgb,var(--service) 28%,transparent),0 3px 10px color-mix(in srgb,var(--service) 20%,transparent)}
@media(max-width:620px){.floating-tip{bottom:max(14px,env(safe-area-inset-bottom));}.toast-root{left:12px;right:12px;top:12px}.toast{max-width:none}}

/* QA fixes: layout, input states and keyboard navigation. */
[hidden]{display:none!important}
:root{--muted:#747080;--danger:#c83548}
:root[data-theme="dark"]{--primary:#b2a4ff;--muted:#aaa4b9;--danger:#ff8392;color-scheme:dark}
:root[data-theme="dark"] .btn-primary{background:linear-gradient(135deg,#6956e8,#745bf7);color:white}
:root[data-theme="dark"] .btn-danger{background:#40212c;color:#ffafbb;border-color:#74404f}
:root[data-theme="dark"] .badge,:root[data-theme="dark"] .filter-pills button.active{background:#30284a;color:#c3b6ff}
:root[data-theme="dark"] .auth-side .brand b,:root[data-theme="dark"] .upgrade-card strong{color:#5944c7}
button,a,input,select,textarea{touch-action:manipulation}
a:focus-visible,button:focus-visible{outline:3px solid var(--primary);outline-offset:3px}
.lang-menu,.profile-menu{visibility:hidden}
.lang-menu.open,.profile-menu.open{visibility:visible}
.plan-name{color:var(--primary)!important;font-weight:650}
.renewal-name,.doc-card>div,.modal-service-title>div{min-width:0}
.renewal-name strong,.subscription-card h3,.plan-name,.doc-card strong,.modal h2{overflow-wrap:anywhere}
.renewal-row{grid-template-columns:36px minmax(0,1fr) auto 16px}
.renewal-name strong{font-size:.88rem}
.category-row{grid-template-columns:9px minmax(60px,1fr) minmax(20px,.8fr) auto;overflow-wrap:anywhere}
.category-row>b{grid-column:2/-1;text-align:left;font-weight:500;color:var(--ink-2)}
.chart-note{font-size:.75rem}
.spending-bar-wrap small{color:var(--ink-2)}
.toolbar{gap:12px;flex-wrap:wrap}
.filter-pills{flex-wrap:wrap}
.subscription-card .btn{margin-top:14px}
.document-download{display:inline-block;margin-top:8px;color:var(--primary);text-decoration:underline;padding:5px 0}
.file-button:focus-within{outline:3px solid var(--primary);outline-offset:3px}
.calendar-grid,.calendar-week{grid-template-columns:repeat(7,minmax(0,1fr));min-width:0}
.calendar-cell{min-width:0;overflow:hidden}
.calendar-cell span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:100%}
.calendar-cell:disabled{opacity:1;cursor:default}
.calendar-cell.is-today{outline:2px solid var(--primary);outline-offset:-2px}
.calendar-head h2{font-size:1.2rem;text-align:center}
.modal{max-height:calc(100dvh - 32px);overflow-y:auto;overscroll-behavior:contain}
.modal-actions{flex-wrap:wrap}
body:has(.modal-backdrop) .floating-tip{visibility:hidden}
.floating-tip{max-width:calc(100vw - 28px)}
body:has(.cookie-banner) .floating-tip{display:none}
.checkbox-row{display:flex;gap:10px;align-items:center}
.checkbox-row input{width:20px;height:20px;flex:none}
.settings-card>.btn{margin-top:10px}
.settings-card .form{margin-top:0}
.change-row .saving{color:#17815b}
.sidebar-backdrop{display:none}
#toast-root{pointer-events:none}
.toast{overflow-wrap:anywhere}
@media(min-width:1181px) and (max-width:1450px){.dashboard-grid{grid-template-columns:1fr 1fr}.radar-column{grid-column:1/-1;grid-template-columns:1fr 1fr}}
@media(max-width:860px){.sidebar-backdrop{display:block;position:fixed;inset:0;z-index:55;background:rgba(12,10,22,.5);border:0}.sidebar-open{overflow:hidden}.sidebar .brand{margin-bottom:10px}}
@media(max-width:620px){
 .dash-topbar{height:auto;min-height:62px;flex-wrap:wrap;padding:10px 14px;gap:8px}
 .dash-actions{width:auto;flex:1;order:1}.sidebar-toggle{order:0;flex:none}
 .dash-search{display:flex;order:2;width:100%;height:42px}
 .dash-actions .icon-btn.notification-btn{display:grid}
 .lang-wrap .icon-btn{display:grid}
 .calendar-card{overflow:visible}.calendar-week,.calendar-grid{min-width:0}
 .calendar-cell{min-height:72px;padding:4px;gap:3px}
 .calendar-cell span{font-size:.56rem;padding:2px;max-width:100%;line-height:1.25}
 .calendar-cell strong{font-size:.8rem}.calendar-week span{font-size:.7rem}
 .dash-heading h1{font-size:1.5rem}.dash-heading{gap:10px;flex-wrap:wrap}
 .doc-card{grid-template-columns:30px minmax(0,1fr) 38px}
 .icon-btn.compact{width:40px;height:40px}
 .preset-card{min-height:82px}.preset-grid{gap:8px}
 .floating-tip{position:static;margin:16px 14px;width:auto}
 .cookie-banner{bottom:max(12px,env(safe-area-inset-bottom))}
 .toast-root{top:auto;bottom:max(14px,env(safe-area-inset-bottom))}
 .modal-backdrop{padding:12px}.modal{max-height:calc(100dvh - 24px)}
 .detail-price{font-size:2rem}.modal-service-title{min-width:0}
 .float-two{left:0}.hero-art{min-width:0}
 .header-actions{gap:3px}.header-inner{gap:8px}.header-actions .icon-btn{width:34px;height:36px}
}
@media(max-width:360px){.brand{font-size:.92rem;gap:6px}.brand img{width:26px;height:26px}.header-inner{gap:4px}.burger{padding:6px}.calendar-cell span{font-size:.5rem}}
.auth-controls{display:flex;justify-content:flex-end;gap:8px;margin-bottom:24px}
.radar-node .service-logo{border-color:var(--urgency,var(--surface))}
.calendar-head h2{min-width:0;flex:1}.calendar-head{gap:8px}
.unused-actions{flex-wrap:wrap}.unused-row>div{min-width:0;overflow-wrap:anywhere}
.insight-stat strong{overflow-wrap:anywhere}
@media(max-width:620px){.dash-heading>.file-button{display:inline-flex}.calendar-head h2{font-size:1rem}.unused-actions .btn{flex:1}.pro-gate{padding:24px 16px;margin:24px auto}.pro-gate h1{font-size:1.6rem}.modal-actions .btn{flex:1}.stat-card>span{display:block;padding-right:20px}.category-row>b{display:block}}
#features{scroll-margin-top:90px}
.sidebar-close{display:none}
@media(max-width:860px){.sidebar-close{display:grid;align-self:flex-end;flex:none;margin-bottom:8px}}

.sync-banner{display:flex;gap:16px;align-items:center;justify-content:space-between;padding:16px;margin-bottom:20px;border:1px solid #b8860b;border-radius:12px;background:var(--card);flex-wrap:wrap}.settings-card .btn{margin:5px 0;white-space:normal}.session-list{padding:0;list-style:none}.session-list li{display:grid;gap:6px;padding:12px 0;border-bottom:1px solid var(--border)}.settings-card{min-width:0;overflow-wrap:anywhere}.modal-actions{display:flex;flex-wrap:wrap;gap:12px}@media(max-width:600px){.sync-banner .btn{width:100%}.price-card{min-width:0}}
/* 1.3: readable task-focused UI. System fonts load without a font network request. */
body{font-family:system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;font-size:16px;line-height:1.55}
:root{--muted:#716D7D}:root[data-theme="dark"]{--muted:#B5B0C6}
.input,.modal-search input{font-size:1rem;min-height:46px}.field label,.muted,.chart-note,.renewal-name small,.renewal-price small{font-size:.875rem}
.dash-heading h1{font-size:clamp(1.75rem,3vw,2rem)}.card h2{font-size:1.25rem;line-height:1.3}.renewal-name strong{font-size:1rem}.btn{min-height:44px}
.focus-card{padding:24px;margin-bottom:20px;border-left:4px solid var(--primary)}.focus-card h1{font-size:clamp(1.75rem,4vw,2rem);max-width:650px}.focus-card h2{font-size:1.5rem}.focus-card p{max-width:65ch}
.workflow-card{padding:20px;margin-bottom:16px}.workflow-card h2{margin-top:0}.workflow-card progress{width:min(100%,320px);height:12px;accent-color:var(--primary)}.workflow-card .btn{margin:4px 8px 4px 0}.workflow-actions{display:flex;gap:12px;flex-wrap:wrap}.impact-value{font-size:1.75rem;color:var(--primary)}
.advanced-fields{border:1px solid var(--border);border-radius:12px;padding:12px}.advanced-fields summary{cursor:pointer;min-height:32px;font-weight:600}.advanced-fields .field{margin-top:14px}.archive-row{display:flex;justify-content:space-between;align-items:center;gap:16px;padding:12px 0;border-bottom:1px solid var(--border)}
.calendar-count{display:none}.calendar-agenda{padding:20px;margin-top:20px}.calendar-agenda>div{display:grid;grid-template-columns:80px 1fr auto;gap:12px;padding:12px 0;border-bottom:1px solid var(--border)}
.sidebar,.dash-topbar,.stat-card{user-select:text;-webkit-user-select:text}button,a,summary{cursor:pointer}button:focus-visible,a:focus-visible,summary:focus-visible{outline:3px solid var(--primary);outline-offset:3px}
@media(max-width:620px){.calendar-cell>span,.calendar-cell>small{display:none}.calendar-cell .calendar-count{display:block;font-size:.875rem;font-style:normal;color:var(--primary)}.calendar-cell{min-height:64px}.calendar-cell strong{font-size:1rem}.calendar-week span{font-size:.875rem}.focus-card,.workflow-card{padding:18px}.workflow-actions .btn{width:100%}.calendar-agenda>div{grid-template-columns:64px minmax(0,1fr) auto;font-size:.875rem}.calendar-agenda strong{overflow-wrap:anywhere}.dash-heading>.btn{display:inline-flex}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}

/* 1.3.1: independent CTA row, below the Pro benefits. */
.pro-gate .check-list{display:grid;width:fit-content;max-width:100%;margin:24px auto;text-align:left}
.pro-gate>[data-open-pro]{display:flex;width:fit-content;max-width:100%;margin:8px auto 0;justify-content:center;white-space:normal}
@media(max-width:620px){.pro-gate>[data-open-pro]{width:100%}}

/* 1.3.2: isolate decorative radar layers beneath the opaque price cards. */
.hero-art{isolation:isolate}
.hero-art>.marketing-radar{position:relative;z-index:0;isolation:isolate}
.hero-art>.float-card{z-index:1}
