:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;color:#1f2433;--bg:#f8fafc;--surface:#fff;--surface-soft:#fbfcff;--border:#dbe1ee;--text:#1f2433;--muted:#667085;--primary:#4338f4;--primary-hover:#3730a3;--green-bg:#e6f8ef;--green:#138a5b;--amber-bg:#fff2cc;--amber:#b45309;--danger:#b42318;--danger-bg:#fee4e2;--shadow:0 12px 30px #1f24330f;background:#f8fafc;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}*{box-sizing:border-box}body{background:var(--bg);min-width:320px;min-height:100vh;margin:0}button,input,select,textarea{font:inherit}a{color:inherit;text-decoration:none}.app-header{z-index:50;border-bottom:1px solid var(--border);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);background:#fffffff0;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:20px;min-height:64px;padding:10px 22px;display:grid;position:fixed;inset:0 0 auto}.brand{grid-template-columns:34px minmax(112px,1fr);align-items:center;gap:10px;min-width:206px;display:inline-grid}.brand-mark{object-fit:cover;background:#fff;border-radius:8px;width:34px;height:34px;display:block}.brand-title{color:var(--text);letter-spacing:0;text-align:center;font-size:15px;font-weight:700;line-height:1}.main-nav{scrollbar-width:none;justify-content:center;align-items:center;gap:8px;min-width:0;display:flex;overflow-x:auto}.main-nav::-webkit-scrollbar{display:none}.nav-link,.exit-link,.button{white-space:nowrap;border:1px solid #0000;border-radius:9px;justify-content:center;align-items:center;gap:8px;min-height:40px;padding:0 14px;font-size:14px;font-weight:700;line-height:1;display:inline-flex}.nav-link{color:var(--muted)}.nav-link.active{background:var(--primary);color:#fff;box-shadow:0 8px 18px #4338f438}.exit-link{color:#344054;border-color:var(--border);background:#fff}.app-main{width:100%;max-width:1480px;margin:0 auto;padding:88px 24px 32px}.page-stack{gap:18px;display:grid}.page-title-row,.detail-toolbar{justify-content:space-between;align-items:center;gap:16px;display:flex}.page-title-row h1,.chart-card h2,.summary-card h2,.weights-card h2{color:var(--text);margin:0}.page-title-row h1{font-size:clamp(26px,3vw,34px);line-height:1.1}.page-title-row p,.weights-card p{color:var(--muted);margin:7px 0 0}.toolbar-actions{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.button{cursor:pointer;border:0}.button:disabled{cursor:not-allowed;opacity:.65}.button-primary{color:#fff;background:var(--primary);box-shadow:0 10px 20px #4338f438}.button-primary:hover:not(:disabled){background:var(--primary-hover)}.button-secondary{color:var(--text);border:1px solid var(--border);background:#fff}.button-ghost{color:var(--primary);background:0 0}.button-danger{color:var(--danger);background:var(--danger-bg)}.card,.calendar-card{background:var(--surface);border:1px solid var(--border);box-shadow:var(--shadow);border-radius:12px}.card{padding:18px}.analysis-list{gap:12px;display:grid}.analysis-card{padding:0;position:relative}.analysis-open{width:100%;min-height:124px;color:inherit;text-align:left;cursor:pointer;background:0 0;border:0;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:18px;padding:18px 56px 18px 18px;display:grid}.analysis-title-line,.analysis-progress-line,.samples-progress,.weighted-row,.weighted-total{justify-content:space-between;align-items:center;gap:12px;display:flex}.analysis-title-line h2{margin:0;font-size:19px}.analysis-open p,.analysis-progress-line{color:var(--muted);font-size:14px}.badge{border-radius:999px;align-items:center;min-height:26px;padding:0 9px;font-size:12px;font-weight:800;display:inline-flex}.badge.warning{color:var(--amber);background:var(--amber-bg)}.delete-button{position:absolute;top:14px;right:14px}.icon-button{width:34px;height:34px;color:var(--muted);cursor:pointer;background:0 0;border:1px solid #0000;border-radius:8px;place-items:center;display:inline-grid}.icon-button:hover{color:var(--primary);background:#eef2ff}.icon-button.danger:hover,.delete-button:hover{color:var(--danger);background:var(--danger-bg)}.progress-bar{background:#edf1f7;border-radius:999px;width:100%;height:8px;position:relative;overflow:hidden}.progress-bar-fill{border-radius:inherit;background:var(--primary);height:100%;transition:width .18s}.back-link{color:var(--muted);align-items:center;gap:8px;font-weight:700;display:inline-flex}.form-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;display:grid}.field{color:var(--text);gap:7px;font-size:13px;font-weight:700;display:grid}.field-wide{grid-column:span 2}.field input,.field select,.field textarea,.cell-input{border:1px solid var(--border);width:100%;min-height:40px;color:var(--text);background:#fff;border-radius:8px;outline:none;padding:9px 10px}.field input:focus,.field select:focus,.field textarea:focus,.cell-input:focus{border-color:var(--primary);box-shadow:0 0 0 3px #4338f41f}.field input[readonly],.cell-input.readonly{color:var(--muted);background:#f5f7fb}.samples-section{gap:12px;display:grid}.samples-progress strong{color:var(--text)}.samples-progress span{color:var(--muted);margin-top:4px;font-size:13px;display:block}.table-shell{border:1px solid var(--border);background:#fff;border-radius:10px;width:100%;overflow-x:auto}.samples-table,.summary-table,.riegos-table{border-collapse:separate;border-spacing:0;width:100%}.samples-table{min-width:1180px}.samples-table th,.samples-table td,.summary-table th,.summary-table td,.riegos-table th,.riegos-table td{vertical-align:middle;border-bottom:1px solid #e5eaf3;padding:10px}.samples-table thead th,.summary-table thead th,.riegos-table thead th{color:#475467;text-align:left;white-space:nowrap;background:#f7f9fc;font-size:12px}.samples-table tbody tr:last-child td,.samples-table tbody tr:last-child th,.summary-table tbody tr:last-child td,.riegos-table tbody tr:last-child td{border-bottom:0}.samples-table .sticky-cell{z-index:2;min-width:82px;color:var(--text);background:#fff;position:sticky;left:0;box-shadow:1px 0 #e5eaf3}.samples-table thead .sticky-cell{z-index:3;background:#f7f9fc}.cell-input{border-radius:7px;min-width:116px}.notes-input{min-width:170px}.date-cell{min-width:142px;color:var(--muted);white-space:nowrap;font-size:13px}.humidity-cell{min-width:114px;color:var(--green);font-weight:800;position:relative}.sample-complete{background:#fbfffd}.saving-dot{background:var(--primary);border-radius:999px;width:8px;height:8px;margin-left:8px;animation:.9s ease-in-out infinite pulse;display:inline-block}@keyframes pulse{0%,to{opacity:.35}50%{opacity:1}}.field-error{color:var(--danger);margin-top:4px;font-size:11px;line-height:1.25;display:block}.pagination{justify-content:center;gap:8px;display:flex}.pagination button,.segmented button{border:1px solid var(--border);min-width:38px;height:38px;color:var(--muted);cursor:pointer;background:#fff;border-radius:8px;font-weight:800}.pagination button.active,.segmented button.active{color:#fff;border-color:var(--primary);background:var(--primary)}.summary-grid{grid-template-columns:1fr 1fr;gap:18px;display:grid}.summary-card h2,.chart-card h2{margin-bottom:14px;font-size:18px}.summary-table th,.summary-table td{text-align:left}.weighted-list{gap:12px;display:grid}.weighted-row{color:var(--muted)}.weighted-row strong{color:var(--text)}.weighted-total{border-top:1px solid var(--border);color:var(--text);margin-top:4px;padding-top:14px}.weighted-total strong{color:var(--primary);font-size:22px}.segmented{border:1px solid var(--border);background:#fff;border-radius:10px;gap:4px;padding:4px;display:inline-flex}.segmented button{border:0;min-width:104px}.calendar-card{padding:16px}.calendar-header{justify-content:center;align-items:center;gap:18px;margin-bottom:16px;display:flex}.calendar-header h2{text-align:center;text-transform:capitalize;min-width:220px;margin:0}.calendar-grid{grid-template-columns:repeat(7,minmax(118px,1fr));display:grid}.calendar-grid.weekdays{color:var(--muted);font-size:12px;font-weight:900}.calendar-grid.weekdays div{text-align:center;padding:10px}.calendar-day{border-top:1px solid var(--border);border-left:1px solid var(--border);background:#fff;min-height:118px;padding:10px}.calendar-day:nth-child(7n){border-right:1px solid var(--border)}.calendar-day:nth-last-child(-n+7){border-bottom:1px solid var(--border)}.calendar-day.outside{color:#98a2b3;background:#f8fafc}.day-number{border-radius:999px;place-items:center;width:28px;height:28px;font-weight:800;display:grid}.day-number.today{color:#fff;background:var(--primary)}.day-events{gap:5px;margin-top:8px;display:grid}.event-chip{width:100%;color:var(--primary-hover);text-align:left;text-overflow:ellipsis;white-space:nowrap;cursor:pointer;background:#eef2ff;border:0;border-radius:7px;padding:5px 7px;font-size:12px;font-weight:800;overflow:hidden}.more-events{color:var(--muted);font-size:12px}.riegos-table{min-width:1180px}.row-actions{gap:6px;display:flex}.modal-backdrop{z-index:100;background:#1f243352;place-items:center;padding:20px;display:grid;position:fixed;inset:0}.modal{background:#fff;border-radius:12px;width:min(760px,100%);max-height:min(760px,100vh - 40px);overflow:auto;box-shadow:0 30px 80px #1f24333d}.modal-header,.modal-footer{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;gap:12px;padding:16px 18px;display:flex}.modal-header h2{margin:0;font-size:20px}.modal-body{padding:18px}.modal-footer{border-top:1px solid var(--border);border-bottom:0;justify-content:flex-end}.modal-form{grid-template-columns:repeat(2,minmax(0,1fr))}.weights-card{text-align:center;justify-self:center;gap:16px;width:min(560px,100%);padding:28px;display:grid}.settings-icon,.empty-state-icon{width:58px;height:58px;color:var(--primary);background:#eef2ff;border-radius:14px;justify-self:center;place-items:center;display:grid}.weights-form{text-align:left;gap:14px;display:grid}.sum-box{border-radius:10px;justify-content:center;align-items:center;gap:6px;min-height:44px;font-weight:900;display:inline-flex}.sum-box.ok{color:var(--green);background:var(--green-bg)}.sum-box.warn{color:var(--amber);background:var(--amber-bg)}.empty-state{text-align:center;align-content:center;justify-items:center;gap:12px;min-height:340px;display:grid}.empty-state h2{margin:0;font-size:22px}.empty-state p{max-width:470px;color:var(--muted);margin:0}.charts-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;display:grid}.chart-card:last-child{grid-column:1/-1}.toast{z-index:120;width:min(380px,100vw - 32px);color:var(--green);background:var(--green-bg);border:1px solid #b7ebd0;border-radius:12px;grid-template-columns:auto minmax(0,1fr) auto;align-items:start;gap:12px;padding:14px;display:grid;position:fixed;bottom:24px;right:24px;box-shadow:0 18px 40px #1f24332e}.toast strong{color:#0f5f40}.toast p{color:#176b4b;margin:3px 0 0}.alert,.loading{border-radius:10px;padding:12px 14px}.alert.error{color:var(--danger);background:var(--danger-bg)}.loading{color:var(--muted);border:1px solid var(--border);background:#fff}@media (width<=1120px){.app-header{grid-template-columns:1fr auto}.brand{min-width:0}.main-nav{grid-area:2/1/auto/-1;justify-content:flex-start}.app-main{padding-top:122px}.form-grid,.summary-grid,.charts-grid{grid-template-columns:1fr}.field-wide,.chart-card:last-child{grid-column:auto}}@media (width<=760px){.app-header{padding:10px 14px}.brand-title{font-size:13px}.exit-link span,.nav-link span{display:none}.nav-link,.exit-link{min-width:42px;padding:0 10px}.app-main{padding:116px 14px 24px}.page-title-row,.detail-toolbar{flex-direction:column;align-items:stretch}.toolbar-actions{width:100%}.toolbar-actions .button,.segmented{flex:1}.analysis-open{padding-right:46px}.calendar-card{overflow-x:auto}.calendar-grid{min-width:780px}.modal-form{grid-template-columns:1fr}}
