:root{--bg:#f4f5f9;--surface:#fff;--surface-muted:#f8f9fc;--text:#111827;--text-soft:#374151;--muted:#6b7280;--border:#e5e7eb;--border-strong:#d1d5db;--fs-xs:.75rem;--fs-sm:.8125rem;--fs-md:.875rem;--fs-base:1rem;--fs-lg:1.0625rem;--fs-xl:1.375rem;--fs-2xl:1.6rem;--primary:#4338ca;--primary-hover:#3730a3;--primary-soft:#eef2ff;--primary-soft-border:#c7d2fe;--accent:#f59e0b;--ok-bg:#dcfce7;--ok-text:#166534;--warn-bg:#fef3c7;--warn-text:#92400e;--danger:#b91c1c;--danger-soft:#fef2f2;--radius:12px;--radius-sm:8px;--shadow:0 1px 2px #1018280d, 0 1px 3px #1018280f;--shadow-hover:0 4px 12px #10182814, 0 2px 4px #1018280a;--focus:0 0 0 3px #4338ca40}*{box-sizing:border-box}html{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}body{background:var(--bg);color:var(--text);-webkit-font-smoothing:antialiased;margin:0;font-family:Inter,system-ui,-apple-system,Segoe UI,Roboto,sans-serif;line-height:1.5}main{max-width:880px;margin:0 auto;padding:1.75rem 1rem 3rem}h1{font-size:var(--fs-2xl);letter-spacing:-.02em;margin:0 0 .5rem}small{font-size:var(--fs-sm)}h2,h3{letter-spacing:-.01em}a{color:var(--primary)}:focus-visible{box-shadow:var(--focus);outline:none}input,select,textarea{font:inherit;color:inherit;background:var(--surface);border:1px solid var(--border-strong);border-radius:var(--radius-sm);transition:border-color .15s,box-shadow .15s}input:focus,select:focus,textarea:focus{border-color:var(--primary);box-shadow:var(--focus);outline:none}input[type=checkbox],input[type=radio]{accent-color:var(--primary);width:1rem;height:1rem}
.btn,.primary-button,.secondary-button,.link-button,.load-more,.filters-toggle{border-radius:var(--radius-sm);font:inherit;font-size:var(--fs-md);white-space:nowrap;cursor:pointer;border:1px solid #0000;justify-content:center;align-items:center;gap:.4rem;padding:.55rem 1.1rem;font-weight:600;line-height:1.2;text-decoration:none;transition:background .15s,border-color .15s,color .15s,box-shadow .15s,transform 50ms;display:inline-flex}.btn:active:not(:disabled),.primary-button:active:not(:disabled),.secondary-button:active:not(:disabled){transform:translateY(1px)}.btn:disabled,.primary-button:disabled,.secondary-button:disabled,.link-button:disabled,.load-more:disabled{opacity:.55;cursor:not-allowed}.btn-primary,.primary-button{background:var(--primary);color:#fff;box-shadow:0 1px 2px #4338ca4d}.btn-primary:hover:not(:disabled),.primary-button:hover:not(:disabled){background:var(--primary-hover)}.btn-secondary,.secondary-button,.filters-toggle{background:var(--surface);color:var(--text-soft);border-color:var(--border-strong)}.btn-secondary:hover:not(:disabled),.secondary-button:hover:not(:disabled),.filters-toggle:hover{background:var(--surface-muted);color:var(--text);border-color:#9ca3af}.btn-ghost,.link-button{color:var(--primary);background:0 0}.btn-ghost:hover:not(:disabled),.link-button:hover:not(:disabled){background:var(--primary-soft)}.btn-muted{color:var(--muted)}.btn-muted:hover:not(:disabled){color:var(--text-soft);background:#f3f4f6}.btn-sm,.secondary-button.small,.link-button.inline{font-size:var(--fs-sm);padding:.35rem .75rem}.link-button{margin:.75rem 0}.link-button.inline{vertical-align:baseline;margin:0}.btn .ext{opacity:.8;font-size:.85em}.button-row{flex-wrap:wrap;align-items:center;gap:.5rem;display:flex}
.app-header{z-index:10;-webkit-backdrop-filter:saturate(180%)blur(8px);backdrop-filter:saturate(180%)blur(8px);border-bottom:1px solid var(--border);background:#ffffffe6;position:sticky;top:0}.app-header-inner{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1rem;max-width:880px;margin:0 auto;padding:.65rem 1rem;display:flex}.brand{color:var(--text);align-items:center;gap:.6rem;text-decoration:none;display:inline-flex}.brand-mark{background:linear-gradient(135deg, var(--primary) 0%, #7c3aed 100%);color:#fde68a;width:2.1rem;height:2.1rem;font-size:var(--fs-lg);border-radius:10px;place-items:center;display:grid;box-shadow:0 2px 6px #4338ca59}.brand-name{font-weight:800;font-size:var(--fs-lg);letter-spacing:-.02em;line-height:1.1;display:block}.brand-tagline{font-size:var(--fs-xs);color:var(--muted);line-height:1.1;display:block}.header-actions{flex-wrap:wrap;align-items:center;gap:.4rem;display:flex}.company-switcher{max-width:240px;font-size:var(--fs-md);background:var(--primary-soft);border-color:var(--primary-soft-border);color:var(--primary-hover);cursor:pointer;padding:.45rem .6rem;font-weight:600}.page-title{flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:1rem;margin-bottom:1rem;display:flex}.page-title h1{margin:0}.page-subtitle{color:var(--muted);font-size:var(--fs-md);margin:.2rem 0 0}.back-button{margin:0 0 .75rem -.75rem}.tabs{background:#e9eaf1;border-radius:10px;gap:.25rem;margin:0 0 1.25rem;padding:.25rem;display:inline-flex}.tab{color:var(--muted);font:inherit;font-size:var(--fs-base);cursor:pointer;background:0 0;border:none;border-radius:8px;align-items:center;gap:.45rem;padding:.5rem 1rem;font-weight:600;transition:background .15s,color .15s;display:inline-flex}.tab:hover{color:var(--text)}.tab.active{background:var(--surface);color:var(--text);box-shadow:var(--shadow)}.tab-count{background:var(--primary-soft);color:var(--primary-hover);font-size:var(--fs-xs);border-radius:999px;padding:.05rem .5rem;font-weight:700}
.search-bar{flex-wrap:wrap;align-items:center;gap:.6rem;margin-bottom:1rem;display:flex}.search-bar input[type=search]{min-width:220px;font-size:var(--fs-base);background:var(--surface) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' fill='none' stroke='%239ca3af' stroke-width='2' stroke-linecap='round' viewBox='0 0 24 24'%3E%3Ccircle cx='11' cy='11' r='7'/%3E%3Cpath d='m20 20-3.5-3.5'/%3E%3C/svg%3E") no-repeat .8rem center;flex:1;padding:.65rem .9rem .65rem 2.3rem}.filters-toggle.has-filters{border-color:var(--primary);background:var(--primary-soft);color:var(--primary-hover)}.filters{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);grid-template-columns:repeat(auto-fit,minmax(160px,1fr));align-items:end;gap:.75rem;margin:-.25rem 0 1rem;padding:1rem;display:grid}.filters label{font-size:var(--fs-xs);color:var(--text-soft);flex-direction:column;gap:.3rem;font-weight:600;display:flex}.filters select,.filters input{padding:.45rem .55rem;font-weight:400}.inline-check{font-size:var(--fs-sm);color:var(--text-soft);white-space:nowrap;cursor:pointer;align-items:center;gap:.4rem;display:inline-flex}.auth-form .inline-check.declaration,.profile-form .inline-check.declaration,.inline-check.declaration{white-space:normal;flex-direction:row;align-items:flex-start;margin:.25rem 0 .5rem;font-weight:400;line-height:1.4;display:flex}.inline-check.declaration input{flex-shrink:0;margin-top:.2rem}.search-summary{font-size:var(--fs-md);color:var(--text-soft);flex-wrap:wrap;align-items:center;gap:.5rem;display:flex}.load-more{background:var(--surface);border:1px dashed var(--border-strong);width:100%;color:var(--text-soft);margin:.5rem 0 1.5rem;padding:.7rem}.load-more:hover:not(:disabled){border-color:var(--primary);color:var(--primary)}.summary-line{color:var(--text-soft);font-size:var(--fs-md);margin:0 0 1rem}.summary-row{flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:.5rem 1rem;margin-bottom:1rem;display:flex}.summary-row .summary-line{margin:0}
.card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow);margin-bottom:.85rem;padding:1.1rem 1.25rem;transition:box-shadow .15s,border-color .15s}.card:hover{box-shadow:var(--shadow-hover)}.card.compatible{border:2px solid #22c55e}.card-header{justify-content:space-between;align-items:flex-start;gap:1rem;margin-bottom:.6rem;display:flex}.card-title{font-weight:700;font-size:var(--fs-base);color:var(--text);line-height:1.35;text-decoration:none}.card-title:hover{color:var(--primary)}.meta{font-size:var(--fs-sm);color:var(--muted);margin-top:.2rem}.rules{font-size:var(--fs-sm);color:var(--text-soft);flex-direction:column;gap:.2rem;display:flex}.rules .tags{color:var(--muted)}.card-actions{border-top:1px solid #f0f1f4;flex-wrap:wrap;align-items:center;gap:.45rem;margin-top:.9rem;padding-top:.8rem;display:flex}.card-actions .spacer{flex:1}.card.dismissed{background:var(--surface-muted);box-shadow:none;justify-content:space-between;align-items:center;gap:1rem;padding:.55rem 1.25rem;display:flex}.card.dismissed:hover{box-shadow:none}.pill{font-size:var(--fs-xs);white-space:nowrap;border-radius:999px;align-items:center;gap:.25rem;padding:.15rem .6rem;font-weight:700;display:inline-flex}.pill-ok{background:var(--ok-bg);color:var(--ok-text)}.pill-no{background:var(--warn-bg);color:var(--warn-text)}.pill-track{background:var(--primary-soft);color:var(--primary-hover);text-decoration:none}a.pill-track:hover{background:#e0e7ff}.pill-check{color:#9a3412;background:#ffedd5}.card.to-check{border:2px solid #fdba74}.section-help{margin:-.3rem 0 .7rem}.pill-muted{color:var(--text-soft);background:#f3f4f6;font-weight:600}.badges{flex-wrap:wrap;align-items:center;gap:.4rem;margin-bottom:.5rem;display:flex}.budget{font-weight:700;font-size:var(--fs-base);white-space:nowrap;font-variant-numeric:tabular-nums;flex-shrink:0}.score-badge{font-weight:700;font-size:var(--fs-sm);font-variant-numeric:tabular-nums;border-radius:999px;flex-shrink:0;padding:.25rem .65rem}.score-high{background:var(--ok-bg);color:var(--ok-text)}.score-mid{background:var(--warn-bg);color:var(--warn-text)}.kind-tag{color:var(--text-soft);font-size:var(--fs-xs);text-transform:uppercase;letter-spacing:.03em;vertical-align:.1em;background:#f3f4f6;border-radius:6px;margin-right:.35rem;padding:.1rem .5rem;font-weight:700;display:inline-block}.tracked-notes{background:var(--surface-muted);border-radius:var(--radius-sm);font-size:var(--fs-sm);color:var(--text-soft);white-space:pre-wrap;margin-top:.45rem;padding:.45rem .65rem}.group-title{font-size:var(--fs-base);color:var(--text-soft);align-items:center;gap:.5rem;margin:1.5rem 0 .6rem;display:flex}.empty-state{text-align:center;background:var(--surface);border:1px dashed var(--border-strong);border-radius:var(--radius);color:var(--text-soft);padding:2rem 1.5rem}.empty-state p{margin:0 0 1rem}
.notice{background:var(--warn-bg);color:#78350f;border-radius:var(--radius-sm);font-size:var(--fs-md);border:1px solid #fde68a;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.75rem 1rem;padding:.8rem 1rem;display:flex}.notice .btn{color:#78350f;background:#fff;border-color:#fcd34d}.notice .btn:hover{background:#fffbeb}.success{color:var(--ok-text);font-weight:600}.error{color:var(--danger);background:var(--danger-soft);border-radius:var(--radius-sm);font-size:var(--fs-md);border:1px solid #fecaca;padding:.6rem .9rem}
.profile-form{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow);flex-direction:column;gap:1.1rem;padding:1.5rem;display:flex}.profile-form label,.profile-form .field{font-size:var(--fs-md);color:var(--text-soft);flex-direction:column;gap:.35rem;font-weight:600;display:flex}.profile-form small{color:var(--muted);font-weight:400}.profile-form input:not([type=radio]):not([type=checkbox]),.profile-form select,.profile-form textarea{padding:.6rem .75rem;font-weight:400}.profile-form input:disabled{color:var(--muted);background:#f3f4f6}.profile-form fieldset{font-size:var(--fs-md);border:none;flex-direction:column;gap:.4rem;margin:0;padding:0;display:flex}.profile-form legend{font-weight:600;font-size:var(--fs-md);color:var(--text-soft);margin-bottom:.4rem}.profile-form label.inline{color:var(--text);cursor:pointer;flex-direction:row;align-items:center;gap:.55rem;font-weight:400}.profile-form .row{grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:1rem;display:grid}.profile-form button[type=submit]{border-radius:var(--radius-sm);background:var(--primary);color:#fff;font:inherit;cursor:pointer;border:none;align-self:flex-start;align-items:center;padding:.65rem 1.6rem;font-weight:600;transition:background .15s;display:inline-flex;box-shadow:0 1px 2px #4338ca4d}.profile-form button[type=submit]:hover:not(:disabled){background:var(--primary-hover)}.profile-form button[type=submit]:disabled{opacity:.55}.form-section{border-top:1px solid var(--border);font-size:var(--fs-lg);color:var(--text);margin:.5rem 0 0;padding-top:1.1rem}.form-footer{border-top:1px solid var(--border);border-radius:0 0 var(--radius) var(--radius);background:#fffffff2;align-items:center;gap:1rem;margin:0 -1.5rem -1.5rem;padding:.9rem 1.5rem;display:flex;position:sticky;bottom:0}.form-footer .success,.form-footer .error{margin:0}.alerts-toggle{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow);font-size:var(--fs-md);cursor:pointer;align-items:center;gap:.6rem;margin-top:1rem;padding:1rem 1.25rem;display:flex}.cpv-suggested{flex-wrap:wrap;align-items:center;gap:.4rem;display:flex}.suggestion-chip{background:var(--surface);color:var(--primary-hover);font:inherit;font-size:var(--fs-sm);cursor:pointer;border:1px dashed #a5b4fc;border-radius:999px;padding:.25rem .75rem;font-weight:600;transition:background .15s}.suggestion-chip:hover{background:var(--primary-soft);border-style:solid}.lookup-box{background:var(--surface-muted);border:1px solid var(--border);border-radius:var(--radius-sm);flex-wrap:wrap;align-items:center;gap:.75rem;padding:.75rem 1rem;display:flex}.lookup-box small{min-width:200px;color:var(--muted);flex:1}.suggestions-panel{border:1px solid var(--primary-soft-border);border-radius:var(--radius-sm);background:var(--primary-soft);font-size:var(--fs-md);flex-direction:column;gap:.4rem;padding:.85rem 1rem;display:flex}.suggestion-row{justify-content:space-between;align-items:center;gap:1rem;display:flex}.inline-add{gap:.5rem;display:flex}.inline-add input{flex:1}.chips{flex-wrap:wrap;gap:.4rem;display:flex}.chip{background:var(--primary-soft);color:var(--primary-hover);border:1px solid var(--primary-soft-border);font-size:var(--fs-sm);border-radius:999px;align-items:center;gap:.35rem;padding:.2rem .35rem .2rem .75rem;font-weight:600;display:inline-flex}.chip button{width:1.2rem;height:1.2rem;color:inherit;font-size:var(--fs-base);cursor:pointer;background:0 0;border:none;border-radius:999px;place-items:center;line-height:1;display:grid}.chip button:hover{background:#e0e7ff}.suggestions{border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface);box-shadow:var(--shadow-hover);margin:0;padding:.25rem;list-style:none}.suggestions button{text-align:left;width:100%;font:inherit;cursor:pointer;background:0 0;border:none;border-radius:6px;padding:.45rem .7rem;font-weight:400}.suggestions button:hover{background:var(--primary-soft)}.suggestion-main{display:block}.suggestion-detail{font-size:var(--fs-xs);color:var(--muted);display:block}.chip.chip-broad{background:var(--surface);border-style:dashed}.field-hint{background:var(--warn-bg);border-radius:var(--radius-sm);font-size:var(--fs-sm);padding:.5rem .7rem;display:block;color:#78350f!important}
.auth-page{justify-content:center;padding-top:3rem;display:flex}.auth-card{background:var(--surface);border:1px solid var(--border);width:100%;max-width:400px;box-shadow:var(--shadow-hover);border-radius:16px;padding:2rem}.auth-card h1{font-size:var(--fs-2xl)}.auth-card .page-subtitle{margin-bottom:1.5rem}.auth-form{flex-direction:column;gap:.9rem;display:flex}.auth-form label{font-size:var(--fs-sm);color:var(--text-soft);flex-direction:column;gap:.3rem;font-weight:600;display:flex}.auth-form input{padding:.65rem .8rem;font-weight:400}.auth-form .btn{width:100%;margin-top:.4rem;padding:.7rem}.auth-switch{border-top:1px solid var(--border);font-size:var(--fs-md);color:var(--muted);justify-content:center;align-items:center;gap:.35rem;margin:1.25rem 0 0;padding-top:1rem;display:flex}
.detail-title{font-size:var(--fs-2xl);margin:0 0 .6rem;line-height:1.3}.detail-section{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow);margin:1rem 0;padding:1.25rem 1.4rem}.detail-section h2{font-size:var(--fs-lg);margin:0 0 .9rem}.detail-actions{flex-wrap:wrap;gap:.5rem;margin:.75rem 0 1.25rem;display:flex}.facts{grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:.9rem 1.25rem;margin:0 0 1rem;display:grid}.facts dt{font-size:var(--fs-xs);color:var(--muted);text-transform:uppercase;letter-spacing:.04em;font-weight:700}.facts dd{font-size:var(--fs-md);margin:.15rem 0 0}.tracking-panel label{font-size:var(--fs-sm);color:var(--text-soft);flex-direction:column;gap:.3rem;margin-bottom:.9rem;font-weight:600;display:flex}.tracking-panel small{color:var(--muted);font-weight:400}.tracking-panel select,.tracking-panel textarea{padding:.55rem .65rem;font-weight:400}.tracking-row{flex-wrap:wrap;align-items:center;gap:.75rem;display:flex}.analysis-block h3{font-size:var(--fs-md);margin:1.1rem 0 .4rem}.analysis-block ul{font-size:var(--fs-md);margin:0;padding-left:1.2rem}.analysis-block li{margin-bottom:.25rem}.pliego-note{margin:.5rem 0}.criteria-summary{font-size:var(--fs-md);color:var(--text-soft);margin:0 0 .9rem}.criteria-list{flex-direction:column;gap:.9rem;margin:0;padding:0;list-style:none;display:flex}.criterion-head{font-weight:600;font-size:var(--fs-md);justify-content:space-between;gap:1rem;display:flex}.criterion-points{white-space:nowrap;font-variant-numeric:tabular-nums;color:var(--primary-hover)}.criterion-bar{background:#f0f1f4;border-radius:999px;height:6px;margin:.3rem 0;overflow:hidden}.criterion-bar span{background:var(--primary);border-radius:999px;height:100%;display:block}.criterion-bar span.judgment{background:var(--accent)}.criterion-note{font-size:var(--fs-sm);color:var(--text-soft);margin:.3rem 0 0}.lot-criteria h3,.req-block h3{font-size:var(--fs-md);margin:1rem 0 .4rem}.req-block:first-of-type h3{margin-top:0}.req-block ul{font-size:var(--fs-md);margin:0;padding-left:1.2rem}.req-block li+li{margin-top:.45rem}.req-block p{font-size:var(--fs-md);color:var(--text-soft);margin:.2rem 0 0}.req-block+.facts{margin-top:1rem}.envelopes{list-style:none;padding-left:0!important}.envelopes li{background:var(--surface-muted);border:1px solid var(--border);border-radius:var(--radius-sm);padding:.6rem .8rem}.lots,.results{font-size:var(--fs-md);margin:0;padding:0;list-style:none}.lots li{border-bottom:1px solid #f0f1f4;justify-content:space-between;gap:1rem;padding:.45rem 0;display:flex}.results li+li{margin-top:.4rem}
.company-card.active{border-color:var(--primary-soft-border);box-shadow:0 0 0 3px var(--primary-soft), var(--shadow)}.company-stats{grid-template-columns:repeat(3,1fr);gap:.6rem;display:grid}.stat{background:var(--surface-muted);border-radius:var(--radius-sm);border:1px solid #f0f1f4;padding:.65rem .8rem}.stat strong{font-size:var(--fs-xl);font-variant-numeric:tabular-nums;line-height:1.1;display:block}.stat span{font-size:var(--fs-xs);color:var(--muted);display:block}.stat span:first-letter{text-transform:uppercase}.auth-row{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.5rem;margin:-.2rem -.75rem 0 0;display:flex}.field-note{color:var(--muted);font-weight:400}.verify-banner{margin-bottom:1rem}.toggle-row{cursor:pointer;border-bottom:1px solid #f0f1f4;align-items:flex-start;gap:.7rem;padding:.75rem 0;display:flex}.toggle-row input{margin-top:.2rem}.toggle-row span{font-size:var(--fs-md);flex-direction:column;gap:.1rem;display:flex}.toggle-row small{color:var(--muted);font-size:var(--fs-sm)}.segmented{background:#e9eaf1;border-radius:9px;gap:.2rem;margin:.25rem 0 .5rem 1.7rem;padding:.2rem;display:inline-flex}.segmented button{color:var(--muted);font:inherit;font-size:var(--fs-sm);cursor:pointer;background:0 0;border:none;border-radius:7px;padding:.35rem .8rem;font-weight:600}.segmented button.active{background:var(--surface);color:var(--text);box-shadow:var(--shadow)}.password-box{margin-top:1.25rem}.password-box h3{font-size:var(--fs-base);margin:0 0 .6rem}.inline-form{grid-template-columns:repeat(auto-fit,minmax(180px,1fr));align-items:end;gap:.75rem;display:grid}.inline-form label{font-size:var(--fs-sm);color:var(--text-soft);flex-direction:column;gap:.3rem;font-weight:600;display:flex}.inline-form input{padding:.5rem .65rem;font-weight:400}.tender-filters{background:var(--surface-muted);border-radius:var(--radius-sm);border:1px solid var(--border)!important;gap:.9rem!important;padding:1rem!important}.check-chips{flex-wrap:wrap;gap:.4rem;display:flex}.check-chip{border:1px solid var(--border-strong);background:var(--surface);color:var(--text-soft);font:inherit;font-size:var(--fs-sm);cursor:pointer;border-radius:999px;padding:.3rem .75rem;font-weight:600}.check-chip.on{background:var(--primary-soft);border-color:var(--primary-soft-border);color:var(--primary-hover)}
.tracking-toolbar{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.5rem 1rem;margin-bottom:.5rem;display:flex}.tracking-toolbar .meta{margin:0}.upcoming-list{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow);margin:0 0 .5rem;padding:.35rem 0;list-style:none}.upcoming-list li{font-size:var(--fs-md);grid-template-columns:8.5rem 1fr auto;align-items:center;gap:.75rem;padding:.5rem 1rem;display:grid}.upcoming-list li+li{border-top:1px solid #f0f1f4}.upcoming-list a{color:var(--text);text-overflow:ellipsis;white-space:nowrap;font-weight:600;text-decoration:none;overflow:hidden}.upcoming-list a:hover{color:var(--primary)}.days-left{font-size:var(--fs-xs);white-space:nowrap;text-align:center;border-radius:999px;padding:.12rem .55rem;font-weight:700;display:inline-block}.days-left.urgent{color:#b91c1c;background:#fee2e2}.days-left.soon{background:var(--warn-bg);color:var(--warn-text)}.days-left.later{color:var(--text-soft);background:#f3f4f6}.days-left.closed{color:var(--muted);background:#f3f4f6}
@media (max-width:600px){main{padding-top:1.25rem}.brand-tagline{display:none}.tabs{width:100%;display:flex}.tab{font-size:var(--fs-sm);flex:auto;justify-content:center;gap:.3rem;padding:.5rem .3rem}.tab-count{padding:0 .4rem}.card-header{flex-direction:column;gap:.4rem}.company-stats{grid-template-columns:1fr}.upcoming-list li{grid-template-columns:1fr;gap:.2rem}.upcoming-list a{white-space:normal}.segmented{margin-left:0}.auth-page{padding-top:1rem}}
.insights{gap:1rem;margin:1rem 0;display:grid}.insight-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow);min-width:0;padding:1.1rem 1.3rem}.insight-card h2{font-size:var(--fs-lg);margin:0 0 .6rem}.insight-card h3{font-size:var(--fs-md);margin:1rem 0 .4rem}.insight-good{border:2px solid var(--ok-text);background:linear-gradient(0deg, var(--surface), var(--surface)) padding-box}.insight-headline{margin:0 0 .6rem}.insight-list,.checklist,.examples,.highlight-reasons{gap:.35rem;margin:.3rem 0;padding:0;list-style:none;display:grid}.checklist li{align-items:flex-start;gap:.5rem;line-height:1.4;display:flex}.check-mark{flex-shrink:0;width:1.3rem}.doc-group+.doc-group{border-top:1px dashed var(--border)}.criteria-bars{gap:.4rem;margin:.7rem 0;display:grid}.criteria-bar{font-size:var(--fs-md);grid-template-columns:minmax(0,1.4fr) minmax(0,1fr) auto;align-items:center;gap:.6rem;display:grid}.criteria-name{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.bar{background:var(--surface-muted);border:1px solid var(--border);border-radius:999px;height:.55rem;display:block;overflow:hidden}.bar-fill{background:var(--primary);height:100%;display:block}.bar-fill.judgment{background:var(--accent)}.outline{gap:.6rem;padding-left:1.2rem;display:grid}.outline ul{color:var(--text-soft);font-size:var(--fs-md);margin:.25rem 0 0;padding-left:1.1rem}.draft-section{border-left:3px solid var(--primary-soft-border);margin:.8rem 0;padding-left:.8rem}.draft-text{white-space:pre-wrap;line-height:1.55}.winners{border-collapse:collapse;width:100%;font-size:var(--fs-md);margin:.5rem 0}.winners th,.winners td{text-align:left;border-bottom:1px solid var(--border);vertical-align:top;padding:.4rem .5rem}.winners th:not(:first-child),.winners td:not(:first-child){text-align:right;white-space:nowrap}.examples li{border-bottom:1px solid var(--border);overflow-wrap:anywhere;padding:.35rem 0}.highlights{margin-bottom:1rem}.highlight{border:2px solid var(--accent);border-radius:var(--radius);background:var(--warn-bg);margin-bottom:.8rem;padding:.6rem .6rem 0}.highlight .card{margin-bottom:.6rem}.highlight-reasons{font-size:var(--fs-md);color:var(--text-soft);padding:0 .3rem .5rem}@media (max-width:600px){.criteria-bar{grid-template-columns:minmax(0,1fr) auto}.criteria-bar .bar{grid-area:2/1/auto/-1}.winners td:last-child,.winners th:last-child{display:none}}
.btn-danger{background:var(--surface);color:var(--danger);border-color:#fca5a5}.btn-danger:hover:not(:disabled){background:var(--danger-soft);border-color:var(--danger)}.your-data .button-row{flex-wrap:wrap;gap:.5rem;display:flex}.danger-zone{border-radius:var(--radius-sm);background:var(--danger-soft);border:1px solid #fca5a5;margin-top:.85rem;padding:.85rem}.danger-zone p{font-size:var(--fs-md);grid-column:1/-1;margin:0}.legal-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow);color:var(--text-soft);padding:1.5rem 1.75rem}.legal-card h2{font-size:var(--fs-lg);color:var(--text);margin:1.5rem 0 .5rem}.legal-card ul{padding-left:1.2rem}.legal-card li{margin-bottom:.35rem}.site-footer{border-top:1px solid var(--border);max-width:880px;font-size:var(--fs-sm);color:var(--muted);text-align:center;margin:0 auto;padding:1.25rem 1rem 2rem}.site-footer nav{flex-wrap:wrap;justify-content:center;gap:.4rem 1.25rem;margin-bottom:.4rem;display:flex}.site-footer a{color:var(--muted)}.site-footer a:hover{color:var(--primary)}.site-footer p{margin:0}@media (max-width:640px){.legal-card{padding:1.1rem 1rem}}
.admin-table{border-collapse:collapse;width:100%;font-size:var(--fs-md);margin-bottom:.75rem}.admin-table th,.admin-table td{text-align:left;border-bottom:1px solid var(--border);vertical-align:top;padding:.45rem .5rem}.admin-table th{font-size:var(--fs-xs);color:var(--muted);font-weight:600}.admin-row-warn td{background:var(--warn-bg)}.admin-error{color:var(--danger);font-size:var(--fs-xs);word-break:break-word;display:block}.admin-errors{font-size:var(--fs-md);padding-left:1.1rem}.detail-section .company-stats+h3{margin-top:1rem}@media (max-width:640px){.admin-table{font-size:var(--fs-sm)}}.card.dismissed{flex-direction:column;align-items:stretch;gap:.35rem}.dismissed-row{justify-content:space-between;align-items:center;gap:1rem;display:flex}.dismiss-reasons{flex-wrap:wrap;align-items:center;gap:.35rem;display:flex}.reason-chip{border:1px solid var(--border-strong);background:var(--surface);color:var(--text-soft);font-size:var(--fs-xs);cursor:pointer;border-radius:999px;padding:.15rem .65rem;font-weight:600}.reason-chip:hover:not(:disabled){border-color:var(--primary);color:var(--primary)}.dismiss-thanks{margin:0}.suggestions{border:1px solid var(--primary-soft-border);background:var(--primary-soft);border-radius:var(--radius);margin-bottom:1rem;padding:.85rem 1rem}.suggestions h3{font-size:var(--fs-base);margin:0 0 .5rem}.suggestion{border-top:1px solid var(--primary-soft-border);padding:.6rem 0}.suggestion:first-of-type{border-top:none}.suggestion p{font-size:var(--fs-sm);color:var(--text-soft);margin:.15rem 0 .5rem}.suggestion .button-row{flex-wrap:wrap;gap:.5rem;display:flex}
.verification h2 .pill{vertical-align:middle}.verification-methods{gap:.5rem;margin:.5rem 0 .85rem;display:grid}.verification-methods label{align-items:flex-start;gap:.5rem;display:flex}.verification-methods .field-hint{display:block}
.landing{max-width:960px}.landing-hero{text-align:center;padding:2.5rem 0 2rem}.landing-eyebrow{color:var(--primary);font-weight:700;font-size:var(--fs-sm);letter-spacing:.04em;text-transform:uppercase;margin:0 0 .6rem}.landing-hero h1{max-width:760px;margin:0 auto 1rem;font-size:clamp(1.7rem,4vw,2.5rem);line-height:1.15}.landing-lead{max-width:640px;font-size:var(--fs-lg);color:var(--text-soft);margin:0 auto 1.5rem}.landing-cta{flex-wrap:wrap;justify-content:center;gap:.75rem;display:flex}.landing-section{margin-top:2.5rem}.landing-section h2,.landing-final h2{font-size:var(--fs-xl);margin:0 0 1rem}.landing-steps{grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:1rem;margin:0;padding:0;list-style:none;display:grid}.landing-steps li{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow);gap:.75rem;padding:1rem;display:flex}.landing-steps p,.landing-feature p{font-size:var(--fs-md);color:var(--text-soft);margin:.3rem 0 0}.landing-step-number{background:var(--primary-soft);width:2rem;height:2rem;color:var(--primary-hover);border-radius:999px;flex-shrink:0;place-items:center;font-weight:700;display:grid}.landing-features{grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:1rem;display:grid}.landing-feature{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow);padding:1.1rem}.landing-feature-icon{font-size:var(--fs-xl);margin-bottom:.4rem;display:block}.landing-sources p{max-width:720px;color:var(--text-soft)}.landing-final{text-align:center;background:var(--primary-soft);border:1px solid var(--primary-soft-border);border-radius:var(--radius);margin:3rem 0 1rem;padding:2rem 1rem}
.calendar{gap:.75rem;display:grid}.cal-toolbar{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.5rem;display:flex}.cal-nav{align-items:center;gap:.35rem;display:flex}.cal-title{font-size:var(--fs-lg);margin:0 0 0 .5rem}.calendar .segmented{margin:0}.cal-legend{font-size:var(--fs-xs);color:var(--muted);flex-wrap:wrap;gap:.35rem 1rem;margin:0;padding:0;list-style:none;display:flex}.cal-legend li{align-items:center;gap:.35rem;display:inline-flex}.cal-swatch{border:1px solid #0000;border-radius:3px;width:.8rem;height:.8rem}.cal-compatible{--cal-color:#16a34a;--cal-bg:var(--ok-bg)}.cal-saved{--cal-color:#6366f1;--cal-bg:var(--primary-soft)}.cal-preparing{--cal-color:var(--primary);--cal-bg:#e0e7ff}.cal-submitted,.cal-awarded,.cal-rejected{--cal-color:#9ca3af;--cal-bg:#f3f4f6}.cal-urgent{--cal-color:var(--danger);--cal-bg:var(--danger-soft)}.cal-swatch{background:var(--cal-bg);border-color:var(--cal-color)}.cal-grid{border:1px solid var(--border);border-radius:var(--radius);background:var(--border);grid-template-columns:repeat(7,minmax(0,1fr));gap:1px;display:grid;overflow:hidden}.cal-weekday{background:var(--surface-muted);font-size:var(--fs-xs);color:var(--muted);text-align:center;text-transform:uppercase;padding:.4rem;font-weight:700}.cal-day{background:var(--surface);flex-direction:column;gap:.2rem;min-width:0;min-height:6.5rem;padding:.3rem;display:flex}.cal-week .cal-day{min-height:14rem}.cal-outside{background:var(--surface-muted)}.cal-outside .cal-day-number,.cal-past .cal-day-number{color:#9ca3af}.cal-day-head{width:100%;font:inherit;cursor:pointer;background:0 0;border:none;border-radius:6px;justify-content:space-between;align-items:center;padding:.1rem .2rem;display:flex}.cal-day-head:hover{background:var(--surface-muted)}.cal-day-number{font-size:var(--fs-sm);color:var(--text-soft);font-weight:700}.cal-today .cal-day-number{background:var(--primary);color:#fff;border-radius:999px;place-items:center;width:1.6rem;height:1.6rem;display:grid}.cal-selected{box-shadow:inset 0 0 0 2px var(--primary)}.cal-count{background:var(--primary-soft);min-width:1.2rem;color:var(--primary-hover);font-size:var(--fs-xs);text-align:center;border-radius:999px;padding:0 .3rem;font-weight:700;display:none}.cal-items{gap:.2rem;margin:0;padding:0;list-style:none;display:grid}.cal-item{border-left:3px solid var(--cal-color);background:var(--cal-bg);color:var(--text);font-size:var(--fs-xs);white-space:nowrap;text-overflow:ellipsis;border-radius:4px;padding:.15rem .35rem;line-height:1.3;text-decoration:none;display:block;overflow:hidden}.cal-week .cal-item{white-space:normal;-webkit-line-clamp:3;-webkit-box-orient:vertical;display:-webkit-box}a.cal-item:hover{filter:brightness(.96)}.cal-time{margin-right:.25rem;font-weight:700}.cal-more{color:var(--primary);font:inherit;font-size:var(--fs-xs);cursor:pointer;background:0 0;border:none;padding:0 .35rem;font-weight:600}.cal-agenda{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:.9rem 1rem}.cal-agenda h2{font-size:var(--fs-base);margin:0 0 .6rem}.cal-agenda ul{gap:.5rem;margin:0;padding:0;list-style:none;display:grid}.cal-agenda li.cal-item{font-size:var(--fs-md);white-space:normal;gap:.1rem;padding:.5rem .7rem;display:grid}.cal-agenda li.cal-item a{color:var(--text);font-weight:600}.cal-footer{flex-direction:column;gap:.6rem;margin:0;display:flex}.cal-footer .meta{margin:0}@media (max-width:640px){.cal-day,.cal-week .cal-day{min-height:3.2rem}.cal-items{display:none}.cal-count{display:inline-block}.cal-day-head{flex-direction:column;gap:.15rem;padding:.1rem 0}.cal-title{font-size:var(--fs-base);margin-left:.25rem}}.tabs{scrollbar-width:none;max-width:100%;overflow-x:auto}.tab{flex-shrink:0}@media (max-width:640px){.tab{font-size:var(--fs-md);padding:.45rem .7rem}}.cal-count[class*=cal-]{background:var(--cal-bg,var(--primary-soft));color:var(--cal-color,var(--primary-hover));box-shadow:inset 0 0 0 1px var(--cal-color,transparent)}
.resend-form{flex-wrap:wrap;align-items:flex-end;gap:.6rem;margin-top:1rem;display:flex}.resend-form label{flex:200px}main.wizard{max-width:640px}.wizard-kicker{color:var(--muted);font-size:var(--fs-sm);text-transform:uppercase;letter-spacing:.04em;margin-bottom:.75rem;font-weight:600}.wizard-steps{gap:.5rem;margin:0 0 1.25rem;padding:0;list-style:none;display:flex}.wizard-steps li{border-top:3px solid var(--border);color:var(--muted);font-size:var(--fs-sm);flex:1;align-items:center;gap:.5rem;padding-top:.6rem;display:flex}.wizard-steps li.current,.wizard-steps li.done{border-top-color:var(--primary);color:var(--text)}.wizard-step-number{background:var(--surface-muted);border:1px solid var(--border-strong);width:1.5rem;height:1.5rem;font-size:var(--fs-xs);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;font-weight:700;display:inline-flex}.wizard-steps li.current .wizard-step-number,.wizard-steps li.done .wizard-step-number{background:var(--primary);border-color:var(--primary);color:#fff}.wizard-card{background:var(--surface);border:1px solid var(--border);box-shadow:var(--shadow);border-radius:16px;padding:1.75rem}.wizard-card h1{font-size:var(--fs-2xl)}.wizard-actions{justify-content:flex-end;gap:.6rem;margin-top:.5rem;display:flex}.wizard-later{text-align:center;margin-top:.5rem}@media (max-width:520px){.wizard-card{padding:1.25rem}.wizard-step-label{display:none}}
.calendar-sub-panel{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);font-size:var(--fs-md);flex-direction:column;gap:.6rem;max-width:640px;margin-top:.6rem;padding:1rem;display:flex}.calendar-sub-panel p{margin:0}.calendar-sub-url{gap:.5rem;display:flex}.calendar-sub-url input{min-width:0;font-size:var(--fs-sm);flex:1;font-family:ui-monospace,SFMono-Regular,Menlo,monospace}.calendar-sub-actions{flex-wrap:wrap;gap:.4rem;display:flex}.inline-link{font:inherit;color:var(--primary);cursor:pointer;background:0 0;border:0;padding:0;text-decoration:underline;display:inline}.inline-link:disabled{opacity:.55;cursor:not-allowed}
main.plans-page{max-width:980px}.plans-grid{grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:1rem;margin:1rem 0 1.5rem;display:grid}.plan-card{background:var(--surface);border:1px solid var(--border);box-shadow:var(--shadow);border-radius:16px;flex-direction:column;gap:.5rem;padding:1.5rem;display:flex}.plan-card.current{border-color:var(--primary);box-shadow:var(--focus)}.plan-card h2{font-size:var(--fs-lg);margin:0}.plan-price{font-size:var(--fs-xl);margin:0;font-weight:700}.plan-card ul{font-size:var(--fs-md);color:var(--text-soft);margin:.25rem 0 0;padding-left:1.1rem}.plans-contact{flex-direction:column;align-items:flex-start;gap:.75rem;display:flex}.plan-summary{margin-bottom:1.25rem}.plan-summary p{margin:.25rem 0}.assign-plan{flex-wrap:wrap;align-items:flex-end;gap:.75rem;display:flex}.assign-plan label{flex:180px}
