:root{--system-font-scale:1;--chrome:#101826;--chrome-hover:#1c2636;--paper:#f7f5ef;--card:#fff;--surface-2:#faf8f2;--line:#e4e0d5;--line-strong:#cfc9b8;--ink:#101826;--muted:#6b6656;--gold:#a8813c;--gold-bg:#f3ead4;--gold-text:#7a5d26;--green:#3b6d11;--green-bg:#eaf3de;--red:#a32d2d;--red-bg:#fcebeb;--amber:#854f0b;--amber-bg:#faeeda;--blue:#0c447c;--blue-bg:#e6f1fb;--radius:8px}*{box-sizing:border-box}html{overflow-x:hidden}body{font-family:Inter,-apple-system,Segoe UI,sans-serif;font-size:calc(16px * var(--system-font-scale));background:var(--paper);color:var(--ink);margin:0}h1,h2,h3{font-family:Source Serif Pro,Georgia,serif}input,select,textarea,:is(button,a).btn{font-family:inherit;font-size:calc(13px * var(--system-font-scale));border:1px solid var(--line-strong);border-radius:var(--radius);background:var(--card);color:var(--ink);padding:9px 12px}a.btn,a.btn:visited{text-decoration:none}textarea{resize:vertical;font-family:inherit}input[type=checkbox],input[type=radio]{accent-color:var(--gold)}::-webkit-scrollbar{height:6px}.spec-nav{z-index:50;background:var(--chrome);color:#fff;align-items:center;gap:4px;height:56px;padding:0 16px;display:flex;position:sticky;top:0}.spec-nav .brand{font-weight:600;font-size:calc(15px * var(--system-font-scale));white-space:nowrap;flex-shrink:0;align-items:center;gap:8px;padding:14px 16px 14px 0;display:flex}.header-firm{flex:auto;align-items:center;gap:10px;min-width:0;display:flex;overflow:hidden}.header-firm[hidden]{display:none}.header-firm-divider{color:#4b5568;flex-shrink:0}.header-firm-name{font-size:calc(13px * var(--system-font-scale));color:#edebe4;white-space:nowrap;text-overflow:ellipsis;min-width:0;font-weight:600;overflow:hidden}.spec-nav button{color:#c9cdd6;font-size:calc(13px * var(--system-font-scale));cursor:pointer;white-space:nowrap;background:0 0;border:none;border-bottom:2px solid #0000;padding:16px 14px}.spec-nav button.active{color:#fff;border-bottom-color:var(--gold)}.spec-nav button:hover{color:#fff}.hamburger-btn{color:#fff;font-size:calc(20px * var(--system-font-scale));cursor:pointer;background:0 0;border:none;border-radius:6px;flex-shrink:0;margin-right:4px;padding:8px;display:none}.hamburger-btn:hover{background:#ffffff14}.screen{max-width:1180px;margin:0 auto;padding:28px 32px 60px;display:none}.screen.active{display:block}.screen-label{font-size:calc(12px * var(--system-font-scale));text-transform:uppercase;letter-spacing:.06em;color:var(--muted);margin:0 0 6px}.screen-title{font-size:calc(26px * var(--system-font-scale));margin:0 0 24px;font-weight:600}.screen-header-row{justify-content:space-between;align-items:center;margin-bottom:24px;display:flex}.header-actions{gap:8px;display:flex}.col-heading{font-size:calc(14px * var(--system-font-scale));margin:0 0 8px}.grid{gap:16px;display:grid}.table-card{-webkit-overflow-scrolling:touch;overflow-x:auto}.card{background:var(--card);border:1px solid var(--line);border-radius:12px}.pad{padding:20px}:is(button,a).btn{cursor:pointer;align-items:center;gap:6px;display:inline-flex}:is(button,a).btn:hover{background:var(--surface-2)}:is(button,a).btn.primary,a.btn.primary:visited{background:var(--chrome);color:#fff;border-color:var(--chrome)}:is(button,a).btn.primary:hover{background:var(--chrome-hover)}:is(button,a).btn.ghost{border-color:var(--line)}:is(button,a).btn.full{justify-content:center;width:100%}:is(button,a).btn.push-right{margin-left:auto}:is(button,a).btn:focus-visible{outline:2px solid var(--gold);outline-offset:1px}.push-right{margin-left:auto}table{border-collapse:collapse;width:100%;font-size:calc(13px * var(--system-font-scale))}th{text-align:left;color:var(--muted);font-weight:600;font-size:calc(12px * var(--system-font-scale));text-transform:uppercase;letter-spacing:.03em;background:var(--surface-2);border-bottom:1px solid var(--line);white-space:nowrap;padding:10px 14px}td{border-bottom:1px solid var(--line);white-space:nowrap;padding:11px 14px}tr:last-child td{border-bottom:none}.zebra tbody tr:nth-child(2n){background:var(--surface-2)}.cell-muted-right{text-align:right;color:var(--muted)}.badge{font-size:calc(11.5px * var(--system-font-scale));border-radius:20px;padding:3px 9px;font-weight:600;display:inline-block}.badge.won{background:var(--green-bg);color:var(--green)}.badge.lost{background:var(--red-bg);color:var(--red)}.badge.ongoing{background:var(--amber-bg);color:var(--amber)}.badge.successful{background:var(--green-bg);color:var(--green)}.badge.failed{background:var(--red-bg);color:var(--red)}.badge.active{background:var(--green-bg);color:var(--green)}.badge.inactive{background:var(--red-bg);color:var(--red)}.badge.archived{background:var(--line);color:var(--muted)}.badge.verified{background:var(--green-bg);color:var(--green)}.badge.unverified{background:var(--amber-bg);color:var(--amber)}.badge.role-admin{background:var(--green-bg);color:var(--green)}.badge.role-lawyer{background:var(--gold-bg);color:var(--gold-text)}.badge.role-assistant{background:var(--amber-bg);color:var(--amber)}.badge.role-clerk{background:var(--line);color:var(--muted)}.badge.pending_setup,.badge.payment_due,.badge.overdue{background:var(--amber-bg);color:var(--amber)}.badge.suspended{background:var(--red-bg);color:var(--red)}.badge.cancelled{background:var(--line);color:var(--muted)}.badge.unpaid{background:var(--amber-bg);color:var(--amber)}.badge.paid,.badge.completed{background:var(--green-bg);color:var(--green)}.badge.voided{background:var(--line);color:var(--muted)}.metric{background:var(--card);border:1px solid var(--line);border-radius:12px;padding:16px 18px}.metric .label{font-size:calc(12px * var(--system-font-scale));color:var(--muted);margin:0 0 6px}.metric .value{font-size:calc(26px * var(--system-font-scale));margin:0;font-family:Source Serif Pro,Georgia,serif;font-weight:600}.metric .value-green{color:var(--green)}.metric .value-red{color:var(--red)}.metrics-grid{grid-template-columns:repeat(4,1fr);margin-bottom:20px}.field{margin-bottom:14px}.field label{font-size:calc(12.5px * var(--system-font-scale));color:var(--muted);margin-bottom:4px;display:block}.field input,.field select,.field textarea{width:100%}.checkbox-list{border:1px solid var(--line);border-radius:8px;max-height:180px;padding:4px;overflow-y:auto}.checkbox-list-row{font-size:calc(13px * var(--system-font-scale));cursor:pointer;border-radius:6px;align-items:center;gap:8px;padding:7px 8px;display:flex}.checkbox-list-row:hover{background:var(--surface-2)}.checkbox-list-row input[type=checkbox]{cursor:pointer;flex:none;width:15px;height:15px}.checkbox-list-empty{font-size:calc(12.5px * var(--system-font-scale));color:var(--muted);padding:10px 8px}.toolbar{gap:8px;margin-bottom:14px;display:flex}.toolbar .grow{flex:1}.toolbar .w-150{width:150px}.toolbar .w-180{width:180px}.dropzone{border:1.5px dashed var(--line-strong);text-align:center;color:var(--muted);font-size:calc(13px * var(--system-font-scale));border-radius:10px;padding:26px}.dropzone i{font-size:calc(22px * var(--system-font-scale));margin-bottom:6px;display:block}.notice{border:1px solid var(--line);font-size:calc(13px * var(--system-font-scale));color:var(--muted);border-radius:8px;align-items:center;gap:8px;padding:10px 12px;display:flex}.notices-list{flex-direction:column;gap:8px;max-height:260px;display:flex;overflow-y:auto}.idtag{font-family:ui-monospace,Menlo,monospace;font-size:calc(11.5px * var(--system-font-scale));background:var(--gold-bg);color:var(--gold-text);border-radius:6px;padding:2px 8px}.chart-box{height:200px;position:relative}.chart-box-tall{height:220px}.app-shell{align-items:stretch;display:flex}.app-shell[hidden]{display:none}.app-sidebar{background:var(--chrome);color:#edebe4;flex-direction:column;flex-shrink:0;width:230px;height:calc(100vh - 56px);padding:20px 14px;transition:width .18s;display:flex;position:sticky;top:56px;overflow:hidden auto}.sidebar-footer{border-top:1px solid #ffffff1a;flex-direction:column;gap:10px;margin-top:auto;padding-top:14px;display:flex}.sidebar-collapse-btn{color:#9096a3;font-size:calc(16px * var(--system-font-scale));cursor:pointer;background:0 0;border:none;border-radius:6px;align-self:flex-start;padding:8px}.sidebar-collapse-btn:hover{color:#fff;background:#ffffff14}.app-shell.sidebar-collapsed .app-sidebar{width:68px}.app-shell.sidebar-collapsed .sidebar-firm{display:none}.app-shell.sidebar-collapsed .app-sidebar .item{justify-content:center;gap:0;font-size:0}.app-shell.sidebar-collapsed .sidebar-collapse-btn{align-self:center}.app-shell.sidebar-collapsed .sidebar-collapse-btn i{transform:rotate(180deg)}.app-shell.sidebar-collapsed .theme-switch{flex-direction:column}.theme-switch{background:#ffffff0f;border-radius:8px;gap:2px;padding:3px;display:flex}.theme-switch-btn{color:#9096a3;font-size:calc(15px * var(--system-font-scale));cursor:pointer;background:0 0;border:none;border-radius:6px;flex:1;justify-content:center;align-items:center;padding:7px 0;display:flex}.theme-switch-btn:hover{color:#fff}.theme-switch-btn.active{color:#fff;background:#ffffff24}.sidebar-firm{border-bottom:1px solid #ffffff1a;margin-bottom:14px;padding:4px 10px 20px}.sidebar-firm-label{font-size:calc(10.5px * var(--system-font-scale));text-transform:uppercase;letter-spacing:.06em;color:#9096a3;margin:0 0 2px}.sidebar-firm-name{font-size:calc(15px * var(--system-font-scale));color:#fff;overflow-wrap:break-word;margin:0;font-weight:600;line-height:1.3}.app-sidebar .item,.sidebar .item{font-size:calc(13px * var(--system-font-scale));color:#c9cdd6;cursor:pointer;text-align:left;background:0 0;border:none;border-radius:6px;align-items:center;gap:10px;width:100%;padding:9px 10px;font-family:inherit;text-decoration:none;display:flex}.app-sidebar .item:hover,.sidebar .item:hover,.app-sidebar .item:active,.sidebar .item:active,.app-sidebar .item:visited,.sidebar .item:visited{text-decoration:none}.app-sidebar .item i,.sidebar .item i,.app-sidebar .item svg,.sidebar .item svg{font-size:calc(16px * var(--system-font-scale));flex-shrink:0}.app-sidebar .item:hover:not(.active),.sidebar .item:hover:not(.active),.app-sidebar a.item:visited:not(.active),.sidebar a.item:visited:not(.active){color:#fff;background:#ffffff0f}.app-sidebar .item:focus-visible,.sidebar .item:focus-visible{outline:2px solid var(--gold);outline-offset:-2px}.app-sidebar .item.active,.sidebar .item.active,.app-sidebar a.item.active:visited,.sidebar a.item.active:visited{color:#fff;background:#ffffff14}.sidebar-backdrop{display:none}.app-content{flex:1;min-width:0;max-width:100%;padding:28px 32px 60px;position:relative}.app-content:after{content:"";z-index:2;aspect-ratio:1;pointer-events:none;background-image:var(--firm-watermark,none);opacity:.14;background-position:50%;background-repeat:no-repeat;background-size:contain;width:min(420px,55%);max-height:100%;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.firm-logo-row{flex-wrap:wrap;align-items:center;gap:12px;margin-top:8px;display:flex}.firm-logo-preview{border:1px solid var(--line-strong);border-radius:var(--radius);background:var(--card);justify-content:center;align-items:center;width:160px;height:100px;padding:6px;display:flex}.firm-logo-preview img{object-fit:contain;max-width:100%;max-height:100%}.app-frame{border:1px solid var(--line);background:var(--card);border-radius:12px;display:flex;overflow:hidden}.app-frame .sidebar{background:var(--chrome);color:#edebe4;border-radius:12px 0 0 12px;flex-shrink:0;width:230px;min-height:600px;padding:20px 14px}.app-main{flex:1;min-width:0;padding:22px}.topbar{justify-content:space-between;align-items:center;margin-bottom:18px;display:flex}.topbar-date{font-size:calc(12px * var(--system-font-scale));color:var(--muted)}.topbar-greeting{font-weight:600;font-size:calc(16px * var(--system-font-scale))}.topbar-actions{align-items:center;gap:14px;display:flex}.avatar{background:var(--gold-bg);width:32px;height:32px;color:var(--gold-text);font-weight:600;font-size:calc(12px * var(--system-font-scale));cursor:pointer;border:none;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;display:flex}.dashboard-columns>div,.documents-columns>div,.reports-columns>div{min-width:0}.dashboard-columns{grid-template-columns:1.3fr 1fr}#dash-schedule{max-height:280px;overflow-y:auto}.todo-list{font-size:calc(13px * var(--system-font-scale));flex-direction:column;gap:9px;max-height:200px;display:flex;overflow-y:auto}.todo-list label{align-items:center;gap:8px;display:flex}.form-grid{grid-template-columns:1fr 1fr}.login-forgot{text-align:right;margin-bottom:16px}.login-forgot span{font-size:calc(12px * var(--system-font-scale));color:var(--gold-text);cursor:pointer}.logo-upload{flex-direction:column;gap:10px;display:flex}#signup-logo-preview{border:1px solid var(--line);border-radius:var(--radius);background:var(--surface-2);justify-content:center;align-items:center;max-width:100px;max-height:100px;display:flex;overflow:hidden}#signup-logo-preview img{object-fit:contain;max-width:100%;max-height:100%}.documents-columns{grid-template-columns:1fr 1.6fr}.doc-role-badge{font-size:calc(12px * var(--system-font-scale));color:var(--muted);margin:0 0 8px}#doc-area-list{max-height:420px;overflow-y:auto}.area-item{text-align:left;width:100%;font-family:inherit;font-size:calc(13px * var(--system-font-scale));color:var(--ink);cursor:pointer;background:0 0;border:none;border-radius:6px;justify-content:space-between;align-items:center;gap:8px;padding:9px 10px;display:flex}.area-item+.area-item{margin-top:2px}.area-item:hover{background:var(--surface-2)}.area-item.active{background:var(--gold-bg);color:var(--gold-text);font-weight:600}.area-count{font-size:calc(11.5px * var(--system-font-scale));color:var(--muted);background:var(--surface-2);border-radius:20px;padding:1px 8px}.area-item.active .area-count{color:var(--gold-text);background:#fff9}.doc-breadcrumb{font-size:calc(12.5px * var(--system-font-scale));color:var(--muted);align-items:center;gap:6px;margin-bottom:10px;display:flex}.doc-breadcrumb .crumb-link{color:var(--gold-text);cursor:pointer;font-weight:600}.doc-breadcrumb .crumb-link:hover{text-decoration:underline}.doc-breadcrumb .idtag{margin-left:6px}.doc-table td{vertical-align:middle}.doc-row{cursor:default}.doc-row-folder,.doc-row-clickable{cursor:pointer}.doc-row:hover{background:var(--surface-2)}.doc-name-cell{align-items:center;gap:8px;display:flex}.doc-name-cell i{color:var(--muted);font-size:calc(16px * var(--system-font-scale));flex-shrink:0}.doc-row-folder .doc-name-cell i{color:var(--gold-text)}.doc-name-cell .idtag{margin-left:6px}.doc-actions-cell{text-align:right}.menu-dropdown .menu-item[disabled]{opacity:.5;cursor:not-allowed}.menu-dropdown .menu-item[disabled]:hover{color:var(--ink);background:0 0}.menu-dropdown .menu-item[disabled]:hover i{color:var(--muted)}.calendar-toolbar{flex-wrap:wrap;align-items:center;gap:14px;margin-bottom:12px;display:flex}.view-toggle{border:1px solid var(--line-strong);border-radius:8px;display:inline-flex;overflow:hidden}.view-toggle-btn{background:var(--card);font-size:calc(13px * var(--system-font-scale));cursor:pointer;color:var(--muted);border:none;justify-content:center;align-items:center;padding:8px 14px;font-family:inherit;font-weight:600;text-decoration:none;display:inline-flex}a.view-toggle-btn:visited{color:var(--muted)}a.view-toggle-btn.active:visited{color:#fff}.view-toggle-btn+.view-toggle-btn{border-left:1px solid var(--line-strong)}.view-toggle-btn:hover{background:var(--surface-2);color:var(--ink)}.view-toggle-btn.active{background:var(--chrome);color:#fff}.view-toggle-btn.active:hover{background:var(--chrome-hover)}.view-toggle-btn:focus-visible{outline:2px solid var(--gold);outline-offset:-2px}.calendar-nav{align-items:center;gap:4px;display:flex}.calendar-range-label{font-size:calc(13px * var(--system-font-scale));text-align:center;min-width:190px;font-weight:600}#calendar-reminder-banner{margin-bottom:14px}#calendar-reminder-banner[hidden]{display:none}.week-grid-scroll{margin-bottom:16px;overflow-x:auto}.week-grid{grid-template-columns:repeat(7,1fr);min-width:700px}.week-grid[hidden]{display:none}.day-label{font-size:calc(12px * var(--system-font-scale));color:var(--muted);text-align:center;margin:0 0 6px}.day-label .day-date{color:var(--ink);font-weight:600;font-size:calc(13px * var(--system-font-scale));display:block}.day-label.is-today,.day-label.is-today .day-date{color:var(--gold-text)}.day-col{border:1px solid var(--line);border-radius:8px;min-height:150px;padding:8px}.day-col.is-today{border-color:var(--gold)}.event{font-size:calc(11.5px * var(--system-font-scale));cursor:pointer;border-radius:6px;margin-bottom:6px;padding:6px 8px;font-weight:500}.event.blue{background:var(--blue-bg);color:var(--blue)}.event.amber{background:var(--amber-bg);color:var(--amber)}.event-time{font-weight:700}.cal-row{cursor:pointer}.cal-row:hover{background:var(--surface-2)}.cal-row.is-today td:first-child{color:var(--gold-text);font-weight:600}.reports-columns{grid-template-columns:1.4fr 1fr}.preview-modal{z-index:200;background:#101826b8;justify-content:center;align-items:center;padding:24px;display:none;position:fixed;inset:0}.preview-modal.show{display:flex}.preview-shell{background:var(--card);border-radius:12px;width:min(920px,100%);max-height:88vh;overflow:hidden;box-shadow:0 20px 48px #00000040}.preview-toolbar{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;gap:12px;padding:12px 16px;display:flex}.preview-actions{align-items:center;gap:8px;display:flex}.preview-body{background:var(--surface-2);justify-content:center;align-items:center;min-height:280px;max-height:calc(88vh - 54px);padding:16px;display:flex;overflow:auto}.preview-body img,.preview-body iframe{background:#fff;border:none;border-radius:8px;max-width:100%;max-height:70vh}.preview-empty{text-align:center;color:var(--muted);font-size:calc(13px * var(--system-font-scale))}.preview-empty a{color:var(--ink);font-weight:600}.role-perm-layout{align-items:stretch;min-height:420px;display:flex}.role-perm-roles{border-right:1px solid var(--line);flex:none;width:200px;padding:12px}.role-perm-matrix-wrap{flex:1;min-width:0;padding:16px}.role-perm-header{justify-content:space-between;align-items:flex-start;gap:12px;margin-bottom:12px;display:flex}.role-perm-hint{font-size:calc(12px * var(--system-font-scale));color:var(--muted);margin:4px 0 0}#role-perm-table th,#role-perm-table td{text-align:center}#role-perm-table th:first-child,#role-perm-table td:first-child{text-align:left}#role-perm-table td input[type=checkbox],#role-perm-table th input[type=checkbox]{cursor:pointer;width:16px;height:16px}.role-count{background:var(--line);min-width:22px;color:var(--muted);font-size:calc(11px * var(--system-font-scale));text-align:center;border-radius:999px;padding:0 6px;line-height:18px}.perm-groups{grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:12px;display:grid}.perm-group{border:1px solid var(--line);border-radius:10px;min-width:0;margin:0;padding:10px 12px 12px}.perm-group-head{padding:0 4px;font-weight:600}.perm-group-actions{gap:6px;margin:2px 0 8px;display:flex}.perm-group-actions .btn.sm{font-size:calc(12px * var(--system-font-scale));min-height:0;padding:2px 8px}.perm-check{cursor:pointer;align-items:center;gap:8px;padding:3px 0;display:flex}.perm-check input[type=checkbox]{flex:none;width:16px;height:16px}.perm-group:disabled .perm-check{cursor:default;opacity:.75}.perm-check:has(input:disabled){cursor:default;opacity:.75}#role-perm-table td input[type=checkbox]:disabled{cursor:not-allowed;opacity:.6}.preview-shell-narrow{width:min(560px,100%)}.preview-body-detail{text-align:left;background:var(--card);padding:20px;display:block}.detail-grid{grid-template-columns:1fr 1fr;gap:16px 20px;display:grid}.detail-item .detail-label{font-size:calc(12px * var(--system-font-scale));color:var(--muted);margin:0 0 4px}.detail-item .detail-value{font-size:calc(14px * var(--system-font-scale));margin:0;font-weight:600}.detail-section{border-bottom:1px solid var(--line);padding:16px 0}.detail-section:first-child{padding-top:0}.detail-section:last-child{border-bottom:none;padding-bottom:0}.detail-section-title{font-size:calc(12.5px * var(--system-font-scale));text-transform:uppercase;letter-spacing:.04em;color:var(--muted);align-items:center;gap:7px;margin:0 0 12px;font-weight:600;display:flex}.detail-section-title i{color:var(--gold-text);font-size:calc(14px * var(--system-font-scale))}.detail-summary{font-size:calc(13px * var(--system-font-scale));color:var(--ink);margin:12px 0 0;line-height:1.5}.detail-file{font-size:calc(13px * var(--system-font-scale));align-items:center;gap:8px;padding:6px 0;display:flex}.detail-file i{color:var(--muted)}.menu{display:inline-flex;position:relative}.menu[hidden]{display:none}.menu-trigger{border:line;cursor:pointer;color:var(--muted);font-size:calc(16px * var(--system-font-scale));background:0 0;border-radius:6px;align-items:center;padding:4px 6px;line-height:1;display:inline-flex}.menu-trigger:hover,.menu-trigger[aria-expanded=true]{background:var(--line-strong);color:var(--ink)}.menu-dropdown{-webkit-overflow-scrolling:touch;overscroll-behavior:contain;background:var(--card);border:1px solid var(--line);z-index:300;border-radius:10px;min-width:160px;max-width:min(280px,100vw - 8px);max-height:min(320px,100vh - 16px);padding:6px;display:none;position:fixed;overflow-y:auto;box-shadow:0 10px 28px #34435e24}.menu-dropdown.show{display:block}.menu-dropdown .menu-item{text-align:left;width:100%;font-family:inherit;font-size:calc(13px * var(--system-font-scale));color:var(--ink);cursor:pointer;background:0 0;border:none;border-radius:6px;justify-content:flex-start;align-items:center;gap:9px;padding:8px 10px;font-weight:600;display:flex}.menu-dropdown .menu-item i{font-size:calc(15px * var(--system-font-scale));color:var(--muted);text-align:center;flex-shrink:0;width:16px}.menu-dropdown .menu-item:hover{background:var(--gold-bg);color:var(--gold-text)}.menu-dropdown .menu-item:hover i{color:var(--gold-text)}.menu-dropdown .menu-item.danger,.menu-dropdown .menu-item.danger i{color:var(--red)}.menu-dropdown .menu-item.danger:hover{background:var(--red-bg);color:var(--red)}.menu-dropdown .menu-item.danger:hover i{color:var(--red)}.menu-divider{background:var(--line);height:1px;margin:5px 2px}@media (hover:none) and (pointer:coarse){.menu-trigger{justify-content:center;min-width:44px;min-height:44px}.menu-dropdown .menu-item{min-height:44px;font-size:calc(14px * var(--system-font-scale));padding:12px}.icon-btn{justify-content:center;align-items:center;min-width:44px;min-height:44px}.avatar{width:40px;height:40px}}.notif-dropdown{width:280px;max-width:calc(100vw - 16px);max-height:min(340px,100vh - 16px);padding:8px;overflow-y:auto}.notif-dropdown .notice{border:none;padding:8px}.notif-dropdown .notice:hover{background:var(--surface-2);border-radius:6px}.schedule-group-label{font-size:calc(12px * var(--system-font-scale));text-transform:uppercase;letter-spacing:.03em;color:var(--muted);margin:0 0 6px;font-weight:600}.schedule-group+.schedule-group{margin-top:16px}.toast{z-index:100;background:var(--chrome);color:#fff;font-size:calc(13px * var(--system-font-scale));opacity:0;pointer-events:none;border-radius:8px;align-items:center;gap:8px;padding:11px 16px;transition:transform .2s,opacity .2s;display:flex;position:fixed;top:70px;right:20px;transform:translateY(-12px);box-shadow:0 8px 24px #0000002e}.toast.show{opacity:1;transform:translateY(0)}.toast.error{background:var(--red)}.field-error{font-size:calc(12px * var(--system-font-scale));color:var(--red);min-height:14px;margin:4px 0 0}.field input.invalid,.field select.invalid,.field textarea.invalid,.checkbox-list.invalid{border-color:var(--red)}.field-hint{font-size:calc(12px * var(--system-font-scale));color:var(--muted,#666);margin:4px 0 0}.dropzone.dragover{border-color:var(--gold);background:var(--gold-bg);color:var(--gold-text)}.dropzone{cursor:pointer}.upload-list{flex-wrap:wrap;gap:8px;margin-top:10px;display:flex}.upload-chip{background:var(--gold-bg);color:var(--gold-text);font-size:calc(12px * var(--system-font-scale));border-radius:20px;align-items:center;gap:6px;padding:5px 10px 5px 12px;display:flex}.upload-queue{flex-direction:column;gap:8px;margin-bottom:14px;display:flex}.upload-row{border:1px solid var(--line);background:var(--card,transparent);border-radius:8px;flex-wrap:wrap;align-items:center;gap:8px 12px;padding:8px 12px;display:flex}.upload-row .upload-name{text-overflow:ellipsis;white-space:nowrap;flex:200px;min-width:0;overflow:hidden}.upload-row .upload-status{color:var(--muted);font-size:calc(12.5px * var(--system-font-scale))}.upload-row.failed .upload-status{color:var(--red)}.upload-row.done .upload-status{color:var(--green)}.upload-bar{background:var(--line);border-radius:2px;flex:1 0 100%;height:4px;overflow:hidden}.upload-bar>span{background:var(--gold-text,var(--green));height:100%;transition:width .2s;display:block}.upload-bar.indeterminate>span{width:40%;animation:1.1s ease-in-out infinite alternate upload-slide}@keyframes upload-slide{0%{margin-inline-start:0}to{margin-inline-start:60%}}.file-size{color:var(--muted);font-size:calc(11.5px * var(--system-font-scale));margin-left:8px}.upload-chip button{color:inherit;cursor:pointer;background:0 0;border:none;padding:0;display:flex}.empty-state{text-align:center;color:var(--muted);font-size:calc(13px * var(--system-font-scale));margin:0;padding:22px}.todo-add{gap:8px;margin-top:10px;display:flex}.todo-add input{flex:1}.todo-list label.done span{color:var(--muted);text-decoration:line-through}.icon-btn{cursor:pointer;color:var(--ink);font-size:calc(16px * var(--system-font-scale));border-radius:var(--radius);background:0 0;border:none;padding:4px;text-decoration:none;display:inline-flex;position:relative}a.icon-btn:visited{color:var(--ink)}.icon-btn:hover{background:var(--surface-2)}.icon-btn:focus-visible{outline:2px solid var(--gold);outline-offset:1px}.icon-btn .dot{background:var(--red);border-radius:50%;width:7px;height:7px;position:absolute;top:2px;right:2px}.icon-btn .dot[hidden]{display:none}.panel{background:var(--card);border:1px solid var(--line);border-radius:12px;margin-top:16px;overflow:hidden}.panel-head{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;padding:14px 18px;display:flex}.panel-head h3{font-size:calc(15px * var(--system-font-scale));margin:0}.panel-body{font-size:calc(13px * var(--system-font-scale));flex-direction:column;gap:12px;padding:18px;display:flex}.switch-row{align-items:center;gap:8px;display:flex}.add-event-form input,.add-event-form select,.add-event-form textarea{width:100%}.settings-hint{font-size:calc(12px * var(--system-font-scale));color:var(--muted);margin:4px 0 0}.settings-tabs{border-bottom:1px solid var(--line);gap:4px;margin-bottom:16px;display:flex}.settings-tab{font-family:inherit;font-size:calc(13px * var(--system-font-scale));color:var(--muted);cursor:pointer;background:0 0;border:none;border-bottom:2px solid #0000;align-items:center;gap:6px;margin-bottom:-1px;padding:10px 4px;font-weight:600;display:flex}.settings-tab+.settings-tab{margin-left:16px}.settings-tab:hover{color:var(--ink)}.settings-tab.active{color:var(--gold-text);border-bottom-color:var(--gold)}.swatch-row{flex-wrap:wrap;gap:10px;margin-top:10px;display:flex}.swatch-btn{cursor:pointer;background:0 0;border:2px solid #0000;border-radius:50%;padding:3px;line-height:0;display:inline-flex}.swatch-btn .swatch{border:1px solid #0000001f;border-radius:50%;width:26px;height:26px;display:block}.swatch-btn:hover{border-color:var(--line-strong)}.swatch-btn.active{border-color:var(--gold)}@media (max-width:1024px){.hamburger-btn:not([hidden]){display:inline-flex}.sidebar-collapse-btn{display:none}.app-sidebar{z-index:220;width:260px;max-width:82vw;height:100vh;transition:transform .25s;position:fixed;top:0;bottom:0;left:0;overflow-y:auto;transform:translate(-100%);box-shadow:6px 0 24px #0000004d}.app-shell.sidebar-open .app-sidebar{transform:translate(0)}.sidebar-backdrop{z-index:210;opacity:0;pointer-events:none;background:#10182680;transition:opacity .2s;display:block;position:fixed;inset:0}.app-shell.sidebar-open .sidebar-backdrop{opacity:1;pointer-events:auto}.screen,.app-content{padding:20px}.metrics-grid{grid-template-columns:repeat(2,1fr)}}@media (max-width:768px){.dashboard-columns,.documents-columns,.reports-columns,.form-grid,.detail-grid{grid-template-columns:1fr}.app-frame{flex-direction:column}.app-frame .sidebar{border-radius:12px 12px 0 0;flex-wrap:wrap;gap:4px;width:100%;min-height:auto;display:flex}.app-frame .sidebar .item{flex:auto}.toolbar{flex-wrap:wrap}.toolbar .grow{flex:100%}.toolbar .w-150,.toolbar .w-180{flex:auto;width:auto}.calendar-toolbar{flex-direction:column;align-items:stretch}.calendar-nav{justify-content:center}.calendar-range-label{min-width:0}.role-perm-layout{flex-direction:column}.role-perm-roles{border-right:none;border-bottom:1px solid var(--line);width:100%}.screen-header-row{flex-direction:column;align-items:stretch;gap:12px}.header-actions{flex-wrap:wrap}.header-actions .btn{flex:auto;justify-content:center}input,select,textarea,:is(button,a).btn{padding:11px 12px}.icon-btn{padding:8px}.view-toggle-btn{padding:10px 14px}.checkbox-list-row{padding:10px 8px}}@media (max-width:480px){.screen,.app-content{padding:14px}.metrics-grid{grid-template-columns:1fr}.screen-title{font-size:calc(21px * var(--system-font-scale))}.spec-nav{gap:2px;padding:0 10px}.spec-nav .brand{padding-right:8px}.spec-nav .brand-word,.header-firm-divider{display:none}.header-actions{flex-direction:column;align-items:stretch}.preview-modal{padding:0}.preview-shell{border-radius:0;width:100%;max-height:100vh}.preview-body{max-height:calc(100vh - 54px)}}[data-theme=dark]{--chrome:#0a0e16;--chrome-hover:#141b29;--paper:#0f1420;--card:#161c2a;--surface-2:#1e2536;--line:#2a3142;--line-strong:#3a4358;--ink:#e9e7e0;--muted:#9ca0ae;--gold:#d3a75c;--gold-bg:#d3a75c29;--gold-text:#e4c088;--green:#7cc24a;--green-bg:#7cc24a29;--red:#e4726b;--red-bg:#e4726b29;--amber:#e0a83e;--amber-bg:#e0a83e29;--blue:#6fb2e8;--blue-bg:#6fb2e829}[data-accent=navy]{--gold:#2c4a7c;--gold-bg:#e3eaf5;--gold-text:#1f3557}[data-theme=dark][data-accent=navy]{--gold:#7ca6e0;--gold-bg:#7ca6e029;--gold-text:#a9c4ee}[data-accent=emerald]{--gold:#1f7a4d;--gold-bg:#e1f3e9;--gold-text:#14562f}[data-theme=dark][data-accent=emerald]{--gold:#4fcc8b;--gold-bg:#4fcc8b29;--gold-text:#8ee0b7}[data-accent=burgundy]{--gold:#7a2438;--gold-bg:#f5e2e6;--gold-text:#5a1a29}[data-theme=dark][data-accent=burgundy]{--gold:#e0708a;--gold-bg:#e0708a29;--gold-text:#efa6b7}[data-accent=slate]{--gold:#495564;--gold-bg:#e7eaed;--gold-text:#333c46}[data-theme=dark][data-accent=slate]{--gold:#a9b4c2;--gold-bg:#a9b4c229;--gold-text:#c7cfd8}[data-bg=cool-gray]{--paper:#f3f4f6;--surface-2:#e9ebee}[data-theme=dark][data-bg=cool-gray]{--paper:#10131a;--surface-2:#1a1e28}[data-bg=soft-blue]{--paper:#f1f5f9;--surface-2:#e6edf3}[data-theme=dark][data-bg=soft-blue]{--paper:#0d1622;--surface-2:#172232}[data-bg=warm-sand]{--paper:#f8f3ea;--surface-2:#f0e8d8}[data-theme=dark][data-bg=warm-sand]{--paper:#171310;--surface-2:#221c16}body{margin:0}.confirm-message{font-size:calc(14px * var(--system-font-scale));color:var(--ink);margin:0 0 18px}.confirm-actions{justify-content:flex-end;gap:8px;display:flex}:is(button,a).btn.danger,a.btn.danger:visited{background:var(--red);color:#fff;border-color:var(--red)}:is(button,a).btn.danger:hover{background:#8a2626}[dir=rtl] body,[dir=rtl] h1,[dir=rtl] h2,[dir=rtl] h3{font-family:Segoe UI,Tahoma,Noto Sans Arabic,Inter,-apple-system,sans-serif}[dir=rtl] input[type=email],[dir=rtl] input[type=tel],[dir=rtl] input[type=url],[dir=rtl] input[type=number]{text-align:right;direction:ltr}[dir=rtl] .filter-bar .filter-actions{margin-left:0;margin-right:auto}[dir=rtl] .receipt-doc .receipt-meta{text-align:left}[dir=rtl] th,[dir=rtl] .app-sidebar .item,[dir=rtl] .sidebar .item,[dir=rtl] .area-item,[dir=rtl] .menu-dropdown .menu-item,[dir=rtl] .login-forgot,[dir=rtl] #role-perm-table th:first-child,[dir=rtl] #role-perm-table td:first-child,[dir=rtl] .preview-body-detail{text-align:right}[dir=rtl] .cell-muted-right,[dir=rtl] .doc-actions-cell{text-align:left}[dir=rtl] .hamburger-btn{margin-left:4px;margin-right:0}[dir=rtl] .doc-breadcrumb .idtag,[dir=rtl] .doc-name-cell .idtag,[dir=rtl] .file-size{margin-left:0;margin-right:6px}[dir=rtl] .settings-tab+.settings-tab{margin-left:0;margin-right:16px}[dir=rtl] .push-right{margin-left:0;margin-right:auto}[dir=rtl] .view-toggle-btn+.view-toggle-btn{border-left:none;border-right:1px solid var(--line-strong)}[dir=rtl] .role-perm-roles{border-right:none;border-left:1px solid var(--line)}[dir=rtl] .toast{left:20px;right:auto}[dir=rtl] .icon-btn .dot{left:2px;right:auto}[dir=rtl] .ti-chevron-left,[dir=rtl] .ti-chevron-right,[dir=rtl] .ti-chevrons-left{display:inline-block;transform:scaleX(-1)}@media (max-width:900px){[dir=rtl] .app-sidebar{left:auto;right:0;transform:translate(100%);box-shadow:-6px 0 24px #0000004d}[dir=rtl] .app-shell.sidebar-open .app-sidebar{transform:translate(0)}[dir=rtl] .spec-nav .brand{padding-left:8px;padding-right:0}}.login-stage{background:var(--chrome);border-radius:14px;justify-content:center;max-height:90vh;padding:40px 0;display:flex;overflow-y:auto}.login-card{width:340px;max-height:fit-content;margin:auto 0}.login-logo{align-items:center;gap:8px;margin-bottom:4px;display:flex}.login-logo i{font-size:calc(20px * var(--system-font-scale));color:var(--gold-text)}.login-logo span{font-weight:600;font-size:calc(17px * var(--system-font-scale))}.login-sub{font-size:calc(13px * var(--system-font-scale));color:var(--muted);margin:0 0 20px}.login-divider{text-align:center;font-size:calc(12px * var(--system-font-scale));color:var(--muted);z-index:1;background:var(--card);width:fit-content;margin:16px auto;padding:0 8px;position:relative}.login-divider:before{content:"";background:var(--line);z-index:0;height:1px;position:absolute;top:50%;left:0;right:0}.login-note{font-size:calc(11.5px * var(--system-font-scale));color:var(--muted);align-items:center;gap:6px;margin-top:16px;display:flex}@media (max-width:768px){.login-stage{padding:20px 12px}.login-card{width:100%;max-width:340px}}.filter-bar{flex-wrap:wrap;align-items:flex-end;gap:12px}.filter-bar .field{flex:0 180px;min-width:150px;margin-bottom:0}.filter-bar .field:has(>.btn){flex:none;min-width:0}.filter-bar .filter-actions{margin-left:auto}.th-sort{color:inherit;white-space:nowrap;text-decoration:none}.th-sort:hover{text-decoration:underline}.pager{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:8px;margin-top:10px;display:flex}.pager .pager-info{font-size:calc(13px * var(--system-font-scale));color:var(--muted)}.btn.disabled{pointer-events:none;opacity:.5}.metric .sub{font-size:calc(12px * var(--system-font-scale));color:var(--muted);margin:6px 0 0}.metric-action{flex-direction:column;justify-content:space-between;align-items:flex-start;gap:10px;display:flex}@media (max-width:768px){.filter-bar .field{flex:calc(50% - 12px);min-width:130px}}@media (max-width:480px){.filter-bar .field{flex:100%}}.receipt-sheet{max-width:560px}.receipt-doc{color:#111;border:1px solid var(--line);background:#fff;border-radius:12px;padding:32px}.receipt-doc h2{font-size:calc(22px * var(--system-font-scale));letter-spacing:.04em;text-transform:uppercase;margin:0}.receipt-doc .receipt-issuer{font-size:calc(13px * var(--system-font-scale));color:#555;margin:2px 0 0}.receipt-doc .receipt-head{border-bottom:2px solid #111;justify-content:space-between;gap:16px;padding-bottom:16px;display:flex}.receipt-doc .receipt-head p{margin:0}.receipt-doc .receipt-meta{text-align:right;font-size:calc(13px * var(--system-font-scale))}.receipt-doc dl{font-size:calc(14px * var(--system-font-scale));grid-template-columns:160px 1fr;gap:10px 16px;margin:20px 0 0;display:grid}.receipt-doc dt{color:#555}.receipt-doc dd{margin:0;font-weight:500}.receipt-doc .receipt-total{font-size:calc(18px * var(--system-font-scale));border-top:2px solid #111;justify-content:space-between;margin-top:24px;padding-top:14px;font-weight:700;display:flex}.receipt-doc .receipt-foot{font-size:calc(12px * var(--system-font-scale));color:#555;text-align:center;margin:28px 0 0}@media (max-width:480px){.receipt-doc{padding:20px}.receipt-doc dl{grid-template-columns:1fr;gap:2px}.receipt-doc dd{margin-bottom:8px}}@media print{.platform-nav,.platform-shell .app-sidebar,.platform-shell .sidebar-backdrop,.toast,.no-print{display:none!important}.platform-shell,.platform-shell .app-content{background:#fff;max-width:none;margin:0;padding:0;display:block}.platform-shell .app-content:after{display:none}body{background:#fff!important}.receipt-sheet{max-width:none}.receipt-doc{box-shadow:none;border:0;border-radius:0;padding:0}.receipt-doc,.receipt-doc *{color:#000!important}.receipt-doc{break-inside:avoid;page-break-inside:avoid}@page{margin:18mm}}.financial-screen .fin-tabs{white-space:nowrap;scrollbar-width:none;overflow:auto hidden}.financial-screen .fin-tabs::-webkit-scrollbar{display:none}.financial-screen a.settings-tab{flex:none;text-decoration:none}.financial-screen .fin-kpis{grid-template-columns:repeat(3,1fr);margin-bottom:20px}.financial-screen .fin-kpis .metric{min-width:0}.financial-screen .fin-section-head{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;margin:20px 0 10px;display:flex}.financial-screen .fin-section-head .col-heading{margin:0}.financial-screen .fin-link{font-size:calc(13px * var(--system-font-scale));color:var(--gold-text)}.financial-screen th.num,.financial-screen td.num{text-align:end;font-variant-numeric:tabular-nums}.financial-screen .cell-muted,.cell-muted{color:var(--muted)}.financial-screen tfoot th{color:var(--ink);text-transform:none;font-size:calc(13px * var(--system-font-scale));border-top:1px solid var(--line);border-bottom:none}.financial-screen .badge.overdue,.financial-screen .badge.failed{background:var(--red-bg);color:var(--red)}.financial-screen .badge.partial{background:var(--gold-bg);color:var(--gold-text)}.financial-screen .badge.sent{background:var(--green-bg);color:var(--green)}.financial-screen .badge.pending{background:var(--line);color:var(--muted)}.financial-screen .filter-bar .filter-search{flex:220px}.notice-banner{border-radius:var(--radius);background:var(--amber-bg);color:var(--amber);font-size:calc(13px * var(--system-font-scale));margin:0 0 14px;padding:10px 14px}.sms-preview{border:1px solid var(--line);background:var(--surface-2);font-size:calc(13px * var(--system-font-scale));white-space:pre-wrap;overflow-wrap:anywhere;border-radius:12px;margin:0;padding:12px 14px;line-height:1.5}@media (max-width:1024px){.financial-screen .fin-kpis{grid-template-columns:repeat(2,1fr)}}@media (max-width:480px){.financial-screen .fin-kpis{grid-template-columns:1fr}.financial-screen .fin-section-head>.btn{justify-content:center;width:100%}}.financial-screen :is(button,a).btn:disabled{opacity:.45;cursor:not-allowed}.financial-screen :is(button,a).btn:disabled:hover{background:0 0}.financial-screen :is(button,a).btn.primary:disabled:hover{background:var(--chrome)}@media (max-width:480px){.financial-screen .filter-bar .field:has(input[type=date]){flex:calc(50% - 12px);min-width:0}}.font-size-row{flex-wrap:wrap;gap:8px;margin-top:10px;display:flex}.font-size-option{white-space:normal;text-align:center;max-width:100%}.font-size-option.active{border-color:var(--gold);background:var(--surface-2);font-weight:600}.font-size-preview{border:1px solid var(--line);background:var(--surface-2);overflow-wrap:anywhere;border-radius:8px;margin:14px 0 0;padding:12px 14px}body{overflow-wrap:break-word}.financial-screen .fin-head-actions{flex-wrap:wrap;gap:8px;display:flex}.fin-check{font-size:calc(13px * var(--system-font-scale));cursor:pointer;align-items:center;gap:8px;margin:4px 0 12px;display:flex}.visually-hidden{clip:rect(0 0 0 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.financial-screen .badge.issued{background:var(--green-bg);color:var(--green)}.financial-screen .badge.reversed{background:var(--amber-bg);color:var(--amber)}.receipt-page .receipt-toolbar{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;max-width:800px;margin-bottom:16px;display:flex}.receipt-toolbar-actions{flex-wrap:wrap;gap:8px;display:flex}:is(button,a).btn.danger-text{color:var(--red)}.firm-receipt{color:#111;border:1px solid var(--line);background:#fff;border-radius:12px;max-width:800px;padding:36px 40px;position:relative;overflow:hidden;box-shadow:0 1px 2px #1018260a}.firm-receipt p{margin:0}.firm-receipt-head{border-bottom:2px solid #111;justify-content:space-between;align-items:flex-start;gap:24px;padding-bottom:18px;display:flex}.firm-receipt-firm{align-items:flex-start;gap:14px;min-width:0;display:flex}.firm-receipt-logo{object-fit:contain;flex:none;width:64px;height:64px}.firm-receipt-firm h2{font-size:calc(20px * var(--system-font-scale));margin:0 0 4px}.firm-receipt-firm p{font-size:calc(12px * var(--system-font-scale));color:#555;line-height:1.5}.firm-receipt-meta{text-align:end;font-size:calc(13px * var(--system-font-scale));flex-direction:column;flex:none;align-items:flex-end;gap:4px;display:flex}.firm-receipt-meta span{color:#555}.firm-receipt-title{font-family:Source Serif Pro,Georgia,serif;font-size:calc(20px * var(--system-font-scale));letter-spacing:.06em;text-transform:uppercase;color:var(--gold-text);font-weight:700;margin-bottom:4px!important}.firm-receipt-status-note{color:#a32d2d;font-size:calc(13px * var(--system-font-scale));background:#fcebeb;border-radius:8px;padding:10px 14px;font-weight:600;margin-top:14px!important}.firm-receipt-label{font-size:calc(11px * var(--system-font-scale));letter-spacing:.06em;text-transform:uppercase;color:#6b6656;font-weight:700;margin-bottom:6px!important}.firm-receipt-party{font-size:calc(13px * var(--system-font-scale));color:#555;border-bottom:1px solid #e4e0d5;margin-top:22px;padding-bottom:16px;line-height:1.55}.firm-receipt-party .firm-receipt-client{font-size:calc(16px * var(--system-font-scale));color:#111;font-weight:600}.firm-receipt-details{font-size:calc(14px * var(--system-font-scale));gap:0;margin:18px 0 0;display:grid}.firm-receipt-details>div{border-bottom:1px dashed #ece8dc;grid-template-columns:200px 1fr;gap:16px;padding:7px 0;display:grid}.firm-receipt-details dt{color:#6b6656}.firm-receipt-details dd{overflow-wrap:anywhere;margin:0;font-weight:500}.firm-receipt-amount{background:#f3ead4;border-radius:10px;justify-content:space-between;align-items:center;gap:12px;margin-top:22px;padding:16px 18px;font-weight:700;display:flex}.firm-receipt-amount strong{font-size:calc(24px * var(--system-font-scale));font-variant-numeric:tabular-nums}.firm-receipt-balance{font-size:calc(14px * var(--system-font-scale));color:#555;justify-content:space-between;gap:12px;margin-top:12px;display:flex}.firm-receipt-balance strong{color:#111;font-variant-numeric:tabular-nums}.firm-receipt-notes{font-size:calc(13px * var(--system-font-scale));white-space:pre-line;margin-top:20px}.firm-receipt-foot{text-align:center;font-size:calc(12px * var(--system-font-scale));color:#6b6656;border-top:1px solid #e4e0d5;margin-top:30px;padding-top:16px}.firm-receipt-received{font-size:calc(16px * var(--system-font-scale));color:#3b6d11;letter-spacing:.02em;font-weight:700;margin-bottom:4px!important}.firm-receipt-stamp{font-size:calc(96px * var(--system-font-scale));letter-spacing:.1em;text-transform:uppercase;color:#a32d2d;opacity:.13;pointer-events:none;white-space:nowrap;font-weight:800;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)rotate(-28deg)}.firm-receipt-due{font-size:calc(16px * var(--system-font-scale));color:#111;letter-spacing:.02em;font-weight:700;margin-bottom:4px!important}.receipt-history{max-width:800px;margin-top:20px}.receipt-history ul{margin:8px 0 0;padding:0;list-style:none}.receipt-history li{border-bottom:1px solid var(--line);font-size:calc(13px * var(--system-font-scale));flex-wrap:wrap;justify-content:space-between;gap:12px;padding:8px 0;display:flex}.receipt-history li:last-child{border-bottom:0}@media (max-width:640px){.firm-receipt{padding:20px 16px}.firm-receipt-head{flex-direction:column}.firm-receipt-meta{text-align:start;align-items:flex-start}.firm-receipt-details>div{grid-template-columns:1fr;gap:2px}.firm-receipt-amount strong{font-size:calc(20px * var(--system-font-scale))}}@media print{:is(body:has(.firm-receipt) .spec-nav,body:has(.firm-receipt) .app-sidebar,body:has(.firm-receipt) .sidebar-backdrop,body:has(.firm-receipt) .toast,body:has(.firm-receipt) .no-print){display:none!important}:is(body:has(.firm-receipt) .app-shell,body:has(.firm-receipt) .app-content){background:#fff;max-width:none;margin:0;padding:0;display:block}body:has(.firm-receipt) .app-content:after{display:none}body:has(.firm-receipt){background:#fff!important}.firm-receipt{max-width:none;box-shadow:none;break-inside:avoid;page-break-inside:avoid;border:0;border-radius:0;padding:0}.firm-receipt,.firm-receipt *{-webkit-print-color-adjust:exact;print-color-adjust:exact}}.badge.trial{background:var(--blue-bg);color:var(--blue)}.badge.pending_payment,.badge.pending,.badge.past_due{background:var(--amber-bg);color:var(--amber)}.badge.expired{background:var(--line);color:var(--muted)}.badge.refunded{background:var(--blue-bg);color:var(--blue)}.sub-banner{border:1px solid var(--line);border-radius:var(--radius);font-size:calc(13px * var(--system-font-scale));background:var(--blue-bg);color:var(--blue);flex-wrap:wrap;align-items:center;gap:10px;margin-bottom:16px;padding:10px 14px;display:flex}.sub-banner.warn{background:var(--amber-bg);color:var(--amber)}.sub-banner.danger{background:var(--red-bg);color:var(--red)}.sub-banner a{color:inherit;margin-inline-start:auto;font-weight:600}.billing-toggle{border:1px solid var(--line-strong);background:var(--card);border-radius:999px;padding:3px;display:inline-flex}.billing-toggle button{color:var(--muted);font:inherit;font-size:calc(13px * var(--system-font-scale));cursor:pointer;background:0 0;border:0;border-radius:999px;padding:6px 16px}.billing-toggle button[aria-pressed=true]{background:var(--chrome);color:#fff}.plan-grid{grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:16px;margin-top:16px;display:grid}.plan-card{background:var(--card);border:1px solid var(--line);border-radius:12px;flex-direction:column;gap:12px;padding:20px;display:flex;position:relative}.plan-card.popular{border:2px solid var(--gold)}.plan-card.current{box-shadow:inset 0 0 0 1px var(--green)}.plan-tag{top:-11px;background:var(--gold);color:#fff;font-size:calc(11px * var(--system-font-scale));letter-spacing:.02em;border-radius:999px;padding:3px 10px;font-weight:700;position:absolute;inset-inline-start:16px}.plan-tag.current{background:var(--green);inset-inline:auto 16px}.plan-card h3{font-size:calc(20px * var(--system-font-scale));margin:0}.plan-card .plan-desc{color:var(--muted);font-size:calc(13px * var(--system-font-scale));min-height:2.6em;margin:0}.plan-price{align-items:baseline;gap:4px;display:flex}.plan-price strong{font-family:Source Serif Pro,Georgia,serif;font-size:calc(32px * var(--system-font-scale));font-variant-numeric:tabular-nums}.plan-price span{color:var(--muted);font-size:calc(13px * var(--system-font-scale))}.plan-sub{color:var(--muted);font-size:calc(12px * var(--system-font-scale));min-height:1.4em;margin:-8px 0 0}.plan-sub .save{color:var(--green);font-weight:600}.plan-limits,.plan-features{font-size:calc(13px * var(--system-font-scale));flex-direction:column;gap:6px;margin:0;padding:0;list-style:none;display:flex}.plan-limits{border-block:1px solid var(--line);padding-block:10px}.plan-limits li{justify-content:space-between;gap:8px;display:flex}.plan-limits li span:last-child{font-variant-numeric:tabular-nums;font-weight:600}.plan-features li{align-items:flex-start;gap:8px;display:flex}.plan-features li svg{color:var(--green);flex:none;margin-top:1px}.plan-features .plus{color:var(--muted);font-size:calc(12px * var(--system-font-scale))}.plan-card .btn{justify-content:center;margin-top:auto}.usage-meter{flex-direction:column;gap:6px;display:flex}.usage-meter .usage-head{font-size:calc(13px * var(--system-font-scale));justify-content:space-between;display:flex}.usage-meter .usage-head strong{font-variant-numeric:tabular-nums}.usage-bar{background:var(--surface-2);border:1px solid var(--line);border-radius:999px;height:6px;overflow:hidden}.usage-bar span{background:var(--green);height:100%;display:block}.usage-meter.warning .usage-bar span{background:var(--amber)}.usage-meter.reached .usage-bar span,.usage-meter.over .usage-bar span{background:var(--red)}.usage-meter .usage-note{font-size:calc(12px * var(--system-font-scale));color:var(--muted)}.usage-meter.warning .usage-note{color:var(--amber)}.usage-meter.reached .usage-note,.usage-meter.over .usage-note{color:var(--red)}.usage-grid{grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:16px;display:grid}.plan-compare{border-collapse:collapse;width:100%;font-size:calc(13px * var(--system-font-scale))}.plan-compare th,.plan-compare td{border-bottom:1px solid var(--line);text-align:start;white-space:normal;padding:8px 10px}.plan-compare td.num{font-variant-numeric:tabular-nums}.plan-compare .over{color:var(--red);font-weight:600}.feature-diff{font-size:calc(13px * var(--system-font-scale));grid-template-columns:1fr 1fr;gap:12px;display:grid}.feature-diff ul{margin:6px 0 0;padding-inline-start:18px}.feature-diff .gain{color:var(--green)}.feature-diff .loss{color:var(--red)}.dl-grid{grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:14px 20px;margin:0;display:grid}.dl-grid div{flex-direction:column;gap:3px;display:flex}.dl-grid dt{color:var(--muted);font-size:calc(12px * var(--system-font-scale))}.dl-grid dd{font-variant-numeric:tabular-nums;margin:0;font-weight:600}.matrix-table td,.matrix-table th{text-align:center}.matrix-table td:first-child,.matrix-table th:first-child{text-align:start}.matrix-yes{color:var(--green);font-weight:700}.matrix-no{color:var(--muted)}@media (max-width:640px){.feature-diff{grid-template-columns:1fr}}.physical-tag{font-size:calc(11.5px * var(--system-font-scale));white-space:nowrap;border-radius:20px;align-items:center;gap:4px;padding:2px 8px;font-weight:600;display:inline-flex}.physical-tag.in-folder{background:var(--green-bg);color:var(--green)}.physical-tag.taken{background:var(--amber-bg);color:var(--amber)}.physical-tag.overdue{background:var(--red-bg);color:var(--red)}.physical-sub{font-size:calc(11.5px * var(--system-font-scale));display:block}.physical-warning{border:1px solid var(--amber);border-radius:var(--radius);background:var(--amber-bg);color:var(--amber);font-size:calc(13px * var(--system-font-scale));margin:0 0 16px;padding:12px 14px}.physical-warning.overdue{border-color:var(--red);background:var(--red-bg);color:var(--red)}.physical-warning-title{align-items:center;gap:8px;margin:0;font-weight:700;display:flex}.physical-warning-list{flex-direction:column;gap:10px;margin:10px 0 0;padding:0;list-style:none;display:flex}.physical-warning-list li{background:var(--card);color:var(--ink);border-inline-start:3px solid var(--amber);border-radius:8px;padding:10px 12px}.physical-warning-list li.overdue{border-inline-start-color:var(--red)}.physical-warning-list li .btn{margin-top:8px}.physical-warning-doc{overflow-wrap:anywhere;margin:0 0 6px}.physical-overdue-note{color:var(--red);font-weight:600;font-size:calc(12px * var(--system-font-scale));display:block}.physical-facts{grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:6px 14px;margin:0;display:grid}.physical-facts dt{color:var(--muted);font-size:calc(11.5px * var(--system-font-scale))}.physical-facts dd{overflow-wrap:anywhere;margin:0}.physical-history-scroll{overflow-x:auto}.physical-history td{vertical-align:top}tr.doc-row.physical-out td:first-child{box-shadow:inset 3px 0 0 var(--amber)}tr.doc-row.physical-overdue td:first-child{box-shadow:inset 3px 0 0 var(--red)}.physical-sub-inline{margin-inline-start:8px}
