:root{--ink:#202124;--paper:#fffdf8;--bg:#f5f1e8;--line:#d9d1c2;--muted:#716d65;--accent:#7b2f24;--gold:#a66d19;--green:#315c50;--shadow:0 12px 32px #2b241714}*{box-sizing:border-box}body{margin:0;background:linear-gradient(#b8ae9b18 1px,transparent 1px),var(--bg);background-size:100% 34px;color:var(--ink);font:14px/1.5 Inter,ui-sans-serif,system-ui,sans-serif}button,input,select,textarea{font:inherit}button{cursor:pointer}h1,h2,p{margin:0}h1{font:36px/1.1 Georgia,serif}h2{font:22px/1.2 Georgia,serif}a{color:var(--accent)}small{color:var(--muted)}.app-shell{min-height:100vh}.sidebar{position:fixed;inset:0 auto 0 0;width:250px;display:flex;flex-direction:column;padding:28px 20px;background:var(--ink);color:#fff}.brand{display:flex;gap:12px;align-items:center;border:0;background:transparent;color:#fff;text-align:left}.brand span,.seal{display:grid;place-items:center;width:58px;height:58px;border:1px solid #d7c3a1;border-radius:50%;font:700 17px Georgia,serif}.brand strong{font:20px/1.05 Georgia,serif}.sidebar nav{display:grid;gap:4px;margin-top:38px}.sidebar nav button{padding:11px 14px;border:0;border-left:3px solid transparent;background:transparent;color:#c9c6be;text-align:left}.sidebar nav button:hover,.sidebar nav button.active{border-left-color:#d7c3a1;background:#ffffff0d;color:#fff}.profile{display:grid;grid-template-columns:38px 1fr;gap:10px;align-items:center;margin-top:auto;padding-top:18px;border-top:1px solid #ffffff24}.profile>span{display:grid;place-items:center;width:38px;height:38px;border-radius:50%;background:var(--accent)}.profile div{display:grid}.profile small{color:#aaa}.profile button{grid-column:1/-1;padding:5px 0;border:0;background:transparent;color:#d7c3a1;text-align:left}.main{min-height:100vh;margin-left:250px}.page{max-width:1280px;margin:auto;padding:42px}.page-head{display:flex;justify-content:space-between;align-items:end;margin-bottom:26px;padding-bottom:18px;border-bottom:2px solid var(--ink)}.eyebrow{margin-bottom:5px;color:var(--accent);font-size:11px;font-weight:800;letter-spacing:.12em;text-transform:uppercase}.card{padding:20px;border:1px solid var(--line);border-radius:7px;background:var(--paper);box-shadow:var(--shadow)}.metrics{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin-bottom:18px}.metric{padding:18px;border-top:3px solid var(--accent);background:var(--paper);box-shadow:var(--shadow)}.metric strong{display:block;font:30px Georgia,serif}.toolbar{display:flex;justify-content:space-between;margin-bottom:14px}.toolbar input{width:60%}.toolbar select{width:35%}input,select,textarea{width:100%;padding:11px 12px;border:1px solid var(--line);border-radius:5px;background:#fff;color:var(--ink)}textarea{resize:vertical}.table-wrap{padding:0;overflow:visible}table{width:100%;border-collapse:collapse}th,td{padding:14px;border-bottom:1px solid var(--line);text-align:left}th{background:#eee7db;color:#534b40;font-size:11px;text-transform:uppercase}tbody tr{cursor:pointer}tbody tr:hover{background:#fbf6ec}td strong,td small{display:block}.badge{display:inline-block;padding:5px 8px;border-radius:30px;background:#eee2ca;color:#654c20;font-size:11px;font-weight:800}.badge.urgent{background:#f1ddda;color:var(--accent)}.badge.active{background:#e0eee8;color:var(--green)}.row-menu{width:54px;position:relative}.row-menu details{position:relative}.row-menu summary{list-style:none;padding:7px;border-radius:4px;text-align:center;font-weight:800}.row-menu summary::-webkit-details-marker{display:none}.row-menu details[open] summary{background:#eee7db}.row-menu details div{position:absolute;z-index:5;right:0;top:34px;width:150px;display:grid;padding:6px;border:1px solid var(--line);border-radius:6px;background:#fff;box-shadow:var(--shadow)}.row-menu details button{padding:8px;border:0;background:transparent;color:var(--ink);text-align:left}.row-menu details button:hover{background:#f5f1e8}.matter-meta,.tabs{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.matter-meta{margin:-12px 0 22px;color:var(--muted)}.matter-meta>span:not(.badge){padding-right:8px;border-right:1px solid var(--line)}.tabs{margin-bottom:18px;border-bottom:1px solid var(--line)}.tabs button{padding:10px 14px;border:0;border-bottom:3px solid transparent;background:transparent;text-transform:capitalize}.tabs button.active{border-color:var(--accent);color:var(--accent);font-weight:800}.split{display:grid;grid-template-columns:1fr 1fr;gap:18px}.form{display:grid;gap:15px}.form-grid{grid-template-columns:1fr 1fr}.form-grid h2,.form-grid .wide,.form-grid .error{grid-column:1/-1}label{display:grid;gap:6px}label>span{color:var(--muted);font-size:11px;font-weight:800;text-transform:uppercase}.check{display:flex;align-items:center;gap:8px}.check input{width:auto}.check span{color:var(--ink);font-size:14px;text-transform:none}.primary,.secondary,.danger,.ledger-list button,.button-link,.picker button,.audit-filter button,.form>button{display:inline-block;padding:10px 13px;border:1px solid var(--ink);border-radius:5px;background:var(--ink);color:#fff;text-decoration:none}.secondary,.ledger-list button,.picker button,.audit-filter button,.form>button:not(.primary):not(.danger){background:var(--paper);color:var(--ink)}.danger{border-color:var(--accent);background:var(--accent)}button:disabled,input:disabled,select:disabled{cursor:not-allowed;opacity:.55}.ledger{display:grid;grid-template-columns:150px 1fr;margin:18px 0 0}.ledger dt,.ledger dd{margin:0;padding:11px 0;border-bottom:1px solid var(--line)}.ledger dt{color:var(--muted)}.ledger-list{display:grid;align-content:start;padding:0;overflow:hidden}.ledger-list>h2,.ledger-list>header{padding:18px 20px 12px}.ledger-list>header{display:flex;justify-content:space-between;align-items:center;gap:12px}.ledger-list>header>div,.row-actions{display:flex;gap:6px;align-items:center}.ledger-row{width:100%;display:flex;justify-content:space-between;gap:18px;align-items:center;padding:14px 20px;border:0;border-top:1px solid var(--line);border-radius:0;background:transparent;color:var(--ink);text-align:left}.ledger-row:hover,.ledger-row.selected{background:#fbf6ec}.ledger-row>div:first-child,.ledger-row>span{min-width:0;display:grid}.ledger-row p{margin:2px 0;color:#4e4b46;white-space:pre-wrap}.ledger-row button{flex:none;padding:6px 9px}.row-actions a{padding:5px 8px;border:1px solid var(--line);border-radius:4px;text-decoration:none}.inline-add{display:grid;grid-template-columns:1fr auto;gap:8px;padding:14px 20px;border-top:1px solid var(--line)}.picker{display:grid;grid-template-columns:1fr auto;gap:8px}.picker button{white-space:nowrap}.party-picker{display:grid;gap:9px;padding:10px 12px;border:1px solid var(--line);border-radius:5px;background:#fff}.party-search{display:grid;grid-template-columns:1fr auto;gap:8px}.party-search button,.selected-party button,.party-results button{padding:8px 10px;border:1px solid var(--line);border-radius:4px;background:var(--paper);color:var(--ink)}.party-search button{white-space:nowrap}.selected-parties{display:grid;gap:6px}.selected-party{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:8px 10px;border-radius:4px;background:#f7f3ea}.selected-party>span,.party-results button>span:first-child{min-width:0;display:grid;text-align:left}.party-results{display:grid;max-height:260px;overflow:auto;border-top:1px solid var(--line)}.party-results>small{padding:10px 2px 2px}.party-results button{width:100%;display:flex;justify-content:space-between;align-items:center;gap:14px;border-width:0 0 1px;border-radius:0;background:#fff;text-align:left}.party-results button:hover{background:#fbf6ec}.party-results button>span:last-child{color:var(--accent);font-weight:800}.party-manager{display:grid;grid-template-columns:1fr 1fr;gap:14px}.party-manager .party-group{min-width:0}.party-create{grid-column:1/-1}.party-create>header{display:flex;justify-content:space-between;align-items:center;margin-bottom:15px}.party-create>header button{padding:7px 10px;border:1px solid var(--line);border-radius:4px;background:var(--paper)}.ledger-row.unread{border-left:4px solid var(--accent);background:#fbf6ec}.notice{margin:0 0 15px;padding:10px;border-left:3px solid var(--gold);background:#f4ecdc;color:#655a47}.status{margin-bottom:16px}.error{color:var(--accent);font-weight:700}.empty{padding:30px;color:var(--muted);text-align:center}.timeline{display:grid;padding:20px}.timeline h2{margin-bottom:12px}.timeline-row{display:grid;grid-template-columns:20px 1fr;gap:12px}.timeline-row>span{width:10px;height:10px;margin-top:6px;border-radius:50%;background:var(--accent);box-shadow:0 0 0 5px #7b2f2418}.timeline-row>div{display:grid;padding-bottom:22px}.schedule .ledger-row{display:grid;grid-template-columns:100px 1fr auto}.schedule time{color:var(--accent);font-weight:700}.schedule .done{opacity:.5;text-decoration:line-through}.audit-filter{display:grid;grid-template-columns:2fr 1.5fr 1fr 1fr auto auto;gap:12px;align-items:end;margin-bottom:18px}.audit-layout{grid-template-columns:minmax(260px,.75fr) 1.5fr}.modal-backdrop{position:fixed;z-index:20;inset:0;display:grid;place-items:center;padding:24px;background:#17171799}.modal{width:min(680px,100%);max-height:90vh;overflow:auto}.modal>header{display:flex;justify-content:space-between;align-items:center;margin-bottom:18px}.modal>header button{width:36px;height:36px;border:0;border-radius:50%;background:#eee7db;font-size:24px}.login-page{min-height:100vh;display:grid;grid-template-columns:1.1fr .9fr}.login-intro{display:flex;flex-direction:column;justify-content:center;padding:9vw;background:var(--ink);color:#fff}.login-intro .seal{width:76px;height:76px;margin-bottom:34px}.login-intro h1{max-width:600px;font-size:55px}.login-intro>p:last-child{max-width:500px;margin-top:18px;color:#c9c6be}.login-card{align-self:center;width:min(450px,calc(100% - 48px));margin:auto;display:grid;gap:18px;padding:30px}@media(max-width:1000px){.sidebar{position:static;width:auto}.sidebar nav{display:flex;flex-wrap:wrap;margin-top:20px}.profile{display:none}.main{margin:0}.page{padding:28px 18px}.metrics,.split,.form-grid,.audit-filter{grid-template-columns:1fr 1fr}.login-page{grid-template-columns:1fr}.login-intro{padding:50px 24px}.login-intro h1{font-size:38px}.login-card{margin:30px auto}}@media(max-width:650px){.metrics,.split,.form-grid,.audit-filter,.audit-layout,.party-manager{grid-template-columns:1fr}.page-head{align-items:start}.table-wrap{overflow:auto}.toolbar{display:grid;gap:10px}.toolbar input,.toolbar select{width:100%}.ledger{grid-template-columns:1fr}.ledger dt{padding-bottom:0;border:0}.schedule .ledger-row{grid-template-columns:1fr}.login-intro{display:none}.login-page{display:flex}.login-card{align-self:center}}
