.salon-form{gap:1.25rem;display:grid}.salon-form__grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem;display:grid}.salon-form__wide{grid-column:1/-1}.salon-form__availability{gap:.75rem;display:grid}.salon-form__title{margin:0;font-size:1rem}@media (width<=40rem){.salon-form__grid{grid-template-columns:minmax(0,1fr)}}.salon-picker,.salon-attachments{gap:.75rem;display:grid}.salon-attachments{margin-top:1.25rem}.salon-picker__list,.salon-files{gap:.5rem;margin:0;padding:0;list-style:none;display:grid}.salon-files li{justify-content:space-between;align-items:center;gap:.75rem;display:flex}.salon-actions{flex-wrap:wrap;gap:.75rem;margin-top:1rem;display:flex}.salon-problem{color:var(--tenon-color-danger,#b3261e);margin:0}.kiosk{box-sizing:border-box;flex-direction:column;gap:1.25rem;min-height:100dvh;padding:1.5rem clamp(1rem,4vw,3rem);display:flex}.kiosk__form,.kiosk__thanks{gap:1.25rem;width:100%;max-width:56rem;margin:0 auto;display:grid}.kiosk__header h1,.kiosk__thanks h1{margin:0}.kiosk__header p{margin:.25rem 0 0;font-size:1.125rem}.kiosk__thanks{text-align:center;flex:1;align-content:center}.kiosk__consent{margin:1.25rem 0}.kiosk__footer{opacity:.7;justify-content:flex-end;align-items:center;gap:.5rem;margin-top:auto;display:flex}.kiosk__dot{background:currentColor;border-radius:50%;width:.5rem;height:.5rem}.kiosk-sheet{gap:1rem;display:grid}.kiosk-sheet p{margin:0}.kiosk-sheet__error{color:var(--tenon-color-danger,#b3261e)}.kiosk-sheet__hint{opacity:.8;font-size:.875rem}.archive-list{border:1px solid var(--tenon-color-border);border-radius:var(--tenon-radius-lg);background:var(--tenon-color-surface);flex-direction:column;margin:0;padding:0 16px;list-style:none;display:flex}.archive-row{border-top:1px solid var(--tenon-color-border);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px 16px;padding:12px 0;display:flex}.archive-row:first-child{border-top:0}.archive-main{flex-direction:column;gap:2px;min-width:0;display:flex}.archive-title,.archive-contact,.archive-dates{margin:0}.archive-title{flex-wrap:wrap;align-items:center;gap:4px 8px;display:flex}.archive-name{color:var(--tenon-color-text);overflow-wrap:anywhere;font-weight:700}.archive-contact,.archive-dates{flex-wrap:wrap;gap:2px 12px;display:flex}.archive-dates{flex-direction:column;gap:0}.recap{border:1px solid var(--tenon-color-border);border-radius:var(--tenon-radius-lg);background:var(--tenon-color-surface);flex-direction:column;gap:20px;min-width:0;max-width:900px;padding:20px 16px;display:flex}.recap-head{border-bottom:2px solid var(--tenon-color-text);flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:8px 16px;padding-bottom:12px;display:flex}.recap-company{font-size:var(--tenon-font-size-xl);letter-spacing:.08em;text-transform:uppercase;margin:0;font-weight:700}.recap-head-title{text-align:right}.recap-head-title h2,.recap-head-title p{margin:0}.recap-head-title h2{font-size:var(--tenon-font-size-xl);font-weight:700}.recap-columns{gap:20px;display:grid}.recap-section{flex-direction:column;gap:8px;min-width:0;display:flex}.recap-section h3{color:var(--tenon-color-text-secondary);font-size:var(--tenon-font-size-sm);letter-spacing:.08em;text-transform:uppercase;margin:0;font-weight:700}.recap-section p{margin:0}.recap-facts{flex-direction:column;gap:6px;margin:0;display:flex}.recap-fact{grid-template-columns:minmax(96px,30%) minmax(0,1fr);gap:12px;display:grid}.recap-fact dt{color:var(--tenon-color-text-muted)}.recap-fact dd{overflow-wrap:anywhere;margin:0}.recap-table{border-collapse:collapse;width:100%;font-size:var(--tenon-font-size-sm)}.recap-table caption{color:var(--tenon-color-text-muted);text-align:left;padding-bottom:4px}.recap-table th,.recap-table td{border-bottom:1px solid var(--tenon-color-border);text-align:left;padding:6px 8px}.recap-table thead th{color:var(--tenon-color-text-muted);font-weight:600}.recap-table .recap-amount{text-align:right}.recap-history{flex-direction:column;margin:0;padding:0;list-style:none;display:flex}.recap-history li{border-bottom:1px solid var(--tenon-color-border);overflow-wrap:anywhere;flex-wrap:wrap;gap:2px 16px;padding:6px 0;display:flex}.recap-history-date{font-weight:700}.recap-notes{white-space:pre-line;overflow-wrap:anywhere}.recap-foot{border-top:1px solid var(--tenon-color-border);flex-wrap:wrap;justify-content:space-between;gap:4px 16px;padding-top:12px;display:flex}@media (width>=700px){.recap{padding:28px}.recap-columns{grid-template-columns:1fr 1fr}}@page{size:A4;margin:14mm}@media print{.shell .sidebar,.shell .topbar,.shell .sidebar-backdrop,.shell .no-print{display:none}body{background:#fff}.shell-main{margin:0;padding:0}.recap{background:0 0;border:0;border-radius:0;max-width:none;padding:0;font-size:11pt}.recap-columns{grid-template-columns:1fr 1fr}.recap-section,.recap-history li,.recap-table tr{break-inside:avoid}}@media (width>=640px){.form-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.form-grid .span-2{grid-column:1/-1}.prequote-row{grid-template-columns:minmax(0,2fr) minmax(0,1fr) auto}}@media (width>=1100px){.fiche-grid{grid-template-columns:minmax(0,1fr) minmax(0,1.4fr)}.fiche-contact,.fiche-prequote{grid-column:1/-1}}@media (width>=1100px){.fiche-extra{grid-template-columns:minmax(0,1.4fr) minmax(0,1fr);align-items:start}}@media (width>=640px){.reminders-body{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}}.period-picker{flex-wrap:wrap;align-items:flex-end;gap:8px 16px;display:flex}.period-field{flex-direction:column;gap:4px;display:flex}.period-field label{color:var(--tenon-color-text-muted);font-size:var(--tenon-font-size-sm);font-weight:600}.figures{grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:12px;margin:0;display:grid}.figure{border:1px solid var(--tenon-color-border);border-radius:var(--tenon-radius-lg);background:var(--tenon-color-surface);flex-direction:column;gap:6px;min-width:0;padding:14px 16px;display:flex}.figure dt{color:var(--tenon-color-text-muted);font-size:var(--tenon-font-size-sm)}.figure dd{flex-direction:column;gap:2px;margin:0;display:flex}.figure-value{overflow-wrap:anywhere;font-size:26px;font-weight:600;line-height:1.2}.figure-value.is-empty{color:var(--tenon-color-text-muted);font-family:var(--tenon-font-sans);font-size:var(--tenon-font-size-xl);font-weight:500;line-height:2}.pilotage-grid{gap:16px;display:grid}.panel h2,.breakdown h3{font-size:var(--tenon-font-size-xl);margin:0;font-weight:700}.monthly{flex-direction:column;gap:12px;margin:0;display:flex}.monthly-legend{flex-wrap:wrap;gap:4px 16px;margin:0;padding:0;list-style:none;display:flex}.monthly-legend li{align-items:center;gap:6px;display:flex}.swatch{border-radius:2px;width:12px;height:12px}.tone-now{background:var(--tenon-color-primary)}.tone-prev{background:var(--tenon-color-info)}.tone-old{background:var(--tenon-color-text-subtle)}.monthly-plot{gap:6px;display:flex}.monthly-axis{min-width:28px;color:var(--tenon-color-text-muted);font-size:var(--tenon-font-size-xs);text-align:right}.monthly-columns{border-bottom:1px solid var(--tenon-color-border-strong);flex:1;grid-template-columns:repeat(12,minmax(0,1fr));gap:2px;min-width:0;display:grid}.monthly-column{flex-direction:column;min-width:0;display:flex}.monthly-bars{justify-content:center;align-items:flex-end;gap:1px;height:160px;display:flex}.monthly-bar{border-radius:2px 2px 0 0;width:100%;max-width:14px;display:block}.monthly-label{color:var(--tenon-color-text-muted);text-align:center;white-space:nowrap;margin-top:4px;font-size:10px}.objectives{flex-direction:column;gap:14px;margin:0;padding:0;list-style:none;display:flex}.objective{flex-direction:column;gap:4px;display:flex}.objective-head{flex-wrap:wrap;justify-content:space-between;gap:2px 12px;display:flex}.objective-bar{background:var(--tenon-color-surface-subtle);appearance:none;border:0;border-radius:4px;width:100%;height:8px;display:block;overflow:hidden}.objective-bar::-webkit-progress-bar{background:var(--tenon-color-surface-subtle)}.objective-bar::-webkit-progress-value{background:var(--tenon-color-warning);border-radius:4px}.objective-bar::-moz-progress-bar{background:var(--tenon-color-warning);border-radius:4px}.objective-bar.is-achieved::-webkit-progress-value{background:var(--tenon-color-primary)}.objective-bar.is-achieved::-moz-progress-bar{background:var(--tenon-color-primary)}.pilotage-breakdowns{gap:16px;display:grid}.breakdown{flex-direction:column;gap:8px;min-width:0;display:flex}.pilotage-breakdowns .breakdown{border:1px solid var(--tenon-color-border);border-radius:var(--tenon-radius-lg);background:var(--tenon-color-surface);padding:16px}.breakdown p{margin:0}.table-scroll{overflow-x:auto}.breakdown-table{border-collapse:collapse;width:100%;font-size:var(--tenon-font-size-sm)}.breakdown-table th,.breakdown-table td{border-bottom:1px solid var(--tenon-color-border);text-align:left;padding:6px 8px}.breakdown-table thead th{color:var(--tenon-color-text-muted);font-weight:600}.breakdown-table tbody th{font-weight:500}.breakdown-table .num{text-align:right;white-space:nowrap}@media (width>=1100px){.pilotage-grid{grid-template-columns:minmax(0,2fr) minmax(0,1fr)}}@media (width>=1500px){.pilotage-breakdowns{grid-template-columns:repeat(3,minmax(0,1fr))}}.report{border:1px solid var(--tenon-color-border);border-radius:var(--tenon-radius-lg);background:var(--tenon-color-surface);flex-direction:column;gap:20px;min-width:0;max-width:900px;padding:20px 16px;display:flex}.report-head{border-bottom:2px solid var(--tenon-color-text);flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:8px 16px;padding-bottom:12px;display:flex}.report-head p,.report-head h2{margin:0}.report-company{font-size:var(--tenon-font-size-xl);letter-spacing:.08em;text-transform:uppercase;font-weight:700}.report-head-title{text-align:right}.report-head-title h2{font-size:var(--tenon-font-size-xl);font-weight:700}.report-section{flex-direction:column;gap:8px;min-width:0;display:flex}.report-section h3,.report-pending h3{color:var(--tenon-color-text-secondary);font-size:var(--tenon-font-size-sm);letter-spacing:.08em;text-transform:uppercase;margin:0;font-weight:700}.report .figures{grid-template-columns:repeat(auto-fit,minmax(130px,1fr))}.report .figure{background:0 0;border:0;border-radius:0;padding:0}.report-columns{flex-direction:column;gap:20px;display:flex}.report .figure-value{font-size:20px}.report .breakdown h3{color:var(--tenon-color-text-secondary);font-size:var(--tenon-font-size-sm);letter-spacing:.08em;text-transform:uppercase}.report-pending-list{border-top:1px solid var(--tenon-color-border);gap:12px;padding-top:12px;display:grid}.report-pending p{margin:2px 0 0}.report-summary{margin:0}.report-tallies{flex-wrap:wrap;gap:8px 32px;display:flex}.tally{flex-wrap:wrap;gap:4px 20px;margin:0;display:flex}.tally-item{align-items:baseline;gap:6px;display:flex}.tally-item dt{color:var(--tenon-color-text-muted);font-size:var(--tenon-font-size-sm)}.tally-item dd{margin:0;font-weight:600}.print-only{display:none}@media (width>=700px){.report{padding:28px}.report-pending-list{grid-template-columns:repeat(3,minmax(0,1fr))}}@page{size:A4;margin:14mm}@media print{.shell .sidebar,.shell .topbar,.shell .sidebar-backdrop,.shell .no-print{display:none}body{background:#fff}.shell-main{margin:0;padding:0}.report{background:0 0;border:0;border-radius:0;gap:12px;max-width:none;padding:0;font-size:11pt}.report .breakdown-table th,.report .breakdown-table td{padding:3px 8px}.report-columns{gap:12px}.objective-bar,.swatch,.monthly-bar{-webkit-print-color-adjust:exact;print-color-adjust:exact}.report .figures{grid-template-columns:repeat(5,minmax(0,1fr))}.shell .report-pending-list,.report .print-hidden{display:none}.report .print-only{display:block}.report-section,.breakdown,.breakdown-table tr{break-inside:avoid}}.salons-table tbody tr.is-selected{background:var(--tenon-color-primary-soft)}.salons-table thead th{position:relative}.salons-table tbody th{min-width:160px}.salon-pick{color:var(--tenon-color-text);font:inherit;text-align:left;background:0 0;border:0;padding:0;font-weight:600}.salon-pick:hover{text-decoration:underline}.salon-place{font-size:var(--tenon-font-size-xs);font-weight:400;display:block}.salons-details{gap:16px;display:grid}.salons-details .panel h2{font-size:var(--tenon-font-size-xl);margin:0}.salons-details .panel p{margin:0}.funnel{grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin:0;padding:0;list-style:none;display:grid}.funnel-step{flex-direction:column;gap:4px;min-width:0;display:flex}.funnel-value{font-size:var(--tenon-font-size-xl);font-weight:600}.funnel-track{border-bottom:1px solid var(--tenon-color-border-strong);align-items:flex-end;height:180px;display:flex}.funnel-bar{background:var(--tenon-color-primary);-webkit-print-color-adjust:exact;print-color-adjust:exact;border-radius:2px 2px 0 0;width:100%;min-height:2px;display:block}.funnel-label{color:var(--tenon-color-text-muted);font-size:var(--tenon-font-size-sm)}.followup-list{flex-direction:column;margin:0;padding:0;list-style:none;display:flex}.followup-list li{border-top:1px solid var(--tenon-color-border);justify-content:space-between;gap:12px;padding:10px 0;display:flex}.salon-active{align-items:center;gap:8px;display:flex}@media (width>=1100px){.salons-details{grid-template-columns:repeat(2,minmax(0,1fr))}}.salons-table .salon-dates{white-space:nowrap}.followup-list a{color:var(--tenon-color-primary)}.reminder-badge{z-index:1;color:var(--tenon-color-primary-dark);background:var(--tenon-color-primary-soft);font-family:var(--tenon-font-mono);font-size:var(--tenon-font-size-xs);white-space:nowrap;border-radius:999px;align-self:flex-start;padding:1px 8px;font-weight:700;display:inline-block;position:relative}.reminder-badge.is-overdue{color:var(--tenon-color-danger);background:color-mix(in srgb, var(--tenon-color-danger) 12%, white)}.reminder-badge.is-suspended{color:var(--tenon-color-text-secondary);background:var(--tenon-color-surface-subtle);font-family:inherit;font-weight:600}.journee-section{border:1px solid var(--tenon-color-border);border-radius:var(--tenon-radius-lg);background:var(--tenon-color-surface);flex-direction:column;gap:12px;min-width:0;padding:16px;display:flex}.journee-section h2{font-size:var(--tenon-font-size-xl);margin:0;font-weight:600}.journee-section p{margin:0}.journee-list{flex-direction:column;margin:0;padding:0;list-style:none;display:flex}.journee-row{border-top:1px solid var(--tenon-color-border);flex-direction:column;gap:10px;padding:12px 0;display:flex}.journee-row:first-child{border-top:0}.journee-row-head{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px 16px;display:flex}.journee-main{flex-direction:column;gap:2px;min-width:0;display:flex}.journee-title{flex-wrap:wrap;align-items:center;gap:4px 8px;display:flex}.journee-name{color:var(--tenon-color-text);overflow-wrap:anywhere;font-weight:700}.journee-late{color:var(--tenon-color-danger);font-size:var(--tenon-font-size-xs);font-weight:700}.journee-contact{font-size:var(--tenon-font-size-sm);flex-wrap:wrap;gap:2px 12px;display:flex}.journee-phone{color:var(--tenon-color-primary)}.journee-actions{flex-wrap:wrap;gap:8px;display:flex}.journee-panel{border-radius:var(--tenon-radius-md);background:var(--tenon-color-surface-subtle);flex-wrap:wrap;align-items:flex-end;gap:10px 12px;padding:12px;display:flex}.journee-panel-field{flex-direction:column;gap:4px;min-width:0;display:flex}.journee-panel-grow{flex:220px}.journee-panel-buttons{flex-wrap:wrap;gap:8px;display:flex}.tag.is-due{color:var(--tenon-color-danger)}@media (width<=599px){.journee-actions{width:100%}.journee-actions .button{flex:auto;justify-content:center}.journee-panel-field{flex:100%}.journee-panel-field .field{width:100%}}.journee-cards{gap:8px}.devis{max-width:840px}.quote-list{flex-direction:column;gap:12px;margin:0;padding:0;list-style:none;display:flex}.quote-card{border:1px solid var(--tenon-color-border);border-radius:var(--tenon-radius-lg);background:var(--tenon-color-surface);flex-direction:column;gap:14px;min-width:0;padding:16px;display:flex}.quote-head{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px;display:flex}.screen .quote-title{font-size:var(--tenon-font-size-md);margin:0;font-weight:600}.quote-reason{color:var(--tenon-color-warning);background:var(--tenon-color-warning-soft);font-size:var(--tenon-font-size-sm);padding:3px 10px;font-weight:600}.quote-meta{font-size:var(--tenon-font-size-sm);flex-wrap:wrap;gap:8px 24px;margin:0;display:flex}.quote-meta dt{color:var(--tenon-color-text-muted)}.quote-meta dd{overflow-wrap:anywhere;margin:0}.quote-pdf{min-height:44px;color:var(--tenon-color-primary);align-items:center;font-weight:600;display:inline-flex}.quote-picker{flex-direction:column;gap:6px;display:flex}.quote-picker label[for]{color:var(--tenon-color-text-muted);font-size:var(--tenon-font-size-sm);font-weight:600}.quote-picker .field{width:100%;min-height:44px}.quote-picker .field:focus-visible,.quote-result:focus-within{outline:3px solid var(--tenon-color-primary-soft);outline-offset:2px}.quote-search-status{margin:0}.quote-results{border:1px solid var(--tenon-color-border);border-radius:var(--tenon-radius-md);flex-direction:column;min-width:0;margin:0;padding:0;display:flex}.quote-result{cursor:pointer;align-items:center;gap:12px;min-height:48px;padding:8px 12px;display:flex}.quote-result+.quote-result{border-top:1px solid var(--tenon-color-border)}.quote-result:hover{background:var(--tenon-color-surface-subtle)}.quote-result input{width:20px;height:20px;accent-color:var(--tenon-color-primary);flex:none;margin:0}.quote-result-text{min-width:0;font-size:var(--tenon-font-size-sm);flex-direction:column;display:flex}.quote-result-name{overflow-wrap:anywhere;font-size:var(--tenon-font-size-md);font-weight:600}.quote-chosen{font-size:var(--tenon-font-size-sm);margin:0}.quote-actions{flex-wrap:wrap;justify-content:flex-end;gap:8px;display:flex}.quote-button{min-height:44px;padding-inline:16px}.quote-confirm{border:1px solid var(--tenon-color-warning);border-radius:var(--tenon-radius-md);background:var(--tenon-color-warning-soft);min-width:0;font-size:var(--tenon-font-size-sm);margin:0;padding:12px}.quote-confirm p{margin:0 0 10px}.quote-pagination{font-size:var(--tenon-font-size-sm);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px;margin-top:16px;display:flex}.quote-empty{border:1px dashed var(--tenon-color-border-strong);border-radius:var(--tenon-radius-lg);text-align:center;padding:24px 16px}@media (width<=520px){.quote-actions .quote-button,.quote-pagination .quote-button{flex:100%}}.fiche{flex-direction:column;gap:16px;min-width:0;display:flex}.fiche-bar{flex-wrap:wrap;justify-content:flex-end;align-items:flex-end;gap:12px;display:flex}.fiche-save-state{font-size:var(--tenon-font-size-sm);flex:200px;align-self:center;font-weight:600}.fiche-saved{color:var(--tenon-color-primary)}.fiche-unsaved{color:var(--tenon-color-warning)}.fiche-status{min-width:200px}.fiche-submit{min-height:40px}.fiche-grid{grid-template-columns:minmax(0,1fr);gap:16px;display:grid}.panel{border:1px solid var(--tenon-color-border);border-radius:var(--tenon-radius-lg);background:var(--tenon-color-surface);flex-direction:column;gap:14px;min-width:0;padding:16px;display:flex}.panel h2{font-size:var(--tenon-font-size-xl);margin:0;font-weight:600}.panel p{margin:0}.form-grid{grid-template-columns:minmax(0,1fr);gap:12px;display:grid}.form-row{flex-direction:column;gap:4px;min-width:0;display:flex}.form-label{color:var(--tenon-color-text-muted);font-size:var(--tenon-font-size-sm);font-weight:700}.form-row .field{width:100%;min-height:44px}.form-row textarea.field{resize:vertical;min-height:88px;font-family:inherit}.form-row input[readonly]{color:var(--tenon-color-text-secondary);background:var(--tenon-color-surface-subtle)}.form-row [aria-invalid=true]{border-color:var(--tenon-color-danger)}.form-hint,.form-error{font-size:var(--tenon-font-size-sm);margin:0}.form-hint{color:var(--tenon-color-text-muted)}.form-error{color:var(--tenon-color-danger);font-weight:700}.form-actions{flex-wrap:wrap;gap:8px;display:flex}.form-actions .button{min-height:44px}.inline-error ul{margin:4px 0 0;padding-left:18px}.inline-error p{margin:0}.availability-set{border:0;min-width:0;margin:0;padding:0}.availability{grid-template-columns:minmax(70px,1fr) repeat(2,minmax(0,1.2fr));align-items:center;gap:6px;display:grid}.availability-row{display:contents}.availability-head{color:var(--tenon-color-text-muted);font-size:var(--tenon-font-size-sm);text-align:center}.availability-day{font-size:var(--tenon-font-size-md)}.availability-slot{min-height:44px;color:var(--tenon-color-text-muted);border:1px solid var(--tenon-color-border-strong);border-radius:var(--tenon-radius-md);background:var(--tenon-color-surface)}.availability-slot.is-selected{color:#fff;border-color:var(--tenon-color-primary);background:var(--tenon-color-primary);font-weight:600}.availability-slot:focus-visible{outline:3px solid var(--tenon-color-primary-soft);outline-offset:2px}.prequote-list{flex-direction:column;gap:12px;margin:0;padding:0;list-style:none;display:flex}.prequote-row{grid-template-columns:minmax(0,1fr);align-items:end;gap:8px;display:grid}@media (width>=640px){.form-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.form-grid .span-2{grid-column:1/-1}.prequote-row{grid-template-columns:minmax(0,2fr) minmax(0,1fr) auto}}@media (width>=1100px){.fiche-grid{grid-template-columns:minmax(0,1fr) minmax(0,1.4fr)}.fiche-contact,.fiche-prequote{grid-column:1/-1}}.fiche-title{flex-wrap:wrap;align-items:center;gap:8px 12px;display:flex}.fiche-title .duplicate-badge{align-self:center}.archive-matches{border:1px solid var(--tenon-color-border);border-radius:var(--tenon-radius-md);font-size:var(--tenon-font-size-sm);margin:0 0 12px;padding:8px 12px}.archive-matches h2{font-size:var(--tenon-font-size-sm);margin:0 0 4px}.archive-matches ul{margin:0;padding-left:18px}.fiche-extra{grid-template-columns:minmax(0,1fr);gap:16px;margin-top:16px;display:grid}.panel-head{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px;display:flex}.note-form{flex-direction:column;gap:8px;display:flex}.note-form textarea.field{resize:vertical;min-height:72px;font-family:inherit}.history-list{flex-direction:column;gap:14px;margin:0;padding:0;list-style:none;display:flex}.history-item{border-left:3px solid var(--tenon-color-primary);min-width:0;padding-left:18px}.history-item p{margin:0}.history-meta{color:var(--tenon-color-text-muted);font-family:var(--tenon-font-mono,monospace);font-size:var(--tenon-font-size-sm)}.history-body{overflow-wrap:anywhere;white-space:pre-wrap}.dropzone{color:var(--tenon-color-text-muted);border:1px dashed var(--tenon-color-border-strong);border-radius:var(--tenon-radius-md);font-size:var(--tenon-font-size-sm);text-align:center;padding:18px 12px}.dropzone.is-dragging{color:var(--tenon-color-primary-strong);border-color:var(--tenon-color-primary);background:var(--tenon-color-primary-soft)}.upload-list,.attachment-list{gap:8px;margin:0;padding:0;list-style:none;display:grid}.attachment-list{grid-template-columns:repeat(auto-fill,minmax(min(100%,200px),1fr))}.upload-item{font-size:var(--tenon-font-size-sm);flex-wrap:wrap;align-items:center;gap:8px;display:flex}.upload-name{overflow-wrap:anywhere;font-weight:600}.attachment-card{border:1px solid var(--tenon-color-border);border-radius:var(--tenon-radius-md);flex-direction:column;gap:2px;min-width:0;padding:10px 12px;display:flex}.attachment-preview{object-fit:cover;border-radius:var(--tenon-radius-md);width:100%;max-height:140px}.attachment-kind{color:var(--tenon-color-primary-strong);font-family:var(--tenon-font-mono,monospace);font-size:var(--tenon-font-size-sm);text-transform:uppercase;font-weight:700}.attachment-name{overflow-wrap:anywhere}.attachment-meta{font-size:var(--tenon-font-size-sm)}@media (width>=1100px){.fiche-extra{grid-template-columns:minmax(0,1.4fr) minmax(0,1fr);align-items:start}}.fiche-actions{flex-wrap:wrap;gap:8px;margin:4px 0 16px;display:flex}.fiche-actions .button{justify-content:center;min-width:96px;min-height:44px}.fiche-actions+.panel,.message-panel{margin-bottom:16px}.reminders-body{grid-template-columns:minmax(0,1fr);gap:16px;display:grid}.reminders-settings,.reminders-calendar{flex-direction:column;gap:12px;min-width:0;display:flex}.reminders-calendar h3{color:var(--tenon-color-text-muted);font-size:var(--tenon-font-size-sm);margin:0;font-weight:700}.reminder-list{flex-direction:column;margin:0;padding:0;list-style:none;display:flex}.reminder-item{border-bottom:1px solid var(--tenon-color-border);grid-template-columns:2.5rem minmax(0,1fr) minmax(0,auto);align-items:baseline;gap:4px 12px;padding:8px 0;display:grid}.reminder-item:last-child{border-bottom:0}.reminder-rank{font-weight:700}.reminder-due{font-family:var(--tenon-font-mono,monospace)}.reminder-state{color:var(--tenon-color-text-muted);font-size:var(--tenon-font-size-sm);text-align:right}.reminder-item[data-state=due] .reminder-state{color:var(--tenon-color-primary-strong);font-weight:700}.reminder-item[data-state=cancelled]{color:var(--tenon-color-text-muted)}.message-form,.message-result{flex-direction:column;gap:12px;min-width:0;display:flex}.message-form textarea.field{resize:vertical;min-height:120px;font-family:inherit}.message-warning{color:var(--tenon-color-warning);border-radius:var(--tenon-radius-md);background:var(--tenon-color-warning-soft);font-size:var(--tenon-font-size-sm);overflow-wrap:anywhere;padding:10px 12px;font-weight:700}.channel-set{border:0;flex-wrap:wrap;align-items:center;gap:4px 16px;min-width:0;margin:0;padding:0;display:flex}.channel-option{align-items:center;gap:8px;min-height:44px;display:inline-flex}.message-template-confirm{border:1px solid var(--tenon-color-warning);border-radius:var(--tenon-radius-md);background:var(--tenon-color-warning-soft);min-width:0;font-size:var(--tenon-font-size-sm);flex-direction:column;gap:12px;margin:0;padding:12px;display:flex}.message-template-confirm p{margin:0}@media (width>=640px){.reminders-body{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}}.pre-study-layout,.pre-study-main{align-items:start;gap:20px;min-width:0;display:grid}.pre-study-list{margin:0;padding:0;list-style:none}.pre-study-list li{border-top:1px solid var(--tenon-color-border);flex-wrap:wrap;justify-content:space-between;gap:12px;padding:14px 0;display:flex}.pre-study-list a,.pre-study-details a{color:var(--tenon-color-primary)}.pre-study-list .tag[data-state=submitted]{background:var(--tenon-color-primary-soft)}.pre-study-details{margin:0}.pre-study-details>div{border-top:1px solid var(--tenon-color-border);grid-template-columns:minmax(80px,25%) 1fr;gap:12px;padding:14px 0;display:grid}.pre-study-details dt{color:var(--tenon-color-text-muted)}.pre-study-details dd{overflow-wrap:anywhere;margin:0}.pre-study-maps{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.pre-study-maps figure{border-radius:var(--tenon-radius-md);background:var(--tenon-color-surface-subtle);margin:0;padding:8px}.pre-study-maps svg{width:100%;height:230px}.pre-study-maps figcaption{color:var(--tenon-color-text-muted);font-size:var(--tenon-font-size-sm)}.map-parcel{fill:var(--tenon-color-surface);stroke:var(--tenon-color-text);stroke-width:2px;vector-effect:non-scaling-stroke}.map-zone{fill:var(--tenon-color-primary-soft);stroke:var(--tenon-color-primary);stroke-width:2px;vector-effect:non-scaling-stroke}.map-building{fill:var(--tenon-color-border-strong);stroke:var(--tenon-color-text-muted);stroke-width:1px;vector-effect:non-scaling-stroke}.map-road{fill:none;stroke:var(--tenon-color-text-muted);stroke-width:4px;vector-effect:non-scaling-stroke}.pre-study-fields{border:0;min-width:0;margin:0;padding:0}.pre-study-fields label,.pre-study-review label{line-height:1.6}.pre-study-fields input,.pre-study-review input{accent-color:var(--tenon-color-primary)}.pre-study-review{gap:16px;display:grid}.pre-study-review fieldset{border:1px solid var(--tenon-color-border);border-radius:var(--tenon-radius-md);min-width:0}@media (width>=1200px){.pre-study-layout{grid-template-columns:minmax(0,1.7fr) minmax(280px,1fr)}}@media (width<=500px){.pre-study-maps{grid-template-columns:1fr}}.shell-main.is-sketch{flex-direction:column;height:100dvh;padding:0;display:flex}.sketch-editor{flex-direction:column;flex:1;min-height:0;display:flex;position:relative}.sketch-bar{border-bottom:1px solid var(--tenon-color-border);flex-wrap:wrap;align-items:center;gap:8px;padding:8px 12px;display:flex}.sketch-title{flex:200px;min-width:0}.sketch-title input{width:100%;min-height:44px}.sketch-bar .button,.sketch-confirm .button{min-height:44px}.sketch-canvas{flex:1;min-height:0}.sketch-canvas .excalidraw .default-sidebar-trigger{display:none}.sketch-error{margin:8px 12px 0}.sketch-confirm{border-bottom:1px solid var(--tenon-color-border);background:var(--tenon-color-surface);flex-wrap:wrap;align-items:center;gap:8px;padding:12px;display:flex}.sketch-confirm p{flex:100%;margin:0}.sketch-message{flex-direction:column;align-items:flex-start;gap:12px;padding:20px 16px;display:flex}.sketch-photo-button{cursor:pointer;align-items:center;min-height:44px;display:inline-flex}.sketch-actions{flex-wrap:wrap;gap:8px;display:flex}.sketch-actions .button{align-items:center;min-height:44px;text-decoration:none;display:inline-flex}.sketch-list{grid-template-columns:repeat(auto-fill,minmax(min(100%,200px),1fr));gap:8px;margin:12px 0 0;padding:0;list-style:none;display:grid}.sketch-card{min-width:0;color:inherit;border:1px solid var(--tenon-color-border);border-radius:var(--tenon-radius-md);flex-direction:column;gap:4px;text-decoration:none;display:flex;overflow:hidden}.sketch-thumb{object-fit:contain;background:#fff;justify-content:center;align-items:center;width:100%;height:140px;display:flex}.sketch-thumb-fallback{text-align:center;background:var(--tenon-color-surface);flex-direction:column;gap:4px;padding:8px}.sketch-card-title{overflow-wrap:anywhere;padding:0 12px;font-weight:600}.sketch-card-date{font-size:var(--tenon-font-size-sm);padding:0 12px 10px}.visit-screen{flex-direction:column;gap:16px;min-width:0;display:flex}.visit-header{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.visit-title h1{font-size:var(--tenon-font-size-title);margin:0;font-weight:600}.visit-title p{margin:0}.visit-actions{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.visit-actions .button{align-items:center;min-height:44px;display:inline-flex}.visit-save-state{color:var(--tenon-color-text-secondary);font-size:var(--tenon-font-size-sm)}.visit-grid{grid-template-columns:minmax(0,1fr);align-items:start;gap:16px;display:grid}.visit-column{flex-direction:column;gap:16px;min-width:0;display:flex}@media (width>=1100px){.visit-grid{grid-template-columns:minmax(0,1fr) minmax(0,1.2fr)}}.visit-fields{flex-direction:column;gap:12px;display:flex}.visit-photo-list{grid-template-columns:repeat(auto-fill,minmax(min(100%,180px),1fr));gap:12px;margin:0;padding:0;list-style:none;display:grid}.visit-photo{flex-direction:column;gap:8px;min-width:0;display:flex}.visit-photo-image{aspect-ratio:4/3;border-radius:var(--tenon-radius-md);object-fit:cover;background:var(--tenon-color-surface-subtle);width:100%}.visit-photo-fallback{justify-content:center;align-items:center;display:flex}.visit-photo .button{justify-content:center;align-items:center;min-height:44px;display:inline-flex}.visit-photo-note{font-size:var(--tenon-font-size-sm)}.visit-footer{justify-content:flex-start;display:flex}.visit-confirm{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.visit-confirm p{flex:100%;margin:0}.visit-message{flex-direction:column;align-items:flex-start;gap:12px;display:flex}.visit-message h1{font-size:var(--tenon-font-size-title);margin:0;font-weight:600}.visit-message p{margin:0}.visit-list{flex-direction:column;gap:8px;margin:0;padding:0;list-style:none;display:flex}.visit-list-link{color:inherit;border:1px solid var(--tenon-color-border);border-radius:var(--tenon-radius-md);flex-wrap:wrap;justify-content:space-between;gap:4px 12px;padding:10px 12px;text-decoration:none;display:flex}.visit-list-title{font-weight:600}.bell{width:44px;height:44px;color:var(--tenon-color-text);border:1px solid var(--tenon-color-border-strong);border-radius:var(--tenon-radius-md);background:var(--tenon-color-surface);flex:none;justify-content:center;align-items:center;display:inline-flex;position:relative}.bell:hover{background:var(--tenon-color-surface-subtle)}.bell[aria-current=page]{color:var(--tenon-color-primary-strong);background:var(--tenon-color-primary-soft)}.bell-count{color:#fff;background:var(--tenon-color-danger);min-width:20px;font-size:var(--tenon-font-size-xs);text-align:center;border-radius:999px;padding:1px 5px;font-weight:700;line-height:1.3;position:absolute;top:-6px;right:-6px}.notifications{max-width:720px}.notification-panel{border:1px solid var(--tenon-color-border);border-radius:var(--tenon-radius-lg);background:var(--tenon-color-surface);flex-direction:column;display:flex;overflow:hidden}.notification-list{margin:0;padding:0;list-style:none}.notification{border-bottom:1px solid var(--tenon-color-border)}.notification.is-unread{background:var(--tenon-color-primary-soft)}.notification-open{width:100%;min-height:44px;color:inherit;font:inherit;text-align:left;cursor:pointer;background:0 0;border:0;align-items:flex-start;gap:12px;padding:12px 16px;text-decoration:none;display:flex}.notification-dot{background:var(--tenon-color-border-strong);border-radius:50%;flex:none;width:10px;height:10px;margin-top:6px}.is-unread .notification-dot{background:var(--tenon-color-primary)}.notification[data-type=syncFailed].is-unread .notification-dot{background:var(--tenon-color-danger)}.notification-body{overflow-wrap:anywhere;flex-direction:column;gap:2px;min-width:0;display:flex}.notification-type{font-weight:700}.notification-date{color:var(--tenon-color-text-muted);font-size:var(--tenon-font-size-sm);font-weight:600}.notification-footer{color:var(--tenon-color-text-muted);font-size:var(--tenon-font-size-sm);margin:0;padding:12px 16px}.notification-empty{padding:16px}.topbar-bell{margin-left:auto}.sidebar-bell{display:none}@media (width>=900px){.sidebar-bell{padding:0 12px 12px;display:flex}}.settings{max-width:840px}.settings-section{border:1px solid var(--tenon-color-border);border-radius:var(--tenon-radius-lg);background:var(--tenon-color-surface);flex-direction:column;gap:12px;min-width:0;padding:16px;display:flex}.settings-section h2{font-size:var(--tenon-font-size-md);margin:0;font-weight:600}.settings-section p{margin:0}.settings-state{overflow-wrap:anywhere}.settings-actions{flex-wrap:wrap;justify-content:flex-end;gap:8px;display:flex}.settings-button{justify-content:center;align-items:center;min-height:44px;padding-inline:16px;display:inline-flex}.settings-confirm{border:1px solid var(--tenon-color-warning);border-radius:var(--tenon-radius-md);background:var(--tenon-color-warning-soft);min-width:0;font-size:var(--tenon-font-size-sm);margin:0;padding:12px}.settings-confirm p{margin:0 0 10px}.settings-section-head{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px;display:flex}.settings-readonly{color:var(--tenon-color-text-secondary);border-radius:var(--tenon-radius-md);background:var(--tenon-color-surface-subtle);font-size:var(--tenon-font-size-sm);padding:10px 12px}.accounts-table th,.accounts-table td{vertical-align:middle}.accounts-table thead th{font-size:var(--tenon-font-size-sm)}.accounts-table tbody th{white-space:nowrap}.account-email{overflow-wrap:break-word;min-width:13em}.account-flag{text-align:center}.account-checkbox,.account-right-label input{width:22px;height:22px;accent-color:var(--tenon-color-primary)}.account-checkbox:disabled{cursor:not-allowed}.account-status{min-width:9em}.account-saved{color:var(--tenon-color-primary-dark);font-weight:600}.accounts-table tr.is-inactive th,.accounts-table tr.is-inactive .account-email{color:var(--tenon-color-text-muted)}.account-form{border:1px solid var(--tenon-color-border-strong);border-radius:var(--tenon-radius-md);background:var(--tenon-color-surface-subtle);flex-direction:column;gap:12px;min-width:0;padding:12px;display:flex}.account-form h3{font-size:var(--tenon-font-size-md);margin:0;font-weight:600}.account-rights{border:0;flex-direction:column;gap:8px;min-width:0;margin:0;padding:0;display:flex}.account-rights legend{color:var(--tenon-color-text-muted);font-size:var(--tenon-font-size-sm);padding:0;font-weight:700}.account-right{flex-direction:column;gap:2px;display:flex}.account-right-label{align-items:center;gap:10px;min-height:44px;display:flex}.account-right .form-hint{margin-top:-8px;padding-left:32px}@media (width<=760px){.accounts-table thead{clip-path:inset(50%);width:1px;height:1px;position:absolute;overflow:hidden}.accounts-table,.accounts-table tbody,.accounts-table tr,.accounts-table th,.accounts-table td{display:block}.accounts-table tr{border-bottom:1px solid var(--tenon-color-border-strong);padding:8px 0}.accounts-table th,.accounts-table td{border-bottom:0;padding:4px 0}.accounts-table tbody th{white-space:normal;font-weight:700}.account-email{overflow-wrap:anywhere;min-width:0}.accounts-table td.account-flag,.accounts-table td.account-status{text-align:left;justify-content:space-between;align-items:center;gap:12px;min-height:40px;display:flex}.accounts-table td[data-label]:before{content:attr(data-label);color:var(--tenon-color-text-secondary)}.accounts-table td.account-email:before,.accounts-table td.account-status:empty{display:none}.accounts-table td.account-status{justify-content:flex-start}.accounts-table td.account-status:before{display:none}}@media (width<=640px){.settings-actions .settings-button{flex:100%}}.company-logo-preview{object-fit:contain;align-self:flex-start;max-width:240px;max-height:120px}.settings-row-actions{flex-wrap:wrap;justify-content:flex-end;gap:8px;display:flex}.settings-dialog-form{flex-direction:column;gap:12px;min-width:0;display:flex}.settings-dialog-form p{margin:0}.settings-step{border:1px solid var(--tenon-color-border);border-radius:var(--tenon-radius-md);grid-template-columns:repeat(auto-fit,minmax(160px,1fr));align-items:start;gap:12px;min-width:0;margin:0;padding:12px;display:grid}.settings-step legend{padding:0 4px;font-weight:700}.settings-step>button{justify-self:start}.settings-variables{border:0;flex-wrap:wrap;gap:6px;min-width:0;margin:0;padding:0;display:flex}.settings-variables legend{width:100%;color:var(--tenon-color-text-muted);font-size:var(--tenon-font-size-sm);padding:0;font-weight:700}.referential-actions{justify-content:flex-end;gap:4px;display:flex}.referential-form{flex-direction:column;gap:12px;display:flex}.department-list{flex-direction:column;gap:8px;margin:0;padding:0;list-style:none;display:flex}.department-row{grid-template-columns:minmax(6em,1fr) minmax(0,3fr) auto;align-items:end;gap:8px;display:grid}.objective-row{border:1px solid var(--tenon-color-border);border-radius:var(--tenon-radius-md);grid-template-columns:repeat(auto-fit,minmax(11em,1fr));align-items:end;gap:8px;min-width:0;margin:0;padding:12px;display:grid}.objective-row legend{padding:0 4px;font-weight:600}.tour-filters{align-items:flex-end}.tour-filter{min-width:0;font-size:var(--tenon-font-size-sm);flex-direction:column;gap:4px;display:flex}.tour-minutes{width:120px}.tour-start-missing a{color:inherit}.tour-candidates{margin:0;padding:0;list-style:none}.tour-candidate{border-top:1px solid var(--tenon-color-border);grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:4px 12px;padding:10px 0;display:grid}.tour-candidate:first-child{border-top:0}.tour-candidate-label{cursor:pointer;align-items:flex-start;gap:10px;min-width:0;display:flex}.tour-candidate-label input,.tour-check input{width:18px;height:18px;accent-color:var(--tenon-color-primary);flex:none;margin:2px 0 0}.tour-candidate.is-unlocated .tour-candidate-label{cursor:not-allowed;opacity:.7}.tour-candidate-main{flex-direction:column;gap:2px;min-width:0;display:flex}.tour-candidate-name{overflow-wrap:anywhere;font-weight:600}.tour-candidate-meta{font-size:var(--tenon-font-size-sm);flex-wrap:wrap;gap:4px 12px;display:flex}.tour-candidate-tags{justify-self:end}.tour-candidate .tag.is-available{color:var(--tenon-color-primary-dark);background:var(--tenon-color-primary-soft)}.tour-candidate-explain{font-size:var(--tenon-font-size-sm);grid-column:1/-1;margin:0;padding-left:28px}.tour-counter{font-size:var(--tenon-font-size-sm)}.tour-options{flex-wrap:wrap;align-items:flex-end;gap:12px 16px;display:flex}.tour-check{min-height:40px;font-size:var(--tenon-font-size-sm);align-items:center;gap:8px;display:inline-flex}.tour-check input{margin:0}.tour-table th,.tour-table td{white-space:nowrap}.tour-table tbody th{white-space:normal}.tour-total{flex-wrap:wrap;justify-content:space-between;gap:4px 16px;display:flex}.tour-confirm ul{margin:8px 0;padding-left:20px}.tour-failures{margin:4px 0 0;padding-left:20px}.tour-result p{margin:0}.tour-sync{font-size:var(--tenon-font-size-sm)}@media (width<=599px){.tour-candidate{grid-template-columns:minmax(0,1fr)}.tour-candidate-tags{justify-self:start;padding-left:28px}}.tour-workspace{grid-template-columns:minmax(0,1fr);gap:16px;min-width:0;display:grid}.tour-workspace>*{min-width:0}.tour-map-panel{flex-direction:column;gap:8px;display:flex}.tour-map-frame{flex-direction:column;gap:6px;display:flex}.tour-map{border:1px solid var(--tenon-color-border);border-radius:var(--tenon-radius-lg);background:var(--tenon-color-surface-subtle);height:clamp(260px,42vh,380px);overflow:hidden}.tour-map-hint,.tour-map-unavailable{font-size:var(--tenon-font-size-sm);margin:0}.tour-map-unavailable{border:1px dashed var(--tenon-color-border-strong);border-radius:var(--tenon-radius-lg);padding:16px}.tour-map-loading{border:1px solid var(--tenon-color-border);border-radius:var(--tenon-radius-lg);background:var(--tenon-color-surface-subtle);justify-content:center;align-items:center;height:clamp(260px,42vh,380px);display:flex}.tour-legend{font-size:var(--tenon-font-size-sm);flex-wrap:wrap;gap:4px 16px;margin:0;padding:0;list-style:none;display:flex}.tour-legend li{align-items:center;gap:6px;display:inline-flex}.tour-pin{width:32px;height:32px;color:var(--tenon-color-text);border:2px solid var(--tenon-color-text-subtle);background:var(--tenon-color-surface);font-size:var(--tenon-font-size-sm);cursor:pointer;border-radius:50%;justify-content:center;align-items:center;padding:0;font-weight:700;display:flex;box-shadow:0 1px 3px #00000059}.tour-pin.is-available{border-color:var(--tenon-color-primary)}.tour-pin.is-selected{color:#fff;border-color:var(--tenon-color-primary-dark);background:var(--tenon-color-primary)}.tour-pin.is-start{color:#fff;background:var(--tenon-color-primary-dark);cursor:default;border-color:#fff}.tour-pin[aria-disabled=true]{opacity:.55;cursor:not-allowed}.tour-legend .tour-pin{pointer-events:none;width:16px;height:16px;font-size:10px}.tour-pin:focus-visible{outline:3px solid var(--tenon-color-primary-soft);outline-offset:2px}@media (width>=1024px){.tour-workspace{grid-template-columns:minmax(0,3fr) minmax(320px,2fr);align-items:start}.tour-map-panel{position:sticky;top:16px}.tour-map,.tour-map-loading{height:clamp(420px,62vh,640px)}.tour-workspace .tour-candidate{grid-template-columns:minmax(0,1fr)}.tour-workspace .tour-candidate-tags{justify-self:start;padding-left:28px}}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/ibm-plex-sans-cyrillic-ext-400-normal-g30qAdWV.woff2)format("woff2"),url(/assets/ibm-plex-sans-cyrillic-ext-400-normal-Dsrv2Tcn.woff)format("woff");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/ibm-plex-sans-cyrillic-400-normal-DZqxrq2p.woff2)format("woff2"),url(/assets/ibm-plex-sans-cyrillic-400-normal-BTotfTJu.woff)format("woff");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/ibm-plex-sans-greek-400-normal-_efipK4i.woff2)format("woff2"),url(/assets/ibm-plex-sans-greek-400-normal-D9ESIMu3.woff)format("woff");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/ibm-plex-sans-vietnamese-400-normal-DG4YqDda.woff2)format("woff2"),url(/assets/ibm-plex-sans-vietnamese-400-normal-fK1oJ5dG.woff)format("woff");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/ibm-plex-sans-latin-ext-400-normal-C5H60-Va.woff2)format("woff2"),url(/assets/ibm-plex-sans-latin-ext-400-normal-RBey6euL.woff)format("woff");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/ibm-plex-sans-latin-400-normal-CDDApCn2.woff2)format("woff2"),url(/assets/ibm-plex-sans-latin-400-normal-CYLoc0-x.woff)format("woff");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/ibm-plex-sans-cyrillic-ext-500-normal-Cs5J6C77.woff2)format("woff2"),url(/assets/ibm-plex-sans-cyrillic-ext-500-normal-DB5PtV2g.woff)format("woff");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/ibm-plex-sans-cyrillic-500-normal-CocWQlwt.woff2)format("woff2"),url(/assets/ibm-plex-sans-cyrillic-500-normal-ByOcLdNv.woff)format("woff");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/ibm-plex-sans-greek-500-normal-JMMifIXV.woff2)format("woff2"),url(/assets/ibm-plex-sans-greek-500-normal-CuWXN6rf.woff)format("woff");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/ibm-plex-sans-vietnamese-500-normal-e4dixQRQ.woff2)format("woff2"),url(/assets/ibm-plex-sans-vietnamese-500-normal-BEb3_waV.woff)format("woff");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/ibm-plex-sans-latin-ext-500-normal-DakdToA3.woff2)format("woff2"),url(/assets/ibm-plex-sans-latin-ext-500-normal-D0aIdm-b.woff)format("woff");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/ibm-plex-sans-latin-500-normal-6ng42L7E.woff2)format("woff2"),url(/assets/ibm-plex-sans-latin-500-normal-BgVn5rGT.woff)format("woff");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/ibm-plex-sans-cyrillic-ext-600-normal-DUMzJB7m.woff2)format("woff2"),url(/assets/ibm-plex-sans-cyrillic-ext-600-normal-Bz0x94Yp.woff)format("woff");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/ibm-plex-sans-cyrillic-600-normal-71GNu3SW.woff2)format("woff2"),url(/assets/ibm-plex-sans-cyrillic-600-normal-BGq0mW3O.woff)format("woff");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/ibm-plex-sans-greek-600-normal-DzTrcv_p.woff2)format("woff2"),url(/assets/ibm-plex-sans-greek-600-normal-D-CqTdkO.woff)format("woff");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/ibm-plex-sans-vietnamese-600-normal-DpPYBSTl.woff2)format("woff2"),url(/assets/ibm-plex-sans-vietnamese-600-normal-DgdngZtN.woff)format("woff");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/ibm-plex-sans-latin-ext-600-normal-DOrvGEcy.woff2)format("woff2"),url(/assets/ibm-plex-sans-latin-ext-600-normal-DIrixKbi.woff)format("woff");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/ibm-plex-sans-latin-600-normal-CuJfVYMP.woff2)format("woff2"),url(/assets/ibm-plex-sans-latin-600-normal-Cu4Hd6ag.woff)format("woff");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/ibm-plex-sans-cyrillic-ext-700-normal-BmRLXWpJ.woff2)format("woff2"),url(/assets/ibm-plex-sans-cyrillic-ext-700-normal-DCQwxkRk.woff)format("woff");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/ibm-plex-sans-cyrillic-700-normal-D_uavGvn.woff2)format("woff2"),url(/assets/ibm-plex-sans-cyrillic-700-normal-RFb1v-CK.woff)format("woff");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/ibm-plex-sans-greek-700-normal-wyJ6jzdA.woff2)format("woff2"),url(/assets/ibm-plex-sans-greek-700-normal-CkZN0sRy.woff)format("woff");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/ibm-plex-sans-vietnamese-700-normal-CkEo6LDy.woff2)format("woff2"),url(/assets/ibm-plex-sans-vietnamese-700-normal-BV5B8Are.woff)format("woff");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/ibm-plex-sans-latin-ext-700-normal-aMgXseD4.woff2)format("woff2"),url(/assets/ibm-plex-sans-latin-ext-700-normal-DZH6Xh-4.woff)format("woff");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/ibm-plex-sans-latin-700-normal-Bxkt5Cjx.woff2)format("woff2"),url(/assets/ibm-plex-sans-latin-700-normal-Bth3BMcD.woff)format("woff");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@keyframes tn-spin{to{transform:rotate(360deg)}}@keyframes tn-pulse{0%,to{opacity:1}50%{opacity:.45}}.tn-sr-only{clip-path:inset(50%);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}@media (prefers-reduced-motion:reduce){.tn-spinner__ring{animation-duration:1.6s}}@property --tn-fade-start{syntax:"<length>";inherits:false;initial-value:0}@property --tn-fade-end{syntax:"<length>";inherits:false;initial-value:0}@keyframes tn-scroll-fade{0%{--tn-fade-start:0px;--tn-fade-end:32px}6%,94%{--tn-fade-start:32px;--tn-fade-end:32px}to{--tn-fade-start:32px;--tn-fade-end:0px}}.tn-scroll-x{-webkit-mask-image:linear-gradient(to right, transparent 0, #000 var(--tn-fade-start), #000 calc(100% - var(--tn-fade-end)), transparent 100%);mask-image:linear-gradient(to right, transparent 0, #000 var(--tn-fade-start), #000 calc(100% - var(--tn-fade-end)), transparent 100%);scroll-padding-inline:32px;overflow-x:auto}@supports (animation-timeline:scroll()){.tn-scroll-x{animation:linear both tn-scroll-fade;animation-timeline:scroll(self inline)}}@media (pointer:coarse){.tn-scroll-x{scrollbar-width:none}.tn-scroll-x::-webkit-scrollbar{display:none}}.tn-field{gap:var(--tenon-space-1);min-width:0;color:var(--tenon-color-text);font-size:var(--tenon-font-size-md);flex-direction:column;display:flex}.tn-field__label{color:var(--tenon-color-text-secondary);font-size:var(--tenon-font-size-sm);font-weight:600}.tn-field[data-required]>.tn-field__label:after{content:" *";color:var(--tenon-color-danger)}.tn-field__help{color:var(--tenon-color-text-muted);font-size:var(--tenon-font-size-xs)}.tn-field__error{color:var(--tenon-color-danger);font-size:var(--tenon-font-size-xs);font-weight:500}.tn-control{width:100%;min-height:40px;padding:0 var(--tenon-space-3);border:1px solid var(--tenon-color-border-strong);border-radius:var(--tenon-radius-lg);color:var(--tenon-color-text);background:var(--tenon-color-surface);font:inherit;transition:border-color var(--tenon-duration-fast) var(--tenon-ease-out), box-shadow var(--tenon-duration-fast) var(--tenon-ease-out);outline:none}.tn-control::placeholder{color:var(--tenon-color-text-muted)}.tn-control[data-hovered]{border-color:var(--tenon-color-text-muted)}.tn-control[data-focused],.tn-control[data-focus-within],.tn-control[data-focus-visible]{border-color:var(--tenon-color-focus-ring);box-shadow:0 0 0 3px color-mix(in srgb, var(--tenon-color-focus-ring) 25%, transparent)}.tn-control[data-invalid]{border-color:var(--tenon-color-danger)}.tn-control[data-invalid][data-focused],.tn-control[data-invalid][data-focus-within]{box-shadow:0 0 0 3px color-mix(in srgb, var(--tenon-color-danger) 25%, transparent)}.tn-control[data-disabled]{color:var(--tenon-color-text-muted);background:var(--tenon-color-surface-subtle);cursor:not-allowed}textarea.tn-control{min-height:96px;padding:var(--tenon-space-2) var(--tenon-space-3);resize:vertical;line-height:1.5}@media (pointer:coarse){.tn-control{min-height:var(--tenon-touch-target)}}.tn-spinner{color:var(--tenon-color-primary);flex:none;display:inline-flex}.tn-spinner__ring{border:2px solid color-mix(in srgb, currentColor 25%, transparent);border-radius:var(--tenon-radius-full);border-top-color:currentColor;width:1.25em;height:1.25em;animation:.8s linear infinite tn-spin}.tn-spinner--sm{font-size:12px}.tn-spinner--md{font-size:16px}.tn-spinner--lg{font-size:28px}.tn-button{justify-content:center;align-items:center;gap:var(--tenon-space-2);min-height:40px;padding:0 var(--tenon-space-4);border-radius:var(--tenon-radius-lg);font-family:inherit;font-size:var(--tenon-font-size-md);cursor:pointer;white-space:nowrap;-webkit-user-select:none;user-select:none;transition:background-color var(--tenon-duration-fast) var(--tenon-ease-out), border-color var(--tenon-duration-fast) var(--tenon-ease-out), box-shadow var(--tenon-duration-fast) var(--tenon-ease-out), transform var(--tenon-duration-fast) var(--tenon-ease-out);border:1px solid #0000;font-weight:600;line-height:1.2;display:inline-flex;position:relative}.tn-button svg{flex:none}.tn-button--sm{min-height:32px;padding:0 var(--tenon-space-3);font-size:var(--tenon-font-size-sm)}.tn-button--lg{min-height:48px;padding:0 var(--tenon-space-6);font-size:var(--tenon-font-size-xl)}.tn-button--full{width:100%}.tn-button--primary{color:#fff;background:var(--tenon-color-primary);box-shadow:var(--tenon-shadow-sm)}.tn-button--primary[data-hovered]{background:var(--tenon-color-primary-strong)}.tn-button--secondary{color:var(--tenon-color-text);border-color:var(--tenon-color-border-strong);background:var(--tenon-color-surface);box-shadow:var(--tenon-shadow-sm)}.tn-button--secondary[data-hovered]{background:var(--tenon-color-surface-subtle)}.tn-button--ghost{color:var(--tenon-color-primary-dark);background:0 0}.tn-button--ghost[data-hovered]{background:var(--tenon-color-primary-soft)}.tn-button--danger{color:#fff;background:var(--tenon-color-danger);box-shadow:var(--tenon-shadow-sm)}.tn-button--danger[data-hovered]{background:color-mix(in srgb, var(--tenon-color-danger) 85%, black)}.tn-button[data-pressed]{box-shadow:none;transform:scale(.97)}.tn-button[data-focus-visible]{outline:2px solid var(--tenon-color-focus-ring);outline-offset:2px}.tn-button[data-disabled]{color:var(--tenon-color-text-muted);background:var(--tenon-color-surface-subtle);box-shadow:none;cursor:not-allowed;border-color:#0000}.tn-button[data-pending]{cursor:progress}.tn-button--primary[data-pending],.tn-button--danger[data-pending]{color:#fff}.tn-button--primary[data-pending]{background:var(--tenon-color-primary)}.tn-button--danger[data-pending]{background:var(--tenon-color-danger)}.tn-button__spinner{color:inherit}@media (pointer:coarse){.tn-button{min-height:var(--tenon-touch-target)}.tn-button--lg{min-height:52px}}@media (prefers-reduced-motion:reduce){.tn-button[data-pressed]{transform:none}}.tn-icon-button{border-radius:var(--tenon-radius-lg);color:var(--tenon-color-text-secondary);cursor:pointer;transition:background-color var(--tenon-duration-fast) var(--tenon-ease-out), transform var(--tenon-duration-fast) var(--tenon-ease-out);background:0 0;border:1px solid #0000;flex:none;justify-content:center;align-items:center;padding:0;display:inline-flex}.tn-icon-button--sm{width:32px;height:32px}.tn-icon-button--md{width:40px;height:40px}.tn-icon-button--lg{width:48px;height:48px}.tn-icon-button--secondary{border-color:var(--tenon-color-border-strong);background:var(--tenon-color-surface);box-shadow:var(--tenon-shadow-sm)}.tn-icon-button--danger{color:var(--tenon-color-danger)}.tn-icon-button[data-hovered]{background:var(--tenon-color-surface-subtle)}.tn-icon-button--danger[data-hovered]{background:var(--tenon-color-danger-soft)}.tn-icon-button[data-pressed]{transform:scale(.94)}.tn-icon-button[data-focus-visible]{outline:2px solid var(--tenon-color-focus-ring);outline-offset:2px}.tn-icon-button[data-disabled]{color:var(--tenon-color-text-subtle);cursor:not-allowed}@media (pointer:coarse){.tn-icon-button{min-width:var(--tenon-touch-target);min-height:var(--tenon-touch-target)}}@media (prefers-reduced-motion:reduce){.tn-icon-button[data-pressed]{transform:none}}.tn-popover{z-index:var(--tenon-z-popover);min-width:var(--trigger-width,0);border:1px solid var(--tenon-color-border);border-radius:var(--tenon-radius-lg);max-width:min(360px,100vw - 16px);color:var(--tenon-color-text);background:var(--tenon-color-surface);box-shadow:var(--tenon-shadow-lg);font-size:var(--tenon-font-size-md);overflow:auto}.tn-popover[data-entering]{animation:tn-popover-in var(--tenon-duration-base) var(--tenon-ease-out)}.tn-popover[data-exiting]{animation:tn-popover-in var(--tenon-duration-fast) var(--tenon-ease-in-out) reverse}.tn-popover__dialog{padding:var(--tenon-space-4);outline:none}@keyframes tn-popover-in{0%{opacity:0;transform:translateY(-4px)scale(.98)}}@media (prefers-reduced-motion:reduce){.tn-popover[data-entering],.tn-popover[data-exiting]{animation:none}}.tn-overlay{z-index:var(--tenon-z-overlay);padding:var(--tenon-space-4);background:var(--tenon-color-overlay);justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.tn-overlay[data-entering]{animation:tn-fade var(--tenon-duration-base) var(--tenon-ease-out)}.tn-overlay[data-exiting]{animation:tn-fade var(--tenon-duration-fast) var(--tenon-ease-in-out) reverse}.tn-dialog{border-radius:var(--tenon-radius-xl);width:100%;max-height:100%;color:var(--tenon-color-text);background:var(--tenon-color-surface);box-shadow:var(--tenon-shadow-overlay);outline:none}.tn-dialog--sm{max-width:400px}.tn-dialog--md{max-width:520px}.tn-dialog--lg{max-width:760px}.tn-dialog[data-entering]{animation:tn-dialog-in var(--tenon-duration-slow) var(--tenon-ease-out)}.tn-dialog[data-exiting]{animation:tn-dialog-in var(--tenon-duration-fast) var(--tenon-ease-in-out) reverse}.tn-dialog__surface{max-height:calc(100vh - 2 * var(--tenon-space-4));outline:none;flex-direction:column;display:flex}.tn-dialog__header{justify-content:space-between;align-items:flex-start;gap:var(--tenon-space-3);padding:var(--tenon-space-5) var(--tenon-space-6) var(--tenon-space-2);display:flex}.tn-dialog__title{font-size:var(--tenon-font-size-xl);margin:0;font-weight:700;line-height:1.35}.tn-dialog__body{padding:var(--tenon-space-2) var(--tenon-space-6) var(--tenon-space-5);color:var(--tenon-color-text-secondary);overflow:auto}.tn-dialog__footer{justify-content:flex-end;gap:var(--tenon-space-2);padding:var(--tenon-space-4) var(--tenon-space-6);border-top:1px solid var(--tenon-color-border);flex-wrap:wrap;display:flex}@keyframes tn-fade{0%{opacity:0}}@keyframes tn-dialog-in{0%{opacity:0;transform:translateY(12px)scale(.97)}}@media (prefers-reduced-motion:reduce){.tn-overlay[data-entering],.tn-overlay[data-exiting],.tn-dialog[data-entering],.tn-dialog[data-exiting]{animation:none}}@supports (height:100dvh){.tn-dialog__surface{max-height:calc(100dvh - 2 * var(--tenon-space-4))}}.tn-alert{align-items:flex-start;gap:var(--tenon-space-3);padding:var(--tenon-space-3) var(--tenon-space-4);border:1px solid var(--tn-alert-border);border-radius:var(--tenon-radius-lg);color:var(--tn-alert-fg);background:var(--tn-alert-bg);font-size:var(--tenon-font-size-md);display:flex}.tn-alert--info{--tn-alert-fg:var(--tenon-color-info);--tn-alert-bg:var(--tenon-color-info-soft);--tn-alert-border:color-mix(in srgb, var(--tenon-color-info) 25%, white)}.tn-alert--success{--tn-alert-fg:var(--tenon-color-success);--tn-alert-bg:var(--tenon-color-success-soft);--tn-alert-border:color-mix(in srgb, var(--tenon-color-success) 25%, white)}.tn-alert--warning{--tn-alert-fg:var(--tenon-color-warning);--tn-alert-bg:var(--tenon-color-warning-soft);--tn-alert-border:color-mix(in srgb, var(--tenon-color-warning) 30%, white)}.tn-alert--danger{--tn-alert-fg:var(--tenon-color-danger);--tn-alert-bg:var(--tenon-color-danger-soft);--tn-alert-border:color-mix(in srgb, var(--tenon-color-danger) 30%, white)}.tn-alert__icon{flex:none;margin-top:1px}.tn-alert__content{flex:1;min-width:0}.tn-alert__title{margin:0;font-weight:600}.tn-alert__text{line-height:1.5}.tn-alert__title+.tn-alert__text{margin-top:2px}.tn-alert__action{flex:none}.tn-animated-list{gap:var(--tenon-space-2);flex-direction:column;margin:0;padding:0;list-style:none;display:flex}.tn-avatar{border-radius:var(--tenon-radius-full);color:var(--tenon-color-primary-dark);background:var(--tenon-color-primary-soft);letter-spacing:.02em;-webkit-user-select:none;user-select:none;flex:none;justify-content:center;align-items:center;font-weight:700;display:inline-flex}.tn-avatar--sm{width:28px;height:28px;font-size:11px}.tn-avatar--md{width:36px;height:36px;font-size:var(--tenon-font-size-sm)}.tn-avatar--lg{width:52px;height:52px;font-size:var(--tenon-font-size-xl)}.tn-badge{align-items:center;gap:var(--tenon-space-1);min-height:22px;padding:0 var(--tenon-space-2);border-radius:var(--tenon-radius-full);font-size:var(--tenon-font-size-xs);white-space:nowrap;font-weight:600;line-height:1;display:inline-flex}.tn-badge--neutral{color:var(--tenon-color-text-secondary);background:var(--tenon-color-surface-subtle)}.tn-badge--primary{color:var(--tenon-color-primary-dark);background:var(--tenon-color-primary-soft)}.tn-badge--info{color:var(--tenon-color-info);background:var(--tenon-color-info-soft)}.tn-badge--success{color:var(--tenon-color-success);background:var(--tenon-color-success-soft)}.tn-badge--warning{color:var(--tenon-color-warning);background:var(--tenon-color-warning-soft)}.tn-badge--danger{color:var(--tenon-color-danger);background:var(--tenon-color-danger-soft)}.tn-button-group{align-items:center;gap:var(--tenon-space-2);flex-wrap:wrap;display:flex}.tn-button-group--full>*{flex:1 1 0}.tn-card{border:1px solid var(--tenon-color-border);border-radius:var(--tenon-radius-xl);min-width:0;color:var(--tenon-color-text);background:var(--tenon-color-surface);box-shadow:var(--tenon-shadow-sm)}.tn-card--none{padding:0}.tn-card--sm{padding:var(--tenon-space-3)}.tn-card--md{padding:var(--tenon-space-5)}.tn-card--lg{padding:var(--tenon-space-8)}.tn-card--interactive{cursor:pointer;transition:box-shadow var(--tenon-duration-base) var(--tenon-ease-out), transform var(--tenon-duration-base) var(--tenon-ease-out), border-color var(--tenon-duration-base) var(--tenon-ease-out)}.tn-card--interactive:hover{border-color:var(--tenon-color-border-strong);box-shadow:var(--tenon-shadow-md);transform:translateY(-1px)}@media (prefers-reduced-motion:reduce){.tn-card--interactive:hover{transform:none}}.tn-checkbox-wrap{gap:var(--tenon-space-1);flex-direction:column;display:flex}.tn-checkbox{align-items:flex-start;gap:var(--tenon-space-3);min-height:28px;color:var(--tenon-color-text);font-size:var(--tenon-font-size-md);cursor:pointer;display:flex}.tn-checkbox__box{border:1.5px solid var(--tenon-color-text-muted);border-radius:var(--tenon-radius-md);color:#fff;background:var(--tenon-color-surface);width:20px;height:20px;transition:background-color var(--tenon-duration-fast) var(--tenon-ease-out), border-color var(--tenon-duration-fast) var(--tenon-ease-out);flex:none;justify-content:center;align-items:center;margin-top:1px;display:inline-flex}.tn-checkbox__text{flex-direction:column;display:flex}.tn-checkbox[data-hovered] .tn-checkbox__box{border-color:var(--tenon-color-primary)}.tn-checkbox[data-selected] .tn-checkbox__box,.tn-checkbox[data-indeterminate] .tn-checkbox__box{border-color:var(--tenon-color-primary);background:var(--tenon-color-primary)}.tn-checkbox[data-focus-visible] .tn-checkbox__box{outline:2px solid var(--tenon-color-focus-ring);outline-offset:2px}.tn-checkbox[data-invalid] .tn-checkbox__box{border-color:var(--tenon-color-danger)}.tn-checkbox[data-disabled]{color:var(--tenon-color-text-muted);cursor:not-allowed}.tn-checkbox[data-disabled] .tn-checkbox__box{border-color:var(--tenon-color-border-strong);background:var(--tenon-color-surface-subtle)}@media (pointer:coarse){.tn-checkbox{min-height:var(--tenon-touch-target);align-items:center}.tn-checkbox__box{margin-top:0}}.tn-chips__list{gap:var(--tenon-space-2);flex-wrap:wrap;display:flex}.tn-chips__chip{align-items:center;gap:var(--tenon-space-2);min-height:36px;padding:0 var(--tenon-space-4);border:1px solid var(--tenon-color-border-strong);border-radius:var(--tenon-radius-full);color:var(--tenon-color-text-secondary);background:var(--tenon-color-surface);font-size:var(--tenon-font-size-md);cursor:pointer;-webkit-user-select:none;user-select:none;transition:background-color var(--tenon-duration-fast) var(--tenon-ease-out), border-color var(--tenon-duration-fast) var(--tenon-ease-out), color var(--tenon-duration-fast) var(--tenon-ease-out);outline:none;font-weight:500;display:inline-flex}.tn-chips__chip svg{flex:none}.tn-chips__chip[data-hovered]{border-color:var(--tenon-color-primary)}.tn-chips__chip[data-selected]{border-color:var(--tenon-color-primary);color:#fff;background:var(--tenon-color-primary)}.tn-chips__chip[data-selected][data-hovered]{background:var(--tenon-color-primary-strong)}.tn-chips__chip[data-focus-visible]{outline:2px solid var(--tenon-color-focus-ring);outline-offset:2px}.tn-chips__chip[data-disabled]{border-color:var(--tenon-color-border);color:var(--tenon-color-text-muted);background:var(--tenon-color-surface-subtle);cursor:not-allowed}@media (pointer:coarse){.tn-chips__chip{min-height:var(--tenon-touch-target)}}@media (prefers-reduced-motion:reduce){.tn-chips__chip{transition:none}}.tn-combobox__box{align-items:center;display:flex;position:relative}.tn-combobox__input{padding-right:40px}.tn-combobox__button{right:var(--tenon-space-1);border-radius:var(--tenon-radius-full);width:32px;height:32px;color:var(--tenon-color-text-muted);cursor:pointer;background:0 0;border:0;justify-content:center;align-items:center;padding:0;display:inline-flex;position:absolute}.tn-combobox__button[data-hovered]{background:var(--tenon-color-surface-subtle)}.tn-combobox__button[data-focus-visible]{outline:2px solid var(--tenon-color-focus-ring);outline-offset:1px}@media (pointer:coarse){.tn-combobox__button{width:var(--tenon-touch-target);height:var(--tenon-touch-target)}.tn-combobox__input{padding-right:52px}}.tn-confirm-dialog__text{margin:0;line-height:1.5}.tn-date-picker__group{padding-right:var(--tenon-space-1);justify-content:space-between;align-items:center;display:flex}.tn-date-picker__input{align-items:center;min-width:0;display:flex}.tn-date-picker__segment{border-radius:var(--tenon-radius-sm);font-variant-numeric:tabular-nums;outline:none;padding:2px 1px}.tn-date-picker__segment[data-placeholder]{color:var(--tenon-color-text-muted)}.tn-date-picker__segment[data-focused]{color:#fff;background:var(--tenon-color-primary)}.tn-date-picker__button{border-radius:var(--tenon-radius-full);width:32px;height:32px;color:var(--tenon-color-text-muted);cursor:pointer;background:0 0;border:0;flex:none;justify-content:center;align-items:center;padding:0;display:inline-flex}.tn-date-picker__button[data-hovered]{background:var(--tenon-color-surface-subtle)}.tn-date-picker__button[data-focus-visible]{outline:2px solid var(--tenon-color-focus-ring);outline-offset:1px}.tn-date-picker__dialog{padding:var(--tenon-space-3);outline:none}.tn-calendar{width:280px;max-width:100%}.tn-calendar__header{margin-bottom:var(--tenon-space-2);justify-content:space-between;align-items:center;display:flex}.tn-calendar__title{font-size:var(--tenon-font-size-lg);text-transform:capitalize;margin:0;font-weight:600}.tn-calendar__nav{border-radius:var(--tenon-radius-full);width:36px;height:36px;color:var(--tenon-color-text-secondary);cursor:pointer;background:0 0;border:0;justify-content:center;align-items:center;padding:0;display:inline-flex}.tn-calendar__nav[data-hovered]{background:var(--tenon-color-surface-subtle)}.tn-calendar__nav[data-focus-visible]{outline:2px solid var(--tenon-color-focus-ring)}.tn-calendar__nav[data-disabled]{color:var(--tenon-color-text-subtle)}.tn-calendar__grid{border-collapse:collapse;width:100%}.tn-calendar__grid th{padding-bottom:var(--tenon-space-1);color:var(--tenon-color-text-muted);font-size:var(--tenon-font-size-xs);text-transform:capitalize;font-weight:600}.tn-calendar__cell{border-radius:var(--tenon-radius-full);width:36px;height:36px;font-size:var(--tenon-font-size-sm);font-variant-numeric:tabular-nums;cursor:pointer;outline:none;justify-content:center;align-items:center;margin:1px auto;display:flex}.tn-calendar__cell[data-outside-month]{display:none}.tn-calendar__cell[data-hovered]{background:var(--tenon-color-primary-soft)}.tn-calendar__cell[data-today]{box-shadow:inset 0 0 0 1.5px var(--tenon-color-primary);font-weight:700}.tn-calendar__cell[data-selected]{color:#fff;background:var(--tenon-color-primary)}.tn-calendar__cell[data-focus-visible]{outline:2px solid var(--tenon-color-focus-ring);outline-offset:2px}.tn-calendar__cell[data-disabled],.tn-calendar__cell[data-unavailable]{color:var(--tenon-color-text-subtle);cursor:not-allowed}@media (pointer:coarse){.tn-date-picker__button,.tn-calendar__nav{width:var(--tenon-touch-target);height:var(--tenon-touch-target)}.tn-calendar{width:330px}.tn-calendar__cell{width:var(--tenon-touch-target);height:var(--tenon-touch-target)}}.tn-empty-state{align-items:center;gap:var(--tenon-space-2);padding:var(--tenon-space-10) var(--tenon-space-6);text-align:center;flex-direction:column;display:flex}.tn-empty-state__icon{width:56px;height:56px;margin-bottom:var(--tenon-space-2);border-radius:var(--tenon-radius-full);color:var(--tenon-color-primary);background:var(--tenon-color-primary-soft);justify-content:center;align-items:center;display:inline-flex}.tn-empty-state__title{font-size:var(--tenon-font-size-xl);margin:0;font-weight:600}.tn-empty-state__text{max-width:44ch;color:var(--tenon-color-text-muted);margin:0;line-height:1.5}.tn-empty-state__action{margin-top:var(--tenon-space-3)}.tn-inline{flex-direction:row;min-width:0;display:flex}.tn-menu__popover{min-width:200px}.tn-menu{padding:var(--tenon-space-1);outline:none}.tn-menu__item{align-items:center;gap:var(--tenon-space-3);min-height:36px;padding:0 var(--tenon-space-3);border-radius:var(--tenon-radius-md);cursor:pointer;outline:none;display:flex}.tn-menu__item svg{color:var(--tenon-color-text-muted);flex:none}.tn-menu__item[data-focused],.tn-menu__item[data-hovered]{background:var(--tenon-color-primary-soft)}.tn-menu__item--danger{color:var(--tenon-color-danger)}.tn-menu__item--danger svg{color:inherit}.tn-menu__item--danger[data-focused],.tn-menu__item--danger[data-hovered]{background:var(--tenon-color-danger-soft)}.tn-menu__item[data-disabled]{color:var(--tenon-color-text-subtle);cursor:not-allowed}@media (pointer:coarse){.tn-menu__item{min-height:var(--tenon-touch-target)}}.tn-number-field__group{align-items:stretch;padding:0;display:flex;overflow:hidden}.tn-number-field__input{min-width:0;padding:0 var(--tenon-space-2);color:inherit;font:inherit;font-variant-numeric:tabular-nums;text-align:center;background:0 0;border:0;outline:none;flex:1}.tn-number-field__step{width:40px;color:var(--tenon-color-text-secondary);cursor:pointer;transition:background-color var(--tenon-duration-fast) var(--tenon-ease-out);background:0 0;border:0;flex:none;justify-content:center;align-items:center;padding:0;display:inline-flex}.tn-number-field__step[data-hovered]{background:var(--tenon-color-surface-subtle)}.tn-number-field__step[data-pressed]{background:var(--tenon-color-primary-soft)}.tn-number-field__step[data-disabled]{color:var(--tenon-color-text-subtle);cursor:not-allowed}.tn-number-field__step[data-focus-visible]{outline:2px solid var(--tenon-color-focus-ring);outline-offset:-2px}@media (pointer:coarse){.tn-number-field__step{width:var(--tenon-touch-target)}}.tn-page-header{gap:var(--tenon-space-2);margin-bottom:var(--tenon-space-6);flex-direction:column;display:flex}.tn-page-header__back{margin-left:calc(-1 * var(--tenon-space-3));align-self:flex-start}.tn-page-header__row{justify-content:space-between;align-items:flex-end;gap:var(--tenon-space-4);flex-wrap:wrap;display:flex}.tn-page-header__heading{min-width:0}.tn-page-header__title{color:var(--tenon-color-text);font-size:var(--tenon-font-size-title);letter-spacing:-.01em;margin:0;font-weight:700;line-height:1.25}.tn-page-header__subtitle{margin:var(--tenon-space-1) 0 0;color:var(--tenon-color-text-muted)}.tn-page-header__actions{gap:var(--tenon-space-2);flex-wrap:wrap;display:flex}.tn-radio-group__items{gap:var(--tenon-space-1);flex-direction:column;display:flex}.tn-radio-group[data-orientation=horizontal] .tn-radio-group__items{gap:var(--tenon-space-2) var(--tenon-space-6);flex-flow:wrap}.tn-radio{align-items:flex-start;gap:var(--tenon-space-3);cursor:pointer;min-height:28px;display:flex}.tn-radio__dot{border:1.5px solid var(--tenon-color-text-muted);border-radius:var(--tenon-radius-full);background:var(--tenon-color-surface);width:20px;height:20px;transition:border-color var(--tenon-duration-fast) var(--tenon-ease-out), border-width var(--tenon-duration-fast) var(--tenon-ease-out);flex:none;margin-top:1px;display:inline-flex}.tn-radio__text{flex-direction:column;display:flex}.tn-radio[data-hovered] .tn-radio__dot{border-color:var(--tenon-color-primary)}.tn-radio[data-selected] .tn-radio__dot{border:6px solid var(--tenon-color-primary)}.tn-radio[data-focus-visible] .tn-radio__dot{outline:2px solid var(--tenon-color-focus-ring);outline-offset:2px}.tn-radio[data-invalid] .tn-radio__dot{border-color:var(--tenon-color-danger)}.tn-radio[data-disabled]{color:var(--tenon-color-text-muted);cursor:not-allowed}@media (pointer:coarse){.tn-radio{min-height:var(--tenon-touch-target);align-items:center}.tn-radio__dot{margin-top:0}}.tn-search-field__box{align-items:center;display:flex;position:relative}.tn-search-field__icon{left:var(--tenon-space-3);color:var(--tenon-color-text-muted);pointer-events:none;position:absolute}.tn-search-field__input{padding-left:36px;padding-right:40px}.tn-search-field__input::-webkit-search-cancel-button{display:none}.tn-search-field__clear{right:var(--tenon-space-1);border-radius:var(--tenon-radius-full);width:32px;height:32px;color:var(--tenon-color-text-muted);cursor:pointer;background:0 0;border:0;justify-content:center;align-items:center;padding:0;display:inline-flex;position:absolute}.tn-search-field[data-empty] .tn-search-field__clear{display:none}.tn-search-field__clear[data-hovered]{background:var(--tenon-color-surface-subtle)}.tn-search-field__clear[data-focus-visible]{outline:2px solid var(--tenon-color-focus-ring);outline-offset:1px}@media (pointer:coarse){.tn-search-field__clear{width:var(--tenon-touch-target);height:var(--tenon-touch-target)}.tn-search-field__input{padding-right:52px}}.tn-section{gap:var(--tenon-space-4);flex-direction:column;min-width:0;display:flex}.tn-section__header{justify-content:space-between;align-items:flex-end;gap:var(--tenon-space-3);flex-wrap:wrap;display:flex}.tn-section__title{font-size:var(--tenon-font-size-xl);margin:0;font-weight:700}.tn-section__description{color:var(--tenon-color-text-muted);font-size:var(--tenon-font-size-sm);margin:2px 0 0}.tn-section__actions{gap:var(--tenon-space-2);display:flex}.tn-segmented{border-radius:var(--tenon-radius-lg);background:var(--tenon-color-surface-subtle);align-self:flex-start;gap:2px;max-width:100%;padding:3px;display:inline-flex}.tn-segmented__item{min-height:34px;padding:0 var(--tenon-space-4);border-radius:var(--tenon-radius-md);color:var(--tenon-color-text-secondary);font:inherit;font-size:var(--tenon-font-size-sm);white-space:nowrap;cursor:pointer;transition:background-color var(--tenon-duration-fast) var(--tenon-ease-out), color var(--tenon-duration-fast) var(--tenon-ease-out), box-shadow var(--tenon-duration-fast) var(--tenon-ease-out);background:0 0;border:0;font-weight:600}.tn-segmented__item[data-hovered]{color:var(--tenon-color-text)}.tn-segmented__item[data-selected]{color:var(--tenon-color-primary-dark);background:var(--tenon-color-surface);box-shadow:var(--tenon-shadow-sm)}.tn-segmented__item[data-focus-visible]{outline:2px solid var(--tenon-color-focus-ring);outline-offset:1px}.tn-segmented__item[data-disabled]{color:var(--tenon-color-text-subtle);cursor:not-allowed}@media (pointer:coarse){.tn-segmented__item{min-height:var(--tenon-touch-target);min-width:var(--tenon-touch-target)}}.tn-select__button{justify-content:space-between;align-items:center;gap:var(--tenon-space-2);text-align:left;cursor:pointer;display:flex}.tn-select__value{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.tn-select__value[data-placeholder]{color:var(--tenon-color-text-muted)}.tn-select__chevron{color:var(--tenon-color-text-muted);flex:none}.tn-select__popover,.tn-combobox__popover{min-width:var(--trigger-width)}.tn-listbox{max-height:280px;padding:var(--tenon-space-1);outline:none;overflow:auto}.tn-listbox__item{min-height:36px;padding:0 var(--tenon-space-3);border-radius:var(--tenon-radius-md);cursor:pointer;outline:none;align-items:center;display:flex}.tn-listbox__item[data-focused],.tn-listbox__item[data-hovered]{background:var(--tenon-color-primary-soft)}.tn-listbox__item[data-selected]{color:var(--tenon-color-primary-dark);font-weight:600}.tn-listbox__item[data-disabled]{color:var(--tenon-color-text-subtle);cursor:not-allowed}.tn-listbox__empty{padding:var(--tenon-space-3);color:var(--tenon-color-text-muted);font-size:var(--tenon-font-size-sm)}@media (pointer:coarse){.tn-listbox__item{min-height:var(--tenon-touch-target)}}.tn-sheet-overlay{justify-content:flex-end;align-items:stretch;padding:0}.tn-sheet-overlay--left{justify-content:flex-start}.tn-sheet{width:min(480px,100%);height:100%;color:var(--tenon-color-text);background:var(--tenon-color-surface);box-shadow:var(--tenon-shadow-overlay);outline:none}.tn-sheet[data-entering]{animation:tn-sheet-in-right var(--tenon-duration-slow) var(--tenon-ease-out)}.tn-sheet[data-exiting]{animation:tn-sheet-in-right var(--tenon-duration-base) var(--tenon-ease-in-out) reverse}.tn-sheet-overlay--left .tn-sheet[data-entering],.tn-sheet-overlay--left .tn-sheet[data-exiting]{animation-name:tn-sheet-in-left}.tn-sheet__surface{outline:none;flex-direction:column;height:100%;display:flex}.tn-sheet__grip{display:none}.tn-sheet__header{justify-content:space-between;align-items:flex-start;gap:var(--tenon-space-3);padding:var(--tenon-space-5) var(--tenon-space-6) var(--tenon-space-3);border-bottom:1px solid var(--tenon-color-border);display:flex}.tn-sheet__title{font-size:var(--tenon-font-size-xl);margin:0;font-weight:700}.tn-sheet__body{padding:var(--tenon-space-5) var(--tenon-space-6);flex:1;overflow:auto}.tn-sheet__footer{justify-content:flex-end;gap:var(--tenon-space-2);padding:var(--tenon-space-4) var(--tenon-space-6);border-top:1px solid var(--tenon-color-border);flex-wrap:wrap;display:flex}@keyframes tn-sheet-in-right{0%{transform:translate(100%)}}@keyframes tn-sheet-in-left{0%{transform:translate(-100%)}}@keyframes tn-sheet-in-bottom{0%{transform:translateY(100%)}}@media (width<=639px){.tn-sheet-overlay,.tn-sheet-overlay--left{justify-content:center;align-items:flex-end}.tn-sheet{border-radius:var(--tenon-radius-xl) var(--tenon-radius-xl) 0 0;width:100%;height:auto;max-height:88vh}.tn-sheet[data-entering],.tn-sheet-overlay--left .tn-sheet[data-entering],.tn-sheet[data-exiting],.tn-sheet-overlay--left .tn-sheet[data-exiting]{animation-name:tn-sheet-in-bottom}.tn-sheet__surface{max-height:88vh}.tn-sheet__grip{width:40px;height:4px;margin:var(--tenon-space-2) auto 0;border-radius:var(--tenon-radius-full);background:var(--tenon-color-border-strong);display:block}.tn-sheet__header{padding:var(--tenon-space-3) var(--tenon-space-4)}.tn-sheet__body{padding:var(--tenon-space-4)}.tn-sheet__body:last-child{padding-bottom:calc(var(--tenon-space-4) + env(safe-area-inset-bottom))}.tn-sheet__footer{padding:var(--tenon-space-3) var(--tenon-space-4) calc(var(--tenon-space-3) + env(safe-area-inset-bottom))}}@media (prefers-reduced-motion:reduce){.tn-sheet[data-entering],.tn-sheet[data-exiting],.tn-sheet-overlay--left .tn-sheet[data-entering],.tn-sheet-overlay--left .tn-sheet[data-exiting]{animation:none}}@supports (height:100dvh){@media (width<=639px){.tn-sheet,.tn-sheet__surface{max-height:88dvh}}}.tn-skeleton{background:var(--tenon-color-surface-subtle);animation:tn-pulse 1.4s var(--tenon-ease-in-out) infinite;display:block}.tn-skeleton--text{border-radius:var(--tenon-radius-sm);width:100%;height:1em}.tn-skeleton--rect{border-radius:var(--tenon-radius-lg);width:100%;height:80px}.tn-skeleton--circle{border-radius:var(--tenon-radius-full);width:40px;height:40px}@media (prefers-reduced-motion:reduce){.tn-skeleton{animation:none}}.tn-stack{flex-direction:column;min-width:0;display:flex}.tn-stat{flex-direction:column;gap:2px;min-width:0;margin:0;display:flex}.tn-stat__label{color:var(--tenon-color-text-muted);font-size:var(--tenon-font-size-sm);font-weight:500}.tn-stat__value{color:var(--tenon-color-text);font-family:var(--tenon-font-mono);font-size:var(--tenon-font-size-title);font-variant-numeric:tabular-nums;margin:0;font-weight:600;line-height:1.2}.tn-stat--success .tn-stat__value{color:var(--tenon-color-success)}.tn-stat--warning .tn-stat__value{color:var(--tenon-color-warning)}.tn-stat--danger .tn-stat__value{color:var(--tenon-color-danger)}.tn-stat__hint{color:var(--tenon-color-text-muted);font-size:var(--tenon-font-size-xs);margin:0}.tn-status-badge{min-height:24px;padding:0 var(--tenon-space-3);border-radius:var(--tenon-radius-full);color:var(--tn-status-fg);background:var(--tn-status-bg);font-size:var(--tenon-font-size-xs);white-space:nowrap;align-items:center;font-weight:600;line-height:1;display:inline-flex}.tn-status-badge--neutral{--tn-status-fg:var(--tenon-color-text-secondary);--tn-status-bg:var(--tenon-color-surface-subtle)}.tn-switch{align-items:center;gap:var(--tenon-space-3);min-height:28px;color:var(--tenon-color-text);font-size:var(--tenon-font-size-md);cursor:pointer;display:flex}.tn-switch__track{border-radius:var(--tenon-radius-full);background:var(--tenon-color-text-muted);width:40px;height:24px;transition:background-color var(--tenon-duration-base) var(--tenon-ease-out);flex:none;align-items:center;display:inline-flex;position:relative}.tn-switch__thumb{border-radius:var(--tenon-radius-full);width:18px;height:18px;box-shadow:var(--tenon-shadow-sm);transition:transform var(--tenon-duration-base) var(--tenon-ease-out);background:#fff;margin-left:3px}.tn-switch[data-selected] .tn-switch__track{background:var(--tenon-color-primary)}.tn-switch[data-selected] .tn-switch__thumb{transform:translate(16px)}.tn-switch[data-pressed] .tn-switch__thumb{width:22px}.tn-switch[data-selected][data-pressed] .tn-switch__thumb{transform:translate(12px)}.tn-switch[data-focus-visible] .tn-switch__track{outline:2px solid var(--tenon-color-focus-ring);outline-offset:2px}.tn-switch[data-disabled]{color:var(--tenon-color-text-muted);cursor:not-allowed}.tn-switch[data-disabled] .tn-switch__track{opacity:.5}@media (pointer:coarse){.tn-switch{min-height:var(--tenon-touch-target)}}@media (prefers-reduced-motion:reduce){.tn-switch__track,.tn-switch__thumb{transition:none}}.tn-table-wrap{border:1px solid var(--tenon-color-border);border-radius:var(--tenon-radius-xl);background:var(--tenon-color-surface);max-width:100%;box-shadow:var(--tenon-shadow-sm);overscroll-behavior-x:contain;overflow-x:auto}.tn-table{border-collapse:collapse;width:100%;min-width:max-content;font-size:var(--tenon-font-size-md)}.tn-table__head{background:var(--tenon-color-surface-subtle)}.tn-table__column{padding:var(--tenon-space-3) var(--tenon-space-4);color:var(--tenon-color-text-secondary);font-size:var(--tenon-font-size-sm);text-align:left;white-space:nowrap;outline:none;font-weight:600}.tn-table__column--end,.tn-table__cell--end{text-align:right}.tn-table__column[data-allows-sorting]{cursor:pointer}.tn-table__column[data-focus-visible]{outline:2px solid var(--tenon-color-focus-ring);outline-offset:-2px}.tn-table__column-content{align-items:center;gap:var(--tenon-space-1);display:inline-flex}.tn-table__sort-idle{color:var(--tenon-color-text-subtle)}.tn-table__row{transition:background-color var(--tenon-duration-fast) var(--tenon-ease-out);outline:none}.tn-table__row[data-hovered]{background:var(--tenon-color-primary-soft)}.tn-table__row[data-href],.tn-table__row[data-pressed]{cursor:pointer}.tn-table__row[data-focus-visible]{outline:2px solid var(--tenon-color-focus-ring);outline-offset:-2px}.tn-table__cell{padding:var(--tenon-space-3) var(--tenon-space-4);border-top:1px solid var(--tenon-color-border);outline:none}.tn-table__empty{padding:var(--tenon-space-8) var(--tenon-space-4);color:var(--tenon-color-text-muted);text-align:center}@media (pointer:coarse){.tn-table__cell{padding-block:var(--tenon-space-4)}}.tn-tabs{flex-direction:column;min-width:0;display:flex}.tn-tabs__list{gap:var(--tenon-space-1);border-bottom:1px solid var(--tenon-color-border);display:flex}.tn-tabs__tab{min-height:44px;padding:0 var(--tenon-space-4);color:var(--tenon-color-text-muted);font:inherit;white-space:nowrap;cursor:pointer;transition:color var(--tenon-duration-fast) var(--tenon-ease-out);background:0 0;border:0;outline:none;font-weight:600;position:relative}.tn-tabs__tab:after{right:var(--tenon-space-2);bottom:-1px;left:var(--tenon-space-2);background:var(--tenon-color-primary);content:"";opacity:0;height:3px;transition:opacity var(--tenon-duration-base) var(--tenon-ease-out), transform var(--tenon-duration-base) var(--tenon-ease-out);border-radius:3px 3px 0 0;position:absolute;transform:scaleX(.6)}.tn-tabs__tab[data-hovered]{color:var(--tenon-color-text)}.tn-tabs__tab[data-selected]{color:var(--tenon-color-primary-dark)}.tn-tabs__tab[data-selected]:after{opacity:1;transform:scaleX(1)}.tn-tabs__tab[data-focus-visible]{outline:2px solid var(--tenon-color-focus-ring);outline-offset:-2px;border-radius:var(--tenon-radius-md)}.tn-tabs__tab[data-disabled]{color:var(--tenon-color-text-subtle);cursor:not-allowed}.tn-tabs__panel{padding-top:var(--tenon-space-5);outline:none}.tn-tabs__panel[data-focus-visible]{outline:2px solid var(--tenon-color-focus-ring);outline-offset:2px}@media (prefers-reduced-motion:reduce){.tn-tabs__tab:after{transition:none}}.tn-tag{align-items:center;gap:var(--tenon-space-1);min-height:28px;padding:0 var(--tenon-space-3);border:1px solid var(--tenon-color-border-strong);border-radius:var(--tenon-radius-full);color:var(--tenon-color-text-secondary);background:var(--tenon-color-surface);font-size:var(--tenon-font-size-sm);display:inline-flex}.tn-tag:has(.tn-tag__remove){padding-right:var(--tenon-space-1)}.tn-tag__remove{border-radius:var(--tenon-radius-full);width:22px;height:22px;color:var(--tenon-color-text-muted);cursor:pointer;background:0 0;border:0;justify-content:center;align-items:center;padding:0;display:inline-flex}.tn-tag__remove[data-hovered]{background:var(--tenon-color-surface-subtle)}.tn-tag__remove[data-focus-visible]{outline:2px solid var(--tenon-color-focus-ring)}@media (pointer:coarse){.tn-tag__remove{width:var(--tenon-touch-target);height:var(--tenon-touch-target)}}.tn-toast-region{right:var(--tenon-space-4);bottom:calc(var(--tenon-space-4) + env(safe-area-inset-bottom));z-index:var(--tenon-z-toast);width:min(380px, calc(100vw - 2 * var(--tenon-space-4)));pointer-events:none;position:fixed}.tn-toast-region__list{gap:var(--tenon-space-2);flex-direction:column;margin:0;padding:0;list-style:none;display:flex}.tn-toast{align-items:flex-start;gap:var(--tenon-space-3);padding:var(--tenon-space-3) var(--tenon-space-3) var(--tenon-space-3) var(--tenon-space-4);border:1px solid var(--tenon-color-border);border-left:4px solid var(--tn-toast-accent);border-radius:var(--tenon-radius-lg);color:var(--tenon-color-text);background:var(--tenon-color-surface);box-shadow:var(--tenon-shadow-lg);pointer-events:auto;display:flex}.tn-toast--info{--tn-toast-accent:var(--tenon-color-info)}.tn-toast--success{--tn-toast-accent:var(--tenon-color-success)}.tn-toast--warning{--tn-toast-accent:var(--tenon-color-warning)}.tn-toast--danger{--tn-toast-accent:var(--tenon-color-danger)}.tn-toast__icon{color:var(--tn-toast-accent);flex:none;margin-top:8px}.tn-toast__content{min-width:0;padding:var(--tenon-space-2) 0;flex:1}.tn-toast__title{margin:0;font-weight:600}.tn-toast__text{color:var(--tenon-color-text-secondary);font-size:var(--tenon-font-size-sm);margin:2px 0 0;line-height:1.45}@media (width<=639px){.tn-toast-region{right:var(--tenon-space-2);bottom:calc(var(--tenon-space-2) + env(safe-area-inset-bottom));left:var(--tenon-space-2);width:auto}}@media (prefers-reduced-motion:reduce){.tn-toast,.tn-toast-region__list{transition:none;animation:none}}.tn-tooltip{z-index:var(--tenon-z-popover);max-width:260px;padding:6px var(--tenon-space-3);border-radius:var(--tenon-radius-md);color:#fff;background:var(--tenon-color-primary-dark);box-shadow:var(--tenon-shadow-md);font-size:var(--tenon-font-size-sm);line-height:1.4}.tn-tooltip[data-entering]{animation:tn-tooltip-in var(--tenon-duration-fast) var(--tenon-ease-out)}.tn-tooltip[data-exiting]{animation:tn-tooltip-in var(--tenon-duration-fast) var(--tenon-ease-in-out) reverse}.tn-tooltip__arrow svg{fill:var(--tenon-color-primary-dark);display:block}.tn-tooltip[data-placement=top] .tn-tooltip__arrow{bottom:-5px}.tn-tooltip[data-placement=bottom] .tn-tooltip__arrow{top:-5px}.tn-tooltip[data-placement=bottom] .tn-tooltip__arrow svg{transform:rotate(180deg)}@keyframes tn-tooltip-in{0%{opacity:0;transform:scale(.96)}}@media (prefers-reduced-motion:reduce){.tn-tooltip[data-entering],.tn-tooltip[data-exiting]{animation:none}}.tn-app-shell{min-height:100vh;color:var(--tenon-color-text);background:var(--tenon-color-background);font-family:var(--tenon-font-sans);font-size:var(--tenon-font-size-md);display:flex}.tn-app-shell__sidebar{z-index:var(--tenon-z-sticky);gap:var(--tenon-space-4);width:248px;height:100vh;padding:var(--tenon-space-5) var(--tenon-space-3);color:#fff;background:var(--tenon-color-primary-dark);flex-direction:column;flex:none;display:none;position:sticky;top:0}.tn-app-shell__logo{padding:0 var(--tenon-space-3);font-size:var(--tenon-font-size-xl);font-weight:700}.tn-app-shell__logo img,.tn-app-shell__topbar-logo img{max-width:100%;max-height:40px}.tn-app-shell__nav{flex:1;overflow-y:auto}.tn-app-shell__nav-list{flex-direction:column;gap:2px;margin:0;padding:0;list-style:none;display:flex}.tn-app-shell__link{align-items:center;gap:var(--tenon-space-3);min-height:44px;padding:0 var(--tenon-space-3);border-radius:var(--tenon-radius-lg);color:#ffffffd9;transition:background-color var(--tenon-duration-fast) var(--tenon-ease-out);font-weight:500;text-decoration:none;display:flex}.tn-app-shell__link:hover{background:#ffffff1a}.tn-app-shell__link[aria-current=page]{color:#fff;background:#ffffff29;font-weight:600}.tn-app-shell__link:focus-visible{outline-offset:2px;outline:2px solid #fff}.tn-app-shell__link svg{flex:none}.tn-app-shell__user{align-items:center;gap:var(--tenon-space-3);padding:var(--tenon-space-3);border-top:1px solid #ffffff29;display:flex}.tn-app-shell__user-text{flex-direction:column;min-width:0;display:flex}.tn-app-shell__user-name{text-overflow:ellipsis;white-space:nowrap;font-weight:600;overflow:hidden}.tn-app-shell__user-role{color:#ffffffb3;font-size:var(--tenon-font-size-xs)}.tn-app-shell__main{flex-direction:column;flex:1;min-width:0;display:flex}.tn-app-shell__topbar{z-index:var(--tenon-z-sticky);align-items:center;gap:var(--tenon-space-2);min-height:56px;padding:0 var(--tenon-space-3);border-bottom:1px solid var(--tenon-color-border);background:var(--tenon-color-surface);display:flex;position:sticky;top:0}.tn-app-shell__topbar-logo{font-weight:700}.tn-app-shell__content{min-width:0;padding:var(--tenon-space-4);flex:1}.tn-drawer-overlay{justify-content:flex-start;align-items:stretch;padding:0}.tn-drawer{color:#fff;background:var(--tenon-color-primary-dark);width:min(300px,86vw);height:100%;box-shadow:var(--tenon-shadow-overlay);outline:none}.tn-drawer[data-entering]{animation:tn-drawer-in var(--tenon-duration-slow) var(--tenon-ease-out)}.tn-drawer[data-exiting]{animation:tn-drawer-in var(--tenon-duration-base) var(--tenon-ease-in-out) reverse}.tn-drawer__surface{gap:var(--tenon-space-4);height:100%;padding:var(--tenon-space-5) var(--tenon-space-3);padding-bottom:calc(var(--tenon-space-5) + env(safe-area-inset-bottom));outline:none;flex-direction:column;display:flex;position:relative}.tn-drawer__close{top:var(--tenon-space-3);right:var(--tenon-space-3);color:#fff;position:absolute}.tn-drawer__close[data-hovered]{background:#ffffff29}.tn-drawer__close[data-pressed]{background:#ffffff47}.tn-drawer__close[data-focus-visible]{outline-offset:2px;outline:2px solid #fff}@keyframes tn-drawer-in{0%{transform:translate(-100%)}}@media (width>=960px){.tn-app-shell__sidebar{display:flex}.tn-app-shell__topbar{display:none}.tn-app-shell__content{padding:var(--tenon-space-8)}}@media (prefers-reduced-motion:reduce){.tn-drawer[data-entering],.tn-drawer[data-exiting]{animation:none}}@supports (height:100dvh){.tn-app-shell{min-height:100dvh}.tn-app-shell__sidebar{height:100dvh}}*{box-sizing:border-box}html,body,#root{min-height:100%;margin:0}body{color:var(--tenon-color-text);background:var(--tenon-color-background);font-family:var(--tenon-font-sans);font-size:var(--tenon-font-size-md)}button,input{font:inherit}.app-shell{min-height:100vh}.app-header{color:#fff;background:var(--tenon-color-primary-dark);justify-content:space-between;align-items:center;gap:16px;min-height:64px;padding:12px 20px;display:flex}.brand{font-size:var(--tenon-font-size-xl);font-weight:700}.login-main{justify-content:center;padding:48px 20px;display:flex}.card{border:1px solid var(--tenon-color-border);border-radius:var(--tenon-radius-lg);background:var(--tenon-color-surface);width:100%;max-width:400px;padding:28px}h1{font-size:var(--tenon-font-size-title);margin:0 0 24px}.form-field{margin-bottom:20px}.form-field label{color:var(--tenon-color-text-muted);font-size:var(--tenon-font-size-sm);margin-bottom:8px;font-weight:700;display:block}.form-field input{width:100%;min-height:48px;color:var(--tenon-color-text);border:1px solid var(--tenon-color-border-strong);border-radius:var(--tenon-radius-lg);background:var(--tenon-color-surface);padding:10px 14px}button{cursor:pointer}button:disabled{cursor:wait;opacity:.7}.primary-button{color:#fff;border-radius:var(--tenon-radius-lg);background:var(--tenon-color-primary);border:0;width:100%;min-height:48px;padding:10px 16px;font-weight:700}.primary-button:hover:not(:disabled){background:var(--tenon-color-primary-strong)}button:focus-visible,input:focus-visible{outline:3px solid var(--tenon-color-primary-soft);outline-offset:2px}.error-message{color:var(--tenon-color-danger);font-size:var(--tenon-font-size-sm);margin:0 0 20px;font-weight:700}@media (width>=600px){.app-header{padding-left:32px;padding-right:32px}.card{padding:36px}}.visually-hidden{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.muted{color:var(--tenon-color-text-muted);font-size:var(--tenon-font-size-sm)}.mono{font-family:var(--tenon-font-mono);font-variant-numeric:tabular-nums}.shell{min-height:100vh}.topbar{z-index:20;border-bottom:1px solid var(--tenon-color-border);background:var(--tenon-color-surface);align-items:center;gap:12px;padding:8px 12px;display:flex;position:sticky;top:0}.topbar-brand,.sidebar-brand{font-size:var(--tenon-font-size-xl);font-weight:600}.brand-accent{color:var(--tenon-color-primary)}.menu-button{border:1px solid var(--tenon-color-border-strong);border-radius:var(--tenon-radius-md);background:var(--tenon-color-surface);justify-content:center;align-items:center;width:44px;height:44px;display:inline-flex}.menu-icon,.menu-icon:before,.menu-icon:after{background:var(--tenon-color-text);border-radius:1px;width:18px;height:2px;display:block}.menu-icon{position:relative}.menu-icon:before,.menu-icon:after{content:"";position:absolute;left:0}.menu-icon:before{top:-6px}.menu-icon:after{top:6px}.sidebar{z-index:40;border-right:1px solid var(--tenon-color-border);background:var(--tenon-color-surface);visibility:hidden;flex-direction:column;gap:4px;width:min(280px,85vw);padding:20px 12px;transition:transform .2s,visibility .2s;display:flex;position:fixed;top:0;bottom:0;left:0;overflow-y:auto;transform:translate(-100%)}.sidebar.is-open{visibility:visible;transform:none}.sidebar-backdrop{cursor:default;z-index:30;background:color-mix(in srgb, var(--tenon-color-text) 40%, transparent);border:0;padding:0;position:fixed;inset:0}.sidebar-brand{padding:4px 12px 16px}.sidebar nav{flex-direction:column;gap:4px;display:flex}.nav-link{min-height:44px;color:var(--tenon-color-text-secondary);border-radius:var(--tenon-radius-md);font-size:var(--tenon-font-size-md);align-items:center;padding:9px 12px;text-decoration:none;display:flex}.nav-link:hover{background:var(--tenon-color-surface-subtle)}.nav-link.is-active{color:var(--tenon-color-primary-strong);background:var(--tenon-color-primary-soft);font-weight:600}.nav-count{color:#fff;background:var(--tenon-color-danger);min-width:22px;font-size:var(--tenon-font-size-xs);text-align:center;border-radius:999px;margin-left:auto;padding:1px 7px;font-weight:700}.sidebar-user{border-top:1px solid var(--tenon-color-border);font-size:var(--tenon-font-size-sm);flex-direction:column;gap:8px;margin-top:auto;padding:16px 12px 0;display:flex}.sidebar-user-name{color:var(--tenon-color-text-secondary);overflow-wrap:anywhere;font-weight:600}.shell-main{min-width:0;padding:20px 16px 32px}@media (width>=900px){.topbar,.sidebar-backdrop{display:none}.sidebar{visibility:visible;width:220px;transition:none;transform:none}.shell-main{margin-left:220px;padding:24px 28px 32px}.shell-main.is-bare{margin-left:0}}.button{min-height:36px;color:var(--tenon-color-text);border:1px solid var(--tenon-color-border-strong);border-radius:var(--tenon-radius-md);background:var(--tenon-color-surface);font-size:var(--tenon-font-size-sm);padding:8px 12px;font-weight:500}.button:hover:not(:disabled){background:var(--tenon-color-surface-subtle)}.button-link{align-items:center;text-decoration:none;display:inline-flex}.button-primary{color:#fff;border-color:var(--tenon-color-primary);background:var(--tenon-color-primary)}.button-primary:hover:not(:disabled){background:var(--tenon-color-primary-strong)}.button:disabled{cursor:not-allowed;opacity:.55}.field{min-height:40px;color:var(--tenon-color-text);border:1px solid var(--tenon-color-border-strong);border-radius:var(--tenon-radius-md);background:var(--tenon-color-surface);font-size:var(--tenon-font-size-md);padding:8px 10px}select:focus-visible,a:focus-visible{outline:3px solid var(--tenon-color-primary-soft);outline-offset:2px}.screen{flex-direction:column;gap:16px;min-width:0;display:flex}.screen h1{font-size:var(--tenon-font-size-title);margin:0;font-weight:600}.screen-header{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;display:flex}.screen-subtitle{margin:2px 0 0}.screen-actions{flex-wrap:wrap;gap:8px;display:flex}.back-link{font-size:var(--tenon-font-size-sm);margin:0}.back-link a{color:var(--tenon-color-primary)}.empty-state{color:var(--tenon-color-text-muted);margin:0}.inline-error{color:var(--tenon-color-danger);font-size:var(--tenon-font-size-sm);margin:0;font-weight:700}.segmented{border:0;margin:0;padding:0;display:flex}.segmented button{min-height:36px;color:var(--tenon-color-text);border:1px solid var(--tenon-color-border-strong);background:var(--tenon-color-surface);font-size:var(--tenon-font-size-sm);padding:8px 12px;font-weight:500}.segmented button:first-child{border-radius:var(--tenon-radius-md) 0 0 var(--tenon-radius-md)}.segmented button:last-child{border-radius:0 var(--tenon-radius-md) var(--tenon-radius-md) 0;border-left:0}.segmented button.is-selected{color:#fff;border-color:var(--tenon-color-text);background:var(--tenon-color-text)}.filters{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.filters .field{min-width:0;max-width:100%}.filter-search{width:240px}.filter-postal{width:120px}.board{padding-bottom:8px;overflow-x:auto}.board-columns{align-items:flex-start;gap:10px;min-width:max-content;display:flex}.board-column{border-radius:var(--tenon-radius-lg);background:var(--tenon-color-surface-subtle);border:2px solid #0000;flex-direction:column;flex:0 0 220px;gap:8px;min-height:80px;padding:10px;display:flex}.board-column.is-drop-target{border-color:var(--tenon-color-primary);background:var(--tenon-color-primary-soft)}.board-column-header{font-size:var(--tenon-font-size-sm);justify-content:space-between;font-weight:600;display:flex}.board-column-header h2{font-size:inherit;margin:0}.dossier-card{border:1px solid var(--tenon-color-border);border-radius:var(--tenon-radius-md);background:var(--tenon-color-surface);font-size:var(--tenon-font-size-sm);cursor:grab;-webkit-touch-callout:none;-webkit-user-select:none;user-select:none;flex-direction:column;gap:4px;padding:10px;display:flex;position:relative}.dossier-card.is-dragged{opacity:.4}.dossier-card-link{color:var(--tenon-color-text);-webkit-user-drag:none;font-weight:700;text-decoration:none}.dossier-card-link:after{content:"";position:absolute;inset:0}.dossier-card-link:focus-visible{outline:none}.dossier-card:has(.dossier-card-link:focus-visible){outline:3px solid var(--tenon-color-primary-soft);outline-offset:2px}.tag{color:var(--tenon-color-text-secondary);background:var(--tenon-color-surface-subtle);font-size:var(--tenon-font-size-xs);border-radius:999px;align-self:flex-start;padding:1px 6px;font-weight:500}.dossier-card-move{z-index:1;width:100%;min-height:32px;color:var(--tenon-color-text-muted);border:1px solid var(--tenon-color-border);border-radius:var(--tenon-radius-sm);background:var(--tenon-color-surface);font-size:var(--tenon-font-size-xs);margin-top:4px;padding:4px 6px;position:relative}.drag-ghost{z-index:100;color:#fff;border-radius:var(--tenon-radius-md);background:var(--tenon-color-primary);max-width:240px;box-shadow:0 6px 18px color-mix(in srgb, var(--tenon-color-text) 30%, transparent);font-size:var(--tenon-font-size-sm);pointer-events:none;padding:8px 12px;font-weight:700;position:fixed}body.is-dragging{cursor:grabbing;-webkit-user-select:none;user-select:none}.list-wrapper{border:1px solid var(--tenon-color-border);border-radius:var(--tenon-radius-lg);background:var(--tenon-color-surface);overflow-x:auto}.dossier-table{border-collapse:collapse;width:100%;min-width:760px;font-size:var(--tenon-font-size-sm)}.dossier-table th,.dossier-table td{border-bottom:1px solid var(--tenon-color-border);text-align:left;padding:10px 12px}.dossier-table thead th{color:var(--tenon-color-text-muted);background:var(--tenon-color-surface-subtle);font-weight:600}.dossier-table tbody tr{cursor:pointer}.dossier-table tbody tr:hover{background:var(--tenon-color-surface-subtle)}.dossier-table tbody tr:last-child th,.dossier-table tbody tr:last-child td{border-bottom:0}.dossier-table tbody th a{color:var(--tenon-color-text);font-weight:700;text-decoration:none}a.button{align-items:center;text-decoration:none;display:inline-flex}.duplicate-badge{z-index:1;color:var(--tenon-color-warning);background:var(--tenon-color-warning-soft);font-size:var(--tenon-font-size-xs);border-radius:999px;align-self:flex-start;padding:1px 8px;font-weight:700;text-decoration:none;position:relative}.dossier-table tbody th .duplicate-badge{color:var(--tenon-color-warning);margin-left:8px;font-weight:700}.notice{color:var(--tenon-color-primary-dark);border-radius:var(--tenon-radius-md);background:var(--tenon-color-primary-soft);font-size:var(--tenon-font-size-sm);margin:0;padding:10px 12px;font-weight:600}.duplicate-layout{align-items:start;gap:16px;min-width:0;display:grid}.duplicate-list{flex-direction:column;gap:8px;margin:0;padding:0;list-style:none;display:flex}.duplicate-item{width:100%;color:var(--tenon-color-text);text-align:left;border:1px solid var(--tenon-color-border);border-radius:var(--tenon-radius-md);background:var(--tenon-color-surface);cursor:pointer;grid-template-columns:1fr auto;gap:2px 8px;padding:10px 12px;display:grid}.duplicate-item.is-selected{border-color:var(--tenon-color-primary);background:var(--tenon-color-primary-soft)}.duplicate-item:focus-visible{outline:3px solid var(--tenon-color-primary-soft);outline-offset:2px}.duplicate-item-reasons{font-size:var(--tenon-font-size-sm);grid-column:1/-1}.duplicate-detail{border:1px solid var(--tenon-color-border);border-radius:var(--tenon-radius-lg);background:var(--tenon-color-surface);min-width:0;padding:14px}.duplicate-reasons{font-size:var(--tenon-font-size-sm);margin:0 0 8px}.duplicate-row{border-bottom:1px solid var(--tenon-color-border);font-size:var(--tenon-font-size-sm);grid-template-columns:76px minmax(0,1fr);align-items:start;gap:8px;padding:10px 0;display:grid}.duplicate-head{color:var(--tenon-color-text-muted);font-weight:700}.duplicate-label{color:var(--tenon-color-text-muted)}.duplicate-columns{border:0;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;min-width:0;margin:0;padding:0;display:grid}.duplicate-head-cell{flex-direction:column;display:flex}.duplicate-choice{overflow-wrap:anywhere;align-items:flex-start;gap:6px;min-width:0;display:flex}.duplicate-choice input{accent-color:var(--tenon-color-primary);flex:none;margin:2px 0 0}.duplicate-same{overflow-wrap:anywhere}.duplicate-dossiers{overflow-wrap:anywhere;margin:0;padding:0;list-style:none}.duplicate-dossier-link{color:var(--tenon-color-primary);font-weight:600}.duplicate-actions{flex-wrap:wrap;justify-content:flex-end;gap:8px;margin-top:14px;display:flex}.duplicate-confirm{border:1px solid var(--tenon-color-warning);border-radius:var(--tenon-radius-md);background:var(--tenon-color-warning-soft);min-width:0;font-size:var(--tenon-font-size-sm);margin:14px 0 0;padding:12px}.duplicate-confirm p{margin:0}.duplicate-confirm .duplicate-actions{margin-top:10px}.duplicate-detail input:focus-visible{outline:3px solid var(--tenon-color-primary-soft);outline-offset:2px}@media (width>=1100px){.duplicate-layout{grid-template-columns:280px minmax(0,1fr)}.duplicate-row{grid-template-columns:120px minmax(0,1fr)}.duplicate-detail{padding:18px}}.sync-banner{background:var(--color-surface,#f0f4f1);border-bottom:1px solid var(--color-border,#d4ddd6);padding:.5rem 1rem}.sync-banner p{margin:0}
