:root{--text:#a9b4b8;--text-h:#f5fbfb;--muted:#7f9095;--bg:#071012;--panel:#0d191c;--border:#203237;--track:#17282c;--input:#081315;--accent:#6dd6bb;--shadow:0 18px 55px #00000042;--sans:Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;font:16px/1.5 var(--sans);letter-spacing:0;color:var(--text);background:radial-gradient(circle at top left, #6dd6bb29, transparent 34rem), var(--bg);font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}*{box-sizing:border-box}body{min-width:320px;margin:0}#root{min-height:100svh}h1,h2,p{overflow-wrap:anywhere}.app-shell{width:min(1180px,100% - 32px);margin:0 auto;padding:32px 0}.masthead,.disclaimer,.signal-board,.recorder,.records,.journal-page,.session-record,.sensor-card{border:1px solid var(--border);background:var(--panel);box-shadow:var(--shadow)}.app-nav{gap:10px;margin-bottom:18px;display:flex}.app-nav a{border:1px solid var(--border);min-height:42px;color:var(--muted);background:var(--panel);border-radius:7px;align-items:center;padding:0 16px;font-size:14px;font-weight:800;text-decoration:none;display:inline-flex}.app-nav a.active{color:#051113;background:var(--accent);border-color:#0000}.masthead{color:#edf5f8;background:linear-gradient(90deg,#08111cdb,#08111c57),url(/assets/hero-CLDdwZDr.png) 50%/cover;grid-template-columns:1fr auto;align-items:end;gap:24px;min-height:320px;padding:48px;display:grid}.eyebrow{color:var(--accent);letter-spacing:.12em;text-transform:uppercase;margin:0 0 10px;font-size:12px;font-weight:800}.masthead h1{color:#fff;margin:0 0 12px;font-size:64px;line-height:1}.install-prompt{color:#fff;max-width:620px;margin:0 0 14px;font-size:26px;font-weight:800;line-height:1.18}.disclaimer{text-align:left;background:#6dd6bb12;margin-top:18px;padding:18px 20px}.disclaimer p:last-child{max-width:980px;color:var(--text)}.lede{color:#dce8e9;max-width:620px}.install-box{justify-items:stretch;gap:12px;min-width:172px;display:grid}.install-box span{color:#dce8e9;text-align:center;font-size:14px}button{color:#051113;background:var(--accent);min-height:42px;font:700 14px/1 var(--sans);cursor:pointer;border:1px solid #0000;border-radius:7px;padding:0 18px}button:hover:not(:disabled){filter:brightness(1.05)}button:focus-visible{outline-offset:2px;outline:3px solid #6dd6bb59}button:disabled{cursor:not-allowed;opacity:.45}.signal-board{grid-template-columns:180px repeat(4,minmax(0,1fr)) 160px;align-items:center;gap:18px;margin:24px 0;padding:24px;display:grid}.meter{background:var(--track);border-radius:999px;height:22px;overflow:hidden}.meter span{width:var(--signal);border-radius:inherit;will-change:width;background:linear-gradient(90deg,#6dd6bb,#efc35b,#ff6f61);height:100%;transition:width 90ms linear;display:block}.signal-board strong{color:var(--text-h);font-size:42px;line-height:1}.bar{gap:9px;display:grid}.bar div:first-child{justify-content:space-between;gap:10px;display:flex}.bar span{color:var(--muted);font-size:13px;font-weight:700}.bar strong{font-size:13px}.bar.featured .meter{height:30px}.signal-actions{gap:10px;display:grid}.signal-actions .toggle{color:var(--accent);background:0 0;border-color:#6dd6bb52}.signal-actions .disarm{color:#fff;background:#8b3340}.signal-actions .toggle.active{color:#051113;background:#efc35b;border-color:#0000}.signal-actions span{color:var(--muted);text-align:center;font-size:12px;font-weight:700}.sensor-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;display:grid}.sensor-card{text-wrap:wrap;flex-direction:column;gap:18px;min-width:0;padding:22px;display:flex;overflow:hidden;height:400px!important;max-height:400px!important}.card-top{justify-content:space-between;align-items:center;gap:12px;min-width:0;min-height:32px;display:flex}.sensor-card h2,.recorder h2{color:var(--text-h);overflow-wrap:anywhere;min-width:0;margin:0}.status{color:var(--muted);background:var(--track);border-radius:999px;flex:none;padding:5px 10px;font-size:12px;font-weight:800}.status.active{color:#06231c;background:var(--accent)}.reading{flex-wrap:wrap;align-items:baseline;gap:8px;min-height:62px;display:flex;overflow:hidden}.reading strong{color:var(--text-h);font-variant-numeric:tabular-nums;overflow-wrap:anywhere;max-width:100%;font-size:52px;line-height:1}.reading span{color:var(--muted);overflow-wrap:anywhere;font-weight:700}.sensor-card p,.recorder p{color:var(--muted)}.sensor-card p{overflow-wrap:anywhere;-webkit-line-clamp:3;-webkit-box-orient:vertical;height:66px;margin:0;display:-webkit-box;overflow:hidden}.sensor-card button{margin-top:auto}.recorder,.records{margin-top:18px;padding:24px}.recorder{grid-template-columns:1fr auto;gap:18px;display:grid}.recorder button{align-self:start}.recorder button.recording{color:#fff;background:#d74752}.button-row{flex-wrap:wrap;justify-content:flex-end;align-items:start;gap:10px;display:flex}.recorder-controls{justify-items:end;gap:10px;display:grid}.select-field{gap:7px;min-width:230px;display:grid}.select-field span{color:var(--text-h);font-size:13px;font-weight:800}.select-field select{border:1px solid var(--border);min-height:42px;color:var(--text-h);background:var(--input);font:14px/1.3 var(--sans);border-radius:7px;padding:0 12px}.select-field select:focus{outline:3px solid #6dd6bb3d}textarea{resize:vertical;border:1px solid var(--border);min-height:160px;color:var(--text-h);background:var(--input);font:16px/1.5 var(--sans);border-radius:7px;grid-column:1/-1;padding:16px}textarea:focus{outline:3px solid #6dd6bb3d}.waveform{border:1px solid var(--border);background:var(--input);border-radius:7px;grid-column:1/-1;gap:10px;padding:14px;display:grid}.waveform div{justify-content:space-between;gap:12px;display:flex}.waveform span,.waveform strong{font-size:13px;font-weight:800}.waveform span{color:var(--text-h)}.waveform strong{color:var(--muted)}.waveform canvas{background:#081315;border-radius:5px;width:100%;height:130px;display:block}.recorder>button{justify-self:start}.records-head{justify-content:space-between;align-items:start;gap:18px;display:flex}.journal-page{padding:28px}.journal-head{justify-content:space-between;align-items:start;gap:18px;display:flex}.journal-head h1{color:var(--text-h);margin:0 0 12px;font-size:42px;line-height:1.05}.journal-head p,.storage-note{color:var(--muted)}.search-field{gap:8px;margin-top:24px;display:grid}.search-field span{color:var(--text-h);font-size:14px;font-weight:800}.search-field input{border:1px solid var(--border);min-height:48px;color:var(--text-h);background:var(--input);font:16px/1.5 var(--sans);border-radius:7px;padding:0 16px}.search-field input:focus{outline:3px solid #6dd6bb3d}.storage-note{flex-wrap:wrap;gap:10px;margin-top:14px;font-size:14px;display:flex}.storage-note span{background:var(--track);border-radius:999px;padding:5px 10px}.journal-list{grid-template-columns:1fr}.records h2,.session-record h3{color:var(--text-h);margin:0 0 8px}.record-list{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin-top:18px;display:grid}.empty{color:var(--muted);grid-column:1/-1}.session-record{gap:14px;padding:18px;display:grid}.session-record p{color:var(--muted)}.session-record video,.session-record audio{width:100%}.session-record video{aspect-ratio:16/9;background:#020608}.record-stats{flex-wrap:wrap;gap:8px;display:flex}.record-stats span{color:var(--accent);background:#6dd6bb1a;border-radius:999px;padding:5px 10px;font-size:12px;font-weight:800}.session-record button{color:#fff;background:#8b3340;justify-self:start}@media (width<=840px){.app-shell{width:min(100% - 20px,1180px);padding:10px 0}.masthead,.disclaimer,.signal-board,.recorder,.records,.journal-page{padding:20px}.masthead,.signal-board,.recorder{grid-template-columns:1fr}.masthead{align-items:end;min-height:380px}.masthead h1{font-size:46px}.install-prompt{font-size:24px}.install-box{min-width:0}.sensor-grid{grid-template-columns:1fr}.records-head,.journal-head{flex-direction:column}.journal-head h1{font-size:34px}.button-row{justify-content:stretch}.recorder-controls{justify-items:stretch}.select-field{min-width:0}.button-row button{flex:120px}.record-list{grid-template-columns:1fr}}
