:root{font-family:Segoe UI,system-ui,sans-serif;color:#172b4d;background:#f5f7fa;font-size:16px}*{box-sizing:border-box}body{margin:0;display:flex}aside{width:224px;background:#fff;min-height:100vh;padding:32px 20px;border-right:1px solid #e0e6ef;flex-shrink:0}.brand{font-weight:800;font-size:26px;text-decoration:none;color:#245bc4}.brand span{display:block;font-size:14px;color:#52627a;margin-top:6px}nav{display:grid;gap:8px;margin-top:44px}nav a{padding:14px;border-radius:8px;text-decoration:none;color:#52627a}nav a.active{background:#edf3ff;color:#245bc4;font-weight:600}.aside-note{margin-top:64px;font-size:13px;color:#52627a;line-height:1.7}main{padding:28px 36px;min-width:0;flex:1}.demo{padding:12px 16px;border:1px solid #e8d7aa;background:#fff8e9;color:#745217;border-radius:8px;font-size:13px}header{display:flex;justify-content:space-between;align-items:center;gap:16px;padding:30px 0}h1{font-size:30px;margin:6px 0 10px;letter-spacing:-.7px}h2{font-size:19px}header p{margin:0;color:#52627a}.eyebrow{font-size:11px;letter-spacing:1.6px;font-weight:600}.connection{font-size:13px;background:#e8edf4;padding:10px 14px;border-radius:20px;color:#52627a;white-space:nowrap}.toolbar{display:flex;gap:16px;align-items:end;padding:20px;background:white;border:1px solid #e0e6ef;border-radius:12px;flex-wrap:wrap}label{font-size:13px;display:grid;gap:7px;color:#52627a}.search{flex:1;min-width:180px}input,select,button{font:inherit;border:1px solid #cbd5e1;border-radius:7px;min-height:44px;padding:9px 12px;background:#fff;color:#172b4d}button{cursor:pointer;font-weight:600;font-size:13px}button:hover{background:#edf3ff}.check{display:flex;align-items:center;gap:8px;min-height:44px}.check input{min-height:20px;width:18px}.hint{font-size:13px;color:#52627a;line-height:1.6;margin:16px 0}.table-wrap{background:white;border:1px solid #e0e6ef;border-radius:12px;overflow:auto}table{border-collapse:collapse;width:100%;text-align:left;font-size:14px}th{font-size:12px;font-weight:600;background:#fafbfd;color:#52627a;padding:16px}td{padding:20px 16px;border-top:1px solid #edf0f5;vertical-align:middle}td:first-child{font-size:12px;white-space:nowrap}small{display:block;color:#52627a;font-size:12px;margin-top:7px}.deal{color:#245bc4;text-decoration:none;font-weight:600;line-height:1.5}.deal:hover{text-decoration:underline}.change{display:flex;align-items:center;gap:10px;font-variant-numeric:tabular-nums;white-space:nowrap}.change>span{color:#52627a}svg{width:19px;height:19px;fill:none;stroke:#52627a;stroke-width:1.7;flex-shrink:0}.badge{font-size:12px;font-weight:600;border-radius:6px;padding:7px 10px;display:inline-block;white-space:nowrap}.ok{color:#216345;background:#edf8f1}.danger{color:#a92b32;background:#fff0f0}.muted{background:#edf0f5;color:#52627a}.detail{border:none;color:#245bc4;background:transparent}.empty{background:white;padding:40px;text-align:center;border-radius:12px}.settings-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:20px}article{background:white;border:1px solid #e0e6ef;border-radius:12px;padding:24px}article p{line-height:1.6}code{font-size:13px}dialog{border:1px solid #cbd5e1;border-radius:14px;padding:28px;max-width:520px;width:calc(100% - 32px);color:#172b4d}dialog::backdrop{background:#172b4d66}.close{float:right;font-size:22px}dt{color:#52627a;font-size:13px;margin-top:16px}dd{margin:5px 0}a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible{outline:3px solid #245bc4;outline-offset:3px}@media(max-width:1000px){aside{width:185px}main{padding:20px}.connection{display:none}}@media(max-width:700px){body{display:block}aside{width:100%;min-height:0;padding:16px;border-right:0}.brand{font-size:21px}.brand span{display:inline;margin-left:12px}nav{display:flex;margin-top:16px}.aside-note{display:none}main{padding:16px}header{padding:24px 0}h1{font-size:26px}.toolbar{padding:16px}.toolbar label{flex:1}.toolbar .check{flex-basis:100%}thead{display:none}table,tbody,tr,td{display:block}tr{padding:16px;border-bottom:1px solid #e0e6ef}td{padding:8px 0;border:0}td:first-child:before{content:attr(data-label) ': ';color:#52627a}.change{flex-wrap:wrap}.table-wrap{overflow:visible}}@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto}}
:root{--journal-row-height:48px}
@media(min-width:701px){
  main{padding:18px 24px}
  .demo{padding:7px 12px;font-size:12px}
  header{padding:18px 0}
  h1{font-size:25px;margin:4px 0 6px}
  .eyebrow{display:none}
  header #subtitle{font-size:13px}
  .toolbar{padding:12px 14px;gap:12px;border-radius:8px}
  .toolbar label{gap:4px;font-size:12px}
  .toolbar input:not([type=checkbox]),.toolbar select{min-height:36px;padding:6px 10px;font-size:13px}
  .hint{margin:9px 0;font-size:12px}
  .table-wrap{max-height:calc(100vh - 280px);overflow:auto;border-radius:8px}
  th{position:sticky;top:0;z-index:1;padding:10px 12px;box-shadow:0 1px 0 #e0e6ef}
  td{padding:5px 12px;height:var(--journal-row-height);font-size:13px}
  td small{margin-top:2px;font-size:12px;line-height:1.2}
  .deal{display:block;max-width:320px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:13px;line-height:1.3}
  .change{gap:7px;font-size:13px}
  .change svg{width:15px;height:15px}
  .badge{padding:4px 7px;font-size:12px;border-radius:4px}
  tbody tr:hover{background:#f6f9ff}
  .detail{padding:6px 8px}
}
:root .pagination{display:flex;gap:8px;align-items:center;margin-top:10px;flex-wrap:wrap}
.pagination .hint{margin-right:auto}
button:disabled{opacity:.5;cursor:default}
