:root{--bg:var(--tg-theme-bg-color,#fff);--text:var(--tg-theme-text-color,#000);--hint:var(--tg-theme-hint-color,#999);--link:var(--tg-theme-link-color,#2481cc);--button:var(--tg-theme-button-color,#2481cc);--button-text:var(--tg-theme-button-text-color,#fff);--secondary-bg:var(--tg-theme-secondary-bg-color,#efeff3);--section-bg:var(--tg-theme-section-bg-color,#fff);--section-header:var(--tg-theme-section-header-text-color,#6d6d72);--separator:var(--tg-theme-section-separator-color,#e7e7e7);--destructive:var(--tg-theme-destructive-text-color,#e53935);--accent:var(--tg-theme-accent-text-color,#2481cc);--radius:12px;--tabbar-height:56px}*{box-sizing:border-box}html,body{background:var(--secondary-bg);color:var(--text);-webkit-font-smoothing:antialiased;margin:0;font:16px/1.4 -apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif}button,input,select,textarea{font:inherit;color:inherit}a{color:var(--link)}.app-with-tabs{padding-bottom:calc(var(--tabbar-height) + env(safe-area-inset-bottom,0px))}.page{flex-direction:column;gap:12px;max-width:900px;margin:0 auto;padding:16px;display:flex}.title{margin:0;font-size:22px}.hint{color:var(--hint);margin:0;font-size:14px}.error{color:var(--destructive)}.link{color:var(--link)}.icon{vertical-align:middle;flex-shrink:0}.icon-inline{vertical-align:-.2em;margin-right:.25em}.icon-warning{color:#c77c02}.icon-ok{color:#2e7d32}.sr-only{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.section{border-radius:var(--radius);background:var(--section-bg);padding:4px 16px}.section-block{flex-direction:column;gap:6px;display:flex}.section-title{color:var(--section-header);text-transform:uppercase;margin:4px 16px 0;font-size:13px;font-weight:500}.section-hint{color:var(--hint);margin:0 16px;font-size:13px}.list{border-radius:var(--radius);background:var(--section-bg);overflow:hidden}.list-item{border:0;border-bottom:1px solid var(--separator);width:100%;min-height:48px;color:var(--text);font:inherit;text-align:left;cursor:pointer;background:0 0;justify-content:space-between;align-items:center;gap:12px;padding:12px 16px;text-decoration:none;display:flex}.list-item>span:first-child{flex-direction:column;min-width:0;display:flex}.list-item>span.list-label{flex-direction:row;align-items:center;gap:14px}.list-icon{color:var(--accent)}.list-item .link-button{align-self:flex-start}.row-end{flex-shrink:0;align-items:center;gap:8px;display:flex}.list-item-static{cursor:default}.list-item:last-child,.list>:last-child{border-bottom:0}.list-item:disabled{opacity:.6}.list-text{border-bottom:1px solid var(--separator);margin:0;padding:12px 16px}.item-hint{color:var(--hint);text-overflow:ellipsis;white-space:nowrap;font-size:13px;overflow:hidden}.item-hint-wrap{overflow-wrap:anywhere;white-space:normal}.chevron{color:var(--hint);font-size:20px}.badge{background:var(--secondary-bg);color:var(--hint);border-radius:10px;flex-shrink:0;padding:2px 8px;font-size:12px}.link-text{word-break:break-all;-webkit-user-select:all;user-select:all}.button{background:var(--button);width:100%;color:var(--button-text);font:inherit;text-align:center;cursor:pointer;border:0;border-radius:10px;justify-content:center;align-items:center;gap:8px;padding:12px;font-weight:600;text-decoration:none;display:flex}.button:disabled{opacity:.6;cursor:default}.button-secondary{background:var(--section-bg);color:var(--link)}.button-danger{background:var(--section-bg);color:var(--destructive)}.link-button{color:var(--link);cursor:pointer;background:0 0;border:0;flex-shrink:0;align-items:center;gap:6px;padding:4px 0;display:inline-flex}.link-button-danger{color:var(--destructive)}a.link-button{text-decoration:none}.chip{background:var(--section-bg);color:var(--link);cursor:pointer;border:0;border-radius:16px;align-self:flex-start;align-items:center;gap:4px;padding:6px 12px;text-decoration:none;display:inline-flex}.banner{border-radius:var(--radius);background:var(--section-bg);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px;padding:12px 16px;font-size:14px;display:flex}.banner-warning{border-left:4px solid #f5a623}.banner-error{border-left:4px solid var(--destructive)}.banner-info{border-left:4px solid var(--accent)}.banner-actions{gap:12px;display:flex}.banner-action{color:var(--link);cursor:pointer;background:0 0;border:0;padding:0;font-weight:600}.banner-action-secondary{color:var(--hint)}.error-list{width:100%;margin:0;padding-left:20px}.empty{border-radius:var(--radius);background:var(--section-bg);color:var(--hint);text-align:center;margin:0;padding:24px 16px}.form,.fieldset{border:0;flex-direction:column;gap:12px;min-width:0;margin:0;padding:0;display:flex}.field{border-bottom:1px solid var(--separator);flex-direction:column;gap:4px;padding:10px 16px;display:flex}.list>.field:last-child{border-bottom:0}.field-label{color:var(--hint);font-size:13px}.required{color:var(--destructive)}.input{background:0 0;border:0;border-bottom:1px solid #0000;outline:none;width:100%;min-width:0;padding:8px 0}.input:focus{border-bottom-color:var(--accent)}.input-invalid{border-bottom-color:var(--destructive)}.field-error{color:var(--destructive);font-size:13px}.field-hint{color:var(--hint);font-size:13px}.field-pair{gap:8px;display:flex}.field-pair>.field{flex:1}.list .field-pair{gap:0}.input[type=color]{border:1px solid var(--separator);cursor:pointer;border-radius:8px;width:64px;height:34px;padding:2px}.input[type=color]::-webkit-color-swatch-wrapper{padding:0}.input[type=color]::-webkit-color-swatch{border:0;border-radius:6px}.input[type=color]::-moz-color-swatch{border:0;border-radius:6px}.check-row{border-bottom:1px solid var(--separator);padding:4px 16px}.check-row .field{border-bottom:0;padding:4px 0 8px 32px}.check{cursor:pointer;align-items:flex-start;gap:12px;padding:8px 0;display:flex}.check input{width:20px;height:20px;accent-color:var(--button);flex-shrink:0;margin:2px 0 0}.check>span{flex-direction:column;display:flex}.check-hint{color:var(--hint);font-size:13px}.toolbar,.filters{flex-direction:column;gap:8px;display:flex}.toolbar>.input,.filters .input{background:var(--section-bg);border-radius:10px;padding:10px 12px}.toolbar>.input:focus,.filters .input:focus,.search-input:focus{box-shadow:inset 0 0 0 1.5px var(--accent);border-bottom-color:#0000}.filters .field{border:0;padding:0}.segmented{background:var(--section-bg);border-radius:10px;padding:2px;display:flex}.segmented-scroll{scrollbar-width:none;overflow-x:auto}.segmented-scroll .segment{white-space:nowrap;flex:1 0 auto;padding:6px 10px}.segmented-small{background:var(--secondary-bg);margin:0 0 8px 32px}.segment,.segment-radio{color:var(--text);text-align:center;cursor:pointer;background:0 0;border:0;border-radius:8px;flex:1;padding:6px 4px;font-size:14px}:is(.segment-active,.segment-radio:has(input:checked)){background:var(--button);color:var(--button-text)}.segment-radio input{opacity:0;pointer-events:none;position:absolute}.segment-radio:has(input:disabled){opacity:.5;cursor:default}.segmented-field{background:var(--secondary-bg);margin-top:4px}select.input{appearance:auto}.textarea{resize:vertical;white-space:pre-wrap;min-height:96px}.row-actions{flex-shrink:0;gap:4px;display:flex}.icon-button{background:var(--secondary-bg);width:32px;height:32px;color:var(--link);cursor:pointer;border:0;border-radius:8px;justify-content:center;align-items:center;padding:0;display:inline-flex}.icon-button:disabled{opacity:.4;cursor:default}.list-row{border-bottom:1px solid var(--separator);align-items:center;display:flex}.list-row:last-child{border-bottom:0}.list-row>.list-item{border-bottom:0;flex:1;min-width:0}.list-row>.row-actions{padding-right:12px}.color-dot{vertical-align:baseline;border-radius:50%;width:10px;height:10px;margin-right:6px;display:inline-block}.subform{border-bottom:1px solid var(--separator);flex-direction:column;display:flex}.subform:last-child{border-bottom:0}.subform-head{justify-content:space-between;align-items:center;gap:8px;padding:8px 16px 0;font-weight:500;display:flex}.subform-head>span:first-child{flex-direction:column;min-width:0;display:flex}.subform-head .item-hint{font-weight:400}.add-row{width:100%;color:var(--link);font:inherit;text-align:left;cursor:pointer;background:0 0;border:0;padding:12px 16px}.add-row.link-button-danger{color:var(--destructive)}.days-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:0 8px;display:grid}.days-grid>.check:last-child{grid-column:span 2}.day-hours{border-bottom:1px solid var(--separator);grid-template-columns:36px minmax(0,1fr) minmax(0,1fr) auto;align-items:center;gap:8px;padding:6px 16px;display:grid}.day-hours:last-child{border-bottom:0}.day-hours .input{padding:6px 0}.day-error{padding:0 16px 6px;display:block}.day-hours .check{padding:0;font-size:14px}.price-line{border-bottom:1px solid var(--separator);justify-content:space-between;gap:12px;padding:10px 16px;display:flex}.price-line:last-child{border-bottom:0}.price-line>span:first-child{flex-direction:column;min-width:0;display:flex}.price-amount{font-variant-numeric:tabular-nums;white-space:nowrap;flex-shrink:0}.price-total{font-weight:600}.voided{color:var(--hint);text-decoration:line-through}.amount-in{color:#2e7d32}.amount-out{color:var(--destructive)}.photos{flex-wrap:wrap;gap:10px;padding:12px 16px;display:flex}.photos-field{padding:4px 0}.photo{position:relative}.photo-open{cursor:zoom-in;background:0 0;border:0;padding:0;display:block}.photo-img{background:var(--secondary-bg);object-fit:cover;border-radius:8px;width:72px;height:72px;display:block}.photo-stub{color:var(--hint);text-align:center;justify-content:center;align-items:center;font-size:12px;display:flex}.photo-remove{background:var(--destructive);color:#fff;cursor:pointer;border:0;border-radius:50%;justify-content:center;align-items:center;width:22px;height:22px;padding:0;font-size:12px;line-height:22px;display:flex;position:absolute;top:-6px;right:-6px}.photo-add{border:1px dashed var(--hint);width:72px;height:72px;color:var(--link);font:inherit;cursor:pointer;background:0 0;border-radius:8px;padding:0;font-size:13px}.photo-viewer{z-index:100;background:#000000e6;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.photo-viewer img{object-fit:contain;max-width:100%;max-height:100%}.photo-viewer-close{color:#fff;cursor:pointer;background:#fff3;border:0;border-radius:50%;justify-content:center;align-items:center;width:36px;height:36px;padding:0;font-size:18px;display:flex;position:absolute;top:12px;right:12px}.document-text{white-space:pre-wrap;overflow-wrap:anywhere;margin:0;padding:12px 16px}.info-row{border-bottom:1px solid var(--separator);justify-content:space-between;gap:12px;padding:10px 16px;display:flex}.info-row:last-child{border-bottom:0}.info-label{color:var(--hint);flex-shrink:0}.info-value{text-align:right;overflow-wrap:anywhere;white-space:pre-wrap;min-width:0}.badges{flex-shrink:0;gap:4px;display:flex}.page>.badges .badge{background:var(--section-bg)}.badge-danger{color:var(--destructive)}.badge-accent{color:var(--accent)}.row-buttons{flex-wrap:wrap;gap:16px;padding:10px 16px;display:flex}.page>.row-buttons,.toolbar>.row-buttons{gap:8px;padding:0}.inline-form{flex-direction:column;gap:8px;margin-top:8px;display:flex}.inline-form .field{border:0;padding:0}.picked{justify-content:space-between;align-items:center;gap:12px;padding:8px 0;display:flex}.pick-results{background:var(--secondary-bg);border-radius:10px;flex-direction:column;display:flex}.pick-result{border:0;border-bottom:1px solid var(--separator);text-align:left;cursor:pointer;background:0 0;flex-direction:column;align-items:flex-start;padding:8px 12px;display:flex}.pick-result:last-child{border-bottom:0}.check-row.check{padding:8px 16px}.badges-column{flex-direction:column;align-items:flex-end}.badge-order-tentative{border:1px dashed var(--hint);background:0 0}.badge-order-confirmed,.badge-game-planned{color:var(--accent)}.badge-order-cancelled,.badge-order-no_show,.badge-game-cancelled,.badge-pay-unpaid{color:var(--destructive)}.badge-pay-partial,.badge-game-awaiting_close{color:#c77c02}.badge-pay-paid{color:#2e7d32}.badge-open-recruiting{color:#c77c02}.badge-open-go{color:#2e7d32}.badge-open-cancelled{color:var(--destructive)}.contents{display:contents}.announcement{font:inherit;white-space:pre-wrap;overflow-wrap:anywhere;margin:0;padding:8px 16px}.badge-task-new{color:var(--accent)}.badge-task-in_progress{color:#c77c02}.badge-task-done,.badge-cert-active,.badge-sub-active{color:#2e7d32}.badge-cert-partial,.badge-sub-frozen{color:var(--accent)}.badge-cert-expired,.badge-sub-ended,.badge-sub-expired{color:#c77c02}.badge-cert-annulled,.badge-sub-annulled{color:var(--destructive)}.picked-text{flex-direction:column;gap:2px;min-width:0;display:flex}.check-inline{gap:8px;padding:4px 0 0;font-size:14px}.check-inline input{width:18px;height:18px;margin:1px 0 0}.chip-check input{opacity:0;width:1px;height:1px;position:absolute}.chip-check span{background:var(--secondary-bg);color:var(--link);cursor:pointer;border-radius:16px;padding:6px 12px;display:inline-block}.chip-check input:checked+span{background:var(--button);color:var(--button-text)}.chip-check input:focus-visible+span{outline:2px solid var(--link)}.qr-block{flex-direction:column;align-items:center;gap:8px;padding:12px 0;display:flex}.qr{border-radius:8px}.qr-code-text{letter-spacing:1px;-webkit-user-select:all;user-select:all;font-family:ui-monospace,SF Mono,Menlo,Consolas,monospace;font-size:22px;font-weight:700}.input-with-button{gap:8px;display:flex}.input-with-button .input{flex:1;min-width:0}.input-with-button .button{flex-shrink:0;width:auto;padding:8px 12px}.activity-chip{color:#fff;text-align:center;vertical-align:1px;border-radius:4px;min-width:26px;padding:0 4px;font-size:12px;font-weight:600;line-height:18px;display:inline-block}.chips{flex-wrap:wrap;gap:6px;display:flex}.chips .chip{background:var(--secondary-bg)}.page>.chips .chip{background:var(--section-bg)}.chip-active{color:var(--button-text);background:var(--button)!important}.action-grid{grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:8px;display:grid}.comment-text{white-space:pre-wrap;overflow-wrap:anywhere}.warning-text{color:#c77c02;margin:4px 0 0;font-size:14px}.verdict{flex-direction:column;gap:4px;margin-top:8px;display:flex}.verdict p{margin:0;font-size:14px}.verdict-ok{color:#2e7d32}.timeline-wrap{padding-bottom:16px}.timeline{background:var(--secondary-bg);border-radius:6px;height:34px;position:relative;overflow:hidden}.timeline-open{background:var(--section-bg);box-shadow:inset 0 0 0 1px var(--separator);position:absolute;top:0;bottom:0}.timeline-game{color:#fff;text-align:left;text-overflow:ellipsis;white-space:nowrap;cursor:pointer;border:0;border-radius:4px;padding:0 4px;font-size:11px;font-weight:600;position:absolute;top:3px;bottom:3px;overflow:hidden}.timeline-game:disabled{cursor:default}.timeline-tentative{outline-offset:-3px;opacity:.85;outline:2px dashed #fff}.timeline-buffer{background:repeating-linear-gradient(135deg, var(--separator) 0 3px, transparent 3px 6px);position:absolute;top:3px;bottom:3px}.timeline-slot{pointer-events:none;border:2px solid #2e7d32;border-radius:6px;position:absolute;top:0;bottom:0}.timeline-slot-bad{border-color:var(--destructive)}.timeline-hours{height:14px;color:var(--hint);font-size:11px;position:relative}.timeline-hours span{position:absolute;transform:translate(-50%)}.audit-list{flex-direction:column;gap:8px;margin:0;padding:0;list-style:none;display:flex}.audit-item{border-radius:var(--radius);background:var(--section-bg);padding:12px 16px}.audit-meta{color:var(--hint);font-size:13px}.audit-title{margin-top:2px;font-weight:500}.audit-changes{overflow-wrap:anywhere;margin:6px 0 0;padding-left:18px;font-size:14px}.tabbar{z-index:10;height:calc(var(--tabbar-height) + env(safe-area-inset-bottom,0px));padding-bottom:env(safe-area-inset-bottom,0px);border-top:1px solid var(--separator);background:var(--bg);display:flex;position:fixed;bottom:0;left:0;right:0}.tab{min-width:0;color:var(--hint);flex-direction:column;flex:1;justify-content:center;align-items:center;gap:2px;font-size:11px;text-decoration:none;display:flex}.tab-icon{stroke-width:1.8px}.tab-active{color:var(--accent)}.search-entry{align-items:center;gap:8px;display:flex}.search-entry,.search-input{background:var(--section-bg);color:var(--hint);border-radius:10px;padding:10px 12px;font-size:15px;text-decoration:none}.search-input{color:var(--text)}.list-subhead{color:var(--section-header);margin:0;padding:8px 16px 0;font-size:13px;font-weight:600}.game-row{border-bottom:1px solid var(--separator)}.list>.game-row:last-child,.game-row>.list-item{border-bottom:0}.game-orders{flex-direction:column;margin:-6px 0 0;padding:0 16px 10px 48px;display:flex}.game-order{color:var(--text);justify-content:space-between;align-items:center;gap:8px;padding:3px 0;font-size:14px;text-decoration:none;display:flex}.game-order-text{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.weather-warning{color:#c77c02}.day-weather{white-space:nowrap}.weather-source{font-size:13px}.week-weather{margin-bottom:4px;font-size:12px;display:block}.attention-reason{color:#c77c02;font-size:13px}.date-nav{align-items:center;gap:8px;display:flex}.date-nav-label{background:var(--section-bg);text-align:center;border-radius:10px;flex:1;justify-content:center;align-items:center;gap:8px;min-width:0;min-height:36px;padding:6px 12px;display:flex;position:relative}.date-nav-icon{color:var(--accent)}.date-nav-text{font-weight:600}.date-nav-input{opacity:0;cursor:pointer;width:100%;position:absolute;inset:0}.date-nav .chip{align-self:center}.date-nav .icon-button{background:var(--section-bg);flex-shrink:0;width:36px;height:36px}.toolbar .field-pair>.input{background:var(--section-bg);border-radius:10px;flex:1;padding:10px 12px}.vboard{--vboard-time:44px;border-radius:var(--radius);background:var(--section-bg);overflow:clip}.vboard-head{z-index:5;border-bottom:1px solid var(--separator);background:var(--section-bg);display:grid;position:sticky;top:0}.vboard-field{border-left:1px solid var(--separator);flex-direction:column;min-width:0;padding:8px 6px;display:flex}.vboard-field-name{text-overflow:ellipsis;white-space:nowrap;font-size:14px;font-weight:600;overflow:hidden}.vboard-sub{color:var(--hint);text-overflow:ellipsis;white-space:nowrap;font-size:12px;overflow:hidden}.vboard-body{background-image:linear-gradient(to bottom, var(--separator) 1px, transparent 1px);display:grid;position:relative}.vboard-times{background:var(--section-bg);position:relative}.vboard-times span{color:var(--hint);font-variant-numeric:tabular-nums;margin-top:2px;font-size:11px;position:absolute;right:6px}.vboard-col{border-left:1px solid var(--separator);min-width:0;position:relative}.vboard-off{background:var(--secondary-bg);position:absolute;left:0;right:0}.vboard-cell{z-index:1;cursor:pointer;background:0 0;border:0;padding:0;position:absolute;left:0}.vboard-cell:hover,.vboard-cell:focus-visible{background:color-mix(in srgb, var(--accent) 12%, transparent);outline:none}.vboard-game{z-index:2;color:#fff;text-align:left;cursor:pointer;border:0;border-radius:6px;flex-direction:column;align-items:flex-start;padding:3px 5px;font-size:12px;line-height:15px;display:flex;position:absolute;left:3px;overflow:hidden}.vboard-game-label{text-overflow:ellipsis;white-space:nowrap;max-width:100%;font-weight:600;overflow:hidden}.vboard-game-time{opacity:.9;text-overflow:ellipsis;white-space:nowrap;max-width:100%;font-size:11px;overflow:hidden}.vboard-hidden{background:var(--hint);opacity:.45;cursor:default;justify-content:center}.vboard-tentative{outline-offset:-4px;opacity:.85;outline:2px dashed #fff}.vboard-open{box-shadow:inset 4px 0 #ffffffb3}.vboard-buffer{z-index:1;background:repeating-linear-gradient(135deg, var(--separator) 0 3px, transparent 3px 6px);position:absolute;left:3px}.vboard-booking{z-index:2;background:color-mix(in srgb, var(--accent) 25%, transparent);width:12px;color:var(--text);white-space:nowrap;writing-mode:vertical-rl;border-radius:3px;font-size:9px;line-height:12px;position:absolute;overflow:hidden}.vboard-now{right:0;left:var(--vboard-time);z-index:3;background:var(--destructive);pointer-events:none;height:2px;margin-top:-1px;position:absolute}.vboard-now:before{background:var(--destructive);content:"";border-radius:50%;width:8px;height:8px;position:absolute;top:-3px;left:-4px}.board{border-radius:var(--radius);background:var(--section-bg);overscroll-behavior-x:contain;overflow-x:auto}.week-table{border-collapse:collapse;width:100%;font-size:13px}.week-table th,.week-table td{border:1px solid var(--separator);text-align:left;vertical-align:top;padding:6px}.week-table thead th{white-space:nowrap}.week-table td{min-width:96px}.week-table .week-today{background:color-mix(in srgb, var(--accent) 10%, transparent)}.week-off{background:var(--secondary-bg)}.week-closed{color:var(--hint);font-size:12px}.week-game{color:var(--text);white-space:nowrap;margin-bottom:4px;text-decoration:none;display:block}.week-hidden{color:var(--hint)}.week-tentative{outline:1px dashed var(--hint);outline-offset:1px}.week-agenda{flex-direction:column;gap:8px;display:flex}.week-agenda .list-item{border-bottom:0}.week-agenda-title{font-weight:600}.week-agenda .week-today{color:var(--accent)}.week-agenda-row{border-top:1px solid var(--separator);align-items:flex-start;gap:12px;padding:8px 16px;display:flex}.week-agenda-field{flex-direction:column;flex-shrink:0;width:84px;font-size:13px;display:flex}.week-agenda-name{text-overflow:ellipsis;white-space:nowrap;font-weight:500;overflow:hidden}.week-agenda-field .day-weather{color:var(--hint);font-size:12px}.week-agenda-field .weather-warning{color:#c77c02}.week-agenda-games{flex-wrap:wrap;flex:1;gap:6px;min-width:0;font-size:14px;display:flex}.week-agenda-games .week-game{background:var(--secondary-bg);border-radius:8px;margin:0;padding:4px 8px}.metrics{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;display:grid}.metric{border-radius:var(--radius);background:var(--section-bg);flex-direction:column;gap:2px;padding:12px 16px;display:flex}.metric-label,.metric-hint{color:var(--hint);font-size:13px}.metric-value{font-variant-numeric:tabular-nums;font-size:20px;font-weight:600}.report-grid{gap:12px;display:grid}.breakdown-line>span:first-child{flex:1}.bar{background:var(--button);opacity:.6;border-radius:2px;height:4px;margin-top:4px;display:block}.period-nav{justify-content:space-between;align-items:center;gap:8px;display:flex}.period-title{text-align:center;font-weight:600}.table-wrap{overflow-x:auto}.report-table{border-collapse:collapse;font-variant-numeric:tabular-nums;width:100%;font-size:14px}.report-table th,.report-table td{border-bottom:1px solid var(--separator);text-align:left;white-space:nowrap;padding:8px 12px}.report-table th{color:var(--section-header);font-weight:500}.report-table tr:last-child td{border-bottom:0}.report-table .numeric{text-align:right}.heatmap{gap:2px;padding:8px 12px;font-size:11px;display:grid}.heat-head{color:var(--hint);text-align:center}.heat-cell{background:var(--secondary-bg);text-align:center;border-radius:4px;min-height:26px;position:relative}.heat-closed{background:0 0}.heat-fill{background:var(--button);border-radius:4px;position:absolute;inset:0}.heat-value{line-height:26px;position:relative}@media (width>=900px){.page-wide{max-width:1200px}.metrics{grid-template-columns:repeat(4,minmax(0,1fr))}.report-grid{grid-template-columns:repeat(2,minmax(0,1fr));align-items:start}}.badge-contact-no_answer,.badge-contact-callback{color:var(--accent)}.badge-contact-booked,.badge-campaign-active{color:#2e7d32}.badge-contact-refused{color:var(--destructive)}.contact-row .subform{margin-top:8px}
