.calibration-guide{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:100vh;padding:var(--space-6);background:var(--color-bg-primary)}.calibration-content{max-width:480px;width:100%;text-align:center}.calibration-title{font-size:var(--font-size-3xl);font-weight:var(--font-weight-semibold);color:var(--color-text-primary);margin-bottom:var(--space-8);line-height:var(--line-height-tight)}.calibration-instructions{display:flex;flex-direction:column;gap:var(--space-6);margin-bottom:var(--space-10)}.instruction-item{display:flex;align-items:flex-start;gap:var(--space-4);text-align:left;padding:var(--space-5);background:var(--color-bg-card);border:var(--border-width-thin) solid var(--border-color);border-radius:var(--border-radius-md);box-shadow:var(--shadow-sm)}.instruction-icon{font-size:var(--font-size-3xl);flex-shrink:0}.instruction-text h3{font-size:var(--font-size-lg);font-weight:var(--font-weight-semibold);color:var(--color-text-primary);margin-bottom:var(--space-2)}.instruction-text p{font-size:var(--font-size-base);color:var(--color-text-secondary);line-height:var(--line-height-normal);margin:0}.calibration-btn{width:100%;margin-bottom:var(--space-4)}.privacy-note{font-size:var(--font-size-sm);color:var(--color-text-tertiary);line-height:var(--line-height-normal);margin:0}@media (max-width: 480px){.calibration-guide{padding:var(--space-4)}.calibration-title{font-size:var(--font-size-2xl);margin-bottom:var(--space-6)}.instruction-item{padding:var(--space-4)}.instruction-icon{font-size:var(--font-size-2xl)}}.pq-display{background:var(--color-bg-card);border:var(--border-width-thin) solid var(--border-color);border-radius:var(--border-radius-lg);padding:var(--space-6);box-shadow:var(--shadow-md)}.pq-score-container{text-align:center;margin-bottom:var(--space-6);padding-bottom:var(--space-6);border-bottom:var(--border-width-thin) solid var(--border-color)}.pq-label{font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);color:var(--color-text-secondary);text-transform:uppercase;letter-spacing:1.5px;margin-bottom:var(--space-2)}.pq-score{font-size:var(--font-size-5xl);font-weight:var(--font-weight-bold);line-height:1;margin-bottom:var(--space-2);transition:all var(--transition-base)}.pq-score.animating{transform:scale(1.05)}.pq-band{font-size:var(--font-size-lg);font-weight:var(--font-weight-semibold);margin-bottom:var(--space-1)}.pq-range{font-size:var(--font-size-sm);color:var(--color-text-tertiary)}.coaching-cues{margin-top:var(--space-6)}.cues-title{font-size:var(--font-size-lg);font-weight:var(--font-weight-semibold);color:var(--color-text-primary);margin-bottom:var(--space-4)}.cues-list{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:var(--space-3)}.cue-item{padding:var(--space-4);background:var(--color-bg-secondary);border-radius:var(--border-radius-md);border-left:4px solid var(--color-info)}.cue-text{font-size:var(--font-size-base);color:var(--color-text-primary);line-height:var(--line-height-relaxed)}.pq-breakdown{margin-top:var(--space-6);padding-top:var(--space-6);border-top:var(--border-width-thin) solid var(--border-color)}.breakdown-title{font-size:var(--font-size-base);font-weight:var(--font-weight-semibold);color:var(--color-text-secondary);margin-bottom:var(--space-4);font-family:var(--font-family-mono)}.breakdown-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:var(--space-3);margin-bottom:var(--space-4)}.breakdown-item{padding:var(--space-3);background:var(--color-bg-secondary);border-radius:var(--border-radius-sm);text-align:center}.breakdown-label{font-size:var(--font-size-xs);color:var(--color-text-secondary);margin-bottom:var(--space-1);font-weight:var(--font-weight-medium)}.breakdown-value{font-size:var(--font-size-2xl);font-weight:var(--font-weight-bold);color:var(--color-primary);margin-bottom:var(--space-1)}.breakdown-weight{font-size:var(--font-size-xs);color:var(--color-text-tertiary);font-family:var(--font-family-mono)}.breakdown-meta{display:flex;flex-direction:column;gap:var(--space-2);padding:var(--space-3);background:var(--color-neutral-100);border-radius:var(--border-radius-sm);font-family:var(--font-family-mono);font-size:var(--font-size-xs)}.meta-item{display:flex;justify-content:space-between;align-items:center}.meta-label{color:var(--color-text-secondary);font-weight:var(--font-weight-medium)}.meta-value{color:var(--color-text-primary);font-weight:var(--font-weight-semibold)}@media (max-width: 480px){.pq-display{padding:var(--space-4)}.pq-score{font-size:var(--font-size-4xl)}.breakdown-grid{grid-template-columns:1fr}}.pq-score-overlay{position:absolute;top:var(--space-3);right:var(--space-3);background:#fafaf8f2;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border-radius:var(--border-radius-lg);padding:var(--space-3);box-shadow:var(--shadow-lg);min-width:80px;text-align:center;z-index:10;transition:all var(--transition-base)}[data-theme=dark] .pq-score-overlay{background:#1f1f1ff2}.pq-score-overlay.animating{transform:scale(1.05)}.overlay-score{font-size:var(--font-size-3xl);font-weight:var(--font-weight-bold);line-height:1;margin-bottom:var(--space-1);transition:color var(--transition-base)}.overlay-label{font-size:var(--font-size-xs);font-weight:var(--font-weight-medium);color:var(--color-text-secondary);text-transform:uppercase;letter-spacing:1px;margin-bottom:var(--space-1)}.overlay-band{font-size:var(--font-size-xs);font-weight:var(--font-weight-semibold);text-transform:capitalize;transition:color var(--transition-base)}.pq-score-overlay.band-good .overlay-score,.pq-score-overlay.band-good .overlay-band{color:var(--color-success)}.pq-score-overlay.band-fair .overlay-score,.pq-score-overlay.band-fair .overlay-band{color:var(--color-warning)}.pq-score-overlay.band-needs-attention .overlay-score,.pq-score-overlay.band-needs-attention .overlay-band{color:var(--color-error)}@media (max-width: 480px){.pq-score-overlay{padding:var(--space-2);min-width:70px;top:var(--space-2);right:var(--space-2)}.overlay-score{font-size:var(--font-size-2xl)}.overlay-label,.overlay-band{font-size:var(--font-size-xs)}}.coaching-cue-panel{width:100%;max-width:640px;margin:var(--space-3) auto 0;padding:var(--space-4);background:var(--color-bg-card);border:var(--border-width-thin) solid var(--border-color);border-radius:var(--border-radius-lg);box-shadow:var(--shadow-md);min-height:80px;display:flex;align-items:center;justify-content:center}.cues-container{width:100%}.cues-label{font-size:var(--font-size-xs);font-weight:var(--font-weight-medium);color:var(--color-text-secondary);text-transform:uppercase;letter-spacing:1px;margin-bottom:var(--space-3);text-align:center}.cues-list{display:flex;flex-direction:column;gap:var(--space-2)}.cue-item{display:flex;align-items:flex-start;gap:var(--space-2);padding:var(--space-2);background:var(--color-bg-secondary);border-radius:var(--border-radius-md);border-left:3px solid var(--color-info)}.cue-number{flex-shrink:0;width:20px;height:20px;display:flex;align-items:center;justify-content:center;background:var(--color-info);color:var(--color-text-inverse);border-radius:var(--border-radius-full);font-size:var(--font-size-xs);font-weight:var(--font-weight-bold)}.cue-text{font-size:var(--font-size-sm);color:var(--color-text-primary);line-height:var(--line-height-relaxed);font-weight:var(--font-weight-medium);flex:1}.cue-content{text-align:center;width:100%}.cue-label{font-size:var(--font-size-xs);font-weight:var(--font-weight-medium);color:var(--color-text-secondary);text-transform:uppercase;letter-spacing:1px;margin-bottom:var(--space-2)}.appreciative-feedback{display:flex;align-items:center;justify-content:center;gap:var(--space-3);padding:var(--space-2);background:linear-gradient(135deg,#5a8b6f1a,#5a8b6f0d);border-radius:var(--border-radius-md);width:100%}.feedback-icon{font-size:var(--font-size-2xl);flex-shrink:0}.feedback-text{font-size:var(--font-size-lg);font-weight:var(--font-weight-semibold);color:var(--color-success);line-height:var(--line-height-normal)}.good-posture-message{display:flex;align-items:center;justify-content:center;gap:var(--space-3);padding:var(--space-2);background:linear-gradient(135deg,#5a8b6f26,#5a8b6f14);border-radius:var(--border-radius-md);width:100%}.posture-icon{font-size:var(--font-size-2xl);font-weight:var(--font-weight-bold);color:var(--color-success);flex-shrink:0;width:32px;height:32px;display:flex;align-items:center;justify-content:center;background:#5a8b6f33;border-radius:var(--border-radius-full)}.posture-text{font-size:var(--font-size-base);font-weight:var(--font-weight-medium);color:var(--color-success);line-height:var(--line-height-normal)}@media (max-width: 480px){.coaching-cue-panel{padding:var(--space-3);margin:var(--space-2) auto 0;min-height:70px}.cue-item{padding:var(--space-2)}.cue-number{width:18px;height:18px;font-size:var(--font-size-xs)}.cue-text{font-size:var(--font-size-xs)}.feedback-text{font-size:var(--font-size-base)}.feedback-icon{font-size:var(--font-size-xl)}.posture-text{font-size:var(--font-size-sm)}.posture-icon{font-size:var(--font-size-xl);width:28px;height:28px}}.checkin-session{display:flex;flex-direction:column;flex:1;min-height:0;background:var(--color-bg-primary);padding:var(--space-4);overflow:hidden}.session-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--space-4);padding:var(--space-2) 0}.session-title{font-size:var(--font-size-2xl);font-weight:var(--font-weight-semibold);color:var(--color-text-primary);margin:0}.session-status{font-size:var(--font-size-sm);color:var(--color-text-secondary);padding:var(--space-2) var(--space-3);background:var(--color-bg-secondary);border-radius:var(--border-radius-md)}.video-container{position:relative;width:100%;max-width:640px;margin:0 auto;display:flex;flex-direction:column;align-items:center;flex:1;min-height:0}.video-feed{width:100%;height:100%;display:block;object-fit:contain;border-radius:var(--border-radius-lg);background:var(--color-neutral-900)}.video-wrapper{position:relative;max-width:100%;max-height:100%;aspect-ratio:var(--video-aspect-ratio, 4 / 3);border-radius:var(--border-radius-lg);overflow:hidden;background:var(--color-neutral-900);box-shadow:var(--shadow-lg);touch-action:none}.pose-overlay{position:absolute;top:0;left:0;width:100%;height:100%;object-fit:contain;pointer-events:none}.mirror-toggle{position:absolute;top:var(--space-3);left:var(--space-3);width:48px;height:48px;border-radius:var(--border-radius-full);background:#fafaf8e6;border:2px solid var(--color-neutral-300);font-size:var(--font-size-xl);cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .2s ease;box-shadow:var(--shadow-md);z-index:10}.mirror-toggle:hover{background:#fafaf8;transform:scale(1.05);box-shadow:var(--shadow-lg)}.mirror-toggle:active{transform:scale(.95)}.overlay-message{text-align:center;padding:var(--space-6);background:#fafaf8fa;border-radius:var(--border-radius-lg);max-width:640px;width:100%;margin:var(--space-4) auto 0;box-shadow:var(--shadow-xl)}.message-icon{font-size:var(--font-size-5xl);margin-bottom:var(--space-3)}.message-title{font-size:var(--font-size-xl);font-weight:var(--font-weight-semibold);color:var(--color-text-primary);margin-bottom:var(--space-2)}.overlay-message p{font-size:var(--font-size-base);color:var(--color-text-secondary);line-height:var(--line-height-normal);margin:0 0 var(--space-4)}.overlay-message button{margin-top:var(--space-2)}.overlay-message.no-person{background:#6b8ba8f2;color:var(--color-text-inverse)}.overlay-message.no-person .message-title,.overlay-message.no-person p{color:var(--color-text-inverse)}.status-hint{display:flex;align-items:center;gap:var(--space-2);padding:var(--space-3) var(--space-4);background:#6b8ba8e6;border-radius:var(--border-radius-md);color:var(--color-text-inverse);font-size:var(--font-size-sm);margin:var(--space-3) auto 0;max-width:640px;box-shadow:var(--shadow-sm)}.hint-icon{font-size:var(--font-size-lg);flex-shrink:0}.hint-text{line-height:var(--line-height-normal)}.positioning-tips{display:flex;flex-direction:column;gap:var(--space-2);margin-top:var(--space-4);text-align:left}.tip{font-size:var(--font-size-sm);color:var(--color-text-inverse);padding:var(--space-2);background:#fff3;border-radius:var(--border-radius-sm)}.overlay-message.reconnecting{background:#fafaf8fa}.overlay-message.error{background:#b85c5cf2;color:var(--color-text-inverse)}.overlay-message.error .message-title,.overlay-message.error p{color:var(--color-text-inverse)}.error-help{text-align:left;margin:var(--space-4) 0;padding:var(--space-3);background:#fff3;border-radius:var(--border-radius-sm)}.error-help p{font-weight:var(--font-weight-semibold);margin-bottom:var(--space-2);color:var(--color-text-inverse)}.error-help ul{margin:0;padding-left:var(--space-5);font-size:var(--font-size-sm)}.error-help li{margin-bottom:var(--space-1);color:var(--color-text-inverse)}@media (max-width: 480px){.checkin-session{padding:var(--space-3)}.session-header{margin-bottom:var(--space-2);padding:0}.session-title{font-size:var(--font-size-xl)}}.error-display{position:fixed;top:0;left:0;right:0;bottom:0;background:#00000080;display:flex;align-items:center;justify-content:center;padding:var(--space-4);z-index:var(--z-modal);animation:fadeIn var(--transition-base)}.error-content{background:var(--color-bg-card);border-radius:var(--border-radius-lg);padding:var(--space-8);max-width:480px;width:100%;text-align:center;box-shadow:var(--shadow-xl);animation:slideUp var(--transition-base)}.error-icon{font-size:var(--font-size-5xl);margin-bottom:var(--space-4)}.error-title{font-size:var(--font-size-2xl);font-weight:var(--font-weight-semibold);color:var(--color-text-primary);margin-bottom:var(--space-3)}.error-message{font-size:var(--font-size-base);color:var(--color-text-primary);line-height:var(--line-height-normal);margin-bottom:var(--space-4);font-weight:var(--font-weight-medium)}.error-guidance{font-size:var(--font-size-sm);color:var(--color-text-secondary);line-height:var(--line-height-relaxed);margin-bottom:var(--space-6)}.error-actions{display:flex;gap:var(--space-3);justify-content:center}.error-actions button{flex:1;max-width:200px}@media (max-width: 480px){.error-content{padding:var(--space-6)}.error-title{font-size:var(--font-size-xl)}.error-actions{flex-direction:column}.error-actions button{max-width:none}}.offline-indicator{position:fixed;top:var(--space-4);left:50%;transform:translate(-50%);z-index:var(--z-fixed);animation:slideDown var(--transition-base)}@keyframes slideDown{0%{transform:translate(-50%) translateY(-100%);opacity:0}to{transform:translate(-50%) translateY(0);opacity:1}}.indicator-content{display:flex;align-items:center;gap:var(--space-2);padding:var(--space-3) var(--space-5);border-radius:var(--border-radius-full);box-shadow:var(--shadow-lg);font-size:var(--font-size-sm);font-weight:var(--font-weight-medium)}.offline-indicator.offline .indicator-content{background:var(--color-error);color:var(--color-text-inverse)}.offline-indicator.online .indicator-content{background:var(--color-success);color:var(--color-text-inverse)}.indicator-icon{font-size:var(--font-size-base)}.indicator-text{white-space:nowrap}@media (max-width: 480px){.offline-indicator{top:var(--space-3);left:var(--space-3);right:var(--space-3);transform:none}@keyframes slideDown{0%{transform:translateY(-100%);opacity:0}to{transform:translateY(0);opacity:1}}.indicator-content{justify-content:center}}.orientation-guard{position:fixed;top:0;left:0;right:0;bottom:0;background:var(--color-bg-primary);display:flex;align-items:center;justify-content:center;padding:var(--space-6);z-index:var(--z-modal);animation:fadeIn var(--transition-base)}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.orientation-guard-content{text-align:center;max-width:320px;animation:slideUp var(--transition-base)}@keyframes slideUp{0%{transform:translateY(20px);opacity:0}to{transform:translateY(0);opacity:1}}.orientation-guard-icon{font-size:var(--font-size-5xl);margin-bottom:var(--space-4)}.orientation-guard-title{font-size:var(--font-size-2xl);font-weight:var(--font-weight-semibold);color:var(--color-text-primary);margin-bottom:var(--space-4);line-height:var(--line-height-tight)}.orientation-guard-message{font-size:var(--font-size-base);color:var(--color-text-secondary);line-height:var(--line-height-relaxed);margin:0}.rotation-graphic{margin-bottom:var(--space-6);display:flex;justify-content:center}.rotation-graphic img{animation:gentlePulse 2s ease-in-out infinite}@keyframes gentlePulse{0%,to{transform:scale(1);opacity:1}50%{transform:scale(1.05);opacity:.9}}@media (max-width: 480px){.orientation-guard{padding:var(--space-4)}.orientation-guard-title{font-size:var(--font-size-xl)}.orientation-guard-message{font-size:var(--font-size-sm)}.rotation-graphic img{width:100px;height:100px}}@media (orientation: landscape) and (max-height: 500px){.orientation-guard-content{display:flex;flex-direction:row;align-items:center;gap:var(--space-6);max-width:500px;text-align:left}.rotation-graphic{margin-bottom:0;flex-shrink:0}.rotation-graphic img{width:80px;height:80px}}.welcome-screen{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:calc(100vh - var(--header-height, 0px));padding:var(--space-6);background:var(--color-bg-primary)}.welcome-content{max-width:480px;width:100%;text-align:center}.welcome-logo{height:48px;width:auto;margin-bottom:var(--space-4)}.welcome-tagline{font-size:var(--font-size-xl);font-weight:var(--font-weight-medium);color:var(--color-text-secondary);margin:0 0 var(--space-8) 0;letter-spacing:.02em}.welcome-description{font-size:var(--font-size-base);color:var(--color-text-primary);line-height:var(--line-height-relaxed);margin:0 0 var(--space-8) 0}.welcome-privacy{display:flex;align-items:flex-start;gap:var(--space-4);text-align:left;padding:var(--space-5);background:var(--color-bg-card);border:var(--border-width-thin) solid var(--border-color);border-radius:var(--border-radius-md);box-shadow:var(--shadow-sm);margin-bottom:var(--space-6)}.privacy-icon{font-size:var(--font-size-2xl);flex-shrink:0}.privacy-text strong{display:block;font-size:var(--font-size-base);font-weight:var(--font-weight-semibold);color:var(--color-text-primary);margin-bottom:var(--space-2)}.privacy-text p{font-size:var(--font-size-sm);color:var(--color-text-secondary);line-height:var(--line-height-normal);margin:0}.welcome-camera-notice{font-size:var(--font-size-sm);color:var(--color-text-tertiary);margin:0 0 var(--space-6) 0}.welcome-cta{width:100%}@media (max-width: 480px){.welcome-screen{padding:var(--space-4)}.welcome-logo{height:40px}.welcome-tagline{font-size:var(--font-size-lg);margin-bottom:var(--space-6)}.welcome-description{font-size:var(--font-size-sm);margin-bottom:var(--space-6)}.welcome-privacy{padding:var(--space-4)}}.brand-header{display:flex;align-items:center;justify-content:space-between;padding:var(--space-4) var(--space-6);background:var(--color-bg-primary);border-bottom:var(--border-width-thin) solid var(--border-color)}.brand-header--compact{padding:var(--space-2) var(--space-4)}.brand-header__logo{height:32px;width:auto}.brand-header--compact .brand-header__logo{height:24px}.brand-header__theme-toggle{display:flex;align-items:center;justify-content:center;width:40px;height:40px;padding:0;background:transparent;border:var(--border-width-thin) solid var(--border-color);border-radius:var(--border-radius-md);cursor:pointer;transition:all var(--transition-fast)}.brand-header--compact .brand-header__theme-toggle{width:32px;height:32px}.brand-header__theme-toggle:hover{background:var(--color-bg-secondary);border-color:var(--color-primary)}.brand-header__theme-toggle:focus-visible{outline:2px solid var(--color-primary);outline-offset:2px}.theme-toggle__icon{font-size:var(--font-size-lg)}.brand-header--compact .theme-toggle__icon{font-size:var(--font-size-base)}@media (max-width: 480px){.brand-header{padding:var(--space-3) var(--space-4)}.brand-header__logo{height:28px}.brand-header--compact .brand-header__logo{height:20px}.brand-header__theme-toggle{width:36px;height:36px}.brand-header--compact .brand-header__theme-toggle{width:28px;height:28px}}:root{--color-deep-sage: #4A5D52;--color-warm-stone: #8B8178;--color-charcoal: #2C2C2C;--color-warm-white: #FAFAF8;--color-border: #E8E6E3;--color-primary: #4A5D52;--color-primary-light: #5A7062;--color-primary-dark: #3A4D42;--color-secondary: #8B8178;--color-secondary-light: #9B9188;--color-secondary-dark: #7B7168;--color-neutral-50: #FAFAF8;--color-neutral-100: #F5F5F3;--color-neutral-200: #E8E6E3;--color-neutral-300: #D4D2CF;--color-neutral-400: #A8A6A3;--color-neutral-500: #8B8178;--color-neutral-600: #6B6963;--color-neutral-700: #4A4843;--color-neutral-800: #2C2C2C;--color-neutral-900: #1A1A1A;--color-success: #5A8B6F;--color-warning: #C9A66B;--color-error: #B85C5C;--color-info: #6B8BA8;--color-bg-primary: #FAFAF8;--color-bg-secondary: #F5F5F3;--color-bg-tertiary: #E8E6E3;--color-bg-card: #FFFFFF;--color-text-primary: #2C2C2C;--color-text-secondary: #6B6963;--color-text-tertiary: #8B8178;--color-text-inverse: #FAFAF8;--font-family-primary: system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--font-family-secondary: var(--font-family-primary);--font-family-mono: "SF Mono", Monaco, "Cascadia Code", monospace;--font-size-xs: .75rem;--font-size-sm: .875rem;--font-size-base: 1rem;--font-size-lg: 1.125rem;--font-size-xl: 1.25rem;--font-size-2xl: 1.5rem;--font-size-3xl: 1.875rem;--font-size-4xl: 2.25rem;--font-size-5xl: 3rem;--font-weight-normal: 400;--font-weight-medium: 500;--font-weight-semibold: 600;--font-weight-bold: 700;--line-height-tight: 1.25;--line-height-normal: 1.5;--line-height-relaxed: 1.75;--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;--border-radius-sm: .25rem;--border-radius-md: .75rem;--border-radius-lg: 1rem;--border-radius-xl: 1.5rem;--border-radius-full: 9999px;--border-width-thin: 1px;--border-width-medium: 2px;--border-width-thick: 4px;--border-color: #E8E6E3;--shadow-sm: 0 1px 2px 0 rgba(0, 0, 0, .05);--shadow-md: 0 4px 6px -1px rgba(0, 0, 0, .1);--shadow-lg: 0 10px 15px -3px rgba(0, 0, 0, .1);--shadow-xl: 0 20px 25px -5px rgba(0, 0, 0, .1);--transition-fast: .15s ease-in-out;--transition-base: .25s ease-in-out;--transition-slow: .35s ease-in-out;--z-dropdown: 1000;--z-sticky: 1020;--z-fixed: 1030;--z-modal-backdrop: 1040;--z-modal: 1050;--z-popover: 1060;--z-tooltip: 1070;--dark-color-primary: #5A7062;--dark-color-primary-light: #6A8072;--dark-color-primary-dark: #4A5D52;--dark-color-secondary: #9B9188;--dark-color-secondary-light: #ABA198;--dark-color-secondary-dark: #8B8178;--dark-color-neutral-50: #1A1A1A;--dark-color-neutral-100: #242424;--dark-color-neutral-200: #2C2C2C;--dark-color-neutral-300: #3A3A3A;--dark-color-neutral-400: #525252;--dark-color-neutral-500: #6B6963;--dark-color-neutral-600: #8B8178;--dark-color-neutral-700: #A8A6A3;--dark-color-neutral-800: #D4D2CF;--dark-color-neutral-900: #FAFAF8;--dark-color-success: #6A9B7F;--dark-color-warning: #D9B67B;--dark-color-error: #C86C6C;--dark-color-info: #7B9BB8;--dark-color-bg-primary: #1A1A1A;--dark-color-bg-secondary: #242424;--dark-color-bg-tertiary: #2C2C2C;--dark-color-bg-card: #2C2C2C;--dark-color-text-primary: #FAFAF8;--dark-color-text-secondary: #A8A6A3;--dark-color-text-tertiary: #8B8178;--dark-color-text-inverse: #2C2C2C;--dark-color-border: #3A3A3A;--dark-shadow-sm: 0 1px 2px 0 rgba(0, 0, 0, .3);--dark-shadow-md: 0 4px 6px -1px rgba(0, 0, 0, .4);--dark-shadow-lg: 0 10px 15px -3px rgba(0, 0, 0, .4);--dark-shadow-xl: 0 20px 25px -5px rgba(0, 0, 0, .4)}[data-theme=dark]{--color-primary: var(--dark-color-primary);--color-primary-light: var(--dark-color-primary-light);--color-primary-dark: var(--dark-color-primary-dark);--color-secondary: var(--dark-color-secondary);--color-secondary-light: var(--dark-color-secondary-light);--color-secondary-dark: var(--dark-color-secondary-dark);--color-neutral-50: var(--dark-color-neutral-50);--color-neutral-100: var(--dark-color-neutral-100);--color-neutral-200: var(--dark-color-neutral-200);--color-neutral-300: var(--dark-color-neutral-300);--color-neutral-400: var(--dark-color-neutral-400);--color-neutral-500: var(--dark-color-neutral-500);--color-neutral-600: var(--dark-color-neutral-600);--color-neutral-700: var(--dark-color-neutral-700);--color-neutral-800: var(--dark-color-neutral-800);--color-neutral-900: var(--dark-color-neutral-900);--color-success: var(--dark-color-success);--color-warning: var(--dark-color-warning);--color-error: var(--dark-color-error);--color-info: var(--dark-color-info);--color-bg-primary: var(--dark-color-bg-primary);--color-bg-secondary: var(--dark-color-bg-secondary);--color-bg-tertiary: var(--dark-color-bg-tertiary);--color-bg-card: var(--dark-color-bg-card);--color-text-primary: var(--dark-color-text-primary);--color-text-secondary: var(--dark-color-text-secondary);--color-text-tertiary: var(--dark-color-text-tertiary);--color-text-inverse: var(--dark-color-text-inverse);--color-border: var(--dark-color-border);--border-color: var(--dark-color-border);--shadow-sm: var(--dark-shadow-sm);--shadow-md: var(--dark-shadow-md);--shadow-lg: var(--dark-shadow-lg);--shadow-xl: var(--dark-shadow-xl)}@media (prefers-color-scheme: dark){:root:not([data-theme=light]){--color-primary: var(--dark-color-primary);--color-primary-light: var(--dark-color-primary-light);--color-primary-dark: var(--dark-color-primary-dark);--color-secondary: var(--dark-color-secondary);--color-secondary-light: var(--dark-color-secondary-light);--color-secondary-dark: var(--dark-color-secondary-dark);--color-neutral-50: var(--dark-color-neutral-50);--color-neutral-100: var(--dark-color-neutral-100);--color-neutral-200: var(--dark-color-neutral-200);--color-neutral-300: var(--dark-color-neutral-300);--color-neutral-400: var(--dark-color-neutral-400);--color-neutral-500: var(--dark-color-neutral-500);--color-neutral-600: var(--dark-color-neutral-600);--color-neutral-700: var(--dark-color-neutral-700);--color-neutral-800: var(--dark-color-neutral-800);--color-neutral-900: var(--dark-color-neutral-900);--color-success: var(--dark-color-success);--color-warning: var(--dark-color-warning);--color-error: var(--dark-color-error);--color-info: var(--dark-color-info);--color-bg-primary: var(--dark-color-bg-primary);--color-bg-secondary: var(--dark-color-bg-secondary);--color-bg-tertiary: var(--dark-color-bg-tertiary);--color-bg-card: var(--dark-color-bg-card);--color-text-primary: var(--dark-color-text-primary);--color-text-secondary: var(--dark-color-text-secondary);--color-text-tertiary: var(--dark-color-text-tertiary);--color-text-inverse: var(--dark-color-text-inverse);--color-border: var(--dark-color-border);--border-color: var(--dark-color-border);--shadow-sm: var(--dark-shadow-sm);--shadow-md: var(--dark-shadow-md);--shadow-lg: var(--dark-shadow-lg);--shadow-xl: var(--dark-shadow-xl)}}.btn-primary,.btn-secondary{font-family:var(--font-family-primary);font-size:var(--font-size-base);font-weight:var(--font-weight-medium);padding:var(--space-4) var(--space-6);border-radius:var(--border-radius-md);border:none;cursor:pointer;transition:all var(--transition-base);text-align:center;display:inline-block;text-decoration:none}.btn-primary{background:var(--color-primary);color:var(--color-text-inverse)}.btn-primary:hover{background:var(--color-primary-light);box-shadow:var(--shadow-md)}.btn-primary:active{background:var(--color-primary-dark);transform:translateY(1px)}.btn-primary:focus-visible{outline:2px solid var(--color-primary);outline-offset:2px}.btn-secondary{background:transparent;color:var(--color-primary);border:var(--border-width-medium) solid var(--color-primary)}.btn-secondary:hover{background:var(--color-primary);color:var(--color-text-inverse)}.btn-secondary:active{background:var(--color-primary-dark);border-color:var(--color-primary-dark);color:var(--color-text-inverse);transform:translateY(1px)}.btn-secondary:focus-visible{outline:2px solid var(--color-primary);outline-offset:2px}.btn-primary:disabled,.btn-secondary:disabled{opacity:.5;cursor:not-allowed;pointer-events:none}*{margin:0;padding:0;box-sizing:border-box}body{font-family:var(--font-family-primary);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background:var(--color-bg-primary);color:var(--color-text-primary);touch-action:manipulation}.app{min-height:100vh;min-height:100dvh;display:flex;flex-direction:column}
