
:root{--navy:#0c2741;--gold:#efb62d;--bg:#f3f7fa;--line:#d9e4ec;--muted:#6b7f90;--green:#2b8055;--red:#a94040}
*{box-sizing:border-box}html,body{margin:0;height:100%;font-family:Inter,Segoe UI,Arial,sans-serif;background:var(--bg);color:#1d3950}button,input,select{font:inherit}.hidden{display:none!important}
.top{height:64px;background:var(--navy);color:#fff;display:flex;align-items:center;gap:10px;padding:0 14px;box-shadow:0 4px 20px #0002;position:relative;z-index:20}.mark{width:38px;height:38px;border-radius:11px;background:var(--gold);color:var(--navy);font-weight:1000;display:grid;place-items:center}.brand{display:flex;align-items:center;gap:10px;min-width:220px}.brand b{display:block}.brand small{display:block;color:#c0d1df;font-size:9px;letter-spacing:.08em}.spacer{flex:1}
.toolSelect{height:39px;min-width:230px;border-radius:9px;border:1px solid #ffffff30;background:#173b5a;color:#fff;padding:0 10px;font-weight:800}.btn{height:36px;border:0;border-radius:9px;padding:0 11px;font-weight:850;cursor:pointer}.btn.gold{background:var(--gold);color:var(--navy)}.btn.soft{background:#ffffff14;color:#fff;border:1px solid #ffffff28}.btn.dark{background:var(--navy);color:#fff}.btn.light{background:#eef4f8;color:var(--navy);border:1px solid #d4e1e9}.btn.danger{background:#fff0f0;color:#963b3b;border:1px solid #eccaca}
.status{display:flex;gap:7px;align-items:center;border:1px solid #ffffff20;background:#ffffff0d;padding:7px 9px;border-radius:999px;font-size:10px}.dot{width:8px;height:8px;border-radius:50%;background:#6cd39d}.dot.busy{background:var(--gold)}.dot.bad{background:#ff7c7c}
.user{max-width:190px}.user b{display:block;font-size:10px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.user small{display:block;color:#bed0de;font-size:8px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.workspace{height:calc(100% - 64px);position:relative;background:#fff}.toolFrame{position:absolute;inset:0;width:100%;height:100%;border:0;display:none;background:#fff}.toolFrame.on{display:block}
.login{position:fixed;inset:0;z-index:100;background:radial-gradient(circle at 20% 10%,#fff,#f3f7fa 45%,#e7eff5);display:grid;place-items:center;padding:20px}.loginCard{width:min(500px,95vw);background:#fff;border:1px solid #d5e1e9;border-radius:20px;padding:25px;box-shadow:0 24px 70px #173a5820}.loginCard .mark{margin:0 auto 10px;width:50px;height:50px}.loginCard h1{text-align:center;color:var(--navy);margin:0}.loginCard p{text-align:center;color:var(--muted);font-size:11px;line-height:1.55}.field{display:grid;gap:5px;margin-top:10px}.field label{font-size:9px;font-weight:900;color:#597082}.field input,.field select{height:41px;border:1px solid #ccd9e2;border-radius:9px;padding:0 10px;background:#fff}.notice{border:1px solid #d8e3ea;background:#f8fbfd;border-radius:9px;padding:9px;font-size:10px;line-height:1.5;color:#4f6577}.notice.error{background:#fff0f0;border-color:#eccaca;color:#943e3e}.notice.ok{background:#edf8f1;border-color:#cce5d5;color:#2a6745}
.modal{position:fixed;inset:0;z-index:110;background:#0c274166;display:grid;place-items:center;padding:15px}.modalCard{width:min(920px,97vw);max-height:90vh;overflow:auto;background:#fff;border:1px solid #d7e2e9;border-radius:17px;padding:17px;box-shadow:0 25px 80px #0c274144}.modalHead{display:flex;justify-content:space-between;gap:10px;align-items:flex-start}.modalHead h2{margin:0;color:var(--navy)}.modalHead p{margin:4px 0 0;color:var(--muted);font-size:10px}
.grid2{display:grid;grid-template-columns:1fr 1fr;gap:10px}.tableWrap{overflow:auto;border:1px solid var(--line);border-radius:10px;margin-top:10px}table{width:100%;border-collapse:collapse;font-size:10px}th,td{padding:8px;border-bottom:1px solid #e6edf2;text-align:left;vertical-align:top}th{background:#f5f8fb;color:#587082;font-size:9px}.pill{display:inline-flex;padding:4px 7px;border-radius:999px;background:#eef3f7;font-size:8px;font-weight:900}.pill.green{background:#e6f6ed;color:#2b7b53}.pill.red{background:#faeaea;color:#983f3f}
.loading{position:absolute;inset:0;z-index:30;background:#f6f9fb;display:grid;place-items:center}.loadingCard{width:min(520px,90vw);background:#fff;border:1px solid var(--line);border-radius:15px;padding:18px}.bar{height:8px;background:#e6edf2;border-radius:99px;overflow:hidden;margin-top:10px}.bar span{height:100%;display:block;background:var(--gold);width:20%;transition:.25s}
@media(max-width:900px){.status,.user{display:none}.brand{min-width:0}.brand div:last-child{display:none}.toolSelect{min-width:150px;max-width:40vw}.top{gap:6px;padding:0 7px}.btn{padding:0 7px;font-size:9px}.grid2{grid-template-columns:1fr}}

#conflict{position:fixed;top:76px;left:10px;right:10px;z-index:5000} .top{flex-wrap:wrap} .workspace{top:85px} @media(max-width:900px){.top{height:auto;min-height:112px;gap:6px}.workspace{top:145px}.top .status{font-size:11px}.top .brand small{display:none}}

html,body{overflow:hidden}body{display:flex;flex-direction:column}.top{height:auto!important;min-height:72px;padding:12px 14px;flex-shrink:0}.workspace{position:relative!important;top:auto!important;height:auto!important;flex:1;min-height:0}.btn{display:inline-flex;align-items:center;text-decoration:none}.user{min-width:130px}

.mark{object-fit:contain;background:#fff!important;border-radius:50%;width:52px;height:52px}.loginCard .mark{width:96px;height:96px}.actionToast{position:fixed;bottom:24px;right:24px;background:#193249;color:#fff;border:1px solid #c6a471;padding:16px 22px;border-radius:12px;z-index:100000;box-shadow:0 8px 30px #0003;max-width:min(440px,90vw)}button:active,.btn:active{transform:translateY(1px);filter:brightness(.9)}button:focus-visible,.btn:focus-visible{outline:3px solid #c6a471;outline-offset:3px}
