/*! tailwindcss v4.3.3 | MIT License | https://tailwindcss.com */@layer theme{:host,:root{--font-sans:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue","Noto Sans",Arial,sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol","Noto Color Emoji";--font-mono:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono","Courier New",monospace;--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono)}}@layer base{*,::backdrop,:after,:before{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}:host,html{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue","Noto Sans",Arial,sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol","Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,pre,samp{font-family:var(--default-mono-font-family,ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono","Courier New",monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring:where(:not(iframe)){outline:auto}progress{vertical-align:baseline}summary{display:list-item}menu,ol,ul{list-style:none}audio,canvas,embed,iframe,img,object,svg,video{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,optgroup,select,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab,red,red)){::placeholder{color:color-mix(in oklab,currentcolor 50%,transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit,::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-day-field,::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-hour-field,::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-millisecond-field,::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){appearance:button}::file-selector-button{appearance:button}::-webkit-inner-spin-button,::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer components;@layer utilities{.visible{visibility:visible}.fixed{position:fixed}.sticky{position:sticky}.block{display:block}.grid{display:grid}.inline{display:inline}.table{display:table}.antialiased{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}}:root{--ink:#172321;--muted:#6d7b77;--green:#176c58;--line:#dfe6e2;--bg:#f5f7f5}*{box-sizing:border-box}body{background:var(--bg);color:var(--ink);margin:0;font:14px/1.45 Arial,sans-serif}button,input,select,textarea{font:inherit}button{cursor:pointer}.shell{grid-template-columns:260px 1fr;min-height:100vh;display:grid}aside{color:#fff;background:#123e36;flex-direction:column;gap:10px;padding:26px 20px;display:flex}.brand{align-items:center;gap:12px;margin-bottom:28px;display:flex}.brand>span{color:#173e36;background:#d9a753;border-radius:10px;place-items:center;width:40px;height:40px;font-weight:800;display:grid}.brand div{flex-direction:column;display:flex}.brand small{opacity:.65}aside label{text-transform:uppercase;letter-spacing:.1em;opacity:.7;margin-top:8px;font-size:11px}aside select{color:#fff;background:#214f46;border:1px solid #477069;border-radius:8px;padding:10px}.nav-title{justify-content:space-between;align-items:center;margin-top:18px;display:flex}.icon{color:#fff;background:#28584e;border:0;border-radius:5px}nav{flex-direction:column;gap:4px;display:flex}nav button{color:#d6e2de;text-align:left;background:0 0;border:0;border-radius:7px;padding:10px 12px}nav button.active{color:#183d35;background:#d9a753;font-weight:700}.content{min-width:0;padding:40px}header{justify-content:space-between;align-items:center;margin-bottom:28px;display:flex}h1{margin:3px 0;font:700 32px Georgia,serif}h2{margin:0;font:700 21px Georgia,serif}h3{margin-bottom:5px}.crumb{color:var(--green);margin:0;font-weight:700}.card p,.content header p,.modal>p{color:var(--muted);margin:3px 0}.actions{gap:10px;display:flex}.ghost,.primary{border-radius:8px;padding:10px 15px;font-weight:700}.primary{border:1px solid var(--green);background:var(--green);color:#fff}.ghost{border:1px solid var(--line);color:var(--ink);background:#fff}aside .ghost{color:#d6e2de;background:0 0;border-color:#477069;margin-top:auto}.full{width:100%}button:disabled{opacity:.45;cursor:not-allowed}.tabs{border-bottom:1px solid var(--line);gap:5px;display:flex}.tabs button{color:var(--muted);background:0 0;border:0;padding:12px 18px}.tabs button.selected{color:var(--green);border-bottom:3px solid var(--green);font-weight:700}.card{border:1px solid var(--line);background:#fff;border-radius:0 12px 12px;box-shadow:0 4px 16px #193a3110}.card-head{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;padding:22px 24px;display:flex}table{border-collapse:collapse;width:100%}th{text-align:left;text-transform:uppercase;letter-spacing:.07em;color:var(--muted);background:#fafbfa;font-size:11px}td,th{white-space:nowrap;border-bottom:1px solid #edf0ee;padding:14px 18px}.table-wrap{overflow:auto}.pill{border-radius:999px;padding:4px 9px;font-size:12px}.pill.present{color:#17704d;background:#ddf3e8}.pill.absent{color:#a63c31;background:#fce5e3}.pill.late{color:#8a6512;background:#fff0cc}.source{color:#53645f;background:#eef2f0;border-radius:5px;padding:4px 8px}.mark{font-weight:800}.roster button,.row-actions button{color:var(--green);background:0 0;border:0;font-size:12px}.empty{text-align:center;color:var(--muted);padding:70px 20px}.empty-icon{color:var(--green);background:#e6f1ed;border-radius:50%;place-items:center;width:45px;height:45px;margin:auto;font-size:23px;display:grid}.error,.notice{border-radius:8px;margin:0 0 14px;padding:12px 15px}.notice{color:#176c58;background:#dff3e9}.error{color:#962e26;background:#fce4e2;justify-content:space-between;display:flex}.error button{background:0 0;border:0}.overlay{z-index:10;background:#0d241fcc;place-items:center;padding:20px;display:grid;position:fixed;inset:0}.modal{background:#fff;border-radius:14px;width:min(620px,100%);max-height:90vh;padding:28px;position:relative;overflow:auto}.close{background:0 0;border:0;font-size:25px;position:absolute;top:13px;right:15px}.modal form{gap:14px;margin-top:22px}.modal form,.modal label{flex-direction:column;display:flex}.modal label{gap:6px;font-size:12px;font-weight:700}.modal input,.modal select,.modal textarea{background:#fff;border:1px solid #cfd8d4;border-radius:7px;padding:10px}.modal textarea{min-height:75px}.grid{grid-template-columns:1fr 1fr;gap:12px;display:grid}.inline{grid-template-columns:1fr auto;display:grid!important}.roster{margin-top:18px}.roster>div{border-bottom:1px solid var(--line);justify-content:space-between;padding:11px 0;display:flex}.drop{text-align:center;background:#f8faf9;border:2px dashed #a8bdb6;border-radius:12px;align-items:center;margin-top:22px;padding:44px!important}.drop input{max-width:250px}.drop span{color:var(--green);font-size:16px}.drop small{color:var(--muted)}.review{flex-direction:column;gap:8px;margin:20px 0;display:flex}.review>div{border:1px solid var(--line);border-radius:8px;grid-template-columns:2fr .65fr 1fr auto;align-items:end;gap:9px;padding:10px;display:grid}.review>div.low{background:#fffaf0;border-color:#d9a753}.confidence{color:var(--muted);padding:9px}.center{justify-content:center;align-items:center;gap:12px;min-height:100vh;display:flex}.spinner{border:2px solid #ccc;border-top:2px solid var(--green);border-radius:50%;width:20px;height:20px;animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(1turn)}}@media (max-width:800px){.shell{display:block}aside{padding:14px 18px}.brand{margin-bottom:8px}.nav-title,aside nav,aside>.ghost{display:none}.content{padding:22px 14px}header{align-items:flex-start;gap:14px}header .actions{flex-direction:column}h1{font-size:25px}.grid{grid-template-columns:1fr}.review>div{grid-template-columns:1fr 1fr}.table-wrap{font-size:12px}}.matrix-card{border-radius:0 12px 12px}.matrix{width:max-content;min-width:100%}.matrix td,.matrix th{text-align:center;border-right:1px solid var(--line);min-width:100px}.matrix .sticky-col{z-index:2;text-align:left;background:#fff;min-width:210px;position:sticky;left:0;box-shadow:3px 0 6px #173e3610}.matrix thead .sticky-col{z-index:4;background:#f6f8f7}.matrix .date-group{color:var(--green);text-align:center;background:#e5f0ec;border-bottom:1px solid #b9cec7;font-size:12px}.matrix td.uncertain{background:#fff3cf;box-shadow:inset 0 0 0 1px #d9a753}.pill.unknown{color:#6d7b77;background:#eef0ef}.wide-modal{width:min(1040px,96vw)}.manual-grid{border:1px solid var(--line);border-radius:8px;overflow:auto}.manual-head,.manual-row{grid-template-columns:200px 130px repeat(6,minmax(130px,1fr));align-items:center;gap:8px;padding:9px;display:grid}.manual-head{background:#f3f6f4}.manual-row{border-top:1px solid var(--line)}.manual-row input,.manual-row select{min-width:120px}.sheet-summary{background:#edf5f2;border-radius:8px;flex-wrap:wrap;gap:8px;margin:14px 0;padding:12px;display:flex}.sheet-summary>*{border-right:1px solid #cbdcd6;padding-right:12px}.review-matrix{flex-direction:column;gap:14px;margin:16px 0;display:flex}.review-matrix section{border:1px solid var(--line);border-radius:9px;overflow:auto}.review-matrix h3{background:#f3f6f4;align-items:center;gap:12px;margin:0;padding:10px;display:flex}.review-matrix h3 input{width:150px}.review-row{border-top:1px solid var(--line);align-items:end;gap:8px;min-width:max-content;padding:9px;display:flex}.review-row.low{background:#fff8e6}.review-row>select:first-child{width:240px}.review-row>label{width:130px}.review-row input,.review-row select{border:1px solid #ccd7d3;border-radius:6px;width:100%;padding:8px}@media (max-width:800px){.manual-head,.manual-row{grid-template-columns:160px 120px repeat(6,120px)}.matrix .sticky-col{min-width:160px}.content header .actions{width:145px}}