:root{--ras-blue-vibrant:#026ef2;--ras-navy:#012550;--ras-blue-light:#a9d0ff;--ras-black:#000;--ras-white:#fff;--ras-navy-hover:#013a73;--color-primary:var(--ras-navy);--color-primary-on:#fff;--color-accent:var(--ras-blue-vibrant);--bg-page:#fff;--bg-subtle:#f0f0f0;--bg-inverse:var(--ras-navy);--color-text:var(--ras-navy);--color-text-muted:#757575;--border-default:#c2c2c2;--border-strong:#b0b0b0;--ui-success:#1b8a5a;--ui-danger:#ed1c24;--ui-warning:#b26a00;--ui-info:#026ef2;--ui-danger-text:#a3121a;--ui-warning-text:#6b4200;--ui-success-text:#0f5c3b;--gray-100:#f0f0f0;--gray-300:#c2c2c2;--gray-400:#b0b0b0;--gray-500:#8f8f8f;--gray-600:#757575;--gray-700:#6e6e6e;--font-display:"Neue Haas Grotesk Display Pro","Space Grotesk","Archivo","Helvetica Neue",Arial,sans-serif;--font-body:"Pragmatica","Inter","Helvetica Neue",Arial,sans-serif;--text-display:clamp(2.25rem,1.25rem + 5vw,4rem);--text-h1:clamp(1.75rem,1.15rem + 3vw,3rem);--text-h2:clamp(1.5rem,1.1rem + 2vw,2.25rem);--text-h3:clamp(1.25rem,1rem + 1.25vw,1.75rem);--text-h4:clamp(1.125rem,1rem + .6vw,1.375rem);--text-body-lg:clamp(1.0625rem,1rem + .4vw,1.25rem);--text-body:1rem;--text-body-sm:.875rem;--text-caption:.75rem;--text-input:1rem;--space-1:4px;--space-2:8px;--space-3:12px;--space-4:16px;--space-5:24px;--space-6:32px;--space-7:48px;--space-8:64px;--space-9:96px;--space-10:128px;--radius-sm:4px;--radius-md:8px;--radius-lg:16px;--radius-pill:9999px;--elev-1:0 1px 2px #01255014;--elev-2:0 4px 12px #0125501a;--elev-3:0 8px 24px #01255024;--elev-4:0 16px 40px #0125502e;--focus-ring:0 0 0 3px #026ef273;--transition:.15s ease-out;--container-max:1280px;--container-prose:720px;--gutter:var(--space-4);--tap-min:44px;--control-h:48px;--tabbar-h:60px;--dock-h:76px;--safe-top:env(safe-area-inset-top,0px);--safe-bottom:env(safe-area-inset-bottom,0px)}@media (width>=480px){:root{--gutter:var(--space-5)}}*,:after,:before{box-sizing:border-box}body,html{margin:0;padding:0}html{-webkit-text-size-adjust:100%}body{font-family:var(--font-body);font-size:var(--text-body);color:var(--color-text);background:var(--bg-page);-webkit-font-smoothing:antialiased;text-rendering:optimizelegibility;overscroll-behavior-y:contain;-webkit-tap-highlight-color:#026ef226;line-height:1.6;overflow-x:hidden}h1,h2,h3,h4{font-family:var(--font-display);letter-spacing:-.01em;margin:0 0 var(--space-4);text-wrap:balance;line-height:1.15}h1{font-size:var(--text-h1)}h2{font-size:var(--text-h2)}h3{font-size:var(--text-h3)}h4{font-size:var(--text-h4)}a{color:var(--ras-navy);text-underline-offset:2px;text-decoration:underline}a:hover{color:var(--ras-blue-vibrant)}img,svg,video{max-width:100%}.tnum{font-variant-numeric:tabular-nums;font-feature-settings:"tnum" 1}.container{max-width:var(--container-max);padding-inline:var(--gutter);width:100%;margin:0 auto}.skip-link{z-index:100;color:var(--ras-navy);padding:var(--space-3) var(--space-4);border-radius:0 0 var(--radius-md) 0;background:#fff;font-weight:700;position:absolute;top:0;left:-9999px}.skip-link:focus{box-shadow:var(--focus-ring);left:0}.btn{justify-content:center;align-items:center;gap:var(--space-2);min-height:var(--tap-min);border-radius:var(--radius-sm);font:600 var(--text-body)/1.2 var(--font-body);cursor:pointer;transition:var(--transition);-webkit-user-select:none;user-select:none;touch-action:manipulation;border:1.5px solid #0000;padding:12px 20px;text-decoration:none;display:inline-flex}.btn:focus-visible{box-shadow:var(--focus-ring);outline:none}.btn:disabled{background:var(--gray-300);color:var(--gray-500);cursor:not-allowed;border-color:#0000}.btn-primary{background:var(--ras-navy);color:#fff}.btn-primary:hover:not(:disabled){background:var(--ras-navy-hover)}.btn-secondary{background:var(--ras-blue-vibrant);color:#fff}.btn-secondary:hover:not(:disabled){background:#0a5fd0}.btn-ghost{border-color:var(--ras-navy);color:var(--ras-navy);background:0 0}.btn-ghost:hover:not(:disabled){background:var(--gray-100)}.btn-danger{border-color:var(--ui-danger);color:var(--ui-danger-text);background:0 0}.btn-sm{min-height:var(--tap-min);font-size:var(--text-body-sm);padding:8px 14px}.btn-block{width:100%}.control,.field input,.field select,.field textarea{width:100%;min-height:var(--control-h);border:1px solid var(--border-strong);border-radius:var(--radius-sm);font-family:var(--font-body);font-size:var(--text-input);color:var(--color-text);appearance:none;background:#fff;padding:10px 12px;font-weight:400;line-height:1.3;display:block}.field textarea{resize:vertical;min-height:88px}.field select,select.control{background-image:linear-gradient(45deg,transparent 50%,var(--ras-navy) 50%),linear-gradient(135deg,var(--ras-navy) 50%,transparent 50%);background-position:calc(100% - 18px),calc(100% - 13px);background-repeat:no-repeat;background-size:5px 5px,5px 5px;padding-right:36px}.control:focus,.field input:focus,.field select:focus,.field textarea:focus{border-color:var(--ras-blue-vibrant);box-shadow:var(--focus-ring);outline:none}.field{margin-bottom:var(--space-4);display:block}.field>.lbl{font-size:var(--text-body-sm);color:var(--ras-navy);margin-bottom:6px;font-weight:600;display:block}.field-row{gap:var(--space-3);grid-template-columns:1fr;display:grid}@media (width>=480px){.field-row{grid-template-columns:1fr 1fr}}.card{border:1px solid var(--border-default);border-radius:var(--radius-md);box-shadow:var(--elev-1);padding:var(--space-4);background:#fff}@media (width>=768px){.card{padding:var(--space-5);box-shadow:var(--elev-2)}}.chip{border-radius:var(--radius-pill);font-size:var(--text-caption);text-transform:uppercase;letter-spacing:.04em;white-space:nowrap;align-items:center;gap:6px;padding:3px 10px;font-weight:700;display:inline-flex}.chip-info{background:var(--ras-blue-light);color:var(--ras-navy)}.chip-success{color:var(--ui-success-text);background:#d7f0e4}.chip-warning{color:var(--ui-warning-text);background:#f5e3c3}.chip-danger{color:var(--ui-danger-text);background:#fbd5d7}.chip-neutral{background:var(--gray-100);color:var(--gray-700)}.dock{z-index:40;align-items:center;gap:var(--space-3);padding:var(--space-3) var(--gutter);padding-bottom:calc(var(--space-3) + var(--safe-bottom));-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border-top:1px solid var(--border-default);background:#fffffff5;display:flex;position:fixed;bottom:0;left:0;right:0;box-shadow:0 -4px 16px #01255014}.dock--tabbar{bottom:calc(var(--tabbar-h) + var(--safe-bottom));padding-bottom:var(--space-3)}.dock>.grow{flex:1}@media (width>=768px){.dock{box-shadow:none;-webkit-backdrop-filter:none;backdrop-filter:none;margin-bottom:var(--space-5);background:0 0;border:0;padding:0;position:static}.dock--tabbar{bottom:auto}.dock>.grow{flex:0 auto}}.sheet-overlay{z-index:50;background:#01255073;justify-content:center;align-items:flex-end;display:flex;position:fixed;inset:0}.sheet{background:#fff;flex-direction:column;width:100%;height:100dvh;max-height:100dvh;animation:.22s ease-out sheet-in;display:flex}@keyframes sheet-in{0%{opacity:.6;transform:translateY(3%)}to{opacity:1;transform:none}}.sheet__head{justify-content:space-between;align-items:center;gap:var(--space-3);padding:calc(var(--space-3) + var(--safe-top)) var(--gutter) var(--space-3);border-bottom:1px solid var(--border-default);background:#fff;display:flex}.sheet__body{-webkit-overflow-scrolling:touch;padding:var(--space-4) var(--gutter);flex:1;overflow-y:auto}.sheet__actions{gap:var(--space-3);padding:var(--space-3) var(--gutter);padding-bottom:calc(var(--space-3) + var(--safe-bottom));margin:var(--space-4) calc(var(--gutter)*-1) calc(var(--space-4)*-1);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border-top:1px solid var(--border-default);background:#fffffff5;display:flex;position:sticky;bottom:0}.sheet__actions>.btn{flex:1}@media (width>=768px){.sheet-overlay{padding:var(--space-5);align-items:flex-start;overflow-y:auto}.sheet{border-radius:var(--radius-lg);max-width:900px;height:auto;max-height:none;box-shadow:var(--elev-4);margin-top:var(--space-6);animation:none}}.tbl{border-collapse:collapse;width:100%}.tbl td,.tbl th{text-align:left;padding:var(--space-3);border-bottom:1px solid var(--border-default);font-size:var(--text-body-sm)}.tbl td.r,.tbl th.r{text-align:right}.tbl td.c,.tbl th.c{text-align:center}@media (width<=767px){.tbl--cards,.tbl--cards tbody,.tbl--cards td,.tbl--cards tr{width:100%;display:block}.tbl--cards thead{display:none}.tbl--cards tr{border:1px solid var(--border-default);border-radius:var(--radius-md);padding:var(--space-3);margin-bottom:var(--space-3);box-shadow:var(--elev-1);background:#fff}.tbl--cards td{gap:var(--space-3);border:0;grid-template-columns:minmax(6.5rem,40%) 1fr;align-items:baseline;padding:4px 0;display:grid}.tbl--cards td:before{content:attr(data-lbl);font-size:var(--text-caption);text-transform:uppercase;letter-spacing:.04em;color:var(--color-text-muted);font-weight:700}.tbl--cards td.c,.tbl--cards td.r{text-align:left}.tbl--cards td>.acts,.tbl--cards td>.btn,.tbl--cards td>.chip,.tbl--cards td>select{justify-self:start}.tbl--cards td>select{width:auto;min-width:12rem}}.tbl-scroll{-webkit-overflow-scrolling:touch;overflow-x:auto}.muted{color:var(--color-text-muted)}.small{font-size:var(--text-body-sm)}.caption{font-size:var(--text-caption)}.stack>*+*{margin-top:var(--space-3)}.row-between{justify-content:space-between;align-items:center;gap:var(--space-3);display:flex}.row-wrap{flex-wrap:wrap}.hscroll{gap:var(--space-3);-webkit-overflow-scrolling:touch;scroll-snap-type:x proximity;padding-bottom:var(--space-2);display:flex;overflow-x:auto}.hscroll>*{scroll-snap-align:start;flex:none}.eyebrow{text-transform:uppercase;letter-spacing:.12em;font-weight:700;font-size:var(--text-caption);color:var(--ras-blue-vibrant);margin:0 0 var(--space-2)}.note{border-left:3px solid var(--border-strong);padding:var(--space-2) var(--space-3);background:var(--gray-100);border-radius:var(--radius-sm);font-size:var(--text-body-sm)}.note--warn{border-left-color:var(--ui-warning);color:var(--ui-warning-text)}.note--danger{border-left-color:var(--ui-danger);color:var(--ui-danger-text)}.note--info{border-left-color:var(--ras-blue-vibrant)}.pad-tabbar{padding-bottom:calc(var(--tabbar-h) + var(--safe-bottom) + var(--space-5))}.pad-dock{padding-bottom:calc(var(--dock-h) + var(--tabbar-h) + var(--safe-bottom) + var(--space-4))}@media (width>=768px){.pad-dock,.pad-tabbar{padding-bottom:0}}@media (prefers-reduced-motion:reduce){*,:after,:before{transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}
