:root{--bg:#0d0a06;--p:#1a1308;--p2:#120d05;--b:#5a3d0f;--a:#c47f17;--ab:#f0a830;--t:#d9b878;--d:#7a5c2a}
*{box-sizing:border-box}
[hidden]{display:none!important}
html,body{margin:0;height:100%;background:var(--bg);color:var(--t);font:14px/1.7 'Courier Prime',monospace;overflow:hidden}
body::after{content:'';position:fixed;inset:0;pointer-events:none;z-index:9999;background:repeating-linear-gradient(0deg,rgba(0,0,0,.18) 0 1px,transparent 1px 3px),radial-gradient(ellipse at center,transparent 60%,rgba(0,0,0,.55))}
.top{height:30px;border-bottom:1px solid var(--b);text-align:center;color:var(--a);font-size:12px;line-height:30px;letter-spacing:.08em;text-shadow:0 0 8px rgba(196,127,23,.5)}
.desk{position:absolute;inset:30px 0 34px 0;overflow:hidden}
.icons{position:absolute;left:18px;top:18px;display:flex;flex-direction:column;gap:14px}
.adm{position:absolute;right:18px;top:18px}
.ic{background:none;border:0;color:var(--t);font:inherit;font-size:12px;width:96px;text-align:center;cursor:pointer}
.ic svg{display:block;margin:0 auto 4px;width:46px;height:46px;padding:9px;stroke:var(--a);fill:none;stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round;border:1px solid var(--b);border-radius:50%;background:var(--p)}
.ic:hover svg,.ic:focus-visible svg{stroke:var(--ab);box-shadow:0 0 12px rgba(240,168,48,.4)}
.task{position:absolute;left:0;right:0;bottom:0;height:34px;display:flex;gap:6px;padding:4px 6px;border-top:1px solid var(--b);background:var(--p)}
.win{position:absolute;left:150px;top:20px;width:min(720px,92%);height:min(480px,80%);display:flex;flex-direction:column;min-width:280px;min-height:200px;background:var(--p);border:2px solid var(--b);border-radius:6px;box-shadow:0 8px 30px #000a}
.win>header{display:flex;justify-content:space-between;align-items:center;padding:3px 8px;background:var(--b);color:var(--ab);cursor:move;user-select:none;touch-action:none}
.win>header div{display:flex;gap:4px}
.win.max{left:0!important;top:0!important;width:100%!important;height:100%!important}
.body{flex:1;min-height:0;display:flex}
.btn,select{background:var(--p2);border:1px solid var(--a);color:var(--t);font:inherit;font-size:12px;padding:1px 10px;cursor:pointer}
.win header .btn,.win header button{padding:0 7px;line-height:1.3;background:var(--p2);border:1px solid var(--a);color:var(--t);font:inherit;font-size:12px;cursor:pointer}
.btn:hover,.btn:focus-visible,select:focus-visible{border-color:var(--ab);color:var(--ab);outline:0}
.side{width:170px;overflow:auto;padding:8px;border-right:1px solid var(--b)}
.li{display:block;width:100%;text-align:left;margin-bottom:6px;padding:5px 8px;background:var(--p2);border:1px solid var(--b);color:var(--t);font:inherit;font-size:12px;line-height:1.4;cursor:pointer}
.li:hover,.li.on{border-color:var(--ab);color:var(--ab)}
.main{flex:1;min-width:0;display:flex;flex-direction:column;position:relative}
.bar{display:flex;gap:6px;padding:6px;border-bottom:1px solid var(--b)}
.view{flex:1;overflow:auto;padding:16px 20px;background:var(--p2)}
.skip{position:absolute;right:14px;bottom:10px}
.view h2{margin:0;color:var(--ab);font-size:18px}
.meta{color:var(--d);font-size:12px;margin-bottom:14px}
.view p{margin:0 0 .9em}.sp{height:1.6em}
.view b{color:var(--ab)}.view u{text-decoration-color:var(--a);text-underline-offset:3px}
.aud{display:block;padding-left:10px;margin-bottom:2px;border-left:2px solid}
.aud.T{color:#e0a64a;border-color:#e0a64a}.aud.M{color:#8fa6b8;border-color:#8fa6b8}
.aud.B{color:var(--ab);border-image:linear-gradient(#e0a64a,#8fa6b8) 1}
.msg{margin-bottom:8px}.msg b{margin-right:8px}.msg small{color:var(--d)}.msg p{margin:0}
.act{color:var(--d);font-style:italic;font-size:12px;margin-bottom:8px}
.end{text-align:center;color:var(--d);margin:12px 0}
.adb{display:block;margin:0 0 8px}
@media(max-width:700px){.win{left:0!important;top:0!important;width:100%!important;height:100%!important}.side{width:112px}.adm{top:auto;bottom:10px}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important}}

.conn input{display:block;width:100%;margin-bottom:5px;padding:2px 6px;background:var(--p2);border:1px solid var(--b);color:var(--t);font:inherit;font-size:12px}
.conn .btn{margin-bottom:8px}
.form{flex:1;overflow:auto;padding:10px;display:flex;flex-direction:column;gap:6px}
.form .row{display:flex;gap:6px;flex-wrap:wrap;align-items:center}
.form input[type=text],.form textarea{flex:1;min-width:90px;padding:3px 6px;background:var(--p2);border:1px solid var(--b);color:var(--t);font:inherit;font-size:12px}
.form textarea{min-height:170px;resize:vertical;line-height:1.6}
.form label{display:flex;align-items:center;gap:4px;font-size:12px;color:var(--d)}
.ed-msg{margin-left:6px;font-size:12px;color:var(--d)}
