@import"https://fonts.googleapis.com/css2?family=IBM+Plex+Mono:wght@500;600;700&family=IBM+Plex+Sans:wght@400;500;600;700&family=Saira+Condensed:wght@600;700;800&display=swap";:root{--steel: #d8ddd4;--oil: #16201f;--machine: #0f5f73;--signal: #f0b23a;--oxide: #9d3f2f;--paper: #f6f7f1;--white: #ffffff;--muted: #68706d;--line: rgba(22, 32, 31, .16);--line-strong: rgba(22, 32, 31, .32);--shadow: 0 22px 70px rgba(22, 32, 31, .12);--radius-lg: 28px;--radius-md: 18px;--radius-sm: 10px;--header-height: 88px;--font-display: "Saira Condensed", "Arial Narrow", sans-serif;--font-body: "IBM Plex Sans", system-ui, sans-serif;--font-mono: "IBM Plex Mono", ui-monospace, monospace}*{box-sizing:border-box;margin:0;padding:0}html{color:var(--oil);background:var(--steel);font-family:var(--font-body);font-size:16px}body{min-height:100dvh;color:var(--oil);background:linear-gradient(90deg,rgba(15,95,115,.08) 1px,transparent 1px) 0 0 / 42px 42px,linear-gradient(0deg,rgba(22,32,31,.06) 1px,transparent 1px) 0 0 / 42px 42px,radial-gradient(circle at top left,rgba(240,178,58,.18),transparent 34rem),var(--steel)}body.app-body{padding-top:var(--header-height)}body.public-body,body.login-body{padding-top:0}img{display:block;max-width:100%}a{color:inherit}button,input,select,textarea{font:inherit}button{cursor:pointer}:focus-visible{outline:3px solid var(--signal);outline-offset:3px}[x-cloak]{display:none!important}.main-header{position:fixed;inset:0 0 auto;z-index:1000;min-height:var(--header-height);border-bottom:1px solid var(--line-strong);background:#f6f7f1eb;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px)}.site-container{width:min(100% - 32px,1380px);min-height:var(--header-height);margin:0 auto;display:flex;align-items:center;justify-content:space-between;gap:24px}.logo-container{display:flex;align-items:center;gap:14px;min-width:0}.logo{width:76px;padding:8px;border:1px solid var(--line-strong);border-radius:18px;background:var(--white);box-shadow:0 12px 28px #16201f14}.brand-kicker{display:block;font-family:var(--font-mono);font-size:.66rem;font-weight:700;letter-spacing:.18em;text-transform:uppercase;color:var(--machine)}.brand-title{font-family:var(--font-display);font-size:clamp(1.45rem,2.8vw,2rem);font-weight:800;letter-spacing:.03em;line-height:.9;text-transform:uppercase}.brand-subtitle{margin-top:3px;font-size:.76rem;font-weight:600;color:var(--muted)}.menu-toggle{display:none;width:48px;height:48px;align-items:center;justify-content:center;flex-direction:column;gap:6px;border:1px solid var(--line-strong);border-radius:999px;background:var(--white)}.menu-toggle .bar{width:20px;height:2px;border-radius:999px;background:var(--oil);transition:transform .18s ease,opacity .18s ease}.menu-toggle.is-active .bar:nth-child(1){transform:translateY(8px) rotate(45deg)}.menu-toggle.is-active .bar:nth-child(2){opacity:0}.menu-toggle.is-active .bar:nth-child(3){transform:translateY(-8px) rotate(-45deg)}.nav-menu ul{display:flex;align-items:center;gap:10px;list-style:none}.nav-link{display:inline-flex;align-items:center;min-height:42px;padding:0 14px;border:1px solid transparent;border-radius:999px;background:transparent;color:var(--oil);font-family:var(--font-mono);font-size:.76rem;font-weight:700;letter-spacing:.04em;text-decoration:none;text-transform:uppercase;transition:background .16s ease,border-color .16s ease,transform .16s ease}.nav-link:hover{border-color:var(--line-strong);background:var(--white);transform:translateY(-1px)}.cta-button,.btn-note-create,.btn-action{display:inline-flex;align-items:center;justify-content:center;min-height:42px;padding:0 18px;border:1px solid rgba(22,32,31,.22);border-radius:999px;background:var(--oil);color:var(--paper)!important;font-family:var(--font-mono);font-size:.78rem;font-weight:700;letter-spacing:.04em;text-decoration:none;text-transform:uppercase;transition:transform .16s ease,box-shadow .16s ease,background .16s ease}.cta-button:hover,.btn-note-create:hover,.btn-action:hover{background:var(--machine);box-shadow:0 12px 26px #0f5f7338;transform:translateY(-1px)}.btn-action.secondary,.btn-note-create.secondary{background:var(--paper);color:var(--oil)!important}.btn-action.danger{background:var(--oxide)}.btn-action.success{background:#2f7351}.app-main{width:min(100% - 32px,1380px);margin:0 auto;padding:28px 0 56px}.dashboard-wrapper,.panel-page{position:relative;width:100%;padding:clamp(18px,3vw,34px);border:1px solid var(--line-strong);border-radius:var(--radius-lg);background:#f6f7f1e0;box-shadow:var(--shadow);overflow:hidden}.dashboard-wrapper:before,.panel-page:before{content:"";position:absolute;top:0;bottom:0;left:clamp(14px,2vw,24px);width:8px;background:repeating-linear-gradient(to bottom,var(--oil) 0,var(--oil) 1px,transparent 1px,transparent 14px);opacity:.28}.dashboard-wrapper>*,.panel-page>*{position:relative;z-index:1}.dashboard-header,.page-header{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;margin-bottom:18px;padding-left:22px}.page-title,.dashboard-header h1,.page-header h1{font-family:var(--font-display);font-size:clamp(2.4rem,7vw,5.8rem);font-weight:800;letter-spacing:.015em;line-height:.82;text-transform:uppercase}.page-kicker{margin-bottom:8px;color:var(--machine);font-family:var(--font-mono);font-size:.72rem;font-weight:700;letter-spacing:.16em;text-transform:uppercase}.page-note{max-width:680px;margin-top:12px;color:var(--muted);font-size:1rem;line-height:1.55}.flash-success,.alert-danger,.error-panel{width:100%;margin:14px 0;padding:14px 16px;border-radius:var(--radius-sm);font-weight:700}.flash-success{border:1px solid rgba(47,115,81,.24);background:#2f73511a;color:#255f43}.alert-danger,.error-panel{border:1px solid rgba(157,63,47,.26);background:#9d3f2f1a;color:var(--oxide)}.filter-form,.metric-grid,.rate-grid,.detail-grid{display:grid;width:100%;gap:12px}.filter-form{grid-template-columns:repeat(auto-fit,minmax(170px,1fr));margin:18px 0;padding-left:22px}input,select,textarea{width:100%;border:1px solid var(--line-strong);border-radius:var(--radius-sm);background:#ffffffd1;color:var(--oil);padding:12px 13px;transition:border-color .16s ease,box-shadow .16s ease,background .16s ease}textarea{min-height:92px;resize:vertical}input:focus,select:focus,textarea:focus{border-color:var(--machine);background:var(--white);box-shadow:0 0 0 4px #0f5f731f;outline:none}label{color:var(--oil);font-weight:700}.table-container{width:100%;margin-top:18px;border:1px solid var(--line-strong);border-radius:var(--radius-md);background:#ffffffb3;box-shadow:0 16px 42px #16201f14;overflow-x:auto}.table-title{padding:18px 18px 0;font-family:var(--font-display);font-size:1.8rem;line-height:1;text-transform:uppercase}.notes-table{width:100%;min-width:720px;border-collapse:collapse}.notes-table th,.notes-table td{padding:16px 18px;border-bottom:1px solid var(--line);text-align:left;vertical-align:middle}.notes-table th{color:var(--machine);font-family:var(--font-mono);font-size:.72rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase;background:#0f5f7312}.notes-table tr:last-child td{border-bottom:0}.notes-table tbody tr{transition:background .16s ease}.notes-table tbody tr:hover{background:#f0b23a1a}.text-right{text-align:right!important}.badge-folio{display:inline-flex;align-items:center;min-height:28px;padding:4px 9px;border:1px solid rgba(15,95,115,.3);border-radius:999px;background:#0f5f731a;color:var(--machine);font-family:var(--font-mono);font-size:.74rem;font-weight:700;letter-spacing:.04em;text-transform:uppercase}.client-name,.font-weight-bold{font-weight:700}.client-address,.muted{color:var(--muted)}.actions-group,.actions{display:flex;align-items:center;justify-content:flex-end;gap:9px;flex-wrap:wrap}.actions.align-start{justify-content:flex-start}.btn-icon{display:inline-flex;align-items:center;justify-content:center;min-height:34px;padding:0 11px;border:1px solid var(--line-strong);border-radius:999px;background:var(--paper);color:var(--oil);font-family:var(--font-mono);font-size:.74rem;font-weight:700;text-decoration:none;text-transform:uppercase}.btn-icon:hover{border-color:#0f5f736b;background:#0f5f731a}.btn-icon.inline-button{border-color:var(--line-strong)}.empty-state{padding:42px 18px!important;color:var(--muted);text-align:center!important}.pagination-wrapper{padding:16px 18px}.pagination-wrapper nav svg{width:20px}.metric-grid{grid-template-columns:repeat(auto-fit,minmax(150px,1fr));margin-top:18px;padding-left:22px}.metric-card,.detail-card,.rate-card,.note-panel{border:1px solid var(--line-strong);border-radius:var(--radius-md);background:#ffffffb8;box-shadow:0 12px 28px #16201f12}.metric-card{padding:16px}.metric-card strong,.rate-card strong,.detail-card strong{display:block;color:var(--muted);font-family:var(--font-mono);font-size:.72rem;letter-spacing:.08em;text-transform:uppercase}.metric-value{margin-top:8px;font-family:var(--font-display);font-size:2.6rem;font-weight:800;line-height:.9}.rate-grid,.detail-grid{grid-template-columns:repeat(auto-fit,minmax(220px,1fr));margin-top:18px;padding-left:22px}.rate-card,.detail-card{padding:15px}.rate-card span,.detail-card span{display:block;margin-top:7px;font-size:1.08rem;font-weight:700}.note-panel{margin-top:18px;margin-left:22px;padding:16px;border-left:6px solid var(--machine)}.note-panel p{margin-top:8px;white-space:pre-line;line-height:1.55}.modal-backdrop{position:fixed;inset:0;z-index:2000;display:flex;align-items:center;justify-content:center;padding:20px;background:#16201f8c}.modal-box{width:min(100%,420px);padding:22px;border:1px solid var(--line-strong);border-radius:var(--radius-md);background:var(--paper);box-shadow:var(--shadow)}.modal-box h3{font-family:var(--font-display);font-size:2rem;line-height:1;text-transform:uppercase}.modal-box p{margin:10px 0 16px;line-height:1.5}.login-shell,.public-shell{min-height:100dvh;display:grid;place-items:center;padding:24px}.login-card,.public-card,.legal-card{position:relative;width:min(100%,560px);padding:clamp(24px,6vw,44px);border:1px solid var(--line-strong);border-radius:var(--radius-lg);background:#f6f7f1eb;box-shadow:var(--shadow);overflow:hidden}.login-card:before,.public-card:before,.legal-card:before{content:"";position:absolute;inset:0 auto 0 0;width:12px;background:repeating-linear-gradient(to bottom,var(--oil) 0 1px,transparent 1px 12px);opacity:.25}.login-card>*,.public-card>*,.legal-card>*{position:relative;z-index:1}.login-card h1,.public-card h1,.legal-card h1{font-family:var(--font-display);font-size:clamp(3rem,10vw,5.4rem);line-height:.82;text-transform:uppercase}.login-card p,.public-card p,.legal-card p{margin-top:12px;color:var(--muted);line-height:1.6}.form-login,.public-form{display:grid;gap:14px;margin-top:24px}.legal-card{width:min(100%,900px)}.legal-card h2{margin-top:24px;color:var(--machine);font-family:var(--font-display);font-size:1.8rem;line-height:1;text-transform:uppercase}.public-meta{display:grid;gap:10px;margin:18px 0}.close-choice{display:grid;gap:12px}.close-choice label{margin-top:8px}@media(max-width:860px){:root{--header-height: 76px}.site-container{width:min(100% - 24px,1380px)}.logo{width:60px;border-radius:14px}.brand-subtitle,.brand-kicker{display:none}.menu-toggle{display:flex}.nav-menu{position:fixed;inset:var(--header-height) 12px auto;max-height:calc(100dvh - var(--header-height) - 16px);padding:16px;border:1px solid var(--line-strong);border-radius:24px;background:#f6f7f1fa;box-shadow:var(--shadow);opacity:0;pointer-events:none;transform:translateY(-8px);transition:opacity .18s ease,transform .18s ease}.nav-menu.active{opacity:1;pointer-events:auto;transform:translateY(0)}.nav-menu ul{align-items:stretch;flex-direction:column}.nav-link,.cta-button{width:100%;justify-content:center}.app-main{width:min(100% - 24px,1380px);padding-top:18px}.dashboard-header,.page-header{align-items:stretch;flex-direction:column}.filter-form,.metric-grid,.rate-grid,.detail-grid,.note-panel{margin-left:0;padding-left:18px}}@media(max-width:560px){.dashboard-wrapper,.panel-page,.login-card,.public-card,.legal-card{border-radius:20px}.brand-title{font-size:1.15rem}.page-title,.dashboard-header h1,.page-header h1{font-size:3rem}.actions,.actions-group{justify-content:flex-start}.btn-note-create,.btn-action{width:100%}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}
