@import "https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700&family=Montserrat:wght@600;700;800&display=swap";:root{--gold:#705d00;--gold-strong:#554500;--gold-bright:#8a7200;--gold-soft:#fee17a;--teal:#006b5c;--teal-strong:#005045;--mint:#89f6de;--mint-soft:#d3fbf0;--color-bg:#f8f9ff;--color-surface:#fff;--color-surface-low:#eff4ff;--color-surface-container:#e6eeff;--color-border:#e3e8f4;--color-text:#121c2a;--color-text-muted:#5b6472;--color-primary:var(--teal);--color-primary-hover:var(--teal-strong);--color-danger:#ba1a1a;--color-danger-soft:#ffdad6;--color-success:#006b5c;--color-warning:#b54708;--radius-sm:.375rem;--radius:.5rem;--radius-lg:1rem;--shadow-sm:0 1px 2px #121c2a0d, 0 1px 4px #121c2a0a;--shadow:0 4px 12px #121c2a14;--shadow-lg:0 12px 32px #121c2a1f;color:var(--color-text);background:var(--color-bg);font-family:Inter,system-ui,-apple-system,sans-serif;font-size:15px}*{box-sizing:border-box}body{-webkit-font-smoothing:antialiased;margin:0}a{color:var(--gold);text-decoration:none;transition:color .15s}a:hover{color:var(--gold-strong)}h1,h2,h3{letter-spacing:-.02em;color:var(--color-text);margin:0 0 .5rem;font-family:Montserrat,Inter,sans-serif}h1{font-size:1.9rem;font-weight:800}h2{font-size:1.25rem;font-weight:700}h3{font-size:1.05rem;font-weight:700}.form-group-title{text-transform:uppercase;letter-spacing:.08em;color:var(--gold);border-bottom:1px solid var(--color-border);margin:0 0 .85rem;padding-bottom:.4rem;font-family:Montserrat,Inter,sans-serif;font-size:.72rem;font-weight:700}button,.btn{font:inherit;cursor:pointer;border-radius:var(--radius);background:var(--teal);color:#fff;border:none;padding:.6rem 1.15rem;font-weight:600;transition:background .18s,transform .12s,box-shadow .18s}button:hover:not(:disabled){background:var(--teal-strong);box-shadow:var(--shadow);transform:translateY(-1px)}button:active:not(:disabled){box-shadow:none;transform:translateY(0)}button:disabled{opacity:.5;cursor:default}button.gold{background:var(--gold)}button.gold:hover:not(:disabled){background:var(--gold-strong)}button.secondary{background:var(--color-surface);color:var(--color-text);border:1px solid var(--color-border);box-shadow:var(--shadow-sm)}button.secondary:hover:not(:disabled){background:var(--color-surface-low);border-color:#cdd6ea}button.danger{color:var(--color-danger);border:1px solid var(--color-danger-soft);background:0 0}button.danger:hover:not(:disabled){box-shadow:none;background:#fff5f4}input,select,textarea{font:inherit;border:1px solid var(--color-border);border-radius:var(--radius);background:var(--color-surface);color:var(--color-text);width:100%;padding:.55rem .75rem;transition:border-color .15s,box-shadow .15s}textarea{resize:vertical;min-height:3rem}input:focus,select:focus,textarea:focus{border-color:var(--teal);outline:none;box-shadow:0 0 0 3px #006b5c26}label{color:var(--color-text-muted);margin-bottom:.35rem;font-size:.82rem;font-weight:600;display:block}.field{margin-bottom:.9rem}.card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);padding:1.4rem;transition:box-shadow .2s,transform .2s}.card.hoverable:hover{box-shadow:var(--shadow);transform:translateY(-2px)}table{border-collapse:separate;border-spacing:0;background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);width:100%;box-shadow:var(--shadow-sm);overflow:hidden}th,td{text-align:left;border-bottom:1px solid var(--color-border);padding:.8rem 1rem;font-size:.92rem}th{background:var(--color-surface-low);color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.06em;font-size:.75rem;font-weight:600}tbody tr{transition:background .12s}tbody tr:hover{background:var(--color-surface-low)}tbody tr:last-child td{border-bottom:none}.badge{text-transform:uppercase;letter-spacing:.05em;white-space:nowrap;border-radius:999px;padding:.22rem .6rem;font-size:.68rem;font-weight:700;display:inline-block}.badge-published,.badge-converted,.badge-active,.badge-enr-active,.badge-doc-approved,.badge-prog-completed,.badge-paid{background:var(--mint-soft);color:var(--teal-strong)}.badge-new,.badge-pending,.badge-pending_docs,.badge-enr-pending_docs,.badge-doc-pending,.badge-prog-available{color:#1a4fb8;background:#e3edff}.badge-engaged,.badge-negotiating,.badge-in_progress,.badge-docs_approved,.badge-enr-docs_approved,.badge-prog-in_progress,.badge-prog-awaiting_assessment,.badge-prog-awaiting_admin,.badge-coming_soon,.badge-sig-sent,.badge-sig-pending{color:#92610a;background:#fef3dc}.badge-sig-signed{background:var(--mint-soft);color:var(--teal-strong)}.badge-sig-refused,.badge-sig-expired,.badge-sig-error,.badge-archived,.badge-lost,.badge-cancelled,.badge-enr-cancelled,.badge-doc-rejected,.badge-overdue{background:var(--color-danger-soft);color:#93000a}.badge-draft,.badge-unlisted,.badge-prog-locked{color:#4c5566;background:#eceef3}.sidebar{background:var(--color-surface);border-right:1px solid var(--color-border);flex-direction:column;gap:.3rem;width:240px;min-height:100vh;padding:1.4rem 1rem;display:flex;position:sticky;top:0}.sidebar .brand{color:var(--gold);font-family:Montserrat,sans-serif;font-size:1.3rem;font-weight:800;line-height:1.1}.sidebar .brand small{letter-spacing:.14em;color:var(--color-text-muted);margin-top:.3rem;font-family:Inter,sans-serif;font-size:.62rem;font-weight:700;display:block}.sidebar nav{flex-direction:column;gap:.25rem;margin-top:1.6rem;display:flex}.nav-item{border-radius:var(--radius);color:var(--color-text);align-items:center;gap:.6rem;padding:.6rem .85rem;font-weight:500;text-decoration:none;transition:background .15s,color .15s,transform .12s;display:flex}.nav-item:hover{background:var(--color-surface-low);color:var(--color-text);transform:translate(2px)}.nav-item.active{background:var(--mint);color:var(--teal-strong);font-weight:700}@keyframes fadeInUp{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.page{animation:.28s ease-out fadeInUp}@keyframes spin{to{transform:rotate(360deg)}}.spinner{border:3px solid var(--color-surface-container);border-top-color:var(--teal);border-radius:50%;width:22px;height:22px;margin:2rem auto;animation:.7s linear infinite spin}@keyframes shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}.skeleton{border-radius:var(--radius);background:linear-gradient(90deg, var(--color-surface-container) 25%, var(--color-surface-low) 50%, var(--color-surface-container) 75%);background-size:200% 100%;animation:1.4s infinite shimmer}.error{color:var(--color-danger);border:1px solid var(--color-danger-soft);border-radius:var(--radius);background:#fff5f4;padding:.6rem .9rem;font-size:.9rem}.muted{color:var(--color-text-muted)}.stat-label{text-transform:uppercase;letter-spacing:.08em;color:var(--color-text-muted);font-size:.72rem;font-weight:700}.stat-value{font-family:Montserrat,sans-serif;font-size:1.6rem;font-weight:800}.avatar{color:#fff;background:linear-gradient(135deg, var(--teal), var(--gold));letter-spacing:.02em;border-radius:50%;flex-shrink:0;place-items:center;width:64px;height:64px;font-family:Montserrat,sans-serif;font-size:1.4rem;font-weight:800;display:grid}.progress-track{background:var(--color-surface-container);border-radius:999px;height:6px;overflow:hidden}.progress-fill{background:var(--teal);border-radius:999px;height:100%;transition:width .5s}.chat-container{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);height:calc(100vh - 120px);max-height:800px;box-shadow:var(--shadow);flex-direction:column;display:flex;overflow:hidden}.chat-header{background:var(--color-surface-low);border-bottom:1px solid var(--color-border);align-items:center;gap:.8rem;padding:1rem 1.2rem;display:flex}.chat-messages{background:var(--color-bg);flex-direction:column;flex:1;gap:.6rem;padding:1.2rem;display:flex;overflow-y:auto}.chat-bubble{border-radius:var(--radius-lg);max-width:75%;padding:.7rem 1rem;animation:.2s ease-out fadeInUp;position:relative}.chat-bubble-mine{background:var(--teal);color:#fff;border-bottom-right-radius:var(--radius-sm);align-self:flex-end}.chat-bubble-other{background:var(--color-surface);color:var(--color-text);border:1px solid var(--color-border);border-bottom-left-radius:var(--radius-sm);align-self:flex-start}.chat-sender{text-transform:uppercase;letter-spacing:.05em;color:var(--gold);margin-bottom:.2rem;font-size:.7rem;font-weight:700;display:block}.chat-body{white-space:pre-wrap;word-break:break-word;margin:0;font-size:.92rem;line-height:1.5}.chat-time{opacity:.7;text-align:right;margin-top:.3rem;font-size:.68rem;display:block}.chat-bubble-mine .chat-time{color:#ffffffb3}.chat-input-area{border-top:1px solid var(--color-border);background:var(--color-surface);gap:.6rem;padding:.8rem 1.2rem;display:flex}.chat-input-area textarea{min-height:2.4rem;max-height:6rem}.chat-closed-banner{text-align:center;background:var(--color-surface-low);border-top:1px solid var(--color-border);color:var(--color-text-muted);padding:.9rem;font-size:.88rem;font-weight:500}.chat-empty{flex-direction:column;flex:1;justify-content:center;align-items:center;gap:.5rem;display:flex}.chat-empty-icon{opacity:.5;font-size:2.5rem}.chat-avatar{color:#fff;background:linear-gradient(135deg, var(--teal), var(--gold));border-radius:50%;flex-shrink:0;place-items:center;width:40px;height:40px;font-size:1rem;font-weight:700;display:grid}@keyframes toast-slide-up{0%{opacity:0;transform:translateY(20px)scale(.95)}to{opacity:1;transform:translateY(0)scale(1)}}
