:root{--background: #f0f0f0;--foreground: #121212;--primary-red: #d02020;--primary-blue: #1040c0;--primary-yellow: #f0c020;--border: #121212;--muted: #e0e0e0;--text-muted: #333333}*{box-sizing:border-box}body{margin:0;min-height:100vh;background:var(--background);color:var(--foreground);font-family:Outfit,sans-serif;font-size:20px;line-height:1.5;display:grid;place-items:center;padding:16px}.shell{width:min(1120px,100%);border:2px solid var(--border);background:#fff;box-shadow:4px 4px 0 0 var(--border);text-align:center;position:relative;overflow:hidden}.shell:before{content:"";position:absolute;width:180px;height:180px;right:-50px;top:-50px;border:2px solid var(--border);background:var(--primary-yellow);transform:rotate(45deg);opacity:.3;pointer-events:none}.brand{padding:24px 16px;border-bottom:2px solid var(--border);background:radial-gradient(var(--muted) 2px,transparent 2px) 0 0 / 20px 20px,#fff}.geo-logo{display:inline-flex;align-items:center;gap:10px;margin-bottom:10px}.shape{display:inline-block;border:2px solid var(--border)}.shape-circle{width:26px;height:26px;border-radius:9999px;background:var(--primary-red)}.shape-square{width:24px;height:24px;background:var(--primary-blue);transform:rotate(45deg)}.shape-triangle{width:0;height:0;border-left:14px solid transparent;border-right:14px solid transparent;border-bottom:26px solid var(--primary-yellow);border-top:0}.brand h1{margin:0;font-weight:900;letter-spacing:-.05em;text-transform:uppercase;line-height:.9;font-size:clamp(3rem,10vw,7rem)}.brand p{margin:10px auto 0;max-width:780px;font-size:clamp(1rem,2.6vw,1.3rem);font-weight:500;color:var(--text-muted)}.mode-switch{display:grid;grid-template-columns:repeat(2,minmax(140px,260px));justify-content:center;gap:12px;padding:18px 16px;border-bottom:2px solid var(--border);background:var(--primary-yellow)}.mode-btn,button,a{font:inherit}.mode-btn,button{border:2px solid var(--border);border-radius:0;background:#fff;color:var(--foreground);padding:12px 16px;text-transform:uppercase;letter-spacing:.08em;font-weight:700;cursor:pointer;box-shadow:4px 4px 0 0 var(--border);transition:transform .2s ease-out,box-shadow .2s ease-out}.mode-btn:hover,button:hover{transform:translateY(-2px)}.mode-btn:active,button:active{transform:translate(2px,2px);box-shadow:none}.mode-btn.active{background:var(--primary-red);color:#fff}.panel{min-height:380px;padding:20px 14px;border-bottom:2px solid var(--border)}.panel-send{background:var(--primary-blue);color:#fff}.panel-receive{background:var(--primary-yellow);color:var(--foreground)}.stack{display:grid;gap:14px;justify-items:center}.stack>*{width:min(760px,100%)}h2,h3,h4{margin:0;text-transform:uppercase;letter-spacing:-.03em;font-weight:900}h2{font-size:clamp(2rem,6vw,3.4rem);line-height:.95}h3{font-size:clamp(1.3rem,3.5vw,2rem)}label{display:grid;gap:8px;font-size:.95rem;text-transform:uppercase;letter-spacing:.12em;font-weight:700}input{width:100%;border:2px solid var(--border);border-radius:0;background:#fff;color:var(--foreground);padding:14px 16px;text-align:center;font-size:1.1rem;font-weight:500;box-shadow:4px 4px 0 0 var(--border)}input:focus{outline:none;transform:translate(-1px,-1px);box-shadow:6px 6px 0 0 var(--border)}.checkbox-row{grid-template-columns:auto auto;justify-content:center;align-items:center;column-gap:12px}.checkbox-row input{width:20px;height:20px;padding:0;box-shadow:none}.button-row{display:flex;gap:12px;flex-wrap:wrap;justify-content:center}.button-row button:nth-child(1){background:var(--primary-red);color:#fff}.button-row button:nth-child(2){background:var(--primary-blue);color:#fff}.panel-send .button-row button:nth-child(2){background:var(--primary-yellow);color:var(--foreground)}.meta,.status-bar,small,p{color:inherit;opacity:.95}.scan-progress{width:min(760px,100%);height:10px;border:2px solid var(--border);background:#fff;box-shadow:4px 4px 0 0 var(--border)}.scan-progress::-webkit-progress-bar{background:#fff}.scan-progress::-webkit-progress-value{background:repeating-linear-gradient(90deg,var(--primary-yellow) 0,var(--primary-yellow) 12px,var(--primary-red) 12px,var(--primary-red) 24px)}.session-output{display:grid;justify-items:center;gap:8px}.code{font-size:clamp(1.5rem,4vw,2.2rem);font-weight:900;text-transform:uppercase;letter-spacing:-.02em}.peer-list,#progress-grid,#receiver-progress,.downloads,.file-tree{display:grid;gap:12px}.file-tree-children{margin-top:10px;padding-left:14px;border-left:2px solid var(--border);display:grid;gap:10px}.tree-pane{width:min(760px,100%);border:2px solid var(--border);background:#1e1e1e;color:#d4d4d4;box-shadow:4px 4px 0 0 var(--border);text-align:left;font-family:Consolas,SFMono-Regular,Menlo,monospace;font-size:12px;line-height:1.4;max-height:420px;overflow:auto}.tree-row{display:flex;align-items:center;justify-content:space-between;min-height:28px;border-bottom:1px solid rgba(255,255,255,.06);padding-right:6px}.tree-row:hover{background:#2a2d2e}.tree-label{display:inline-flex;align-items:center;gap:6px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.tree-dir .tree-label{color:#ccc;font-weight:500}.tree-icon{color:#c5c5c5;width:10px;display:inline-flex;justify-content:center}.tree-folder{filter:grayscale(1);opacity:.9}.tree-filedot{color:#9da0a5;width:10px;display:inline-flex;justify-content:center}.tree-file-main{display:flex;align-items:center;gap:8px;min-width:0}.tree-file-main small{color:#8d8d8d;opacity:1}.tree-actions{flex-shrink:0}.tree-download-btn,.tree-download-link{border:1px solid #3f3f46;background:#2d2d30;color:#d4d4d4;padding:2px 7px;font-size:11px;text-transform:none;letter-spacing:0;box-shadow:none;border-radius:0}.tree-download-btn:hover,.tree-download-link:hover{transform:none;background:#3c3c3c;border-color:#6b6b6b}.peer-card,.download-card,.progress-card{border:2px solid var(--border);border-radius:0;padding:14px;background:#fff;color:var(--foreground);box-shadow:8px 8px 0 0 var(--border);text-align:center;transition:transform .2s ease-out;position:relative}.peer-card:hover,.download-card:hover,.progress-card:hover{transform:translateY(-2px)}.peer-card:after,.download-card:after,.progress-card:after{content:"";position:absolute;right:10px;top:10px;width:12px;height:12px;border:2px solid var(--border);background:var(--primary-red)}.download-card:nth-child(3n):after{background:var(--primary-blue);transform:rotate(45deg)}.download-card:nth-child(2n):after{background:var(--primary-yellow);border-radius:9999px}.badge-row{display:flex;flex-wrap:wrap;gap:8px;justify-content:center}.badge{border:2px solid var(--border);background:var(--primary-yellow);color:var(--foreground);border-radius:9999px;padding:4px 10px;font-weight:700;text-transform:uppercase;letter-spacing:.06em}.preview{max-width:min(100%,320px);margin:8px 0;border:2px solid var(--border);filter:grayscale(1);transition:filter .2s ease-out}.download-card:hover .preview{filter:grayscale(0)}.download-card:nth-child(odd) .preview{border-radius:9999px}.download-card:nth-child(2n) .preview{border-radius:0}.qr-video{width:min(420px,100%);border:2px solid var(--border);border-radius:0;box-shadow:4px 4px 0 0 var(--border)}.hidden{display:none}.status-bar{padding:14px 12px;background:var(--foreground);color:#fff;text-transform:uppercase;letter-spacing:.08em;font-size:.9rem;font-weight:700}@media (min-width: 900px){.shell,.brand,.mode-switch,.panel{border-width:4px}.shell{box-shadow:8px 8px 0 0 var(--border)}.mode-btn,button,input,.qr-video{border-width:4px;box-shadow:6px 6px 0 0 var(--border)}.peer-card,.download-card,.progress-card{border-width:4px;box-shadow:8px 8px 0 0 var(--border)}}@media (max-width: 700px){body{font-size:18px;padding:8px}.mode-switch{grid-template-columns:1fr}.button-row{flex-direction:column}}
