:root{--bg:#0b1120;--panel:#111827;--panel-solid:#111827;--panel-soft:#1f2937;--secondary-panel:#1f2937;--line:#ffffff0f;--text:#f9fafb;--muted:#9ca3af;--muted-2:#6b7280;--green:#22c55e;--red:#ef4444;--blue:#3b82f6;--blue-hover:#2563eb;--yellow:#f59e0b;--orange:#f59e0b;--gray-chart:#6b7280;--bg-rgb:11, 17, 32;--panel-rgb:17, 24, 39;--secondary-rgb:31, 41, 55;--text-rgb:249, 250, 251;--accent-rgb:59, 130, 246;--green-rgb:34, 197, 94;--red-rgb:239, 68, 68;--orange-rgb:245, 158, 11;--shadow:0 18px 48px #00000047;--radius:8px;--sidebar:280px;--sidebar-bg:#111827eb}html[data-theme=light]{--bg:#f3f4f6;--panel:#fff;--panel-solid:#fff;--panel-soft:#f9fafb;--secondary-panel:#f9fafb;--line:#0000000f;--text:#111827;--muted:#4b5563;--muted-2:#6b7280;--green:#16a34a;--red:#dc2626;--blue:#2563eb;--blue-hover:#1d4ed8;--yellow:#d97706;--orange:#d97706;--gray-chart:#6b7280;--bg-rgb:243, 244, 246;--panel-rgb:255, 255, 255;--secondary-rgb:249, 250, 251;--text-rgb:17, 24, 39;--accent-rgb:37, 99, 235;--green-rgb:22, 163, 74;--red-rgb:220, 38, 38;--orange-rgb:217, 119, 6;--shadow:0 18px 40px #11182714;--sidebar-bg:#ffffffeb}*{box-sizing:border-box}body{min-height:100vh;color:var(--text);background:radial-gradient(circle at top left, #31d9931f, transparent 34rem), radial-gradient(circle at bottom right, #5fb4ff1f, transparent 34rem), var(--bg);letter-spacing:0;margin:0;font-family:Inter,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;transition:background .3s,color .3s}html[data-theme=light] body{background:radial-gradient(circle at top left, #31d99312, transparent 34rem), radial-gradient(circle at bottom right, #5fb4ff12, transparent 34rem), var(--bg)}button,input,textarea,select{font:inherit}button{cursor:pointer}.app-shell{grid-template-columns:var(--sidebar) 1fr;min-height:100vh;display:grid}.sidebar{border-right:1px solid var(--line);background:var(--sidebar-bg);-webkit-backdrop-filter:blur(22px);backdrop-filter:blur(22px);z-index:5;flex-direction:column;gap:18px;height:100vh;padding:22px 18px;transition:transform .2s,background .3s;display:flex;position:sticky;top:0}.brand{align-items:center;gap:12px;padding:10px;display:flex}.brand-mark{border-radius:var(--radius);width:42px;height:42px;color:var(--green);background:linear-gradient(135deg,#31d99329,#5fb4ff1f);border:1px solid #31d99366;place-items:center;font-weight:800;display:grid;box-shadow:inset 0 0 18px #31d9931f}.brand h1{margin:0;font-size:1.12rem;line-height:1.1}.brand p{color:var(--muted);margin:3px 0 0;font-size:.76rem}.nav{gap:8px;display:grid}.nav button{border-radius:var(--radius);width:100%;min-height:44px;color:var(--muted);text-align:left;background:0 0;border:1px solid #0000;align-items:center;gap:10px;padding:0 12px;transition:all .18s;display:flex}.nav button:hover,.nav button.active{color:var(--text);background:#31d99317;border-color:#31d9933d}.nav-icon{width:22px;color:var(--green);text-align:center;font-weight:800}.profile{border:1px solid var(--line);border-radius:var(--radius);background:var(--panel-soft);gap:12px;padding:14px;transition:background .3s;display:grid}.profile-row{align-items:center;gap:10px;min-width:0;display:flex}.avatar{border:1px solid var(--line);object-fit:cover;background:#5fb4ff29;border-radius:50%;flex:none;width:38px;height:38px}.profile strong,.profile span{text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.profile span{color:var(--muted);margin-top:3px;font-size:.78rem}.main{min-width:0;padding:24px}.topbar{justify-content:space-between;align-items:center;gap:18px;min-height:64px;margin-bottom:18px;display:flex}.topbar h2{margin:0;font-size:clamp(1.45rem,2.3vw,2.4rem);line-height:1.05}.topbar p{color:var(--muted);max-width:720px;margin:7px 0 0;line-height:1.55}.mobile-toggle{border:1px solid var(--line);border-radius:var(--radius);width:44px;height:44px;color:var(--text);background:var(--panel-soft);display:none}.btn-row{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.btn{border:1px solid var(--line);border-radius:var(--radius);min-height:42px;color:var(--text);background:var(--panel-soft);justify-content:center;align-items:center;gap:8px;padding:0 14px;font-weight:500;transition:all .18s;display:inline-flex}.btn:hover{border-color:#31d99361;transform:translateY(-1px)}.btn.primary{color:#03110b;background:linear-gradient(135deg, var(--green), #78e8c7);border-color:#31d993cc;font-weight:800}.btn.danger{color:var(--red);background:#ff5f7314;border-color:#ff5f7352}.auth-screen{place-items:center;min-height:100vh;padding:22px;display:grid}.auth-card{border:1px solid var(--line);border-radius:var(--radius);background:var(--panel-solid);width:min(980px,100%);box-shadow:var(--shadow);grid-template-columns:58% 42%;display:grid;overflow:hidden}.auth-hero{background:linear-gradient(135deg,#31d9932e,#080c14fa),repeating-linear-gradient(0deg,#ffffff08 0 1px,#0000 1px 44px),repeating-linear-gradient(90deg,#ffffff05 0 1px,#0000 1px 44px);padding:clamp(28px,5vw,56px);color:#eef4ff!important}.auth-hero h1{max-width:100%;margin:0;font-size:clamp(2.4rem,5vw,4.4rem);font-weight:800;line-height:1;color:#eef4ff!important}.auth-hero p{max-width:540px;margin:18px 0 0;line-height:1.65;color:#97a3b8!important}.auth-panel{border-left:1px solid var(--line);background:var(--panel-soft);flex-direction:column;justify-content:center;padding:48px 36px;display:flex}.auth-panel form,.auth-tabs,.auth-divider,.auth-panel .btn{width:100%}.field input{border-radius:12px;width:100%;height:48px;padding:0 14px;font-size:15px}.auth-panel h2{margin:0;font-size:1.35rem}.status-pill{width:fit-content;min-height:32px;color:var(--green);background:#31d9931a;border:1px solid #31d9933d;border-radius:999px;align-items:center;gap:8px;margin-bottom:12px;padding:0 10px;font-size:.78rem;font-weight:700;display:inline-flex}.section{animation:.22s both fadeUp;display:none}.section.active{display:block}@keyframes fadeUp{0%{opacity:0;transform:translateY(24px)}to{opacity:1;transform:translateY(0)}}.grid{gap:14px;display:grid}.grid.cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}.grid.cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.grid.cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.card{border:1px solid var(--line);border-radius:var(--radius);background:var(--panel);box-shadow:var(--shadow);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);min-width:0;transition:background .3s,border-color .3s}.metric-card{align-content:space-between;min-height:132px;padding:16px;display:grid;position:relative;overflow:hidden}.metric-card:after{content:"";background:#ffffff06;border:1px solid #ffffff12;border-radius:50%;width:92px;height:92px;position:absolute;top:-30px;right:-24px}.metric-label{color:var(--muted);text-transform:uppercase;letter-spacing:.08em;font-size:.79rem;font-weight:700}.metric-value{overflow-wrap:anywhere;margin-top:14px;font-size:clamp(1.45rem,2vw,2.05rem);font-weight:800;line-height:1}.metric-hint{color:var(--muted);margin-top:9px;font-size:.78rem}.green{color:var(--green)}.red{color:var(--red)}.blue{color:var(--blue)}.yellow{color:var(--yellow)}.panel-header{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;gap:12px;padding:16px;display:flex}.panel-header h3{margin:0;font-size:1rem}.panel-header p{color:var(--muted);margin:4px 0 0;font-size:.78rem}.panel-body{padding:16px}.calendar-tools{justify-content:space-between;align-items:center;gap:12px;margin-bottom:14px;display:flex}.calendar-strip-wrap{scrollbar-width:thin;scrollbar-color:#31d99373 #ffffff0d;padding-bottom:6px;overflow-x:auto}.calendar-title{font-weight:800}.calendar-grid{gap:8px;min-width:max-content;display:flex}.weekday{color:var(--muted);text-align:center;text-transform:uppercase;letter-spacing:.08em;font-size:.72rem;font-weight:800}.day{border:1px solid var(--line);border-radius:var(--radius);width:106px;min-height:92px;color:var(--text);background:var(--panel-soft);text-align:center;flex:0 0 106px;padding:9px;transition:all .16s;position:relative;overflow:hidden}.day:hover,.day.selected{border-color:#31d99373;transform:translateY(-1px);box-shadow:0 10px 28px #00000038}.day.muted{opacity:.34}.day.today{border-color:#5fb4ff8c}.day-weekday{z-index:1;color:var(--muted);text-transform:uppercase;letter-spacing:.08em;font-size:.72rem;font-weight:800;display:block;position:relative}.day-number{z-index:1;margin-top:8px;font-size:1.35rem;font-weight:800;display:block;position:relative}.day-pl{z-index:1;color:var(--muted);text-overflow:ellipsis;white-space:nowrap;margin-top:10px;font-size:.72rem;display:block;position:relative;overflow:hidden}.heat{opacity:.86;height:5px;position:absolute;inset:auto 0 0}.workflow-stack{gap:14px;margin-top:14px;display:grid}.summary-toolbar{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.summary-toolbar select{width:auto;min-width:170px}.premium-gate{margin-bottom:14px;overflow:hidden}.premium-gate .panel-body{gap:14px;display:grid}.premium-code-form{grid-template-columns:minmax(180px,1fr) auto;align-items:end;gap:10px;display:grid}.premium-message{min-height:22px;color:var(--muted);font-size:.86rem;line-height:1.5}.premium-message.success{color:var(--green)}.premium-message.error{color:var(--red)}.plan-row{flex-wrap:wrap;gap:10px;display:flex}.plan-chip{border:1px solid var(--line);min-height:34px;color:var(--text);background:var(--panel-soft);border-radius:999px;align-items:center;gap:7px;padding:0 11px;font-size:.8rem;font-weight:800;display:inline-flex}.plan-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;display:grid}.plan-card{border:1px solid var(--line);border-radius:var(--radius);background:var(--panel-soft);gap:10px;min-width:0;padding:14px;display:grid}.plan-card strong{font-size:1rem}.plan-card .price{color:var(--green);font-size:1.6rem;font-weight:800;line-height:1}.plan-card p{color:var(--muted);margin:0;font-size:.82rem;line-height:1.45}.ad-slot{border-radius:var(--radius);color:#f8e7a6;background:#f2c94c14;border:1px dashed #f2c94c6b;justify-content:space-between;align-items:center;gap:12px;min-height:74px;margin-bottom:14px;padding:14px 16px;display:flex}.ad-slot strong{margin-bottom:3px;display:block}.ad-slot span{color:#f8e7a6c7;font-size:.84rem}.form-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;display:grid}.field{gap:7px;min-width:0;display:grid}.field.full{grid-column:1/-1}label{color:var(--muted);text-transform:uppercase;letter-spacing:.07em;font-size:.78rem;font-weight:800}input,textarea,select{border:1px solid var(--line);border-radius:var(--radius);width:100%;min-height:42px;color:var(--text);background:var(--panel-soft);outline:none;padding:10px 12px;transition:all .16s,background .3s,border-color .3s}textarea{resize:vertical;min-height:88px;line-height:1.5}input:focus,textarea:focus,select:focus{border-color:#31d99380;box-shadow:0 0 0 3px #31d9931c}select option{color:#101623;background:#fff}.question-list{gap:10px;display:grid}.dashboard-reminder{border-radius:var(--radius);color:#dbeafe;background:linear-gradient(135deg,#5fb4ff1f,#31d99314);border:1px solid #5fb4ff47;margin-bottom:10px;padding:14px;line-height:1.55}.trade-mode{border:1px solid var(--line);border-radius:var(--radius);grid-template-columns:1fr 1fr;min-width:min(100%,310px);display:inline-grid;overflow:hidden}.trade-mode button{min-height:38px;color:var(--muted);background:var(--panel-soft);border:0;padding:0 12px;font-weight:800}.trade-mode button.active{color:#03110b;background:var(--green)}.trade-log-table{scrollbar-width:thin;padding-bottom:6px;overflow-x:auto}.trade-log-head,.trade-row{grid-template-columns:1.15fr .85fr .8fr .8fr .7fr 44px;align-items:center;gap:10px;min-width:720px;display:grid}.trade-log-head{color:var(--muted);text-transform:uppercase;letter-spacing:.07em;padding:0 8px 8px;font-size:.72rem;font-weight:800}.trade-row{border:1px solid var(--line);border-radius:var(--radius);background:var(--panel-soft);margin-bottom:8px;padding:8px}.trade-row .field{gap:0}.trade-row label{clip:rect(0, 0, 0, 0);width:1px;height:1px;position:absolute;overflow:hidden}.trade-row input,.trade-row select{min-height:38px;padding:8px 10px}.trade-summary{color:var(--muted);flex-wrap:wrap;gap:10px;margin-top:10px;font-size:.86rem;display:flex}.trade-summary strong{color:var(--text)}.icon-btn{border:1px solid var(--line);border-radius:var(--radius);width:42px;min-height:42px;color:var(--red);background:#ff5f7314;justify-content:center;align-items:center;font-weight:800;display:flex}.score-mini-grid{grid-template-columns:repeat(5,minmax(0,1fr));gap:10px;margin-top:10px;display:grid}.score-mini{border:1px solid var(--line);border-radius:var(--radius);background:var(--panel-soft);text-align:center;padding:10px}.score-mini strong{color:var(--muted);text-transform:uppercase;letter-spacing:.07em;margin-bottom:6px;font-size:.72rem;display:block}.score-mini span{font-size:1.15rem;font-weight:800}.question{border:1px solid var(--line);border-radius:var(--radius);background:var(--panel-soft);justify-content:space-between;align-items:center;gap:12px;min-height:48px;padding:10px;display:flex}.question span{line-height:1.35}.segmented{border:1px solid var(--line);border-radius:var(--radius);flex:none;grid-template-columns:1fr 1fr;width:132px;display:inline-grid;overflow:hidden}.segmented button{min-height:34px;color:var(--muted);background:0 0;border:0;font-weight:800}.segmented button.active.yes{color:#03110b;background:var(--green)}.segmented button.active.no{color:#170306;background:var(--red)}.chart-wrap{height:320px;padding:16px}.journal-list{gap:12px;display:grid}.journal-item{border:1px solid var(--line);border-radius:var(--radius);background:var(--panel-soft);padding:14px}.journal-item-top{justify-content:space-between;align-items:center;gap:10px;margin-bottom:8px;display:flex}.journal-item h4{margin:0;font-size:.98rem}.journal-item small{color:var(--muted)}.journal-item p{color:var(--text);white-space:pre-wrap;margin:7px 0 0;line-height:1.55}.thumb-grid{grid-template-columns:repeat(auto-fill,minmax(110px,1fr));gap:10px;margin-top:12px;display:grid}.thumb-grid img{aspect-ratio:4/3;object-fit:cover;border-radius:var(--radius);border:1px solid var(--line);width:100%}.toast{z-index:20;border-radius:var(--radius);max-width:min(380px,100vw - 40px);color:var(--text);box-shadow:var(--shadow);opacity:0;pointer-events:none;background:#11e446f0;border:1px solid #31d99352;padding:13px 15px;transition:all .18s;position:fixed;bottom:20px;right:20px;transform:translateY(12px)}.toast.show{opacity:1;transform:translateY(0)}.empty-state{color:var(--muted);text-align:center;border:1px dashed var(--line);border-radius:var(--radius);background:var(--panel-soft);padding:22px}.setup-note{border-radius:var(--radius);color:#f8e7a6;background:#f2c94c14;border:1px solid #f2c94c57;margin-bottom:12px;padding:12px;font-size:.88rem;line-height:1.5}.hidden{display:none!important}.auth-tabs{border-bottom:1px solid var(--line);grid-template-columns:1fr 1fr;margin-bottom:14px;display:grid}.auth-tab{color:var(--muted);text-align:center;background:0 0;border:0;padding:12px;font-weight:600;transition:all .15s}.auth-tab.active{color:var(--text);border-bottom:2px solid var(--green)}.auth-divider{text-align:center;color:var(--muted);align-items:center;margin:10px 0;font-size:.78rem;display:flex}.auth-divider:before,.auth-divider:after{content:"";border-bottom:1px solid var(--line);flex:1}.auth-divider:not(:empty):before{margin-right:.5em}.auth-divider:not(:empty):after{margin-left:.5em}@media (width<=1180px){.grid.cols-4,.grid.cols-3{grid-template-columns:repeat(2,minmax(0,1fr))}.plan-grid{grid-template-columns:1fr}}@media (width<=860px){.app-shell{grid-template-columns:1fr}.sidebar{width:min(84vw,320px);transition:all .2s;position:fixed;inset:0 auto 0 0;transform:translate(-103%)}.sidebar.open{transform:translate(0)}.mobile-toggle{place-items:center;display:inline-grid}.main{padding:16px}.topbar{align-items:flex-start}.auth-card{grid-template-columns:1fr}.auth-panel{border-left:0;border-top:1px solid var(--line)}.calendar-grid{gap:5px}.day{flex-basis:86px;width:86px;min-height:78px;padding:7px}.day-pl{margin-top:7px}.form-grid,.grid.cols-2,.grid.cols-3,.grid.cols-4{grid-template-columns:1fr}.question{flex-direction:column;align-items:stretch}.segmented{width:100%}.trade-row{grid-template-columns:1.15fr .85fr .8fr .8fr .7fr 44px}.score-mini-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.premium-code-form{grid-template-columns:1fr}}@media (width<=600px){.auth-hero{display:none!important}.auth-card{box-shadow:none!important;background:0 0!important;border:0!important;border-radius:0!important;grid-template-columns:1fr!important}.auth-panel{background:0 0!important;border-top:0!important;border-left:0!important;padding:16px 8px!important}.auth-screen{align-content:center!important;place-items:start center!important;padding:12px!important}}@media (width<=520px){.topbar{flex-direction:column}.btn-row,.btn{width:100%}.btn{justify-content:center}.panel-header,.calendar-tools,.journal-item-top{flex-direction:column;align-items:flex-start}.calendar-tools .btn-row{grid-template-columns:1fr 1fr;display:grid}.ad-slot{flex-direction:column;align-items:flex-start}}.oauth-btn-group{gap:12px;width:100%;margin-top:14px;display:grid}.oauth-btn{border:1px solid var(--line);background:var(--secondary-panel);width:100%;min-height:48px;color:var(--text);border-radius:12px;justify-content:center;align-items:center;gap:12px;font-size:.95rem;font-weight:600;transition:all .2s;display:flex}.oauth-btn:hover{transform:translateY(-2px);box-shadow:0 4px 12px #00000026}.oauth-btn.google:hover{background:#4285f414;border-color:#4285f466}.oauth-btn.microsoft:hover{background:#f2502214;border-color:#f2502266}.oauth-btn.facebook:hover{background:#1877f214;border-color:#1877f266}.oauth-btn svg{flex-shrink:0;width:20px;height:20px}.auth-modal-overlay{z-index:50;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#000000bf;place-items:center;padding:16px;animation:.2s ease-out fadeIn;display:grid;position:fixed;inset:0}.auth-modal-card{border:1px solid var(--line);background:var(--panel);width:min(480px,100%);box-shadow:var(--shadow);border-radius:16px;animation:.25s cubic-bezier(.34,1.56,.64,1) scaleUp;position:relative;overflow:hidden}.auth-close-btn{border:1px solid var(--line);background:var(--panel-soft);width:32px;height:32px;color:var(--muted);cursor:pointer;border-radius:50%;justify-content:center;align-items:center;transition:all .15s;display:flex;position:absolute;top:16px;right:16px}.auth-close-btn:hover{color:var(--text);border-color:var(--text);transform:rotate(90deg)}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes scaleUp{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}.landing-page{background:radial-gradient(circle at 10% 20%, #3b82f61a 0%, transparent 40%), radial-gradient(circle at 90% 80%, #22c55e14 0%, transparent 40%), var(--bg);min-height:100vh;color:var(--text);padding-bottom:60px;overflow-x:hidden}.landing-nav{justify-content:space-between;align-items:center;max-width:1200px;margin:0 auto;padding:24px;display:flex}.landing-brand{align-items:center;gap:12px;display:flex}.landing-logo{width:44px;height:44px;color:var(--blue);filter:drop-shadow(0 0 8px #3b82f666)}.landing-brand h1{background:linear-gradient(135deg, var(--text), var(--muted));-webkit-text-fill-color:transparent;-webkit-background-clip:text;margin:0;font-size:1.4rem;font-weight:800}.landing-hero{text-align:center;flex-direction:column;align-items:center;max-width:1200px;margin:0 auto;padding:80px 24px 60px;display:flex}.landing-hero h2{max-width:850px;margin:0 0 20px;font-size:clamp(2.2rem,5vw,4.2rem);font-weight:800;line-height:1.1}.gradient-text{background:linear-gradient(135deg, var(--blue), var(--green));-webkit-text-fill-color:transparent;-webkit-background-clip:text}.landing-hero p{color:var(--muted);max-width:680px;margin:0 0 36px;font-size:clamp(1.05rem,1.8vw,1.3rem);line-height:1.6}.cta-group{flex-wrap:wrap;justify-content:center;gap:16px;display:flex}.landing-btn{border:1px solid var(--line);border-radius:12px;justify-content:center;align-items:center;gap:10px;min-height:52px;padding:0 28px;font-size:1rem;font-weight:700;transition:all .2s;display:inline-flex}.landing-btn.primary{background:linear-gradient(135deg, var(--blue), var(--blue-hover));color:#fff;border-color:#3b82f666;box-shadow:0 10px 24px #3b82f640}.landing-btn.primary:hover{transform:translateY(-2px);box-shadow:0 14px 30px #3b82f659}.landing-btn.secondary{background:var(--panel-soft);color:var(--text)}.landing-btn.secondary:hover{background:var(--secondary-panel);border-color:var(--muted)}.landing-mockup{border:1px solid var(--line);background:var(--panel);aspect-ratio:16/9.5;border-radius:16px;max-width:1000px;margin:60px auto 0;position:relative;overflow:hidden;box-shadow:0 30px 70px #0006}.mockup-header{background:var(--secondary-panel);border-bottom:1px solid var(--line);align-items:center;gap:8px;height:40px;padding:0 16px;display:flex}.mockup-body{background:var(--bg);grid-template-columns:200px 1fr;height:calc(100% - 40px);display:grid}.mockup-sidebar{background:var(--panel);border-right:1px solid var(--line);flex-direction:column;gap:12px;padding:16px;display:flex}.mockup-item{background:var(--panel-soft);border-radius:6px;height:32px}.mockup-item.active{background:#3b82f626;border:1px solid #3b82f64d}.mockup-main{flex-direction:column;gap:20px;padding:24px;display:flex;overflow:hidden}.mockup-row{grid-template-columns:repeat(3,1fr);gap:16px;display:grid}.mockup-card{border:1px solid var(--line);background:var(--panel);border-radius:10px;flex-direction:column;justify-content:space-between;height:90px;padding:12px;display:flex}.mockup-line{border:1px solid var(--line);background:var(--panel);border-radius:12px;height:120px;position:relative;overflow:hidden}.landing-features{max-width:1200px;margin:100px auto 0;padding:0 24px}.section-title{text-align:center;margin-bottom:50px}.section-title h3{margin:0 0 10px;font-size:2.2rem;font-weight:800}.section-title p{color:var(--muted);font-size:1.1rem}.features-grid{grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:24px;display:grid}.feature-card{border:1px solid var(--line);background:var(--panel);border-radius:16px;padding:32px;transition:all .25s;position:relative;overflow:hidden}.feature-icon-wrapper{width:50px;height:50px;color:var(--blue);background:#3b82f61a;border-radius:12px;justify-content:center;align-items:center;margin-bottom:20px;display:flex}.feature-card h4{margin:0 0 12px;font-size:1.25rem;font-weight:700}.feature-card p{color:var(--muted);margin:0;line-height:1.6}.landing-reviews{max-width:1200px;margin:110px auto 0;padding:0 24px}.reviews-grid{grid-template-columns:repeat(auto-fit,minmax(320px,1fr));gap:24px;display:grid}.review-card{border:1px solid var(--line);background:var(--panel);border-radius:16px;flex-direction:column;justify-content:space-between;gap:16px;padding:24px;transition:all .2s;display:flex}.review-card:hover{border-color:#22c55e4d;transform:translateY(-3px)}.review-stars{color:var(--yellow);gap:4px;font-size:1.1rem;display:flex}.review-content{color:var(--text);margin:0;font-size:.95rem;font-style:italic;line-height:1.6}.review-user{border-top:1px solid var(--line);align-items:center;gap:12px;padding-top:14px;display:flex}.review-avatar{background:var(--panel-soft);width:40px;height:40px;color:var(--blue);border:1px solid var(--line);border-radius:50%;justify-content:center;align-items:center;font-size:.9rem;font-weight:700;display:flex}.review-info strong{font-size:.92rem;display:block}.review-info span{color:var(--muted);font-size:.78rem}.landing-cta{background:linear-gradient(135deg, #3b82f626, #22c55e0d), var(--panel);text-align:center;max-width:900px;box-shadow:var(--shadow);border:1px solid #3b82f633;border-radius:20px;margin:110px auto 0;padding:60px 40px}.landing-cta h3{margin:0 0 16px;font-size:2.2rem;font-weight:800}.landing-cta p{color:var(--muted);max-width:600px;margin:0 auto 32px;font-size:1.15rem;line-height:1.6}.import-actions{grid-template-columns:minmax(180px,1fr) auto;align-items:flex-end;gap:12px;display:grid}.import-result{color:var(--muted);margin-top:14px;font-size:.88rem;line-height:1.5}.import-result strong{color:var(--text)}.import-summary{grid-template-columns:repeat(4,1fr);gap:10px;margin-top:12px;display:grid}.import-summary span{border:1px solid var(--line);border-radius:var(--radius);background:var(--panel-soft);text-align:center;padding:10px}.import-summary strong{margin-top:4px;font-size:1.1rem;display:block}.import-mini{border:1px solid rgba(var(--accent-rgb), .18);border-radius:var(--radius);background:rgba(var(--accent-rgb), .04);padding:14px}.upload-group-summary{grid-template-columns:repeat(3,1fr);gap:10px;margin-bottom:12px;display:grid}.upload-group-summary span{border:1px solid var(--line);border-radius:var(--radius);background:var(--panel-soft);text-align:center;color:var(--muted);padding:10px;font-size:.8rem}.upload-group-summary strong{color:var(--text);margin-top:4px;font-size:1.1rem;display:block}.upload-group-list{max-height:250px;padding-right:4px;overflow-y:auto}.pagination-bar{border-top:1px solid var(--line);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px;margin-top:16px;padding-top:16px;display:flex}.page-buttons{flex-wrap:wrap;gap:6px;display:flex}.page-btn{border:1px solid var(--line);border-radius:var(--radius);min-height:34px;color:var(--muted);background:var(--panel-soft);padding:6px 12px;font-size:.85rem;font-weight:700}.page-btn.active{color:#fff;background:var(--blue);border-color:#0000}.page-btn:disabled{cursor:not-allowed;opacity:.45}.legal-modal{z-index:60;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#000000b3;place-items:center;padding:18px;display:grid;position:fixed;inset:0}.legal-panel{border:1px solid var(--line);background:var(--panel);width:min(760px,100%);max-height:min(85vh,780px);box-shadow:var(--shadow);border-radius:12px;grid-template-rows:auto 1fr;display:grid;overflow:hidden}.legal-head{border-bottom:1px solid var(--line);background:var(--secondary-panel);justify-content:space-between;align-items:center;gap:12px;padding:18px;display:flex}.legal-head h3{margin:0;font-size:1.15rem;font-weight:800}.legal-body{color:var(--muted);padding:24px;line-height:1.65;overflow-y:auto}.legal-body h4{color:var(--text);margin:20px 0 8px;font-size:1.05rem;font-weight:700}.legal-body p{margin:0 0 12px}@media (width<=860px){.import-actions{grid-template-columns:1fr}}*,:before,:after{box-sizing:border-box;margin:0;padding:0}:root{--green:#00e5a0;--green-dim:#00e5a01f;--green-glow:#00e5a059;--blue:#3b9eff;--blue-dim:#3b9eff1f;--yellow:#f5c542;--red:#ff5b5b;--bg:#08090d;--bg2:#0e1018;--bg3:#13161f;--surface:#181c27;--border:#ffffff12;--border-bright:#ffffff24;--text:#e8ecf4;--muted:#6b7490;--muted2:#9aa0b8;--line:#ffffff0f;--font-display:"Syne", sans-serif;--font-mono:"DM Mono", monospace;--radius:14px;--radius-sm:8px;--glow-green:0 0 30px #00e5a033, 0 0 60px #00e5a014;--glow-blue:0 0 30px #3b9eff33, 0 0 60px #3b9eff14;--transition:all .3s cubic-bezier(.4, 0, .2, 1)}html{scroll-behavior:smooth}body{background:var(--bg);color:var(--text);font-family:var(--font-display);line-height:1.6;overflow-x:hidden}body:before{content:"";pointer-events:none;z-index:9999;opacity:.4;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 256 256' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='0.04'/%3E%3C/svg%3E");position:fixed;inset:0}.tf-nav{z-index:100;background:var(--nav-bg,#08090db3);-webkit-backdrop-filter:blur(20px)saturate(1.8);backdrop-filter:blur(20px)saturate(1.8);border-bottom:1px solid var(--border);height:68px;transition:var(--transition);justify-content:space-between;align-items:center;padding:0 clamp(16px,4vw,48px);display:flex;position:fixed;top:0;left:0;right:0}.tf-nav.scrolled{background:var(--nav-bg-scrolled,#08090deb);border-bottom-color:var(--border-bright)}.tf-brand{letter-spacing:-.02em;color:var(--text);align-items:center;gap:10px;font-size:1.1rem;font-weight:800;text-decoration:none;display:flex}.tf-brand svg{width:36px;height:36px}.nav-links{align-items:center;gap:32px;display:flex}.nav-links a{color:var(--muted2);letter-spacing:.04em;font-size:.85rem;font-weight:600;text-decoration:none;transition:color .2s}.nav-links a:hover{color:var(--text)}.btn-nav{background:var(--green);color:var(--bg);border-radius:var(--radius-sm);font-family:var(--font-display);letter-spacing:.02em;cursor:pointer;transition:var(--transition);white-space:nowrap;border:none;padding:9px 20px;font-size:.85rem;font-weight:700}.btn-nav:hover{box-shadow:var(--glow-green);background:#00fbb1;transform:translateY(-1px)}.hamburger{color:var(--text);cursor:pointer;background:0 0;border:none;padding:4px;display:none}.mobile-menu{background:var(--bg2);z-index:99;border-top:1px solid var(--border);flex-direction:column;justify-content:center;align-items:center;gap:32px;display:none;position:fixed;inset:68px 0 0}.mobile-menu.open{display:flex}.mobile-menu a{color:var(--muted2);letter-spacing:.04em;font-size:1.2rem;font-weight:600;text-decoration:none;transition:color .2s}.mobile-menu a:hover{color:var(--green)}.mobile-menu .btn-nav{padding:14px 40px;font-size:1rem}.tf-hero{text-align:center;flex-direction:column;justify-content:center;align-items:center;min-height:100vh;padding:100px clamp(16px,5vw,80px) 60px;display:flex;position:relative;overflow:hidden}.hero-glow-1{pointer-events:none;background:radial-gradient(#00e5a012 0%,#0000 70%);width:clamp(300px,60vw,700px);height:clamp(300px,60vw,700px);position:absolute;top:15%;left:50%;transform:translate(-50%)}.hero-glow-2{pointer-events:none;background:radial-gradient(#3b9eff0f 0%,#0000 70%);width:500px;height:500px;position:absolute;bottom:-20%;right:-10%}.hero-badge{background:var(--green-dim);font-size:.72rem;font-family:var(--font-mono);color:var(--green);letter-spacing:.08em;border:1px solid #00e5a040;border-radius:100px;align-items:center;gap:6px;margin-bottom:28px;padding:5px 14px;animation:.6s both fadeUp;display:inline-flex}.hero-badge:before{content:"";background:var(--green);border-radius:50%;width:6px;height:6px;animation:1.5s infinite pulse-dot}@keyframes pulse-dot{0%,to{opacity:1;transform:scale(1)}50%{opacity:.5;transform:scale(.7)}}.hero-h1{letter-spacing:-.03em;margin-bottom:24px;font-size:clamp(2.2rem,7vw,5.5rem);font-weight:800;line-height:1.05;animation:.7s .1s both fadeUp}.hero-h1 em{background:linear-gradient(135deg, var(--green) 0%, #00c8e0 100%);-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text;font-style:normal}.hero-sub{max-width:600px;color:var(--muted2);margin:0 auto 40px;font-size:clamp(.95rem,2vw,1.1rem);font-weight:400;line-height:1.75;animation:.7s .2s both fadeUp}.hero-cta{flex-wrap:wrap;justify-content:center;gap:12px;margin-bottom:64px;animation:.7s .3s both fadeUp;display:flex}.btn-primary{background:var(--green);color:var(--bg);border-radius:var(--radius-sm);font-family:var(--font-display);cursor:pointer;transition:var(--transition);letter-spacing:.01em;border:none;align-items:center;gap:8px;padding:14px 28px;font-size:.95rem;font-weight:700;display:inline-flex}.btn-primary:hover{box-shadow:var(--glow-green);background:#00fbb1;transform:translateY(-2px)}.btn-secondary{color:var(--muted2);border:1px solid var(--border-bright);border-radius:var(--radius-sm);font-family:var(--font-display);cursor:pointer;transition:var(--transition);background:0 0;align-items:center;gap:8px;padding:14px 28px;font-size:.95rem;font-weight:600;text-decoration:none;display:inline-flex}.btn-secondary:hover{border-color:var(--btn-sec-hover-border,#ffffff4d);color:var(--text);background:var(--btn-sec-hover-bg,#ffffff0a)}.stats-bar{border:1px solid var(--border);border-radius:var(--radius);flex-wrap:wrap;gap:0;width:100%;max-width:680px;margin-bottom:64px;animation:.7s .4s both fadeUp;display:flex;overflow:hidden}.stat-item{background:var(--surface);border-right:1px solid var(--border);text-align:center;min-width:130px;transition:var(--transition);flex:1;padding:20px 24px}.stat-item:last-child{border-right:none}.stat-item:hover{background:var(--bg3)}.stat-num{letter-spacing:-.03em;font-size:1.6rem;font-weight:800;display:block}.stat-label{font-size:.7rem;font-family:var(--font-mono);color:var(--muted);letter-spacing:.06em;text-transform:uppercase;margin-top:2px;display:block}.hero-mockup{border:1px solid var(--border-bright);width:100%;max-width:820px;box-shadow:0 40px 120px #0009, 0 0 0 1px var(--border), var(--glow-green);background:var(--surface);border-radius:18px;animation:.8s .4s both fadeUp;overflow:hidden}.mockup-titlebar{background:var(--bg3);border-bottom:1px solid var(--border);align-items:center;gap:8px;padding:12px 16px;display:flex}.mockup-dot{border-radius:50%;width:11px;height:11px}.mockup-dot:first-child{background:#ff5f57}.mockup-dot:nth-child(2){background:#febc2e}.mockup-dot:nth-child(3){background:#28c840}.mockup-url{background:var(--bg2);border:1px solid var(--border);font-size:.68rem;font-family:var(--font-mono);color:var(--muted);border-radius:20px;margin-left:auto;padding:3px 12px}.mockup-inner{min-height:320px;display:flex}.mockup-sidebar{background:var(--bg2);border-right:1px solid var(--border);flex-direction:column;align-items:center;gap:16px;width:56px;padding:16px 0;display:flex}.sidebar-icon{background:var(--surface);cursor:pointer;width:32px;height:32px;transition:var(--transition);border-radius:8px;justify-content:center;align-items:center;font-size:.9rem;display:flex}.sidebar-icon.active{background:var(--green-dim);box-shadow:0 0 12px #00e5a033}.sidebar-icon:hover{background:var(--bg3)}.mockup-content{flex-direction:column;flex:1;gap:14px;padding:20px;display:flex;overflow:hidden}.mockup-cards-row{grid-template-columns:repeat(3,1fr);gap:10px;display:grid}.m-card{background:var(--bg2);border:1px solid var(--border);border-radius:var(--radius-sm);transition:var(--transition);padding:12px 14px}.m-card:hover{border-color:var(--border-bright);transform:translateY(-2px)}.m-card-label{font-size:.6rem;font-family:var(--font-mono);color:var(--muted);letter-spacing:.08em;text-transform:uppercase;margin-bottom:4px;display:block}.m-card-val{font-size:1.1rem;font-weight:700;display:block}.m-chart{background:var(--bg2);border:1px solid var(--border);border-radius:var(--radius-sm);flex:1;min-height:120px;position:relative;overflow:hidden}.m-chart-label{font-size:.65rem;font-family:var(--font-mono);color:var(--muted);letter-spacing:.06em;text-transform:uppercase;position:absolute;top:10px;left:14px}.marquee-wrap{border-top:1px solid var(--border);border-bottom:1px solid var(--border);background:var(--bg2);padding:12px 0;overflow:hidden}.marquee-track{gap:48px;width:max-content;animation:20s linear infinite marquee;display:flex}.marquee-item{font-size:.75rem;font-family:var(--font-mono);color:var(--muted);white-space:nowrap;letter-spacing:.04em;align-items:center;gap:8px;display:flex}.marquee-item span{color:var(--green)}@keyframes marquee{0%{transform:translate(0)}to{transform:translate(-50%)}}.tf-features{max-width:1200px;margin:0 auto;padding:clamp(60px,8vw,120px) clamp(16px,5vw,80px)}.section-eyebrow{font-size:.72rem;font-family:var(--font-mono);color:var(--green);letter-spacing:.12em;text-transform:uppercase;margin-bottom:12px}.section-h2{letter-spacing:-.03em;margin-bottom:16px;font-size:clamp(1.8rem,4vw,2.8rem);font-weight:800;line-height:1.15}.section-sub{color:var(--muted2);max-width:520px;font-size:1rem;line-height:1.7}.features-grid{grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:20px;margin-top:56px;display:grid}.feature-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);transition:var(--transition);cursor:default;padding:28px;position:relative;overflow:hidden}.feature-card:before{content:"";background:var(--green-dim);opacity:0;transition:opacity .3s;position:absolute;inset:0}.feature-card:hover{box-shadow:0 20px 60px #0000004d, var(--glow-green);border-color:#00e5a040;transform:translateY(-4px)}.feature-card:hover:before{opacity:1}.feature-icon{border-radius:var(--radius-sm);background:var(--bg3);border:1px solid var(--border);width:46px;height:46px;transition:var(--transition);z-index:1;justify-content:center;align-items:center;margin-bottom:18px;font-size:1.3rem;display:flex;position:relative}.feature-card:hover .feature-icon{background:var(--green-dim);border-color:#00e5a04d}.feature-h4{letter-spacing:-.01em;z-index:1;margin-bottom:10px;font-size:1rem;font-weight:700;position:relative}.feature-p{color:var(--muted2);z-index:1;font-size:.88rem;line-height:1.7;position:relative}.tf-how{background:var(--bg2);border-top:1px solid var(--border);border-bottom:1px solid var(--border);padding:clamp(60px,8vw,120px) clamp(16px,5vw,80px)}.how-inner{grid-template-columns:1fr 1fr;align-items:center;gap:clamp(40px,6vw,100px);max-width:1200px;margin:0 auto;display:grid}.steps-list{flex-direction:column;gap:0;margin-top:40px;display:flex}.step{border-bottom:1px solid var(--border);cursor:pointer;transition:var(--transition);gap:20px;padding:20px 0;display:flex}.step:last-child{border-bottom:none}.step:hover .step-num{background:var(--green-dim);color:var(--green);border-color:#00e5a04d}.step-num{border-radius:var(--radius-sm);background:var(--surface);border:1px solid var(--border);width:38px;min-width:38px;height:38px;font-size:.8rem;font-family:var(--font-mono);color:var(--muted);transition:var(--transition);justify-content:center;align-items:center;font-weight:500;display:flex}.step-text h5{letter-spacing:-.01em;margin-bottom:4px;font-size:.95rem;font-weight:700}.step-text p{color:var(--muted2);font-size:.85rem;line-height:1.6}.score-card{background:var(--surface);border:1px solid var(--border);border-radius:20px;padding:28px;box-shadow:0 20px 60px #0000004d}.score-header{justify-content:space-between;align-items:center;margin-bottom:24px;display:flex}.score-title{font-size:.7rem;font-family:var(--font-mono);color:var(--muted);letter-spacing:.1em;text-transform:uppercase}.score-badge{background:var(--green-dim);font-size:.7rem;font-family:var(--font-mono);color:var(--green);border:1px solid #00e5a040;border-radius:6px;padding:4px 10px}.score-circle-wrap{justify-content:center;margin-bottom:24px;display:flex}.score-circle{width:140px;height:140px;position:relative}.score-circle svg{transform:rotate(-90deg)}.score-num-display{flex-direction:column;justify-content:center;align-items:center;display:flex;position:absolute;inset:0}.score-big{letter-spacing:-.04em;color:var(--green);font-size:2.4rem;font-weight:800}.score-sub{font-size:.65rem;font-family:var(--font-mono);color:var(--muted)}.score-metrics{flex-direction:column;gap:10px;display:flex}.metric-row{align-items:center;gap:10px;display:flex}.metric-label{color:var(--muted2);font-size:.75rem;font-family:var(--font-mono);flex:1}.metric-bar-wrap{background:var(--bg3);border-radius:10px;flex:2;height:5px;overflow:hidden}.metric-bar{border-radius:10px;height:100%;transition:width 1s}.metric-val{font-size:.72rem;font-family:var(--font-mono);color:var(--text);text-align:right;min-width:32px}.tf-reviews{max-width:1200px;margin:0 auto;padding:clamp(60px,8vw,120px) clamp(16px,5vw,80px)}.reviews-grid{grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:20px;margin-top:56px;display:grid}.review-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);transition:var(--transition);padding:28px;position:relative}.review-card:hover{border-color:var(--border-bright);transform:translateY(-3px);box-shadow:0 16px 48px #0000004d}.review-stars{color:var(--yellow);letter-spacing:2px;margin-bottom:14px;font-size:.85rem}.review-content{color:var(--muted2);margin-bottom:20px;font-size:.9rem;font-style:italic;line-height:1.75}.review-user{align-items:center;gap:12px;display:flex}.review-avatar{background:linear-gradient(135deg, var(--green), var(--blue));width:38px;height:38px;color:var(--bg);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;font-size:.9rem;font-weight:700;display:flex}.review-name{font-size:.88rem;font-weight:700}.review-role{color:var(--muted);font-size:.75rem;font-family:var(--font-mono)}.tf-cta{text-align:center;background:linear-gradient(180deg, var(--bg) 0%, var(--bg2) 100%);padding:clamp(60px,8vw,120px) clamp(16px,5vw,80px);position:relative;overflow:hidden}.cta-glow{pointer-events:none;background:radial-gradient(#00e5a014 0%,#0000 70%);width:600px;height:400px;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.cta-card{background:var(--surface);z-index:1;max-width:640px;box-shadow:0 0 0 1px var(--border), var(--glow-green);border:1px solid #00e5a033;border-radius:24px;margin:0 auto;padding:clamp(40px,6vw,64px);position:relative}.cta-h2{letter-spacing:-.03em;margin-bottom:16px;font-size:clamp(1.6rem,4vw,2.4rem);font-weight:800}.cta-p{color:var(--muted2);margin-bottom:32px;font-size:.98rem;line-height:1.7}.tf-footer{border-top:1px solid var(--border);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;max-width:100%;margin:0 auto;padding:40px clamp(16px,5vw,80px);display:flex}.footer-copy{color:var(--muted);font-size:.8rem;font-family:var(--font-mono)}.footer-links{flex-wrap:wrap;gap:4px;display:flex}.footer-links button{color:var(--muted);font-family:var(--font-mono);cursor:pointer;transition:var(--transition);background:0 0;border:none;border-radius:4px;padding:4px 10px;font-size:.75rem}.footer-links button:hover{color:var(--text);background:var(--surface)}.reveal{opacity:0;transition:opacity .6s,transform .6s;transform:translateY(30px)}.reveal.visible{opacity:1;transform:translateY(0)}@media (width<=900px){.how-inner{grid-template-columns:1fr}.score-card{max-width:440px;margin:0 auto}}@media (width<=700px){.nav-links,.btn-nav-desktop{display:none}.hamburger{display:block}.mockup-cards-row{grid-template-columns:1fr 1fr}.mockup-cards-row .m-card:last-child{display:none}.stat-item{padding:14px 12px}.stat-num{font-size:1.3rem}.tf-footer{flex-direction:column;align-items:flex-start}.marquee-track{animation-duration:12s}.hero-mockup{display:none}}@media (width<=440px){.hero-h1{font-size:2rem}.hero-cta{flex-direction:column;align-items:stretch}.btn-primary,.btn-secondary{justify-content:center}.stats-bar{flex-direction:column}.stat-item{border-right:none;border-bottom:1px solid var(--border)}.stat-item:last-child{border-bottom:none}}html[data-theme=light]{--nav-bg:#f3f4f6b3;--nav-bg-scrolled:#f3f4f6f2;--bg2:#fff;--bg3:#f9fafb;--surface:#fff;--border:#0000001a;--border-bright:#0003;--muted:#6b7280;--muted2:#4b5563;--line:#0000001a;--btn-sec-hover-border:#0000004d;--btn-sec-hover-bg:#0000000a;--green-dim:#00e5a026;--blue-dim:#3b9eff26}
