:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light dark;--color-page:#f4f3ed;--color-surface:#fff;--color-subtle:#eceee5;--color-text:#232b23;--color-muted:#596253;--color-border:#ccd1c5;--color-input-border:#747e6d;--color-accent:#34533c;--color-on-accent:#fff;--color-focus:#365ac4;--color-up:#27633d;--color-down:#a43235;--color-flat:#596253;--color-shadow:#18291d0d;--space-1:.25rem;--space-2:.5rem;--space-3:.75rem;--space-4:1rem;--space-5:1.5rem;--space-6:2rem;--space-7:3rem;--space-8:4rem;--radius-control:.75rem;--radius-tile:1.5rem;--radius-round:999px;--gutter:var(--space-4);--tile-padding-small:var(--space-4);--tile-padding-large:var(--space-5);--shadow-surface:0 4px 24px var(--color-shadow);--font-body:ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--font-small:.875rem;--font-body-size:1rem;--font-label:.75rem;--font-title:clamp(1.75rem, 4vw, 2.5rem);--font-value-small:1.5rem;--font-value:clamp(1.5rem, 3vw, 2rem);--line-body:1.6;--line-heading:1.15;--duration-fast:.16s;--duration-spin:.8s;--ease:ease-out;--content-width:72rem;--auth-width:29rem;--mock-unit:6rem}@media (prefers-color-scheme:dark){:root{--lightningcss-light: ;--lightningcss-dark:initial;--color-page:#171d19;--color-surface:#222b25;--color-subtle:#2c372e;--color-text:#edf1e7;--color-muted:#b5c0b0;--color-border:#455245;--color-input-border:#82917e;--color-accent:#b7d4ab;--color-on-accent:#1e3023;--color-focus:#a9baff;--color-up:#9ed7a8;--color-down:#ffaaa5;--color-flat:#b5c0b0;--color-shadow:#00000026}}:root{--board-unit:8rem;--dialog-width:38rem;--dialog-backdrop:#10181088;--menu-width:10rem}*{box-sizing:border-box}body{background:var(--color-page);color:var(--color-text);font-family:var(--font-body);font-size:var(--font-body-size);line-height:var(--line-body);margin:0}button,input{font:inherit}a{color:var(--color-accent);text-underline-offset:var(--space-1)}button,a,input{-webkit-tap-highlight-color:transparent}:focus-visible{outline:3px solid var(--color-focus);outline-offset:4px}h1,h2,h3,p{margin:0 0 var(--space-4)}h1{font-size:var(--font-title);line-height:var(--line-heading);letter-spacing:-.035em;font-weight:650}h2{font-size:var(--font-value);line-height:var(--line-heading)}h3{font-size:var(--font-body-size)}#app{flex-direction:column;min-height:100svh;display:flex}.app-header{width:min(100%, var(--content-width));padding:var(--space-6) var(--space-5);justify-content:space-between;align-items:center;gap:var(--space-4);margin-inline:auto;display:flex}.brand{align-items:center;gap:var(--space-3);color:var(--color-text);min-height:44px;font-weight:700;text-decoration:none;display:inline-flex}.brand-mark{grid-template-columns:1fr 1fr;gap:3px;width:28px;height:28px;display:grid}.brand-mark i{background:var(--color-accent);border-radius:var(--space-1)}.brand-mark i:nth-child(2){opacity:.55}.header-note,.muted,small{color:var(--color-muted)}.header-note{font-size:var(--font-small)}main{width:100%;padding:var(--space-7) var(--space-4);flex:1}main:focus{outline:none}.surface{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-tile);box-shadow:var(--shadow-surface)}.auth-card{max-width:var(--auth-width);padding:var(--space-6);margin:0 auto}.auth-card>.muted{margin-bottom:var(--space-6)}.eyebrow{color:var(--color-muted);font-size:var(--font-label);letter-spacing:.08em;text-transform:uppercase;font-weight:700}.button{border-radius:var(--radius-control);min-height:48px;padding:var(--space-3) var(--space-5);justify-content:center;align-items:center;gap:var(--space-2);cursor:pointer;transition:background var(--duration-fast) var(--ease);border:1px solid #0000;font-weight:650;text-decoration:none;display:inline-flex}.button--primary{color:var(--color-on-accent);background:var(--color-accent)}.button--secondary{background:var(--color-surface);color:var(--color-text);border-color:var(--color-input-border)}.button--secondary:hover:not(:disabled),.icon-button:hover{background:var(--color-subtle)}.button--primary:hover:not(:disabled){text-underline-offset:var(--space-1);text-decoration:underline}button:disabled{opacity:.6;cursor:wait}.full-width{width:100%}.field{gap:var(--space-2);margin-bottom:var(--space-5);flex-direction:column;display:flex}label{font-size:var(--font-small);font-weight:650}input{width:100%;min-height:48px;padding:var(--space-3);background:var(--color-surface);color:var(--color-text);border:1px solid var(--color-input-border);border-radius:var(--radius-control)}small{font-size:var(--font-small)}.divider{align-items:center;gap:var(--space-4);margin:var(--space-5) 0;color:var(--color-muted);font-size:var(--font-small);display:flex}.divider:before,.divider:after{content:"";background:var(--color-border);flex:1;height:1px}.auth-switch{text-align:center;margin:var(--space-5) 0 0;font-size:var(--font-small)}.auth-switch a{padding-block:var(--space-2);display:inline-block}.empty-state{max-width:42rem;padding:var(--space-7);margin:auto}.empty-state p{overflow-wrap:anywhere}.empty-state .button{margin-top:var(--space-4)}.app-footer{text-align:center;color:var(--color-muted);padding:var(--space-6) var(--space-4);font-size:var(--font-small)}.app-footer span{display:block}.toast{align-items:center;gap:var(--space-2);margin-bottom:var(--space-5);padding:var(--space-3);border-radius:var(--radius-control);border:1px solid;display:flex}.toast--error{color:var(--color-down)}.toast--success{color:var(--color-up)}.toast p{font-size:var(--font-small);flex:1;margin:0}.icon-button{color:inherit;border-radius:var(--radius-control);cursor:pointer;background:0 0;border:0;min-width:44px;min-height:44px}.offline-banner{padding:var(--space-3);text-align:center;background:var(--color-subtle);margin:0}.debug-banner{padding:var(--space-3);border:1px solid var(--color-border);background:var(--color-subtle)}.debug-banner-production{color:#5c3b00;background:#fff3cd;border-color:#9a6700;font-weight:700}.sr-only{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.skip-link{top:var(--space-3);left:var(--space-3);padding:var(--space-3);background:var(--color-surface);z-index:10;position:fixed;transform:translateY(-200%)}.skip-link:focus{transform:none}@media (width<=480px){.header-note{display:none}main{padding-top:var(--space-4)}.auth-card,.empty-state{padding:var(--space-5)}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition:none!important}}textarea,select{font:inherit;width:100%;min-height:48px;padding:var(--space-3);background:var(--color-surface);color:var(--color-text);border:1px solid var(--color-input-border);border-radius:var(--radius-control)}textarea{resize:vertical}button:disabled{cursor:not-allowed}.board-page{max-width:var(--content-width);margin:auto}.board-heading{justify-content:space-between;align-items:center;gap:var(--gutter);margin-bottom:var(--space-6);display:flex}.board-heading h1,.board-heading .eyebrow{margin-bottom:var(--space-2)}.board-save-status{color:var(--color-muted);font-size:var(--font-small);margin:0}.board-actions,.dialog-actions{gap:var(--space-3);flex-wrap:wrap;display:flex}.pipeline-controls{margin-bottom:var(--space-6);padding:var(--space-4)}.pipeline-controls .eyebrow{margin-bottom:var(--space-3)}.pipeline-controls .board-save-status,.pipeline-error{margin:var(--space-3) 0 0}.pipeline-error{color:var(--color-down);overflow-wrap:anywhere}.bento-grid{gap:var(--gutter);grid-template-columns:repeat(8,minmax(0,1fr));align-items:stretch;display:grid}.tile-frame{grid-column:span var(--tile-w,2);min-height:calc(var(--tile-h,2) * var(--board-unit));min-width:0;padding:var(--tile-padding-small);position:relative}.tile-frame:focus-within{z-index:1}.tile-header{justify-content:space-between;align-items:center;gap:var(--space-2);margin-bottom:var(--space-2);display:flex}.tile-header h2{font-size:var(--font-body-size);overflow-wrap:anywhere;margin:0}.tile-menu{position:relative}.tile-menu summary{letter-spacing:.05em;justify-content:center;align-items:center;list-style:none;display:flex}.tile-menu summary::-webkit-details-marker{display:none}.tile-menu-actions{z-index:2;min-width:var(--menu-width);padding:var(--space-2);background:var(--color-surface);border:1px solid var(--color-input-border);border-radius:var(--radius-control);box-shadow:var(--shadow-surface);position:absolute;right:0}.tile-menu-actions button{width:100%;padding:var(--space-3);min-height:44px;color:var(--color-text);text-align:left;cursor:pointer;border-radius:var(--radius-control);background:0 0;border:0;display:block}.tile-menu-actions button:hover{background:var(--color-subtle)}.tile-content{overflow-wrap:anywhere}.tile-subtitle,.quote-time,.quote-source,.tile-state-description{font-size:var(--font-small);color:var(--color-muted)}.tile-subtitle{min-height:2.8em;margin-bottom:var(--space-3);line-height:1.4}.quote-status{align-items:center;gap:var(--space-2);font-size:var(--font-small);border:1px solid var(--color-border);border-radius:var(--radius-round);padding:var(--space-1) var(--space-3);margin-bottom:var(--space-4);display:inline-flex}.quote-price,.quote-placeholder{font-size:var(--font-value);font-variant-numeric:tabular-nums;letter-spacing:-.035em;margin-bottom:var(--space-2);font-weight:650}.quote-direction{font-size:var(--font-small);font-variant-numeric:tabular-nums;font-weight:650}.quote-direction span:last-child{white-space:nowrap}.up{color:var(--color-up)}.down{color:var(--color-down)}.flat{color:var(--color-flat)}.quote-content--loading .quote-placeholder{background:var(--color-subtle);border-radius:var(--radius-control);color:var(--color-muted)}.quote-content--live .quote-status{border-color:var(--color-up)}.quote-content--delayed .quote-status{background:var(--color-subtle)}.quote-content--closed .quote-status{border-style:dashed}.quote-content--stale .quote-status{border-width:2px}.quote-content--unavailable .quote-status{border-radius:var(--radius-control)}.quote-content--error .quote-status{border-color:var(--color-down);color:var(--color-down);border-radius:var(--radius-control)}.quote-time{margin-bottom:var(--space-2)}.quote-source{margin:0}.note-text{white-space:pre-wrap}.board-attribution{margin-top:var(--space-6);font-size:var(--font-small);color:var(--color-muted)}.app-dialog{width:min(calc(100% - var(--space-6)), var(--dialog-width));max-height:calc(100svh - var(--space-6));padding:var(--space-5);color:var(--color-text)}.app-dialog::backdrop{background:var(--dialog-backdrop)}.dialog-header{justify-content:space-between;align-items:center;gap:var(--space-3);margin-bottom:var(--space-4);display:flex}.dialog-header h2{margin:0}.palette-type,.palette-group{margin-block:var(--space-5)}.palette-group h4{margin:0 0 var(--space-2);font-size:var(--font-small);color:var(--color-muted)}.palette-group ul{margin:0;padding:0;list-style:none}.palette-group li+li{border-top:1px solid var(--color-border)}.palette-group button{justify-content:space-between;align-items:center;gap:var(--space-4);width:100%;min-height:64px;padding:var(--space-3);text-align:left;color:var(--color-text);border-radius:var(--radius-control);cursor:pointer;background:0 0;border:0;display:flex}.palette-group button:hover:not(:disabled){background:var(--color-subtle)}.palette-group small{display:block}.palette-cap{border:1px solid var(--color-input-border);padding:var(--space-3);border-radius:var(--radius-control)}@media (width<=1023px){.bento-grid{grid-template-columns:repeat(4,minmax(0,1fr))}}@media (width<=599px){.bento-grid{grid-template-columns:minmax(0,1fr)}.tile-frame{grid-column:1}.board-heading{flex-direction:column;align-items:start}.board-actions{width:100%}.board-actions>:first-child{flex:1}}
