:root{color-scheme:light;--bg: #eef3e7;--panel: rgba(255, 254, 247, .94);--panel-solid: #fffef7;--ink: #233024;--muted: #66725f;--line: #cbd8c2;--moss: #315b35;--moss-2: #4f7c45;--moss-soft: #e3edda;--fern: #7e9f57;--bark: #8b6039;--bark-soft: #f0e3d1;--sky: #dfece7;--shadow: 0 22px 70px rgba(44, 65, 40, .16)}*{box-sizing:border-box}body{margin:0;min-height:100vh;background:radial-gradient(circle at 18% 12%,rgba(178,201,144,.45),transparent 26%),linear-gradient(145deg,#dce9d3f2,#f6f1e2eb 52%,#d2e1c7f2),var(--bg);color:var(--ink);font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}body:before{content:"";position:fixed;top:0;right:0;bottom:0;left:0;pointer-events:none;background-image:linear-gradient(120deg,rgba(49,91,53,.07) 1px,transparent 1px),linear-gradient(60deg,rgba(139,96,57,.06) 1px,transparent 1px);background-size:84px 84px,110px 110px;-webkit-mask-image:linear-gradient(to bottom,rgba(0,0,0,.88),transparent 78%);mask-image:linear-gradient(to bottom,rgba(0,0,0,.88),transparent 78%)}button,input,select{font:inherit}[hidden]{display:none!important}.shell{width:min(1180px,calc(100vw - 32px));margin:0 auto;padding:42px 0}.workspace{display:grid;grid-template-columns:430px minmax(0,1fr);gap:24px;align-items:start}.panel{position:relative;overflow:hidden;background:var(--panel);border:1px solid rgba(137,160,120,.38);border-radius:8px;box-shadow:var(--shadow);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px)}.upload-panel{padding:26px}.result-panel{min-height:620px;padding:28px}.forest-visual{position:relative;height:118px;margin:-2px -2px 24px;overflow:hidden;border-radius:7px;background:linear-gradient(180deg,#d6e7dce6,#f5f0e0f2),var(--sky)}.forest-visual:before,.forest-visual:after{content:"";position:absolute;left:-8%;right:-8%;bottom:-26px;height:78px;border-radius:50% 50% 0 0;background:#6287499e}.forest-visual:after{bottom:-42px;left:18%;background:#315b35b8}.tree{position:absolute;bottom:22px;width:26px;height:54px;border-radius:22px 22px 7px 7px;background:var(--moss)}.tree:after{content:"";position:absolute;left:11px;bottom:-22px;width:5px;height:28px;border-radius:4px;background:var(--bark)}.tree-one{left:44px;transform:scale(1.18)}.tree-two{left:108px;bottom:28px;background:var(--moss-2)}.tree-three{right:58px;transform:scale(1.34)}.masthead h1,.result-header h2,.result-empty h2{margin:0;letter-spacing:0}.masthead h1{max-width:340px;font-size:36px;line-height:1.08}.eyebrow{margin:0 0 8px;color:var(--bark);font-size:12px;font-weight:800;letter-spacing:.08em;text-transform:uppercase}.summary{margin:14px 0 0;color:var(--muted);line-height:1.65}.tabs{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin:28px 0 22px;padding:6px;background:#dfe9d3e0;border:1px solid rgba(139,160,118,.26);border-radius:8px;overflow:visible}.tab{display:inline-flex;align-items:center;justify-content:center;position:relative;min-width:0;height:44px;border:0;border-radius:6px;background:transparent;color:#617057;cursor:pointer;font-weight:850;overflow:hidden}.tab.active{background:var(--panel-solid);color:var(--moss);box-shadow:0 6px 18px #36542f21}.tab:disabled,.tab[aria-disabled=true]{color:#87917f;cursor:not-allowed;opacity:.72}.tab-label{display:inline-block}.tab-badge{position:absolute;top:3px;right:6px;z-index:2;padding:2px 6px;border-radius:999px;background:#d98245;color:#fffaf2;box-shadow:0 4px 10px #75522d38;font-size:10px;font-weight:800;line-height:1;white-space:nowrap}.upload-form{display:grid;gap:16px}.dropzone{display:grid;min-height:214px;place-items:center;align-content:center;padding:24px;border:1.5px dashed rgba(79,124,69,.62);border-radius:8px;background:linear-gradient(135deg,#e3eddacc,#fffef7eb),#f7faf3;text-align:center;cursor:pointer}.dropzone.dragover{border-color:var(--moss);background:var(--moss-soft)}.dropzone input{position:absolute;opacity:0;pointer-events:none}.drop-kicker{display:inline-block;margin-bottom:10px;padding:5px 10px;border-radius:999px;background:var(--bark-soft);color:#765333;font-size:12px;font-weight:850}.drop-title{display:block;font-size:22px;font-weight:900}.drop-meta{display:block;max-width:286px;margin-top:10px;color:var(--muted);line-height:1.55}.input-divider{display:grid;grid-template-columns:1fr auto 1fr;gap:10px;align-items:center;color:var(--muted);font-size:13px;font-weight:800}.input-divider:before,.input-divider:after{content:"";height:1px;background:var(--line)}.recorder{display:grid;grid-template-columns:1fr auto;gap:16px;align-items:center;padding:16px;border:1px solid rgba(149,171,135,.48);border-radius:8px;background:#fffef7b8}.recorder h2{margin:0;font-size:17px;letter-spacing:0}.recorder p{margin:6px 0 0;color:var(--muted);line-height:1.45}.record-button{display:inline-flex;min-width:132px;height:46px;align-items:center;justify-content:center;gap:8px;border:0;border-radius:999px;background:#8f3f2f;color:#fffef7;cursor:pointer;font-weight:900;touch-action:none;box-shadow:0 10px 22px #8f3f2f2e;-webkit-user-select:none;user-select:none}.record-button.recording{background:#b34836;transform:translateY(1px)}.record-button:disabled{cursor:not-allowed;opacity:.64}.record-dot{width:10px;height:10px;border-radius:999px;background:currentColor}.record-button.recording .record-dot{animation:pulse .82s ease-in-out infinite alternate}.record-status{grid-column:1 / -1;min-height:20px;font-size:13px}@keyframes pulse{0%{opacity:.42;transform:scale(.72)}to{opacity:1;transform:scale(1.2)}}.preview{width:100%;border-radius:8px}.primary-action,.feedback-form button{height:46px;border:0;border-radius:7px;background:var(--moss);color:#fffef7;cursor:pointer;font-weight:900;box-shadow:0 10px 22px #315b352e}.primary-action:hover,.feedback-form button:hover{background:#274b2b}.primary-action:disabled{cursor:wait;opacity:.72}.result-empty,.result-loading{display:grid;min-height:520px;place-items:center;align-content:center;gap:12px;color:var(--muted);text-align:center}.result-empty h2{color:var(--ink)}.result-empty p,.result-loading p{max-width:360px;margin:0;line-height:1.65}.loader{width:42px;height:42px;border:4px solid var(--line);border-top-color:var(--moss);border-radius:999px;animation:spin .85s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.result-header{display:flex;justify-content:space-between;gap:18px;align-items:flex-start}.badge{flex:0 0 auto;padding:7px 10px;border-radius:999px;background:var(--moss-soft);color:var(--moss);font-size:13px;font-weight:850}.badge.low{background:var(--bark-soft);color:#7b542f}.status{margin:14px 0 20px;color:var(--muted);line-height:1.6}.meta-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin-bottom:20px}.meta-item{padding:12px;border:1px solid var(--line);border-radius:7px;background:#fafcf6e0}.meta-item span{display:block;color:var(--muted);font-size:12px}.meta-item strong{display:block;margin-top:5px;font-size:15px}.candidate-list{display:grid;gap:10px}.candidate{display:grid;grid-template-columns:auto 1fr auto;gap:14px;align-items:center;padding:14px;border:1px solid rgba(149,171,135,.48);border-radius:8px;background:#fffef7ad}.rank{display:grid;width:34px;height:34px;place-items:center;border-radius:999px;background:var(--moss-soft);color:var(--moss);font-weight:900}.candidate h3{margin:0;font-size:17px}.candidate p{margin:5px 0 0;color:var(--muted);font-size:13px;line-height:1.45}.score{min-width:70px;text-align:right;font-weight:900;color:var(--moss)}.bar{height:7px;margin-top:8px;overflow:hidden;background:#e7eddf;border-radius:999px}.bar span{display:block;height:100%;background:linear-gradient(90deg,var(--fern),var(--moss))}.segments{margin-top:24px}.segments h3{margin:0 0 10px;font-size:15px}.segment-pill{display:inline-block;margin:0 8px 8px 0;padding:7px 10px;border-radius:999px;background:var(--moss-soft);color:var(--moss);font-size:13px;font-weight:800}.disclaimer{margin:18px 0 0;padding:12px;border-radius:7px;background:var(--bark-soft);color:#6a4a2e;line-height:1.55}.feedback-form{display:grid;grid-template-columns:150px 1fr auto;gap:10px;margin-top:16px}.feedback-form select,.feedback-form input{min-width:0;height:42px;border:1px solid var(--line);border-radius:7px;padding:0 12px;background:#fffef7eb;color:var(--ink)}.feedback-form button{height:42px;padding:0 16px}@media(max-width:900px){.shell{width:min(100vw - 20px,640px);padding:20px 0}.workspace{grid-template-columns:1fr}.masthead h1{font-size:30px}.meta-grid,.feedback-form,.recorder{grid-template-columns:1fr}.record-button{width:100%}.candidate{grid-template-columns:auto 1fr}.score{grid-column:2;text-align:left}}
