/* Plain, text-first interface. */
:root{color-scheme:dark;--paper:#080808;--white:#101010;--ink:#c0c0c0;--muted:#8e8e8e;--line:#333;--accent:#aaa0bd}
*{box-sizing:border-box}
[hidden]{display:none!important}
body{margin:0;min-height:100vh;background:var(--paper);color:var(--ink);font:13px/1.7 "MS Gothic","Osaka-Mono",Consolas,monospace}
button,input,textarea,select{font:inherit}
a{color:#aaa0bd;text-decoration:underline;text-underline-offset:3px}
a:hover{color:#d1c4e5}
button{cursor:pointer;min-height:44px;background:#191919;border:1px solid #555;color:#c8c8c8;border-radius:0;padding:5px 14px}
button:hover{background:#252525;border-color:#888}
button:disabled{opacity:.5;cursor:default}
button:focus-visible,a:focus-visible{outline:1px dashed #ddd;outline-offset:3px}
input:focus-visible,textarea:focus-visible{outline:1px solid #aaa;outline-offset:1px}
select:focus-visible{outline:1px solid #aaa;outline-offset:1px}
::selection{background:#51465e;color:#fff}
.shell{max-width:980px;margin:auto;padding:0 24px}
.header{min-height:66px;display:flex;align-items:center;justify-content:space-between;gap:20px;border-bottom:1px solid #3b3b3b}
.brand{color:#c7c7c7;font-size:18px;font-weight:400;text-decoration:none;letter-spacing:1px;white-space:nowrap}
.brand::before{content:"[ ";color:#777}.brand::after{content:" ]";color:#777}
.header-actions{display:flex;align-items:center;gap:28px}
.site-nav{display:flex;gap:16px;align-items:center}
.site-nav a{display:flex;min-height:44px;align-items:center;font-size:12px}
.site-nav a[aria-current=page]{color:#ddd;text-decoration:none}
.site-nav a[aria-current=page]::before{content:"> ";white-space:pre;color:#999}
.connection{font-size:11px;color:#888}.status-dot{display:none}.connection.offline{color:#bd9999}
.intro{padding:26px 0 20px;border-bottom:1px dotted #333;margin-bottom:20px}
h1{font-size:20px;font-weight:400;line-height:1.5;margin:0}
.description{font-size:12px;color:#888;margin:6px 0 0}
.input-card{border:1px solid #3c3c3c;background:#101010;padding:18px}
.input-card label{display:block;margin-bottom:10px;font-size:12px}
.input-row{display:flex;gap:9px}
.url-field{display:flex;align-items:center;min-width:0;flex:1;background:#080808;border:1px solid #555}
.url-field>svg{display:none}.url-field input{background:transparent;border:0;color:#ccc;width:100%;min-width:0;padding:10px 12px;font-size:14px;min-height:46px}
input::placeholder,textarea::placeholder{color:#777}
.paste{border:0;border-left:1px solid #444;font-size:11px;background:#141414;white-space:nowrap}
.primary{display:flex;align-items:center;justify-content:center;gap:12px;white-space:nowrap}
.primary svg{display:none}
.input-bottom{display:flex;justify-content:space-between;gap:10px;margin-top:10px;color:#888;font-size:11px}
.input-bottom p{margin:0}.pills{display:flex;gap:12px}.pills span::before{content:"/ ";color:#555}
.provider-panel{display:grid;grid-template-columns:auto minmax(150px,240px);align-items:center;gap:8px 16px;margin-top:15px;border-top:1px dotted #333;padding-top:14px}
.provider-panel label{margin:0}.provider-panel select{min-height:44px;max-width:100%;background:#141414;color:#ccc;border:1px solid #555;padding:8px;font-size:16px}
.provider-panel p{grid-column:1/-1;margin:0;color:#999;font-size:11px}
.notice{background:#181414;border:1px solid #685252;color:#c5b0b0;padding:12px;margin:15px 0;line-height:1.8;font-size:12px}
.notice.info{background:#171717;border-color:#555;color:#bbb}
.viewer-card{margin-top:20px;border:1px solid #3c3c3c;background:#101010}
.viewer-top{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:8px 13px;border-bottom:1px solid #333;font-size:10px;color:#888}
.section-label{color:#bbb}.tiny-square{display:none}
.screen{position:relative;aspect-ratio:16/9;background:#000;overflow:hidden}
.empty,.preparing{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:20px}
.empty-play{display:none}.empty p{font-size:13px;font-weight:400;color:#888;margin:0 0 8px}.empty>span:last-child{font-size:11px;color:#777}
.screen video{position:absolute;inset:0;width:100%;height:100%;background:#000}
.screen .external-video{position:absolute;inset:0;width:100%;height:100%;border:0;background:#000}
.player-actions{display:flex;flex-direction:column;align-items:flex-end;gap:5px;flex-shrink:0;font-size:11px}.player-actions>a{min-height:44px;display:flex;align-items:center}
.viewer-bottom>div:first-child{min-width:0;flex:1}.player-actions{max-width:60%}.player-actions button{text-align:right;white-space:normal}footer p{max-width:75%}
@media(max-width:650px){.viewer-bottom{flex-wrap:wrap}.player-actions{max-width:none;width:100%;align-items:flex-start}.player-actions button{text-align:left}}
.viewer-bottom{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:13px;border-top:1px solid #333;min-height:70px}
.viewer-bottom p{font-size:12px;font-weight:400;margin:0 0 3px;overflow-wrap:anywhere}.viewer-bottom div>span{font-size:11px;color:#888}
.reset,.quiet-button{background:transparent;border:0;text-decoration:underline;font-size:11px;color:#aaa0bd;padding:0 5px}
.how-to{display:flex;gap:22px;padding:18px 0;font-size:11px;color:#888}.how-to>div{display:flex;gap:8px}.how-to p{margin:0;font-weight:400}.how-to p span{display:none}.step{color:#666}
footer{display:flex;justify-content:space-between;align-items:start;gap:20px;border-top:1px solid #333;padding:16px 0 26px;margin-top:22px;color:#777;font-size:10px}
.footer-brand{font-weight:400;font-size:11px}footer p{margin:0;text-align:right;line-height:1.9}.footer-video{font-size:11px;min-height:44px;display:flex;align-items:center}
.loader{width:22px;height:22px;border:1px solid #333;border-top-color:#aaa;border-radius:50%;animation:spin 1s linear infinite;margin-bottom:15px}
.preparing h2{font-size:13px;font-weight:400;margin:0}.preparing p{font-size:11px;color:#888;max-width:300px;margin:8px 0}
.preparing progress{width:min(220px,80%);height:5px;accent-color:#aaa;margin:7px 0}.preparing progress::-webkit-progress-bar{background:#333}.preparing progress::-webkit-progress-value{background:#aaa}
@keyframes spin{to{transform:rotate(360deg)}}
@media(max-width:650px){.shell{padding:0 14px}.header{min-height:58px;gap:12px}.header-actions{gap:14px}.connection{display:none}.site-nav{gap:13px}.intro{padding:22px 0 16px;margin-bottom:16px}.input-row{flex-direction:column}.primary{min-height:44px}.input-card{padding:14px}.url-field input{font-size:16px}.how-to{flex-wrap:wrap;gap:7px 20px}.viewer-top{font-size:9px}.viewer-bottom{align-items:start}.reset{font-size:10px;flex-shrink:0}.empty>span:last-child{font-size:10px}.viewer-card{margin-top:16px}footer{margin-top:16px}.preparing{padding:10px}.preparing p{margin:4px 0}.loader{margin-bottom:8px}}
@media(prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important}}
