:root{--navy:#112b49;--navy2:#183d64;--primary:#1269be;--light:#f3f6fa;--line:#e1e9f0;--text:#1b3149;--muted:#70849a;--orange:#f16b2b;--green:#168463;--red:#bd3449;--shadow:0 7px 24px rgba(10,36,65,.04)}
*{box-sizing:border-box}body{margin:0;color:var(--text);background:var(--light);font:14px/1.55 system-ui,-apple-system,"Segoe UI",Arial,sans-serif}button,input,textarea,select{font:inherit}a{color:var(--primary)}button{cursor:pointer}button:disabled{opacity:.45;cursor:not-allowed}
.app-shell{min-height:100vh;display:grid;grid-template-columns:232px minmax(0,1fr)}.sidebar{background:var(--navy);color:white;padding:27px 14px;display:flex;flex-direction:column;min-height:100vh}.logo{text-decoration:none;color:white;padding:0 13px 32px;display:block}.logo span{display:block;font-size:25px;font-weight:850;letter-spacing:-1px}.logo b{color:#fa6042}.logo small{display:block;color:#aec5de;font-size:11px}.sidebar-label{padding:4px 12px 11px;font-size:10px;letter-spacing:.13em;color:#8db1d3}.sidebar nav{display:grid;gap:7px}.sidebar nav button{text-align:left;border:0;background:none;color:#cce0f4;border-radius:9px;padding:12px 13px}.sidebar nav button.active,.sidebar nav button:hover{background:#2a5077;color:white}.sidebar nav button.create-nav{margin-top:11px;border:1px solid #476e93;color:white}.sidebar-note{margin-top:auto;font-size:12px;color:#a8c6e0;padding:16px 12px;line-height:1.8}.sidebar-note a{color:white}
.app-header{padding:24px 30px 21px;display:flex;align-items:center;justify-content:space-between;gap:18px;border-bottom:1px solid var(--line);background:#fff}.app-header h1{font-size:25px;line-height:1.15;letter-spacing:-.02em;margin:0 0 5px}.app-header span{color:var(--muted)}.app-account{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.app-account #accountName{color:var(--text);font-weight:650}.role-tag{padding:5px 9px;background:#eaf2fb;color:#246197!important;border-radius:16px;font-size:11px;font-weight:750}.text-btn{border:0;background:transparent;color:var(--primary);padding:5px}
main{padding:25px 30px 70px;max-width:1600px;margin:auto}.card{background:white;border:1px solid var(--line);border-radius:14px;padding:23px;margin-bottom:19px;box-shadow:var(--shadow)}.card h2{margin:0 0 15px;font-size:21px}.card h3{margin:0 0 10px;font-size:16px}.muted{color:var(--muted)}.small{font-size:12px}.eyebrow{color:#6989a6;font-size:11px;text-transform:uppercase;letter-spacing:.1em;font-weight:700}.intro{background:linear-gradient(110deg,#153856,#21618e);color:#fff;border:0;padding:29px 32px}.intro p{color:#c6e1f0;margin:6px 0 0}.intro h2{font-size:26px}.metric-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin-bottom:20px}.metric{border:1px solid var(--line);border-radius:13px;padding:19px;background:white}.metric strong{display:block;font-size:32px;line-height:1.2;margin-top:7px}.metric small{color:var(--muted)}.row{display:flex;gap:12px;align-items:center;flex-wrap:wrap}.between{justify-content:space-between}.gap16{gap:16px}.btn{border:0;background:var(--primary);color:white;border-radius:8px;padding:10px 16px;font-weight:650}.btn.secondary{background:#e9f0f7;color:#254769}.btn.orange{background:var(--orange)}.btn.danger{background:#fff0f2;color:var(--red);border:1px solid #f2c7cd}.btn.outline{background:white;color:var(--primary);border:1px solid #bcd6ea}.btn.small{padding:6px 10px;font-size:12px}.btn-inline{font-size:13px;font-weight:650;border:0;background:transparent;color:var(--primary)}.pill{display:inline-block;background:#e7f1fa;color:#245d8f;border-radius:999px;padding:4px 9px;font-size:11px;font-weight:700}.pill.green{color:#166348;background:#e3f5ec}.pill.orange{color:#93601c;background:#fff0d9}.pill.red{color:#a43b45;background:#ffebed}.table-scroll{overflow:auto;width:100%}table{width:100%;border-collapse:collapse;min-width:660px}th{text-transform:uppercase;color:#7089a0;background:#f5f8fb;font-size:11px;letter-spacing:.04em}th,td{padding:13px;border-bottom:1px solid var(--line);text-align:left;vertical-align:top}tbody tr:hover{background:#f9fbfd}td{font-size:13px}td .muted{font-size:12px}.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px 18px}.field{display:grid;gap:6px;margin-bottom:11px}.field label{font-size:12px;font-weight:750;color:#46617e}.field input,.field select,.field textarea,.search{width:100%;border:1px solid #cbd9e5;border-radius:8px;padding:10px 12px;background:#fff;color:var(--text);min-height:41px}.field textarea{min-height:90px;resize:vertical}.span2{grid-column:1/-1}.check{display:flex;align-items:center;gap:9px}.check input{width:auto}.tabs{display:flex;flex-wrap:wrap;gap:7px;margin:0 0 18px}.tabs button{background:#eaf1f6;color:#2b5478;border:1px solid #d8e5ed;padding:8px 13px;border-radius:8px}.tabs button.active{background:var(--navy2);color:white}.casehead{display:flex;justify-content:space-between;align-items:flex-start;gap:15px;flex-wrap:wrap}.casehead h2{margin-bottom:6px}.detail-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:13px}.kv{background:#f6f9fc;border-radius:10px;padding:15px}.kv b{display:block;margin-top:6px}.timeline{display:grid;gap:11px}.timeline-item{border-left:3px solid #b0cce1;padding:6px 13px;background:#f8fbff;border-radius:0 9px 9px 0}.timeline-item small{display:block;color:#7b91a4}.message-list{display:grid;gap:12px;max-height:420px;overflow:auto;border:1px solid var(--line);padding:15px;border-radius:10px;background:#fafcfe}.bubble{background:white;border:1px solid var(--line);padding:12px;border-radius:10px;max-width:84%;white-space:pre-wrap;overflow-wrap:anywhere}.bubble.mine{margin-left:auto;background:#e7f1ff;border-color:#cadeef}.bubble small{display:block;color:#71869b;margin-bottom:3px}.empty{padding:22px;text-align:center;background:#f5f9fc;border-radius:10px;color:#71859a}.warning{background:#fff7e7;border:1px solid #f7deae;color:#805c21;border-radius:9px;padding:12px}.success{background:#e9f8ef;border:1px solid #b9ead1;color:#246c49;border-radius:9px;padding:12px}.error{background:#fff0f1;border:1px solid #efc1c7;color:#a43c4b;border-radius:9px;padding:12px}.split{display:grid;grid-template-columns:1.35fr .85fr;gap:18px}.toolbar{display:flex;gap:10px;justify-content:space-between;align-items:center;flex-wrap:wrap;margin-bottom:14px}.toolbar .search{max-width:420px}.doc-card{display:flex;gap:10px;align-items:center;justify-content:space-between;padding:13px;border-bottom:1px solid var(--line)}.doc-card:last-child{border-bottom:0}.doc-card strong{display:block}.doc-card small{display:block;color:#7890a6}.separator{border:0;border-top:1px solid var(--line);margin:22px 0}.toast{position:fixed;bottom:24px;right:24px;max-width:min(420px,90vw);padding:14px 18px;background:var(--navy);color:white;box-shadow:0 9px 28px #173c6266;border-radius:10px;z-index:30}.doc-status{display:flex;gap:6px;align-items:center;flex-wrap:wrap;margin-bottom:8px}.mini-map{width:100%;max-width:850px;background:linear-gradient(160deg,#dfeced,#edf3dd);border:1px solid #d6e7e7;border-radius:16px;padding:12px}.mini-map svg{display:block;width:100%;height:auto}.mini-map text{font-size:14px;fill:#244963;font-weight:700}.mini-map .route{stroke:#eb8445;stroke-width:5;stroke-dasharray:10 6;fill:none}.numeric{font-variant-numeric:tabular-nums}
@media(max-width:1050px){.detail-grid{grid-template-columns:repeat(2,1fr)}.metric-grid{grid-template-columns:repeat(2,1fr)}.split{grid-template-columns:1fr}}
@media(max-width:700px){.app-shell{grid-template-columns:1fr}.sidebar{min-height:0;padding:10px 12px;gap:3px}.logo{padding:4px 5px 9px}.sidebar-label,.sidebar-note{display:none}.sidebar nav{display:flex;overflow-x:auto;gap:4px}.sidebar nav button{white-space:nowrap;padding:9px 11px}.sidebar nav button.create-nav{margin-top:0}.app-header{padding:17px;align-items:flex-start;flex-direction:column}.app-header h1{font-size:21px}main{padding:15px}.card{padding:16px}.intro{padding:20px}.form-grid,.detail-grid{grid-template-columns:1fr}.span2{grid-column:auto}.metric-grid{gap:8px}.metric{padding:12px}.metric strong{font-size:25px}.bubble{max-width:100%}}
