:root{color:#171d46;font-synthesis:none;text-rendering:optimizelegibility;--ink:#171d46;--ink-soft:#303858;--body:#4f576f;--muted:#747b8f;--canvas:#f6f7fb;--surface:#fff;--surface-soft:#f9f9fc;--line:#e1e4ee;--line-strong:#ccd1e1;--brand:#626bd8;--brand-deep:#303a78;--brand-dark:#202858;--coral:#ef8a72;--mint:#319b87;--mint-soft:#e5f6f1;--danger:#b94739;--shadow-soft:0 16px 50px #20285814;--shadow-card:0 24px 70px #2028581c;background:#f6f7fb;font-family:Inter,ui-sans-serif,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth;background:radial-gradient(circle at 7% 7%, #73d6c529, transparent 27rem), radial-gradient(circle at 93% 3%, #8975d626, transparent 30rem), var(--canvas);min-width:320px}body{min-width:320px;min-height:100vh;margin:0}body:before{z-index:-1;content:"";pointer-events:none;background-image:radial-gradient(#303a7814 .7px,#0000 .7px);background-size:20px 20px;position:fixed;inset:0;-webkit-mask-image:linear-gradient(#000,#0000 38rem);mask-image:linear-gradient(#000,#0000 38rem)}::selection{background:#626bd833}button,textarea{font:inherit}button,a{-webkit-tap-highlight-color:transparent}button{touch-action:manipulation}a{color:inherit}:focus-visible{outline-offset:3px;outline:3px solid #626bd852}h1,h2,h3,h4,p{margin-top:0}h1,h2,h3,h4{color:var(--ink);font-family:ui-rounded,SF Pro Rounded,Inter,ui-sans-serif,system-ui,sans-serif}.app-shell{width:min(1240px,100% - 48px);margin:0 auto;padding:0 0 54px}.site-header,.brand-lockup,.site-nav,.hero-actions,.model-heading-row,.model-facts,.panel-heading,.editor-footer,.performance-row,.score-heading,.footer-brand,.footer-links{align-items:center;display:flex}.site-header{justify-content:space-between;gap:24px;min-height:84px}.brand-lockup{gap:11px;text-decoration:none}.brand-mark{filter:drop-shadow(0 8px 14px #20285829);width:42px;height:42px}.brand-lockup>span,.footer-brand>div{gap:1px;display:grid}.brand-lockup strong,.footer-brand strong{color:var(--ink);letter-spacing:-.025em;font-size:1.01rem}.brand-lockup small,.footer-brand span{color:var(--muted);letter-spacing:.02em;font-size:.67rem}.site-nav{gap:24px}.site-nav>a{color:var(--body);font-size:.78rem;font-weight:650;text-decoration:none;transition:color .15s}.site-nav>a:hover{color:var(--brand)}.privacy-badge,.backend-chip{background:var(--mint-soft);color:#176e60;letter-spacing:.01em;border:1px solid #b9dfd6;border-radius:999px;align-items:center;gap:7px;min-height:32px;padding:6px 11px;font-size:.72rem;font-weight:750;display:inline-flex}.privacy-badge i,.backend-chip i{background:var(--mint);border-radius:999px;width:7px;height:7px;box-shadow:0 0 0 4px #319b871a}.hero{grid-template-columns:minmax(0,1fr) minmax(340px,.64fr);align-items:center;gap:clamp(34px,6vw,72px);min-height:0;padding:38px 0 48px;display:grid}.hero-copy{max-width:700px}.eyebrow,.section-kicker{color:var(--brand);letter-spacing:.14em;text-transform:uppercase;margin-bottom:10px;font-size:.69rem;font-weight:800}.hero h1{letter-spacing:-.058em;max-width:680px;margin-bottom:17px;font-size:clamp(2.7rem,5vw,4.55rem);font-weight:760;line-height:1}.hero h1 span{background:linear-gradient(102deg, var(--brand) 4%, #8174d5 52%, var(--coral));color:#0000;-webkit-background-clip:text;background-clip:text}.hero-lede{max-width:640px;color:var(--body);margin-bottom:22px;font-size:clamp(.98rem,1.5vw,1.11rem);line-height:1.58}.hero-actions{flex-wrap:wrap;gap:16px}.hero-actions>span{color:var(--muted);font-size:.77rem;font-weight:600}.button{cursor:pointer;border:1px solid #0000;border-radius:14px;min-height:48px;padding:11px 17px;font-weight:750;transition:transform .15s,background .15s,border-color .15s,box-shadow .15s}.button:not(:disabled):hover{transform:translateY(-1px)}.button:not(:disabled):active{transform:translateY(0)}.button-primary{background:linear-gradient(135deg, var(--brand-deep), var(--brand-dark));color:#fff;box-shadow:0 12px 28px #303a783b}.button-primary:not(:disabled):hover{box-shadow:0 16px 32px #303a784d}.button-secondary{border-color:var(--line-strong);color:var(--ink-soft);background:0 0}.button-secondary:not(:disabled):hover{background:#ffffffa6;border-color:#aeb4ca}.button:disabled{cursor:wait;opacity:.58}.button-link{justify-content:center;align-items:center;gap:12px;text-decoration:none;display:inline-flex}.button-link span{font-size:1rem}.hero-console{background:#ffffffc7;border:1px solid #d8dcea;border-radius:18px;min-width:0;font-family:ui-monospace,SFMono-Regular,Consolas,monospace;overflow:hidden;box-shadow:0 14px 36px #20285814}.console-titlebar{color:var(--muted);background:#f5f6fbd1;border-bottom:1px solid #e1e4ee;align-items:center;gap:13px;padding:11px 15px;font-size:.64rem;display:flex}.console-titlebar>span{gap:4px;display:flex}.console-titlebar i{background:#c4c8d6;border-radius:50%;width:6px;height:6px}.console-titlebar i:first-child{background:var(--coral)}.console-titlebar i:nth-child(2){background:#e8b45c}.console-titlebar i:nth-child(3){background:var(--mint)}.console-grid{grid-template-columns:minmax(84px,.65fr) minmax(0,1fr);gap:9px 16px;padding:18px 18px 16px;font-size:.68rem;display:grid}.console-grid span,.hero-console>p span{color:var(--muted)}.console-grid strong{color:var(--ink);text-overflow:ellipsis;white-space:nowrap;font-weight:700;overflow:hidden}.console-signals{grid-template-columns:repeat(7,minmax(0,1fr));gap:4px;padding:0 18px;display:grid}.console-signals i{border-radius:999px;height:4px}.hero-console>p{color:var(--ink-soft);justify-content:space-between;gap:18px;margin:13px 18px 16px;font-size:.62rem;display:flex}.model-panel,.editor-panel,.results-panel,.phrase-lab{box-shadow:var(--shadow-soft);border-radius:28px}.model-panel{color:#ffffffc2;background:radial-gradient(circle at 8% 0,#73d6c52e,#0000 18rem),linear-gradient(135deg,#202858,#171d46);grid-template-columns:minmax(0,1fr) minmax(360px,.72fr);align-items:center;gap:42px;margin-bottom:22px;padding:clamp(24px,4vw,38px);scroll-margin-top:20px;display:grid;overflow:hidden}.model-heading-row{align-items:flex-start;gap:14px}.engine-icon{background:#ffffff17;border:1px solid #ffffff26;border-radius:15px;flex:none;place-items:center;width:46px;height:46px;display:grid}.engine-icon svg{fill:none;stroke:#8ce1d1;stroke-linecap:round;stroke-linejoin:round;stroke-width:1.6px;width:27px;height:27px}.model-panel .section-kicker{color:#9ae4d7}.model-panel h2{color:#fff;letter-spacing:-.035em;margin:0;font-size:clamp(1.25rem,2vw,1.6rem)}.model-copy>p{max-width:680px;margin:16px 0 0;font-size:.87rem;line-height:1.6}.model-facts{flex-wrap:wrap;gap:7px;margin-top:18px}.model-facts span{color:#ffffffb3;background:#ffffff0f;border:1px solid #ffffff1f;border-radius:999px;padding:6px 9px;font-size:.64rem;font-weight:650}.model-actions{flex-direction:column;justify-content:center;align-items:stretch;gap:10px;display:flex}.model-panel .button-primary{color:var(--brand-dark);background:#fff;box-shadow:0 14px 34px #070b2240}.model-panel .button-primary:not(:disabled):hover{background:#f7f8ff}.model-panel .button-secondary{color:#ffffffe0;border-color:#fff3}.model-panel .button-secondary:not(:disabled):hover{background:#ffffff12;border-color:#ffffff57}.model-status{color:#ffffffa6;align-items:flex-start;gap:9px;font-size:.72rem;line-height:1.45;display:flex}.status-dot{background:#9aa0b6;border-radius:999px;flex:none;width:8px;height:8px;margin-top:.18rem}.status-ready,.status-stored{background:#73d6c5;box-shadow:0 0 0 5px #73d6c51c}.status-loading,.status-deleting{background:#f2a48f;animation:1.2s ease-in-out infinite beacon}.status-error{background:#f28a72}.progress-block small{color:#ffffff94;text-overflow:ellipsis;white-space:nowrap;margin-top:6px;font-size:.65rem;display:block;overflow:hidden}.progress-track{background:#303a781a;border-radius:999px;height:7px;overflow:hidden}.model-panel .progress-track{background:#ffffff1f}.progress-track span{border-radius:inherit;background:linear-gradient(90deg,#73d6c5,#9b96ee);height:100%;transition:width .18s;display:block}.workspace{grid-template-columns:minmax(0,1.06fr) minmax(410px,.94fr);gap:22px;display:grid}.editor-panel,.results-panel{border:1px solid var(--line);background:#ffffffe6;min-width:0;padding:clamp(22px,3.4vw,32px)}.panel-heading{justify-content:space-between;gap:16px}.panel-heading h2{letter-spacing:-.035em;margin-bottom:0;font-size:clamp(1.2rem,2vw,1.48rem)}.text-button{color:var(--brand-deep);cursor:pointer;background:#f7f8fc;border:1px solid #d9ddec;border-radius:10px;padding:8px 11px;font-size:.71rem;font-weight:750}.text-button:hover{background:#f0f1f8}textarea{resize:vertical;width:100%;min-height:430px;color:var(--ink-soft);background:linear-gradient(#ffffffb3,#ffffffb3),repeating-linear-gradient(#0000 0 31px,#626bd80d 32px),#fafaff;border:1px solid #dfe2ec;border-radius:18px;outline:none;margin-top:24px;padding:22px;font-size:1rem;line-height:1.75;transition:border-color .15s,box-shadow .15s}textarea:focus{border-color:#9ba2e6;box-shadow:0 0 0 4px #626bd81c}textarea::placeholder{color:#9ba0af}textarea:disabled{cursor:wait;opacity:.68}.editor-footer{color:var(--muted);justify-content:space-between;gap:12px;margin-top:11px;font-size:.68rem}.backend-chip{min-height:30px;padding:5px 10px}.results-context{max-width:460px;color:var(--muted);margin:18px 0 0;font-size:.75rem;line-height:1.55}.radar-wrap{width:min(100%,390px);margin:2px auto 0}.radar{width:100%;display:block;overflow:visible}.radar-grid,.radar-axis{fill:none;stroke:#dfe2ed;stroke-width:1px}.radar-grid:last-of-type{stroke:#cfd3e1}.radar-label{fill:var(--muted);font-size:11px;font-weight:700}.radar-signal{fill:url(#radar-surface);stroke:var(--brand);stroke-linejoin:round;stroke-width:2.5px;filter:drop-shadow(0 7px 10px #626bd829);transition:points .28s}.radar-point{stroke-width:2px;transition:cx .28s,cy .28s}.score-list{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px;margin:-4px 0 0;padding:0;list-style:none;display:grid}.score-list li{background:#fafafd;border:1px solid #e7e9f1;border-radius:12px;min-width:0;padding:10px 11px}.score-heading{justify-content:space-between;gap:9px;font-size:.69rem}.score-heading>span{min-width:0;color:var(--ink-soft);align-items:center;gap:6px;font-weight:700;display:flex}.score-heading i{border-radius:50%;flex:none;width:7px;height:7px}.score-heading strong{color:var(--ink);font-variant-numeric:tabular-nums;font-size:.71rem}.score-track{background:#e8eaf2;border-radius:999px;height:4px;margin-top:8px;overflow:hidden}.score-track span{border-radius:inherit;min-width:2px;height:100%;transition:width .26s;display:block}.score-list small{color:var(--muted);margin-top:5px;font-size:.59rem;display:block}.performance-row{color:var(--muted);justify-content:flex-start;gap:15px;margin-top:14px;font-family:ui-monospace,SFMono-Regular,monospace;font-size:.61rem}.phrase-lab{border:1px solid var(--line);background:radial-gradient(circle at 100% 0,#8975d61a,#0000 24rem),#ffffffeb;margin-top:22px;padding:clamp(24px,4vw,38px);scroll-margin-top:20px;overflow:hidden}.phrase-lab-intro,.plot-heading{justify-content:space-between;align-items:flex-start;gap:30px;display:flex}.phrase-lab-intro>div{max-width:740px}.phrase-lab h2{letter-spacing:-.045em;margin-bottom:12px;font-size:clamp(1.5rem,3vw,2rem)}.phrase-lab-intro p:last-child,.plot-heading>p{color:var(--body);margin-bottom:0;line-height:1.6}.phrase-lab-intro p:last-child{font-size:.86rem}.phrase-lab-intro .button{flex:none}.stat-grid,.analysis-summary{grid-template-columns:repeat(6,minmax(0,1fr));gap:9px;margin-top:24px;display:grid}.stat-grid>div,.analysis-summary>div{background:#f9f9fc;border:1px solid #e5e7f0;border-radius:14px;min-width:0;padding:14px}.stat-grid strong,.analysis-summary strong{color:var(--ink);font-variant-numeric:tabular-nums;letter-spacing:-.025em;text-overflow:ellipsis;font-size:1.08rem;display:block;overflow:hidden}.stat-grid span,.analysis-summary span{color:var(--muted);margin-top:4px;font-size:.62rem;line-height:1.35;display:block}.lab-note,.lab-error,.method-note{border-radius:13px;margin:17px 0 0;padding:13px 15px;font-size:.73rem;line-height:1.55}.lab-note{color:var(--muted);background:#f7f7fa;border:1px solid #e4e6ef}.lab-error{color:var(--danger);background:#fff3f0;border:1px solid #f0cfc9}.lab-progress{color:var(--muted);grid-template-columns:minmax(120px,1fr) auto;align-items:center;gap:12px;margin-top:19px;font-size:.68rem;display:grid}.analysis-summary{margin-top:26px}.emotion-selector{scrollbar-width:thin;gap:8px;margin:24px 0 15px;display:flex;overflow-x:auto}.emotion-selector button{border:1px solid var(--line);color:var(--muted);cursor:pointer;background:#fff;border-radius:999px;flex:none;padding:8px 12px;font-size:.68rem;font-weight:750}.emotion-selector button[aria-pressed=true]{border-color:var(--emotion-color);background:color-mix(in srgb, var(--emotion-color) 10%, white);box-shadow:inset 0 -3px 0 var(--emotion-color);color:var(--ink)}.learning-card{background:#fff;border:1px solid #e3e6ef;border-radius:18px;min-width:0;padding:22px;box-shadow:0 12px 32px #2028580d}.learning-card h3,.phrase-ranking h4{color:var(--ink);margin:0}.learning-card h3{letter-spacing:-.025em;font-size:1.05rem}.plot-heading{align-items:end}.plot-heading>p{text-align:right;max-width:390px;font-size:.69rem}.plot-frame{min-width:0;margin-top:15px}.contribution-plot,.terrain-plot,.heatmap-plot{width:100%;min-width:0;display:block;overflow:visible}.plot-zero-line{stroke:#c9cedc;stroke-dasharray:3 4;stroke-width:1px}.plot-axis-label,.plot-value-label,.plot-row-label,.heatmap-column-label,.heatmap-row-label{fill:var(--muted);font-family:Inter,ui-sans-serif,system-ui,sans-serif}.plot-axis-label{font-size:10px}.plot-axis-label:first-of-type{text-anchor:end}.plot-row-label,.heatmap-row-label{fill:var(--ink-soft);font-size:11px;font-weight:650}.plot-value-label{font-variant-numeric:tabular-nums;font-size:10px}.heatmap-column-label{font-size:9px;font-weight:700}.influence-positive{fill:var(--coral)}.influence-negative{fill:var(--mint)}.influence-positive,.influence-negative,.terrain-point,.heatmap-plot rect{cursor:crosshair;outline:none;transition:opacity .12s,filter .12s}.influence-positive:hover,.influence-negative:hover,.terrain-point:hover,.heatmap-plot rect:hover,.influence-positive:focus,.influence-negative:focus,.terrain-point:focus,.heatmap-plot rect:focus{filter:brightness(.82);opacity:1}.plot-readout{min-height:1.25rem;color:var(--muted);margin:6px 0 0;font-size:.65rem;line-height:1.45}.top-phrase-grid,.lab-chart-grid{gap:14px;display:grid}.top-phrase-grid{grid-template-columns:repeat(2,minmax(0,1fr));margin-top:17px}.phrase-ranking{background:#f9f9fc;border:1px solid #ebedf4;border-radius:14px;padding:15px}.phrase-ranking h4{font-size:.78rem}.phrase-ranking ol{margin:10px 0 0;padding-left:1.35rem}.phrase-ranking li{color:var(--muted);padding:5px 0;font-size:.68rem}.phrase-ranking li span{color:var(--ink-soft)}.phrase-ranking li strong{float:right;color:var(--ink);font-variant-numeric:tabular-nums;margin-left:8px}.phrase-ranking p{color:var(--muted);margin:9px 0 0;font-size:.68rem}.lab-chart-grid{grid-template-columns:repeat(2,minmax(0,1fr));margin-top:14px}.lab-chart-grid .plot-heading{display:block}.lab-chart-grid .plot-heading>p{text-align:left;margin-top:6px}.plot-scroll{overflow-x:auto}.plot-scroll .heatmap-plot{min-width:650px}.method-note{border:1px solid #d8dced;border-left:4px solid var(--brand);color:var(--body);background:#f4f5fb}.method-note strong{color:var(--ink)}.method-note p{margin:4px 0 0}.site-footer{border-top:1px solid var(--line);grid-template-columns:minmax(180px,.55fr) minmax(320px,1fr) minmax(180px,.55fr);align-items:center;gap:28px;margin-top:26px;padding:22px 4px 0;display:grid}.footer-brand{gap:10px}.footer-mark{width:36px;height:36px}.disclaimer{color:var(--muted);text-align:center;margin:0;font-size:.67rem;line-height:1.55}.footer-links{color:var(--muted);justify-content:flex-end;gap:12px;font-size:.65rem}.footer-links a{color:var(--brand-deep);font-weight:700;text-decoration:none}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}@keyframes beacon{50%{opacity:.35}}@media (max-width:980px){.hero{grid-template-columns:1fr;gap:28px;min-height:auto;padding-top:36px}.hero-copy{max-width:820px}.hero-console{width:min(100%,560px)}.model-panel,.workspace{grid-template-columns:1fr}.model-panel{gap:26px}.model-actions{max-width:580px}.stat-grid,.analysis-summary{grid-template-columns:repeat(3,minmax(0,1fr))}.lab-chart-grid{grid-template-columns:1fr}.site-footer{grid-template-columns:1fr;justify-items:center}.footer-links{justify-content:center}}@media (max-width:680px){.app-shell{width:min(100% - 24px,1240px);padding-bottom:30px}.site-header{min-height:72px}.brand-lockup small{display:none}.site-nav{gap:10px}.site-nav>a{display:none}.hero{gap:24px;padding:28px 0 30px}.hero h1{margin-bottom:16px;font-size:clamp(2.35rem,12vw,3.4rem)}.hero-lede{font-size:.98rem}.hero-actions{flex-direction:column;align-items:flex-start}.hero-actions .button{width:100%}.hero-console{border-radius:15px;width:100%}.hero-console .console-titlebar,.hero-console>p{display:none}.console-grid{grid-template-columns:auto minmax(0,1fr) auto minmax(0,1fr);gap:8px 10px;padding:12px 13px 10px;font-size:.58rem}.console-signals{gap:3px;padding:0 13px 12px}.model-panel,.editor-panel,.results-panel,.phrase-lab{border-radius:22px;padding:20px}.model-heading-row{gap:11px}.engine-icon{width:42px;height:42px}textarea{min-height:330px;padding:17px;font-size:.95rem}.score-list{grid-template-columns:1fr}.radar-label{font-size:10.5px}.phrase-lab-intro,.plot-heading{display:block}.phrase-lab-intro .button{width:100%;margin-top:17px}.stat-grid,.analysis-summary{grid-template-columns:repeat(2,minmax(0,1fr))}.top-phrase-grid{grid-template-columns:1fr}.plot-heading>p{text-align:left;margin-top:7px}.contribution-plot,.terrain-plot{min-width:680px}.plot-frame{overflow-x:auto}.plot-readout{position:sticky;left:0}.site-footer{gap:18px}.footer-links{flex-wrap:wrap}}@media (max-width:390px){.privacy-badge{padding-inline:9px}.brand-lockup>span{display:none}}@media (max-width:350px){.console-grid{grid-template-columns:auto minmax(0,1fr)}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}
