:root{color:#1a1a1a;background:#f5f5f5;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-synthesis:none;text-rendering:optimizeLegibility}*{box-sizing:border-box}body{margin:0;min-width:320px}a{color:#0e406b;font-weight:700;text-decoration:none}a:hover{text-decoration:underline}button,input,select{font:inherit}.topbar{display:flex;width:min(1120px,calc(100% - 32px));min-height:64px;align-items:center;justify-content:space-between;gap:18px;margin:0 auto;padding:14px 0 0}.brand-link{color:#0e406b;font-weight:950}.main-nav{display:flex;flex-wrap:wrap;gap:8px;justify-content:flex-end}.main-nav a{min-height:34px;border-radius:6px;padding:8px 10px;color:#37506a;font-size:.88rem;font-weight:850}.main-nav a[aria-current=page]{color:#fff;background:#0e406b}.app-shell{width:min(1120px,calc(100% - 32px));margin:0 auto;padding:40px 0}.app-shell.narrow{width:min(720px,calc(100% - 32px))}.workspace,.passport-view,.admin-view{display:grid;grid-template-columns:minmax(0,.9fr) minmax(320px,1.1fr);gap:32px;align-items:start}.intro-pane,.passport-header,.status-pane{padding:18px 0}.eyebrow{margin:0 0 10px;color:#159ed9;font-size:.78rem;font-weight:800;letter-spacing:0;text-transform:uppercase}h1,h2,p{margin-top:0}h1{max-width:720px;margin-bottom:16px;color:#0e406b;font-size:3.4rem;line-height:1;letter-spacing:0}.lede{max-width:660px;color:#4a5563;font-size:1.05rem;line-height:1.65}.signal-list,.passport-fields{display:grid;gap:12px;margin:28px 0 0}.signal-list div,.passport-fields div{display:grid;gap:4px;border-top:1px solid rgba(14,64,107,.16);padding-top:12px}dt{color:#5a6675;font-size:.78rem;font-weight:800;text-transform:uppercase}dd{margin:0;overflow-wrap:anywhere;color:#142033;line-height:1.45}.form-pane,.passport-panel,.admin-panel,.status-pane{border:1px solid rgba(14,64,107,.16);border-radius:8px;background:#fff;box-shadow:0 18px 45px #0e406b14}.form-pane{display:grid;gap:18px;padding:24px}label{display:grid;gap:8px;color:#243246;font-weight:800}label span{font-size:.88rem}input,select{width:100%;min-height:46px;border:1px solid rgba(14,64,107,.22);border-radius:6px;padding:10px 12px;color:#152033;background:#fff}input:focus,select:focus{border-color:#01a6fd;outline:3px solid rgba(1,166,253,.18)}.field-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}.short-field{max-width:120px}.primary-action,.secondary-action{display:inline-flex;min-height:46px;align-items:center;justify-content:center;border-radius:6px;padding:0 18px;font-weight:900}.primary-action{border:0;color:#fff;background:#0e406b;cursor:pointer}.primary-action:hover:not(:disabled){background:#159ed9}.primary-action:disabled{cursor:wait;opacity:.68}.secondary-action{width:fit-content;border:1px solid rgba(14,64,107,.22);color:#0e406b;background:#fff}.secondary-action.compact-link{min-height:36px;padding:0 12px;font-size:.86rem}.action-row{display:flex;flex-wrap:wrap;gap:10px;margin-top:18px}.action-row.compact{margin-top:8px}.feedback{border-radius:6px;padding:14px}.feedback p{margin-bottom:8px}.feedback.success{border:1px solid rgba(34,139,94,.28);background:#eefaf4}.feedback.error{border:1px solid rgba(176,61,42,.28);background:#fff3ef}.status-pane,.passport-panel,.admin-panel{padding:24px}.passport-panel,.admin-panel{min-height:320px}.empty-state{color:#5a6675;line-height:1.6}.support-note{display:grid;gap:4px;margin-top:18px;border:1px solid rgba(14,64,107,.14);border-radius:8px;padding:12px;color:#4a5563;background:#f8fbfd}.support-note strong{color:#0e406b}@media(max-width:820px){.workspace,.passport-view,.field-grid{grid-template-columns:1fr}.topbar{display:grid;justify-items:start}.main-nav{justify-content:flex-start}h1{font-size:2.45rem}.app-shell{padding:24px 0}}.passport-status{margin-bottom:18px;color:#0e406b;font-weight:900}.public-passport[data-status=missing] .passport-status,.public-passport[data-status=error] .passport-status{color:#9b2f20}.inline-form{display:grid;gap:16px;margin-top:24px}.secondary-button{min-height:42px;width:fit-content;margin-top:18px;border:1px solid rgba(14,64,107,.22);border-radius:6px;padding:0 16px;color:#0e406b;background:#fff;font-weight:900;cursor:pointer}.secondary-button.compact{min-height:36px;margin-top:0;padding:0 12px;font-size:.86rem}.secondary-button:disabled{cursor:wait;opacity:.68}.private-passport[data-status=anonymous] .passport-status,.private-passport[data-status=missing] .passport-status,.private-passport[data-status=error] .passport-status,.admin-panel[data-status=anonymous] .passport-status,.admin-panel[data-status=forbidden] .passport-status,.admin-panel[data-status=error] .passport-status{color:#9b2f20}.missions-section,.assignments-section,.activity-section{margin-top:28px;border-top:1px solid rgba(14,64,107,.16);padding-top:22px}.section-heading{display:flex;gap:18px;align-items:start;justify-content:space-between}.section-heading h2{margin-bottom:0;color:#0e406b;font-size:1.35rem;line-height:1.15}.mission-summary{max-width:220px;margin:0;color:#5a6675;font-size:.9rem;font-weight:700;line-height:1.45;text-align:right}.mission-list{display:grid;gap:0;margin-top:18px}.mission-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:18px;align-items:center;border-top:1px solid rgba(14,64,107,.12);padding:18px 0}.mission-row:first-child{border-top:0;padding-top:0}.mission-copy{display:grid;gap:8px}.mission-title-line{display:flex;gap:10px;align-items:center;justify-content:space-between}.mission-title-line h3{margin:0;color:#142033;font-size:1rem;line-height:1.3}.mission-copy p{margin:0;color:#4a5563;line-height:1.5}.mission-meta{display:flex;flex-wrap:wrap;gap:8px}.mission-meta span,.mission-state,.mission-done{min-height:26px;border-radius:999px;padding:5px 9px;font-size:.74rem;font-weight:900;line-height:1.1}.mission-meta span{color:#37506a;background:#eef4f8}.mission-state{flex:0 0 auto;color:#0e406b;background:#e7f6fd}.mission-state[data-state=COMPLETADA],.mission-state[data-state=VERIFICADA],.mission-done{color:#1d6b48;background:#eaf8f1}.mission-state[data-state=EN_REVISION]{color:#76540d;background:#fff4d8}.mission-state[data-state=RECHAZADA]{color:#9b2f20;background:#fff3ef}.mission-button{min-height:38px;min-width:118px;border:0;border-radius:6px;padding:0 14px;color:#fff;background:#0e406b;font-weight:900;cursor:pointer}.mission-button:hover:not(:disabled){background:#159ed9}.mission-button:disabled{cursor:wait;opacity:.68}.activity-list{display:grid;gap:0;margin:18px 0 0;padding:0;list-style:none}.activity-list li{display:grid;grid-template-columns:18px minmax(0,1fr);gap:12px;border-top:1px solid rgba(14,64,107,.12);padding:16px 0}.activity-list li:first-child{border-top:0;padding-top:0}.activity-marker{width:10px;height:10px;margin-top:6px;border:2px solid #159ed9;border-radius:999px;background:#fff}.activity-copy{display:grid;gap:6px}.activity-title-line{display:flex;gap:10px;align-items:baseline;justify-content:space-between}.activity-title-line h3{margin:0;color:#142033;font-size:.98rem;line-height:1.3}.activity-title-line span{flex:0 0 auto;color:#5a6675;font-size:.78rem;font-weight:800}.activity-copy p{margin:0;color:#4a5563;line-height:1.5}.assignment-summary{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin:18px 0 0}.assignment-summary div{display:grid;gap:4px;border:1px solid rgba(14,64,107,.14);border-radius:8px;padding:12px;background:#f8fbfd}.assignment-summary dt{color:#5a6675;font-size:.76rem;font-weight:900;line-height:1.2;text-transform:uppercase}.assignment-summary dd{margin:0;color:#0e406b;font-size:1.6rem;font-weight:950;line-height:1}.assignment-form{display:grid;grid-template-columns:minmax(0,1fr) 92px auto;gap:12px;align-items:end;margin-top:18px}.confirmation-line{grid-column:1 / -1;display:flex;min-height:0;flex-direction:row;gap:10px;align-items:flex-start;border:1px solid rgba(14,64,107,.16);border-radius:8px;padding:12px;color:#243246;background:#f8fbfd}.confirmation-line input{width:18px;min-height:18px;margin-top:2px;flex:0 0 auto}.confirmation-line span,.assignment-preview{color:#4a5563;font-size:.9rem;font-weight:700;line-height:1.45}.assignment-preview{grid-column:1 / 3;margin:0}.compact-project-list{margin-top:18px}.assignment-history{margin-top:8px}.review-list{display:grid;gap:0;margin-top:18px}.review-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:18px;align-items:start;border-top:1px solid rgba(14,64,107,.12);padding:18px 0}.review-row:first-child{border-top:0;padding-top:0}.review-copy{display:grid;gap:12px}.review-copy p{margin:0;color:#4a5563;line-height:1.5}.review-facts{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px 14px;margin:0}.review-facts div{display:grid;gap:3px}.review-actions{display:grid;gap:10px;justify-items:end}.metric-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-top:18px}.metric-item{display:grid;gap:8px;min-height:96px;border:1px solid rgba(14,64,107,.14);border-radius:8px;padding:14px;background:#f8fbfd}.metric-item span{color:#5a6675;font-size:.78rem;font-weight:900;line-height:1.25;text-transform:uppercase}.metric-item strong{color:#0e406b;font-size:2rem;line-height:1}.admin-actions-row{display:flex;flex-wrap:wrap;gap:12px;margin-top:18px}.admin-subsection{margin-top:28px;border-top:1px solid rgba(14,64,107,.16);padding-top:22px}.activity-table{display:grid;margin-top:18px}.activity-table-row{display:grid;grid-template-columns:minmax(0,1.4fr) .8fr .6fr .8fr;gap:12px;align-items:center;border-top:1px solid rgba(14,64,107,.12);padding:12px 0}.ops-table-row{grid-template-columns:minmax(0,1.2fr) minmax(120px,.55fr) minmax(0,.9fr) minmax(0,.8fr)}.activity-table-row:first-child{border-top:0}.activity-table-row div{display:grid;gap:3px;min-width:0;color:#243246;font-weight:800}.activity-table-row strong{overflow-wrap:anywhere;color:#142033}.activity-table-row span{overflow-wrap:anywhere;color:#5a6675;font-size:.84rem;font-weight:700}.admin-filter-form{display:grid;grid-template-columns:minmax(0,1fr) minmax(160px,.45fr) auto;gap:12px;align-items:end;margin-top:18px}.citizen-list{display:grid;margin-top:18px}.citizen-row{display:grid;grid-template-columns:minmax(0,1.4fr) .7fr .7fr minmax(0,1fr);gap:14px;align-items:center;border-top:1px solid rgba(14,64,107,.12);padding:14px 0}.citizen-row:first-child{border-top:0}.citizen-row div,.citizen-main{display:grid;gap:4px;min-width:0}.citizen-row strong{overflow-wrap:anywhere;color:#142033}.citizen-row span{overflow-wrap:anywhere;color:#5a6675;font-size:.84rem;font-weight:700}.mission-admin-form{display:grid;grid-template-columns:minmax(130px,.65fr) minmax(0,1fr) minmax(130px,.5fr) 90px;gap:12px;align-items:end;margin-top:18px}.project-admin-form{display:grid;grid-template-columns:repeat(4,minmax(120px,1fr));gap:12px;align-items:end;margin-top:18px}.mission-description-field{grid-column:span 3}.project-description-field{grid-column:span 2}.project-description-field.wide{grid-column:span 3}.checkbox-line{display:flex;min-height:46px;flex-direction:row;gap:8px;align-items:center}.checkbox-line input{width:18px;min-height:18px}.mission-admin-list,.project-list{display:grid;margin-top:20px}.mission-admin-row,.project-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:18px;align-items:start;border-top:1px solid rgba(14,64,107,.12);padding:18px 0}.mission-admin-row:first-child,.project-row:first-child{border-top:0}.mission-admin-fields,.project-copy{display:grid;gap:12px}.project-copy p{margin:0;color:#4a5563;line-height:1.5}.mission-admin-inline{display:grid;grid-template-columns:minmax(120px,.6fr) 90px minmax(120px,.4fr);gap:12px;align-items:end}.project-admin-inline{display:grid;grid-template-columns:repeat(3,minmax(120px,1fr));gap:12px;align-items:end}.project-admin-inline.metrics{grid-template-columns:minmax(140px,1fr) repeat(4,minmax(100px,.7fr))}@media(max-width:640px){.section-heading,.mission-title-line,.activity-title-line{display:grid;justify-content:stretch}.mission-summary{max-width:none;text-align:left}.mission-row,.review-row,.review-facts,.metric-grid,.activity-table-row,.ops-table-row,.admin-filter-form,.citizen-row,.mission-admin-form,.project-admin-form,.mission-admin-row,.mission-admin-inline,.project-admin-inline,.assignment-summary,.assignment-form{grid-template-columns:1fr}.mission-description-field,.project-description-field,.project-description-field.wide,.assignment-preview{grid-column:auto}.review-actions{justify-items:start}.mission-button,.mission-done{width:fit-content}}
