.ui-button{display:inline-flex;align-items:center;justify-content:center;gap:7px;min-height:36px;line-height:1.5}.ui-icon{width:18px;height:18px;flex:none}.ui-button .ui-icon,.ui-icon-button .ui-icon{fill:none}.ui-button:focus-visible,.ui-icon-button:focus-visible,.query-workspace button:focus-visible,.query-workspace input:focus-visible{outline:2px solid var(--primary-dark);outline-offset:3px}.ui-button-spinner{display:inline-block;width:18px;height:18px;border:2px solid currentColor;border-right-color:transparent;border-radius:50%;animation:query-spin .8s linear infinite}@keyframes query-spin{to{transform:rotate(360deg)}}.query-state{display:flex;align-items:center;flex-direction:column;justify-content:center;text-align:center;min-height:200px;gap:16px;padding:24px;margin:12px 0;background:var(--card);border:var(--border);border-radius:var(--radius-md);color:var(--ink)}.query-state--error{border-color:#d645452e}.query-state-symbol{color:var(--primary-dark);display:flex}.query-state--error .query-state-symbol{color:var(--danger)}.query-state-copy{min-width:0;max-width:40em;overflow-wrap:anywhere;font-size:var(--fs-14)}.query-state-copy p{color:var(--muted);margin:6px 0 0;line-height:1.65}.query-state--compact{flex-direction:row;flex-wrap:wrap;text-align:left;min-height:auto;padding:12px 16px;gap:10px;background:var(--card-soft)}.query-state--compact .query-state-copy{flex:1 1 200px;max-width:none;font-size:var(--fs-13)}.query-summary{display:flex;align-items:baseline;flex-wrap:wrap;gap:6px 12px;font-size:var(--fs-13);line-height:1.7;margin:18px 0 12px}.query-summary-label{flex:none;font-weight:600;color:var(--muted)}.query-summary-values{min-width:0;overflow-wrap:anywhere}.query-workspace .query-close-button{flex:none}@media(min-width:1024px){.query-workspace .query-filter-section{padding:16px 20px;margin-top:8px;border:var(--border);border-radius:var(--radius-md);background:var(--card-soft)}.query-filter-heading{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:8px;margin-bottom:12px}.query-filter-heading h3{display:flex;align-items:center;gap:8px;font-size:var(--fs-14);margin:0}.query-filter-heading .ui-icon{color:var(--primary-dark)}.query-draft-status{color:var(--primary-dark);font-size:var(--fs-12);min-height:1.6em}.query-workspace .query-filter-form{display:block}.query-filter-fields{border:0;padding:0;margin:0;min-width:0;display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:14px 20px;align-items:start}.query-filter-field{grid-column:span 3;min-width:0;display:flex;flex-direction:column;gap:7px;color:var(--muted);font-size:var(--fs-12)}.query-filter-field.query-filter-date{grid-column:span 6}.query-filter-field.query-filter-type{grid-column:span 2}.query-filter-field.query-filter-status{grid-column:span 4}.query-filter-field.query-filter-status--contract{grid-column:span 7}.query-filter-field.query-filter-status--distribution{grid-column:span 6}.query-filter-fields:not(:has(.query-picker-trigger)) .query-filter-status--contract{grid-column:span 10}.query-filter-fields:not(:has(.query-picker-trigger)) .query-filter-status--distribution{grid-column:1 / -1}.query-field-label-row{min-height:22px;display:flex;align-items:center;gap:8px;flex-wrap:wrap}.query-filter-date .query-field-label-row{justify-content:space-between}.query-workspace .query-filter-field>span:first-child{min-height:22px;display:flex;align-items:center}.query-workspace .query-filter-field>input,.query-workspace .query-picker-trigger{min-width:0;width:100%;min-height:38px;padding:8px 10px;border:1px solid rgba(28,24,20,.16);border-radius:8px;background:var(--card);color:var(--ink);font-family:inherit;font-size:var(--fs-14);line-height:1.5}.query-picker-trigger{display:flex;align-items:center;gap:6px;text-align:left;cursor:pointer}.query-picker-trigger>span{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.query-picker-trigger>small{font-size:var(--fs-11);color:var(--primary-dark)}.query-picker-trigger>.ui-icon{color:var(--muted);width:14px;height:14px}.query-choice-group{display:flex;align-items:center;flex-wrap:wrap;gap:6px;min-height:38px}.query-choice-group button{min-height:34px;border:1px solid rgba(28,24,20,.13);border-radius:999px;padding:6px 11px;background:var(--card);color:var(--muted);font:inherit;font-size:var(--fs-13);cursor:pointer}.query-choice-group button[aria-pressed=true]{color:var(--primary-dark);background:#1f9d8a1a;border-color:#1f9d8a52}.query-date-inputs{display:flex;gap:8px;align-items:center;min-width:0}.query-workspace .query-date-inputs .desktop-date-field{flex:1 1 0;min-width:0;width:auto}.query-workspace .query-date-inputs .desktop-date-trigger{height:40px;border-radius:8px;background:var(--card);border-color:#1c181429}.query-workspace .query-date-inputs .desktop-date-icon-btn{width:28px;padding:0 6px 0 0}.query-workspace .query-date-inputs .date-toggle-btn{flex:none;padding:5px 8px;font-size:var(--fs-12)}.query-workspace .query-filter-date .date-month-chips{display:flex;gap:4px;margin:0}.query-workspace .query-filter-date .quick-date-btn.sm{font-size:var(--fs-11);padding:2px 6px}.query-filter-footer{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;padding-top:12px;margin-top:12px;border-top:var(--border)}.query-filter-hint{color:var(--muted);font-size:var(--fs-12)}.query-filter-actions{display:flex;align-items:center;flex-wrap:wrap;gap:8px;margin-left:auto}.query-filter-fields:disabled{opacity:.6}.query-workspace .stats-grid{gap:12px;margin:0 0 12px}.query-workspace .stat-card{padding:12px 16px;box-shadow:none}.query-workspace .stat-card-value{font-size:var(--fs-22);font-variant-numeric:tabular-nums}.query-workspace .stat-card-label{font-size:var(--fs-12)}.query-workspace .table-action-bar{margin:0 0 12px;padding:8px 0}.query-workspace .table-action-left{display:flex;flex-direction:row;align-items:baseline;gap:12px;flex-wrap:wrap}.query-workspace .table-action-left h3{margin:0;font-size:var(--fs-16)}.query-selection{color:var(--primary-dark);font-size:var(--fs-13)}.query-workspace .table-actions{flex-wrap:wrap}.query-workspace .data-table{min-width:max(880px,calc(780px * var(--font-scale)))}}@media(max-width:1023px){.query-state{padding:20px;gap:12px}.query-state--compact{padding:12px}}@media(prefers-reduced-motion:reduce){.ui-button-spinner{animation:none;border-style:dotted}}@media(min-width:1024px){:root[data-desktop-font-scale-enabled="1"]:is([data-font-scale="150"],[data-font-scale="175"]) .query-filter-fields{grid-template-columns:repeat(2,minmax(0,1fr))}:root[data-desktop-font-scale-enabled="1"]:is([data-font-scale="150"],[data-font-scale="175"]) .query-filter-field{grid-column:span 1}:root[data-desktop-font-scale-enabled="1"]:is([data-font-scale="150"],[data-font-scale="175"]) .query-filter-status--contract{grid-column:1 / -1}:root[data-desktop-font-scale-enabled="1"]:is([data-font-scale="150"],[data-font-scale="175"]) .query-filter-date{grid-column:1 / -1}}.query-state--compact.panel-loading{min-height:auto;align-items:center;justify-content:center}.batch-renew-modal--result .batch-renew-result{margin:0}.batch-renew-modal .modal-title:focus{outline:none}.batch-result-summary{display:flex;gap:8px;align-items:center;font-size:var(--fs-16);color:var(--ink)}.batch-result-summary .ui-icon{color:var(--primary-dark)}.batch-result-guidance{margin:10px 0 20px;color:var(--muted);line-height:1.7;font-size:var(--fs-13)}.batch-result-table{width:100%;border-collapse:collapse;font-size:var(--fs-14);table-layout:fixed}.batch-result-table caption{position:absolute;width:1px;height:1px;padding:0;overflow:hidden;clip-path:inset(50%);white-space:nowrap}.batch-result-table th{text-align:left;background:var(--card-soft);color:var(--muted);font-size:var(--fs-12);font-weight:500}.batch-result-table th:first-child{width:92px}.batch-result-table th:nth-child(2){width:40%}.batch-result-table th,.batch-result-table td{padding:14px 12px;border-bottom:var(--border);vertical-align:top;overflow-wrap:anywhere}.batch-result-badge{display:inline-flex;align-items:center;gap:4px;font-size:var(--fs-12);white-space:nowrap}.batch-result-badge .ui-icon{width:15px;height:15px}.batch-result-badge.is-success{color:var(--primary-dark)}.batch-result-badge.is-failed{color:var(--danger)}.batch-result-codes{font-weight:600;font-variant-numeric:tabular-nums}.batch-result-reason{color:var(--muted);line-height:1.6}.batch-result-row--failed .batch-result-reason{color:var(--danger)}@media(min-width:1024px){.modal-card.large.batch-renew-modal--result{width:min(920px,calc(100vw - 64px))}}@media(max-width:1023px){.batch-result-table{display:block}.batch-result-table thead{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}.batch-result-table tbody{display:grid;gap:12px}.batch-result-table tr{display:flex;flex-direction:column;gap:8px;border:var(--border);border-radius:var(--radius-sm);padding:16px;min-width:0}.batch-result-table td{display:block;padding:0;border:0}.batch-result-table .batch-result-reason{font-size:var(--fs-13)}}@media(min-width:1024px){.query-filter-overview{display:grid;gap:12px;margin-bottom:12px}.query-filter-overview>.query-filter-section{min-width:0}.query-workspace .query-filter-overview>.stats-grid{margin:0}}@media(min-width:1024px){.query-filter-overview.has-results{grid-template-columns:minmax(0,1fr) 190px;align-items:start}.query-workspace .query-desktop .query-filter-overview>.stats-grid.stats-grid{min-width:0;grid-template-columns:minmax(0,1fr);margin-top:8px}.query-filter-overview .stat-card{min-width:0;overflow-wrap:anywhere}:root[data-desktop-font-scale-enabled="1"]:is([data-font-scale="150"],[data-font-scale="175"]) .query-filter-overview.has-results{grid-template-columns:minmax(0,1fr) 230px}}@media(min-width:1024px)and (max-width:1279px){.query-filter-overview.has-results{grid-template-columns:minmax(0,1fr) 130px}.query-filter-overview .query-filter-fields{column-gap:12px}.query-filter-overview .query-filter-date{grid-column:span 7}.query-filter-overview .query-filter-date+.query-filter-field{grid-column:span 3}.query-filter-overview .query-filter-date+.query-filter-field+.query-filter-field{grid-column:span 2}:root[data-desktop-font-scale-enabled="1"]:is([data-font-scale="150"],[data-font-scale="175"]) .query-filter-overview .query-filter-date{grid-column:1 / -1}:root[data-desktop-font-scale-enabled="1"]:is([data-font-scale="150"],[data-font-scale="175"]) .query-filter-overview .query-filter-date+.query-filter-field,:root[data-desktop-font-scale-enabled="1"]:is([data-font-scale="150"],[data-font-scale="175"]) .query-filter-overview .query-filter-date+.query-filter-field+.query-filter-field{grid-column:span 1}}.monthly-controls{display:flex;flex-direction:column;gap:12px}.monthly-title-row{display:flex;align-items:center;gap:10px}.monthly-label-row,.monthly-month-row{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:center;gap:12px}.monthly-title-row>span,.monthly-agent-label{font-size:var(--fs-13);font-weight:600;color:var(--ink)}.monthly-date-copy-row{display:flex;align-items:center;justify-content:space-between;gap:8px}.monthly-month-row .month-nav{min-width:0;gap:2px;flex:0 1 auto}.monthly-controls .month-nav .desktop-month-field{min-width:0;width:100px;flex:1 1 100px}.monthly-controls .month-nav .desktop-month-popover{width:min(280px,calc(100vw - 48px))}.monthly-month-row .month-nav input{min-width:0;width:100%;padding-inline:4px}.monthly-month-row .icon-btn{flex:0 0 34px;width:34px;height:36px;padding:4px;border-radius:8px}.monthly-controls .month-nav .desktop-month-trigger{padding:8px 4px 8px 10px;gap:2px}.monthly-copy{flex-shrink:0;font-size:var(--fs-14);padding:8px 0 8px 8px}.monthly-copy:disabled{opacity:.45;cursor:default}.monthly-dates{display:flex;flex-wrap:wrap;gap:6px;min-width:0}.monthly-dates .quick-date-btn.monthly-date{position:relative;padding:4px 14px 4px 8px;border-radius:8px}.monthly-day-number{position:relative}.monthly-date sup{position:absolute;top:-2px;left:calc(100% + 1px);font-size:calc(var(--fs-12) * .7);line-height:1}.monthly-agent-field{min-width:0}.monthly-agent-field .query-picker-trigger{width:100%;min-width:0;overflow:hidden;white-space:nowrap;text-overflow:clip;text-align:left;border:var(--border);border-radius:var(--radius-sm);background:var(--card);color:var(--ink);padding:10px 12px;font:inherit;min-height:44px}.report-summary.monthly-summary{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;margin-bottom:4px;border:0;border-radius:0;background:transparent;overflow:visible}.monthly-summary .report-summary-card{min-width:0;display:flex;flex-direction:column;align-items:center;justify-content:flex-start;gap:6px;padding:10px 4px;border:var(--border);border-radius:10px;text-align:center}.monthly-summary .report-summary-label{color:var(--muted);font-size:var(--fs-12);font-weight:500}.monthly-summary-amount{display:flex;flex-wrap:wrap;justify-content:center;align-items:baseline;gap:3px;min-width:0;max-width:100%;color:var(--ink);font-size:var(--fs-12);font-weight:600}.monthly-summary-amount>span{min-width:0;overflow-wrap:anywhere}.monthly-summary-amount small{font-size:var(--fs-11);font-weight:400}.monthly-summary .report-summary-value{font-size:var(--fs-18);line-height:1.5}.monthly-summary .monthly-pending-card{position:relative;font:inherit;color:var(--ink);appearance:none}.monthly-summary .monthly-pending-card:not(:disabled){background:#fff3e6;border-color:#edd1ad;cursor:pointer}.monthly-summary .monthly-pending-card:not(:disabled):active{background:#ffe5c7}.monthly-summary .monthly-pending-card:focus-visible{outline:2px solid var(--warning);outline-offset:3px}.monthly-summary .monthly-pending-card:disabled{cursor:default;opacity:1}.monthly-pending-link{position:absolute;top:5px;right:5px;width:12px;height:12px;fill:none;stroke:#ab6419;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}.report-group{scroll-margin-top:calc(var(--header-height) + 20px)}@media(min-width:1024px){.monthly-agent-field .query-picker-trigger{border-radius:8px;min-height:44px}}.query-workspace--exact .panel-header>div:first-child{min-width:0}.query-workspace--exact .monthly-group-subtitle{white-space:nowrap;overflow:hidden;text-overflow:clip;font-size:var(--fs-12)}.monthly-summary .report-summary-card:last-child{border-bottom:var(--border)}@media(min-width:1024px){.monthly-summary .report-summary-card{display:grid;grid-template-columns:auto minmax(0,1fr) auto;grid-template-rows:auto;align-items:center;gap:0 4px;min-height:44px;padding:7px 16px;text-align:left}.monthly-summary .report-summary-label{grid-column:1;grid-row:1;justify-self:start}.monthly-summary .report-summary-label:after{content:"："}.monthly-summary .report-summary-value{grid-column:3;grid-row:1;justify-self:end;margin-left:8px}.monthly-summary-amount{grid-column:2;grid-row:1;justify-self:start;justify-content:flex-start}.monthly-pending-link{top:5px;right:5px}}.loading-arcs-simple{transform-origin:90px 90px;animation:loading-orbit var(--loading-duration-small, 1s) var(--loading-ease-rotation, cubic-bezier(.45, .27, .55, .73)) infinite}.loading-arcs-simple circle{stroke-width:8}.loading-arc-breathe{stroke-dasharray:12 88;stroke-dashoffset:0;animation:loading-arc-sweep calc(var(--loading-duration-small, 1s) * 25) cubic-bezier(.45,0,.55,1) infinite}.loading-arc-breathe.loading-arc-light{stroke-dasharray:76 24;stroke-dashoffset:-18;animation-name:loading-arc-sweep-light}.loading-indicator--button circle{stroke-width:12}.loading-indicator--inline{width:24px;height:24px}.loading-indicator--button{width:20px;height:20px;margin-inline-end:6px}.loading-indicator--button .loading-arc-teal{stroke:currentColor}.loading-indicator--button .loading-arc-light{stroke:currentColor;opacity:.65}.loading-state{display:flex;align-items:center;justify-content:center;gap:12px;min-height:140px;color:var(--muted);font-size:var(--fs-14)}.loading-state--inline{justify-content:flex-start;min-height:0;padding-block:8px;gap:8px}.content.login-content:has(.login-page){display:flex;grid-column:1 / -1;grid-row:1 / -1;align-items:flex-start;justify-content:center;min-height:0;padding:40px 24px}.login-content .login-page{flex-shrink:0;width:100%;max-width:400px;margin:auto;padding:0;gap:28px}.login-page .login-header{text-align:center;margin:0}.login-header .login-brand{display:flex;align-items:center;justify-content:center;gap:12px;margin:0 0 14px}.login-brand img{width:44px;height:44px;border-radius:var(--brand-logo-radius)}.login-brand .brand-wordmark{font-size:calc(var(--fs-32) * 1.0625)}.login-header .eyebrow{font-size:var(--fs-12);letter-spacing:.12em;color:var(--muted)}.login-page .login-card{padding:28px;gap:20px;border-radius:20px;box-shadow:0 12px 32px #1e140a0e}.login-card-heading h2{margin:0;font-size:var(--fs-22);font-weight:600;color:var(--ink)}.login-card-heading p{margin:8px 0 0;font-size:var(--fs-13);color:var(--muted);line-height:1.7}.login-page .field{margin:0;gap:8px;min-width:0}.login-page .field>span{font-size:var(--fs-13)}.login-page .field input{min-height:48px;border-radius:12px;padding:12px;font-size:var(--fs-14);width:100%;min-width:0}@media(max-width:767px),(hover:none)and (pointer:coarse){.login-page .field input,.login-page .field input:focus{font-size:max(16px,var(--fs-14))}}.login-page .login-code-row{gap:8px}.login-page .login-code-button{min-height:48px;border-radius:12px;padding-inline:12px;font-size:var(--fs-13)}.login-page .login-actions{margin:4px 0 0}.login-page .login-actions .primary-btn{min-height:48px;border-radius:12px;font-size:var(--fs-15)}.login-page .handbook-login-link{display:block;text-align:center;color:var(--primary-dark);font-size:var(--fs-14);line-height:1.6;padding:12px 16px;min-height:44px;border-radius:var(--radius-sm);text-decoration:none}.login-page .handbook-login-link:hover{color:var(--primary)}.login-page .handbook-login-link:focus-visible{outline:2px solid var(--primary);outline-offset:2px}@media(max-width:380px){.content.login-content:has(.login-page){padding-inline:18px}.login-page .login-card{padding:22px}.login-page .login-code-row{grid-template-columns:minmax(0,1fr)}.login-page .login-code-button{justify-self:end}}@keyframes loading-arc-sweep{0%{stroke-dasharray:12 88;stroke-dashoffset:0}2%{stroke-dasharray:76 24;stroke-dashoffset:0}4%{stroke-dasharray:12 88;stroke-dashoffset:-64}6%{stroke-dasharray:76 24;stroke-dashoffset:-64}8%{stroke-dasharray:12 88;stroke-dashoffset:-128}10%{stroke-dasharray:76 24;stroke-dashoffset:-128}12%{stroke-dasharray:12 88;stroke-dashoffset:-192}14%{stroke-dasharray:76 24;stroke-dashoffset:-192}16%{stroke-dasharray:12 88;stroke-dashoffset:-256}18%{stroke-dasharray:76 24;stroke-dashoffset:-256}20%{stroke-dasharray:12 88;stroke-dashoffset:-320}22%{stroke-dasharray:76 24;stroke-dashoffset:-320}24%{stroke-dasharray:12 88;stroke-dashoffset:-384}26%{stroke-dasharray:76 24;stroke-dashoffset:-384}28%{stroke-dasharray:12 88;stroke-dashoffset:-448}30%{stroke-dasharray:76 24;stroke-dashoffset:-448}32%{stroke-dasharray:12 88;stroke-dashoffset:-512}34%{stroke-dasharray:76 24;stroke-dashoffset:-512}36%{stroke-dasharray:12 88;stroke-dashoffset:-576}38%{stroke-dasharray:76 24;stroke-dashoffset:-576}40%{stroke-dasharray:12 88;stroke-dashoffset:-640}42%{stroke-dasharray:76 24;stroke-dashoffset:-640}44%{stroke-dasharray:12 88;stroke-dashoffset:-704}46%{stroke-dasharray:76 24;stroke-dashoffset:-704}48%{stroke-dasharray:12 88;stroke-dashoffset:-768}50%{stroke-dasharray:76 24;stroke-dashoffset:-768}52%{stroke-dasharray:12 88;stroke-dashoffset:-832}54%{stroke-dasharray:76 24;stroke-dashoffset:-832}56%{stroke-dasharray:12 88;stroke-dashoffset:-896}58%{stroke-dasharray:76 24;stroke-dashoffset:-896}60%{stroke-dasharray:12 88;stroke-dashoffset:-960}62%{stroke-dasharray:76 24;stroke-dashoffset:-960}64%{stroke-dasharray:12 88;stroke-dashoffset:-1024}66%{stroke-dasharray:76 24;stroke-dashoffset:-1024}68%{stroke-dasharray:12 88;stroke-dashoffset:-1088}70%{stroke-dasharray:76 24;stroke-dashoffset:-1088}72%{stroke-dasharray:12 88;stroke-dashoffset:-1152}74%{stroke-dasharray:76 24;stroke-dashoffset:-1152}76%{stroke-dasharray:12 88;stroke-dashoffset:-1216}78%{stroke-dasharray:76 24;stroke-dashoffset:-1216}80%{stroke-dasharray:12 88;stroke-dashoffset:-1280}82%{stroke-dasharray:76 24;stroke-dashoffset:-1280}84%{stroke-dasharray:12 88;stroke-dashoffset:-1344}86%{stroke-dasharray:76 24;stroke-dashoffset:-1344}88%{stroke-dasharray:12 88;stroke-dashoffset:-1408}90%{stroke-dasharray:76 24;stroke-dashoffset:-1408}92%{stroke-dasharray:12 88;stroke-dashoffset:-1472}94%{stroke-dasharray:76 24;stroke-dashoffset:-1472}96%{stroke-dasharray:12 88;stroke-dashoffset:-1536}98%{stroke-dasharray:76 24;stroke-dashoffset:-1536}to{stroke-dasharray:12 88;stroke-dashoffset:-1600}}@keyframes loading-arc-sweep-light{0%{stroke-dasharray:76 24;stroke-dashoffset:-18}2%{stroke-dasharray:12 88;stroke-dashoffset:-82}4%{stroke-dasharray:76 24;stroke-dashoffset:-82}6%{stroke-dasharray:12 88;stroke-dashoffset:-146}8%{stroke-dasharray:76 24;stroke-dashoffset:-146}10%{stroke-dasharray:12 88;stroke-dashoffset:-210}12%{stroke-dasharray:76 24;stroke-dashoffset:-210}14%{stroke-dasharray:12 88;stroke-dashoffset:-274}16%{stroke-dasharray:76 24;stroke-dashoffset:-274}18%{stroke-dasharray:12 88;stroke-dashoffset:-338}20%{stroke-dasharray:76 24;stroke-dashoffset:-338}22%{stroke-dasharray:12 88;stroke-dashoffset:-402}24%{stroke-dasharray:76 24;stroke-dashoffset:-402}26%{stroke-dasharray:12 88;stroke-dashoffset:-466}28%{stroke-dasharray:76 24;stroke-dashoffset:-466}30%{stroke-dasharray:12 88;stroke-dashoffset:-530}32%{stroke-dasharray:76 24;stroke-dashoffset:-530}34%{stroke-dasharray:12 88;stroke-dashoffset:-594}36%{stroke-dasharray:76 24;stroke-dashoffset:-594}38%{stroke-dasharray:12 88;stroke-dashoffset:-658}40%{stroke-dasharray:76 24;stroke-dashoffset:-658}42%{stroke-dasharray:12 88;stroke-dashoffset:-722}44%{stroke-dasharray:76 24;stroke-dashoffset:-722}46%{stroke-dasharray:12 88;stroke-dashoffset:-786}48%{stroke-dasharray:76 24;stroke-dashoffset:-786}50%{stroke-dasharray:12 88;stroke-dashoffset:-850}52%{stroke-dasharray:76 24;stroke-dashoffset:-850}54%{stroke-dasharray:12 88;stroke-dashoffset:-914}56%{stroke-dasharray:76 24;stroke-dashoffset:-914}58%{stroke-dasharray:12 88;stroke-dashoffset:-978}60%{stroke-dasharray:76 24;stroke-dashoffset:-978}62%{stroke-dasharray:12 88;stroke-dashoffset:-1042}64%{stroke-dasharray:76 24;stroke-dashoffset:-1042}66%{stroke-dasharray:12 88;stroke-dashoffset:-1106}68%{stroke-dasharray:76 24;stroke-dashoffset:-1106}70%{stroke-dasharray:12 88;stroke-dashoffset:-1170}72%{stroke-dasharray:76 24;stroke-dashoffset:-1170}74%{stroke-dasharray:12 88;stroke-dashoffset:-1234}76%{stroke-dasharray:76 24;stroke-dashoffset:-1234}78%{stroke-dasharray:12 88;stroke-dashoffset:-1298}80%{stroke-dasharray:76 24;stroke-dashoffset:-1298}82%{stroke-dasharray:12 88;stroke-dashoffset:-1362}84%{stroke-dasharray:76 24;stroke-dashoffset:-1362}86%{stroke-dasharray:12 88;stroke-dashoffset:-1426}88%{stroke-dasharray:76 24;stroke-dashoffset:-1426}90%{stroke-dasharray:12 88;stroke-dashoffset:-1490}92%{stroke-dasharray:76 24;stroke-dashoffset:-1490}94%{stroke-dasharray:12 88;stroke-dashoffset:-1554}96%{stroke-dasharray:76 24;stroke-dashoffset:-1554}98%{stroke-dasharray:12 88;stroke-dashoffset:-1618}to{stroke-dasharray:76 24;stroke-dashoffset:-1618}}@media(prefers-reduced-motion:reduce){.loading-arcs-simple,.loading-arc-breathe{animation:none}}:root{--modal-padding: 20px;--modal-rule: rgba(28, 24, 20, .1);--modal-secondary: #f4f2ef;--modal-secondary-hover: #e9e5e0;--modal-primary: var(--primary-dark);--modal-primary-hover: #0c5b4e;--modal-danger: #b42f36;--modal-danger-hover: #94242b}.modal{position:fixed;inset:0;background:#14100c73;display:flex;align-items:center;justify-content:center;padding:24px;z-index:230;overscroll-behavior:contain;overflow-y:auto;-webkit-overflow-scrolling:touch}.modal-card{background:var(--card);border-radius:var(--radius-lg);width:min(100%,640px);padding:var(--modal-padding);display:grid;gap:12px;max-height:90vh;overflow:auto;box-shadow:0 24px 60px #14100c2e;position:relative}.modal-header{display:flex;justify-content:space-between;align-items:flex-start;gap:12px;padding-bottom:12px;border-bottom:1px solid var(--modal-rule)}.modal-header>div{min-width:0}.modal-card .modal-body :is(input,select,textarea){min-width:0;max-width:100%}.modal-title{margin:0;font-family:var(--font-body);font-size:var(--fs-18);font-weight:600;line-height:1.4;color:var(--ink);overflow-wrap:anywhere}.icon-close{width:44px;height:44px;padding:0;border-radius:999px;border:0;background:var(--modal-secondary);color:var(--muted);display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;cursor:pointer}.icon-close svg{width:20px;height:20px}.icon-close:hover:not(:disabled){background:var(--modal-secondary-hover)}.icon-close:disabled{opacity:.55;cursor:not-allowed}.icon-close:focus-visible{outline:3px solid var(--modal-primary);outline-offset:3px}.modal-actions{display:flex;align-items:center;justify-content:flex-end;gap:8px;padding:12px 0 0;border-top:1px solid var(--modal-rule)}.modal-footer{display:flex;justify-content:space-between;align-items:center;gap:8px;padding:12px 0 var(--modal-padding);border-top:1px solid var(--modal-rule);flex-shrink:0}.modal-card :is(.modal-header,.modal-actions,.modal-footer) :is(.primary-btn,.ghost-btn,.danger-btn,.warn-soft-btn,.ink-btn){display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:44px;padding:10px 14px;border-radius:999px;font-family:var(--font-body);font-size:var(--fs-14);font-weight:600;line-height:1.4}.modal-card :is(.modal-header,.modal-actions,.modal-footer) .primary-btn{background:var(--modal-primary);color:var(--card)}.modal-card :is(.modal-header,.modal-actions,.modal-footer) .primary-btn:hover:not(:disabled){background:var(--modal-primary-hover)}.modal-card :is(.modal-header,.modal-actions,.modal-footer) .ghost-btn{background:var(--modal-secondary);color:var(--ink)}.modal-card :is(.modal-header,.modal-actions,.modal-footer) .ghost-btn:hover:not(:disabled){background:var(--modal-secondary-hover)}.modal-card :is(.modal-header,.modal-actions,.modal-footer) .danger-btn{background:var(--modal-danger);color:var(--card)}.modal-card :is(.modal-header,.modal-actions,.modal-footer) .danger-btn:hover:not(:disabled){background:var(--modal-danger-hover)}.modal-card :is(.modal-header,.modal-actions,.modal-footer) :is(.primary-btn,.ghost-btn,.danger-btn,.warn-soft-btn,.ink-btn):disabled{opacity:.55;cursor:not-allowed}@media(max-width:600px){:root{--modal-padding: 16px}}[data-focus-dialog][tabindex="-1"]:focus{outline:none}.content.not-found-content{grid-column:1 / -1;grid-row:1 / -1;padding:var(--content-padding)}.not-found-page{display:grid;place-items:center;min-width:0;min-height:100%;padding:32px 12px;text-align:center}.not-found-message{width:min(100%,460px)}.not-found-code{margin:0 0 12px;color:var(--primary-dark);font-size:var(--fs-32);font-weight:700;line-height:1.2;letter-spacing:.08em}.not-found-message h1{margin:0;font-family:var(--font-display);font-size:var(--fs-24);line-height:1.5;text-wrap:balance}.not-found-description{margin:12px 0 24px;color:var(--muted);font-size:var(--fs-15);line-height:1.8;overflow-wrap:anywhere}.not-found-link{display:inline-flex;align-items:center;justify-content:center;min-height:44px;max-width:100%;text-decoration:none}.not-found-link:focus-visible{outline:2px solid var(--primary-dark);outline-offset:4px}@media(max-width:767px){.content:has(>.not-found-page):not(.not-found-content){grid-row:2}}:root{color-scheme:light;--bg: #f6f4f1;--bg-accent: #ece7e2;--card: #ffffff;--card-soft: #fbfbfa;--ink: #1b1b1f;--muted: #6f6a63;--primary: #1f9d8a;--primary-dark: #117565;--ink-soft: #2d2b29;--danger: #d64545;--warning: #f0a04b;--shadow: 0 16px 40px rgba(30, 20, 10, .12);--radius-lg: 24px;--radius-md: 16px;--radius-sm: 12px;--brand-logo-radius: 28.125%;--border: 1px solid rgba(28, 24, 20, .08);--font-body: "Noto Sans TC", "PingFang TC", "Microsoft JhengHei", sans-serif;--font-display: "Noto Serif TC", "Noto Sans TC", serif;--phone-width: 420px;--phone-height: 860px;--phone-pad-x: 18px;--phone-pad-y: 22px;--vh: 1vh;--sidebar-width-expanded: 240px;--sidebar-width-collapsed: 72px;--font-scale: 1;--fs-11: calc(11px * var(--font-scale));--fs-12: calc(12px * var(--font-scale));--fs-13: calc(13px * var(--font-scale));--fs-14: calc(14px * var(--font-scale));--fs-15: calc(15px * var(--font-scale));--fs-16: calc(16px * var(--font-scale));--fs-17: calc(17px * var(--font-scale));--fs-18: calc(18px * var(--font-scale));--fs-20: calc(20px * var(--font-scale));--fs-22: calc(22px * var(--font-scale));--fs-24: calc(24px * var(--font-scale));--fs-26: calc(26px * var(--font-scale));--fs-28: calc(28px * var(--font-scale));--fs-32: calc(32px * var(--font-scale));--sidebar-width: 0px;--header-height: 56px;--content-max-width: var(--phone-width);--content-padding: var(--phone-pad-x);--tab-icon-size-mobile: clamp(18px, calc(18px + (var(--font-scale) - 1) * 6px), 24px);--tab-icon-size-sidebar: clamp(20px, calc(20px + (var(--font-scale) - 1) * 8px), 28px);--icon-btn-size: clamp(36px, calc(36px + (var(--font-scale) - 1) * 11px), 44px);--icon-btn-glyph-size: clamp(18px, calc(18px + (var(--font-scale) - 1) * 7px), 24px);--sidebar-toggle-size: clamp(36px, calc(36px + (var(--font-scale) - 1) * 8px), 44px);--sidebar-toggle-icon-size: clamp(20px, calc(20px + (var(--font-scale) - 1) * 6px), 26px)}@media(max-width:1023px),(min-width:1024px)and (max-width:1366px)and (hover:none)and (pointer:coarse){:root[data-font-scale="115"]{--font-scale: 1.15}:root[data-font-scale="130"]{--font-scale: 1.3}:root[data-font-scale="150"]{--font-scale: 1.5}:root[data-font-scale="175"]{--font-scale: 1.75}}:root[data-desktop-font-scale-enabled="1"][data-font-scale="115"]{--font-scale: 1.15}:root[data-desktop-font-scale-enabled="1"][data-font-scale="130"]{--font-scale: 1.3}:root[data-desktop-font-scale-enabled="1"][data-font-scale="150"]{--font-scale: 1.5}:root[data-desktop-font-scale-enabled="1"][data-font-scale="175"]{--font-scale: 1.75}*{box-sizing:border-box}html,body,#root{height:100%}body{margin:0;font-family:var(--font-body);font-size:var(--fs-16);background:radial-gradient(circle at top,#fff7ef 0%,var(--bg) 55%,#f1efe8 100%);color:var(--ink);min-height:100vh}html{-webkit-text-size-adjust:100%}body:before{content:"";position:fixed;inset:0;background:linear-gradient(120deg,rgba(255,255,255,.6),transparent 45%),radial-gradient(circle at 80% 10%,rgba(31,157,138,.15),transparent 40%);pointer-events:none;z-index:0}.skip-link{position:absolute;top:12px;left:12px;padding:8px 12px;border-radius:999px;background:#fff;color:var(--ink);box-shadow:var(--shadow);transform:translateY(-200%);transition:transform .2s ease;z-index:10}.skip-link:focus-visible{transform:translateY(0)}[v-cloak]{display:none}.app{position:relative;padding:32px 16px 40px;display:flex;justify-content:center;min-height:100vh;min-height:100svh;min-height:100dvh;z-index:1}.phone{width:min(100%,var(--phone-width));height:min(100vh,var(--phone-height));height:min(100svh,var(--phone-height));height:min(100dvh,var(--phone-height));background:var(--card);border-radius:36px;padding:var(--phone-pad-y) var(--phone-pad-x);box-shadow:var(--shadow);border:var(--border);position:relative;overflow:hidden;display:grid;grid-template-rows:auto 1fr auto;gap:0}.topbar{display:none;justify-content:space-between;align-items:center;gap:16px;padding-bottom:0;border-bottom:1px solid rgba(28,24,20,.06)}.topbar--mobile-visible{display:flex}.eyebrow{text-transform:uppercase;letter-spacing:.2em;font-size:var(--fs-11);color:var(--muted)}.topbar-brand{display:inline-flex;align-items:center;gap:10px;min-width:0;flex:1 1 auto}.topbar-brand-logo{width:36px;height:36px;border-radius:var(--brand-logo-radius);flex:0 0 auto}.sidebar-brand-logo{border-radius:var(--brand-logo-radius)}.topbar-brand-text{font-family:var(--font-display);font-size:var(--fs-26);letter-spacing:.02em;line-height:1.1;font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.topbar-actions{display:flex;align-items:center;gap:10px;flex-wrap:wrap;justify-content:flex-end}.session-chip{display:inline-flex;align-items:center;gap:6px;padding:6px 10px;border-radius:999px;font-size:var(--fs-12);border:1px solid transparent;background:#1f9d8a14;color:var(--primary-dark)}.session-chip .dot{width:7px;height:7px;border-radius:999px;background:currentColor}.session-chip.error{background:#d645451a;color:var(--danger)}.session-chip.idle{background:#6f6a631a;color:var(--muted)}.session-chip.offline{background:#6f6a6326;color:var(--muted)}.session-chip.disconnected{background:#d6454526;color:var(--danger)}.session-chip.checking{background:#ffc10726;color:#b8860b}.refresh-btn{border:none;background:#6f6a6314;color:var(--muted);width:32px;height:32px;border-radius:8px;cursor:pointer;display:flex;align-items:center;justify-content:center;padding:0;transition:background-color .2s ease,color .2s ease}.refresh-btn:hover{background:#6f6a6326;color:var(--ink-soft)}.refresh-btn:active{background:#6f6a6333}.refresh-icon{width:16px;height:16px;display:block}.content{display:grid;gap:20px;min-height:0;min-width:0;overflow-y:auto;padding-top:0;padding-bottom:12px;scroll-padding-bottom:12px}.content--virtual-list{display:flex;flex-direction:column;gap:20px;overflow:hidden;padding-bottom:0;scroll-padding-bottom:0}.content--virtual-list .tab-panel,.content--virtual-list .virtual-list-container{flex:1;min-height:0}@media(max-width:767px){.topbar--mobile-visible{padding:4px 2px 12px;border-bottom-color:#1c181414;align-items:center;gap:8px;flex-wrap:nowrap}.topbar--mobile-visible .topbar-brand{flex:1 1 auto;min-width:0;gap:9px}.topbar--mobile-visible .topbar-brand-logo{width:32px;height:32px}.topbar--mobile-visible .topbar-brand-text{font-size:clamp(calc(var(--fs-22) / var(--font-scale)),calc(calc(var(--fs-22) / var(--font-scale)) + (var(--font-scale) - 1) * 4px),calc(var(--fs-26) / var(--font-scale)));letter-spacing:.015em;line-height:1.14;padding-bottom:2px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.topbar--mobile-visible .topbar-actions{flex:0 0 auto;flex-direction:row;align-items:center;flex-wrap:nowrap;gap:8px}.topbar--mobile-visible .session-chip{padding:clamp(6px,calc(6px + (var(--font-scale) - 1) * 3px),8px) clamp(10px,calc(10px + (var(--font-scale) - 1) * 5px),14px);font-size:clamp(calc(var(--fs-13) / var(--font-scale)),calc(calc(var(--fs-13) / var(--font-scale)) + (var(--font-scale) - 1) * 4px),calc(var(--fs-16) / var(--font-scale)));white-space:nowrap;max-width:none;flex:0 0 auto;gap:clamp(6px,calc(6px + (var(--font-scale) - 1) * 2px),8px)}.topbar--mobile-visible .refresh-btn{width:var(--icon-btn-size);height:var(--icon-btn-size);border-radius:clamp(10px,calc(10px + (var(--font-scale) - 1) * 3px),12px);flex:0 0 auto}.topbar--mobile-visible .refresh-icon{width:clamp(17px,calc(17px + (var(--font-scale) - 1) * 5px),21px);height:clamp(17px,calc(17px + (var(--font-scale) - 1) * 5px),21px)}.content--with-topbar{padding-top:16px}}.login-content{padding-bottom:24px}.login-page{display:grid;gap:14px;padding:8px 4px 12px}.login-header h1{margin:6px 0 0;font-family:var(--font-display);font-size:var(--fs-28);text-wrap:balance}.login-header p{margin:8px 0 0;color:var(--muted);font-size:var(--fs-14)}.login-card{background:#fff;border-radius:18px;border:var(--border);padding:16px;display:grid;gap:14px;box-shadow:0 10px 22px #1e140a0f}.login-code-row{display:grid;grid-template-columns:minmax(0,1fr) max-content;align-items:end;gap:10px}.login-code-button{display:inline-flex;align-items:center;justify-content:center;min-height:40px;padding-inline:16px;white-space:nowrap}.login-actions{display:flex;flex-wrap:wrap;gap:10px}.login-actions .primary-btn{width:100%;min-height:44px}.helper{font-size:var(--fs-12);color:var(--muted)}.tab-panel{display:flex;flex-direction:column;gap:18px;min-width:0}.panel-header h2{margin:0;font-size:var(--fs-22);font-family:var(--font-display);text-wrap:balance}.panel-header p{margin:6px 0 0;color:var(--muted);font-size:var(--fs-14)}.panel-card{background:var(--card-soft);border-radius:var(--radius-md);border:var(--border);padding:16px;display:grid;gap:12px}.segmented{display:flex;flex-wrap:wrap;gap:8px;background:transparent;border-radius:999px;padding:0;border:none}.segmented button{border:1px solid rgba(28,24,20,.12);background:#fff;color:var(--ink);padding:6px 12px;border-radius:999px;font-size:var(--fs-12);cursor:pointer}.segmented button.active{background:#1f9d8a1f;border-color:#1f9d8a73;color:var(--primary-dark);font-weight:600}.filter-actions{display:flex;gap:10px;justify-content:flex-end;align-items:center}.chip-list{display:flex;align-items:center;gap:8px;flex-wrap:wrap;justify-content:flex-end}.chip-btn{border:none;background:#1f9d8a1f;color:var(--primary-dark);padding:6px 10px;border-radius:999px;font-size:var(--fs-12);cursor:pointer}.chip-btn:hover{background:#1f9d8a33}.chip-add{border:1px dashed rgba(31,157,138,.4);background:transparent;color:var(--primary-dark);width:28px;height:28px;border-radius:10px;font-size:calc(var(--fs-11) * 0);line-height:0;display:inline-flex;align-items:center;justify-content:center;position:relative;flex:0 0 auto;cursor:pointer}.chip-add:hover{background:#1f9d8a14}.chip-add:before{content:"";width:14px;height:14px;background-color:currentColor;-webkit-mask-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2.4' stroke-linecap='round'><path d='M12 5v14M5 12h14'/></svg>");mask-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2.4' stroke-linecap='round'><path d='M12 5v14M5 12h14'/></svg>");-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat;-webkit-mask-position:center;mask-position:center;-webkit-mask-size:14px 14px;mask-size:14px 14px}.picker-list{display:grid;gap:8px}.modal-body .field{margin-bottom:0}.modal-body .field-grid{gap:12px}.picker-item{border:var(--border);background:#fbfbfa;padding:10px 12px;border-radius:12px;display:flex;justify-content:space-between;align-items:center;font-size:var(--fs-14);cursor:pointer;color:var(--ink);text-align:left;appearance:none;-webkit-appearance:none}.picker-item.is-checked{border-color:#1f9d8a73;background:#1f9d8a1f}.picker-item.is-checked .picker-item-name,.picker-item.is-checked .picker-item-code{color:var(--primary-dark)}.picker-check{color:var(--primary-dark);font-weight:600}.picker-item-code{min-width:70px;font-weight:500;color:var(--ink);text-align:right}.picker-item-name{flex:1;text-align:left;color:var(--ink)}.picker-quick-create{padding:12px 0 0;border-top:1px solid rgba(28,24,20,.08);margin-top:8px}.picker-quick-create .full-width{width:100%}.picker-list:empty+.picker-quick-create{border-top:none}.picker-confirm-overlay{position:fixed;inset:0;background:#14100c73;display:flex;align-items:center;justify-content:center;z-index:20}.picker-confirm-card{background:#fff;border-radius:20px;padding:20px;width:min(90%,320px);box-shadow:0 24px 60px #14100c2e}.picker-confirm-message{font-size:var(--fs-16);font-weight:500;color:var(--ink);line-height:1.5;text-align:center;padding:8px 0 20px}.picker-confirm-actions{display:flex;gap:10px;justify-content:flex-end;padding-top:12px;border-top:1px solid rgba(28,24,20,.06)}.section-head{display:flex;justify-content:space-between;align-items:baseline;gap:12px;font-size:var(--fs-14);color:var(--ink);margin-top:6px;padding:4px 2px}.filter-panel{display:grid;gap:14px;padding:14px;border-radius:20px;background:#fff;border:var(--border);box-shadow:0 10px 20px #1e140a0f}.filter-panel-body{padding:14px;display:grid;gap:12px}.filter-submit-form{display:contents}.filter-fieldset{margin:0;padding:0;border:0;display:grid;gap:12px;min-width:0}.filter-fieldset:disabled{opacity:.68}.filter-summary-card{width:100%;border:1px solid rgba(31,157,138,.25);border-radius:14px;padding:10px 12px;background:#fbfaf7;color:var(--ink);display:flex;align-items:center;justify-content:space-between;gap:10px;cursor:pointer;text-align:left}.filter-summary-card:disabled{opacity:.6;cursor:default}.filter-summary-card .summary-text{font-size:var(--fs-14);font-weight:600;color:inherit;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.summary-caret{width:0;height:0;border-left:6px solid transparent;border-right:6px solid transparent}.summary-caret.down{border-top:7px solid var(--primary)}.summary-caret.up{border-bottom:7px solid #ffffff}.filter-panel .field{gap:6px}.filter-panel .field+.picker-box{margin-top:-6px}.filter-row-half{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.filter-row-half .field{min-width:0}.filter-row-half .field input{width:100%;min-width:0}.mobile-date-input-wrap,.mobile-clear-input-wrap{position:relative}.mobile-clear-input-wrap input{width:100%;padding-right:56px}.mobile-date-input-wrap input[type=date]{width:100%;height:44px;min-height:44px;line-height:1.2;padding-right:56px;text-align:left}.mobile-date-input-wrap input[type=date]::-webkit-calendar-picker-indicator{opacity:0;pointer-events:none;width:0;margin:0}.mobile-date-input-wrap input[type=date]::-webkit-datetime-edit{min-height:1.2em;text-align:left;padding-left:0}.mobile-date-input-wrap input[type=date]::-webkit-date-and-time-value{text-align:left}.mobile-date-clear-btn{position:absolute;right:2px;top:50%;transform:translateY(-50%);width:36px;height:36px;border:none;border-radius:999px;padding:0;display:inline-flex;align-items:center;justify-content:center;line-height:0;background:transparent;color:var(--muted);cursor:pointer;touch-action:manipulation;-webkit-tap-highlight-color:transparent;z-index:3}.mobile-date-clear-btn:before{content:"";position:absolute;inset:6px;border-radius:999px;background:#1c181414}.mobile-date-clear-icon{position:relative;z-index:1;width:14px;height:14px;display:block}.mobile-date-clear-btn:active:before{background:#1c181424}.mobile-date-clear-btn:disabled{opacity:.35;cursor:default}@media(max-width:359px){.filter-row-half{grid-template-columns:1fr}}.filter-modal-shell{position:fixed;inset:0;z-index:220;background:#100e0c80;padding:20px 14px;display:grid;align-items:center;overflow-y:auto;-webkit-overflow-scrolling:touch}.filter-modal-card{width:min(100%,540px);margin:0 auto;max-height:min(86vh,760px);display:flex;flex-direction:column;overflow:hidden;gap:0}.filter-modal-card.filter-panel{padding:0;border-radius:var(--radius-lg);flex-direction:column;flex-wrap:nowrap;align-items:stretch}.filter-modal-head{display:flex;flex-shrink:0;align-items:center;justify-content:space-between;gap:12px;padding:var(--modal-padding);border-bottom:1px solid var(--modal-rule)}.filter-modal-head h3{margin:0;min-width:0;overflow-wrap:anywhere;font-size:var(--fs-18);font-weight:600;line-height:1.4;color:var(--ink)}.filter-modal-card .filter-panel-body{flex:1 1 auto;min-height:0;overflow-y:auto;-webkit-overflow-scrolling:touch;overscroll-behavior:contain;padding:var(--modal-padding)}.filter-panel .field span{font-weight:600;color:var(--ink)}.quick-date{display:flex;flex-wrap:wrap;gap:8px}.quick-date-btn{border:1px solid rgba(28,24,20,.1);background:#faf9f6;color:var(--muted);padding:6px 12px;border-radius:999px;font-size:var(--fs-12);font-weight:600;cursor:pointer}.quick-date-btn:hover{color:var(--ink);border-color:#1c181433}.quick-date-btn.active{color:var(--ink);background:#f1eee8;border-color:#1c181433}.quick-date-btn.sm{padding:4px 8px;font-size:var(--fs-11)}.date-range-header-row{display:flex;align-items:center;justify-content:space-between;gap:8px}.date-range-left{display:flex;align-items:center;gap:6px;min-width:0}.date-month-chips{display:flex;align-items:center;gap:4px}.date-toggle-btn{padding:4px 10px;border-radius:999px;font-size:var(--fs-11);font-weight:600;border:1.5px solid rgba(28,24,20,.12);background:#faf9f6;color:var(--muted);cursor:pointer;white-space:nowrap;flex-shrink:0}.date-toggle-btn.active{background:var(--primary);color:#fff;border-color:var(--primary)}.date-toggle-btn:disabled{opacity:.4;cursor:default}@media(max-width:520px){:root[data-font-scale="150"] .date-range-header-row,:root[data-font-scale="175"] .date-range-header-row{flex-wrap:nowrap;align-items:center;gap:8px}:root[data-font-scale="150"] .date-range-left,:root[data-font-scale="175"] .date-range-left{width:auto;flex:1 1 auto;flex-wrap:nowrap;gap:8px}:root[data-font-scale="150"] .date-month-chips,:root[data-font-scale="175"] .date-month-chips{flex-wrap:nowrap;white-space:nowrap;gap:6px}:root[data-font-scale="150"] .quick-date-btn.sm,:root[data-font-scale="150"] .date-toggle-btn,:root[data-font-scale="175"] .quick-date-btn.sm,:root[data-font-scale="175"] .date-toggle-btn{min-height:clamp(34px,calc(34px + (var(--font-scale) - 1) * 9px),42px);padding:clamp(4px,calc(4px + (var(--font-scale) - 1) * 3px),7px) clamp(10px,calc(10px + (var(--font-scale) - 1) * 5px),13px);font-size:clamp(calc(var(--fs-13) / var(--font-scale)),calc(calc(var(--fs-13) / var(--font-scale)) + (var(--font-scale) - 1) * 4px),calc(var(--fs-16) / var(--font-scale)));line-height:1}:root[data-font-scale="150"] .filter-row-half,:root[data-font-scale="175"] .filter-row-half{gap:8px}:root[data-font-scale="150"] .mobile-date-input-wrap input[type=date],:root[data-font-scale="175"] .mobile-date-input-wrap input[type=date]{min-height:clamp(46px,calc(46px + (var(--font-scale) - 1) * 12px),56px);height:clamp(46px,calc(46px + (var(--font-scale) - 1) * 12px),56px);font-size:clamp(calc(var(--fs-16) / var(--font-scale)),calc(calc(var(--fs-16) / var(--font-scale)) + (var(--font-scale) - 1) * 7px),calc((var(--fs-22) / var(--font-scale)) - 1px));line-height:1.2}:root[data-font-scale="130"] .picker-box.is-empty .picker-row{min-height:30px}:root[data-font-scale="150"] .picker-box.is-empty .picker-row{min-height:34px}:root[data-font-scale="175"] .picker-box.is-empty .picker-row{min-height:39px}}.filter-panel .field input,.filter-panel .field select{background:#f8f5f1;border-radius:14px;border:1px solid rgba(28,24,20,.12);padding:10px 12px}.picker-box{display:grid;gap:10px;padding:12px 14px;background:#f8f5f1;border-radius:16px;border:1px solid rgba(28,24,20,.08);overflow:hidden}.picker-box.is-empty{padding:8px 12px;overflow:visible}.picker-row{display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:44px}.picker-box.is-empty .picker-row{min-height:40px}.picker-row-clickable{cursor:pointer;border-radius:10px}.picker-row-clickable:focus-visible{outline:2px solid rgba(115,74,41,.35);outline-offset:2px}.picker-inline{display:flex;align-items:center;gap:8px;min-width:0}.picker-inline .chip-list.preview{flex:1;min-width:0;max-width:100%}.inline-row{display:flex;align-items:center;justify-content:space-between;gap:12px}.inline-label{font-size:var(--fs-13);font-weight:600;color:var(--ink);white-space:nowrap}.status-help-label{display:inline-flex;align-items:center;gap:4px}.status-help-trigger{appearance:none;-webkit-appearance:none;border:none;background:transparent;color:#1c181473;display:inline-flex;align-items:center;justify-content:center;cursor:pointer;padding:0;margin:0;line-height:1;font-size:inherit;transition:color .16s ease}.status-help-trigger svg{width:1em;height:1em;fill:currentColor}.status-help-trigger:hover{color:#1c181499}.status-help-trigger:focus-visible{outline:2px solid rgba(28,24,20,.2);outline-offset:2px;border-radius:4px}.picker-meta{font-size:var(--fs-12);color:var(--muted);line-height:1}.chip-list.preview{flex-wrap:nowrap;overflow-x:auto;max-width:100%;padding-bottom:2px;justify-content:flex-start;gap:8px}.chip-list.preview .chip-btn{flex:0 0 auto;border-radius:6px;padding:2px 6px;font-family:var(--font-body);font-size:var(--fs-14);font-weight:400;line-height:1.5}.filter-title{font-size:var(--fs-13);letter-spacing:.08em;text-transform:uppercase;color:var(--muted)}.date-chip{display:inline-flex;align-items:center;gap:6px;background:#f0ede8;color:var(--ink);padding:4px 10px;border-radius:999px;font-size:var(--fs-12)}.header-row{display:flex;align-items:center;justify-content:space-between;gap:12px}.header-actions{display:flex;align-items:center;gap:8px;flex-shrink:0}.batch-cancel-btn{border:none;background:#efebe5;color:var(--ink-soft);border-radius:10px;min-height:34px;padding:0 12px;font-size:var(--fs-13);font-weight:600;line-height:1;cursor:pointer;transition:background-color .18s ease,border-color .18s ease,color .18s ease}.batch-cancel-btn:hover{background:#e8e3dc;color:var(--ink)}.batch-cancel-btn:active{background:#dfd8cf}.batch-cancel-btn:focus-visible{outline:2px solid rgba(31,157,138,.3);outline-offset:1px}.batch-renew-btn{border:none;background:#1f9d8a29;color:var(--primary-dark);border-radius:12px;width:var(--icon-btn-size);height:var(--icon-btn-size);padding:0;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;transition:background-color .18s ease,color .18s ease}.batch-renew-btn:hover{background:#1f9d8a3d}.batch-renew-btn-icon{width:var(--icon-btn-glyph-size);height:var(--icon-btn-glyph-size);fill:currentColor}.icon-btn{border:none;background:#1f9d8a29;color:var(--primary-dark);width:var(--icon-btn-size);height:var(--icon-btn-size);border-radius:12px;cursor:pointer;padding:0;display:inline-flex;align-items:center;justify-content:center;line-height:1}.icon-btn svg{width:var(--icon-btn-glyph-size);height:var(--icon-btn-glyph-size);fill:currentColor;stroke:currentColor}.icon-btn:hover{background:#1f9d8a3d}.icon-btn:disabled{opacity:.35;cursor:not-allowed}.panel-title{font-weight:600;font-size:var(--fs-14)}.panel-title-row{display:flex;align-items:center;justify-content:space-between;gap:12px}.panel-sub{color:var(--muted);font-size:var(--fs-12)}.font-scale-desktop-hint{margin:0;color:var(--muted);font-size:var(--fs-13);line-height:1.45}.font-scale-beta-toggle{border:1px solid rgba(28,24,20,.18);border-radius:999px;background:#fff;color:var(--ink-soft);font-family:var(--font-body);font-size:var(--fs-12);font-weight:600;padding:6px 12px;cursor:pointer;transition:border-color .18s ease,background-color .18s ease,color .18s ease}.font-scale-beta-toggle:hover{border-color:#1c18144d;background:#f8f6f2}.font-scale-beta-toggle.is-active{border-color:#1f9d8aa6;background:#1f9d8a24;color:var(--primary-dark)}.font-scale-desktop-note{margin:10px 0 0;color:var(--muted);font-size:var(--fs-12);line-height:1.4}.font-scale-zoom-warning{margin:8px 0 0;border-radius:10px;border:1px solid rgba(240,160,75,.45);background:#f0a04b26;color:#8a4f0a;font-size:var(--fs-12);font-weight:600;line-height:1.35;padding:8px 10px}.font-scale-options{display:flex;flex-wrap:wrap;gap:8px}.font-scale-option{border:1px solid rgba(28,24,20,.15);border-radius:999px;background:#fff;color:var(--ink);padding:8px 14px;font-size:var(--fs-14);font-weight:600;font-family:var(--font-body);cursor:pointer}.font-scale-option:hover{border-color:#1c181447;background:#f8f6f2}.font-scale-option.is-active{border-color:#1f9d8a99;background:#1f9d8a29;color:var(--primary-dark)}.panel-actions{display:flex;flex-wrap:wrap;gap:8px}.panel-actions.center{justify-content:center}.field.agent-picker-field{display:flex;align-items:center;justify-content:space-between;gap:12px}.agent-picker-field>span{flex-shrink:0}.agent-picker-field>.picker-trigger{min-width:0;max-width:70%;overflow-wrap:anywhere}.status-chip{display:inline-flex;align-items:center;gap:6px;padding:4px 10px;border-radius:999px;font-size:var(--fs-11);font-weight:600;background:#f0ede8;color:var(--muted)}.status-chip.active{background:#1f9d8a1f;color:var(--primary-dark)}.status-chip.inactive{background:#d645451f;color:#a03a3a}.field-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:18px}.field{display:grid;gap:6px;font-size:var(--fs-13);color:var(--muted);min-width:0}.field input,.field select,.field textarea{border-radius:12px;border:var(--border);padding:10px 12px;font-size:var(--fs-14);font-family:var(--font-body);color:var(--ink);background:#fbfbfa}.field input[type=date]{-webkit-appearance:none;appearance:none;width:100%}.field textarea{resize:vertical}.picker-trigger{border-radius:12px;border:var(--border);padding:10px 12px;font-size:var(--fs-14);font-family:var(--font-body);color:var(--ink);background:#fbfbfa;text-align:left;cursor:pointer}.field.full{grid-column:1 / -1}.primary-btn,.ghost-btn,.warn-soft-btn,.ink-btn,.danger-btn{border-radius:999px;padding:10px 16px;border:none;font-size:var(--fs-14);font-weight:600;cursor:pointer;font-family:var(--font-body)}.text-btn{border:none;background:transparent;color:var(--muted);font-size:var(--fs-12);font-weight:600;padding:6px 4px;cursor:pointer}.text-btn:hover{color:var(--ink)}.diff-analysis-btn{border:1px solid rgba(28,24,20,.16);background:#faf9f6;color:var(--ink);border-radius:999px;padding:6px 12px;line-height:1.1}.diff-analysis-btn:hover:not(:disabled){border-color:#1c181447;background:#f3f0ea;color:var(--ink)}.diff-analysis-btn:disabled{opacity:.58;cursor:not-allowed;border-color:#1c18141f;background:#f4f1eb;color:var(--muted)}.primary-btn{background:var(--primary);color:#fff}.primary-btn:hover{background:var(--primary-dark)}.primary-btn:disabled{opacity:.6;cursor:not-allowed}.ghost-btn{background:#f4f2ef;color:var(--ink)}.ghost-btn:hover{background:#e9e5e0}.warn-soft-btn{background:#fff3e4;color:#8f4e00;border:1px solid rgba(240,160,75,.42)}.warn-soft-btn:hover{background:#ffe9ce;border-color:#f0a04b94}.ink-btn{background:var(--ink);color:#fff}.ink-btn:hover{background:#111112}.danger-btn{background:var(--danger);color:#fff}.danger-btn:hover{background:#bb3232}.summary-row{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:-12px;padding:0;border-radius:0;border:none;background:transparent;box-shadow:none;font-size:var(--fs-14);color:var(--muted)}.summary-row,.summary-value,.amount,.detail-value,.status-value{font-variant-numeric:tabular-nums}.summary-row strong{color:var(--muted)}.summary-meta{display:flex;align-items:center;gap:6px;flex-wrap:wrap;justify-content:flex-end}.summary-meta--contract-total,.summary-meta--distribution-total{gap:4px}.summary-meta-divider{display:inline-flex;align-items:center;margin:0 1px;opacity:.6}.summary-action-icon-btn{flex-shrink:0}.summary-action-icon-btn svg{fill:none;stroke:currentColor;stroke-width:1.9;stroke-linecap:round;stroke-linejoin:round}.summary-sort{border:none;background:transparent;color:var(--muted);font-size:var(--fs-14);font-weight:600;display:inline-flex;align-items:center;cursor:pointer;padding:0 1px;margin:0;line-height:1.1;white-space:nowrap;gap:2px}.summary-sort:hover{color:var(--ink)}@media(max-width:767px){:root[data-font-scale="175"] .summary-row{flex-direction:column;align-items:flex-start;gap:8px;margin-bottom:-8px}:root[data-font-scale="175"] .summary-sort{padding:0;white-space:normal;align-items:flex-start}:root[data-font-scale="175"] .summary-meta{width:100%;justify-content:flex-start;gap:8px}}@media(max-width:414px){:root[data-font-scale="175"] .summary-meta--contract-total{display:grid;grid-template-columns:1fr;row-gap:2px}:root[data-font-scale="175"] .summary-meta--contract-total .summary-meta-divider{display:none}}.sort-icon{width:1em;height:1em;stroke:currentColor;stroke-width:1.8;fill:none;stroke-linecap:round;stroke-linejoin:round;display:block;flex-shrink:0;align-self:center;margin:0}.summary-card{padding:14px;border-radius:14px;border:var(--border);background:#faf9f6}.summary-label{font-size:var(--fs-12);color:var(--muted)}.summary-value{font-size:var(--fs-18);font-weight:600;margin-top:6px}.list{display:grid;gap:10px}.virtual-list-container{min-height:0;width:100%}.virtual-list{overflow:auto}.list-spacer{pointer-events:none}.dist-card{border:1px solid rgba(0,0,0,.05);border-radius:18px;padding:14px;background:#fff;display:flex;gap:12px;align-items:center;justify-content:space-between;cursor:pointer;box-shadow:0 6px 12px #1e140a0f}.dist-card.is-locked{cursor:default}.dist-card.is-selected{border-color:#1f9d8a8c;box-shadow:0 10px 20px #1f9d8a1f}.dist-card.readonly{cursor:default}.list-check{display:flex;align-items:center}.list-main{flex:1}.list-title{font-weight:600;font-size:var(--fs-15)}.list-sub{font-size:var(--fs-12);color:var(--muted);margin-top:4px}.contract-link{border:none;background:transparent;color:inherit;font-size:var(--fs-12);padding:0;cursor:pointer;text-decoration:underline;text-underline-offset:2px}.contract-link:hover{color:var(--ink)}.list-actions{display:flex;flex-direction:column;gap:6px;align-items:flex-end}.status-badge{padding:4px 10px;border-radius:999px;font-size:var(--fs-12);font-weight:600;background:#f0ebe3;color:var(--muted);border:1px solid transparent;white-space:nowrap;display:inline-flex;align-items:center;justify-content:center}.status-badge.active{background:#e0f1ec;color:#15705e;border-color:#b8dfd5}.status-badge.not-started{background:#e8eefc;color:#2f4a84;border-color:#c9d7f7}.status-badge.done{background:#e0f1ec;color:#15705e}.status-badge.todo{background:#fceee0;color:#b86a1f}.status-badge.voided{background:#fde8e8;color:#a03a3a}.status-badge.expired{background:#eceff3;color:#465466;border-color:#d7dee6}.pill-button{background:var(--primary);color:#fff;padding:6px 12px;border:none;border-radius:999px;font-size:var(--fs-12);cursor:pointer;box-shadow:0 6px 14px #1f9d8a40}.pill-button:hover{background:var(--primary-dark)}.pill-button.warn{background:var(--warning);box-shadow:0 6px 14px #f0a04b59}.pill-button.warn:hover{background:#d68634}.pill-button:disabled{opacity:.6;cursor:not-allowed}.list-item{display:grid;grid-template-columns:auto 1fr auto;gap:12px;padding:12px;border-radius:18px;background:#fbfbfa;border:var(--border);box-shadow:0 6px 12px #1e140a0f}.list-item.clickable{cursor:pointer;transition:border-color .2s ease,box-shadow .2s ease,transform .2s ease}.list-item.clickable:hover{border-color:#1f9d8a3d;box-shadow:0 14px 26px #1e140a1f;transform:translateY(-1px)}.badge{background:#1f9d8a1f;color:var(--primary-dark);padding:2px 10px;border-radius:999px;font-size:var(--fs-12);font-weight:600}.amount{font-weight:600;color:var(--ink-soft)}.contract-card{grid-template-columns:1fr auto;align-items:stretch;position:relative}.contract-card.has-participant-edits{border-left:4px solid #e7a24d;padding-left:10px}.contract-card.is-new-contract{background:#ecf8f1;border-color:#1f9d8a3d}.contract-card.batch-renew-card{grid-template-columns:28px minmax(0,1fr) auto;align-items:center}.contract-card.batch-renew-card .contract-main{min-width:0}.contract-card.batch-renew-card .contract-meta{justify-content:center;gap:6px}.contract-card.batch-renew-card .contract-period{line-height:1.2}.contract-card.is-selected{border-color:#1f9d8a8c;box-shadow:0 10px 20px #1f9d8a1f}.contract-card.is-disabled{opacity:.45;cursor:default}.contract-card.is-disabled:hover{transform:none;border-color:#1c181414;box-shadow:0 6px 12px #1e140a0f}.participant-edit-marker{position:absolute;left:-2px;top:-10px;z-index:1;padding:4px 8px;border-radius:999px;border:1px solid #f2d5a8;background:#fff4e4;color:#8f5208;font-size:var(--fs-11);font-weight:700;line-height:1;pointer-events:none}.contract-main{display:grid;gap:8px}.contract-top{display:flex;flex-wrap:wrap;gap:8px;align-items:center}.contract-sub{color:var(--muted);font-size:var(--fs-12)}.contract-sub-name{color:inherit;font-weight:400}.contract-sub-name.is-primary{font-weight:700}.contract-meta{display:flex;flex-direction:column;align-items:flex-end;justify-content:space-between;gap:12px;text-align:right;min-width:92px}.contract-period{font-size:var(--fs-12);color:var(--ink-soft)}.contract-introducer{display:flex;align-items:center;justify-content:flex-end;gap:6px;font-size:var(--fs-12);color:var(--muted)}.contract-label{font-size:var(--fs-11);letter-spacing:.06em;color:#574f4699}.ios-check span{border-radius:999px;width:22px;height:22px}.checkbox{display:grid;align-content:center}.checkbox input{display:none}.checkbox span{width:20px;height:20px;border-radius:10px;border:1px solid rgba(28,24,20,.2);display:inline-block;position:relative}.checkbox input:checked+span{border-color:var(--primary);background:#1f9d8a26}.checkbox input:checked+span:after{content:"";position:absolute;width:9px;height:5px;border-left:2px solid var(--primary);border-bottom:2px solid var(--primary);transform:rotate(-45deg);left:4px;top:5px}.warning.danger{border-color:#f2b4b4;background:#fdeeee;color:#a03a3a}.sticky-actions{position:fixed;bottom:calc(88px + env(safe-area-inset-bottom,0px));right:16px;display:flex;justify-content:flex-end;z-index:100}.bulk-action-bar{display:inline-flex;align-items:center;gap:10px;padding:6px 10px;border-radius:999px;background:#ffffffeb;border:1px solid rgba(28,24,20,.08);box-shadow:0 2px 12px #0000001f}.bulk-action-label{font-size:var(--fs-13);font-weight:600;color:var(--ink);white-space:nowrap}.chip{background:#f0a04b26;color:#9c5b13;padding:6px 12px;border-radius:999px;font-size:var(--fs-12)}.empty{text-align:center;color:var(--muted);font-size:var(--fs-14);padding:24px;border:1px dashed rgba(28,24,20,.12);border-radius:16px}.spinner{width:24px;height:24px;border:3px solid rgba(28,24,20,.12);border-top-color:var(--accent);border-radius:50%;animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.tabbar{position:absolute;left:0;right:0;bottom:0;background:#ffffffeb;border-radius:0;padding:6px 10px calc(10px + env(safe-area-inset-bottom,0px));display:grid;grid-template-columns:repeat(auto-fit,minmax(0,1fr));gap:4px;border-top:1px solid rgba(28,24,20,.08);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);z-index:5}.tab-button{border:none;background:transparent;display:grid;justify-items:center;gap:4px;font-size:var(--fs-11);color:var(--muted);padding:6px 4px;border-radius:14px;cursor:pointer;transition:background .2s ease;text-decoration:none}.tab-button:link,.tab-button:visited{color:inherit;text-decoration:none}.tab-button:hover{background:#1f9d8a14;color:var(--ink)}.tab-button.active{background:#1f9d8a1f;color:var(--primary-dark);font-weight:600}.tab-icon svg{width:var(--tab-icon-size-mobile);height:var(--tab-icon-size-mobile)}.more-drawer{position:fixed;inset:0;display:flex;align-items:flex-end;z-index:220}.more-drawer-backdrop{position:absolute;inset:0;border:none;background:#14100c59;margin:0;padding:0;cursor:pointer;animation:more-drawer-backdrop-in .25s cubic-bezier(.32,.72,0,1)}.more-drawer-sheet{position:relative;width:100%;max-height:min(70vh,520px);overflow-y:auto;background:#fff;border-radius:24px 24px 0 0;box-shadow:0 -16px 36px #14100c2e;padding:8px 12px calc(12px + env(safe-area-inset-bottom,0px));transition:transform .25s cubic-bezier(.32,.72,0,1);animation:more-drawer-sheet-in .25s cubic-bezier(.32,.72,0,1);will-change:transform}.more-drawer-sheet.dragging{transition:none}.more-drawer-handle-wrap{display:flex;justify-content:center;padding:4px 0 10px}.more-drawer-handle{width:44px;height:5px;border-radius:999px;background:#1c18142e}.more-drawer-list{display:grid;gap:4px}.more-drawer-item{display:flex;align-items:center;gap:12px;min-height:44px;padding:10px 12px;border-radius:12px;color:var(--ink);text-decoration:none;transition:background .2s ease,color .2s ease}.more-drawer-item:link,.more-drawer-item:visited{color:inherit;text-decoration:none}.more-drawer-item:hover{background:#1f9d8a14}.more-drawer-item.active{background:#1f9d8a1f;color:var(--primary-dark)}.more-drawer-item-icon svg{width:20px;height:20px}.more-drawer-item-label{font-size:var(--fs-15);font-weight:600}@keyframes more-drawer-backdrop-in{0%{opacity:0}to{opacity:1}}@keyframes more-drawer-sheet-in{0%{transform:translateY(100%)}to{transform:translateY(0)}}.toast{position:fixed;inset:24px auto auto 50%;transform:translate(-50%);background:var(--ink);color:#fff;padding:12px 16px;border-radius:999px;font-size:var(--fs-13);box-shadow:var(--shadow);max-width:calc(100% - 32px);z-index:2000}.toast.error{background:var(--danger)}.connection-banner{position:absolute;top:calc(var(--phone-pad-y) + env(safe-area-inset-top,0px));left:var(--phone-pad-x);right:var(--phone-pad-x);display:flex;align-items:center;justify-content:space-between;gap:8px;background:var(--warning);color:var(--ink);padding:8px 16px;border-radius:12px;box-shadow:0 10px 24px #1e140a29;font-size:var(--fs-13);font-weight:500;line-height:1.4;z-index:180}.topbar--mobile-visible+.connection-banner{top:calc(var(--phone-pad-y) + 60px)}@media(min-width:768px){.connection-banner{top:var(--content-padding);left:calc(var(--sidebar-width) + var(--content-padding));right:var(--content-padding)}}.connection-banner__retry{flex-shrink:0;background:transparent;border:1px solid rgba(28,24,20,.25);border-radius:8px;padding:4px 10px;font-size:var(--fs-12);font-weight:600;cursor:pointer;color:var(--ink);font-family:var(--font-body)}.modal-card.large{width:min(100%,720px)}.modal-card.voided-modal{border:1.5px solid #fca5a5}.modal-card.with-footer{display:flex;flex-direction:column;overflow:hidden;padding-bottom:0}.modal-body{display:grid;gap:12px;padding:2px 2px 4px}.modal-body>*{margin:0}.status-help-modal{width:min(100%,560px)}.status-help-modal-body{gap:10px}.status-help-segmented{display:inline-flex;align-items:center;gap:6px;padding:4px;border-radius:999px;background:#1c18140f}.status-help-segment{border:none;background:transparent;color:var(--ink-soft);font-size:var(--fs-12);font-weight:700;line-height:1;border-radius:999px;padding:8px 12px;cursor:pointer}.status-help-segment.active{background:#fff;color:var(--ink);box-shadow:0 1px 3px #1c181414}.status-help-item{border:1px solid rgba(28,24,20,.1);border-radius:14px;padding:10px 12px;background:#fcfbf9;display:grid;gap:8px}.status-help-item p{margin:0;font-size:var(--fs-13);line-height:1.55;color:var(--ink-soft)}.status-help-note{margin:0;font-size:var(--fs-12);line-height:1.55;color:var(--ink-soft)}.status-help-chip{justify-self:start;display:inline-flex;align-items:center;border-radius:999px;border:1px solid rgba(28,24,20,.16);background:#fff;padding:4px 10px;font-size:var(--fs-12);font-weight:700;color:var(--ink-soft)}.status-help-chip.active{border-color:#1f9d8a59;color:var(--primary-dark)}.status-help-chip.not-started{border-color:#0873a252;color:#0a6b97}.status-help-chip.expired{border-color:#b0582e4d;color:#9d4c2a}.status-help-chip.voided{border-color:#74706c47;color:#6e6a66}.status-help-tree{margin:0;white-space:pre-wrap;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,monospace;font-size:var(--fs-12);line-height:1.55;color:var(--ink-soft)}.modal-card.with-footer .modal-body{flex:1 1 auto;overflow-y:auto;overscroll-behavior:contain;padding-right:0;padding-left:0}.contract-form .modal-body{display:grid;gap:12px}.contract-form .contract-note-input{min-height:42px}.contract-form .contract-introducer-note-row{grid-column:1 / -1;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.contract-form .contract-readonly-input{background:#f4f2ef;border-color:#1c181429;color:#777066}.contract-form input[type=number]{appearance:textfield;-moz-appearance:textfield}.contract-form input[type=number]::-webkit-outer-spin-button,.contract-form input[type=number]::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.contract-detail .modal-body{display:grid;gap:16px}.detail-section{border-radius:18px;border:var(--border);background:#fff;padding:12px;display:grid;gap:10px}.detail-section-head{display:flex;justify-content:space-between;align-items:flex-start;gap:10px}.participant-section .detail-section-head{align-items:center}.detail-section-head .edit-icon,.detail-note-head .edit-icon{width:28px;height:28px;border-radius:999px;font-size:calc(var(--fs-11) * 0);line-height:0;display:grid;place-items:center;position:relative}.detail-section-head .edit-icon:before,.detail-note-head .edit-icon:before{content:"";width:16px;height:16px;background-color:currentColor;-webkit-mask-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'><path d='M12 20h9'/><path d='M16.5 3.5a2.1 2.1 0 0 1 3 3L7 19l-4 1 1-4Z'/></svg>");mask-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'><path d='M12 20h9'/><path d='M16.5 3.5a2.1 2.1 0 0 1 3 3L7 19l-4 1 1-4Z'/></svg>");-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat;-webkit-mask-position:center;mask-position:center;-webkit-mask-size:16px 16px;mask-size:16px 16px}.detail-grid.compact{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.contract-form-header{align-items:center}.contract-form-title-group{display:inline-flex;align-items:center;gap:12px;min-width:0}.contract-form-header-actions{display:inline-flex;align-items:center;gap:6px}.contract-type-toggle{display:inline-flex;align-items:center;gap:4px;padding:3px;border-radius:999px;border:1px solid rgba(28,24,20,.12);background:#f4f2ef}.contract-type-toggle button{border:none;border-radius:999px;padding:6px 12px;font-size:var(--fs-12);font-weight:600;color:var(--muted);background:transparent;cursor:pointer;transition:background .15s ease,color .15s ease}.contract-type-toggle button.active{color:#fff;background:var(--primary)}.contract-type-toggle button:focus-visible{outline:2px solid rgba(31,157,138,.4);outline-offset:1px}.desktop-date-calendar-icon{width:16px;height:16px;background-color:currentColor;-webkit-mask-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'><rect x='3' y='5' width='18' height='16' rx='2'/><path d='M16 3v4M8 3v4M3 11h18'/></svg>");mask-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'><rect x='3' y='5' width='18' height='16' rx='2'/><path d='M16 3v4M8 3v4M3 11h18'/></svg>");-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat;-webkit-mask-position:center;mask-position:center;-webkit-mask-size:contain;mask-size:contain}.contract-form .desktop-date-field{position:relative;width:100%}.contract-form .desktop-date-trigger{width:100%;min-height:44px;border:var(--border);border-radius:12px;background:#fbfbfa;display:flex;align-items:center}.contract-form .desktop-date-trigger:focus-within{border-color:var(--primary)}.contract-form .desktop-date-trigger.is-disabled{opacity:.5;pointer-events:none}.contract-form .desktop-date-input{flex:1;min-width:0;border:none;background:transparent;padding:10px 12px;font-size:var(--fs-14);color:var(--ink);font-family:var(--font-body);outline:none}.contract-form .desktop-date-input::placeholder{color:var(--muted)}.contract-form .desktop-date-input-native{-webkit-appearance:none;appearance:none}.contract-form .desktop-date-input-native::-webkit-calendar-picker-indicator{opacity:0;pointer-events:none}.contract-form .desktop-date-icon-btn{flex-shrink:0;width:40px;align-self:stretch;border:none;border-left:1px solid rgba(28,24,20,.08);border-radius:0 12px 12px 0;background:transparent;color:var(--ink-soft);cursor:pointer;display:inline-flex;align-items:center;justify-content:center}.contract-form .desktop-date-icon-btn:hover{color:var(--ink)}.contract-form .desktop-date-popover{position:absolute;top:calc(100% + 8px);left:0;z-index:80;width:230px;max-width:min(88vw,290px);padding:10px;border:1px solid rgba(28,24,20,.16);border-radius:10px;background:#fff;box-shadow:0 18px 32px #140c062e}.contract-form .desktop-date-popover-head{display:grid;grid-template-columns:28px 1fr 28px;align-items:center;gap:8px;margin-bottom:8px}.contract-form .desktop-date-month{text-align:center;font-size:var(--fs-13);font-weight:700;color:var(--ink)}.contract-form .desktop-date-nav-btn{width:28px;height:28px;border:1px solid rgba(28,24,20,.14);border-radius:8px;background:#fff;color:var(--ink-soft);cursor:pointer;font-size:var(--fs-18);line-height:1}.contract-form .desktop-date-nav-btn:hover{border-color:var(--primary);color:var(--primary)}.contract-form .desktop-date-weekdays,.contract-form .desktop-date-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:4px}.contract-form .desktop-date-weekdays{margin-bottom:6px}.contract-form .desktop-date-weekdays span{text-align:center;font-size:var(--fs-11);color:var(--muted)}.contract-form .desktop-date-cell{height:28px;border:none;border-radius:8px;background:transparent;color:var(--ink-soft);font-size:var(--fs-12);cursor:pointer;font-family:var(--font-body)}.contract-form .desktop-date-cell:hover{background:#1f9d8a1c;color:var(--primary-dark)}.contract-form .desktop-date-cell.is-outside{color:#1c181452}.contract-form .desktop-date-cell.is-today{box-shadow:inset 0 0 0 1px #1f9d8a73}.contract-form .desktop-date-cell.is-selected{background:var(--primary);color:#fff;font-weight:700}.contract-form .desktop-date-popover-actions{margin-top:8px;display:flex;align-items:center;justify-content:space-between;border-top:1px solid rgba(28,24,20,.08);padding-top:6px}.contract-form .desktop-date-action{font-size:var(--fs-12);color:var(--primary-dark);padding:2px 4px}.modal-tools{display:flex;align-items:center;gap:8px}.modal-search{border-radius:999px;border:1px solid rgba(28,24,20,.12);font-size:var(--fs-13);font-family:var(--font-body);color:var(--ink);background:#fbfbfa;width:160px;max-width:180px;min-width:0;padding:8px 12px 8px 30px;background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%237c746b' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'><circle cx='11' cy='11' r='7'/><path d='M20 20l-3.5-3.5'/></svg>");background-repeat:no-repeat;background-size:16px 16px;background-position:10px center}.modal-title-row{display:flex;align-items:center;gap:8px}.void-banner{display:flex;align-items:flex-start;gap:10px;background:#fef2f2;border:1px solid #fca5a5;border-radius:12px;padding:12px 14px}.void-banner-icon{font-size:var(--fs-18);color:#dc2626;line-height:1;flex-shrink:0;margin-top:1px}.void-banner-title{font-size:var(--fs-13);font-weight:700;color:#991b1b}.void-banner-meta{font-size:var(--fs-12);color:#b91c1c;margin-top:3px;line-height:1.5}.modal-sub{font-size:var(--fs-12);color:var(--muted);margin-top:4px}.modal-subtitle{font-size:var(--fs-13);color:var(--muted);margin-top:4px}.modal-actions--split{justify-content:space-between}.contract-detail-actions{align-items:center}.contract-detail-actions>.ghost-btn{flex-shrink:0;white-space:nowrap}.contract-detail-action-group{display:flex;justify-content:flex-end;flex-wrap:wrap;gap:8px;min-width:0}.subpanel{border-radius:16px;border:var(--border);padding:14px;display:grid;gap:12px}.subpanel-header{display:flex;justify-content:space-between;align-items:center;gap:12px}.subpanel-header+.participant-row{margin-top:6px}.participant-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px;align-items:center}.participant-row-main{display:grid;grid-template-columns:minmax(0,1fr) minmax(88px,132px);gap:8px;min-width:0}.contract-form .participant-row-main{grid-template-columns:repeat(2,minmax(0,1fr))}.participant-row .picker-trigger{min-width:0;width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;border-radius:10px;padding:8px 10px;font-size:var(--fs-13)}.participant-row-actions{display:grid;grid-template-columns:1fr 1fr;gap:6px;min-width:168px;padding-left:10px;border-left:1px solid rgba(28,24,20,.12)}.participant-edit .modal-body{display:grid;gap:12px}.participant-edit-actions{display:flex;justify-content:center}.participant-edit-footer{display:flex;align-items:center;justify-content:space-between;gap:12px}.participant-edit-list{display:grid;gap:10px}.participant-card{border:var(--border);background:#fbfaf7;padding:10px;border-radius:14px}.participant-edit .participant-row select,.participant-edit .participant-row input{background:#fff}.participant-edit .picker-trigger:disabled,.participant-edit .picker-trigger.is-disabled,.batch-contract-edit-modal .picker-trigger.is-disabled{background:#f2f0ec;color:var(--muted);border-color:#1c18141a;cursor:not-allowed}.subpanel>.participant-row:not(.participant-card){border:var(--border);background:#fbfaf7;border-radius:14px;padding:10px}.participant-card .ghost-btn{padding:6px 12px;border-radius:999px;font-size:var(--fs-12)}.participant-card .ghost-btn:disabled{background:#f2f0ec;color:var(--muted);border-color:#1c18141a;cursor:not-allowed}.participant-edit-summary{display:grid;gap:4px;font-size:var(--fs-12);color:var(--muted);text-align:right}.participant-edit-actions{justify-content:flex-start}.participant-row select,.participant-row input{border-radius:10px;border:var(--border);padding:8px 10px;font-size:var(--fs-13)}.participant-row .participant-amount-input{min-width:0;width:100%}.participant-row-actions .ghost-btn,.participant-row-actions .danger-btn{width:100%;padding:6px 10px;font-size:var(--fs-13)}.contract-form .participant-row-actions{grid-template-columns:minmax(0,1fr) 30px;min-width:108px;padding-left:8px;gap:4px}.contract-form .participant-row-actions .ghost-btn{padding:6px;font-size:var(--fs-12)}.contract-form .contract-participants-field{gap:8px}.contract-form .contract-participants-head{display:flex;align-items:center;justify-content:space-between;gap:10px}.contract-form .contract-participants-title{display:inline-flex;align-items:center;gap:6px;min-width:0;flex-wrap:wrap}.contract-form .contract-participants-total{font-size:var(--fs-12);color:var(--muted);white-space:nowrap}.contract-form .contract-participants-add-btn{min-height:24px;padding:0 10px;border-radius:999px;font-size:var(--fs-12);font-weight:600;line-height:1;background:#1f9d8a1f;color:var(--primary-dark);border:1px solid rgba(31,157,138,.24)}.contract-form .contract-participants-add-btn:hover{background:#1f9d8a33}.contract-form .contract-participant-list{display:grid;gap:8px}.contract-form .contract-participant-row{grid-template-columns:minmax(0,1fr) auto;gap:8px;align-items:center}.contract-form .contract-participant-row .participant-row-main{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.contract-form .contract-participant-row .picker-trigger,.contract-form .contract-participant-row .participant-amount-input{min-height:42px;padding:10px 12px;font-size:var(--fs-14);border-radius:12px}.contract-form .contract-participant-row .picker-trigger.is-empty{color:#2f72c9}.contract-form .contract-participant-row .picker-trigger.is-empty:hover{color:#245fae}.contract-form .contract-participant-row .participant-row-actions{grid-template-columns:repeat(2,minmax(0,1fr));min-width:136px;padding-left:8px;gap:6px;align-items:center;border-left-color:#1c181414}.contract-form .contract-participant-row .participant-row-actions .ghost-btn{min-height:42px;padding:0 6px;font-size:var(--fs-12)}.contract-form .contract-participant-row .participant-primary-btn{transition:background-color .16s ease,color .16s ease,border-color .16s ease,transform .12s ease}.contract-form .contract-participant-row .participant-primary-btn:not(.is-active){background:#f3f1ee;color:var(--muted)}.contract-form .contract-participant-row .participant-primary-btn:not(.is-active):hover{background:#ece8e2;color:var(--ink);transform:translateY(-1px)}.contract-form .contract-participant-row .participant-primary-btn.is-active:hover{background:var(--primary-dark);border-color:var(--primary-dark);transform:translateY(-1px)}.contract-form .contract-participant-row .contract-participant-remove-text-btn{min-height:42px;padding:0 10px;background:var(--danger);color:#fff;transition:background-color .16s ease,box-shadow .16s ease,transform .12s ease}.contract-form .contract-participant-row .contract-participant-remove-text-btn:hover{background:#c13a3a;box-shadow:0 4px 10px #c13a3a3d;transform:translateY(-1px)}.contract-form .contract-participant-row .contract-participant-remove-text-btn:active{background:#aa3232;box-shadow:none;transform:none}.participant-primary-btn,.participant-remove-btn{white-space:nowrap}.participant-remove-btn:disabled{opacity:.45;cursor:not-allowed}.participant-primary-btn.is-active{border-color:var(--primary);color:#fff;background:var(--primary)}.participant-summary{font-size:var(--fs-12);color:var(--muted);text-align:right}.participant-list{display:grid;gap:6px}.participant-item{display:flex;justify-content:space-between;align-items:center;gap:10px;font-size:var(--fs-13)}.participant-name{display:inline-flex;align-items:center;gap:6px}.participant-primary-pill{font-size:var(--fs-11);font-weight:600;line-height:1.3;color:var(--primary-dark);background:#1f9d8a1f;border:1px solid rgba(31,157,138,.28);border-radius:999px;padding:1px 8px}.detail-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:10px}.detail-label{font-size:var(--fs-12);color:var(--muted)}.detail-value{font-size:var(--fs-13);font-weight:600;margin-top:4px;line-height:1.4}.link-btn{background:none;border:none;padding:0;font-size:inherit;font-weight:inherit;font-family:inherit;color:var(--teal);cursor:pointer;text-decoration:underline;text-underline-offset:2px}.link-btn:hover{opacity:.75}.detail-grid .full{grid-column:1 / -1}.detail-note{display:grid;gap:8px}.detail-note-head{display:flex;align-items:center;justify-content:space-between;gap:8px}.detail-note-editor textarea{width:100%;min-height:80px;border-radius:12px;border:var(--border);padding:10px 12px;font-size:var(--fs-14);font-family:var(--font-body);color:var(--ink);background:#fbfbfa;resize:vertical}.detail-note-actions{display:flex;justify-content:flex-end;gap:8px}.detail-note-value{cursor:pointer}.follow-up-status-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:12px 16px}.follow-up-cell{display:grid;gap:6px;min-width:0}.follow-up-cell select{width:100%;border-radius:10px;border:var(--border);padding:8px 12px;font-size:var(--fs-14);font-family:var(--font-body);color:var(--ink);background:#fbfbfa}.follow-up-find-link{border:none;background:transparent;padding:0;color:var(--teal);font-size:var(--fs-14);font-weight:600;line-height:1.4;text-decoration:underline;text-underline-offset:3px;text-decoration-thickness:1px;cursor:pointer;text-align:left;display:inline-flex;align-items:center}.follow-up-find-link:hover{opacity:.78}.follow-up-find-link:disabled{opacity:.6;cursor:not-allowed;text-decoration:none}.follow-up-linked-inline{display:inline-flex;align-items:center;gap:8px}.follow-up-linked-inline .chip-btn{padding:2px 8px;font-size:var(--fs-12);line-height:1.3}.chip-btn-danger{background:#f8e8e8;color:#9b2f2f}.chip-btn-danger:hover{background:#f2dddd}.follow-up-impact-hint{font-size:var(--fs-12);line-height:1.5;color:#8a5a16;background:#eab3081f;border:1px solid rgba(234,179,8,.35);border-radius:10px;padding:8px 10px}.preview-box{border-radius:14px;background:#f8f6f2;padding:12px;display:grid;gap:12px}.preview-label{font-size:var(--fs-12);color:var(--muted);margin-bottom:6px}.preview-row{font-size:var(--fs-13)}.preview-primary-change{border-radius:10px;border:1px solid rgba(31,157,138,.3);background:#1f9d8a14;padding:8px 10px}.warning{font-size:var(--fs-12);color:var(--danger);background:#d645451a;padding:10px;border-radius:12px;line-height:1.5}.warning.spaced{margin-top:10px}.batch-renew-modal .modal-body{display:grid;gap:12px}.batch-renew-list{display:grid;gap:8px;max-height:min(44vh,360px);overflow:auto;padding-right:4px}.batch-renew-result{display:grid;gap:8px}.batch-renew-mark-returned{margin-top:16px;padding-top:14px;border-top:var(--border);display:grid;gap:10px}.batch-mark-returned-label{display:flex;align-items:flex-start;gap:10px;cursor:pointer}.batch-mark-returned-label .checkbox{flex-shrink:0;margin-top:1px}.batch-mark-returned-text{font-size:var(--fs-13);font-weight:500;color:var(--ink);line-height:1.45}.scope-returned-list{display:grid;gap:2px;padding:8px 10px;background:#1c18140a;border-radius:10px;border:var(--border)}.scope-returned-row{display:flex;align-items:baseline;gap:8px;padding:3px 0;font-size:var(--fs-12)}.scope-returned-code{font-weight:600;color:var(--ink);flex-shrink:0;min-width:90px}.scope-returned-meta{flex-shrink:0;color:var(--muted)}.scope-returned-names{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--muted)}.batch-preview-card{display:grid;gap:6px;padding:12px 14px;border-radius:14px;border:var(--border);background:#fbfbfa}.preview-card-top{display:flex;justify-content:space-between;align-items:center;gap:12px}.preview-card-top-chips{display:flex;gap:6px;align-items:center;flex-shrink:0;flex-wrap:wrap;justify-content:flex-end}.preview-card-chips{display:flex;flex-wrap:wrap;align-items:center;gap:6px;min-height:24px}.preview-card-code{font-size:var(--fs-14);font-weight:600;color:var(--ink);flex-shrink:0}.preview-card-code-arrow{font-weight:400;color:var(--muted)}.preview-card-amount{font-size:var(--fs-14);font-weight:600;color:var(--ink-soft);flex-shrink:0;white-space:nowrap}.preview-card-names{font-size:var(--fs-12);color:var(--muted);min-width:0;flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.batch-override-chip{display:inline-flex;align-items:center;gap:4px;padding:3px 10px;border-radius:999px;font-size:var(--fs-12);font-weight:500;background:#f0a04b26;color:#a06010;cursor:pointer;border:1px solid rgba(240,160,75,.3);transition:background .15s;font-family:var(--font-body);white-space:nowrap}.batch-override-chip:hover{background:#f0a04b40}.batch-override-chip--neutral{background:#1c18140f;color:var(--muted);border-color:transparent;font-weight:400}.batch-override-chip--neutral:hover{background:#1c18141c;color:var(--ink-soft)}.batch-chip-input{width:72px;padding:3px 8px;border-radius:999px;border:1px solid var(--warning);font-size:var(--fs-12);font-weight:500;color:#a06010;background:#f0a04b14;outline:none;font-family:var(--font-body)}.batch-chip-input--date{width:120px}.batch-setting-input{width:100%;padding:4px 8px;border-radius:10px;border:var(--border);font-size:var(--fs-14);font-family:var(--font-body);color:var(--ink);background:#fbfbfa}.batch-setting-input.modified{border-color:#f0a04bb3;box-shadow:0 0 0 2px #f0a04b33;background:#f0a04b0f}.batch-setting-trigger{width:100%;text-align:left;padding:4px 8px;border-radius:10px;border:var(--border);font-size:var(--fs-14);font-family:var(--font-body);color:var(--ink);background:#fbfbfa;cursor:pointer}.batch-setting-trigger.modified{border-color:#f0a04bb3;box-shadow:0 0 0 2px #f0a04b33;background:#f0a04b0f}.batch-contract-edit-modal .modal-body{display:grid;gap:12px}.participant-sum-error{color:var(--danger);margin-left:6px}.status-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(120px,1fr));gap:12px}.status-label{font-size:var(--fs-12);color:var(--muted)}.status-value{font-size:var(--fs-13);font-weight:600;word-break:break-all}.muted{color:var(--muted);font-size:var(--fs-12);line-height:1.55}.danger{color:var(--danger)}@media(prefers-reduced-motion:reduce){.list-item.clickable{transition:none}.list-item.clickable:hover{transform:none}.tab-button{transition:none}.more-drawer-backdrop,.more-drawer-sheet,.more-drawer-item{animation:none;transition:none}}@media(max-width:520px){html,body{height:100%}.app{padding:0}.phone{--phone-pad-x: 16px;--phone-pad-y: 18px;width:100%;height:100vh;height:100svh;height:100dvh;padding:var(--phone-pad-y) var(--phone-pad-x);border-radius:0}.topbar{align-items:center}.topbar-actions{justify-content:flex-end}.content{padding-bottom:calc(90px + env(safe-area-inset-bottom,0px));scroll-padding-bottom:calc(90px + env(safe-area-inset-bottom,0px));overflow-x:hidden;-webkit-overflow-scrolling:touch}.content--virtual-list{padding-bottom:0;scroll-padding-bottom:0}.list-item{grid-template-columns:1fr;min-width:0}.contract-card{grid-template-columns:1fr auto}.contract-card.batch-renew-card{grid-template-columns:28px minmax(0,1fr) auto}.contract-meta{min-width:72px;gap:8px}.participant-row{grid-template-columns:minmax(0,1fr) auto;gap:8px}.participant-row-main{grid-template-columns:minmax(0,1fr) minmax(72px,92px);gap:6px}.contract-form .participant-row-main{grid-template-columns:repeat(2,minmax(0,1fr));gap:6px}.participant-row-actions{min-width:140px;gap:5px;padding-left:8px}.participant-row-actions .ghost-btn,.participant-row-actions .danger-btn{padding:6px 8px;font-size:var(--fs-13)}.contract-form-header{align-items:flex-start}.contract-form-title-group{gap:8px;flex-wrap:wrap}.contract-form-header-actions{gap:0}.contract-type-toggle button{padding:6px 10px}.contract-form .field-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.contract-form .contract-introducer-note-row{gap:10px}.contract-form .field-grid .field.full{grid-column:1 / -1}.contract-form .field-grid .field input,.contract-form .field-grid .field select,.contract-form .field-grid .field textarea,.contract-form .field-grid .field .picker-trigger,.contract-form .field-grid .field .desktop-date-trigger{min-width:0}.contract-form .participant-row-actions{min-width:100px;padding-left:5px;gap:4px}.contract-form .contract-participants-head{gap:8px}.contract-form .contract-participants-add-btn{min-height:22px;padding:0 9px;font-size:var(--fs-12)}.contract-form .contract-participant-list,.contract-form .contract-participant-row{gap:6px}.contract-form .contract-participant-row .participant-row-main{gap:5px}.contract-form .contract-participant-row .picker-trigger{text-align:center}.contract-form .contract-participant-row .participant-row-actions{min-width:122px;padding-left:4px;gap:4px}.field-grid,.detail-grid{grid-template-columns:1fr}.tab-panel,.list,.filter-panel{max-width:100%}@supports (-webkit-touch-callout: none){input:focus,select:focus,textarea:focus{font-size:max(16px,var(--fs-13))}}.modal{align-items:flex-start;padding:max(12px,env(safe-area-inset-top,0px)) 12px calc(12px + env(safe-area-inset-bottom,0px))}.modal-card{width:min(100%,720px);max-height:92vh;border-radius:var(--radius-lg);padding:var(--modal-padding);margin:0 auto}.sticky-actions{right:12px;max-width:calc(100vw - 24px)}.bulk-action-bar{max-width:calc(100vw - 24px);overflow:hidden}}@media(max-width:360px){.contract-form .field-grid{grid-template-columns:1fr}}@media(min-width:521px)and (max-width:767px){.app{padding:0}.phone{width:100%;height:100vh;height:100svh;height:100dvh;border-radius:0;box-shadow:none;border:none}}@media(max-width:767px){:root[data-font-scale="150"] .content--virtual-list .panel-header p,:root[data-font-scale="175"] .content--virtual-list .panel-header p{display:none}}@supports not ((height: 100dvh) or (height: 100svh)){.app{min-height:calc(var(--vh, 1vh) * 100)}.phone{height:min(calc(var(--vh, 1vh) * 100),var(--phone-height))}@media(max-width:767px){.phone{height:calc(var(--vh, 1vh) * 100)}}}.desktop-only{display:none}@media(min-width:768px){:root{--sidebar-width: var(--sidebar-width-expanded);--content-max-width: 100%;--content-padding: 24px}:root.desktop-sidebar-collapsed{--sidebar-width: var(--sidebar-width-collapsed)}.desktop-only{display:block!important}.tab-button.desktop-only{display:flex!important}.sidebar-brand.desktop-only{display:flex!important;align-items:center;gap:12px;justify-content:flex-start;padding:8px 12px 16px;border-bottom:1px solid rgba(28,24,20,.08);margin-bottom:8px;transition:padding .2s ease,justify-content .2s ease;min-width:0}.sidebar-brand-logo{width:36px;height:36px;flex:0 0 auto}.sidebar-brand-text{display:block;flex:1 0 auto;min-width:max-content;overflow:visible}.sidebar-brand-name{font-family:var(--font-display);font-size:calc(var(--fs-20) / var(--font-scale));font-weight:600;color:var(--ink);letter-spacing:.02em;line-height:1.1;white-space:nowrap;overflow:visible;text-overflow:clip}.sidebar-brand-sub{font-size:calc(var(--fs-11) / var(--font-scale));color:var(--muted);margin-top:1px;line-height:1.2;white-space:nowrap;overflow:visible;text-overflow:clip}.login-content{display:flex;align-items:center;justify-content:center;min-height:100vh;padding:40px;background:var(--bg)}.login-page{width:100%;max-width:420px;padding:0}.login-header{text-align:center;margin-bottom:24px}.login-header h1{font-size:var(--fs-32)}.login-card{padding:28px;gap:18px;border-radius:16px}.login-actions{gap:12px;margin-top:8px}.login-actions .primary-btn{flex:1;justify-content:center;padding:12px 24px}.app{padding:0;min-height:100vh}.phone{width:100%;height:100vh;max-width:none;border-radius:0;box-shadow:none;border:none;padding:0;display:grid;grid-template-columns:var(--sidebar-width) 1fr;grid-template-rows:var(--header-height) 1fr;grid-template-areas:"sidebar topbar" "sidebar content";transition:grid-template-columns .2s ease}.topbar{display:flex;grid-area:topbar;padding:0 var(--content-padding);background:#fffffff2;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border-bottom:1px solid rgba(28,24,20,.06);position:sticky;top:0;z-index:100}.tabbar{grid-area:sidebar;position:fixed;left:0;top:0;bottom:0;width:var(--sidebar-width);height:100vh;display:flex;flex-direction:column;gap:4px;padding:20px 16px;background:var(--card);border-top:none;border-right:1px solid rgba(28,24,20,.08);-webkit-backdrop-filter:none;backdrop-filter:none;z-index:200;transition:width .2s ease,padding .2s ease}.tab-button{display:flex;flex-direction:row;align-items:center;justify-content:flex-start;gap:12px;padding:10px 12px;border-radius:10px;min-height:auto;transition:background-color .15s ease,padding .2s ease,gap .2s ease}.tab-button:hover{background:#1c18140a}.tab-button.active{background:#1f9d8a1a}.tab-icon svg{width:var(--tab-icon-size-sidebar);height:var(--tab-icon-size-sidebar)}.tab-label{font-size:var(--fs-14);font-weight:500;white-space:nowrap;line-height:1.2}.sidebar-divider{height:1px;background:#1c181414;margin:12px 8px}.sidebar-spacer{flex:1}.sidebar-toggle-btn{margin-left:auto;border:none;background:transparent;color:var(--muted);inline-size:var(--sidebar-toggle-size);block-size:var(--sidebar-toggle-size);min-inline-size:var(--sidebar-toggle-size);min-block-size:var(--sidebar-toggle-size);max-inline-size:var(--sidebar-toggle-size);max-block-size:var(--sidebar-toggle-size);aspect-ratio:1 / 1;border-radius:12px;padding:0;display:inline-flex;align-items:center;justify-content:center;align-self:center;flex:0 0 auto;cursor:pointer;font-family:var(--font-body);line-height:1;transition:background-color .18s ease,color .18s ease,transform .12s ease}.sidebar-toggle-btn:hover{background:#1f9d8a24;color:var(--primary-dark)}.sidebar-toggle-btn:active{transform:scale(.96);background:#1f9d8a33}.sidebar-toggle-btn:focus-visible{outline:2px solid rgba(31,157,138,.28);outline-offset:1px}.sidebar-toggle-combo-icon{width:var(--sidebar-toggle-icon-size);height:var(--sidebar-toggle-icon-size)}.tabbar--sidebar-collapsed .sidebar-brand{justify-content:center;padding:6px 6px 10px;margin-bottom:6px}.tabbar--sidebar-collapsed .sidebar-toggle-btn{margin-left:0}.tabbar--sidebar-collapsed .sidebar-brand-logo,.tabbar--sidebar-collapsed .sidebar-brand-text,.tabbar--sidebar-collapsed .tab-label{display:none}.tabbar--sidebar-collapsed .tab-button{justify-content:center;padding:10px 8px;gap:0}.tabbar--sidebar-collapsed .sidebar-divider{margin-left:4px;margin-right:4px}.topbar{display:none!important}.phone{grid-template-rows:1fr;grid-template-areas:"sidebar content"}.content{grid-area:content;padding:var(--content-padding);padding-bottom:var(--content-padding);margin:0;max-width:none;overflow-y:auto}.content.login-content{grid-area:auto;grid-column:1 / -1;grid-row:1 / -1;align-items:center;min-height:100vh;min-height:100dvh;padding:40px}.content--virtual-list{overflow:hidden;padding-bottom:0;scroll-padding-bottom:0}.field-grid{grid-template-columns:repeat(2,1fr);gap:20px}.field-grid .field.full-width{grid-column:1 / -1}.filter-panel{flex-direction:row;flex-wrap:wrap;align-items:center}.filter-row-half{grid-template-columns:1fr 1fr}.modal{align-items:center;justify-content:center;padding:24px}.modal-card{width:min(90%,640px);max-height:85vh;border-radius:var(--radius-lg);animation:fadeScale .2s ease}.sticky-actions{right:24px;bottom:24px}@keyframes fadeScale{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}.list-item{grid-template-columns:auto 1fr auto}.detail-grid{grid-template-columns:repeat(2,1fr)}@media(hover:hover){.list-item.clickable:hover{border-color:#1f9d8a3d;box-shadow:0 14px 26px #1e140a1f;transform:translateY(-1px)}.chip-btn:hover{background:#1f9d8a33}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:#1c181426;border-radius:4px}::-webkit-scrollbar-thumb:hover{background:#1c181440}}}@media(min-width:768px)and (max-width:1366px)and (hover:none)and (pointer:coarse){.sidebar-brand,.sidebar-brand.desktop-only{gap:10px;padding:8px 10px 14px}.sidebar-brand-name{font-family:var(--font-body);font-size:calc(var(--fs-16) / var(--font-scale));font-weight:700;letter-spacing:0;text-overflow:clip}.sidebar-brand-sub{display:none!important}}@media(min-width:1024px){:root{--sidebar-width: var(--sidebar-width-expanded);--content-padding: 32px}:root.desktop-sidebar-collapsed{--sidebar-width: var(--sidebar-width-collapsed)}.content--virtual-list{overflow-y:auto}.phone{grid-template-columns:var(--sidebar-width) 1fr}.tabbar{width:var(--sidebar-width);padding:20px 16px;gap:4px;transition:width .2s ease,padding .2s ease}.sidebar-brand{display:flex;align-items:center;gap:12px;padding:8px 12px 16px;border-bottom:1px solid rgba(28,24,20,.08);margin-bottom:8px;justify-content:flex-start;transition:padding .2s ease,justify-content .2s ease;min-width:0}.sidebar-brand-logo{width:36px;height:36px;flex:0 0 auto}.sidebar-brand-text{display:block;flex:1 0 auto;min-width:max-content;overflow:visible}.sidebar-brand-name{font-family:var(--font-display);font-size:calc(var(--fs-20) / var(--font-scale));font-weight:600;color:var(--ink);letter-spacing:.02em;line-height:1.1;white-space:nowrap;overflow:visible;text-overflow:clip}.sidebar-brand-sub{font-size:calc(var(--fs-11) / var(--font-scale));color:var(--muted);margin-top:1px;line-height:1.2;white-space:nowrap;overflow:visible;text-overflow:clip}.sidebar-divider{height:1px;background:#1c181414;margin:12px 8px}.sidebar-spacer{flex:1}.tab-button{display:flex;flex-direction:row;align-items:center;justify-content:flex-start;gap:12px;padding:10px 12px;border-radius:10px;transition:background-color .15s ease,padding .2s ease,gap .2s ease}.tab-button:hover{background:#1c18140a}.tab-button.active{background:#1f9d8a1a}.tab-icon svg{width:var(--tab-icon-size-sidebar);height:var(--tab-icon-size-sidebar)}.tab-label{font-size:var(--fs-14);font-weight:500;white-space:nowrap}.sidebar-toggle-btn{margin-left:auto;border:none;background:transparent;color:var(--muted);inline-size:var(--sidebar-toggle-size);block-size:var(--sidebar-toggle-size);min-inline-size:var(--sidebar-toggle-size);min-block-size:var(--sidebar-toggle-size);max-inline-size:var(--sidebar-toggle-size);max-block-size:var(--sidebar-toggle-size);aspect-ratio:1 / 1;border-radius:12px;padding:0;display:inline-flex;align-items:center;justify-content:center;align-self:center;flex:0 0 auto;cursor:pointer;font-family:var(--font-body);line-height:1;transition:background-color .18s ease,color .18s ease,transform .12s ease}.sidebar-toggle-btn:hover{background:#1f9d8a24;color:var(--primary-dark)}.sidebar-toggle-btn:active{transform:scale(.96);background:#1f9d8a33}.sidebar-toggle-btn:focus-visible{outline:2px solid rgba(31,157,138,.28);outline-offset:1px}.sidebar-toggle-combo-icon{width:var(--sidebar-toggle-icon-size);height:var(--sidebar-toggle-icon-size)}.tabbar--sidebar-collapsed .sidebar-brand{justify-content:center;padding:6px 6px 10px;margin-bottom:6px}.tabbar--sidebar-collapsed .sidebar-toggle-btn{margin-left:0}.tabbar--sidebar-collapsed .sidebar-brand-logo,.tabbar--sidebar-collapsed .sidebar-brand-text,.tabbar--sidebar-collapsed .tab-label{display:none}.tabbar--sidebar-collapsed .tab-button{justify-content:center;padding:10px 8px;gap:0}.tabbar--sidebar-collapsed .sidebar-divider{margin-left:4px;margin-right:4px}.modal-card.large{width:min(90%,800px)}.sticky-actions{right:32px}.stats-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}.stat-card{background:var(--card);border-radius:var(--radius-md);padding:20px;border:var(--border);box-shadow:0 2px 8px #1e140a0a}.stat-card-label{font-size:var(--fs-13);color:var(--muted);margin-bottom:8px}.stat-card-value{font-size:var(--fs-28);font-weight:600;color:var(--ink);font-family:var(--font-display)}.stat-card-sub{font-size:var(--fs-13);color:var(--muted);margin-top:4px}.data-table-container{background:var(--card);border-radius:var(--radius-md);border:var(--border);overflow:hidden}.data-table{width:100%;border-collapse:collapse;font-size:var(--fs-14)}.data-table th{text-align:left;padding:10px 12px;font-weight:500;color:var(--muted);background:var(--bg-accent);border-bottom:1px solid rgba(28,24,20,.08);white-space:nowrap}.data-table th.sortable{cursor:pointer;-webkit-user-select:none;user-select:none}.data-table th.sortable:hover{color:var(--ink)}.data-table th .sort-indicator{margin-left:4px;opacity:.5}.data-table th.sorted .sort-indicator{opacity:1;color:var(--primary)}.data-table td{padding:10px 12px;border-bottom:1px solid rgba(28,24,20,.04);vertical-align:middle}.data-table tbody tr{transition:background-color .1s ease}.data-table tbody tr:hover{background:#1c181405}.data-table tbody tr.selected{background:#1f9d8a0f}.data-table tbody tr.is-new-contract{background:#f2fbf6}.data-table tbody tr.is-new-contract:hover{background:#e8f7ef}.data-table tbody tr:last-child td{border-bottom:none}.data-table .cell-checkbox{width:40px;padding-right:0}.data-table .cell-participant-edit{width:92px;padding-left:8px;padding-right:6px}.data-table .cell-actions{width:120px;text-align:center}.data-table .cell-status{width:104px;white-space:nowrap}.data-table .cell-amount{text-align:right;font-variant-numeric:tabular-nums}.data-table .cell-rate{width:72px;text-align:right;font-variant-numeric:tabular-nums;white-space:nowrap}.participant-edit-pill{display:inline-flex;align-items:center;justify-content:center;padding:4px 8px;border-radius:999px;border:1px solid #f2d5a8;background:#fff4e4;color:#8f5208;font-size:var(--fs-11);font-weight:700;white-space:nowrap;line-height:1}.filter-panel-body{display:flex;flex-direction:column;gap:16px}}@media(min-width:1440px){:root{--content-max-width: 100%;--content-padding: 32px}.content{max-width:none}}@media(hover:none)and (pointer:coarse){.list-item.clickable:active{transform:scale(.98);opacity:.9}.primary-btn:active,.ghost-btn:active{transform:scale(.98)}}.stats-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:12px}.stat-card{background:var(--card);border-radius:var(--radius-md);padding:16px;border:var(--border);box-shadow:0 2px 8px #1e140a0a;text-decoration:none;color:inherit;display:block}.stat-card-label{font-size:var(--fs-12);color:var(--muted);margin-bottom:6px}.stat-card-value{font-size:var(--fs-22);font-weight:600;color:var(--ink);font-family:var(--font-display)}.stat-card-sub{font-size:var(--fs-12);color:var(--muted);margin-top:4px}.empty-card{background:var(--card);border-radius:var(--radius-md);padding:24px;text-align:center;color:var(--muted);font-size:var(--fs-14);border:var(--border)}.data-table-container{background:var(--card);border-radius:var(--radius-md);border:var(--border);overflow-x:auto;-webkit-overflow-scrolling:touch}.data-table{width:100%;min-width:500px;border-collapse:collapse;font-size:var(--fs-13)}.data-table th{text-align:left;padding:10px 12px;font-weight:500;color:var(--muted);background:var(--bg-accent);border-bottom:1px solid rgba(28,24,20,.08);white-space:nowrap}.data-table td{padding:12px;border-bottom:1px solid rgba(28,24,20,.04);vertical-align:middle}.data-table tbody tr:last-child td{border-bottom:none}.data-table .cell-amount{text-align:right;font-variant-numeric:tabular-nums}.data-table .cell-actions{text-align:center}.data-table .contract-link{color:var(--primary);background:none;border:none;padding:0;font:inherit;cursor:pointer;text-decoration:underline}.desktop-only,.sidebar-brand,.sidebar-divider,.sidebar-spacer,.desktop-view{display:none}@media(min-width:1024px){.desktop-view{display:block;padding-bottom:48px}.desktop-filter-bar{display:flex;flex-wrap:wrap;align-items:flex-end;gap:16px;--desktop-date-field-width: clamp(118px, calc(118px + (var(--font-scale) - 1) * 96px), 190px);--desktop-date-field-single-width: clamp(148px, calc(148px + (var(--font-scale) - 1) * 112px), 232px);--desktop-date-icon-width: clamp(24px, calc(24px + (var(--font-scale) - 1) * 12px), 33px);--desktop-date-icon-padding-right: clamp(6px, calc(6px + (var(--font-scale) - 1) * 4px), 9px)}.desktop-filter-bar .quick-date-btn.sm{padding:1px 6px}.desktop-filter-bar .date-toggle-btn{padding:1px 8px}.desktop-filter-bar .desktop-date-field{position:relative;width:var(--desktop-date-field-width);flex-shrink:0}.desktop-filter-bar .desktop-date-trigger{width:100%;height:32px;border:1px solid rgba(28,24,20,.1);border-radius:6px;background:var(--bg);display:flex;align-items:center}.desktop-filter-bar .desktop-date-trigger:focus-within{border-color:var(--primary)}.desktop-filter-bar .desktop-date-trigger.is-disabled{opacity:.5;pointer-events:none}.desktop-filter-bar .desktop-date-input{flex:1;min-width:0;height:100%;padding:0 4px 0 10px;border:none;background:transparent;font-size:var(--fs-14);color:var(--ink);font-family:var(--font-body);outline:none;cursor:default}.desktop-filter-bar .desktop-date-input:focus{cursor:text}.desktop-filter-bar .desktop-date-input::placeholder{color:var(--muted)}.desktop-filter-bar .desktop-date-icon-btn{flex-shrink:0;width:var(--desktop-date-icon-width);height:100%;border:none;border-radius:0 6px 6px 0;background:transparent;color:var(--ink-soft);cursor:pointer;display:flex;align-items:center;justify-content:center;padding-right:var(--desktop-date-icon-padding-right);font-size:var(--fs-12)}.desktop-filter-bar .desktop-date-icon-btn:hover{color:var(--ink)}.desktop-filter-bar .desktop-date-popover{position:absolute;top:calc(100% + 6px);left:0;z-index:80;width:276px;padding:10px;border:1px solid rgba(28,24,20,.16);border-radius:10px;background:#fff;box-shadow:0 18px 32px #140c062e}.desktop-filter-bar .desktop-date-popover-head{display:grid;grid-template-columns:28px 1fr 28px;align-items:center;gap:8px;margin-bottom:8px}.desktop-filter-bar .desktop-date-month{text-align:center;font-size:var(--fs-13);font-weight:700;color:var(--ink)}.desktop-filter-bar .desktop-date-nav-btn{width:28px;height:28px;border:1px solid rgba(28,24,20,.14);border-radius:8px;background:#fff;color:var(--ink-soft);cursor:pointer;font-size:var(--fs-18);line-height:1}.desktop-filter-bar .desktop-date-nav-btn:hover{border-color:var(--primary);color:var(--primary)}.desktop-filter-bar .desktop-date-weekdays,.desktop-filter-bar .desktop-date-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:4px}.desktop-filter-bar .desktop-date-weekdays{margin-bottom:6px}.desktop-filter-bar .desktop-date-weekdays span{text-align:center;font-size:var(--fs-11);color:var(--muted)}.desktop-filter-bar .desktop-date-cell{height:30px;border:none;border-radius:8px;background:transparent;color:var(--ink-soft);font-size:var(--fs-13);cursor:pointer;font-family:var(--font-body)}.desktop-filter-bar .desktop-date-cell:hover{background:#1f9d8a1c;color:var(--primary-dark)}.desktop-filter-bar .desktop-date-cell.is-outside{color:#1c181452}.desktop-filter-bar .desktop-date-cell.is-today{box-shadow:inset 0 0 0 1px #1f9d8a73}.desktop-filter-bar .desktop-date-cell.is-selected{background:var(--primary);color:#fff;font-weight:700}.desktop-filter-bar .desktop-date-popover-actions{margin-top:8px;display:flex;align-items:center;justify-content:space-between;border-top:1px solid rgba(28,24,20,.08);padding-top:6px}.desktop-filter-bar .desktop-date-action{font-size:var(--fs-12);color:var(--primary-dark);padding:2px 4px}.desktop-filter-bar input:disabled,.desktop-filter-bar select:disabled,.desktop-filter-bar button:disabled{opacity:.5;cursor:not-allowed}.desktop-filter-bar .filter-actions{display:flex;gap:8px;margin-left:auto;align-self:flex-end}.table-action-bar{display:flex;align-items:center;justify-content:space-between;padding:12px 0;margin-top:16px;border-bottom:1px solid rgba(28,24,20,.08)}.table-action-bar .filter-summary{font-size:var(--fs-13);color:var(--muted)}.table-action-bar .table-actions{display:flex;align-items:center;gap:12px}.table-action-bar .table-action-left{display:flex;flex-direction:column;gap:4px}.data-table-container{margin-top:16px}.data-table{min-width:100%}.data-table thead th{background:var(--card)}.desktop-view .stats-grid{gap:16px}.desktop-view .stats-grid.stats-4{grid-template-columns:repeat(4,1fr)}.desktop-view .stats-grid:not(.stats-3):not(.stats-4){grid-template-columns:repeat(auto-fit,minmax(200px,1fr))}.data-table .pill-button{padding:6px 12px;font-size:var(--fs-12)}}.public-content{width:100%}@media(min-width:768px){.public-content{grid-column:1 / -1}}.inline-error{color:var(--danger);font-size:var(--fs-13);line-height:1.5}.filter-row{display:flex;align-items:flex-end;gap:10px;flex-wrap:wrap}.month-nav{display:flex;align-items:center;gap:6px}.month-nav input[type=month]{background:#f8f5f1;border-radius:14px;border:1.5px solid rgba(28,24,20,.13);padding:8px 12px;font-size:var(--fs-14);color:var(--ink)}.month-nav .desktop-month-field{position:relative;min-width:128px}.month-nav .desktop-month-trigger{width:100%;min-height:40px;padding:8px 12px;border-radius:14px;border:1.5px solid rgba(28,24,20,.13);background:#f8f5f1;color:var(--ink);font-size:var(--fs-14);font-family:var(--font-body);display:flex;align-items:center;justify-content:space-between;gap:8px;cursor:pointer}.month-nav .desktop-month-trigger:focus{outline:none;border-color:var(--primary)}.month-nav .desktop-month-trigger.is-empty{color:var(--muted)}.month-nav .desktop-month-popover{position:absolute;top:calc(100% + 6px);left:0;z-index:60;width:260px;padding:10px;border:1px solid rgba(28,24,20,.16);border-radius:10px;background:#fff;box-shadow:0 18px 32px #140c062e}.month-nav .desktop-month-popover-head{display:grid;grid-template-columns:28px 1fr 28px;align-items:center;gap:8px;margin-bottom:8px}.month-nav .desktop-month-year{text-align:center;font-size:var(--fs-13);font-weight:700;color:var(--ink)}.month-nav .desktop-month-nav-btn{width:28px;height:28px;border:1px solid rgba(28,24,20,.14);border-radius:8px;background:#fff;color:var(--ink-soft);cursor:pointer;font-size:var(--fs-18);line-height:1}.month-nav .desktop-month-nav-btn:hover{border-color:var(--primary);color:var(--primary)}.month-nav .desktop-month-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px}.month-nav .desktop-month-cell{min-height:34px;border:none;border-radius:8px;background:transparent;color:var(--ink-soft);font-size:var(--fs-13);cursor:pointer;font-family:var(--font-body)}.month-nav .desktop-month-cell:hover{background:#1f9d8a1c;color:var(--primary-dark)}.month-nav .desktop-month-cell.is-current{box-shadow:inset 0 0 0 1px #1f9d8a73}.month-nav .desktop-month-cell.is-selected{background:var(--primary);color:#fff;font-weight:700}.month-nav .desktop-month-popover-actions{margin-top:8px;display:flex;justify-content:flex-end;border-top:1px solid rgba(28,24,20,.08);padding-top:6px}.month-nav .desktop-month-action{font-size:var(--fs-12);color:var(--primary-dark);padding:2px 4px}.panel-loading{padding:16px 0}.report-summary{display:flex;flex-direction:column;margin-bottom:20px;border:1.5px solid rgba(28,24,20,.1);border-radius:12px;overflow:hidden}.report-summary-card{display:flex;align-items:center;justify-content:space-between;padding:10px 14px;background:var(--card-bg, #faf8f5);border-bottom:1px solid rgba(28,24,20,.07)}.report-summary-card:last-child{border-bottom:none}.report-summary-label{font-size:var(--fs-13);color:var(--muted);font-weight:600}.report-summary-value{font-size:var(--fs-13);font-weight:600;color:var(--ink)}.report-pending-status-btn{cursor:pointer}.report-pending-status-btn:focus-visible{outline:2px solid rgba(184,106,31,.5);outline-offset:2px}@media(min-width:520px){.report-summary{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;border:none;border-radius:0;overflow:visible}.report-summary-card{background:var(--card-bg, #faf8f5);border:1.5px solid rgba(28,24,20,.1);border-radius:14px;padding:12px 16px}.report-summary-card:last-child{border-bottom:1.5px solid rgba(28,24,20,.1)}}@media(min-width:1280px){.report-summary{grid-template-columns:2fr 1fr 1fr 1fr}}.report-groups{display:flex;flex-direction:column;gap:20px}.report-group{border:1.5px solid rgba(28,24,20,.1);border-radius:16px;overflow:hidden}.report-group-header{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 16px;background:#1c18140a;border-bottom:1.5px solid rgba(28,24,20,.08);flex-wrap:wrap}.report-group-title{font-size:var(--fs-14);font-weight:700;color:var(--ink)}.report-group-stats{display:flex;align-items:center;gap:6px;flex-wrap:wrap}.report-group-total{font-size:var(--fs-13);font-weight:600;color:var(--ink);margin-left:4px}.report-contract-list{display:flex;flex-direction:column}.report-contract-row{padding:10px 16px;border-bottom:1px solid rgba(28,24,20,.07);display:flex;align-items:center;gap:12px}.report-contract-row:last-child{border-bottom:none}.report-contract-main{flex:1;min-width:0;display:flex;flex-direction:column;gap:2px}.report-contract-identity{display:flex;align-items:baseline;gap:8px;min-width:0}.report-contract-code{font-size:var(--fs-13);font-weight:700;color:var(--ink);white-space:nowrap}.report-contract-participants{font-size:var(--fs-13);color:var(--muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.report-contract-status{flex-shrink:0;display:flex;flex-direction:column;align-items:flex-end;gap:3px}.report-contract-amount{font-size:var(--fs-13);font-weight:600;color:var(--ink)}.report-contract-renewed-to{font-size:var(--fs-11);color:var(--muted);white-space:nowrap}.report-contract-introducer{font-size:var(--fs-12);color:var(--muted)}.report-subgroup{border-top:1px solid rgba(28,24,20,.07)}.report-subgroup:first-child{border-top:none}.report-subgroup-header{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:7px 16px;background:#1c181405;border-bottom:1px solid rgba(28,24,20,.06)}.report-subgroup-label{font-size:var(--fs-12);font-weight:600;color:var(--muted);letter-spacing:.01em}.report-subgroup-nav{font-size:var(--fs-12);padding:3px 10px;white-space:nowrap}.modal-card.renewal-candidate-modal{width:min(100%,560px);display:flex;flex-direction:column;overflow:hidden;padding-bottom:0}.renewal-candidate-modal .modal-body{flex:1 1 auto;overflow-y:auto;overscroll-behavior:contain;display:flex;flex-direction:column;gap:8px;padding:4px 0 8px}.candidate-parent-meta{display:flex;flex-direction:column;gap:2px}.candidate-parent-code-inline{margin-left:8px;font-size:var(--fs-15);font-weight:600;color:var(--muted)}.renewal-candidate-modal .modal-actions{flex-shrink:0;padding:10px 4px 12px}.candidate-empty{text-align:center;color:var(--muted);font-size:var(--fs-14);padding:32px 16px}.candidate-empty button{margin-top:12px}.candidate-manual{display:flex;flex-direction:column;gap:8px;padding:8px 0}.candidate-manual input{border:1px solid rgba(28,24,20,.18);border-radius:10px;padding:10px 12px;font-size:var(--fs-14);font-family:var(--font-body);color:var(--ink);background:#fbfbfa;width:100%;box-sizing:border-box}.candidate-manual input:focus{outline:none;border-color:var(--accent, #b97c4a);box-shadow:0 0 0 2px #b97c4a1f}.candidate-manual-error{color:var(--danger, #d64d4d);font-size:var(--fs-13);line-height:1.45}.candidate-list{display:flex;flex-direction:column;gap:6px}.candidate-card{width:100%;text-align:left;background:#fbfbfa;border:1.5px solid rgba(28,24,20,.1);border-radius:14px;padding:10px 12px;cursor:pointer;transition:border-color .15s,background .15s;display:flex;flex-direction:column;gap:4px}.candidate-card:hover{border-color:#1c181438;background:#f7f5f2}.candidate-card.selected{border-color:#1f9d8ab8;background:#1f9d8a14;box-shadow:inset 0 0 0 1px #1f9d8a2e}.candidate-card-header{display:flex;align-items:baseline;justify-content:space-between;gap:10px}.candidate-card-amount-meta{flex:1 1 auto;min-width:0;text-align:left;font-size:var(--fs-12);color:var(--muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.candidate-score{font-size:var(--fs-12);font-weight:600;color:var(--muted);white-space:nowrap}.candidate-card.selected .candidate-score{color:#0f766e}.candidate-card-row{display:flex;justify-content:space-between;font-size:var(--fs-12);color:var(--muted);gap:8px;align-items:flex-start}.candidate-estimate-row{justify-content:flex-start}.candidate-field-miss{color:#b45309;font-weight:600}.candidate-card-scores{display:flex;flex-wrap:wrap;gap:4px;margin-top:2px}.candidate-score-tag{font-size:var(--fs-11);padding:2px 7px;border-radius:999px;font-weight:500}.candidate-score-tag.hit{background:#dcfce7;color:#166534}.candidate-score-tag.miss{background:#f1f5f9;color:#94a3b8}.candidate-pagination{display:flex;justify-content:space-between;align-items:center;padding-top:6px;border-top:1px solid rgba(28,24,20,.06);margin-top:4px}.candidate-pagination-info{font-size:var(--fs-12);color:var(--muted)}.candidate-pagination-controls{display:flex;gap:4px}.modal-card.distribution-diff-modal{width:min(100%,760px);display:flex;flex-direction:column;overflow:hidden;padding-bottom:0}.distribution-diff-body{max-height:min(65vh,620px);overflow-y:auto}.distribution-diff-state{display:flex;align-items:center;gap:10px;color:var(--muted);font-size:var(--fs-14)}.diff-report-text{margin:0;display:grid;gap:2px;font-family:SF Mono,Fira Code,Consolas,monospace;font-size:var(--fs-12);line-height:1.62;color:var(--ink);background:#fbfbfa;border:1px solid rgba(28,24,20,.09);border-radius:12px;padding:12px}.distribution-diff-copy-msg{padding:0 4px 12px;font-size:var(--fs-12);color:var(--muted)}.distribution-diff-modal .modal-actions{margin-top:10px;padding:12px 2px 14px}.modal.distribution-diff-layer{z-index:225}.diff-report-line-row{display:flex;align-items:baseline;justify-content:flex-start;flex-wrap:wrap;gap:6px}.diff-report-line{flex:0 1 auto;min-width:0;white-space:pre-wrap;word-break:break-word}.diff-report-line.is-section{font-weight:700}.diff-report-line.is-secondary{color:var(--muted)}.diff-report-gap{height:10px}.diff-link-inline-btn{flex-shrink:0;font-size:var(--fs-12);line-height:1.5;align-self:baseline}.diff-contract-link{color:inherit;font-size:inherit;font-weight:inherit;text-decoration:underline;text-underline-offset:2px}.diff-link-feedback{font-size:var(--fs-12);border-radius:10px;padding:8px 10px;line-height:1.45}.diff-link-feedback.success{color:#065f46;background:#10b98124}.diff-link-feedback.error{color:#b91c1c;background:#d645451f}@media(max-width:640px){.diff-report-line-row{align-items:baseline;gap:4px}.diff-link-inline-btn{align-self:baseline}}.client-holdings-panel{display:grid;align-content:start;gap:14px}.client-holdings-header-card{border:1.5px solid rgba(28,24,20,.1);border-radius:14px;padding:14px;background:#fbfbfa;display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:nowrap}.client-holdings-header-card>div:first-child{min-width:0;flex:1;overflow-wrap:anywhere}.client-holdings-client-name{font-size:var(--fs-20);font-weight:700;color:var(--ink)}.client-holdings-generated-at{margin-top:4px;color:var(--muted);font-size:var(--fs-12)}.client-holdings-header-actions{flex-shrink:0;display:flex;align-items:center;gap:8px}.client-holdings-table-wrap{overflow-x:auto}.client-holdings-table{min-width:880px}.client-holdings-table tbody tr.client-holdings-row-mixed{background:#1c18140b}.client-holdings-table tfoot td{font-weight:700;background:#1c181408}.team-detail{margin:0;display:grid;gap:18px}.team-detail>div{display:flex;justify-content:space-between;align-items:baseline;gap:18px}.team-detail dt{color:var(--muted);flex-shrink:0}.team-detail dd{margin:0;text-align:right;overflow-wrap:anywhere;min-width:0}.team-error{color:var(--danger, #b42318)}.tab-panel [hidden]{display:none!important}.modal.client-form-layer{z-index:260}.monthly-child-header{flex:0 0 auto;display:grid;gap:4px;margin:0}.monthly-child-header>button{justify-self:start}.monthly-child-header h1,.monthly-child-header p{margin:0}.monthly-child-header p{color:var(--muted);font-size:var(--fs-14)}.monthly-return-prompt{margin:auto;max-width:420px;padding:24px;text-align:center}.monthly-return-prompt p{margin:16px 0}.monthly-child-header h1{font-family:var(--font-body);font-size:var(--fs-24)}@media(min-width:1024px){.query-workspace.query-workspace--exact .query-desktop .query-filter-overview{display:block}.query-workspace.query-workspace--exact .query-desktop .query-filter-overview>.stats-grid.stats-grid{grid-template-columns:repeat(4,minmax(0,1fr))}}.content:has(>.monthly-child-header),.content:has(>.team-navigation){align-content:start;row-gap:8px}.content>.monthly-child-header{margin-top:-8px}.team-navigation{gap:12px}.team-navigation .team-navigation-header{gap:4px}.session-recovery{grid-column:1 / -1;grid-row:1 / -1;display:grid;place-items:start center;align-content:start;padding:32px 20px;min-width:0;overflow:auto}.session-recovery-card{width:100%;max-width:460px;box-sizing:border-box;align-content:start}.session-recovery-actions{display:flex;flex-wrap:wrap;gap:12px}.session-recovery-actions button{min-height:44px;flex:1 1 140px}.audit-workspace{min-width:0;gap:0;align-content:start}.audit-workspace>.panel-header{margin-bottom:12px}.audit-workspace>.query-summary{margin:10px 0 8px;gap:4px 8px;line-height:1.5}.audit-workspace button:focus-visible,.audit-workspace input:focus-visible,.audit-workspace select:focus-visible,.audit-workspace summary:focus-visible{outline:2px solid var(--primary-dark);outline-offset:3px}.audit-filter-shell{background:var(--card-soft);border:var(--border);border-radius:var(--radius-md)}.audit-filter-form{padding:18px 20px}.audit-filter-heading{display:flex;gap:12px;justify-content:space-between;align-items:center;margin-bottom:16px}.audit-filter-heading h3{display:flex;align-items:center;gap:8px;margin:0;font-size:var(--fs-14)}.audit-filter-heading>span{color:var(--primary-dark);font-size:var(--fs-12)}.audit-filter-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}.audit-field{min-width:0;display:flex;flex-direction:column;gap:7px;font-size:var(--fs-12);color:var(--muted)}.audit-field select,.audit-field>input,.audit-picker-trigger{width:100%;min-width:0;min-height:42px;border:1px solid rgba(28,24,20,.16);border-radius:8px;padding:9px 10px;font:inherit;font-size:var(--fs-14);background:var(--card);color:var(--ink);box-sizing:border-box}.audit-select-control{position:relative;display:block}.audit-select-control select{appearance:none;-webkit-appearance:none;padding-inline-end:42px}.audit-select-control>.ui-icon{position:absolute;inset-inline-end:12px;top:50%;transform:translateY(-50%);width:18px;height:18px;color:var(--muted);pointer-events:none}.audit-picker-trigger{display:flex;align-items:center;text-align:left;gap:8px;padding-inline-end:12px}.audit-picker-trigger>span{flex:1;overflow-wrap:anywhere}.audit-picker-trigger .ui-icon{flex:none;width:18px;height:18px;color:var(--muted)}.audit-picker-trigger:hover,.audit-sort:hover,.audit-mobile-filter:hover{background:var(--bg)}.audit-picker-trigger:active,.audit-sort:active,.audit-mobile-filter:active{background:var(--bg-accent)}.audit-workspace button,.audit-workspace summary{touch-action:manipulation}.audit-checkbox{display:flex;align-items:flex-start;gap:6px;line-height:1.6;color:var(--ink-soft)}.audit-checkbox input{width:16px;height:16px;margin:3px 0 0;flex:none;accent-color:var(--primary-dark)}.audit-field-error{color:var(--danger);font-size:var(--fs-12)}.audit-filter-footer{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;margin-top:16px}.audit-filter-actions,.audit-shortcuts{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.audit-mobile-filter{display:none}.audit-result-toolbar{display:flex;justify-content:space-between;align-items:center;gap:8px 12px;flex-wrap:wrap;margin:0 0 8px}.audit-result-count{display:flex;gap:4px 12px;flex-wrap:wrap;font-size:var(--fs-13);line-height:1.5}.audit-result-count>span{color:var(--muted)}.audit-result-controls{display:flex;align-items:center;gap:8px;flex-wrap:wrap;font-size:var(--fs-12);color:var(--muted);line-height:1.5}.audit-limit-options{flex:none}.audit-sort{display:flex;align-items:center;gap:4px;border:0;background:none;color:var(--ink);font:inherit;padding:4px 2px;min-height:28px;line-height:1.3}.audit-sort>span:first-child{font-size:var(--fs-14)}.audit-note{font-size:var(--fs-12);color:var(--muted);line-height:1.7;overflow-wrap:anywhere}.audit-table{width:100%;border-collapse:separate;border-spacing:0;table-layout:fixed;border:var(--border);border-radius:var(--radius-md);background:var(--card)}.audit-table th{text-align:left;padding:12px 16px;font-weight:500;color:var(--muted);font-size:var(--fs-12);border-bottom:var(--border)}.audit-table th:first-child{width:18%}.audit-table th:nth-child(3){width:18%}.audit-table th:last-child{width:8%}.audit-row td{padding:14px 16px;vertical-align:top;overflow-wrap:anywhere;border-bottom:var(--border)}.audit-row:last-child td{border-bottom:0}.audit-actor{font-size:var(--fs-14);line-height:1.6}.audit-actor small{display:block;font-size:var(--fs-12);color:var(--muted)}.audit-action{display:flex;align-items:baseline;gap:7px;flex-wrap:wrap;font-size:var(--fs-14);line-height:1.5}.audit-content-line{margin:4px 0 0;font-size:var(--fs-13);line-height:1.5;color:var(--ink-soft);white-space:pre-wrap;overflow-wrap:anywhere}.audit-action+.audit-content-line,.audit-card-header+.audit-content-line,.audit-card-type+.audit-content-line{margin-top:8px}.audit-content-line--note{display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;overflow:hidden}.audit-time{font-size:var(--fs-12);color:var(--muted);line-height:1.7;font-variant-numeric:tabular-nums}.audit-action code,.audit-history-label{font-size:var(--fs-11);color:var(--muted)}.audit-row-action{text-align:right}.audit-row-action .ui-button{min-height:36px;padding:5px 8px;white-space:normal}.audit-row.is-expanded td{background:var(--card-soft)}.audit-detail-row>td{padding:0;border-bottom:var(--border)}.audit-detail{padding:12px 16px 16px;background:var(--card-soft)}.audit-detail-context{display:flex;flex-wrap:wrap;gap:4px 12px;margin:0 0 8px;font-size:var(--fs-12);line-height:1.5;color:var(--muted);overflow-wrap:anywhere}.audit-detail-context>*{min-width:0}.audit-detail-context time{font-variant-numeric:tabular-nums}.audit-subject{margin:0 0 8px;font-size:var(--fs-13);line-height:1.5;overflow-wrap:anywhere}.audit-detail-section{padding-top:12px}.audit-detail>.audit-detail-section:first-of-type{padding-top:0}.audit-detail-section h3{font-size:var(--fs-13);margin:0 0 6px;color:var(--primary-dark)}.audit-facts{margin:0;font-size:var(--fs-13);line-height:1.5}.audit-facts>div{display:grid;grid-template-columns:minmax(110px,1fr) minmax(0,4fr);gap:4px 16px;padding:6px 0}.audit-facts dt{color:var(--muted)}.audit-facts dd{margin:0;min-width:0;white-space:pre-wrap;overflow-wrap:anywhere}.audit-change-values{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}.audit-change-values span{font-size:var(--fs-11);color:var(--muted)}.audit-change-values p{margin:3px 0}.audit-change-values>div:last-child{border-left:2px solid rgba(31,157,138,.25);padding-left:12px}.audit-record-info,.audit-raw{margin-top:12px;border-top:var(--border);padding-top:8px;font-size:var(--fs-12);line-height:1.5}.audit-record-info summary,.audit-raw summary{cursor:pointer;color:var(--muted);padding:6px 0;min-height:32px;box-sizing:border-box}.audit-raw pre{max-width:100%;max-height:360px;overflow:auto;white-space:pre-wrap;overflow-wrap:anywhere;padding:12px;background:var(--bg);border-radius:8px;font-size:var(--fs-12);line-height:1.6}.audit-read-failure{margin:12px 0}.audit-read-failure>.ui-button{margin:0 12px 8px}.audit-read-failure .query-state{margin-bottom:8px}.audit-empty{padding:56px 20px;text-align:center;color:var(--muted);border:var(--border);border-radius:var(--radius-md)}.audit-empty>.ui-icon{color:var(--primary-dark)}.audit-empty h3{font-size:var(--fs-16);color:var(--ink)}.audit-empty p{font-size:var(--fs-13);line-height:1.7}.audit-visually-hidden{position:absolute;width:1px;height:1px;clip-path:inset(50%);overflow:hidden}@media(max-width:1100px)and (min-width:1024px){.audit-filter-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(min-width:1024px){.audit-limit-options .quick-date-btn.sm{padding:2px 6px}}@media(max-width:1023px){.audit-mobile-filter{display:flex;justify-content:space-between;align-items:center;gap:12px;width:100%;min-height:44px;padding:10px 14px;border:0;background:transparent;font:inherit;font-size:var(--fs-13);line-height:1.5;text-align:left;color:var(--ink)}.audit-mobile-filter>span:first-child{display:flex;align-items:center;gap:7px}.audit-mobile-filter>span:last-child{color:var(--primary-dark);font-size:var(--fs-12)}.audit-filter-form{display:none;padding:4px 16px 16px}.audit-filter-shell[data-open=true] .audit-filter-form{display:block}.audit-filter-heading{display:none}.audit-filter-grid{grid-template-columns:minmax(0,1fr);gap:14px}.audit-filter-actions{width:100%;justify-content:flex-end}.audit-field select,.audit-field>input,.audit-picker-trigger{min-height:44px}.audit-result-controls{width:100%;gap:8px}.audit-cards{display:grid;gap:8px;min-width:0}.audit-card{min-width:0;padding:12px;background:var(--card);border:var(--border);border-radius:var(--radius-sm)}.audit-card-header{display:flex;align-items:flex-start;gap:8px;width:100%;min-height:44px;padding:0;border:0;background:transparent;color:var(--ink);font:inherit;text-align:left;cursor:pointer;border-radius:4px}.audit-card-header:hover{background:var(--card-soft)}.audit-card-header:active{background:var(--bg-accent)}.audit-card-heading{flex:1;min-width:0;display:grid;gap:4px;overflow-wrap:anywhere}.audit-card-heading>strong{font-size:var(--fs-14);line-height:1.5}.audit-card-meta{display:flex;align-items:baseline;flex-wrap:wrap;gap:0 4px;font-size:var(--fs-12);line-height:1.5;color:var(--muted)}.audit-card-meta>span,.audit-card-meta>time{min-width:0;overflow-wrap:anywhere}.audit-card-meta time{font-variant-numeric:tabular-nums}.audit-card-email{flex-basis:100%}.audit-card-header>.ui-icon{flex:none;width:18px;height:18px;margin-top:2px;color:var(--muted)}.audit-card-header[aria-expanded=true]>.ui-icon{transform:rotate(180deg)}.audit-card-type{margin-top:8px;font-size:var(--fs-11);line-height:1.5;color:var(--muted);overflow-wrap:anywhere}.audit-card>[id^=audit-detail-]{margin-top:8px;border-top:var(--border)}.audit-card .audit-detail{padding:0 0 8px;background:transparent}.audit-facts>div{grid-template-columns:minmax(0,1fr);gap:3px;padding:6px 0}.audit-change-values{gap:12px}}@media(prefers-reduced-motion:reduce){.audit-workspace *{scroll-behavior:auto}}.modal.confirm-dialog-overlay{align-items:center;padding:max(12px,env(safe-area-inset-top,0px)) 12px max(12px,env(safe-area-inset-bottom,0px))}.modal-card.confirm-dialog{width:min(100%,520px);max-height:calc(100dvh - 32px);margin:0;display:flex;flex-direction:column;gap:0;overflow:hidden}.confirm-dialog-header{margin-bottom:12px;flex-shrink:0}.confirm-dialog-context{font-size:var(--fs-13);color:var(--muted);overflow-wrap:anywhere;margin-top:4px}.confirm-dialog-body{min-height:0;overflow-y:auto;overscroll-behavior:contain;scrollbar-gutter:stable;display:grid;gap:12px;padding-bottom:4px}.confirm-dialog-body p{margin:0;overflow-wrap:anywhere}.confirm-dialog-impact{font-size:var(--fs-16);font-weight:700;line-height:1.5;color:var(--modal-danger)}.confirm-dialog-description{font-size:var(--fs-14);line-height:1.7}.confirm-dialog-note{display:flex;align-items:flex-start;gap:8px;font-size:var(--fs-13);line-height:1.65}.confirm-dialog-note svg{flex-shrink:0;width:18px;height:18px;margin-top:2px;color:var(--modal-primary)}.confirm-dialog-note span{min-width:0;overflow-wrap:anywhere}.confirm-dialog-hint{color:var(--muted);font-size:var(--fs-13);line-height:1.65}.confirm-dialog-fields{border:0;padding:0;margin:0;min-width:0;display:grid;gap:12px}.confirm-dialog-fields .field{font-size:var(--fs-14);line-height:1.65;gap:8px}.confirm-dialog-fields select,.confirm-dialog-fields textarea{width:100%;min-width:0;border:1px solid var(--modal-rule);background:var(--card);color:var(--ink);border-radius:var(--radius-sm);padding:10px 12px;font-family:var(--font-body);font-size:var(--fs-14)}.confirm-dialog-fields textarea{min-height:88px;resize:vertical}.confirm-dialog-fields select{min-height:44px}.confirm-dialog-fields .detail-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.confirm-dialog-fields .detail-grid>div{min-width:0}.confirm-dialog-fields .detail-grid>:only-child{grid-column:1 / -1}.confirm-dialog-fields .detail-value{overflow-wrap:anywhere}.confirm-dialog-actions{justify-content:space-between;margin-top:12px;flex-shrink:0}.confirm-dialog-actions--single{justify-content:flex-end}.confirm-dialog-button{min-width:80px;white-space:nowrap;flex-shrink:0;transition:background-color .12s ease,color .12s ease}.confirm-dialog-button:active:not(:disabled),.confirm-dialog-close:active:not(:disabled){transform:scale(.97)}.confirm-dialog :is(button,select,textarea,input):focus-visible{outline:3px solid var(--modal-primary);outline-offset:3px}@media(max-width:600px){.confirm-dialog-fields select,.confirm-dialog-fields textarea{font-size:max(16px,var(--fs-14))}.modal-card .confirm-dialog-actions .confirm-dialog-button{padding-inline:12px}}@media(prefers-reduced-motion:reduce){.confirm-dialog-button{transition:none}.confirm-dialog-button:active:not(:disabled),.confirm-dialog-close:active:not(:disabled){transform:none}}.guide-dim{position:fixed;inset:0;z-index:3000;background:#151c1ba8;pointer-events:none}.guide-ring{position:fixed;z-index:3001;pointer-events:none;border:2px solid #a2ead4;border-radius:12px}.guide-panel{position:fixed;z-index:3010;right:24px;width:min(380px,calc(100vw - 32px));padding:18px 20px;border-radius:16px;background:var(--card);color:var(--ink);box-shadow:var(--shadow);max-height:calc(100dvh - 110px);overflow:auto}.guide-panel[data-placement=top]{top:24px}.guide-panel[data-placement=bottom]{bottom:24px}.guide-panel-top{display:flex;justify-content:space-between;gap:12px;align-items:center;margin:-4px -4px 8px 0}.guide-panel-top>span{font-size:var(--fs-12);color:var(--primary-dark)}.guide-close{font:inherit;font-size:var(--fs-22);display:grid;place-items:center;width:44px;height:44px;border:0;border-radius:50%;background:var(--card-soft);cursor:pointer;flex-shrink:0}.guide-panel h2{font-size:var(--fs-18);line-height:1.6;margin:0 0 10px}.guide-panel p{font-size:var(--fs-14);line-height:1.8;margin:0 0 18px}.guide-panel-actions{display:flex;flex-wrap:wrap;gap:8px 16px;align-items:center}.guide-panel button:focus-visible,.guide-panel a:focus-visible{outline:2px solid var(--primary);outline-offset:3px}.guide-text-link{color:var(--primary-dark);font-size:var(--fs-14);padding:10px 0;min-height:44px;text-decoration:none}@media(max-width:767px){.guide-panel{right:16px;padding:14px 18px}.guide-panel[data-placement=top]{top:16px}.guide-panel[data-placement=bottom]{bottom:calc(88px + env(safe-area-inset-bottom))}}.team-navigation{min-width:0}.team-navigation-location{display:flex;align-items:center;justify-content:space-between;gap:16px;min-width:0}.team-navigation-location h3{min-width:0;margin:0;text-align:left;overflow-wrap:anywhere;font-family:var(--font-body);font-size:var(--fs-18);font-weight:600;line-height:1.5}.team-navigation-detail{display:inline-flex;align-items:center;justify-content:flex-end;gap:4px;flex-shrink:0;min-width:44px;min-height:44px;padding:0 2px 0 12px;border:0;border-radius:8px;background:transparent;color:var(--muted);font-family:var(--font-body);font-size:var(--fs-14);font-weight:500;cursor:pointer}.team-navigation-detail svg{width:16px;height:16px;fill:none;stroke:currentColor;stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round}.team-navigation-detail:hover:not(:disabled){color:var(--primary-dark);background:var(--card-soft)}.team-navigation-detail:disabled{opacity:.5;cursor:default}.team-navigation-rows{list-style:none;margin:0;padding:0;border:var(--border);border-radius:16px;background:var(--card);overflow:hidden}.team-navigation-rows li+li{border-top:var(--border)}.team-navigation-row{display:flex;align-items:center;flex-wrap:wrap;gap:8px;width:100%;min-height:56px;padding:12px;border:0;color:var(--ink);background:transparent;font-family:var(--font-body);font-size:var(--fs-16);line-height:1.5;text-align:left;cursor:pointer}.team-navigation-person{display:flex;align-items:center;flex-wrap:wrap;gap:6px;flex:1;min-width:0}.team-navigation-name{min-width:0;font-weight:600;overflow-wrap:anywhere}.team-navigation-person .status-chip{flex-shrink:0}.team-navigation-count{color:var(--muted);font-size:var(--fs-13);white-space:nowrap}.team-navigation-add{display:flex;align-items:center;gap:6px;width:100%;min-height:44px;padding:12px;margin-top:8px;border:0;border-radius:8px;background:transparent;color:var(--primary);font-family:var(--font-body);font-size:var(--fs-16);line-height:1.5;text-align:left;overflow-wrap:anywhere;cursor:pointer}.team-navigation-row:hover,.team-navigation-add:hover{background:var(--card-soft)}.team-navigation button:focus-visible,.team-navigation h3:focus-visible{outline:2px solid var(--primary);outline-offset:-2px;border-radius:8px}@keyframes team-navigation-arrive{0%{opacity:.6}to{opacity:1}}@media(prefers-reduced-motion:no-preference){.team-navigation{animation:team-navigation-arrive .13s ease-out}.team-navigation-row,.team-navigation-add{transition:background-color .12s ease}}.team-operation-banner,.team-operation-status{padding:12px;border:1px solid var(--border, #ddd);border-radius:12px;margin-bottom:12px}.team-operation-status p,.team-operation-banner p{margin:0 0 8px;overflow-wrap:anywhere}.team-operation-status button+button{margin-left:8px}.grouped-client-filters{grid-column:1 / -1;min-width:0;display:grid;gap:8px;font-family:var(--font-body)}.grouped-client-heading{display:flex;align-items:center;flex-wrap:wrap;justify-content:space-between;gap:4px 8px}.grouped-client-title{display:flex;align-items:center;gap:8px}.grouped-client-title>span{font-size:var(--fs-14);font-weight:600}.grouped-client-heading .ui-button{max-width:100%;min-width:0;min-height:28px;padding:2px 0;font-family:inherit;font-size:var(--fs-12);font-weight:400;white-space:normal;text-align:left}.grouped-client-mode{border:0;border-radius:999px;background:#f1efeb;color:var(--muted);font-family:inherit;font-size:var(--fs-12);font-weight:400;padding:3px 8px;cursor:pointer}.grouped-client-mode.is-active{background:#1f9d8a1f;color:var(--primary-dark)}.grouped-client-row{display:flex;align-items:center;gap:4px;min-width:0}.grouped-client-input{flex:1;min-width:0;display:flex;align-items:stretch;height:var(--grouped-field-height, 44px);gap:4px;--grouped-outer-radius: 14px}.grouped-client-owner{flex:0 0 calc(3em + 18px);min-width:0;padding:0 8px;border:1px solid rgba(28,24,20,.12);border-radius:var(--grouped-outer-radius) 0 0 var(--grouped-outer-radius);background:#f8f5f1;color:var(--ink);font-family:inherit;font-size:var(--fs-14);font-weight:400;text-align:left;white-space:nowrap;overflow-x:auto;cursor:pointer;scrollbar-width:none}.grouped-client-owner::-webkit-scrollbar{display:none}.grouped-client-input .picker-box,.grouped-client-input .picker-box.is-empty{flex:1;min-width:0;display:flex;padding:0 8px;margin:0;border:1px solid rgba(28,24,20,.12);border-radius:0 var(--grouped-outer-radius) var(--grouped-outer-radius) 0;background:#f8f5f1;overflow:hidden}.grouped-client-input .picker-inline{width:100%;min-width:0;gap:6px;height:100%}.grouped-client-input .chip-list.preview{flex:1;min-width:0;flex-wrap:nowrap;overflow-x:auto;overflow-y:hidden;padding:0;height:100%;align-items:center;scrollbar-width:none}.grouped-client-input .chip-btn{flex-shrink:0;padding:2px 6px;font-family:inherit;font-weight:400}.grouped-client-input .chip-add{flex-shrink:0}.grouped-client-empty{padding:0;font-family:inherit;font-size:var(--fs-14);font-weight:400;white-space:nowrap}.grouped-client-remove{flex:0 0 28px;width:28px;height:36px;padding:0;border:0;background:transparent;display:grid;place-items:center;cursor:pointer}.grouped-client-remove>span{width:20px;height:20px;display:grid;place-items:center;border-radius:50%;background:#fbeceb;color:#b76560;font-family:var(--font-body);font-size:var(--fs-16);line-height:1}.grouped-client-error{margin:0;color:var(--muted);font-size:var(--fs-12)}.grouped-client-filters button:focus-visible{outline:2px solid var(--primary-dark);outline-offset:-2px}.filter-modal-card:has(.grouped-client-filters) .filter-panel-body{grid-template-columns:minmax(0,1fr)}.filter-modal-card{--grouped-field-height: calc(var(--fs-14) * 1.5 + 22px)}.filter-modal-card .field input:not([type=checkbox]),.filter-modal-card .field select{height:var(--grouped-field-height);line-height:1.5}.filter-modal-card .picker-box:not(.grouped-client-input .picker-box){height:var(--grouped-field-height);padding:0 12px;align-content:center}.filter-modal-card .picker-box .picker-row,.filter-modal-card .picker-box.is-empty .picker-row{min-height:0}.filter-modal-card .picker-box .chip-btn,.filter-modal-card .picker-meta{font-family:var(--font-body);font-weight:400}@media(min-width:1024px){.grouped-client-owner{flex-basis:18%;min-width:calc(3em + 18px)}.grouped-client-title>span{font-size:var(--fs-12);font-weight:400;color:var(--muted);min-height:22px;display:flex;align-items:center}.grouped-client-input{--grouped-field-height: calc(var(--fs-14) * 1.5 + 18px);--grouped-outer-radius: 8px}}.filter-modal-card .filter-fieldset{min-inline-size:0;grid-template-columns:minmax(0,1fr)}.grouped-client-input .chip-list.preview::-webkit-scrollbar{display:none}.grouped-client-input .chip-list.preview{cursor:grab}.grouped-client-input .chip-list.preview.is-dragging{cursor:grabbing;-webkit-user-select:none;user-select:none}.grouped-client-remove>span:before{content:"";width:10px;height:2px;border-radius:1px;background:currentColor}.client-form.modal-card{width:min(100%,760px);display:flex;flex-direction:column;overflow:hidden}.client-form>.modal-header,.client-form>.modal-actions{flex-shrink:0}.client-form>.modal-body{min-height:0;overflow-y:auto;overscroll-behavior:contain}.client-form-sections{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px 24px}.client-form-section{min-width:0;margin:0;padding:0;border:0}.client-form-section legend{padding:0;margin-bottom:10px;font-size:var(--fs-14);font-weight:600;color:var(--ink)}.client-form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.client-form-wide{grid-column:1 / -1}.client-form .field input:disabled{background:var(--modal-secondary);color:var(--muted);-webkit-text-fill-color:var(--muted);opacity:1;cursor:not-allowed;border-style:dashed}.client-form .field textarea{resize:vertical;min-height:96px}.client-form-confirmation{margin-top:16px}@media(max-width:699px){.client-form-sections{grid-template-columns:minmax(0,1fr);gap:18px}.client-form .field :is(input,select,textarea){width:100%;font-size:var(--fs-16)}}@media(max-width:359px){.client-form-grid{grid-template-columns:minmax(0,1fr)}}:root:is([data-font-scale="150"],[data-font-scale="175"]) .client-form-grid{grid-template-columns:minmax(0,1fr)}.client-form>.modal-header{align-items:center}.client-form .field :is(input,select){box-sizing:border-box;height:calc(1.5em + 22px);line-height:1.5}.client-form .field input[type=date]::-webkit-date-and-time-value{min-height:1.5em;text-align:left}.client-directory{min-width:0}.client-directory-toolbar{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:4px}.client-directory-toolbar>div{min-width:0}.client-directory-summary{margin:0 0 4px;overflow-wrap:anywhere;font-size:var(--fs-14)}.client-directory-toolbar>button{flex-shrink:0}.client-directory-list{list-style:none;margin:0;padding:0;border:var(--border);border-radius:12px;overflow:hidden}.client-directory-list:empty{display:none}.client-directory-list li+li{border-top:var(--border)}.client-directory-row{display:flex;align-items:center;gap:8px;width:100%;min-height:52px;padding:10px 12px;border:0;color:var(--ink);background:var(--card);text-align:left;font:inherit;cursor:pointer}.client-directory-identity{flex:1;min-width:0;display:flex;align-items:baseline;gap:8px}.client-directory-code{flex:0 0 auto;max-width:45%;color:var(--muted);font-size:var(--fs-13);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.client-directory-name{flex:0 1 auto;min-width:0;font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.client-directory-owner{flex:0 1 auto;max-width:34%;padding:3px 8px;background:var(--card-soft);border:var(--border);border-radius:999px;font-size:var(--fs-12);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.client-directory-row:hover{background:var(--card-soft)}.client-directory-row:focus-visible{outline:2px solid var(--primary);outline-offset:-2px}.client-directory-footer{min-height:1px}.client-directory-footer>p,.client-directory-footer>.client-directory-error{margin:16px 0 0}.client-directory-modal{min-width:0}.client-directory-modal h3{margin:0}.client-directory-modal .modal-actions{flex-wrap:wrap}.client-directory-error{margin-bottom:12px;color:var(--danger)}.client-directory-picker-shell{z-index:250}.client-owner-tree{padding:0;list-style:none}.client-owner-tree li{display:flex;align-items:center;gap:4px;padding-left:calc(var(--owner-depth) * 10px);border-bottom:var(--border);min-width:0}.client-owner-tree label{display:flex;flex:1;min-width:0;gap:10px;align-items:center;padding:8px 0;min-height:44px;cursor:pointer}.client-owner-tree label>span{min-width:0;overflow-wrap:anywhere}.client-owner-tree small{display:block;color:var(--muted);font-size:var(--fs-12)}.client-owner-tree input{flex-shrink:0;width:20px;height:20px}.client-owner-expand{flex-shrink:0;width:44px;height:44px;border:0;background:transparent;color:var(--primary);font:inherit;cursor:pointer}.client-owner-spacer{width:44px;flex-shrink:0}.client-directory-modal>.modal-header{align-items:center}.client-detail-modal{width:min(100%,760px);display:flex;flex-direction:column;overflow:hidden}.client-detail-modal>.modal-header,.client-detail-modal>.modal-actions{flex-shrink:0}.client-detail-modal>.modal-body{min-height:0;overflow-y:auto;overscroll-behavior:contain}.client-detail-sections{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px 24px}.client-detail-sections section{min-width:0}.client-detail-wide{grid-column:1 / -1}.client-detail-sections h4{margin:0 0 12px;font-size:var(--fs-14);font-weight:600}.client-detail-heading{min-width:0;overflow-wrap:anywhere}.client-detail-heading .modal-sub{margin:4px 0 0}.client-directory-detail{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px 20px;margin:0}.client-directory-detail>div{min-width:0}.client-directory-detail dt{margin-bottom:4px;color:var(--muted);font-size:var(--fs-13)}.client-directory-detail dd,.client-detail-note dd{margin:0;overflow-wrap:anywhere;line-height:1.5}.client-detail-empty{color:var(--muted);font-size:var(--fs-13)}.client-detail-note{margin:0;padding-top:18px;border-top:var(--border)}.client-detail-note dt{font-size:var(--fs-14);font-weight:600;margin-bottom:10px}.client-detail-note dd{white-space:pre-wrap}@media(max-width:699px){.client-detail-sections{grid-template-columns:minmax(0,1fr)}}@media(max-width:359px){.client-directory-detail{grid-template-columns:minmax(0,1fr)}}:root:is([data-font-scale="150"],[data-font-scale="175"]) .client-directory-detail{grid-template-columns:minmax(0,1fr)}.client-detail-action-group{display:flex;justify-content:flex-end;flex-wrap:wrap;gap:8px;margin-left:auto}.client-detail-modal>.modal-actions>.ghost-btn{flex-shrink:0}.introducer-preference-row{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:8px 16px}.introducer-preference-label{display:flex;align-items:center;gap:8px;min-width:0;font-size:var(--fs-14);font-weight:600}.introducer-preference-label>span{min-width:0}.introducer-preference-info{display:inline-flex;align-items:center;justify-content:center;flex:none;padding:0;width:36px;height:36px;border:0;background:var(--card-soft);border-radius:50%;color:var(--muted)}.introducer-preference-info svg{width:18px;height:18px;fill:none}.introducer-preference-switch{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:8px 12px;min-height:44px;flex:none;border:var(--border);border-radius:999px;background:var(--card-soft);color:var(--muted);font-size:var(--fs-13);line-height:1.5}.introducer-preference-switch[aria-checked=true]{color:var(--primary-dark);border-color:var(--primary-dark)}.introducer-preference-track{width:28px;height:16px;background:var(--muted);border-radius:999px;padding:2px}.introducer-preference-track:before{content:"";display:block;width:12px;height:12px;background:var(--card);border-radius:50%}.introducer-preference-switch[aria-checked=true] .introducer-preference-track{background:var(--primary-dark)}.introducer-preference-switch[aria-checked=true] .introducer-preference-track:before{transform:translate(12px)}.introducer-preference-info:focus-visible,.introducer-preference-switch:focus-visible{outline:2px solid var(--primary-dark);outline-offset:3px}.introducer-preference-hint{color:var(--muted);font-size:var(--fs-13);line-height:1.7;margin:8px 0 0}.introducer-filter-help .modal-body{font-size:var(--fs-14);line-height:1.8;overflow-wrap:anywhere;min-width:0}.introducer-filter-help p{margin:0 0 16px}.introducer-filter-help p:last-child{margin-bottom:0}@media(max-width:1023px){.introducer-preference-info{width:44px;height:44px}}.navigation-header{display:grid;align-content:start;gap:8px;min-width:0;margin:0}.navigation-header>.navigation-back{justify-self:start}.navigation-back,.team-navigation-back{display:flex;align-items:center;gap:5px;min-width:44px;max-width:100%;min-height:44px;padding:0;border:0;border-radius:8px;text-align:left;background:transparent;color:var(--primary);font-family:var(--font-body);font-size:var(--fs-14);cursor:pointer}.navigation-back span:first-child,.team-navigation-back span:first-child{flex-shrink:0}.navigation-back span:last-child,.team-navigation-back span:last-child{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.navigation-back:hover,.navigation-back:active,.team-navigation-back:hover,.team-navigation-back:active{background:var(--card-soft);color:var(--primary-dark)}.navigation-back:focus-visible,.team-navigation-back:focus-visible{outline:2px solid var(--primary);outline-offset:-2px}.app:has(.changelog-page){padding:0;background:var(--bg)}.phone:has(.changelog-page){display:block;width:100%;max-width:none;height:auto;min-height:100dvh;padding:0;border:0;border-radius:0;box-shadow:none;overflow:visible}.content.changelog-content{display:block;width:100%;padding:0;overflow:visible}.changelog-page{--changelog-line: rgba(28, 24, 20, .14);--changelog-tint: #e3f2ed;width:100%;background:var(--bg);color:var(--ink)}.changelog-masthead{padding:22px 40px;border-bottom:1px solid var(--changelog-line)}.changelog-masthead-inner{display:flex;align-items:center;justify-content:space-between;gap:16px;max-width:800px;margin:0 auto}.changelog-brand{display:inline-flex;align-items:center;gap:10px;flex:0 0 auto}.changelog-brand img{width:36px;height:36px;border-radius:var(--brand-logo-radius)}.changelog-brand .brand-wordmark{font-size:var(--fs-26)}.changelog-site-label{color:var(--muted);font-size:var(--fs-12)}.changelog-body{width:100%;max-width:800px;margin:0 auto;padding:52px 40px 40px}.changelog-body h1{margin:0 0 28px;font-family:var(--font-display);font-size:calc(var(--fs-32) * 1.1875);font-weight:600;line-height:1.35;letter-spacing:.02em;overflow-wrap:anywhere}.changelog-index{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:36px}.changelog-index a,.changelog-retry{display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:8px 14px;border:1px solid var(--changelog-line);border-radius:6px;background:transparent;color:var(--muted);font-family:inherit;font-size:var(--fs-13);line-height:1.5;text-decoration:none;white-space:nowrap;cursor:pointer}.changelog-index a:hover,.changelog-index a.is-current,.changelog-retry:hover{color:var(--primary-dark);background:var(--changelog-tint);border-color:var(--primary-dark)}.changelog-index a:active,.changelog-retry:active{transform:translateY(1px)}.changelog-index a:focus-visible,.changelog-retry:focus-visible,.release-archive summary:focus-visible{outline:2px solid var(--primary-dark);outline-offset:4px}.release-article{padding:36px 0;border-bottom:1px solid var(--changelog-line);scroll-margin-top:24px}.release-article--latest{margin-bottom:4px;padding:30px 32px 28px;border:0;border-radius:12px;background:var(--changelog-tint)}.release-meta{display:flex;align-items:center;flex-wrap:wrap;gap:10px;margin-bottom:14px;color:var(--muted);font-size:var(--fs-13);line-height:1.5}.release-version{color:var(--primary-dark);font-size:var(--fs-14);font-weight:600}.release-meta time{font-variant-numeric:tabular-nums;white-space:nowrap}.release-meta-dot{width:3px;height:3px;border-radius:50%;background:var(--muted)}.release-latest-label{margin-left:auto;padding:3px 8px;border:1px solid var(--primary-dark);border-radius:4px;color:var(--primary-dark);font-size:var(--fs-11);white-space:nowrap}.release-article h2{min-width:0;margin:0;font-size:calc(var(--fs-24) * 1.041667);font-weight:600;line-height:1.5;letter-spacing:-.025em;overflow-wrap:anywhere}.release-summary{margin:12px 0 20px;color:var(--ink-soft);font-size:var(--fs-15);line-height:1.65;text-wrap:pretty}.release-points{display:grid;gap:8px;margin:0;padding:0;list-style:none}.release-points li{position:relative;padding-left:14px;color:var(--ink-soft);font-size:var(--fs-14);line-height:1.65;overflow-wrap:anywhere}.release-points li:before{content:"";position:absolute;top:.8em;left:0;width:4px;height:4px;border-radius:50%;background:var(--muted)}.release-points strong{color:var(--ink);font-weight:600}.release-notice{margin:22px 0 0;padding-top:16px;border-top:1px solid var(--changelog-line);color:var(--ink-soft);font-size:var(--fs-13);line-height:1.65;overflow-wrap:anywhere}.release-notice strong{margin-right:8px;color:var(--primary-dark);font-weight:600}.release-archive{margin-top:32px;scroll-margin-top:24px}.release-archive summary{display:flex;justify-content:space-between;align-items:center;gap:16px;min-height:44px;padding:20px 0;list-style:none;cursor:pointer;font-size:var(--fs-16);font-weight:600}.release-archive summary::-webkit-details-marker{display:none}.release-archive-range{display:inline-block;margin-left:12px;color:var(--muted);font-size:var(--fs-13);font-weight:400;white-space:nowrap}.release-archive-chevron{width:8px;height:8px;margin-right:4px;border:solid var(--muted);border-width:0 1.5px 1.5px 0;transform:rotate(45deg);flex:0 0 auto}.release-archive[open] .release-archive-chevron{transform:rotate(225deg)}.release-archive .release-article:first-of-type{padding-top:24px}.release-archive h2{font-size:calc(var(--fs-22) * .954545)}.changelog-footer{display:flex;justify-content:space-between;align-items:center;gap:16px;margin-top:24px;padding-top:20px;border-top:1px solid var(--changelog-line);color:var(--muted);font-size:var(--fs-12)}.changelog-state{margin:0;padding:24px 0;color:var(--muted);font-size:var(--fs-14)}.changelog-state p{margin:0 0 16px}@media(max-width:540px){.changelog-masthead{padding:20px 24px}.changelog-brand img{width:32px;height:32px}.changelog-brand .brand-wordmark{font-size:var(--fs-22)}.changelog-site-label{display:none}.changelog-body{padding:32px 24px}.changelog-body h1{margin-bottom:22px;font-size:calc(var(--fs-32) * .96875)}.changelog-index{gap:6px;margin-bottom:26px}.changelog-index a{padding:8px 13px}.release-article--latest{margin-right:-8px;margin-left:-8px;padding:24px 20px}.release-article h2{font-size:var(--fs-22);line-height:1.6}.release-meta{gap:8px;margin-bottom:12px;font-size:var(--fs-12)}.release-summary{margin-top:10px;font-size:var(--fs-14)}.release-article:not(.release-article--latest){padding-top:32px;padding-bottom:32px}}
