:root{--ink: #ffffff;--body: rgba(255, 255, 255, .88);--muted: rgba(255, 255, 255, .64);--faint: rgba(255, 255, 255, .4);--line: rgba(255, 255, 255, .18);--mint: #bdeadf;--bad: #ffb1a6;--glass: rgba(255, 255, 255, .1);--glass-2: rgba(255, 255, 255, .16);--glass-line: rgba(255, 255, 255, .22);--glass-blur: blur(22px) saturate(150%);--shadow: 0 10px 34px -10px rgba(8, 30, 27, .55);--radius: 20px;--radius-sm: 14px;--display: "Fraunces", Georgia, "Times New Roman", serif;--sans: "Hanken Grotesk", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--mono: ui-monospace, SFMono-Regular, Menlo, Consolas, monospace}*{box-sizing:border-box}html,body,#root{height:100%;margin:0}body{color:var(--body);font-family:var(--sans);font-size:15px;line-height:1.55;-webkit-font-smoothing:antialiased;background:#1d4b44 radial-gradient(130% 130% at 88% 6%,#74bcae,#2f7d70 38%,#143f39) fixed}a{color:var(--mint)}h1,h2,h3{font-family:var(--display);color:var(--ink);font-weight:500;letter-spacing:-.01em}.eyebrow{display:inline-flex;align-items:center;gap:8px;font-size:11px;font-weight:600;letter-spacing:.18em;text-transform:uppercase;color:var(--muted)}.eyebrow:before{content:"";width:7px;height:7px;border-radius:999px;background:var(--mint)}button{font-family:var(--sans);font-size:13px;font-weight:600;cursor:pointer;color:#fff;background:var(--glass);border:1px solid var(--glass-line);-webkit-backdrop-filter:var(--glass-blur);backdrop-filter:var(--glass-blur);padding:10px 18px;border-radius:999px;transition:background .18s ease,transform .05s ease,box-shadow .18s ease,color .18s ease}button:hover{background:var(--glass-2)}button:active{transform:translateY(1px)}button.primary{background:#fffffff2;border-color:transparent;color:#15433c;box-shadow:0 8px 22px -10px #fff9}button.primary:hover{background:#fff}button.ghost{text-transform:uppercase;letter-spacing:.12em;font-size:11px}button:disabled{opacity:.45;cursor:not-allowed;transform:none}input,textarea,select{font-family:var(--sans);font-size:14px;width:100%;color:#fff;background:#ffffff14;border:1px solid var(--glass-line);-webkit-backdrop-filter:var(--glass-blur);backdrop-filter:var(--glass-blur);border-radius:var(--radius-sm);padding:11px 14px;transition:border-color .18s ease,box-shadow .18s ease,background .18s ease}textarea{resize:vertical;line-height:1.5}input::placeholder,textarea::placeholder{color:var(--faint)}input:focus,textarea:focus,select:focus{outline:none;border-color:#ffffff8c;background:#ffffff1f;box-shadow:0 0 0 4px #ffffff1a}select option{color:#15433c}label{display:block;font-size:12px;font-weight:600;letter-spacing:.02em;color:var(--muted);margin-bottom:7px}.app{display:flex;flex-direction:column;min-height:100%}.topbar{display:flex;align-items:center;justify-content:space-between;padding:15px 26px;background:#ffffff0f;border-bottom:1px solid var(--line);-webkit-backdrop-filter:var(--glass-blur);backdrop-filter:var(--glass-blur);position:sticky;top:0;z-index:20}.topbar .brand{font-family:var(--display);font-size:21px;font-weight:600;color:#fff;letter-spacing:-.01em}.topbar .user{display:flex;align-items:center;gap:14px;color:var(--muted);font-size:13px}.nav-pills{display:inline-flex;gap:4px;padding:4px;background:var(--glass);border:1px solid var(--line);border-radius:999px;-webkit-backdrop-filter:var(--glass-blur);backdrop-filter:var(--glass-blur)}.nav-pills button{border:none;background:transparent;backdrop-filter:none;-webkit-backdrop-filter:none;padding:7px 16px;color:var(--muted);box-shadow:none}.nav-pills button:hover{color:#fff;background:transparent}.nav-pills button.active{background:#fffffff2;color:#15433c}.shell{display:flex;flex:1;min-height:0}.sidebar{width:266px;border-right:1px solid var(--line);background:#ffffff0f;-webkit-backdrop-filter:var(--glass-blur);backdrop-filter:var(--glass-blur);padding:20px 14px;overflow-y:auto}.sidebar .group-label{font-size:10px;text-transform:uppercase;letter-spacing:.18em;font-weight:700;color:var(--muted);margin:20px 10px 8px;display:flex;align-items:center;gap:8px}.sidebar .group-label:before{content:"";width:6px;height:6px;border-radius:999px;background:var(--mint);flex:none}.sidebar>div:first-child .group-label{margin-top:4px}.tool-link{display:block;width:100%;text-align:left;background:transparent;border:1px solid transparent;backdrop-filter:none;-webkit-backdrop-filter:none;border-radius:var(--radius-sm);padding:10px 12px;color:var(--body);margin-bottom:3px;box-shadow:none}.tool-link:hover{background:#ffffff1a}.tool-link.active{background:#ffffff29;border-color:var(--glass-line);box-shadow:inset 3px 0 0 var(--mint)}.tool-link .tool-name{font-size:14px;font-weight:600;color:#fff}.tool-link .tool-model{font-size:11px;color:var(--muted);margin-top:1px}.main{flex:1;padding:20px 30px 40px;overflow-y:auto;min-width:0}.hero{padding:4px 2px 16px}.hero h1{color:#fff;font-weight:500;font-size:clamp(26px,3vw,38px);line-height:1.05;letter-spacing:-.02em;margin:8px 0 0;max-width:20ch;text-shadow:0 2px 30px rgba(8,30,27,.3)}.hero h1 em{font-style:italic;color:var(--mint)}.hero p.lede{margin:9px 0 0;max-width:58ch;color:var(--body);font-size:15px;line-height:1.55}.hero .hero-meta{margin-top:14px;display:flex;gap:10px;align-items:center}.hero .hero-pill{font-size:11px;letter-spacing:.04em;padding:6px 13px;border-radius:999px;background:var(--glass);border:1px solid var(--glass-line);-webkit-backdrop-filter:var(--glass-blur);backdrop-filter:var(--glass-blur);color:#fff}.columns{display:grid;grid-template-columns:minmax(330px,420px) 1fr;gap:20px;align-items:start}@media(max-width:940px){.columns{grid-template-columns:1fr}}.columns>div>.panel+.panel{margin-top:18px}.panel{background:var(--glass);border:1px solid var(--glass-line);border-radius:var(--radius);padding:20px;-webkit-backdrop-filter:var(--glass-blur);backdrop-filter:var(--glass-blur);box-shadow:var(--shadow)}.panel h2{margin:0 0 4px;font-size:20px}.panel .desc{color:var(--muted);font-size:13px;margin:0 0 14px}.field{margin-bottom:15px}.field .hint{font-size:12px;color:var(--muted);margin-top:6px}.field.toggle{align-items:center;gap:10px;margin-bottom:12px}.field.toggle input{width:auto}.hint-inline{color:var(--muted);font-weight:400;font-size:12px}.login-wrap{flex:1;display:flex;align-items:center;justify-content:center;padding:24px}.login-card{width:100%;max-width:400px;background:var(--glass);border:1px solid var(--glass-line);border-radius:var(--radius);padding:34px;-webkit-backdrop-filter:var(--glass-blur);backdrop-filter:var(--glass-blur);box-shadow:0 30px 70px -24px #081e1bb3}.login-card h1{font-size:28px;margin:0 0 6px}.login-card p.sub{color:var(--muted);font-size:14px;margin:0 0 22px}.error{color:var(--bad);font-size:13px;margin-top:12px}.notice{background:#ffffff14;border:1px solid var(--line);border-radius:var(--radius-sm);padding:13px 15px;font-size:13px;color:var(--body);margin-bottom:16px}.row{display:flex;gap:10px;align-items:center}.spacer{flex:1}.output{white-space:pre-wrap;font-family:var(--mono);font-size:13px;line-height:1.65;color:#ffffffeb;background:#071a1857;border:1px solid var(--line);border-radius:var(--radius-sm);padding:18px;min-height:220px}.score-ring{display:flex;align-items:center;gap:24px;padding:20px 22px;margin-bottom:18px;border-radius:var(--radius-sm);background:#071a1847;border:1px solid var(--line);animation:ring-pop .55s cubic-bezier(.2,.8,.2,1)}@keyframes ring-pop{0%{opacity:0;transform:translateY(8px) scale(.97)}}.score-ring .ring-wrap{position:relative;flex:none}.score-ring svg{transform:rotate(-90deg)}.score-ring .track{fill:none;stroke:#ffffff24;stroke-width:12}.score-ring .meter{fill:none;stroke-width:12;stroke-linecap:round}.score-ring.tone-good .meter{stroke:var(--mint);filter:drop-shadow(0 0 6px rgba(189,234,223,.55))}.score-ring.tone-warn .meter{stroke:#f3cf86;filter:drop-shadow(0 0 6px rgba(243,207,134,.5))}.score-ring.tone-bad .meter{stroke:#ff8e80;filter:drop-shadow(0 0 6px rgba(255,142,128,.5))}.score-ring .ring-num{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;flex-direction:column;align-items:center;justify-content:center;line-height:1}.score-ring .ring-num strong{font-family:var(--display);font-size:46px;font-weight:500;color:#fff;line-height:.9}.score-ring .ring-num span{font-size:12px;color:var(--muted);margin-top:3px}.score-ring .ring-verdict{font-family:var(--display);font-size:26px;color:#fff;margin-top:4px}.score-ring.tone-good .ring-verdict{color:var(--mint)}.score-ring.tone-warn .ring-verdict{color:#f3cf86}.score-ring.tone-bad .ring-verdict{color:#ff8e80}.output-rich{background:#071a184d;border:1px solid var(--line);border-radius:var(--radius-sm);padding:22px 24px;color:#ffffffe6;font-size:14px;line-height:1.65;overflow-x:auto}.output-rich h1,.output-rich h2,.output-rich h3{color:#fff;font-family:var(--display);letter-spacing:-.01em;line-height:1.2}.output-rich h1{font-size:26px;margin:4px 0 14px}.output-rich h2{font-size:20px;margin:26px 0 10px;padding-bottom:7px;border-bottom:1px solid var(--line)}.output-rich h3{font-size:16px;margin:20px 0 8px}.output-rich p{margin:10px 0}.output-rich strong{color:#fff;font-weight:700}.output-rich em{color:var(--mint)}.output-rich a{color:var(--mint);word-break:break-word}.output-rich ul,.output-rich ol{margin:10px 0;padding-left:22px}.output-rich li{margin:5px 0}.output-rich li::marker{color:var(--mint)}.output-rich hr{border:none;border-top:1px solid var(--line);margin:22px 0}.output-rich blockquote{margin:12px 0;padding:4px 16px;border-left:3px solid var(--mint);color:var(--muted)}.output-rich code{font-family:var(--mono);font-size:12.5px;background:#ffffff1a;padding:2px 6px;border-radius:6px}.output-rich pre{background:#00000047;border:1px solid var(--line);border-radius:var(--radius-sm);padding:14px 16px;overflow-x:auto}.output-rich pre code{background:none;padding:0}.output-rich table{width:100%;border-collapse:collapse;margin:14px 0;font-size:13px}.output-rich th,.output-rich td{text-align:left;padding:9px 12px;border-bottom:1px solid var(--line);vertical-align:top}.output-rich thead th{color:#fff;font-weight:700;background:#ffffff0f;border-bottom:1px solid var(--glass-line)}.output-rich tbody tr:hover{background:#ffffff0a}.cursor:after{content:"▌";color:var(--mint);animation:blink 1s steps(1) infinite}@keyframes blink{50%{opacity:0}}.meta-bar{display:flex;gap:16px;align-items:center;font-size:12px;color:var(--muted);margin-top:14px}.meta-bar .cost{color:var(--mint);font-weight:600}.export-bar{display:flex;gap:8px;margin-top:14px;flex-wrap:wrap}.export-bar button{padding:8px 14px;font-size:12px}.meta-bar .export-bar{margin-top:0}.history-item{border:1px solid var(--line);border-radius:var(--radius-sm);padding:14px;margin-bottom:10px;background:#ffffff0f}.history-item .h-head{display:flex;justify-content:space-between;font-size:12px;color:var(--muted);margin-bottom:6px}.history-item .h-snippet{font-size:13px;color:var(--body);max-height:60px;overflow:hidden}.badge{display:inline-block;font-size:11px;font-weight:600;padding:3px 10px;border-radius:999px;background:var(--glass);border:1px solid var(--glass-line);color:#fff}.hist-toolbar{display:flex;align-items:center;justify-content:space-between;gap:14px;margin-bottom:16px}.hist-toolbar h2{margin:0;font-size:20px}.hist-toolbar select{width:auto;min-width:180px}.hist-row{border:1px solid var(--line);border-radius:var(--radius-sm);margin-bottom:10px;background:#ffffff0d;overflow:hidden}.hist-row.open{border-color:var(--glass-line);background:#ffffff14}.hist-row-head{width:100%;display:flex;align-items:center;justify-content:space-between;gap:14px;text-align:left;background:transparent;border:none;border-radius:0;backdrop-filter:none;-webkit-backdrop-filter:none;padding:13px 16px;box-shadow:none}.hist-row-head:hover{background:#ffffff0d}.hist-left{display:flex;align-items:center;gap:12px;min-width:0}.hist-snippet{color:var(--body);font-weight:500;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:46ch}.hist-right{display:flex;align-items:center;gap:16px;flex:none;font-size:12px;color:var(--muted)}.hist-right .cost{color:var(--mint);font-weight:600}.hist-caret{font-size:9px;color:var(--faint)}.hist-full{padding:4px 16px 16px}.hist-full .output-rich{margin-top:4px}.cost-table{width:100%;border-collapse:collapse;font-size:13px}.cost-table th,.cost-table td{text-align:right;padding:11px 12px;border-bottom:1px solid var(--line)}.cost-table th:first-child,.cost-table td:first-child{text-align:left}.cost-table th{color:var(--muted);font-weight:600;font-size:11px;letter-spacing:.04em;text-transform:uppercase}.cost-table tbody tr:hover{background:#ffffff0d}.cost-table td.cost{color:var(--mint);font-family:var(--mono)}
