:root{--gold: #c9a157;--gold-light: #e8c070;--gold-soft: rgba(201, 161, 87, .12);--gold-border: rgba(201, 161, 87, .3);--sidebar-bg: #0f0b07;--sidebar-border: rgba(255, 255, 255, .07);--sidebar-text: rgba(255, 255, 255, .65);--sidebar-text-strong: #ffffff;--sidebar-hover: rgba(255, 255, 255, .07);--app-bg: #f7f3ed;--header-bg: #ffffff;--header-border: #e8e0d6;--card-bg: #ffffff;--card-border: #e8dfd3;--card-shadow: 0 1px 3px rgba(38, 24, 6, .06), 0 8px 24px rgba(38, 24, 6, .05);--card-shadow-hover: 0 4px 12px rgba(38, 24, 6, .1), 0 16px 40px rgba(38, 24, 6, .08);--text: #13100c;--text-dim: #6b6259;--text-soft: #9a9089;--danger: #b34f43;--danger-soft: rgba(179, 79, 67, .1);--success: #4a8c5c;--success-soft: rgba(74, 140, 92, .1);--radius: 14px;--font-ui: "Outfit", system-ui, sans-serif;--font-display: "Playfair Display", Georgia, serif;--font-serif: "EB Garamond", Georgia, serif}*,*:before,*:after{box-sizing:border-box}html,body,#root{min-height:100%}body{margin:0;font-family:var(--font-ui);color:var(--text);background:var(--app-bg)}button,input,select,textarea{font:inherit}.login-root{display:flex;min-height:100vh}.login-brand{position:relative;width:44%;min-width:360px;background:#0b0b12;color:#fff;overflow:hidden;display:flex;flex-direction:column}.login-geo{position:absolute;inset:0;pointer-events:none}.login-geo-grid{position:absolute;inset:0;background-image:linear-gradient(rgba(255,255,255,.025) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.025) 1px,transparent 1px);background-size:44px 44px}.login-geo-ring{position:absolute;border-radius:999px;border:1px solid rgba(201,161,87,.07)}.login-geo-ring-one{width:520px;height:520px;right:-180px;bottom:-180px}.login-geo-ring-two{width:340px;height:340px;right:-70px;bottom:-60px;border-color:#c9a1570d}.login-geo-dot{position:absolute;border-radius:999px;background:var(--gold)}.login-geo-dot-one{width:8px;height:8px;right:88px;top:28%;opacity:.55}.login-geo-dot-two{width:4px;height:4px;right:144px;top:54%;opacity:.35}.login-geo-glow{position:absolute;width:320px;height:320px;right:-70px;bottom:-80px;border-radius:999px;background:radial-gradient(circle,rgba(201,161,87,.1) 0%,transparent 70%)}.login-brand-inner{position:relative;z-index:1;flex:1;display:flex;flex-direction:column;justify-content:center;padding:56px 50px}.brand-logo-row{display:flex;align-items:center;gap:12px;margin-bottom:56px}.brand-mark{width:38px;height:38px;display:grid;place-items:center;border-radius:10px;background:#c9a15724;color:var(--gold);font-family:var(--font-display);font-size:24px;font-weight:700;border:1px solid rgba(201,161,87,.28)}.brand-mark.small{width:30px;height:30px;font-size:18px;border-radius:8px}.brand-name{font-size:22px;font-weight:700;letter-spacing:-.04em}.login-headline{margin:0 0 18px;font-size:44px;line-height:1.05;letter-spacing:-.05em;font-weight:800}.login-headline-accent{color:var(--gold)}.login-subheadline{margin:0;max-width:310px;line-height:1.65;color:#ffffff7a;font-size:15px}.login-pill-row{display:flex;flex-wrap:wrap;gap:8px;margin-top:34px}.login-pill{display:inline-flex;align-items:center;padding:7px 12px;border-radius:999px;background:#22252f;border:1px solid #383c49;color:#fff;font-size:12px}.login-brand-footer{position:relative;z-index:1;padding:22px 50px;color:#ffffff38;font-size:12px}.login-form-panel{flex:1;display:flex;align-items:center;justify-content:center;padding:48px 40px;background:#f9f9f7}.login-form-inner{width:100%;max-width:390px}.login-form-header{margin-bottom:38px}.login-eyebrow{display:inline-flex;align-items:center;padding:5px 11px;border-radius:999px;background:#f1e4c8;border:1px solid #d8b97c;color:#5b3b00;text-transform:uppercase;letter-spacing:.1em;font-size:11px;font-weight:600;margin-bottom:16px}.login-title{margin:0 0 8px;font-size:32px;line-height:1.15;letter-spacing:-.04em;font-weight:700}.login-title-copy{margin:0;color:#8f8b84;line-height:1.6}.segmented-control{display:inline-flex;align-items:center;gap:3px;padding:4px;border-radius:999px;background:#ede5d9;border:1px solid #dfd4c4;margin-bottom:24px}.login-auth-toggle{margin-bottom:24px}.login-help-copy{font-size:12px;color:var(--text-soft);line-height:1.5;margin-top:-8px}.login-form .field input,.login-form .field select{padding:9px 12px;font-size:14px;border-radius:10px;background:#fff;border-color:#e0d9ce}.login-form .field label{font-size:13px;color:var(--text-dim);font-weight:500}.login-form{display:flex;flex-direction:column;gap:12px}.submit-btn,.primary-btn,.secondary-btn,.header-chip,.header-logout,.text-btn{border:none;cursor:pointer}.submit-btn{width:100%;border-radius:11px;padding:12px 16px;background:#121212;color:#fff;font-weight:600;font-size:14px;transition:opacity .14s,transform .1s}.submit-btn:hover:not(:disabled){opacity:.86}.submit-btn:active:not(:disabled){transform:scale(.99)}.submit-btn:disabled{opacity:.45;cursor:not-allowed}.shell{display:flex;min-height:100vh}.shell.sidebar-collapsed .sidebar{width:72px}.shell.sidebar-collapsed .sidebar-head{justify-content:center;padding:0}.shell.sidebar-collapsed .sidebar-nav{padding:8px 10px}.shell.sidebar-collapsed .nav-link{justify-content:center;padding:10px 0}.shell.sidebar-collapsed .sidebar-foot{padding:10px 4px 14px}.sidebar{width:224px;background:var(--sidebar-bg);color:#fff;display:flex;flex-direction:column;transition:width .18s ease}.sidebar-head{height:60px;display:flex;align-items:center;gap:10px;padding:0 16px;border-bottom:1px solid var(--sidebar-border)}.sidebar-logo-name{font-size:16px;font-weight:700;letter-spacing:-.04em}.sidebar-nav{flex:1;padding:8px;display:flex;flex-direction:column}.section-label{padding:10px 10px 8px;text-transform:uppercase;letter-spacing:.1em;font-size:10px;color:#ffffff3d;font-weight:700}.nav-link{display:flex;align-items:center;gap:11px;padding:9px 10px;border-radius:9px;color:var(--sidebar-text);text-decoration:none;font-size:13.5px;font-weight:500;transition:background .12s ease,color .12s ease}.nav-link:hover{background:var(--sidebar-hover);color:var(--sidebar-text-strong)}.nav-link.active{background:#c9a15724;color:var(--gold);font-weight:600}.nav-icon{width:18px;display:flex;align-items:center;justify-content:center;flex-shrink:0}.sidebar-foot{margin-top:auto;padding:10px 8px 14px;border-top:1px solid var(--sidebar-border);display:flex;flex-direction:column;gap:6px}.sidebar-profile-link{display:flex;align-items:center;gap:10px;padding:8px;border-radius:10px;text-decoration:none;color:#c8c4be;transition:background .12s;cursor:pointer}.sidebar-profile-link:hover{background:#ffffff0f;color:#f1ede5}.sidebar-profile-link.active{background:#ffffff14;color:#f1ede5}.sidebar-profile-link.collapsed{justify-content:center;padding:8px 0}.sidebar-profile-avatar{width:30px;height:30px;border-radius:50%;background:var(--gold);color:#1a1200;font-size:11px;font-weight:700;display:flex;align-items:center;justify-content:center;flex-shrink:0}.sidebar-profile-info{flex:1;min-width:0}.sidebar-profile-name{font-size:12px;font-weight:600;color:#f1ede5;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.sidebar-profile-email{font-size:10px;color:#8f8b94;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.sidebar-profile-icon{flex-shrink:0;color:#5a5660}.profile-page{display:flex;flex-direction:column;gap:0;max-width:860px}.profile-hero{display:flex;align-items:center;gap:20px;padding:24px 28px;border-radius:16px;background:#fff;border:1px solid var(--card-border);box-shadow:var(--card-shadow);margin-bottom:24px}.profile-hero-bg{display:none}.profile-hero-body{display:contents}.profile-hero-avatar{width:56px;height:56px;border-radius:50%;background:linear-gradient(135deg,var(--gold) 0%,#e8c070 100%);color:#1a1200;font-family:var(--font-display);font-size:20px;font-weight:700;display:flex;align-items:center;justify-content:center;flex-shrink:0;box-shadow:0 0 0 3px #c9a15733}.profile-hero-text{display:flex;flex-direction:column;gap:3px}.profile-hero-name{margin:0;font-size:20px;font-weight:700;color:var(--text);letter-spacing:-.03em;line-height:1.15}.profile-hero-email{margin:0;font-size:13px;color:var(--text-soft)}.profile-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px;align-items:start}.profile-panel{border-radius:16px;background:#fff;border:1px solid #ebe4d9;overflow:hidden;box-shadow:0 2px 12px #2618060d}.profile-panel-header{display:flex;align-items:center;gap:8px;padding:16px 20px;border-bottom:1px solid #ebe4d9;font-size:11px;font-weight:700;letter-spacing:.07em;text-transform:uppercase;color:var(--text-dim)}.profile-panel-icon{color:var(--gold)}.profile-detail-list{display:flex;flex-direction:column}.profile-detail-row{display:flex;align-items:flex-start;gap:12px;padding:14px 20px;border-bottom:1px solid #f0ece5}.profile-detail-row:last-child{border-bottom:none}.profile-detail-icon-wrap{width:28px;height:28px;border-radius:8px;background:#faf7f2;border:1px solid #ebe4d9;display:flex;align-items:center;justify-content:center;flex-shrink:0;color:var(--text-dim);margin-top:1px}.profile-detail-body{display:flex;flex-direction:column;gap:2px;min-width:0}.profile-detail-label{font-size:10.5px;font-weight:600;letter-spacing:.04em;text-transform:uppercase;color:var(--text-soft)}.profile-detail-value{font-size:13px;font-weight:500;color:var(--text);word-break:break-all}.profile-verification-badge{display:inline-flex;align-items:center;width:fit-content;margin-top:6px;padding:4px 8px;border-radius:999px;font-size:11px;font-weight:700;letter-spacing:.03em}.profile-verification-badge.verified{background:#4a9f641a;color:#2e7d52}.profile-verification-badge.pending{background:#c9a1571f;color:#8a7249}.profile-detail-mono{font-family:Courier New,monospace;font-size:10.5px;color:var(--text-dim)}.profile-panel-footer{padding:14px 20px;border-top:1px solid #ebe4d9;background:#fdfaf6}.profile-verification-panel{display:flex;flex-direction:column;gap:12px;padding:16px 20px;border-top:1px solid #ebe4d9;background:#fffaf2}.profile-verification-copy{font-size:12.5px;line-height:1.6;color:var(--text-dim)}.profile-verify-btn{width:fit-content}.profile-signout-btn{display:inline-flex;align-items:center;gap:7px;padding:8px 16px;border-radius:9px;border:1px solid rgba(179,79,67,.28);background:transparent;color:#b34f43;font-size:12.5px;font-weight:600;cursor:pointer;transition:background .14s,border-color .14s}.profile-signout-btn:hover{background:#b34f4312;border-color:#b34f4373}.profile-password-form{display:flex;flex-direction:column}.profile-field{display:flex;flex-direction:column;gap:6px;padding:14px 20px;border-bottom:1px solid #f0ece5}.profile-field-label{font-size:10.5px;font-weight:700;letter-spacing:.05em;text-transform:uppercase;color:var(--text-soft)}.profile-field-input{background:#faf7f2;border:1px solid #e0d9ce;border-radius:9px;padding:9px 13px;color:var(--text);font-size:13px;font-family:var(--font-ui);outline:none;transition:border-color .15s,box-shadow .15s}.profile-field-input::placeholder{color:#c5bdb0}.profile-field-input:focus{border-color:var(--gold);box-shadow:0 0 0 3px #c9a1571f;background:#fff}.profile-status{margin:12px 20px 4px;padding:10px 14px;border-radius:9px;font-size:12.5px;line-height:1.5}.profile-status-success{background:#4a9f6414;color:#2e7d52;border:1px solid rgba(74,159,100,.2)}.profile-status-error{background:#b34f4314;color:#b34f43;border:1px solid rgba(179,79,67,.2)}.profile-password-actions{padding:16px 20px;display:flex;justify-content:flex-end;background:#fdfaf6;border-top:1px solid #ebe4d9}.profile-save-btn{padding:9px 22px;border-radius:9px;border:none;background:linear-gradient(135deg,#d4aa60 0%,var(--gold) 100%);color:#1a1200;font-size:12.5px;font-weight:700;font-family:var(--font-ui);letter-spacing:.02em;cursor:pointer;transition:opacity .14s,transform .1s;box-shadow:0 2px 8px #c9a1574d}.profile-save-btn:hover:not(:disabled){opacity:.9;transform:translateY(-1px)}.profile-save-btn:active:not(:disabled){transform:translateY(0)}.profile-save-btn:disabled{opacity:.5;cursor:not-allowed;box-shadow:none}.sidebar-error{margin:8px 4px 0;padding:12px;border-radius:10px;background:#b34f431f;color:#f1aca2;font-size:12px;line-height:1.5}.main{flex:1;min-width:0;display:flex;flex-direction:column}.email-nag-banner{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 28px;background:#fce8e8;border-bottom:1px solid rgba(180,60,60,.2);font-size:13px;color:#8b2e2e;flex-shrink:0}.email-nag-left{display:flex;align-items:center;gap:8px}.email-nag-icon{color:#c0392b;flex-shrink:0}.email-nag-text{font-weight:500;line-height:1.4}.email-nag-actions{display:flex;align-items:center;gap:6px;flex-shrink:0}.email-nag-resend{background:none;border:1px solid rgba(180,60,60,.4);border-radius:6px;color:#8b2e2e;font-size:12px;font-weight:600;padding:4px 10px;cursor:pointer;transition:background .15s,border-color .15s}.email-nag-resend:hover:not(:disabled){background:#b43c3c1a;border-color:#c0392b}.email-nag-resend:disabled{opacity:.6;cursor:default}.email-nag-dismiss{background:none;border:none;color:#b05050;cursor:pointer;padding:4px;display:flex;align-items:center;border-radius:4px;transition:background .15s}.email-nag-dismiss:hover{background:#b43c3c1f}.header{height:60px;background:var(--header-bg);border-bottom:1px solid var(--header-border);display:flex;align-items:center;justify-content:space-between;gap:16px;padding:0 28px;position:sticky;top:0;z-index:10}.header-left{display:flex;align-items:center;gap:12px}.sidebar-toggle{display:inline-flex;align-items:center;justify-content:center;width:34px;height:34px;border-radius:9px;border:1px solid var(--header-border);background:#f5f0e8;color:#18120d;cursor:pointer;transition:background .12s}.sidebar-toggle:hover{background:#ebe4d8}.workspace-name{font-size:15px;font-weight:700;letter-spacing:-.03em}.header-right{display:flex;align-items:center;gap:10px}.header-chip{padding:7px 14px;border-radius:999px;background:#f0ece4;color:#4e473f;font-size:13px;font-weight:500;border:1px solid #e2d9cc;transition:background .12s}.header-chip:hover{background:#e8e2d8}.header-logout{padding:7px 14px;border-radius:999px;background:#15110d;color:#fff;font-size:13px;font-weight:500;transition:opacity .12s}.header-logout:hover{opacity:.82}.content{flex:1;padding:28px 32px;background:var(--app-bg)}.page-shell{display:flex;flex-direction:column;gap:22px}.page-header{display:flex;flex-direction:column;gap:5px}.page-eyebrow{display:inline-flex;align-items:center;gap:6px;color:#7a5e28;text-transform:uppercase;letter-spacing:.1em;font-size:10.5px;font-weight:700}.page-eyebrow:before{content:"";display:inline-block;width:14px;height:2px;background:var(--gold);border-radius:999px}.page-title{margin:0;font-size:28px;line-height:1.1;letter-spacing:-.04em;font-weight:700}.page-blurb{margin:0;max-width:640px;color:var(--text-dim);font-size:13.5px;line-height:1.6}.stats-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}.dashboard-grid,.workspace-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.toolbar-row{display:flex;align-items:center;justify-content:space-between;gap:14px}.segmented-toggle{display:inline-flex;align-items:center;gap:3px;padding:4px;border-radius:999px;background:#ede5d9;border:1px solid #dfd4c4}.segmented-btn{border:none;background:transparent;color:#6e6055;border-radius:999px;padding:7px 14px;font-size:13px;font-weight:600;cursor:pointer;transition:color .12s,background .12s}.segmented-btn:hover:not(.active){color:#3d342c}.segmented-btn.active{background:#fff;color:#15110d;box-shadow:0 1px 6px #1b11071a}.primary-btn-inline{flex:0 0 auto;width:auto;align-self:auto}.contracts-grid{display:grid;grid-template-columns:minmax(320px,420px) minmax(0,1fr);gap:18px}.stack-column{display:flex;flex-direction:column;gap:18px}.surface-card,.metric-card{background:var(--card-bg);border:1px solid var(--card-border);border-radius:var(--radius);box-shadow:var(--card-shadow);transition:box-shadow .18s ease,border-color .18s ease}.surface-card{padding:0;overflow:hidden}.surface-card>.card-title{display:block;padding:15px 20px 14px;border-bottom:1px solid var(--card-border);margin-bottom:0}.surface-card-header{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:15px 20px 14px;border-bottom:1px solid var(--card-border)}.surface-card-header .card-title{margin-bottom:0}.surface-card>.record-list,.surface-card>.checklist,.surface-card>.property-card-grid,.surface-card>.party-card-grid,.surface-card>.contracts-grid,.surface-card>.empty-state-panel{padding:16px}.metric-card{padding:20px 22px 18px;position:relative;overflow:hidden}.metric-card:before{content:"";position:absolute;top:0;left:0;width:3px;height:100%;background:linear-gradient(180deg,var(--gold) 0%,transparent 100%);opacity:.5}.metric-card:hover{box-shadow:var(--card-shadow-hover);border-color:#d6cab8}.metric-label{display:flex;align-items:center;gap:6px;color:var(--text-soft);text-transform:uppercase;letter-spacing:.09em;font-size:10.5px;font-weight:700}.metric-value{display:block;margin-top:10px;font-size:34px;font-weight:700;color:var(--text);letter-spacing:-.04em;line-height:1}.metric-copy{margin:7px 0 0;font-size:12px;color:var(--text-soft)}.card-title{margin-bottom:0;font-size:11px;text-transform:uppercase;letter-spacing:.09em;color:#7a5e28;font-weight:700}.record-list,.checklist{display:flex;flex-direction:column;gap:12px}.record-row,.checklist-row{display:flex;justify-content:space-between;gap:14px;padding:13px 16px;border-radius:11px;background:#faf6f0;border:1px solid #ece4d8;transition:background .12s,border-color .12s}.record-row:hover{background:#f5f0e8;border-color:#e0d5c5}.properties-page-grid{grid-template-columns:1fr}.property-card-grid,.party-card-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.property-card{padding:18px;border-radius:14px;background:#fff;border:1px solid var(--card-border);box-shadow:var(--card-shadow);transition:box-shadow .18s ease,border-color .18s ease,transform .15s ease;cursor:default}.property-card:hover{box-shadow:var(--card-shadow-hover);border-color:#d6cab8;transform:translateY(-1px)}.party-card{padding:18px;border-radius:14px;background:#fff;border:1px solid var(--card-border);box-shadow:var(--card-shadow);transition:box-shadow .18s ease,border-color .18s ease,transform .15s ease;cursor:default}.party-card:hover{box-shadow:var(--card-shadow-hover);border-color:#d6cab8;transform:translateY(-1px)}.property-card-main{display:flex;flex-direction:column;gap:14px}.property-card-top{display:flex;justify-content:space-between;gap:14px;align-items:flex-start}.property-card-stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.party-card-stats{grid-template-columns:repeat(3,minmax(0,1fr))}.property-card-stats span{display:block;margin-bottom:4px;color:var(--text-soft);text-transform:uppercase;letter-spacing:.08em;font-size:10px;font-weight:700}.property-card-stats strong{font-size:14px}.record-title{font-weight:600}.record-title-link{padding:0;border:none;background:transparent;color:inherit;cursor:pointer;text-align:left}.record-title-link:hover{color:var(--gold)}.record-meta{margin-top:4px;font-size:13px;color:var(--text-dim)}.record-side{display:flex;flex-direction:column;align-items:flex-end;gap:8px}.pill{display:inline-flex;align-items:center;justify-content:center;padding:3px 9px;border-radius:999px;text-transform:uppercase;letter-spacing:.07em;font-size:10px;font-weight:700}.pill.active,.pill.occupied,.pill.finalized{background:var(--success-soft);color:var(--success);border:1px solid rgba(74,140,92,.18)}.pill.vacant,.pill.draft,.pill.prospect{background:#c9a1571f;color:#7a5e20;border:1px solid rgba(201,161,87,.22)}.pill.expired,.pill.terminated,.pill.former,.pill.maintenance{background:var(--danger-soft);color:var(--danger);border:1px solid rgba(179,79,67,.18)}.row-actions{display:flex;gap:10px}.text-btn{padding:4px 0;background:transparent;color:#7a5e2a;font-size:13px;font-weight:600;transition:color .12s;display:inline-flex;align-items:center;gap:5px}.text-btn:hover{color:var(--gold)}.text-btn.danger{color:var(--danger)}.text-btn.danger:hover{color:#d44f42}.form-stack{display:flex;flex-direction:column;gap:18px}.field{display:flex;flex-direction:column;gap:6px;margin-bottom:0}.field-row{display:grid;grid-template-columns:1fr 1fr;gap:14px}.field label{font-size:12px;font-weight:600;color:#504840;letter-spacing:.01em}.field input,.field select,.field textarea{width:100%;border:1px solid #ddd4c8;border-radius:10px;background:#fefcf9;padding:10px 13px;color:var(--text);font-size:14px;transition:border-color .14s,box-shadow .14s,background .14s}.field textarea{min-height:92px;resize:vertical}.owner-field-row{display:grid;grid-template-columns:minmax(0,1fr) auto auto;gap:10px;align-items:center}.owner-field-input{background:#fefcf8}.owner-field-btn{width:auto;white-space:nowrap;align-self:stretch}.owner-field-meta{margin-top:8px;color:var(--text-dim);font-size:13px}.owner-picker-modal{width:min(720px,100%)}.owner-picker-row{width:100%;display:grid;gap:4px;text-align:left;border:1px solid #e6dbca;background:#fffdfa;border-radius:14px;padding:16px;cursor:pointer}.owner-picker-row.active{border-color:#d7bb87;box-shadow:inset 0 0 0 1px #c9a15759}.owner-picker-row+.owner-picker-row{margin-top:10px}.field input:focus,.field select:focus,.field textarea:focus{outline:none;border-color:var(--gold);box-shadow:0 0 0 3px #c9a15724;background:#fff}.form-actions{display:flex;gap:10px;margin-top:4px}.side-panel-backdrop{position:fixed;inset:0;background:#0f0b0757;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);display:flex;justify-content:flex-end;z-index:100;animation:sidePanelBackdropIn .18s ease-out}.side-panel{width:min(540px,100%);height:100vh;background:#fdfaf6;border-left:1px solid #e4d9cc;box-shadow:-32px 0 80px #19100624;padding:28px;overflow:auto;animation:sidePanelSlideIn .22s cubic-bezier(.22,1,.36,1);transform-origin:right center}.side-panel-header{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;margin-bottom:16px}.side-panel-title{margin-bottom:8px}.side-panel-copy{margin:0;color:var(--text-dim);line-height:1.6}.side-panel-close{border:none;background:#ede6db;color:#574d42;width:32px;height:32px;border-radius:999px;cursor:pointer;display:flex;align-items:center;justify-content:center;flex-shrink:0;transition:background .12s}.side-panel-close:hover{background:#e0d6c8}.entity-modal-backdrop{position:fixed;inset:0;z-index:110;display:grid;place-items:center;padding:24px;background:#0f0b0761;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);animation:sidePanelBackdropIn .18s ease-out}.entity-modal{width:min(760px,100%);max-height:min(88vh,920px);overflow:auto;background:#fcfaf6;border:1px solid #e6dbca;border-radius:18px;box-shadow:0 24px 80px #1910062e;padding:24px;animation:confirmDialogIn .18s cubic-bezier(.22,1,.36,1)}.entity-modal-header{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;margin-bottom:16px}.confirm-dialog-backdrop{position:fixed;inset:0;z-index:120;display:grid;place-items:center;padding:24px;background:#0f0b0761;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);animation:sidePanelBackdropIn .18s ease-out}.confirm-dialog{width:min(460px,100%);background:#fcfaf6;border:1px solid #e6dbca;border-radius:16px;box-shadow:0 24px 80px #1910062e;padding:22px;animation:confirmDialogIn .18s cubic-bezier(.22,1,.36,1)}.confirm-dialog-header{display:flex;align-items:flex-start;justify-content:space-between;gap:16px}.confirm-dialog-title{margin:0;font-size:24px;line-height:1.15;letter-spacing:-.04em}.confirm-dialog-copy{margin:12px 0 0;color:var(--text-dim);line-height:1.6}.confirm-dialog-close{border:none;background:#ede6db;color:#574d42;width:32px;height:32px;border-radius:999px;cursor:pointer;display:flex;align-items:center;justify-content:center;flex-shrink:0;transition:background .12s}.confirm-dialog-close:hover{background:#e0d6c8}.confirm-dialog-actions{display:flex;gap:10px;margin-top:20px}.app-loading{min-height:100vh;display:grid;place-items:center;background:var(--app-bg);color:var(--text-dim)}.toast-viewport{position:fixed;top:1rem;right:1rem;z-index:1200;display:grid;gap:.75rem;width:min(28rem,calc(100vw - 2rem))}.toast{display:flex;align-items:flex-start;justify-content:space-between;gap:.75rem;padding:.9rem 1rem;border-radius:1rem;border:1px solid rgba(24,18,12,.12);background:#fff8f5fa;box-shadow:0 20px 40px #140e0724;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px)}.toast-error{border-color:#b84a2f38}.toast-message{font-size:.92rem;line-height:1.45;color:#6e2d1f;font-weight:600}.toast-close{display:inline-flex;align-items:center;justify-content:center;width:1.9rem;height:1.9rem;flex:0 0 auto;border-radius:999px;border:1px solid rgba(184,74,47,.18);background:#fffc;color:#6e2d1f;font-size:1rem;font-weight:700;cursor:pointer}.toast-close:hover{background:#fffffff5}.field-error-text{margin-top:.35rem;color:var(--danger);font-size:.82rem;font-weight:600;line-height:1.35}input.field-input-error,select.field-input-error,textarea.field-input-error{border-color:#b34f4385;box-shadow:0 0 0 3px #b34f431f}@keyframes sidePanelBackdropIn{0%{background:#0f0b0700}to{background:#0f0b0757}}@keyframes sidePanelSlideIn{0%{opacity:0;transform:translate(32px)}to{opacity:1;transform:translate(0)}}@keyframes confirmDialogIn{0%{opacity:0;transform:translateY(12px) scale(.98)}to{opacity:1;transform:translateY(0) scale(1)}}.primary-btn,.secondary-btn{border-radius:10px;padding:10px 16px;font-weight:600;font-size:13.5px;transition:opacity .12s,transform .1s,background .12s;display:inline-flex;align-items:center;gap:6px}.primary-btn:hover{opacity:.88}.primary-btn:active{transform:scale(.98)}.form-actions>.primary-btn,.form-actions>.secondary-btn{flex:1}.confirm-dialog-actions>.secondary-btn,.confirm-dialog-actions>.primary-btn{flex:1}.primary-btn{background:#15110d;color:#fff}.danger-btn{background:#8b2d22;color:#fff}.secondary-btn{background:#ede6db;color:#4a4138;border:1px solid #ddd4c5}.secondary-btn:hover{background:#e4dcd0}.status-banner{padding:11px 15px;border-radius:10px;font-size:13.5px;line-height:1.5}.status-banner.success{background:var(--success-soft);color:var(--success);border:1px solid rgba(74,140,92,.2)}.status-banner.error,.error-box{background:var(--danger-soft);color:var(--danger);border:1px solid rgba(179,79,67,.2);border-radius:10px;padding:11px 15px}.success-box{background:var(--success-soft);color:var(--success);border:1px solid rgba(74,140,92,.2);border-radius:10px;padding:11px 15px;font-size:13.5px;line-height:1.5}.login-link-btn{justify-content:center;color:#7b6e5f}.preview-sheet{border-radius:14px;border:1px solid #eee1cd;background:linear-gradient(180deg,#fdfaf4,#f7f0e5);padding:22px;font-family:var(--font-serif)}.preview-sheet-title{font-family:var(--font-display);font-size:24px;letter-spacing:-.03em}.preview-sheet-copy{margin-top:6px;color:var(--text-dim)}.preview-sheet-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-top:20px}.preview-sheet-grid span{display:block;color:var(--text-soft);text-transform:uppercase;letter-spacing:.1em;font-size:10px;font-family:var(--font-ui);margin-bottom:5px}.preview-sheet-grid strong{font-size:17px;font-weight:600;color:#1a150f}.contract-workbench{display:grid;grid-template-columns:minmax(360px,420px) minmax(0,1fr);width:100%;height:100%;min-height:0;border-radius:18px;overflow:hidden;background:#111116;border:1px solid #222228;box-shadow:0 28px 70px #100d082e}.contract-workbench.preview-only{grid-template-columns:minmax(0,1fr)}.contract-page-shell{gap:14px}.contract-summary-toggle{pointer-events:none}.contract-modal-backdrop{position:fixed;inset:0;z-index:110;padding:1rem;background:#0f0b0761;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);animation:sidePanelBackdropIn .18s ease-out}.contract-modal-shell{width:100%;height:100%;display:flex;overflow:hidden;border-radius:18px;box-shadow:0 24px 80px #1910063d;animation:confirmDialogIn .18s cubic-bezier(.22,1,.36,1)}.contract-generator{min-height:0;background:#16161a;color:#e8e4dc;border-right:1px solid #2c2c34;display:flex;flex-direction:column}.contract-tabs{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:0;padding:0 16px;border-bottom:1px solid #2c2c34;background:#1e1e24;overflow:hidden}.contract-tab{position:relative;border:none;background:transparent;color:#8f8b94;padding:14px 10px 12px;font-size:12px;font-weight:600;letter-spacing:.04em;cursor:pointer;white-space:nowrap;text-align:center}.contract-tab:after{content:"";position:absolute;left:0;right:0;bottom:-1px;height:2px;background:var(--gold);transform:scaleX(0);transition:transform .15s ease}.contract-tab:hover{color:#f1ede5}.contract-tab.active{color:var(--gold)}.contract-tab.active:after{transform:scaleX(1)}.contract-generator-form{display:flex;flex:1;min-height:0;flex-direction:column}.contract-editor-fieldset{min-width:0;min-height:0;margin:0;padding:0;border:none;display:flex;flex:1;flex-direction:column}.contract-generator-body{flex:1;overflow-y:auto;padding:16px 18px 18px}.contract-section{display:grid;gap:12px;margin-bottom:14px}.contract-section-label{margin-bottom:2px;padding-bottom:6px;border-bottom:1px solid #2c2c34;font-size:10px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:#9a7f50}.contract-generator .field label{color:#9f9aa5;font-size:11px;font-weight:500}.contract-generator .field{gap:5px}.contract-generator .field-row{gap:12px}.field-action-header{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:2px}.field-action-header label{margin-bottom:0}.field-action-btn{border:none;background:transparent;color:var(--gold);font-size:11px;font-weight:700;letter-spacing:.04em;cursor:pointer}.contract-label-muted{color:#686571;font-weight:400}.contract-generator .field input,.contract-generator .field select,.contract-generator .field textarea{background:#242429;border:1px solid #2f2f37;color:#f1ede5}.contract-generator .field input::placeholder,.contract-generator .field textarea::placeholder{color:#686571}.contract-generator .field input:focus,.contract-generator .field select:focus,.contract-generator .field textarea:focus{border-color:#8a7249;outline:2px solid rgba(200,169,110,.08)}.contract-generator .field select{appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='7' viewBox='0 0 12 7'%3E%3Cpath d='M1 1l5 5 5-5' stroke='%238f8b94' stroke-width='1.5' fill='none' stroke-linecap='round'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 12px center;padding-right:32px}.contract-linked-note{margin-top:2px;color:#66636d;font-size:10px;line-height:1.5}.contract-details-panel{margin-top:2px;border:1px solid #2f2f37;border-radius:14px;background:#24242973}.contract-details-panel summary{list-style:none;cursor:pointer;padding:12px 16px;color:#c9c3cf;font-size:12px;font-weight:700;letter-spacing:.04em;text-transform:uppercase}.contract-details-panel summary::-webkit-details-marker{display:none}.contract-details-body{padding:0 16px 14px;display:grid;gap:10px}.contract-inline-summary{display:flex;flex-direction:column;gap:2px;margin-bottom:14px;padding:12px 14px;border-radius:10px;background:#1f1f25;border:1px solid #2c2c34}.contract-inline-summary strong{color:#f1ede5}.contract-inline-summary span{color:#8f8b94;font-size:12px}.contract-toggle-group{display:grid;grid-template-columns:1fr 1fr;gap:8px}.contract-toggle-option{border:1px solid #30303a;background:#242429;color:#8f8b94;border-radius:10px;padding:10px 12px;font-size:12px;font-weight:600;cursor:pointer}.contract-toggle-option.active{border-color:var(--gold);background:#c8a96e14;color:var(--gold)}.contract-saved-list{display:flex;flex-direction:column;gap:10px}.contract-saved-row{display:flex;justify-content:space-between;gap:12px;padding:12px 14px;border-radius:12px;background:#1f1f25;border:1px solid #2c2c34}.contract-saved-row-main{min-width:0}.contract-saved-row-title{color:#f1ede5;font-size:13px;font-weight:600}.contract-saved-row-meta{margin-top:4px;color:#8f8b94;font-size:12px}.contract-saved-row-side{display:flex;flex-direction:column;align-items:flex-end;gap:8px}.contract-empty-state{padding:14px;border-radius:12px;background:#1f1f25;border:1px dashed #30303a;color:#8f8b94;font-size:12px}.empty-state-panel{padding:32px 24px;border-radius:14px;border:1px dashed #ddd0be;background:linear-gradient(180deg,#fffdf9,#faf5ec);color:var(--text-soft);font-size:14px;line-height:1.6;text-align:center}.surface-card>.empty-state-panel{border-radius:0;border:none;border-top:1px dashed #e0d5c5;background:#fdfaf6;margin:0;padding:36px 24px}.contract-generator .text-btn{color:#b99b61}.contract-generator .text-btn.danger{color:#cf7165}.contract-footer{display:flex;flex-direction:column;gap:12px;padding:14px 18px;border-top:1px solid #2c2c34;background:#1e1e24}.contract-footer-status{display:flex}.contract-footer-status .field{width:100%;margin-bottom:0}.contract-footer-error{margin-top:10px;font-size:12px;line-height:1.45}.contract-footer-actions{display:flex;gap:10px}.contract-footer-btn{flex:1;border:none;border-radius:10px;padding:12px 14px;font-size:12px;font-weight:700;letter-spacing:.04em;text-transform:uppercase;cursor:pointer}.contract-footer-btn-primary{background:var(--gold);color:#101014}.contract-footer-btn-ghost{background:#242429;border:1px solid #2f2f37;color:#8f8b94}.contract-preview-panel{min-width:0;min-height:0;display:flex;flex-direction:column;background:#1a1a1e}.contract-preview-toolbar{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:10px 20px;border-bottom:1px solid #2c2c34;background:#1e1e24}.contract-preview-label{color:#8f8b94;font-size:11px;font-weight:600;letter-spacing:.06em;text-transform:uppercase}.contract-preview-actions{display:flex;align-items:center;gap:8px}.contract-preview-font{display:inline-flex;align-items:center;gap:8px;color:#8f8b94;font-size:11px;text-transform:uppercase}.contract-preview-font select{min-width:152px;border-radius:8px;border:1px solid #30303a;background:#242429;color:#f1ede5;padding:7px 10px}.contract-preview-btn{border-radius:8px;border:none;padding:8px 12px;font-size:11px;font-weight:700;letter-spacing:.04em;text-transform:uppercase;cursor:pointer}.contract-preview-btn-outline{background:transparent;color:#d8d4cd;border:1px solid #30303a}.contract-preview-btn-danger{background:#b34f432e;color:#f2c2bb;border:1px solid rgba(179,79,67,.35)}.contract-create-modal{width:min(720px,100%)}.contract-preview-stage{flex:1;min-height:0;display:flex;justify-content:center;align-items:flex-start;padding:24px;overflow:auto;background:#1a1a1e}.contract-paper{position:relative;flex:0 0 auto;align-self:flex-start;width:100%;max-width:816px;min-height:1056px;background:#fff;color:#1a1814;padding:76px 83px;box-shadow:0 8px 48px #00000080,0 2px 8px #0000004d;font-family:var(--font-serif);font-size:11.5pt;line-height:1.72}.contract-paper:before{content:"";position:absolute;top:0;left:0;right:0;height:4px;background:linear-gradient(90deg,var(--gold) 0%,#e2c47a 50%,var(--gold) 100%)}.contract-paper-garamond{font-family:var(--font-serif)}.contract-paper-lora{font-family:Lora,Georgia,serif}.contract-paper-baskerville{font-family:Libre Baskerville,Georgia,serif}.contract-paper-title{margin-bottom:6px;text-align:center;font-family:var(--font-display);font-size:18pt;font-weight:700;letter-spacing:.12em;text-transform:uppercase}.contract-paper-subtitle{margin-bottom:30px;text-align:center;color:#4b463f;font-size:10pt;font-style:italic}.contract-paper-divider{margin:24px 0;border:none;border-top:1px solid #c8b99a}.contract-body-copy p{margin:0 0 12px;text-align:justify}.contract-party-grid{display:grid;grid-template-columns:1fr auto 1fr;gap:0;margin:18px 0 24px;align-items:center}.contract-party-col{text-align:left}.contract-party-heading{font-size:10pt;font-style:italic;color:#5a554d}.contract-party-name{margin-top:4px;font-size:11.5pt;font-weight:700}.contract-party-copy{margin-top:6px;font-size:10.2pt;color:#4b463f}.contract-party-divider{padding:0 18px;font-weight:700;letter-spacing:.08em}.contract-now-therefore{margin:22px 0;text-align:center;font-style:italic;font-weight:500}.contract-clause-list{display:flex;flex-direction:column;gap:14px}.contract-clause{text-align:justify}.contract-signing{margin-top:32px;padding-top:24px;border-top:1px solid #c8b99a}.contract-signing-copy{margin-bottom:24px;text-align:center;font-style:italic}.contract-signing-grid{display:grid;grid-template-columns:1fr 1fr;gap:32px;margin-bottom:22px}.contract-signature-line{min-height:40px;display:flex;align-items:flex-end;justify-content:center;padding-bottom:4px;border-bottom:1px solid #1a1814}.contract-signature-label{margin-top:4px;text-align:center;font-size:9.5pt;color:#5a554d}.contract-signing-meta{margin-top:10px;font-size:10pt;text-align:center;color:#4b463f}@media(max-width:1100px){.stats-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.dashboard-grid,.workspace-grid,.contracts-grid,.property-card-grid,.party-card-grid,.contract-workbench{grid-template-columns:1fr}}@media(max-width:900px){.login-root,.shell{flex-direction:column}.login-brand,.sidebar{width:100%;min-width:0}.content{padding:18px}.header{padding:0 16px}.field-row,.preview-sheet-grid{grid-template-columns:1fr}.toolbar-row,.property-card-top,.property-card-stats{grid-template-columns:1fr;flex-direction:column;align-items:stretch}.toolbar-row{align-items:stretch}.party-card-stats{grid-template-columns:1fr}.entity-modal{width:100%;max-height:calc(100vh - 24px);padding:20px}.contract-preview-toolbar,.contract-preview-actions,.contract-party-grid,.contract-signing-grid{grid-template-columns:1fr;flex-direction:column;align-items:stretch}.contract-preview-stage{padding:16px}.contract-paper{min-height:auto;padding:40px 24px}.contract-footer,.contract-saved-row,.contract-saved-row-side{flex-direction:column;align-items:stretch}.contract-tabs{display:flex;gap:6px;overflow-x:auto}.contract-modal-backdrop{padding:.75rem}}@media print{body *{visibility:hidden}.contract-paper,.contract-paper *{visibility:visible}.contract-modal-backdrop{position:static!important;background:none!important;-webkit-backdrop-filter:none!important;backdrop-filter:none!important;padding:0!important;animation:none!important}.contract-modal-shell{overflow:visible!important;height:auto!important;box-shadow:none!important;border-radius:0!important;animation:none!important}.contract-preview-panel{overflow:visible!important;background:none!important}.contract-preview-stage{overflow:visible!important;padding:0!important;display:block!important}.contract-paper{position:static!important;width:100%!important;max-width:100%!important;min-height:auto!important;padding:20mm 22mm!important;background:#f9f5ed!important;color:#1a1814!important;box-shadow:none!important;border-radius:0!important;font-size:11pt!important;line-height:1.72!important}.contract-paper:before{display:none!important}.contract-party-grid{display:grid!important;grid-template-columns:1fr auto 1fr!important;flex-direction:unset!important;align-items:center!important}.contract-signing-grid{display:grid!important;grid-template-columns:1fr 1fr!important;flex-direction:unset!important}}@media print{@page{size:A4;margin:12mm}html,body{background:#fff!important}body *{visibility:hidden!important}.contract-modal-backdrop,.contract-modal-backdrop *{visibility:visible!important}.sidebar,.header,.page-header,.status-banner,.contract-generator,.contract-preview-toolbar,.confirm-dialog-backdrop,.entity-modal-backdrop,.side-panel-backdrop{display:none!important}.contract-modal-backdrop,.contract-modal-shell{position:absolute!important;inset:0!important;padding:0!important;margin:0!important;background:#fff!important;-webkit-backdrop-filter:none!important;backdrop-filter:none!important;border-radius:0!important;box-shadow:none!important;overflow:visible!important;animation:none!important}.content,.contract-preview-stage{padding:0!important}.contract-workbench,.contract-preview-panel,.contract-preview-stage{display:block;background:#fff!important;border:none!important;box-shadow:none!important;overflow:visible!important;min-height:auto!important}.contract-paper{width:auto!important;max-width:none!important;min-height:auto!important;background:#fff!important;box-shadow:none!important;margin:0!important;padding:0!important;font-size:10.5pt!important;line-height:1.55!important;break-inside:auto!important;page-break-inside:auto!important}.contract-paper:before{display:none!important}.contract-paper-subtitle{margin-bottom:18px!important}.contract-paper-divider{margin:16px 0!important}.contract-body-copy p,.contract-clause{margin-bottom:8px!important}.contract-party-grid{margin:12px 0 18px!important}.contract-now-therefore{margin:14px 0!important}.contract-clause-list{gap:10px!important}.contract-signing{margin-top:20px!important;padding-top:16px!important;break-inside:avoid!important;page-break-inside:avoid!important}.contract-signing-grid{gap:24px!important;margin-bottom:14px!important}.contract-signature-line{min-height:28px!important}}
