:root{--bg:#f4f6fa;--c:#fff;--t:#1d2433;--p:#1a56db;--b:#d8deea;--m:#667}
@media(prefers-color-scheme:dark){:root{--bg:#111623;--c:#1b2335;--t:#e8ecf5;--b:#2c3750;--m:#9aa5bd}}
*{box-sizing:border-box}body{margin:0;font:15px system-ui,sans-serif;background:var(--bg);color:var(--t);display:flex;min-height:100vh}
#nav{width:230px;background:var(--c);border-right:1px solid var(--b);padding:14px;position:sticky;top:0;height:100vh;flex-shrink:0;overflow:auto}
#nav h1{font-size:17px;margin:0 0 14px;color:var(--p)}#nav button{display:block;width:100%;text-align:left;margin:3px 0;background:none;color:var(--t);border:0;padding:10px;border-radius:8px;cursor:pointer;font-size:14px}
#nav button.on,#nav button:hover{background:var(--p);color:#fff}#nav .dr{border:1px dashed var(--p);margin-top:12px}main{flex:1;padding:22px;min-width:0;max-width:1200px}
.card{background:var(--c);border:1px solid var(--b);border-radius:12px;padding:16px;margin-bottom:14px}
.g{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:10px}label{display:block;font-size:12px;color:var(--m)}
input,select,textarea{width:100%;padding:8px;border:1px solid var(--b);border-radius:7px;background:var(--bg);color:var(--t);font:inherit;margin-top:3px}
button.b{background:var(--p);color:#fff;border:0;padding:9px 14px;border-radius:8px;cursor:pointer;margin:3px 3px 3px 0;font:inherit}button.s{background:var(--bg);color:var(--t);border:1px solid var(--b)}button.r{background:#c0392b}
.tiles{display:grid;grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:10px}.tile{cursor:pointer;padding:14px;border:1px solid var(--b);border-radius:10px;background:var(--c)}.tile:hover{border-color:var(--p)}
.w{overflow-x:auto}table{border-collapse:collapse;width:100%;font-size:13px}td,th{border:1px solid var(--b);padding:4px;vertical-align:top}th{background:var(--bg)}td input,td textarea{margin:0;min-width:70px}td textarea{min-width:160px}
.tag{display:inline-block;padding:2px 8px;border-radius:9px;background:var(--bg);border:1px solid var(--b);font-size:12px;margin-right:4px}pre{white-space:pre-wrap;font:inherit}
.lg{padding:12px;border-radius:8px;background:#fff7d6;color:#553;font-size:13px;margin-bottom:12px}
.pb{height:14px;border-radius:7px;background:var(--bg);border:1px solid var(--b);overflow:hidden;margin:8px 0 2px}.pb i{display:block;height:100%;background:var(--p);transition:width .4s}
@media(max-width:760px){body{flex-direction:column}#nav{width:100%;height:auto;position:static}}
