.cq-card{position:relative;background:var(--color-cream, #FFFBF5);border:1px solid var(--color-ink-ghost, #C8C4BE);max-width:480px;margin:0 auto;overflow:hidden;animation:cq-slideUp .4s cubic-bezier(.16,1,.3,1)}.cq-card:before{content:"";position:absolute;top:0;left:0;right:0;height:3px;background:linear-gradient(90deg,var(--color-accent, #C4805A) 0%,var(--color-caution, #A68B4B) 100%)}@keyframes cq-slideUp{0%{opacity:0;transform:translateY(16px)}to{opacity:1;transform:translateY(0)}}.cq-card--submitting{pointer-events:none}.cq-card__header{display:flex;justify-content:space-between;align-items:flex-start;padding:1.5rem 1.5rem 1rem;gap:1rem}.cq-card__supplier{flex:1;min-width:0}.cq-card__supplier-name{display:block;font-family:var(--font-display, "Syne", sans-serif);font-size:1.125rem;font-weight:600;color:var(--color-ink, #1A1918);letter-spacing:-.01em;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.cq-card__description{display:block;font-family:var(--font-body, "Source Serif 4", serif);font-size:.875rem;font-style:italic;color:var(--color-ink-faded, #6B6864);margin-top:.25rem}.cq-card__meta{display:flex;flex-direction:column;align-items:flex-end;flex-shrink:0}.cq-card__amount{font-family:var(--font-mono, "JetBrains Mono", monospace);font-size:1.25rem;font-weight:500;color:var(--color-ink, #1A1918);letter-spacing:-.02em}.cq-card__date{font-family:var(--font-body, "Source Serif 4", serif);font-size:.75rem;color:var(--color-ink-muted, #9C9894);margin-top:.25rem}.cq-card__divider{display:flex;align-items:center;justify-content:center;padding:.5rem 1.5rem}.cq-card__divider:before,.cq-card__divider:after{content:"";flex:1;height:1px;background:var(--color-ink-ghost, #C8C4BE)}.cq-card__divider-dot{width:6px;height:6px;background:var(--color-accent, #C4805A);border-radius:50%;margin:0 1rem}.cq-card__question{padding:0 1.5rem 1.25rem;text-align:center}.cq-card__question h3{font-family:var(--font-body, "Source Serif 4", serif);font-size:1.125rem;font-weight:400;color:var(--color-ink, #1A1918);line-height:1.4;margin:0}.cq-card__options{display:grid;grid-template-columns:repeat(2,1fr);gap:.75rem;padding:0 1.5rem 1.5rem}.cq-option{position:relative;display:flex;flex-direction:column;align-items:center;text-align:center;padding:1.25rem 1rem;background:var(--color-paper, #F8F6F3);border:1px solid var(--color-ink-ghost, #C8C4BE);cursor:pointer;transition:all .2s cubic-bezier(.16,1,.3,1);animation:cq-fadeIn .3s cubic-bezier(.16,1,.3,1) backwards}@keyframes cq-fadeIn{0%{opacity:0;transform:scale(.96)}to{opacity:1;transform:scale(1)}}.cq-option:hover{background:var(--color-cream, #FFFBF5);border-color:var(--color-ink-muted, #9C9894);transform:translateY(-2px)}.cq-option:active{transform:translateY(0)}.cq-option--selected{background:var(--color-ink, #1A1918);border-color:var(--color-ink, #1A1918)}.cq-option--selected .cq-option__icon,.cq-option--selected .cq-option__label,.cq-option--selected .cq-option__description{color:var(--color-cream, #FFFBF5)}.cq-option__icon{width:28px;height:28px;color:var(--color-ink-faded, #6B6864);margin-bottom:.75rem;transition:color .2s}.cq-option:hover .cq-option__icon{color:var(--color-accent, #C4805A)}.cq-option--selected .cq-option__icon{color:var(--color-cream, #FFFBF5)}.cq-option__icon svg{width:100%;height:100%}.cq-option__content{display:flex;flex-direction:column;gap:.25rem}.cq-option__label{font-family:var(--font-display, "Syne", sans-serif);font-size:.8125rem;font-weight:600;color:var(--color-ink, #1A1918);letter-spacing:.01em;transition:color .2s}.cq-option__description{font-family:var(--font-body, "Source Serif 4", serif);font-size:.6875rem;font-style:italic;color:var(--color-ink-muted, #9C9894);line-height:1.3;transition:color .2s}.cq-option__check{position:absolute;top:.5rem;right:.5rem;width:16px;height:16px;opacity:0;color:var(--color-positive, #5A7C60);transition:opacity .2s}.cq-option--selected .cq-option__check{opacity:1;color:var(--color-cream, #FFFBF5)}.cq-option__check svg{width:100%;height:100%}.cq-card__other-input{padding:0 1.5rem 1.5rem;animation:cq-fadeIn .3s cubic-bezier(.16,1,.3,1)}.cq-other__label{display:block;font-family:var(--font-display, "Syne", sans-serif);font-size:.6875rem;font-weight:500;color:var(--color-ink-muted, #9C9894);text-transform:uppercase;letter-spacing:.08em;margin-bottom:.75rem}.cq-other__field{display:flex;gap:.5rem}.cq-other__field input{flex:1;padding:.875rem 1rem;background:var(--color-paper, #F8F6F3);border:1px solid var(--color-ink-ghost, #C8C4BE);font-family:var(--font-body, "Source Serif 4", serif);font-size:.9375rem;color:var(--color-ink, #1A1918);transition:all .2s}.cq-other__field input:focus{outline:none;border-color:var(--color-ink, #1A1918);background:var(--color-cream, #FFFBF5)}.cq-other__field input::placeholder{color:var(--color-ink-ghost, #C8C4BE);font-style:italic}.cq-other__submit{width:48px;height:48px;display:flex;align-items:center;justify-content:center;background:var(--color-ink, #1A1918);border:none;color:var(--color-cream, #FFFBF5);cursor:pointer;transition:all .2s}.cq-other__submit:hover:not(:disabled){background:var(--color-ink-light, #2D2B28)}.cq-other__submit:disabled{background:var(--color-ink-ghost, #C8C4BE);cursor:not-allowed}.cq-other__submit svg{width:20px;height:20px}.cq-other__back{display:block;width:100%;padding:.75rem;margin-top:.75rem;background:transparent;border:none;font-family:var(--font-display, "Syne", sans-serif);font-size:.75rem;color:var(--color-ink-faded, #6B6864);cursor:pointer;transition:color .2s}.cq-other__back:hover{color:var(--color-ink, #1A1918)}.cq-card__footer{padding:0 1.5rem 1.25rem;text-align:center}.cq-card__skip{background:transparent;border:none;font-family:var(--font-body, "Source Serif 4", serif);font-size:.8125rem;font-style:italic;color:var(--color-ink-ghost, #C8C4BE);cursor:pointer;transition:color .2s}.cq-card__skip:hover{color:var(--color-ink-faded, #6B6864)}.cq-card__success{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;flex-direction:column;align-items:center;justify-content:center;background:var(--color-cream, #FFFBF5);animation:cq-successIn .3s cubic-bezier(.16,1,.3,1)}@keyframes cq-successIn{0%{opacity:0}to{opacity:1}}.cq-card__success-icon{width:48px;height:48px;color:var(--color-positive, #5A7C60);margin-bottom:.75rem;animation:cq-checkIn .4s cubic-bezier(.34,1.56,.64,1) .1s backwards}@keyframes cq-checkIn{0%{opacity:0;transform:scale(.5)}to{opacity:1;transform:scale(1)}}.cq-card__success-icon svg{width:100%;height:100%}.cq-card__success-text{font-family:var(--font-display, "Syne", sans-serif);font-size:1.25rem;font-weight:600;color:var(--color-ink, #1A1918)}.cq-badge{display:flex;align-items:center;gap:1rem;padding:.875rem 1.25rem;background:linear-gradient(135deg,var(--color-cream, #FFFBF5) 0%,var(--color-paper, #F8F6F3) 100%);border:1px solid var(--color-ink-ghost, #C8C4BE);cursor:pointer;transition:all .25s cubic-bezier(.16,1,.3,1);position:relative;overflow:hidden}.cq-badge:before{content:"";position:absolute;left:0;top:0;bottom:0;width:3px;background:var(--color-accent, #C4805A);animation:cq-pulse 2s ease-in-out infinite}@keyframes cq-pulse{0%,to{opacity:1}50%{opacity:.5}}.cq-badge:hover{border-color:var(--color-ink-muted, #9C9894);transform:translate(4px);box-shadow:-4px 0 0 var(--color-accent, #C4805A)}.cq-badge__icon{width:20px;height:20px;color:var(--color-accent, #C4805A);flex-shrink:0}.cq-badge__icon svg{width:100%;height:100%}.cq-badge__content{display:flex;align-items:baseline;gap:.5rem;flex:1}.cq-badge__count{font-family:var(--font-mono, "JetBrains Mono", monospace);font-size:1.5rem;font-weight:600;color:var(--color-ink, #1A1918);line-height:1}.cq-badge__text{font-family:var(--font-body, "Source Serif 4", serif);font-size:.875rem;color:var(--color-ink-faded, #6B6864)}.cq-badge__action{display:flex;align-items:center;gap:.375rem;font-family:var(--font-display, "Syne", sans-serif);font-size:.6875rem;font-weight:600;color:var(--color-ink-muted, #9C9894);text-transform:uppercase;letter-spacing:.08em;transition:color .2s}.cq-badge:hover .cq-badge__action{color:var(--color-ink, #1A1918)}.cq-badge__action svg{width:12px;height:12px;transition:transform .2s}.cq-badge:hover .cq-badge__action svg{transform:translate(2px)}.cq-batch{max-width:560px;margin:0 auto;padding:2rem}.cq-batch__header{display:flex;align-items:center;gap:1rem;margin-bottom:2rem}.cq-batch__progress{flex:1;height:3px;background:var(--color-ink-ghost, #C8C4BE);overflow:hidden}.cq-batch__progress-fill{height:100%;background:var(--color-accent, #C4805A);transition:width .4s cubic-bezier(.16,1,.3,1)}.cq-batch__counter{display:flex;align-items:baseline;gap:.125rem;font-family:var(--font-mono, "JetBrains Mono", monospace);font-size:.875rem;color:var(--color-ink-muted, #9C9894)}.cq-batch__current{font-size:1.125rem;font-weight:600;color:var(--color-ink, #1A1918)}.cq-batch__separator{color:var(--color-ink-ghost, #C8C4BE)}.cq-batch__total{color:var(--color-ink-muted, #9C9894)}.cq-batch__skip-all{padding:.5rem 1rem;background:transparent;border:1px solid var(--color-ink-ghost, #C8C4BE);font-family:var(--font-display, "Syne", sans-serif);font-size:.6875rem;font-weight:500;color:var(--color-ink-faded, #6B6864);text-transform:uppercase;letter-spacing:.05em;cursor:pointer;transition:all .2s}.cq-batch__skip-all:hover{border-color:var(--color-ink-muted, #9C9894);color:var(--color-ink, #1A1918)}.cq-batch__content{margin-bottom:1.5rem}.cq-batch__dots{display:flex;justify-content:center;gap:.5rem}.cq-batch__dot{width:8px;height:8px;background:var(--color-ink-ghost, #C8C4BE);border-radius:50%;transition:all .3s}.cq-batch__dot--current{background:var(--color-accent, #C4805A);transform:scale(1.25)}.cq-batch__dot--done{background:var(--color-positive, #5A7C60)}.cq-batch--empty,.cq-batch--complete{text-align:center;padding:4rem 2rem}.cq-batch__empty-icon,.cq-batch__complete-icon{width:64px;height:64px;margin:0 auto 1.5rem;color:var(--color-positive, #5A7C60)}.cq-batch__empty-icon svg,.cq-batch__complete-icon svg{width:100%;height:100%}.cq-batch--empty h2,.cq-batch--complete h2{font-family:var(--font-display, "Syne", sans-serif);font-size:1.5rem;font-weight:600;color:var(--color-ink, #1A1918);margin-bottom:.75rem;letter-spacing:-.02em}.cq-batch--empty p,.cq-batch--complete p{font-family:var(--font-body, "Source Serif 4", serif);font-size:1rem;color:var(--color-ink-faded, #6B6864);line-height:1.6}.cq-batch__done{margin-top:2rem;padding:.875rem 2rem;background:var(--color-ink, #1A1918);border:none;font-family:var(--font-display, "Syne", sans-serif);font-size:.875rem;font-weight:500;color:var(--color-cream, #FFFBF5);cursor:pointer;transition:background .2s}.cq-batch__done:hover{background:var(--color-ink-light, #2D2B28)}.cq-demo{padding:2rem;min-height:100vh;background:var(--color-paper, #F8F6F3)}.cq-demo__tabs{display:flex;gap:.5rem;margin-bottom:2rem;justify-content:center}.cq-demo__tabs button{padding:.625rem 1.25rem;background:transparent;border:1px solid var(--color-ink-ghost, #C8C4BE);font-family:var(--font-display, "Syne", sans-serif);font-size:.75rem;font-weight:500;color:var(--color-ink-faded, #6B6864);text-transform:uppercase;letter-spacing:.05em;cursor:pointer;transition:all .2s}.cq-demo__tabs button:hover{border-color:var(--color-ink-muted, #9C9894)}.cq-demo__tabs button.active{background:var(--color-ink, #1A1918);border-color:var(--color-ink, #1A1918);color:var(--color-cream, #FFFBF5)}.cq-demo__content{max-width:600px;margin:0 auto}.cq-demo__answers{max-width:400px;margin:2rem auto 0;padding:1rem;background:var(--color-cream, #FFFBF5);border:1px solid var(--color-ink-ghost, #C8C4BE)}.cq-demo__answers h4{font-family:var(--font-display, "Syne", sans-serif);font-size:.6875rem;font-weight:600;color:var(--color-ink-muted, #9C9894);text-transform:uppercase;letter-spacing:.1em;margin-bottom:.75rem}.cq-demo__answers p{font-family:var(--font-body, "Source Serif 4", serif);font-size:.875rem;color:var(--color-ink-faded, #6B6864);margin:.25rem 0}.cq-demo__answers strong{color:var(--color-ink, #1A1918)}.cq-line-items{margin:0 1.5rem 1rem;padding:1rem;background:var(--color-paper, #F8F6F3);border:1px solid var(--color-ink-ghost, #C8C4BE)}.cq-line-items__header{display:flex;align-items:center;gap:.5rem;margin-bottom:.75rem;font-family:var(--font-display, "Syne", sans-serif);font-size:.6875rem;font-weight:600;color:var(--color-ink-muted, #9C9894);text-transform:uppercase;letter-spacing:.08em}.cq-line-items__header svg{width:14px;height:14px}.cq-line-items__list{list-style:none;margin:0;padding:0}.cq-line-items__item{display:flex;align-items:baseline;justify-content:space-between;padding:.5rem 0;border-bottom:1px dashed var(--color-ink-ghost, #C8C4BE)}.cq-line-items__item:last-child{border-bottom:none}.cq-line-items__desc{flex:1;font-family:var(--font-body, "Source Serif 4", serif);font-size:.875rem;color:var(--color-ink, #1A1918)}.cq-line-items__amount{font-family:var(--font-mono, "JetBrains Mono", monospace);font-size:.8125rem;color:var(--color-ink-faded, #6B6864);margin-left:1rem}.cq-line-items__category{font-family:var(--font-display, "Syne", sans-serif);font-size:.625rem;font-weight:500;color:var(--color-accent, #C4805A);background:#c4805a1a;padding:.125rem .5rem;margin-left:.75rem;text-transform:uppercase;letter-spacing:.05em}.cq-split{padding:1rem 1.5rem 1.5rem}.cq-split__header{text-align:center;margin-bottom:1.5rem}.cq-split__header h4{font-family:var(--font-body, "Source Serif 4", serif);font-size:1.125rem;font-weight:400;color:var(--color-ink, #1A1918);margin:0 0 .25rem}.cq-split__header p{font-family:var(--font-mono, "JetBrains Mono", monospace);font-size:1rem;color:var(--color-ink-faded, #6B6864);margin:0}.cq-split__fields{display:flex;flex-direction:column;gap:1rem;margin-bottom:1rem}.cq-split__field{display:flex;flex-direction:column;gap:.375rem}.cq-split__field label{font-family:var(--font-display, "Syne", sans-serif);font-size:.75rem;font-weight:500;color:var(--color-ink-faded, #6B6864)}.cq-split__input-wrapper{display:flex;align-items:center;background:var(--color-paper, #F8F6F3);border:1px solid var(--color-ink-ghost, #C8C4BE);transition:border-color .2s}.cq-split__input-wrapper:focus-within{border-color:var(--color-ink, #1A1918)}.cq-split__input-wrapper input{flex:1;padding:.75rem 1rem;background:transparent;border:none;font-family:var(--font-mono, "JetBrains Mono", monospace);font-size:1rem;color:var(--color-ink, #1A1918);text-align:right}.cq-split__input-wrapper input:focus{outline:none}.cq-split__input-wrapper input::placeholder{color:var(--color-ink-ghost, #C8C4BE)}.cq-split__currency{padding:.75rem 1rem;font-family:var(--font-mono, "JetBrains Mono", monospace);font-size:.875rem;color:var(--color-ink-muted, #9C9894);background:var(--color-ink-ghost, #C8C4BE)}.cq-split__remaining{text-align:center;padding:.75rem;font-family:var(--font-body, "Source Serif 4", serif);font-size:.875rem;color:var(--color-caution, #A68B4B);background:#a68b4b1a;margin-bottom:1rem}.cq-split__remaining--valid{color:var(--color-positive, #5A7C60);background:#5a7c601a}.cq-split__check{display:flex;align-items:center;justify-content:center;gap:.5rem}.cq-split__check svg{width:16px;height:16px}.cq-split__error{text-align:center;padding:.5rem;font-family:var(--font-body, "Source Serif 4", serif);font-size:.8125rem;color:#c24b4b;margin-bottom:1rem}.cq-split__actions{display:flex;gap:.75rem}.cq-split__cancel{flex:1;padding:.875rem;background:transparent;border:1px solid var(--color-ink-ghost, #C8C4BE);font-family:var(--font-display, "Syne", sans-serif);font-size:.8125rem;font-weight:500;color:var(--color-ink-faded, #6B6864);cursor:pointer;transition:all .2s}.cq-split__cancel:hover{border-color:var(--color-ink-muted, #9C9894);color:var(--color-ink, #1A1918)}.cq-split__submit{flex:2;padding:.875rem;background:var(--color-ink, #1A1918);border:none;font-family:var(--font-display, "Syne", sans-serif);font-size:.8125rem;font-weight:500;color:var(--color-cream, #FFFBF5);cursor:pointer;transition:all .2s}.cq-split__submit:hover:not(:disabled){background:var(--color-ink-light, #2D2B28)}.cq-split__submit:disabled{background:var(--color-ink-ghost, #C8C4BE);cursor:not-allowed}.cq-confirm{padding:1rem 1.5rem 1.5rem}.cq-confirm--submitting{pointer-events:none}.cq-confirm__question{text-align:center;margin-bottom:1.5rem}.cq-confirm__question h3{font-family:var(--font-body, "Source Serif 4", serif);font-size:1.125rem;font-weight:400;color:var(--color-ink, #1A1918);line-height:1.4;margin:0 0 .5rem}.cq-confirm__question p{font-family:var(--font-body, "Source Serif 4", serif);font-size:.875rem;font-style:italic;color:var(--color-ink-faded, #6B6864);margin:0}.cq-confirm__options{display:grid;grid-template-columns:repeat(2,1fr);gap:1rem}.cq-confirm__option{display:flex;flex-direction:column;align-items:center;padding:1.5rem 1rem;background:var(--color-paper, #F8F6F3);border:2px solid var(--color-ink-ghost, #C8C4BE);cursor:pointer;transition:all .2s cubic-bezier(.16,1,.3,1)}.cq-confirm__option:hover{border-color:var(--color-ink-muted, #9C9894);transform:translateY(-2px)}.cq-confirm__option--yes:hover{border-color:var(--color-positive, #5A7C60)}.cq-confirm__option--no:hover{border-color:var(--color-caution, #A68B4B)}.cq-confirm__option--selected{border-color:var(--color-ink, #1A1918);background:var(--color-ink, #1A1918)}.cq-confirm__option--selected .cq-confirm__icon,.cq-confirm__option--selected .cq-confirm__label{color:var(--color-cream, #FFFBF5)}.cq-confirm__icon{width:32px;height:32px;color:var(--color-ink-faded, #6B6864);margin-bottom:.75rem;transition:color .2s}.cq-confirm__option--yes .cq-confirm__icon{color:var(--color-positive, #5A7C60)}.cq-confirm__option--no .cq-confirm__icon{color:var(--color-caution, #A68B4B)}.cq-confirm__icon svg{width:100%;height:100%}.cq-confirm__label{font-family:var(--font-display, "Syne", sans-serif);font-size:.875rem;font-weight:600;color:var(--color-ink, #1A1918);transition:color .2s}.cq-card__breadcrumb{display:flex;align-items:center;gap:.75rem;padding:.75rem 1.5rem;background:var(--color-paper, #F8F6F3);border-bottom:1px solid var(--color-ink-ghost, #C8C4BE)}.cq-card__back{width:28px;height:28px;display:flex;align-items:center;justify-content:center;background:transparent;border:1px solid var(--color-ink-ghost, #C8C4BE);color:var(--color-ink-faded, #6B6864);cursor:pointer;transition:all .2s;transform:scaleX(-1)}.cq-card__back:hover{border-color:var(--color-ink, #1A1918);color:var(--color-ink, #1A1918)}.cq-card__back svg{width:14px;height:14px}.cq-card__breadcrumb-text{font-family:var(--font-display, "Syne", sans-serif);font-size:.75rem;font-weight:500;color:var(--color-ink-muted, #9C9894)}.cq-option--has-followup{border-style:dashed}.cq-option__arrow{position:absolute;top:50%;right:.75rem;transform:translateY(-50%);width:16px;height:16px;color:var(--color-ink-ghost, #C8C4BE);transition:all .2s}.cq-option:hover .cq-option__arrow{color:var(--color-accent, #C4805A);transform:translateY(-50%) translate(2px)}.cq-option--selected .cq-option__arrow{color:var(--color-cream, #FFFBF5)}.cq-option__arrow svg{width:100%;height:100%}@media (max-width: 520px){.cq-card__options{grid-template-columns:1fr}.cq-card__header{flex-direction:column;gap:.5rem}.cq-card__meta{align-items:flex-start;flex-direction:row;gap:1rem}.cq-badge{flex-wrap:wrap}.cq-badge__action{width:100%;justify-content:center;margin-top:.5rem;padding-top:.75rem;border-top:1px solid var(--color-ink-ghost, #C8C4BE)}}:root{--font-display: "Syne", system-ui, sans-serif;--font-body: "Source Serif 4", Georgia, serif;--font-mono: "JetBrains Mono", "SF Mono", monospace;--color-paper: #F8F6F3;--color-paper-warm: #F5F2ED;--color-cream: #FFFBF5;--color-ink: #1A1918;--color-ink-light: #2D2B28;--color-ink-faded: #6B6864;--color-ink-muted: #9C9894;--color-ink-ghost: #C8C4BE;--color-accent: #C4805A;--color-accent-light: #E8CFC0;--color-accent-dark: #9A5F3E;--color-positive: #5A7C60;--color-caution: #A68B4B;--color-negative: #A65A5A;--space-1: .25rem;--space-2: .5rem;--space-3: .75rem;--space-4: 1rem;--space-5: 1.25rem;--space-6: 1.5rem;--space-8: 2rem;--space-10: 2.5rem;--space-12: 3rem;--space-16: 4rem;--space-20: 5rem;--space-24: 6rem;--text-xs: .75rem;--text-sm: .875rem;--text-base: 1rem;--text-lg: 1.125rem;--text-xl: 1.25rem;--text-2xl: 1.5rem;--text-3xl: 2rem;--text-4xl: 2.75rem;--text-5xl: 3.5rem;--text-6xl: 4.5rem;--text-7xl: 6rem;--text-8xl: 8rem;--ease-out: cubic-bezier(.16, 1, .3, 1);--ease-in-out: cubic-bezier(.65, 0, .35, 1);--duration-fast: .15s;--duration-normal: .25s;--duration-slow: .4s}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizeLegibility}body{font-family:var(--font-body);font-size:var(--text-base);font-weight:400;line-height:1.6;color:var(--color-ink);background:var(--color-paper);min-height:100vh;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 200 200' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='noise'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23noise)'/%3E%3C/svg%3E");background-blend-mode:soft-light;background-size:200px 200px}::selection{background:var(--color-accent-light);color:var(--color-ink)}.app{min-height:100vh;display:flex;flex-direction:column}.app.loading{display:flex;align-items:center;justify-content:center}.app.loading p{font-family:var(--font-display);font-size:var(--text-lg);color:var(--color-ink-faded);letter-spacing:.02em}.app-header{display:flex;align-items:center;justify-content:space-between;padding:var(--space-5) var(--space-8);border-bottom:1px solid var(--color-ink-ghost);background:var(--color-cream);position:relative}.app-header:before{content:"";position:absolute;top:0;left:0;right:0;height:3px;background:var(--color-ink)}.header-left{display:flex;align-items:baseline;gap:var(--space-4)}.app-title{font-family:var(--font-display);font-size:var(--text-xl);font-weight:700;color:var(--color-ink);letter-spacing:-.02em;text-transform:uppercase}.company-name{font-family:var(--font-body);font-style:italic;color:var(--color-ink-faded);font-size:var(--text-sm)}.header-right{display:flex;align-items:center;gap:var(--space-8)}.main-nav{display:flex;gap:var(--space-1)}.nav-item{position:relative;padding:var(--space-2) var(--space-4);background:transparent;border:none;font-family:var(--font-display);font-size:var(--text-sm);font-weight:500;color:var(--color-ink-faded);cursor:pointer;transition:color var(--duration-fast) var(--ease-out);letter-spacing:.02em;text-transform:uppercase}.nav-item:hover,.nav-item.active{color:var(--color-ink)}.nav-item.active:after{content:"";position:absolute;bottom:0;left:var(--space-4);right:var(--space-4);height:2px;background:var(--color-ink)}.nav-item .badge{position:absolute;top:0;right:0;min-width:18px;height:18px;display:flex;align-items:center;justify-content:center;background:var(--color-accent);color:#fff;font-family:var(--font-mono);font-size:10px;font-weight:500;border-radius:50%}.logout-btn{padding:var(--space-2) var(--space-4);background:transparent;border:1px solid var(--color-ink-ghost);font-family:var(--font-display);font-size:var(--text-xs);font-weight:500;color:var(--color-ink-faded);cursor:pointer;transition:all var(--duration-fast) var(--ease-out);letter-spacing:.05em;text-transform:uppercase}.logout-btn:hover{border-color:var(--color-ink);color:var(--color-ink)}.app-main{flex:1;padding:var(--space-12) var(--space-10);max-width:1400px;margin:0 auto;width:100%}.dashboard{animation:fadeInUp var(--duration-slow) var(--ease-out)}@keyframes fadeInUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.dashboard h1{font-family:var(--font-display);font-size:var(--text-xs);font-weight:600;color:var(--color-ink-muted);text-transform:uppercase;letter-spacing:.15em;margin-bottom:var(--space-10);padding-bottom:var(--space-4);border-bottom:1px solid var(--color-ink-ghost)}.stats-grid{display:grid;grid-template-columns:2fr 1fr 1fr 1fr 1fr 1fr;gap:var(--space-1);margin-bottom:var(--space-12)}.stat-card{padding:var(--space-6) var(--space-5);cursor:pointer;transition:all var(--duration-normal) var(--ease-out);position:relative;background:transparent}.stat-card:after{content:"";position:absolute;bottom:0;left:0;right:0;height:1px;background:var(--color-ink-ghost)}.stat-card:hover{background:var(--color-cream)}.stat-card.highlight{grid-row:span 2;padding:var(--space-8);background:var(--color-ink);display:flex;flex-direction:column;justify-content:space-between;min-height:280px;position:relative;overflow:hidden}.stat-card.highlight:before{content:"";position:absolute;top:-50%;right:-50%;width:100%;height:100%;background:radial-gradient(circle,rgba(255,255,255,.03) 0%,transparent 70%)}.stat-card.highlight:after{display:none}.stat-card.highlight:hover{background:var(--color-ink-light)}.stat-card.highlight .stat-value{font-family:var(--font-display);font-size:var(--text-8xl);font-weight:800;color:var(--color-cream);line-height:.85;letter-spacing:-.04em}.stat-card.highlight .stat-label{font-family:var(--font-display);font-size:var(--text-xs);font-weight:500;color:#ffffff80;text-transform:uppercase;letter-spacing:.15em;margin-top:var(--space-2)}.stat-card.highlight .stat-action{font-family:var(--font-display);font-size:var(--text-xs);font-weight:500;color:#fff6;text-transform:uppercase;letter-spacing:.1em;display:flex;align-items:center;gap:var(--space-2);margin-top:auto;padding-top:var(--space-6);transition:color var(--duration-fast)}.stat-card.highlight:hover .stat-action{color:#ffffffb3}.stat-value{font-family:var(--font-display);font-size:var(--text-5xl);font-weight:700;color:var(--color-ink);line-height:1;letter-spacing:-.03em}.stat-label{font-family:var(--font-display);font-size:9px;font-weight:500;color:var(--color-ink-muted);text-transform:uppercase;letter-spacing:.12em;margin-top:var(--space-3)}.stat-card.success{border-left:3px solid var(--color-positive)}.stat-card.warning{border-left:3px solid var(--color-caution)}.stat-card.error{border-left:3px solid var(--color-negative)}.dashboard-bottom{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-16);padding-top:var(--space-10);border-top:1px solid var(--color-ink-ghost)}.today-summary h2,.quick-actions h2{font-family:var(--font-display);font-size:var(--text-xs);font-weight:600;color:var(--color-ink-muted);text-transform:uppercase;letter-spacing:.15em;margin-bottom:var(--space-6);display:flex;align-items:center;gap:var(--space-3)}.summary-row{display:flex;justify-content:space-between;align-items:baseline;padding:var(--space-4) 0;border-bottom:1px solid var(--color-ink-ghost)}.summary-row:last-child{border-bottom:none}.summary-row .label{font-family:var(--font-body);color:var(--color-ink-faded);font-size:var(--text-sm)}.summary-row .value{font-family:var(--font-mono);font-weight:500;color:var(--color-ink);font-size:var(--text-sm)}.summary-row .value.amount{font-family:var(--font-display);font-size:var(--text-2xl);font-weight:600;color:var(--color-ink);letter-spacing:-.02em}.action-buttons{display:flex;flex-direction:column;gap:var(--space-3)}.quick-action{display:flex;align-items:center;gap:var(--space-4);padding:var(--space-5) var(--space-5);background:var(--color-cream);border:1px solid var(--color-ink-ghost);cursor:pointer;transition:all var(--duration-normal) var(--ease-out);position:relative;text-align:left}.quick-action:hover{border-color:var(--color-ink);transform:translate(4px)}.quick-action.primary{background:var(--color-ink);border-color:var(--color-ink)}.quick-action.primary:hover{background:var(--color-ink-light)}.quick-action .icon{width:24px;height:24px;display:flex;align-items:center;justify-content:center;color:var(--color-ink-muted)}.quick-action.primary .icon{color:#fff9}.quick-action .text{font-family:var(--font-display);font-weight:500;font-size:var(--text-sm);color:var(--color-ink);letter-spacing:.01em}.quick-action.primary .text{color:var(--color-cream)}.quick-action .badge{position:absolute;top:50%;right:var(--space-5);transform:translateY(-50%);min-width:24px;height:24px;display:flex;align-items:center;justify-content:center;background:var(--color-accent);color:#fff;font-family:var(--font-mono);font-size:var(--text-xs);font-weight:500;border-radius:50%}.review-layout{display:grid;grid-template-columns:380px 1fr;gap:var(--space-8);min-height:calc(100vh - 180px);animation:fadeInUp var(--duration-slow) var(--ease-out)}.review-sidebar,.review-main{overflow-y:auto}.no-selection{display:flex;flex-direction:column;align-items:center;justify-content:center;height:100%;padding:var(--space-16);text-align:center}.no-selection .empty-icon{width:64px;height:64px;margin-bottom:var(--space-6);color:var(--color-ink-ghost)}.no-selection p{font-family:var(--font-display);font-size:var(--text-lg);color:var(--color-ink-muted);margin-bottom:var(--space-2)}.no-selection .hint{font-family:var(--font-body);font-size:var(--text-sm);color:var(--color-ink-ghost);font-style:italic}.all-done{padding:var(--space-16);text-align:center}.all-done .check-icon{width:56px;height:56px;margin:0 auto var(--space-6);color:var(--color-positive)}.all-done h3{font-family:var(--font-display);font-size:var(--text-2xl);font-weight:600;color:var(--color-ink);margin-bottom:var(--space-3);letter-spacing:-.01em}.all-done p{font-family:var(--font-body);font-size:var(--text-base);color:var(--color-ink-faded);max-width:320px;margin:0 auto}.review-queue{background:var(--color-cream);border:1px solid var(--color-ink-ghost);overflow:hidden}.review-progress{display:flex;align-items:center;gap:var(--space-4);padding:var(--space-4) var(--space-5);background:var(--color-ink)}.progress-bar{flex:1;height:2px;background:#fff3;overflow:hidden}.progress-fill{height:100%;background:var(--color-accent);transition:width var(--duration-slow) var(--ease-out)}.progress-text{font-family:var(--font-mono);font-size:var(--text-xs);color:#fff9;white-space:nowrap}.queue-header{padding:var(--space-5);border-bottom:1px solid var(--color-ink-ghost)}.queue-header h3{font-family:var(--font-display);font-size:var(--text-xs);font-weight:600;color:var(--color-ink-muted);text-transform:uppercase;letter-spacing:.15em;margin-bottom:var(--space-4)}.queue-filters{display:flex;gap:var(--space-3)}.search-input{flex:1;padding:var(--space-3);background:transparent;border:none;border-bottom:1px solid var(--color-ink-ghost);font-family:var(--font-body);font-size:var(--text-sm);color:var(--color-ink);transition:border-color var(--duration-fast)}.search-input:focus{outline:none;border-color:var(--color-ink)}.search-input::placeholder{color:var(--color-ink-ghost);font-style:italic}.status-filter{padding:var(--space-2) var(--space-3);background:transparent;border:1px solid var(--color-ink-ghost);font-family:var(--font-display);font-size:var(--text-xs);color:var(--color-ink-faded);cursor:pointer;letter-spacing:.02em}.queue-summary{display:flex;justify-content:space-between;padding:var(--space-3) var(--space-5);font-family:var(--font-mono);font-size:var(--text-xs);color:var(--color-ink-muted);background:var(--color-paper-warm);border-bottom:1px solid var(--color-ink-ghost)}.review-count{color:var(--color-ink-faded)}.queue-list{list-style:none;max-height:520px;overflow-y:auto}.queue-item{padding:var(--space-5);border-bottom:1px solid var(--color-ink-ghost);cursor:pointer;transition:all var(--duration-fast) var(--ease-out);position:relative;background:var(--color-cream)}.queue-item:before{content:"";position:absolute;left:0;top:0;bottom:0;width:0;background:var(--color-ink);transition:width var(--duration-fast) var(--ease-out)}.queue-item:hover{background:var(--color-paper)}.queue-item:hover:before{width:3px}.queue-item.selected{background:var(--color-paper)}.queue-item.selected:before{width:4px;background:var(--color-accent)}.queue-item{animation:slideInLeft var(--duration-normal) var(--ease-out) backwards}.queue-item:nth-child(1){animation-delay:0ms}.queue-item:nth-child(2){animation-delay:50ms}.queue-item:nth-child(3){animation-delay:.1s}.queue-item:nth-child(4){animation-delay:.15s}.queue-item:nth-child(5){animation-delay:.2s}@keyframes slideInLeft{0%{opacity:0;transform:translate(-12px)}to{opacity:1;transform:translate(0)}}.item-header{display:none}.item-body{display:flex;justify-content:space-between;align-items:baseline;margin-bottom:var(--space-2)}.supplier-name{font-family:var(--font-display);font-size:var(--text-sm);font-weight:600;color:var(--color-ink);letter-spacing:-.01em}.file-name{display:none}.item-footer{display:flex;justify-content:space-between;align-items:baseline}.amount{font-family:var(--font-mono);font-size:var(--text-lg);font-weight:500;color:var(--color-ink)}.amount.negative{color:var(--color-ink)}.category{font-family:var(--font-display);font-size:9px;font-weight:500;color:var(--color-ink-muted);text-transform:uppercase;letter-spacing:.1em}.item-warnings,.date,.status-badge{display:none}.item-actions{display:none;gap:var(--space-2);margin-top:var(--space-4);padding-top:var(--space-4);border-top:1px solid var(--color-ink-ghost)}.queue-item:hover .item-actions,.queue-item.selected .item-actions{display:flex}.action-btn{flex:1;padding:var(--space-2) var(--space-3);border:1px solid var(--color-ink-ghost);background:var(--color-cream);font-family:var(--font-display);font-size:var(--text-xs);font-weight:500;color:var(--color-ink-faded);cursor:pointer;transition:all var(--duration-fast) var(--ease-out);display:flex;align-items:center;justify-content:center;gap:var(--space-1);letter-spacing:.02em}.action-btn:hover{background:var(--color-ink);color:var(--color-cream);border-color:var(--color-ink)}.action-btn:active{transform:scale(.97)}.keyboard-hints{display:flex;justify-content:center;gap:var(--space-5);padding:var(--space-4) var(--space-5);background:var(--color-paper-warm);border-top:1px solid var(--color-ink-ghost)}.keyboard-hint{display:flex;align-items:center;gap:var(--space-2);font-family:var(--font-display);font-size:var(--text-xs);color:var(--color-ink-muted)}.keyboard-hint kbd{display:inline-flex;align-items:center;justify-content:center;min-width:20px;height:20px;padding:0 var(--space-1);background:var(--color-cream);border:1px solid var(--color-ink-ghost);font-family:var(--font-mono);font-size:10px;font-weight:500;color:var(--color-ink-faded)}.queue-empty{padding:var(--space-12);text-align:center}.queue-empty p{font-family:var(--font-display);font-size:var(--text-sm);color:var(--color-ink-muted);margin-bottom:var(--space-2)}.queue-empty .empty-hint{font-family:var(--font-body);font-size:var(--text-xs);color:var(--color-ink-ghost);font-style:italic}.document-review{background:var(--color-cream);border:1px solid var(--color-ink-ghost);height:100%;display:flex;flex-direction:column;animation:slideInRight var(--duration-normal) var(--ease-out)}@keyframes slideInRight{0%{opacity:0;transform:translate(20px)}to{opacity:1;transform:translate(0)}}.review-header{display:flex;justify-content:space-between;align-items:center;padding:var(--space-5) var(--space-6);border-bottom:1px solid var(--color-ink-ghost);background:var(--color-paper-warm)}.review-header h2{font-family:var(--font-display);font-size:var(--text-sm);font-weight:600;color:var(--color-ink);display:flex;align-items:center;gap:var(--space-3);letter-spacing:.02em;text-transform:uppercase}.close-btn{width:28px;height:28px;display:flex;align-items:center;justify-content:center;background:transparent;border:none;color:var(--color-ink-muted);cursor:pointer;transition:all var(--duration-fast)}.close-btn:hover{color:var(--color-ink)}.review-content{flex:1;overflow-y:auto;padding:var(--space-6)}.document-preview{background:var(--color-paper);border:1px dashed var(--color-ink-ghost);padding:var(--space-10);text-align:center;margin-bottom:var(--space-8)}.preview-placeholder{color:var(--color-ink-ghost)}.preview-placeholder .icon{margin-bottom:var(--space-3);opacity:.4}.preview-placeholder p{font-family:var(--font-mono);font-size:var(--text-sm);color:var(--color-ink-muted)}.view-original{display:inline-flex;align-items:center;gap:var(--space-2);margin-top:var(--space-4);font-family:var(--font-display);font-size:var(--text-xs);font-weight:500;color:var(--color-accent);text-decoration:none;text-transform:uppercase;letter-spacing:.05em;transition:color var(--duration-fast)}.view-original:hover{color:var(--color-accent-dark)}.extracted-data,.classification-data{margin-bottom:var(--space-8)}.extracted-data h3,.classification-data h3{display:flex;justify-content:space-between;align-items:center;font-family:var(--font-display);font-size:var(--text-xs);font-weight:600;color:var(--color-ink-muted);text-transform:uppercase;letter-spacing:.15em;margin-bottom:var(--space-5);padding-bottom:var(--space-3);border-bottom:1px solid var(--color-ink-ghost)}.edit-btn{padding:var(--space-1) var(--space-3);background:transparent;border:1px solid var(--color-ink-ghost);font-family:var(--font-display);font-size:10px;font-weight:500;color:var(--color-ink-muted);cursor:pointer;transition:all var(--duration-fast);display:flex;align-items:center;gap:var(--space-1);text-transform:uppercase;letter-spacing:.05em}.edit-btn:hover{border-color:var(--color-ink);color:var(--color-ink)}.data-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:0}.data-field{padding:var(--space-4);border-bottom:1px solid var(--color-ink-ghost);border-right:1px solid var(--color-ink-ghost)}.data-field:nth-child(2n){border-right:none}.data-field:nth-last-child(-n+2){border-bottom:none}.data-field label{display:block;font-family:var(--font-display);font-size:9px;font-weight:500;color:var(--color-ink-muted);text-transform:uppercase;letter-spacing:.1em;margin-bottom:var(--space-2)}.data-field span{font-family:var(--font-body);font-size:var(--text-sm);color:var(--color-ink)}.data-field .amount{font-family:var(--font-mono);font-weight:500}.data-field .confidence{font-family:var(--font-display);font-size:var(--text-xs);font-weight:500;margin-left:var(--space-2)}.data-field .confidence.high{color:var(--color-positive)}.data-field .confidence.low{color:var(--color-negative)}.country{font-family:var(--font-body);font-style:italic;color:var(--color-ink-faded);margin-left:var(--space-1)}.alerts{margin-bottom:var(--space-6)}.error-list,.warning-list{padding:var(--space-4);margin-bottom:var(--space-3);background:var(--color-paper);border-left:3px solid var(--color-ink-ghost)}.error-list{border-left-color:var(--color-negative)}.warning-list{border-left-color:var(--color-caution)}.error-list h4,.warning-list h4{font-family:var(--font-display);font-size:var(--text-xs);font-weight:600;text-transform:uppercase;letter-spacing:.1em;margin-bottom:var(--space-2);display:flex;align-items:center;gap:var(--space-2);color:var(--color-ink-faded)}.error-list ul,.warning-list ul{list-style:none}.error-list li,.warning-list li{font-family:var(--font-body);font-size:var(--text-sm);color:var(--color-ink-faded);padding-left:var(--space-4);position:relative}.error-list li:before,.warning-list li:before{content:"—";position:absolute;left:0;color:var(--color-ink-ghost)}.review-reason{background:var(--color-paper);padding:var(--space-4);border-left:3px solid var(--color-ink-muted)}.review-reason h4{font-family:var(--font-display);font-size:var(--text-xs);font-weight:600;color:var(--color-ink-faded);text-transform:uppercase;letter-spacing:.1em;margin-bottom:var(--space-2);display:flex;align-items:center;gap:var(--space-2)}.review-reason p{font-family:var(--font-body);font-size:var(--text-sm);color:var(--color-ink-faded);font-style:italic}.edit-form{background:var(--color-paper);padding:var(--space-5);margin-top:var(--space-4);border:1px solid var(--color-ink-ghost)}.edit-form .form-field{margin-bottom:var(--space-4)}.edit-form label{display:block;font-family:var(--font-display);font-size:var(--text-xs);font-weight:500;color:var(--color-ink);margin-bottom:var(--space-2);text-transform:uppercase;letter-spacing:.05em}.edit-form select,.edit-form textarea,.edit-form input{width:100%;padding:var(--space-3);background:var(--color-cream);border:1px solid var(--color-ink-ghost);font-family:var(--font-body);font-size:var(--text-sm);color:var(--color-ink);transition:border-color var(--duration-fast)}.edit-form select:focus,.edit-form textarea:focus,.edit-form input:focus{outline:none;border-color:var(--color-ink)}.edit-form textarea{min-height:80px;resize:vertical}.form-actions{margin-top:var(--space-4)}.cancel-btn{padding:var(--space-2) var(--space-4);background:transparent;border:1px solid var(--color-ink-ghost);font-family:var(--font-display);font-size:var(--text-xs);font-weight:500;color:var(--color-ink-faded);cursor:pointer;transition:all var(--duration-fast);text-transform:uppercase;letter-spacing:.05em}.cancel-btn:hover{border-color:var(--color-ink);color:var(--color-ink)}.review-actions{display:flex;gap:var(--space-3);padding:var(--space-5) var(--space-6);border-top:1px solid var(--color-ink-ghost);background:var(--color-paper-warm)}.review-actions .action-btn{flex:1;padding:var(--space-4);font-size:var(--text-sm)}.review-actions .action-btn.primary{background:var(--color-ink);color:var(--color-cream);border-color:var(--color-ink)}.review-actions .action-btn.primary:hover{background:var(--color-ink-light)}.review-actions .action-btn.secondary{background:var(--color-paper)}.review-actions .action-btn.danger{background:var(--color-negative);color:#fff;border-color:var(--color-negative)}.review-actions .action-btn.danger:hover{opacity:.9}.history-view{animation:fadeInUp var(--duration-slow) var(--ease-out)}.history-view h2{font-family:var(--font-display);font-size:var(--text-xs);font-weight:600;color:var(--color-ink-muted);text-transform:uppercase;letter-spacing:.15em;margin-bottom:var(--space-8);padding-bottom:var(--space-4);border-bottom:1px solid var(--color-ink-ghost)}.login-container{min-height:100vh;display:flex;align-items:center;justify-content:center;background:var(--color-paper);padding:var(--space-6)}.login-card{width:100%;max-width:400px;background:var(--color-cream);border:1px solid var(--color-ink-ghost);padding:var(--space-12);position:relative}.login-card:before{content:"";position:absolute;top:0;left:0;right:0;height:4px;background:var(--color-ink)}.login-header{text-align:center;margin-bottom:var(--space-10)}.login-header h1{font-family:var(--font-display);font-size:var(--text-2xl);font-weight:700;color:var(--color-ink);margin-bottom:var(--space-3);letter-spacing:-.02em}.login-header p{font-family:var(--font-body);color:var(--color-ink-faded);font-size:var(--text-sm);font-style:italic}.oauth-section{margin-bottom:var(--space-8)}.oauth-button{width:100%;display:flex;align-items:center;justify-content:center;gap:var(--space-3);padding:var(--space-4);background:var(--color-ink);color:var(--color-cream);border:none;font-family:var(--font-display);font-size:var(--text-sm);font-weight:500;cursor:pointer;transition:background var(--duration-fast);letter-spacing:.02em}.oauth-button:hover:not(:disabled){background:var(--color-ink-light)}.oauth-button:disabled{opacity:.5;cursor:not-allowed}.login-divider{display:flex;align-items:center;margin:var(--space-8) 0;color:var(--color-ink-ghost)}.login-divider:before,.login-divider:after{content:"";flex:1;height:1px;background:var(--color-ink-ghost)}.login-divider span{padding:0 var(--space-4);font-family:var(--font-display);font-size:var(--text-xs);text-transform:uppercase;letter-spacing:.1em}.toggle-manual-login{width:100%;padding:var(--space-3);background:transparent;color:var(--color-ink-faded);border:1px solid var(--color-ink-ghost);font-family:var(--font-display);font-size:var(--text-xs);font-weight:500;cursor:pointer;transition:all var(--duration-fast);text-transform:uppercase;letter-spacing:.05em}.toggle-manual-login:hover{border-color:var(--color-ink);color:var(--color-ink)}.login-form .form-field{margin-bottom:var(--space-5)}.login-form label{display:block;font-family:var(--font-display);font-size:var(--text-xs);font-weight:500;color:var(--color-ink);margin-bottom:var(--space-2);text-transform:uppercase;letter-spacing:.05em}.login-form input{width:100%;padding:var(--space-3) var(--space-4);background:var(--color-paper);border:1px solid var(--color-ink-ghost);font-family:var(--font-body);font-size:var(--text-sm);color:var(--color-ink);transition:all var(--duration-fast)}.login-form input:focus{outline:none;border-color:var(--color-ink);background:var(--color-cream)}.login-form small{display:block;font-family:var(--font-body);color:var(--color-ink-ghost);font-size:var(--text-xs);margin-top:var(--space-2);font-style:italic}.error-message{background:var(--color-paper);border-left:3px solid var(--color-negative);color:var(--color-negative);padding:var(--space-3) var(--space-4);margin-bottom:var(--space-5);font-family:var(--font-body);font-size:var(--text-sm)}.login-button{width:100%;padding:var(--space-4);background:var(--color-ink);color:var(--color-cream);border:none;font-family:var(--font-display);font-size:var(--text-sm);font-weight:500;cursor:pointer;transition:background var(--duration-fast);letter-spacing:.02em}.login-button:hover:not(:disabled){background:var(--color-ink-light)}.login-button:disabled{opacity:.5;cursor:not-allowed}.login-footer{text-align:center;margin-top:var(--space-8);font-family:var(--font-body);color:var(--color-ink-faded);font-size:var(--text-sm)}.login-footer a{color:var(--color-accent);text-decoration:none;font-weight:500}.login-footer a:hover{text-decoration:underline}.oauth-callback{min-height:100vh;display:flex;align-items:center;justify-content:center;background:var(--color-paper)}.oauth-callback-content{text-align:center;background:var(--color-cream);padding:var(--space-12);border:1px solid var(--color-ink-ghost);position:relative}.oauth-callback-content:before{content:"";position:absolute;top:0;left:0;right:0;height:3px;background:var(--color-ink)}.oauth-callback .spinner{width:40px;height:40px;border:2px solid var(--color-ink-ghost);border-top-color:var(--color-ink);border-radius:50%;animation:spin .8s linear infinite;margin:0 auto var(--space-6)}@keyframes spin{to{transform:rotate(360deg)}}.oauth-callback .success-icon,.oauth-callback .error-icon{width:48px;height:48px;display:flex;align-items:center;justify-content:center;margin:0 auto var(--space-5)}.oauth-callback .success-icon{color:var(--color-positive)}.oauth-callback .error-icon{color:var(--color-negative)}.oauth-callback p{font-family:var(--font-body);color:var(--color-ink);margin-bottom:var(--space-2)}.oauth-callback p.small{font-size:var(--text-sm);color:var(--color-ink-faded);font-style:italic}.oauth-callback p.error{color:var(--color-negative)}.oauth-callback button{margin-top:var(--space-5);padding:var(--space-3) var(--space-6);background:var(--color-ink);color:var(--color-cream);border:none;font-family:var(--font-display);font-size:var(--text-sm);font-weight:500;cursor:pointer;transition:background var(--duration-fast)}.oauth-callback button:hover{background:var(--color-ink-light)}.app.embedded .app-header{padding:var(--space-3) var(--space-5)}.app.embedded .app-header:before{height:2px}.app.embedded .app-main{padding:var(--space-6)}@media (max-width: 1200px){.stats-grid{grid-template-columns:1fr 1fr 1fr}.stat-card.highlight{grid-column:span 3;grid-row:span 1;min-height:200px}.stat-card.highlight .stat-value{font-size:var(--text-7xl)}}@media (max-width: 900px){.review-layout{grid-template-columns:1fr}.dashboard-bottom{grid-template-columns:1fr;gap:var(--space-10)}.stats-grid{grid-template-columns:1fr 1fr}.stat-card.highlight{grid-column:span 2}}@media (max-width: 600px){.app-header{flex-direction:column;gap:var(--space-4);padding:var(--space-4)}.header-left{flex-direction:column;align-items:center;gap:var(--space-1)}.app-main{padding:var(--space-6) var(--space-4)}.stats-grid{grid-template-columns:1fr}.stat-card.highlight{grid-column:span 1;min-height:160px}.stat-card.highlight .stat-value{font-size:var(--text-6xl)}.stat-value{font-size:var(--text-4xl)}}@keyframes shimmer{0%{background-position:-200% 0}to{background-position:200% 0}}.skeleton{background:linear-gradient(90deg,var(--color-ink-ghost) 25%,var(--color-paper) 50%,var(--color-ink-ghost) 75%);background-size:200% 100%;animation:shimmer 1.5s infinite}.skeleton-item{padding:var(--space-5);border-bottom:1px solid var(--color-ink-ghost)}.skeleton-line{height:14px;margin-bottom:var(--space-2)}.skeleton-line:last-child{margin-bottom:0;width:60%}.toast-container{position:fixed;bottom:var(--space-6);right:var(--space-6);z-index:1000;display:flex;flex-direction:column;gap:var(--space-3)}@keyframes toastIn{0%{opacity:0;transform:translateY(16px)}to{opacity:1;transform:translateY(0)}}@keyframes toastOut{0%{opacity:1;transform:translateY(0)}to{opacity:0;transform:translateY(-16px)}}.toast{padding:var(--space-3) var(--space-5);background:var(--color-ink);color:var(--color-cream);font-family:var(--font-display);font-size:var(--text-sm);font-weight:500;animation:toastIn var(--duration-normal) var(--ease-out);display:flex;align-items:center;gap:var(--space-2)}.toast.success{background:var(--color-positive)}.toast.exiting{animation:toastOut var(--duration-normal) var(--ease-out) forwards}.queue-item:focus{outline:none}.queue-item:focus-visible{outline:2px solid var(--color-accent);outline-offset:-2px}button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px}.refresh-btn{background:transparent;border:1px solid var(--color-ink-ghost);padding:var(--space-2);cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all var(--duration-fast) var(--ease-out)}.refresh-btn:hover:not(:disabled){border-color:var(--color-ink)}.refresh-btn:disabled{opacity:.5;cursor:not-allowed}.refresh-btn .spinning{animation:spin 1s linear infinite}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.error-banner{background:var(--color-negative);color:var(--color-cream);padding:var(--space-3) var(--space-5);display:flex;align-items:center;justify-content:space-between;gap:var(--space-4);font-family:var(--font-display);font-size:var(--text-sm)}.error-banner button{background:#fff3;color:var(--color-cream);border:1px solid rgba(255,255,255,.3);padding:var(--space-1) var(--space-3);font-size:var(--text-sm);cursor:pointer;transition:all var(--duration-fast) var(--ease-out)}.error-banner button:hover{background:#ffffff4d}
