/* VISNE LAB Phase 2 — evidence and project signal */
.module h3{margin-top:62px}.module-toggle{position:absolute;left:34px;bottom:22px;border:0;background:none;padding:8px 0;color:#a24660;font:10px var(--mono);letter-spacing:.12em;text-transform:uppercase;cursor:pointer}.module-toggle b{font-size:15px;margin-left:8px}.module-layer{position:absolute;inset:0;padding:64px 34px 30px;background:linear-gradient(145deg,rgba(34,13,20,.985),rgba(11,8,9,.99));opacity:0;transform:translateY(12px);transition:opacity .45s ease,transform .45s ease;z-index:3}.module-layer p{font-size:16px;line-height:1.7;color:#d0c7ca}.module-layer small{position:absolute;bottom:28px;color:#bd526d;font:9px var(--mono);letter-spacing:.12em}.module.open .module-layer{opacity:1;transform:none}.module.open .module-toggle{z-index:4;right:24px;left:auto;top:20px;bottom:auto;font-size:0}.module.open .module-toggle b{display:inline-block;font-size:18px;transform:rotate(45deg)}
.system-item{width:100%;display:grid;grid-template-columns:36px 1fr auto;gap:20px;align-items:center;padding:24px 5px;border:0;border-bottom:1px solid var(--line);color:inherit;background:transparent;text-align:left;cursor:pointer;transition:.35s}.system-item:hover,.system-item.selected,.system-item:focus-visible{padding-left:15px;background:linear-gradient(90deg,rgba(94,20,40,.2),transparent);outline:none}.system-item>b{font:11px var(--mono);color:#8d8386}.system-name{display:grid}.system-name strong{font-size:17px;font-weight:520}.system-name small{font:10px var(--mono);color:var(--muted)}.system-item>em{font:9px var(--mono);color:#a34660;font-style:normal;text-align:right}.system-trace{position:fixed;z-index:70;inset:0;background:rgba(5,4,5,.74);backdrop-filter:blur(14px);display:flex;justify-content:flex-end}.system-trace[hidden]{display:none}.trace-shell{width:min(720px,100%);height:100%;padding:clamp(30px,5vw,70px);background:linear-gradient(145deg,#160c10,#090708);border-left:1px solid rgba(224,83,114,.25);overflow:auto}.trace-record{opacity:0;transform:translateX(16px);transition:.42s ease}.system-trace.ready .trace-record{opacity:1;transform:none}.trace-record dl{margin:12px 0 44px}.trace-record dl>div{padding:20px 0;border-bottom:1px solid var(--line)}.trace-record dt,.signal-review dt{font:9px var(--mono);letter-spacing:.16em;color:#bd526d}.trace-record dd,.signal-review dd{margin:7px 0 0;color:#cbc4c6;line-height:1.65}.trace-close,.signal-close{border:0;background:none;color:#d4cacc;font:10px var(--mono);letter-spacing:.12em;cursor:pointer;padding:10px 0}
.engine small{display:block;margin-top:14px;color:#92546a;font:8px var(--mono);letter-spacing:.1em}.signal-flow{position:fixed;z-index:80;inset:0;display:grid;place-items:center;padding:20px;background:rgba(5,4,5,.82);backdrop-filter:blur(18px)}.signal-flow[hidden]{display:none}.signal-shell{width:min(760px,100%);max-height:min(820px,calc(100vh - 40px));overflow:auto;padding:clamp(26px,5vw,56px);background:linear-gradient(145deg,#170c10,#090708);border:1px solid rgba(224,83,114,.22);box-shadow:0 30px 100px #000}.signal-shell>header{display:flex;justify-content:space-between;align-items:flex-start}.signal-shell h2{font-size:clamp(32px,5vw,52px);margin:0}.signal-close{font-size:28px;line-height:1}.signal-progress{display:grid;grid-template-columns:repeat(5,1fr);gap:5px;margin:32px 0 42px}.signal-progress span{height:2px;background:var(--line)}.signal-progress span.active{background:var(--hot);box-shadow:0 0 12px rgba(224,83,114,.55)}.signal-step{border:0;padding:0;margin:0}.signal-step[hidden]{display:none}.signal-step legend{font-size:clamp(25px,4vw,38px);line-height:1.2;margin-bottom:28px}.signal-step>p{color:var(--muted)}.signal-step>label:not(.text-field){display:block;position:relative;margin:10px 0}.signal-step>label:not(.text-field) input{position:absolute;opacity:0}.signal-step>label:not(.text-field) span{display:block;padding:16px 18px;border:1px solid var(--line);color:#bdb4b7;cursor:pointer;transition:.25s}.signal-step>label:not(.text-field) input:checked+span,.signal-step>label:not(.text-field) input:focus-visible+span{border-color:#a23a58;background:rgba(94,20,40,.22);color:var(--text)}.text-field{display:grid;gap:7px;margin:18px 0;color:#a69ca0;font:10px var(--mono);letter-spacing:.1em;text-transform:uppercase}.text-field input,.text-field textarea,.text-field select{width:100%;border:1px solid var(--line);background:#0c080a;color:var(--text);padding:14px 15px;font:15px var(--sans);border-radius:0}.text-field textarea{resize:vertical}.text-field input:focus,.text-field textarea:focus,.text-field select:focus{outline:1px solid #a23a58;border-color:#a23a58}.signal-controls{display:flex;justify-content:space-between;gap:14px;margin-top:34px;padding:0;border:0}.signal-controls .signal-next,.signal-controls .signal-submit{margin-left:auto}.signal-review h3,.signal-success h3{font-size:28px}.signal-review dl>div{padding:14px 0;border-bottom:1px solid var(--line)}.signal-success{padding:30px 0}.signal-success p{max-width:570px}.signal-button{font-family:inherit;cursor:pointer}
@media(max-width:900px){.module{min-height:320px}.module-layer{padding:58px 26px 28px}.module-toggle{left:26px}.system-item{grid-template-columns:28px 1fr}.system-item>em{grid-column:2;text-align:left}.trace-shell{border-left:0}.signal-flow{padding:0}.signal-shell{min-height:100%;max-height:100%;border:0;padding:28px 20px}.signal-controls{position:sticky;bottom:-28px;background:#100a0d;padding:16px 0 28px}.signal-controls .button{width:auto}.signal-step legend{font-size:27px}}
@media(prefers-reduced-motion:reduce){.module-layer,.trace-record{transition:none}.system-trace,.signal-flow{backdrop-filter:none}}
