:root{--color-one: #0b289f;--color-two: #385ef4;--color-three: #a7c4ff;--color-four: #D5E6FD;--color-five: #eef5ff;--color-six: #FFFFFF;--color-primary: var(--color-one);--color-primary-light: var(--color-two);--color-primary-bg: var(--color-four);--color-primary-hover: #0D006D;--color-secondary: var(--color-two);--color-secondary-light: var(--color-three);--color-secondary-quitelight: var(--color-four);--color-secondary-superlight: var(--color-five);--color-secondary-dark: var(--color-one);--color-accent: #10B981;--color-accent-light: #34D399;--color-accent-dark: #059669;--color-error: #dc2626;--color-warning: #f59e0b;--color-success: #10b981;--color-info: #3b82f6;--color-text-primary: #1e293b;--color-text-secondary: #475569;--color-text-tertiary: #64748b;--color-text-light: #94a3b8;--color-text-white: #ffffff;--color-bg-white: #ffffff;--color-bg-light: #f8fafc;--color-bg-gray: #f1f5f9;--color-bg-dark: #1e293b;--color-bg-secondary: #f1f5f9;--gradient-primary: linear-gradient(135deg, var(--color-bg-light) 0%, var(--color-four) 100%);--gradient-secondary: linear-gradient(180deg, var(--color-four) 0%, var(--color-three) 100%);--gradient-dark: linear-gradient(135deg, var(--color-one) 0%, #1e40af 100%);--color-border: #e2e8f0;--color-border-light: #f1f5f9;--color-border-dark: #cbd5e1;--spacing-xs: 4px;--spacing-sm: 8px;--spacing-md: 16px;--spacing-lg: 24px;--spacing-xl: 32px;--spacing-2xl: 48px;--spacing-3xl: 64px;--spacing-4xl: 80px;--radius-sm: 2px;--radius-md: 5px;--radius-lg: 10px;--radius-xl: 20px;--radius-2xl: 10px;--radius-3xl: 15px;--radius-full: 9999px;--shadow-xs: 0 1px 2px rgba(0, 30, 151, .05);--shadow-sm: 0 2px 4px rgba(0, 30, 151, .05);--shadow-md: 0 4px 12px rgba(0, 30, 151, .08);--shadow-lg: 0 8px 24px rgba(0, 30, 151, .12);--shadow-xl: 0 12px 32px rgba(0, 30, 151, .15);--shadow-primary: 0 4px 12px rgba(0, 30, 151, .3);--shadow-primary-lg: 0 8px 24px rgba(0, 30, 151, .2);--font-family-primary: Inter, system-ui, Avenir, Helvetica, Arial, sans-serif;--font-family-mono: "Courier New", monospace;--font-size-xs: 12px;--font-size-sm: 13px;--font-size-base: 14px;--font-size-md: 15px;--font-size-lg: 16px;--font-size-xl: 18px;--font-size-2xl: 20px;--font-size-3xl: 24px;--font-size-4xl: 32px;--font-size-5xl: 48px;--font-weight-normal: 400;--font-weight-medium: 500;--font-weight-semibold: 600;--font-weight-bold: 700;--line-height-tight: 1.2;--line-height-normal: 1.5;--line-height-relaxed: 1.6;--transition-fast: .15s ease;--transition-base: .2s ease;--transition-slow: .3s ease;--z-index-dropdown: 100;--z-index-sticky: 500;--z-index-modal: 900;--z-index-banner: 1000;--z-index-tooltip: 1100;--header-height: 72px;--banner-height: 32px;--max-width-content: 1200px;--max-width-wide: 1400px;--opacity-disabled: .5;--opacity-hover: .8;--opacity-subtle: .7}*{box-sizing:border-box}:root{font-family:var(--font-family-primary);line-height:var(--line-height-normal);font-weight:var(--font-weight-normal);color-scheme:light;color:var(--color-text-primary);background-color:var(--color-bg-white);font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}a{font-weight:var(--font-weight-medium);color:var(--color-primary);text-decoration:inherit}a:hover{color:var(--color-primary-hover)}html,body{margin:0;padding:0;min-width:320px;min-height:100vh;width:100%;overflow-x:hidden;background-color:var(--color-bg-white)}#root{width:100%;overflow-x:hidden}*{scrollbar-width:thin;scrollbar-color:var(--color-three) var(--color-four)}*::-webkit-scrollbar{width:12px;height:12px}*::-webkit-scrollbar-track{background:none}*::-webkit-scrollbar-thumb{background:var(--color-primary);border-radius:6px;border:2px solid var(--color-bg-white)}*::-webkit-scrollbar-thumb:hover{background:var(--color-primary-hover)}h1{font-size:3.2em;line-height:1.1}button{font-family:inherit}@media (prefers-color-scheme: light){:root{color:var(--color-text-primary);background-color:var(--color-bg-white)}}.construction-banner{width:100%;max-width:100vw;height:0px;background:var(--color-primary);color:var(--color-text-white);padding:0;text-align:center;font-weight:var(--font-weight-semibold);font-size:var(--font-size-base);box-shadow:var(--shadow-md);position:sticky;top:0;z-index:var(--z-index-banner);overflow:hidden}.banner-text{display:inline-flex;align-items:center;gap:var(--spacing-sm);letter-spacing:.5px;font-weight:400;font-size:12px;text-transform:uppercase}.banner-text .material-icons{font-size:18px}@media (max-width: 768px){.construction-banner{font-size:13px}}.header{width:100%;max-width:100vw;overflow-x:hidden}.floating-header{position:fixed;top:0;left:50%;transform:translate(-50%);width:min(92%,1000px);z-index:1000;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#fff;border:1px solid rgba(255,255,255,.32);border-radius:0 0 20px 20px;box-shadow:0 6px 16px #0f172a1a;opacity:0;pointer-events:none;transition:opacity .05s ease}.floating-header .navbar{opacity:0;transform:translateY(-6px);transition:opacity .05s ease,transform .05s ease;padding:5px 7px}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.navbar{display:grid;grid-template-columns:1fr 1fr 1fr;align-items:center;padding:10px 20px;max-width:1400px;margin:0 auto;width:100%;transition:all .15s ease}.logo-container{display:flex;align-items:center;gap:2px;cursor:pointer;transition:opacity .2s ease;justify-self:start}.logo-container:hover{opacity:.8}.logo-icon{width:40px;height:32px;display:flex;align-items:center;justify-content:center;transition:all .3s ease}.logo-icon img{width:100%;height:100%;object-fit:contain}.logo-text{font-family:Righteous,cursive;font-size:var(--font-size-xl);font-weight:var(--font-weight-semibold);color:var(--color-primary);transition:all .3s ease}.nav-links{display:flex;align-items:center;gap:var(--spacing-xl);justify-content:center;justify-self:center}.nav-links a{font-size:var(--font-size-md);font-weight:var(--font-weight-medium);color:var(--color-primary);text-decoration:none;padding:var(--spacing-sm) var(--spacing-md);border-radius:var(--radius-md);transition:all var(--transition-base);cursor:pointer;opacity:.7;transition:all .2s ease}.nav-links a:hover{opacity:1}.nav-links a:hover{color:var(--color-primary);background:var(--color-primary-bg)}.login-button{background:none;color:var(--color-primary);border:none;padding:10px 24px;border-radius:var(--radius-3xl);font-size:var(--font-size-md);font-weight:var(--font-weight-semibold);cursor:pointer;transition:all var(--transition-base);font-family:var(--font-family-primary);display:flex;align-items:center;gap:var(--spacing-sm);justify-self:end}.login-button .material-icons{font-size:18px}.login-button:hover{background:var(--color-one);color:var(--color-text-white);transform:translateY(-1px);box-shadow:var(--shadow-primary)}.login-button:active{transform:translateY(0)}.user-menu{display:flex;align-items:center;gap:var(--spacing-md);justify-self:end}.user-email{font-size:var(--font-size-sm);color:var(--color-text-secondary);font-weight:var(--font-weight-medium)}.logo-container{text-decoration:none;color:inherit}.hero-section{text-align:center;padding:0 20px 20px;transition:opacity .5s ease-out,transform .5s ease-out,max-height .5s ease-out,margin .5s ease-out,padding .5s ease-out;overflow:hidden}.hero-section.fade-in{opacity:1;transform:translateY(0);max-height:500px}.hero-section.fade-out{opacity:0;transform:translateY(-20px);max-height:0;margin:0;padding:0 20px;pointer-events:none}.tagline{letter-spacing:-.05em;font-size:var(--font-size-5xl);font-weight:800;line-height:var(--line-height-tight);margin:0;color:#000}.tagline-highlight{color:var(--color-primary)}.hero-subtitle{font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);color:var(--color-one);margin:0 auto;background:var(--color-five);padding:4px 12px;border-radius:var(--radius-3xl);width:fit-content;display:flex;align-items:center;gap:4px;box-shadow:var(--shadow-md);border:0px solid var(--color-primary-light);opacity:.7}@media (max-width: 1024px){.nav-links{gap:var(--spacing-lg)}.nav-links a{font-size:var(--font-size-sm);padding:var(--spacing-xs) var(--spacing-sm)}}@media (max-width: 768px){.navbar{padding:5px 10px;grid-template-columns:1fr auto}.nav-links,.user-email{display:none}.logo-text{font-size:16px}.logo-icon{width:32px;height:26px}.login-button{padding:8px 20px;font-size:14px}.login-button .material-icons{display:none}.hero-section{padding:0 20px 20px}.tagline{font-size:36px}.hero-subtitle{font-size:var(--font-size-xs);padding:4px 8px;margin:var(--spacing-sm) auto 0}}.floating-header.visible{opacity:1;pointer-events:auto}.floating-header.visible .navbar{opacity:1;transform:translateY(0)}.modal-overlay{position:fixed;inset:0;background:#0c2f689e;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:center;z-index:9999;padding:20px}.modal-content{background:#fff;border-radius:var(--radius-2xl);max-width:480px;width:100%;max-height:90vh;overflow:hidden;display:flex;flex-direction:column;position:relative;box-shadow:var(--shadow-xl)}.modal-content:has(.card-editor-modal){max-width:1400px}.modal-close{position:absolute;top:16px;right:16px;background:var(--color-bg-light);border:none;width:32px;height:32px;border-radius:var(--radius-full);display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all var(--transition-base);z-index:1}.modal-close:hover{background:var(--color-border);transform:rotate(90deg)}.modal-close .material-icons{font-size:20px;color:var(--color-text-secondary)}@media (max-width: 768px){.modal-overlay{padding:0}.modal-content{max-height:100vh;border-radius:0;min-height:100vh}.modal-close{top:20px;right:20px}}.modal-backdrop{position:fixed;top:0;left:0;width:100vw;height:100vh;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:9999;overflow:hidden;margin:0;padding:0;backface-visibility:hidden;-webkit-font-smoothing:antialiased;contain:strict}.modal-container{background:var(--color-bg-white);border-radius:var(--radius-lg);box-shadow:var(--shadow-xl);max-width:400px;width:90%;max-height:90vh;overflow:hidden;display:flex;flex-direction:column;position:relative;margin:0;transform:translateZ(0);backface-visibility:hidden;-webkit-font-smoothing:antialiased;isolation:isolate;contain:strict;pointer-events:auto}.modal-header{display:flex;align-items:center;justify-content:space-between;padding:var(--spacing-lg);border-bottom:1px solid var(--color-border-light)}.modal-title{font-size:var(--font-size-xl);font-weight:var(--font-weight-semibold);color:var(--color-text-primary);margin:0}.modal-close{display:flex;align-items:center;justify-content:center;width:32px;height:32px;padding:0;background:transparent;border:none;border-radius:var(--radius-sm);color:var(--color-text-secondary);cursor:pointer;transition:background-color .15s ease,color .15s ease;transform:translateZ(0)}.modal-close:hover{background:var(--color-bg-secondary);color:var(--color-text-primary)}.modal-close .material-icons{font-size:20px}.modal-body{padding:var(--spacing-lg)}.modal-message{font-size:var(--font-size-base);color:var(--color-text-primary);line-height:1.6;margin:0}.modal-footer{display:flex;align-items:center;justify-content:flex-end;gap:var(--spacing-sm);padding:var(--spacing-lg);border-top:1px solid var(--color-border-light)}.modal-cancel-button,.modal-confirm-button{padding:var(--spacing-sm) var(--spacing-lg);border-radius:var(--radius-md);font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);cursor:pointer;transition:background-color .15s ease,color .15s ease;border:none;transform:translateZ(0);backface-visibility:hidden}.modal-cancel-button{background:var(--color-bg-white);color:var(--color-text-primary);border:1px solid var(--color-border)}.modal-cancel-button:hover{background:var(--color-bg-secondary)}.modal-confirm-button{background:var(--color-primary);color:var(--color-text-white)}.modal-confirm-button:hover{background:var(--color-primary-hover)}.modal-confirm-button.delete-button{background:var(--color-error);color:var(--color-text-white)}.modal-confirm-button.delete-button:hover{background:var(--color-error-hover, #dc2626)}@media (max-width: 768px){.modal-container{width:95%;max-width:none}.modal-footer{flex-direction:column-reverse}.modal-cancel-button,.modal-confirm-button{width:100%}}.pricing-estimate{max-width:600px;margin:20px auto 60px;padding:0}.pricing-card{background:#fff;border-radius:var(--radius-2xl);padding:15px;box-shadow:none;text-align:center}.page-range-section{display:flex;flex-direction:column;gap:0px;margin-bottom:0;padding:0}.card-stack-wrapper{display:flex;flex-direction:column;align-items:center;justify-content:center;position:relative;margin:12px 0 24px;gap:12px}.card-stack{position:relative;width:100%;max-width:280px;height:160px;display:flex;align-items:center;justify-content:center;pointer-events:none;contain:layout style}.card-stack-card{position:absolute;width:140px;height:100px;background:linear-gradient(180deg,#fdfdfd,#eff5ff);border-radius:7px;box-shadow:0 1px 3px #00103540,0 4px 12px #00123a0d;transform-origin:20% 80%;transform:translate(calc(var(--offset-x, 0) * 1px),calc(var(--offset-y, 0) * 1px)) rotate(calc(var(--rotate, 0) * 1deg));opacity:1;transition:transform .1s ease,opacity .2s ease,filter .2s ease;z-index:var(--depth, 1);will-change:transform;backface-visibility:hidden}.card-stack-caption{display:flex;flex-direction:column;align-items:center;gap:4px;text-transform:uppercase;font-size:var(--font-size-xs);letter-spacing:.08em;color:var(--color-text-tertiary)}.card-stack-card:nth-child(2){filter:blur(.75px)}.card-stack-card:last-child{filter:none}.card-stack-caption strong{font-size:var(--font-size-2xl);font-weight:var(--font-weight-semibold);letter-spacing:.04em;color:var(--color-primary)}@keyframes card-fan-pulse{0%,to{transform:translateY(0)}50%{transform:translateY(-6px)}}.page-range-header{display:inline-flex;align-items:center;gap:var(--spacing-xs);justify-content:center;font-size:var(--font-size-md);font-weight:var(--font-weight-semibold);color:var(--color-text-primary)}.page-range-header .material-icons{font-size:20px;color:var(--color-accent)}.page-range-values{display:flex;justify-content:center;gap:var(--spacing-lg)}.page-value{display:flex;flex-direction:column;gap:4px;align-items:center}.page-value .label{font-size:var(--font-size-xs);text-transform:uppercase;letter-spacing:.06em;color:var(--color-text-tertiary)}.page-value .value{font-size:var(--font-size-lg);font-weight:var(--font-weight-semibold);color:var(--color-primary)}.range-slider{position:relative;width:100%;height:36px}.slider-visual{position:absolute;inset:0 9px;overflow:hidden;pointer-events:none}.range-slider input[type=range]{position:absolute;pointer-events:none;-webkit-appearance:none;width:calc(100% - 18px);left:9px;height:20px;background:transparent;margin:0}.range-slider input[type=range]::-webkit-slider-runnable-track{height:6px;background:transparent}.range-slider input[type=range]::-moz-range-track{height:6px;background:transparent}.range-slider input[type=range]::-ms-track{height:6px;background:transparent;border-color:transparent;color:transparent}.range-slider input[type=range]::-webkit-slider-thumb{pointer-events:all;width:18px;height:18px;border-radius:50%;background:var(--color-primary);border:2px solid var(--color-text-white);box-shadow:0 2px 6px #001e9766;-webkit-appearance:none;margin-top:1px;cursor:grab}.range-slider input[type=range]::-webkit-slider-thumb:active{cursor:grabbing}.range-slider input[type=range]::-moz-range-thumb{pointer-events:all;width:18px;height:18px;border-radius:50%;background:var(--color-primary);border:2px solid var(--color-text-white);box-shadow:0 2px 6px #001e9766;cursor:grab}.range-slider input[type=range]::-moz-range-thumb:active{cursor:grabbing}.range-slider input[type=range].thumb-start{z-index:3}.range-slider input[type=range].thumb-end{z-index:4}.slider-track{position:absolute;top:50%;left:0;right:0;transform:translateY(-50%);height:6px;border-radius:var(--radius-full);background:var(--color-four)}.slider-selected{position:absolute;top:50%;left:0;right:0;height:6px;border-radius:var(--radius-full);background:var(--color-primary);transform:translateY(-50%);z-index:2}.page-range-summary{display:flex;justify-content:center;align-items:center;gap:var(--spacing-sm);font-size:var(--font-size-sm);color:var(--color-text-secondary)}.page-range-summary .divider{display:inline-block;width:6px;height:6px;border-radius:50%;background:var(--color-border-dark)}.material-info{font-size:var(--font-size-md);color:var(--color-text-secondary);margin:0}.quantity-info{font-size:var(--font-size-sm);color:var(--color-text-secondary);margin:0;font-weight:var(--font-weight-medium)}.pricing-explanation{margin:0 0 24px;padding:16px;background:var(--color-bg-light);border-radius:var(--radius-md);border:1px solid var(--color-border)}.pricing-tiers-info{display:flex;justify-content:center;gap:16px;flex-wrap:wrap}.tier{font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);color:var(--color-text-primary);padding:4px 8px;background:#fff;border-radius:var(--radius-sm);border:1px solid var(--color-border)}.quantity-selector{display:flex;align-items:center;justify-content:center;gap:0px;margin:0;padding:0}.quantity-button{width:40px;height:40px;border:2px solid var(--color-five);background:var(--color-five);border-radius:var(--radius-md);display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all var(--transition-base);color:var(--color-one)}.quantity-button:hover:not(:disabled){border-color:none;background:var(--color-primary);color:var(--color-text-white)}.quantity-button:disabled{opacity:.4;cursor:not-allowed}.quantity-button .material-icons{font-size:20px}.quantity-display{border:0px solid var(--color-primary);border-radius:50px;min-width:200px;text-align:center;display:flex;flex-direction:column;align-items:center;padding:0;gap:4px}.quantity-number{font-size:48px;font-weight:var(--font-weight-bold);color:var(--color-primary);line-height:1;position:relative;cursor:help;transition:color var(--transition-base)}.quantity-number:hover{color:var(--color-primary-hover)}.quantity-tooltip{position:absolute;bottom:100%;left:50%;transform:translate(-50%);margin-bottom:12px;background:#fff;border:1px solid var(--color-border);border-radius:var(--radius-lg);padding:12px 16px;box-shadow:var(--shadow-lg);width:280px;z-index:1000;opacity:0;pointer-events:none;transition:opacity .2s ease,transform .2s ease;transform:translate(-50%) translateY(-8px);text-align:left}.quantity-number:hover .quantity-tooltip{opacity:1;pointer-events:auto;transform:translate(-50%) translateY(0)}.quantity-tooltip strong{display:block;font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);color:var(--color-text-primary);margin-bottom:8px}.quantity-tooltip p{font-size:var(--font-size-xs);color:var(--color-text-secondary);margin:0 0 8px;line-height:1.4}.quantity-tooltip p:last-child{margin-bottom:0}.quantity-tooltip:before{content:"";position:absolute;top:100%;left:50%;transform:translate(-50%);border:6px solid transparent;border-top-color:#fff;filter:drop-shadow(0 2px 1px rgba(0,0,0,.1))}.quantity-label{font-size:var(--font-size-lg);font-weight:var(--font-weight-semibold);color:var(--color-text-primary)}.quantity-max{font-size:var(--font-size-sm);color:var(--color-text-secondary);opacity:.8}.price-display{margin:0;padding:0}.get-deck-button-container{position:relative;width:100%;display:flex;align-items:stretch;gap:var(--spacing-sm);margin-top:20px}.total-price-small{font-size:var(--font-size-lg);font-weight:var(--font-weight-semibold);color:var(--color-text-secondary);margin:0 0 4px;line-height:1;text-align:center}.unit-price-small{font-size:var(--font-size-sm);color:var(--color-text-tertiary);margin:0;text-align:center;opacity:.8}.pricing-breakdown-small{font-size:var(--font-size-sm);color:var(--color-text-secondary);font-family:var(--font-family-mono);font-weight:800;padding:0;border-radius:var(--radius-sm);text-align:center;opacity:.5;letter-spacing:-.05em}.language-selector-section{margin:10px 0;padding:10px 0 13px;border-top:1px solid var(--color-border);border-bottom:1px solid var(--color-border)}.language-label{display:block;font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);color:var(--color-text-primary);margin-bottom:10px;text-align:center}.language-selector{display:flex;flex-wrap:wrap;gap:3px;justify-content:center;padding:0}.language-option{background:#fff;border:0px solid var(--color-border);padding:5px 10px;border-radius:var(--radius-lg);font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);font-family:var(--font-family-primary);cursor:pointer;transition:all var(--transition-base);display:flex;align-items:center;gap:10px;color:var(--color-text-secondary);opacity:.5;margin-top:10px;position:relative}.language-option:hover{background:#fff;transform:translateY(-1px);opacity:1}.language-option.active{background:var(--color-one);border-color:none;color:var(--color-text-white);box-shadow:none;opacity:1}.language-option.disabled{opacity:.3;cursor:not-allowed;pointer-events:none}.language-option.disabled:hover{transform:none;opacity:.3}.coming-soon-badge{position:absolute;top:-8px;right:-8px;background:var(--color-one);color:#fff;font-size:8px;font-weight:var(--font-weight-bold);padding:2px 6px;border-radius:var(--radius-full);text-transform:uppercase;letter-spacing:.2px;box-shadow:var(--shadow-sm)}.language-flag{font-size:18px;line-height:1}.language-name{font-size:var(--font-size-sm)}.get-deck-button{background:var(--color-primary);color:var(--color-text-white);border:none;padding:10px;border-radius:var(--radius-md);font-size:var(--font-size-lg);font-weight:var(--font-weight-semibold);cursor:pointer;transition:all var(--transition-base);font-family:var(--font-family-primary);display:inline-flex;align-items:center;gap:var(--spacing-sm);margin:0;width:100%;justify-content:center}.language-flag-button{width:56px;min-width:56px;max-width:56px;border-radius:var(--radius-md);border:0px solid var(--color-border);background:var(--color-five);display:inline-flex;align-items:center;justify-content:center;cursor:pointer;transition:all var(--transition-base);font-size:24px}.language-flag-button:hover{border-color:var(--color-primary);box-shadow:var(--shadow-sm);transform:translateY(-1px)}.language-modal{padding:var(--spacing-lg)}.language-modal-title{font-size:var(--font-size-xl);font-weight:var(--font-weight-semibold);margin:0 0 var(--spacing-xs);color:var(--color-text-primary)}.language-modal-subtitle{font-size:var(--font-size-sm);color:var(--color-text-secondary);margin:0 0 var(--spacing-md)}.price-badge{position:absolute;top:-12px;right:18px;display:inline-flex;align-items:center;gap:var(--spacing-xs);padding:4px 12px;background:var(--color-four);color:var(--color-two);border-radius:var(--radius-full);font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);box-shadow:var(--shadow-md);z-index:var(--z-index-sticky);transition:transform var(--transition-fast),box-shadow var(--transition-fast);cursor:help}.price-badge:hover{transform:scale(1.05);box-shadow:var(--shadow-lg)}.price-tooltip{position:absolute;bottom:100%;right:0;margin-bottom:12px;background:#fff;border:1px solid var(--color-border);border-radius:var(--radius-lg);padding:12px 16px;box-shadow:var(--shadow-lg);width:320px;z-index:1001;opacity:0;pointer-events:none;transition:opacity .2s ease,transform .2s ease;transform:translateY(-8px);text-align:left;color:var(--color-text-primary);white-space:normal;word-wrap:break-word}.price-badge:hover .price-tooltip{opacity:1;pointer-events:auto;transform:translateY(0)}.price-tooltip:before{content:"";position:absolute;top:100%;right:12px;border:6px solid transparent;border-top-color:#fff;filter:drop-shadow(0 2px 1px rgba(0,0,0,.1))}.price-tooltip>strong{display:block;font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);color:var(--color-text-primary);margin-bottom:8px}.price-tooltip p strong{display:inline;font-weight:var(--font-weight-bold);color:var(--color-text-primary)}.price-tooltip p{font-size:var(--font-size-xs);color:var(--color-text-secondary);margin:0 0 8px;line-height:1.4}.price-tooltip p:last-child{margin-bottom:0}.price-badge .material-icons{font-size:18px;line-height:1}.get-deck-button .material-icons{font-size:24px}.get-deck-button:hover{background:var(--color-primary-hover);transform:translateY(-2px);box-shadow:var(--shadow-primary-lg)}.get-deck-button:active{transform:translateY(0)}.processing-note{font-size:var(--font-size-sm);color:var(--color-text-secondary);line-height:1.2;margin:10px 0 0;text-align:center;opacity:.3}.processing-note strong{color:var(--color-text-primary);font-weight:var(--font-weight-semibold)}@media (max-width: 768px){.pricing-card{padding:10px}.page-range-section{padding:0;gap:var(--spacing-xs)}.page-range-values{gap:var(--spacing-sm)}.page-value .value{font-size:var(--font-size-md)}.range-slider{height:35px}.range-slider input[type=range]{height:20px}.range-slider input[type=range]::-webkit-slider-thumb{margin-top:0}.range-slider input[type=range]::-moz-range-thumb{margin-top:0}.pricing-tiers-info{gap:8px}.tier{font-size:var(--font-size-xs);padding:3px 6px}.quantity-selector{gap:0px}.quantity-button{width:52px;height:52px}.quantity-button .material-icons{font-size:24px}.quantity-display{padding:16px;min-width:160px}.quantity-number{font-size:36px}.quantity-label{font-size:var(--font-size-md)}.quantity-max{font-size:var(--font-size-xs)}.total-price-small{font-size:var(--font-size-md)}.unit-price-small{font-size:var(--font-size-xs)}.pricing-breakdown-small{font-size:10px;padding:4px 8px}.language-selector{gap:6px}.language-option{padding:8px 12px;font-size:var(--font-size-xs)}.language-flag{font-size:16px}.language-name{font-size:var(--font-size-xs)}.get-deck-button{padding:14px 24px;font-size:var(--font-size-md)}.price-badge{top:-10px;right:12px;padding:5px 10px;font-size:var(--font-size-xs)}.processing-note{font-size:var(--font-size-xs)}}.signup-form-container{padding:48px 40px}.signup-header{text-align:center;margin-bottom:32px}.signup-title{font-size:var(--font-size-3xl);font-weight:var(--font-weight-bold);color:var(--color-text-primary);margin:0 0 12px}.signup-subtitle{font-size:var(--font-size-md);color:var(--color-text-secondary);margin:0}.signup-form{display:flex;flex-direction:column;gap:24px}.error-banner{background:#dc26261a;border:1px solid var(--color-error);border-radius:var(--radius-md);padding:12px 16px;display:flex;align-items:center;gap:8px;color:var(--color-error);font-size:var(--font-size-sm);font-weight:var(--font-weight-medium)}.form-group{display:flex;flex-direction:column;gap:8px}.form-label{font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);color:var(--color-text-primary)}.input-icon{position:absolute;left:14px;font-size:20px;color:var(--color-text-tertiary);pointer-events:none}.form-input{width:100%;padding:12px 16px 12px 44px;border:2px solid var(--color-border);border-radius:var(--radius-md);font-size:var(--font-size-md);font-family:var(--font-family-primary);color:var(--color-text-primary);transition:all var(--transition-base);background:#fff}.form-input:focus{outline:none;border-color:var(--color-primary);box-shadow:0 0 0 3px var(--color-primary-bg)}.form-input:disabled{background:var(--color-bg-light);cursor:not-allowed;opacity:var(--opacity-disabled)}.form-input::placeholder{color:var(--color-text-light)}.password-toggle{position:absolute;right:12px;background:none;border:none;padding:4px;cursor:pointer;display:flex;align-items:center;justify-content:center;color:var(--color-text-tertiary);transition:color var(--transition-base)}.error-message{font-size:var(--font-size-xs);color:var(--color-error);margin:0;display:flex;align-items:center;gap:4px}.file-info{display:flex;align-items:center;gap:8px;padding:12px 16px;background:var(--color-bg-light);border-radius:var(--radius-md);font-size:var(--font-size-sm);color:var(--color-text-secondary)}.file-info .material-icons{font-size:18px;color:var(--color-primary)}.file-name{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;flex:1}.submit-button{background:var(--color-primary);color:var(--color-text-white);border:none;padding:14px 24px;border-radius:var(--radius-md);font-size:var(--font-size-lg);font-weight:var(--font-weight-semibold);cursor:pointer;transition:all var(--transition-base);font-family:var(--font-family-primary);display:flex;align-items:center;justify-content:center;gap:var(--spacing-sm)}.submit-button:hover:not(:disabled){background:var(--color-primary-hover);transform:translateY(-1px);box-shadow:var(--shadow-primary-lg)}.submit-button:active:not(:disabled){transform:translateY(0)}.submit-button:disabled{opacity:var(--opacity-disabled);cursor:not-allowed}.submit-button .material-icons{font-size:20px}.submit-button .spinning{animation:spin 1s linear infinite}.terms-text{font-size:var(--font-size-xs);color:var(--color-text-tertiary);text-align:center;margin:0;line-height:var(--line-height-relaxed)}.dev-submit-button{margin-top:16px;width:100%;background:transparent;border:1px dashed var(--color-border-strong);color:var(--color-text-tertiary);padding:12px 16px;border-radius:var(--radius-md);font-size:var(--font-size-sm);cursor:pointer;display:flex;align-items:center;justify-content:center;gap:8px;transition:all var(--transition-base);font-family:var(--font-family-primary)}.dev-submit-button:hover:not(:disabled){color:var(--color-text-primary);border-color:var(--color-primary);background:#4074ff14}.dev-submit-button:disabled{opacity:var(--opacity-disabled);cursor:not-allowed}@media (max-width: 768px){.signup-form-container{padding:32px 24px}.signup-title{font-size:var(--font-size-2xl)}.signup-subtitle{font-size:var(--font-size-sm)}.form-input{padding:10px 14px 10px 40px}.submit-button{padding:12px 20px;font-size:var(--font-size-md)}}@keyframes glow{0%,to{box-shadow:0 0 20px #004a804d,0 0 40px #004a801a}50%{box-shadow:0 0 30px #004a8080,0 0 60px #004a8033}}.uploader-container{max-width:600px;margin:10px auto 100px;padding:0 10px}.upload-box{border:2px solid var(--color-secondary-light);border-radius:var(--radius-3xl);padding:40px;text-align:center;background:#fff;cursor:pointer;transition:all .05s;position:relative;animation:none;box-sizing:border-box;transform:translateY(0);box-shadow:none}.upload-box.uploaded{border:2px solid var(--color-three);border-radius:var(--radius-lg);padding:10px;background:var(--color-five);animation:none;min-height:auto}.upload-box:hover{border:2px solid var(--color-primary);border-style:solid;background:var(--color-four);transform:none;box-shadow:0 0 20px #004a804d,0 0 40px #004a801a;animation:glow 2.5s ease-in-out infinite}.upload-box.uploaded:hover{border-color:var(--color-primary);background:var(--color-four);transform:translateY(-1px);box-shadow:var(--shadow-md)}.upload-box.uploaded:hover .uploaded-content,.upload-box.uploaded:hover .uploaded-content .material-icons,.upload-box.uploaded:hover .uploaded-filename{color:var(--color-one)}.upload-box.dragging{border-color:var(--color-primary-hover);background:var(--color-primary-bg);transform:scale(1.02);animation:none}.upload-content{pointer-events:none}.upload-text{font-size:16px;line-height:1.35;margin:0 0 20px;color:var(--color-primary)}.upload-text strong{font-weight:600}.file-icon{margin-top:12px;opacity:.8}.file-icon .material-icons,.file-icon .material-symbols-outlined{font-size:80px;color:var(--color-primary)}.uploaded-content{display:flex;align-items:center;justify-content:center;gap:12px;color:var(--color-three)}.uploaded-content .material-icons{font-size:20px;color:var(--color-three)}.uploaded-filename{font-size:var(--font-size-md);font-weight:var(--font-weight-medium);color:var(--color-three);max-width:300px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.page-count-badge{position:absolute;bottom:-8px;right:-8px;background:var(--color-four);color:var(--color-two);padding:6px 12px;border-radius:var(--radius-3xl);font-size:var(--font-size-xs);font-weight:var(--font-weight-semibold);display:flex;align-items:center;gap:4px;box-shadow:var(--shadow-md);border:0px solid white;z-index:10;opacity:1}.page-count-badge .material-icons{font-size:14px}.upload-status{margin-top:20px;text-align:center;font-weight:500;display:flex;align-items:center;justify-content:center;gap:8px;font-size:var(--font-size-md)}.upload-status.processing{color:var(--color-primary)}.upload-status.success{color:#059669}.upload-status .material-icons{font-size:20px}.upload-status .spinning{animation:spin 1s linear infinite}.upload-progress-container{margin-top:20px;display:flex;flex-direction:column;gap:8px;align-items:stretch}.upload-progress-bar{position:relative;width:100%;height:6px;border-radius:999px;overflow:hidden;background:#6b72801a}.upload-progress-bar-fill{height:100%;background:linear-gradient(90deg,var(--color-primary) 0%,var(--color-primary) 50%,var(--color-primary) 100%);transition:width .25s ease-out}.upload-progress-note{font-size:var(--font-size-xs);color:var(--color-text-secondary);text-align:center}@media (max-width: 768px){.upload-box{padding:20px 10px}.upload-box.uploaded{padding:10px 15px}.upload-text{font-size:16px}.uploaded-filename{font-size:var(--font-size-sm);max-width:200px}.uploaded-content{gap:8px}.uploaded-content .material-icons{font-size:18px}.page-count-badge{bottom:-6px;right:-6px;padding:4px 8px;font-size:10px}.page-count-badge .material-icons{font-size:12px}}.features-section{width:100%;max-width:100vw;padding:80px 20px;overflow-x:hidden}.features-container{max-width:1200px;margin:0 auto;width:100%}.features-badge{display:inline-block;background:none;color:var(--color-primary);padding:var(--spacing-sm) var(--spacing-lg);border-radius:var(--radius-2xl);font-size:var(--font-size-base);font-weight:var(--font-weight-semibold);margin-bottom:var(--spacing-2xl);text-align:center;width:fit-content;margin-left:auto;margin-right:auto;display:block}.features-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(280px,100%),1fr));gap:24px;margin-top:40px}.feature-card{background:#fff;border-radius:16px;padding:32px;box-shadow:none;transition:none;position:relative}.feature-card.coming-soon{opacity:.45}.feature-coming-soon-label{position:absolute;top:16px;right:16px;padding:4px 10px;border-radius:999px;background:#0f172a0f;color:#374151;font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.08em}.feature-icon{margin-bottom:var(--spacing-md)}.feature-icon .material-icons{font-size:48px;color:var(--color-primary)}.feature-title{font-size:18px;font-weight:600;color:#1e293b;margin:0 0 12px;line-height:1.4}.feature-description{font-size:14px;color:#64748b;line-height:1.6;margin:0}.feature-note{font-size:13px;color:#64748b;margin:12px 0 0;font-style:italic}.quiz-logos{display:flex;flex-wrap:wrap;gap:12px;margin-top:16px}.logo-item{background:var(--color-bg-gray);padding:6px 14px;border-radius:var(--radius-2xl);font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);color:var(--color-text-secondary);display:flex;align-items:center;gap:6px}.logo-item .material-icons{font-size:16px}@media (max-width: 768px){.features-section{padding:60px 20px}.features-grid{grid-template-columns:1fr}.feature-card{padding:24px}}.footer{width:100%;max-width:100vw;background:var(--color-one);color:var(--color-text-white);padding:var(--spacing-3xl) var(--spacing-lg) var(--spacing-xl);overflow-x:hidden}.footer-container{max-width:var(--max-width-content);margin:0 auto;width:100%}.footer-content{display:grid;grid-template-columns:2fr 3fr;gap:var(--spacing-3xl);margin-bottom:var(--spacing-2xl)}.footer-brand{display:flex;flex-direction:column;gap:var(--spacing-md);min-width:0}.footer-logo{display:flex;align-items:center;gap:var(--spacing-sm)}.footer-logo-icon{width:36px;height:36px;background:#ffffff26;border-radius:var(--radius-md);display:flex;align-items:center;justify-content:center;flex-shrink:0}.footer-logo-icon img{width:100%;height:100%;object-fit:contain}.footer-logo-text{font-size:var(--font-size-2xl);font-weight:var(--font-weight-bold);color:var(--color-text-white);word-break:break-word}.footer-tagline{font-size:var(--font-size-base);color:#fffc;margin:0}.footer-links{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--spacing-2xl);min-width:0}.footer-column{display:flex;flex-direction:column;gap:var(--spacing-md)}.footer-heading{font-size:var(--font-size-lg);font-weight:var(--font-weight-semibold);color:var(--color-text-white);margin:0 0 var(--spacing-sm) 0}.footer-list{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:var(--spacing-md)}.footer-list li a{color:#ffffffb3;text-decoration:none;font-size:var(--font-size-base);transition:color var(--transition-base)}.footer-list li a:hover{color:var(--color-text-white)}.footer-bottom{padding-top:var(--spacing-xl);border-top:1px solid rgba(255,255,255,.1);text-align:center}.footer-copyright{font-size:var(--font-size-base);color:#fff9;margin:0}@media (max-width: 768px){.footer{padding:var(--spacing-2xl) var(--spacing-lg) var(--spacing-lg)}.footer-content{grid-template-columns:1fr;gap:var(--spacing-2xl);margin-bottom:var(--spacing-xl)}.footer-links{grid-template-columns:repeat(2,1fr);gap:var(--spacing-xl)}.footer-column:last-child{grid-column:span 2}}@media (max-width: 480px){.footer-links{grid-template-columns:1fr;gap:var(--spacing-lg)}.footer-column:last-child{grid-column:span 1}}.deck-card{background:var(--color-bg-white);border:none;border-radius:var(--radius-lg);padding:var(--spacing-md);transition:all var(--transition-base);display:flex;flex-direction:column;gap:var(--spacing-sm);box-shadow:none;position:relative}.deck-card.clickable{cursor:pointer}.deck-card.clickable:hover{box-shadow:var(--shadow-md);transform:translateY(0);border-color:var(--color-primary)}.deck-card-delete{position:absolute;top:var(--spacing-sm);right:var(--spacing-sm);display:flex;align-items:center;justify-content:center;width:24px;height:24px;padding:0;background:transparent;border:none;border-radius:var(--radius-sm);color:var(--color-text-tertiary);cursor:pointer;transition:all var(--transition-base);opacity:0;z-index:10}.deck-card:hover .deck-card-delete{opacity:1}.deck-card-delete:hover{background:var(--color-error-bg, rgba(239, 68, 68, .1));color:var(--color-error, #ef4444);opacity:1}.deck-card-delete:active{transform:scale(.95)}.deck-card-delete:disabled{opacity:.6;cursor:not-allowed}.deck-card-delete .material-icons{font-size:18px}.deck-card-delete .material-icons.spinning{animation:spin 1s linear infinite}.deck-card-header{display:flex;justify-content:space-between;align-items:center}.deck-card-icon{width:48px;height:48px;background:var(--color-primary-bg);border-radius:var(--radius-md);display:flex;align-items:center;justify-content:center;color:var(--color-primary)}.deck-card-icon .material-icons{font-size:24px}.deck-card-status{display:flex;align-items:center;gap:var(--spacing-xs);font-size:var(--font-size-sm);font-weight:var(--font-weight-medium)}.status-icon{font-size:18px!important}.deck-card-content{flex:1;display:flex;flex-direction:column}.deck-card-title{font-family:var(--font-family-primary);font-size:var(--font-size-xl);font-weight:var(--font-weight-semibold);line-height:1.2;color:var(--color-text-primary);margin:0 0 var(--spacing-xs);overflow:hidden;text-overflow:ellipsis;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;cursor:text}.deck-card-title-input{width:100%;font-family:var(--font-family-primary);font-size:var(--font-size-xl);font-weight:var(--font-weight-semibold);line-height:1.2;color:var(--color-text-primary);background:transparent;border:2px solid var(--color-primary);border-radius:var(--radius-sm);padding:4px 8px;outline:none;margin:0 0 var(--spacing-xs);box-sizing:border-box}.deck-card-title-input:focus{background:var(--color-primary-bg)}.deck-card-title-input:disabled{opacity:.6;cursor:wait}.deck-card-description{font-size:var(--font-size-sm);color:var(--color-text-secondary);margin:0;overflow:hidden;text-overflow:ellipsis;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical}.deck-card-footer{display:flex;justify-content:space-between;align-items:center;padding-top:var(--spacing-md);border-top:1px solid var(--color-border-light)}.deck-card-progress{margin-top:var(--spacing-sm);display:flex;flex-direction:column;gap:var(--spacing-xs)}.deck-card-progress-bar{position:relative;width:100%;height:4px;border-radius:999px;overflow:hidden;background:var(--color-border-light)}.deck-card-progress-bar:before{content:"";position:absolute;inset:0;background:linear-gradient(90deg,var(--color-primary) 0%,var(--color-warning) 50%,var(--color-primary) 100%);animation:deck-progress-stripes 1.2s linear infinite;transform:translate(-100%)}.deck-card-progress-text{font-size:var(--font-size-xs);color:var(--color-text-secondary)}.deck-card-meta{display:flex;gap:var(--spacing-md);font-size:var(--font-size-xs);color:var(--color-text-tertiary);margin-top:auto}.deck-card-date,.deck-card-count,.deck-card-language{display:flex;align-items:center;gap:var(--spacing-xs)}.deck-card-date .material-icons,.deck-card-count .material-icons,.deck-card-language .material-icons{font-size:16px}.deck-card-actions{display:flex;align-items:center;gap:var(--spacing-sm);width:100%}.deck-card-action{display:flex;align-items:center;justify-content:center;gap:var(--spacing-xs);padding:var(--spacing-sm) var(--spacing-md);border:none;border-radius:var(--radius-md);font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);cursor:pointer;transition:all var(--transition-base);flex:1;color:#fff;box-shadow:none;opacity:.3}.deck-card:hover .deck-card-action{opacity:1}.deck-card-action .material-icons{font-size:18px}.deck-card-action.edit-btn{background:var(--color-text-secondary)}.deck-card-action.edit-btn:hover{background:var(--color-text-primary)}.deck-card-action.download-btn{background:var(--color-primary)}.deck-card-action.download-btn:hover{background:var(--color-primary-hover)}.deck-card-action:disabled{opacity:.6;cursor:not-allowed}.deck-card-action .material-icons.spinning{animation:spin 1s linear infinite}@keyframes deck-progress-stripes{0%{transform:translate(-100%)}to{transform:translate(100%)}}.deck-card-progress-bar-container{width:100%;height:6px;background:var(--color-border-light);border-radius:999px;overflow:hidden}.deck-card-progress-bar-fill{height:100%;background:linear-gradient(90deg,var(--color-primary),var(--color-primary-hover));border-radius:999px;transition:width .3s ease}.deck-card-progress-text.error{color:var(--color-error)}.deck-card-action.error-retry{background:var(--color-error)}.deck-card-action.error-retry:hover{background:var(--color-error-hover, #dc2626)}@media (max-width: 768px){.deck-card{padding:var(--spacing-md)}.deck-card-footer{flex-direction:column;align-items:flex-start;gap:var(--spacing-sm)}.deck-card-actions{width:100%;justify-content:center}.deck-card-action{flex:1;justify-content:center}}.user-hub-container{min-height:calc(100vh - var(--header-height) - var(--banner-height));padding:var(--spacing-md) var(--spacing-md);margin-bottom:var(--spacing-4xl);background:none}.user-hub-header{max-width:var(--max-width-content);margin:0 auto var(--spacing-2xl);text-align:center}.user-hub-header h1{font-size:var(--font-size-4xl);font-weight:var(--font-weight-bold);color:var(--color-text-primary);margin:0 0 var(--spacing-sm)}.user-hub-subtitle{font-size:var(--font-size-lg);color:var(--color-text-secondary);margin:0}.decks-grid{max-width:var(--max-width-content);margin:0 auto;display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:var(--spacing-sm);padding:0}.create-deck-card{display:flex;flex-direction:column;justify-content:stretch}.decks-grid.pricing-active .create-deck-card{grid-column:1 / -1}.create-deck-card .uploader-container{max-width:100%;margin:0;padding:0}.create-deck-card .upload-box{border-radius:var(--radius-lg);box-shadow:none}.user-hub-loading,.user-hub-error,.user-hub-empty{max-width:var(--max-width-content);margin:var(--spacing-4xl) auto;text-align:center;padding:var(--spacing-2xl)}.user-hub-loading{display:flex;flex-direction:column;align-items:center;gap:var(--spacing-md)}.loading-spinner{width:48px;height:48px;border:4px solid var(--color-border);border-top-color:var(--color-primary);border-radius:50%;animation:spin 1s linear infinite}.user-hub-error{color:var(--color-error)}.retry-button{margin-top:var(--spacing-md);padding:var(--spacing-sm) var(--spacing-lg);background:var(--color-primary);color:var(--color-text-white);border:none;border-radius:var(--radius-md);font-weight:var(--font-weight-medium);cursor:pointer;transition:background var(--transition-base)}.user-hub-empty{display:flex;flex-direction:column;align-items:center;gap:var(--spacing-md);color:var(--color-text-secondary)}.user-hub-empty .material-icons{font-size:64px;color:var(--color-text-light)}.user-hub-empty p{font-size:var(--font-size-lg);margin:0}.user-hub-container .deck-card-action{background-color:#fff!important;color:var(--color-text-primary)!important;border:1px solid var(--color-border)!important;height:40px!important;box-shadow:var(--shadow-sm)}.user-hub-container .deck-card-action:hover{background-color:var(--color-bg-secondary)!important;border-color:var(--color-primary)!important;color:var(--color-primary)!important}@media (max-width: 768px){.decks-grid{grid-template-columns:1fr;gap:var(--spacing-md)}.user-hub-header h1{font-size:var(--font-size-3xl)}}.login-page{height:calc(100vh - var(--header-height) - var(--banner-height));max-height:calc(100vh - var(--header-height) - var(--banner-height));display:flex;align-items:center;justify-content:center;padding:var(--spacing-2xl) var(--spacing-md);background:none;overflow:hidden;box-sizing:border-box}.login-container{width:100%;max-width:350px;max-height:100%;background:none;border-radius:var(--radius-xl);box-shadow:none;overflow-y:auto;overflow-x:hidden;box-sizing:border-box;scrollbar-width:none;-ms-overflow-style:none}.login-container::-webkit-scrollbar{display:none}.login-header{text-align:center;margin-bottom:var(--spacing-2xl)}.login-title{font-size:var(--font-size-4xl);font-weight:var(--font-weight-bold);color:var(--color-text-primary);margin:0 0 var(--spacing-sm)}.login-subtitle{font-size:var(--font-size-base);color:var(--color-text-secondary);margin:0}.login-form{display:flex;flex-direction:column;gap:var(--spacing-sm)}.form-input{width:100%;padding:var(--spacing-md) var(--spacing-md) var(--spacing-md) 48px;border:1px solid var(--color-border);border-radius:var(--radius-lg);font-size:var(--font-size-base);font-family:var(--font-family-primary);color:var(--color-text-primary);background:var(--color-bg-white);transition:all var(--transition-base)}.login-submit-button{width:100%;padding:var(--spacing-md) var(--spacing-lg);background:var(--color-primary);color:var(--color-text-white);border:none;border-radius:var(--radius-full);font-size:var(--font-size-base);font-weight:var(--font-weight-semibold);font-family:var(--font-family-primary);cursor:pointer;display:flex;align-items:center;justify-content:center;gap:var(--spacing-sm);transition:all var(--transition-base);margin-top:var(--spacing-md)}.login-submit-button:hover:not(:disabled){background:var(--color-primary-hover);transform:translateY(-1px);box-shadow:var(--shadow-primary)}.login-submit-button:active:not(:disabled){transform:translateY(0)}.login-submit-button:disabled{opacity:var(--opacity-disabled);cursor:not-allowed}.login-submit-button .material-icons{font-size:20px}.login-footer{text-align:center;margin-top:var(--spacing-md)}.signup-link-text{font-size:var(--font-size-sm);color:var(--color-text-secondary);margin:0}.signup-link{color:var(--color-primary);font-weight:var(--font-weight-semibold);text-decoration:none;transition:color var(--transition-base)}.signup-link:hover{color:var(--color-primary-hover);text-decoration:underline}@media (max-width: 768px){.login-title{font-size:var(--font-size-3xl)}}.signup-page{height:calc(100vh - var(--header-height) - var(--banner-height));max-height:calc(100vh - var(--header-height) - var(--banner-height));display:flex;align-items:center;justify-content:center;padding:var(--spacing-md) var(--spacing-md);background:none;overflow:hidden;box-sizing:border-box}.signup-container{width:100%;max-width:350px;max-height:100%;background:none;border-radius:var(--radius-xl);box-shadow:none;overflow-y:auto;overflow-x:hidden;box-sizing:border-box;scrollbar-width:none;-ms-overflow-style:none}.auth-back-button{display:inline-flex;align-items:center;gap:var(--spacing-xs);margin-bottom:var(--spacing-lg);padding:6px 10px;border-radius:var(--radius-lg);border:1px solid var(--color-border);background:none;color:var(--color-one);font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);cursor:pointer;transition:all var(--transition-base)}.auth-back-button .material-icons{font-size:18px}.auth-back-button:hover{border-color:var(--color-primary);color:var(--color-primary);box-shadow:var(--shadow-sm);transform:translateY(-1px)}.signup-container::-webkit-scrollbar{display:none}.signup-header{text-align:center;margin-bottom:var(--spacing-2xl)}.signup-title{font-size:var(--font-size-4xl);font-weight:var(--font-weight-bold);color:var(--color-text-primary);margin:0 0 var(--spacing-sm)}.signup-subtitle{font-size:var(--font-size-base);color:var(--color-text-secondary);margin:0}.signup-form{display:flex;flex-direction:column;gap:var(--spacing-sm)}.error-banner{display:flex;align-items:center;gap:var(--spacing-sm);padding:var(--spacing-md);background:#fee2e2;border:1px solid var(--color-error);border-radius:var(--radius-md);color:var(--color-error);font-size:var(--font-size-sm);font-weight:var(--font-weight-medium)}.error-banner .material-icons{font-size:20px}.form-group{display:flex;flex-direction:column;gap:var(--spacing-xs)}.form-label{font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);color:var(--color-text-primary)}.input-wrapper{position:relative;display:flex;align-items:center}.input-icon{position:absolute;left:var(--spacing-md);color:var(--color-text-tertiary);font-size:20px;pointer-events:none}.form-input{width:100%;padding:var(--spacing-md) var(--spacing-md) var(--spacing-md) 48px;border:1px solid var(--color-border);border-radius:var(--radius-full);font-size:var(--font-size-base);font-family:var(--font-family-primary);color:var(--color-text-primary);background:var(--color-bg-white);transition:all var(--transition-base)}.form-input:focus{outline:none;border-color:var(--color-primary);box-shadow:0 0 0 3px #004a801a}.form-input.error{border-color:var(--color-error)}.form-input.error:focus{box-shadow:0 0 0 3px #dc26261a}.form-input:disabled{background:var(--color-bg-gray);cursor:not-allowed;opacity:var(--opacity-disabled)}.password-toggle{position:absolute;right:var(--spacing-md);background:none;border:none;color:var(--color-text-tertiary);cursor:pointer;padding:var(--spacing-xs);display:flex;align-items:center;justify-content:center;transition:color var(--transition-base)}.password-toggle:hover{color:var(--color-text-primary)}.password-toggle .material-icons{font-size:20px}.error-message{font-size:var(--font-size-xs);color:var(--color-error);margin:0}.signup-submit-button{width:100%;padding:var(--spacing-md) var(--spacing-lg);background:var(--color-primary);color:var(--color-text-white);border:none;border-radius:var(--radius-full);font-size:var(--font-size-base);font-weight:var(--font-weight-semibold);font-family:var(--font-family-primary);cursor:pointer;display:flex;align-items:center;justify-content:center;gap:var(--spacing-sm);transition:all var(--transition-base);margin-top:var(--spacing-md)}.signup-submit-button:hover:not(:disabled){background:var(--color-primary-hover);transform:translateY(-1px);box-shadow:var(--shadow-primary)}.signup-submit-button:active:not(:disabled){transform:translateY(0)}.signup-submit-button:disabled{opacity:var(--opacity-disabled);cursor:not-allowed}.signup-submit-button .material-icons{font-size:20px}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.signup-footer{text-align:center;margin-top:var(--spacing-md)}.login-link-text{font-size:var(--font-size-sm);color:var(--color-text-secondary);margin:0}.login-link{color:var(--color-primary);font-weight:var(--font-weight-semibold);text-decoration:none;transition:color var(--transition-base)}.login-link:hover{color:var(--color-primary-hover);text-decoration:underline}@media (max-width: 768px){.signup-title{font-size:var(--font-size-3xl)}}@font-face{font-display:block;font-family:KaTeX_AMS;font-style:normal;font-weight:400;src:url(/assets/KaTeX_AMS-Regular-BQhdFMY1.woff2) format("woff2"),url(/assets/KaTeX_AMS-Regular-DMm9YOAa.woff) format("woff"),url(/assets/KaTeX_AMS-Regular-DRggAlZN.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_Caligraphic;font-style:normal;font-weight:700;src:url(/assets/KaTeX_Caligraphic-Bold-Dq_IR9rO.woff2) format("woff2"),url(/assets/KaTeX_Caligraphic-Bold-BEiXGLvX.woff) format("woff"),url(/assets/KaTeX_Caligraphic-Bold-ATXxdsX0.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_Caligraphic;font-style:normal;font-weight:400;src:url(/assets/KaTeX_Caligraphic-Regular-Di6jR-x-.woff2) format("woff2"),url(/assets/KaTeX_Caligraphic-Regular-CTRA-rTL.woff) format("woff"),url(/assets/KaTeX_Caligraphic-Regular-wX97UBjC.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_Fraktur;font-style:normal;font-weight:700;src:url(/assets/KaTeX_Fraktur-Bold-CL6g_b3V.woff2) format("woff2"),url(/assets/KaTeX_Fraktur-Bold-BsDP51OF.woff) format("woff"),url(/assets/KaTeX_Fraktur-Bold-BdnERNNW.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_Fraktur;font-style:normal;font-weight:400;src:url(/assets/KaTeX_Fraktur-Regular-CTYiF6lA.woff2) format("woff2"),url(/assets/KaTeX_Fraktur-Regular-Dxdc4cR9.woff) format("woff"),url(/assets/KaTeX_Fraktur-Regular-CB_wures.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_Main;font-style:normal;font-weight:700;src:url(/assets/KaTeX_Main-Bold-Cx986IdX.woff2) format("woff2"),url(/assets/KaTeX_Main-Bold-Jm3AIy58.woff) format("woff"),url(/assets/KaTeX_Main-Bold-waoOVXN0.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_Main;font-style:italic;font-weight:700;src:url(/assets/KaTeX_Main-BoldItalic-DxDJ3AOS.woff2) format("woff2"),url(/assets/KaTeX_Main-BoldItalic-SpSLRI95.woff) format("woff"),url(/assets/KaTeX_Main-BoldItalic-DzxPMmG6.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_Main;font-style:italic;font-weight:400;src:url(/assets/KaTeX_Main-Italic-NWA7e6Wa.woff2) format("woff2"),url(/assets/KaTeX_Main-Italic-BMLOBm91.woff) format("woff"),url(/assets/KaTeX_Main-Italic-3WenGoN9.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_Main;font-style:normal;font-weight:400;src:url(/assets/KaTeX_Main-Regular-B22Nviop.woff2) format("woff2"),url(/assets/KaTeX_Main-Regular-Dr94JaBh.woff) format("woff"),url(/assets/KaTeX_Main-Regular-ypZvNtVU.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_Math;font-style:italic;font-weight:700;src:url(/assets/KaTeX_Math-BoldItalic-CZnvNsCZ.woff2) format("woff2"),url(/assets/KaTeX_Math-BoldItalic-iY-2wyZ7.woff) format("woff"),url(/assets/KaTeX_Math-BoldItalic-B3XSjfu4.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_Math;font-style:italic;font-weight:400;src:url(/assets/KaTeX_Math-Italic-t53AETM-.woff2) format("woff2"),url(/assets/KaTeX_Math-Italic-DA0__PXp.woff) format("woff"),url(/assets/KaTeX_Math-Italic-flOr_0UB.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_SansSerif;font-style:normal;font-weight:700;src:url(/assets/KaTeX_SansSerif-Bold-D1sUS0GD.woff2) format("woff2"),url(/assets/KaTeX_SansSerif-Bold-DbIhKOiC.woff) format("woff"),url(/assets/KaTeX_SansSerif-Bold-CFMepnvq.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_SansSerif;font-style:italic;font-weight:400;src:url(/assets/KaTeX_SansSerif-Italic-C3H0VqGB.woff2) format("woff2"),url(/assets/KaTeX_SansSerif-Italic-DN2j7dab.woff) format("woff"),url(/assets/KaTeX_SansSerif-Italic-YYjJ1zSn.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_SansSerif;font-style:normal;font-weight:400;src:url(/assets/KaTeX_SansSerif-Regular-DDBCnlJ7.woff2) format("woff2"),url(/assets/KaTeX_SansSerif-Regular-CS6fqUqJ.woff) format("woff"),url(/assets/KaTeX_SansSerif-Regular-BNo7hRIc.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_Script;font-style:normal;font-weight:400;src:url(/assets/KaTeX_Script-Regular-D3wIWfF6.woff2) format("woff2"),url(/assets/KaTeX_Script-Regular-D5yQViql.woff) format("woff"),url(/assets/KaTeX_Script-Regular-C5JkGWo-.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_Size1;font-style:normal;font-weight:400;src:url(/assets/KaTeX_Size1-Regular-mCD8mA8B.woff2) format("woff2"),url(/assets/KaTeX_Size1-Regular-C195tn64.woff) format("woff"),url(/assets/KaTeX_Size1-Regular-Dbsnue_I.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_Size2;font-style:normal;font-weight:400;src:url(/assets/KaTeX_Size2-Regular-Dy4dx90m.woff2) format("woff2"),url(/assets/KaTeX_Size2-Regular-oD1tc_U0.woff) format("woff"),url(/assets/KaTeX_Size2-Regular-B7gKUWhC.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_Size3;font-style:normal;font-weight:400;src:url(data:font/woff2;base64,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) format("woff2"),url(/assets/KaTeX_Size3-Regular-CTq5MqoE.woff) format("woff"),url(/assets/KaTeX_Size3-Regular-DgpXs0kz.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_Size4;font-style:normal;font-weight:400;src:url(/assets/KaTeX_Size4-Regular-Dl5lxZxV.woff2) format("woff2"),url(/assets/KaTeX_Size4-Regular-BF-4gkZK.woff) format("woff"),url(/assets/KaTeX_Size4-Regular-DWFBv043.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_Typewriter;font-style:normal;font-weight:400;src:url(/assets/KaTeX_Typewriter-Regular-CO6r4hn1.woff2) format("woff2"),url(/assets/KaTeX_Typewriter-Regular-C0xS9mPB.woff) format("woff"),url(/assets/KaTeX_Typewriter-Regular-D3Ib7_Hf.ttf) format("truetype")}.katex{font: 1.21em KaTeX_Main,Times New Roman,serif;line-height:1.2;text-indent:0;text-rendering:auto}.katex *{-ms-high-contrast-adjust:none!important;border-color:currentColor}.katex .katex-version:after{content:"0.16.25"}.katex .katex-mathml{clip:rect(1px,1px,1px,1px);border:0;height:1px;overflow:hidden;padding:0;position:absolute;width:1px}.katex .katex-html>.newline{display:block}.katex .base{position:relative;white-space:nowrap;width:-webkit-min-content;width:-moz-min-content;width:min-content}.katex .base,.katex .strut{display:inline-block}.katex .textbf{font-weight:700}.katex .textit{font-style:italic}.katex .textrm{font-family:KaTeX_Main}.katex .textsf{font-family:KaTeX_SansSerif}.katex .texttt{font-family:KaTeX_Typewriter}.katex .mathnormal{font-family:KaTeX_Math;font-style:italic}.katex .mathit{font-family:KaTeX_Main;font-style:italic}.katex .mathrm{font-style:normal}.katex .mathbf{font-family:KaTeX_Main;font-weight:700}.katex .boldsymbol{font-family:KaTeX_Math;font-style:italic;font-weight:700}.katex .amsrm,.katex .mathbb,.katex .textbb{font-family:KaTeX_AMS}.katex .mathcal{font-family:KaTeX_Caligraphic}.katex .mathfrak,.katex .textfrak{font-family:KaTeX_Fraktur}.katex .mathboldfrak,.katex .textboldfrak{font-family:KaTeX_Fraktur;font-weight:700}.katex .mathtt{font-family:KaTeX_Typewriter}.katex .mathscr,.katex .textscr{font-family:KaTeX_Script}.katex .mathsf,.katex .textsf{font-family:KaTeX_SansSerif}.katex .mathboldsf,.katex .textboldsf{font-family:KaTeX_SansSerif;font-weight:700}.katex .mathitsf,.katex .mathsfit,.katex .textitsf{font-family:KaTeX_SansSerif;font-style:italic}.katex .mainrm{font-family:KaTeX_Main;font-style:normal}.katex .vlist-t{border-collapse:collapse;display:inline-table;table-layout:fixed}.katex .vlist-r{display:table-row}.katex .vlist{display:table-cell;position:relative;vertical-align:bottom}.katex .vlist>span{display:block;height:0;position:relative}.katex .vlist>span>span{display:inline-block}.katex .vlist>span>.pstrut{overflow:hidden;width:0}.katex .vlist-t2{margin-right:-2px}.katex .vlist-s{display:table-cell;font-size:1px;min-width:2px;vertical-align:bottom;width:2px}.katex .vbox{align-items:baseline;display:inline-flex;flex-direction:column}.katex .hbox{width:100%}.katex .hbox,.katex .thinbox{display:inline-flex;flex-direction:row}.katex .thinbox{max-width:0;width:0}.katex .msupsub{text-align:left}.katex .mfrac>span>span{text-align:center}.katex .mfrac .frac-line{border-bottom-style:solid;display:inline-block;width:100%}.katex .hdashline,.katex .hline,.katex .mfrac .frac-line,.katex .overline .overline-line,.katex .rule,.katex .underline .underline-line{min-height:1px}.katex .mspace{display:inline-block}.katex .clap,.katex .llap,.katex .rlap{position:relative;width:0}.katex .clap>.inner,.katex .llap>.inner,.katex .rlap>.inner{position:absolute}.katex .clap>.fix,.katex .llap>.fix,.katex .rlap>.fix{display:inline-block}.katex .llap>.inner{right:0}.katex .clap>.inner,.katex .rlap>.inner{left:0}.katex .clap>.inner>span{margin-left:-50%;margin-right:50%}.katex .rule{border:0 solid;display:inline-block;position:relative}.katex .hline,.katex .overline .overline-line,.katex .underline .underline-line{border-bottom-style:solid;display:inline-block;width:100%}.katex .hdashline{border-bottom-style:dashed;display:inline-block;width:100%}.katex .sqrt>.root{margin-left:.2777777778em;margin-right:-.5555555556em}.katex .fontsize-ensurer.reset-size1.size1,.katex .sizing.reset-size1.size1{font-size:1em}.katex .fontsize-ensurer.reset-size1.size2,.katex .sizing.reset-size1.size2{font-size:1.2em}.katex .fontsize-ensurer.reset-size1.size3,.katex .sizing.reset-size1.size3{font-size:1.4em}.katex .fontsize-ensurer.reset-size1.size4,.katex .sizing.reset-size1.size4{font-size:1.6em}.katex .fontsize-ensurer.reset-size1.size5,.katex .sizing.reset-size1.size5{font-size:1.8em}.katex .fontsize-ensurer.reset-size1.size6,.katex .sizing.reset-size1.size6{font-size:2em}.katex .fontsize-ensurer.reset-size1.size7,.katex .sizing.reset-size1.size7{font-size:2.4em}.katex .fontsize-ensurer.reset-size1.size8,.katex .sizing.reset-size1.size8{font-size:2.88em}.katex .fontsize-ensurer.reset-size1.size9,.katex .sizing.reset-size1.size9{font-size:3.456em}.katex .fontsize-ensurer.reset-size1.size10,.katex .sizing.reset-size1.size10{font-size:4.148em}.katex .fontsize-ensurer.reset-size1.size11,.katex .sizing.reset-size1.size11{font-size:4.976em}.katex .fontsize-ensurer.reset-size2.size1,.katex .sizing.reset-size2.size1{font-size:.8333333333em}.katex .fontsize-ensurer.reset-size2.size2,.katex .sizing.reset-size2.size2{font-size:1em}.katex .fontsize-ensurer.reset-size2.size3,.katex .sizing.reset-size2.size3{font-size:1.1666666667em}.katex .fontsize-ensurer.reset-size2.size4,.katex .sizing.reset-size2.size4{font-size:1.3333333333em}.katex .fontsize-ensurer.reset-size2.size5,.katex .sizing.reset-size2.size5{font-size:1.5em}.katex .fontsize-ensurer.reset-size2.size6,.katex .sizing.reset-size2.size6{font-size:1.6666666667em}.katex .fontsize-ensurer.reset-size2.size7,.katex .sizing.reset-size2.size7{font-size:2em}.katex .fontsize-ensurer.reset-size2.size8,.katex .sizing.reset-size2.size8{font-size:2.4em}.katex .fontsize-ensurer.reset-size2.size9,.katex .sizing.reset-size2.size9{font-size:2.88em}.katex .fontsize-ensurer.reset-size2.size10,.katex .sizing.reset-size2.size10{font-size:3.4566666667em}.katex .fontsize-ensurer.reset-size2.size11,.katex .sizing.reset-size2.size11{font-size:4.1466666667em}.katex .fontsize-ensurer.reset-size3.size1,.katex .sizing.reset-size3.size1{font-size:.7142857143em}.katex .fontsize-ensurer.reset-size3.size2,.katex .sizing.reset-size3.size2{font-size:.8571428571em}.katex .fontsize-ensurer.reset-size3.size3,.katex .sizing.reset-size3.size3{font-size:1em}.katex .fontsize-ensurer.reset-size3.size4,.katex .sizing.reset-size3.size4{font-size:1.1428571429em}.katex .fontsize-ensurer.reset-size3.size5,.katex .sizing.reset-size3.size5{font-size:1.2857142857em}.katex .fontsize-ensurer.reset-size3.size6,.katex .sizing.reset-size3.size6{font-size:1.4285714286em}.katex .fontsize-ensurer.reset-size3.size7,.katex .sizing.reset-size3.size7{font-size:1.7142857143em}.katex .fontsize-ensurer.reset-size3.size8,.katex .sizing.reset-size3.size8{font-size:2.0571428571em}.katex .fontsize-ensurer.reset-size3.size9,.katex .sizing.reset-size3.size9{font-size:2.4685714286em}.katex .fontsize-ensurer.reset-size3.size10,.katex .sizing.reset-size3.size10{font-size:2.9628571429em}.katex .fontsize-ensurer.reset-size3.size11,.katex .sizing.reset-size3.size11{font-size:3.5542857143em}.katex .fontsize-ensurer.reset-size4.size1,.katex .sizing.reset-size4.size1{font-size:.625em}.katex .fontsize-ensurer.reset-size4.size2,.katex .sizing.reset-size4.size2{font-size:.75em}.katex .fontsize-ensurer.reset-size4.size3,.katex .sizing.reset-size4.size3{font-size:.875em}.katex .fontsize-ensurer.reset-size4.size4,.katex .sizing.reset-size4.size4{font-size:1em}.katex .fontsize-ensurer.reset-size4.size5,.katex .sizing.reset-size4.size5{font-size:1.125em}.katex .fontsize-ensurer.reset-size4.size6,.katex .sizing.reset-size4.size6{font-size:1.25em}.katex .fontsize-ensurer.reset-size4.size7,.katex .sizing.reset-size4.size7{font-size:1.5em}.katex .fontsize-ensurer.reset-size4.size8,.katex .sizing.reset-size4.size8{font-size:1.8em}.katex .fontsize-ensurer.reset-size4.size9,.katex .sizing.reset-size4.size9{font-size:2.16em}.katex .fontsize-ensurer.reset-size4.size10,.katex .sizing.reset-size4.size10{font-size:2.5925em}.katex .fontsize-ensurer.reset-size4.size11,.katex .sizing.reset-size4.size11{font-size:3.11em}.katex .fontsize-ensurer.reset-size5.size1,.katex .sizing.reset-size5.size1{font-size:.5555555556em}.katex .fontsize-ensurer.reset-size5.size2,.katex .sizing.reset-size5.size2{font-size:.6666666667em}.katex .fontsize-ensurer.reset-size5.size3,.katex .sizing.reset-size5.size3{font-size:.7777777778em}.katex .fontsize-ensurer.reset-size5.size4,.katex .sizing.reset-size5.size4{font-size:.8888888889em}.katex .fontsize-ensurer.reset-size5.size5,.katex .sizing.reset-size5.size5{font-size:1em}.katex .fontsize-ensurer.reset-size5.size6,.katex .sizing.reset-size5.size6{font-size:1.1111111111em}.katex .fontsize-ensurer.reset-size5.size7,.katex .sizing.reset-size5.size7{font-size:1.3333333333em}.katex .fontsize-ensurer.reset-size5.size8,.katex .sizing.reset-size5.size8{font-size:1.6em}.katex .fontsize-ensurer.reset-size5.size9,.katex .sizing.reset-size5.size9{font-size:1.92em}.katex .fontsize-ensurer.reset-size5.size10,.katex .sizing.reset-size5.size10{font-size:2.3044444444em}.katex .fontsize-ensurer.reset-size5.size11,.katex .sizing.reset-size5.size11{font-size:2.7644444444em}.katex .fontsize-ensurer.reset-size6.size1,.katex .sizing.reset-size6.size1{font-size:.5em}.katex .fontsize-ensurer.reset-size6.size2,.katex .sizing.reset-size6.size2{font-size:.6em}.katex .fontsize-ensurer.reset-size6.size3,.katex .sizing.reset-size6.size3{font-size:.7em}.katex .fontsize-ensurer.reset-size6.size4,.katex .sizing.reset-size6.size4{font-size:.8em}.katex .fontsize-ensurer.reset-size6.size5,.katex .sizing.reset-size6.size5{font-size:.9em}.katex .fontsize-ensurer.reset-size6.size6,.katex .sizing.reset-size6.size6{font-size:1em}.katex .fontsize-ensurer.reset-size6.size7,.katex .sizing.reset-size6.size7{font-size:1.2em}.katex .fontsize-ensurer.reset-size6.size8,.katex .sizing.reset-size6.size8{font-size:1.44em}.katex .fontsize-ensurer.reset-size6.size9,.katex .sizing.reset-size6.size9{font-size:1.728em}.katex .fontsize-ensurer.reset-size6.size10,.katex .sizing.reset-size6.size10{font-size:2.074em}.katex .fontsize-ensurer.reset-size6.size11,.katex .sizing.reset-size6.size11{font-size:2.488em}.katex .fontsize-ensurer.reset-size7.size1,.katex .sizing.reset-size7.size1{font-size:.4166666667em}.katex .fontsize-ensurer.reset-size7.size2,.katex .sizing.reset-size7.size2{font-size:.5em}.katex .fontsize-ensurer.reset-size7.size3,.katex .sizing.reset-size7.size3{font-size:.5833333333em}.katex .fontsize-ensurer.reset-size7.size4,.katex .sizing.reset-size7.size4{font-size:.6666666667em}.katex .fontsize-ensurer.reset-size7.size5,.katex .sizing.reset-size7.size5{font-size:.75em}.katex .fontsize-ensurer.reset-size7.size6,.katex .sizing.reset-size7.size6{font-size:.8333333333em}.katex .fontsize-ensurer.reset-size7.size7,.katex .sizing.reset-size7.size7{font-size:1em}.katex .fontsize-ensurer.reset-size7.size8,.katex .sizing.reset-size7.size8{font-size:1.2em}.katex .fontsize-ensurer.reset-size7.size9,.katex .sizing.reset-size7.size9{font-size:1.44em}.katex .fontsize-ensurer.reset-size7.size10,.katex .sizing.reset-size7.size10{font-size:1.7283333333em}.katex .fontsize-ensurer.reset-size7.size11,.katex .sizing.reset-size7.size11{font-size:2.0733333333em}.katex .fontsize-ensurer.reset-size8.size1,.katex .sizing.reset-size8.size1{font-size:.3472222222em}.katex .fontsize-ensurer.reset-size8.size2,.katex .sizing.reset-size8.size2{font-size:.4166666667em}.katex .fontsize-ensurer.reset-size8.size3,.katex .sizing.reset-size8.size3{font-size:.4861111111em}.katex .fontsize-ensurer.reset-size8.size4,.katex .sizing.reset-size8.size4{font-size:.5555555556em}.katex .fontsize-ensurer.reset-size8.size5,.katex .sizing.reset-size8.size5{font-size:.625em}.katex .fontsize-ensurer.reset-size8.size6,.katex .sizing.reset-size8.size6{font-size:.6944444444em}.katex .fontsize-ensurer.reset-size8.size7,.katex .sizing.reset-size8.size7{font-size:.8333333333em}.katex .fontsize-ensurer.reset-size8.size8,.katex .sizing.reset-size8.size8{font-size:1em}.katex .fontsize-ensurer.reset-size8.size9,.katex .sizing.reset-size8.size9{font-size:1.2em}.katex .fontsize-ensurer.reset-size8.size10,.katex .sizing.reset-size8.size10{font-size:1.4402777778em}.katex .fontsize-ensurer.reset-size8.size11,.katex .sizing.reset-size8.size11{font-size:1.7277777778em}.katex .fontsize-ensurer.reset-size9.size1,.katex .sizing.reset-size9.size1{font-size:.2893518519em}.katex .fontsize-ensurer.reset-size9.size2,.katex .sizing.reset-size9.size2{font-size:.3472222222em}.katex .fontsize-ensurer.reset-size9.size3,.katex .sizing.reset-size9.size3{font-size:.4050925926em}.katex .fontsize-ensurer.reset-size9.size4,.katex .sizing.reset-size9.size4{font-size:.462962963em}.katex .fontsize-ensurer.reset-size9.size5,.katex .sizing.reset-size9.size5{font-size:.5208333333em}.katex .fontsize-ensurer.reset-size9.size6,.katex .sizing.reset-size9.size6{font-size:.5787037037em}.katex .fontsize-ensurer.reset-size9.size7,.katex .sizing.reset-size9.size7{font-size:.6944444444em}.katex .fontsize-ensurer.reset-size9.size8,.katex .sizing.reset-size9.size8{font-size:.8333333333em}.katex .fontsize-ensurer.reset-size9.size9,.katex .sizing.reset-size9.size9{font-size:1em}.katex .fontsize-ensurer.reset-size9.size10,.katex .sizing.reset-size9.size10{font-size:1.2002314815em}.katex .fontsize-ensurer.reset-size9.size11,.katex .sizing.reset-size9.size11{font-size:1.4398148148em}.katex .fontsize-ensurer.reset-size10.size1,.katex .sizing.reset-size10.size1{font-size:.2410800386em}.katex .fontsize-ensurer.reset-size10.size2,.katex .sizing.reset-size10.size2{font-size:.2892960463em}.katex .fontsize-ensurer.reset-size10.size3,.katex .sizing.reset-size10.size3{font-size:.337512054em}.katex .fontsize-ensurer.reset-size10.size4,.katex .sizing.reset-size10.size4{font-size:.3857280617em}.katex .fontsize-ensurer.reset-size10.size5,.katex .sizing.reset-size10.size5{font-size:.4339440694em}.katex .fontsize-ensurer.reset-size10.size6,.katex .sizing.reset-size10.size6{font-size:.4821600771em}.katex .fontsize-ensurer.reset-size10.size7,.katex .sizing.reset-size10.size7{font-size:.5785920926em}.katex .fontsize-ensurer.reset-size10.size8,.katex .sizing.reset-size10.size8{font-size:.6943105111em}.katex .fontsize-ensurer.reset-size10.size9,.katex .sizing.reset-size10.size9{font-size:.8331726133em}.katex .fontsize-ensurer.reset-size10.size10,.katex .sizing.reset-size10.size10{font-size:1em}.katex .fontsize-ensurer.reset-size10.size11,.katex .sizing.reset-size10.size11{font-size:1.1996142719em}.katex .fontsize-ensurer.reset-size11.size1,.katex .sizing.reset-size11.size1{font-size:.2009646302em}.katex .fontsize-ensurer.reset-size11.size2,.katex .sizing.reset-size11.size2{font-size:.2411575563em}.katex .fontsize-ensurer.reset-size11.size3,.katex .sizing.reset-size11.size3{font-size:.2813504823em}.katex .fontsize-ensurer.reset-size11.size4,.katex .sizing.reset-size11.size4{font-size:.3215434084em}.katex .fontsize-ensurer.reset-size11.size5,.katex .sizing.reset-size11.size5{font-size:.3617363344em}.katex .fontsize-ensurer.reset-size11.size6,.katex .sizing.reset-size11.size6{font-size:.4019292605em}.katex .fontsize-ensurer.reset-size11.size7,.katex .sizing.reset-size11.size7{font-size:.4823151125em}.katex .fontsize-ensurer.reset-size11.size8,.katex .sizing.reset-size11.size8{font-size:.578778135em}.katex .fontsize-ensurer.reset-size11.size9,.katex .sizing.reset-size11.size9{font-size:.6945337621em}.katex .fontsize-ensurer.reset-size11.size10,.katex .sizing.reset-size11.size10{font-size:.8336012862em}.katex .fontsize-ensurer.reset-size11.size11,.katex .sizing.reset-size11.size11{font-size:1em}.katex .delimsizing.size1{font-family:KaTeX_Size1}.katex .delimsizing.size2{font-family:KaTeX_Size2}.katex .delimsizing.size3{font-family:KaTeX_Size3}.katex .delimsizing.size4{font-family:KaTeX_Size4}.katex .delimsizing.mult .delim-size1>span{font-family:KaTeX_Size1}.katex .delimsizing.mult .delim-size4>span{font-family:KaTeX_Size4}.katex .nulldelimiter{display:inline-block;width:.12em}.katex .delimcenter,.katex .op-symbol{position:relative}.katex .op-symbol.small-op{font-family:KaTeX_Size1}.katex .op-symbol.large-op{font-family:KaTeX_Size2}.katex .accent>.vlist-t,.katex .op-limits>.vlist-t{text-align:center}.katex .accent .accent-body{position:relative}.katex .accent .accent-body:not(.accent-full){width:0}.katex .overlay{display:block}.katex .mtable .vertical-separator{display:inline-block;min-width:1px}.katex .mtable .arraycolsep{display:inline-block}.katex .mtable .col-align-c>.vlist-t{text-align:center}.katex .mtable .col-align-l>.vlist-t{text-align:left}.katex .mtable .col-align-r>.vlist-t{text-align:right}.katex .svg-align{text-align:left}.katex svg{fill:currentColor;stroke:currentColor;fill-rule:nonzero;fill-opacity:1;stroke-width:1;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;display:block;height:inherit;position:absolute;width:100%}.katex svg path{stroke:none}.katex img{border-style:none;max-height:none;max-width:none;min-height:0;min-width:0}.katex .stretchy{display:block;overflow:hidden;position:relative;width:100%}.katex .stretchy:after,.katex .stretchy:before{content:""}.katex .hide-tail{overflow:hidden;position:relative;width:100%}.katex .halfarrow-left{left:0;overflow:hidden;position:absolute;width:50.2%}.katex .halfarrow-right{overflow:hidden;position:absolute;right:0;width:50.2%}.katex .brace-left{left:0;overflow:hidden;position:absolute;width:25.1%}.katex .brace-center{left:25%;overflow:hidden;position:absolute;width:50%}.katex .brace-right{overflow:hidden;position:absolute;right:0;width:25.1%}.katex .x-arrow-pad{padding:0 .5em}.katex .cd-arrow-pad{padding:0 .55556em 0 .27778em}.katex .mover,.katex .munder,.katex .x-arrow{text-align:center}.katex .boxpad{padding:0 .3em}.katex .fbox,.katex .fcolorbox{border:.04em solid;box-sizing:border-box}.katex .cancel-pad{padding:0 .2em}.katex .cancel-lap{margin-left:-.2em;margin-right:-.2em}.katex .sout{border-bottom-style:solid;border-bottom-width:.08em}.katex .angl{border-right:.049em solid;border-top:.049em solid;box-sizing:border-box;margin-right:.03889em}.katex .anglpad{padding:0 .03889em}.katex .eqn-num:before{content:"(" counter(katexEqnNo) ")";counter-increment:katexEqnNo}.katex .mml-eqn-num:before{content:"(" counter(mmlEqnNo) ")";counter-increment:mmlEqnNo}.katex .mtr-glue{width:50%}.katex .cd-vert-arrow{display:inline-block;position:relative}.katex .cd-label-left{display:inline-block;position:absolute;right:calc(50% + .3em);text-align:left}.katex .cd-label-right{display:inline-block;left:calc(50% + .3em);position:absolute;text-align:right}.katex-display{display:block;margin:1em 0;text-align:center}.katex-display>.katex{display:block;text-align:center;white-space:nowrap}.katex-display>.katex>.katex-html{display:block;position:relative}.katex-display>.katex>.katex-html>.tag{position:absolute;right:0}.katex-display.leqno>.katex>.katex-html>.tag{left:0;right:auto}.katex-display.fleqn>.katex{padding-left:2em;text-align:left}body{counter-reset:katexEqnNo mmlEqnNo}.split-markdown-editor{display:flex;flex-direction:column;border:1px solid var(--color-border);border-radius:0;overflow:hidden;background:var(--color-bg-white);height:100%}.editor-split-container{display:grid;grid-template-columns:1fr 1fr;gap:0;flex:1;min-height:0;overflow:hidden}.editor-pane{display:flex;flex-direction:column;min-height:0;overflow:hidden}.editor-input-pane{border-right:1px solid var(--color-border)}.pane-label{padding:3px 10px;font-size:9px;font-weight:var(--font-weight-semibold);color:var(--color-text-tertiary);background:var(--color-bg-light);border-bottom:none;text-transform:uppercase;letter-spacing:.5px;flex-shrink:0;opacity:.5}.editor-textarea{width:100%;height:100%;padding:10px;border:none;resize:none;font-family:var(--font-family-mono);font-size:13px;line-height:1.5;color:var(--color-text-primary);background:var(--color-bg-light);overflow-y:auto;scrollbar-width:none;-ms-overflow-style:none}.editor-textarea::-webkit-scrollbar{display:none}.editor-textarea:focus{outline:none;background:var(--color-bg-light)}.editor-preview{width:100%;height:100%;padding:20px;overflow-y:auto;font-size:15px;line-height:1.25;color:#000;display:flex;flex-direction:column;align-items:center;text-align:center;scrollbar-width:none;-ms-overflow-style:none}.editor-preview::-webkit-scrollbar{display:none}.editor-preview:before,.editor-preview:after{content:"";flex:1 0 0;min-height:0}.editor-preview>*{width:100%;max-width:100%}.editor-preview h1,.editor-preview h2,.editor-preview h3,.editor-preview h4,.editor-preview h5,.editor-preview h6{margin-top:10px;margin-bottom:5px;font-weight:var(--font-weight-bold);color:var(--color-text-primary);line-height:1.3}.editor-preview h1{font-size:18px;border-bottom:2px solid var(--color-border);padding-bottom:3px}.editor-preview h2{font-size:16px;border-bottom:1px solid var(--color-border-light);padding-bottom:3px}.editor-preview h3{font-size:14px}.editor-preview h4,.editor-preview h5,.editor-preview h6{font-size:13px}.editor-preview p{margin:5px 0}.editor-preview ul,.editor-preview ol{margin:5px auto;padding-left:18px;text-align:left;display:inline-block}.editor-preview li{margin:3px 0}.editor-preview code{background:var(--color-bg-secondary);padding:2px 5px;border-radius:var(--radius-sm);font-family:var(--font-family-mono);font-size:11px;color:var(--color-error)}.editor-preview pre{background:var(--color-bg-secondary);padding:8px;border-radius:var(--radius-md);overflow-x:auto;margin:6px 0;font-size:12px}.editor-preview pre code{background:none;padding:0;color:var(--color-text-primary);font-size:12px}.editor-preview blockquote{border-left:3px solid var(--color-primary);padding-left:8px;margin:6px 0;color:var(--color-text-secondary);font-style:italic}.editor-preview img{max-width:100%;height:auto;border-radius:var(--radius-sm);margin:6px 0}.editor-preview a{color:var(--color-primary);text-decoration:underline}.editor-preview a:hover{color:var(--color-primary-hover)}.editor-preview strong{font-weight:var(--font-weight-bold)}.editor-preview em{font-style:italic}.editor-preview hr{border:none;border-top:1px solid var(--color-border);margin:10px 0}.editor-preview table{width:100%;border-collapse:collapse;margin:6px 0;font-size:12px}.editor-preview th,.editor-preview td{border:1px solid var(--color-border);padding:5px 8px;text-align:left}.editor-preview th{background:var(--color-bg-secondary);font-weight:var(--font-weight-semibold)}.editor-preview mark{padding:2px 4px;border-radius:2px}.editor-preview u{text-decoration:underline}.editor-preview .katex{font-size:1.1em}.editor-preview .katex-display{margin:10px 0;overflow-x:auto;overflow-y:hidden}.editor-preview .katex-error{color:var(--color-error);font-size:12px;font-style:italic}@media (max-width: 768px){.editor-split-container{grid-template-columns:1fr;grid-template-rows:1fr 1fr}.editor-input-pane{border-right:none;border-bottom:1px solid var(--color-border)}}.unified-toolbar{display:flex;align-items:center;gap:6px;padding:4px 12px;background:var(--color-bg-white);border-bottom:1px solid var(--color-border);overflow-x:auto;flex-wrap:nowrap}.toolbar-section{display:flex;align-items:center;gap:2px}.toolbar-label{font-size:9px;font-weight:var(--font-weight-semibold);color:var(--color-text-tertiary);text-transform:uppercase;letter-spacing:.3px;margin-right:2px;white-space:nowrap}.toolbar-buttons{display:flex;gap:1px}.toolbar-buttons button{display:flex;align-items:center;justify-content:center;width:28px;height:28px;padding:0;background:transparent;border:none;border-radius:var(--radius-sm);color:var(--color-text-secondary);cursor:pointer;transition:all .15s}.toolbar-buttons button:hover{background:var(--color-bg-secondary);color:var(--color-primary)}.toolbar-buttons button.active{background:var(--color-primary);color:var(--color-text-white)}.toolbar-buttons .material-icons{font-size:16px}.toolbar-text{font-size:11px;font-weight:var(--font-weight-semibold)}.toolbar-divider{width:1px;height:20px;background:var(--color-border);margin:0 2px}.color-picker-wrapper{position:relative}.color-picker-dropdown{position:absolute;top:100%;left:0;margin-top:2px;display:flex;gap:3px;padding:6px;background:var(--color-bg-white);border:1px solid var(--color-border);border-radius:var(--radius-md);box-shadow:var(--shadow-md);z-index:100}.color-swatch{width:20px;height:20px;border:2px solid var(--color-border);border-radius:var(--radius-sm);cursor:pointer;transition:transform .15s}.color-swatch:hover{transform:scale(1.1);border-color:var(--color-primary)}@media (max-width: 1024px){.toolbar-label{display:none}.toolbar-section{gap:1px}}@media (max-width: 768px){.unified-toolbar{padding:4px 8px;gap:4px}.toolbar-buttons button{width:26px;height:26px}.toolbar-buttons .material-icons{font-size:15px}}.card-editor-modal{display:flex;width:100%;max-width:1400px;height:90vh;overflow:hidden}.card-list-sidebar{width:280px;background:var(--color-bg-light);border-right:1px solid var(--color-border);display:flex;flex-direction:column;flex-shrink:0}.sidebar-search{padding:4px 8px;border-bottom:1px solid var(--color-border);display:flex;align-items:center;gap:8px;background:var(--color-bg-white);min-height:36px}.search-icon{font-size:18px;color:var(--color-text-tertiary)}.search-input{flex:1;border:none;background:transparent;font-size:var(--font-size-sm);color:var(--color-text-primary);outline:none}.search-input::placeholder{color:var(--color-text-tertiary)}.card-list{flex:1;overflow-y:auto;padding:4px;scrollbar-width:none;-ms-overflow-style:none}.card-list::-webkit-scrollbar{display:none}.card-list-item{padding:8px 12px;margin-bottom:0;border-radius:var(--radius-md);cursor:pointer;transition:all .15s;border:1px solid transparent;background:transparent;opacity:.5}.card-list-item:hover{background:var(--color-bg-light);border-color:var(--color-border-light);opacity:.6}.card-list-item.active{background:var(--color-secondary-superlight);color:var(--color-info);border-color:var(--color-secondary-superlight);box-shadow:0 1px 3px var(--color-secondary-superlight);opacity:.7}.card-list-item-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:0}.card-number{font-size:var(--font-size-xs);font-weight:var(--font-weight-semibold);text-transform:uppercase;letter-spacing:.3px}.card-list-item.active .card-number{color:#000;font-weight:var(--font-weight-bold)}.card-list-item-preview{font-size:var(--font-size-xs);color:var(--color-text-secondary);line-height:1.4;overflow:hidden;text-overflow:ellipsis;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical}.card-list-item.active .card-list-item-preview{color:#333}.card-editor-main{flex:1;display:flex;flex-direction:column;min-width:0;overflow:hidden}.editor-header{display:flex;align-items:center;justify-content:space-between;padding:0;border-bottom:1px solid var(--color-border);background:var(--color-bg-white);flex-shrink:0;gap:8px}.editor-header .unified-toolbar{flex:1;border-bottom:none;padding:4px 12px}.editor-actions{display:flex;gap:8px;padding:4px;flex-shrink:0}.btn-primary,.btn-secondary{display:flex;align-items:center;gap:6px;padding:6px 16px;border-radius:var(--radius-md);font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);cursor:pointer;transition:all .2s;border:none}.btn-primary{background:var(--color-primary);color:var(--color-text-white)}.btn-primary:hover:not(:disabled){background:var(--color-primary-hover)}.btn-primary:disabled{opacity:.6;cursor:not-allowed}.btn-secondary{background:transparent;color:var(--color-text-secondary);border:1px solid var(--color-border)}.btn-secondary:hover:not(:disabled){background:var(--color-bg-secondary);color:var(--color-text-primary)}.btn-primary .material-icons,.btn-secondary .material-icons{font-size:16px}.editor-content{flex:1;display:grid;grid-template-rows:1fr 1fr;gap:0;overflow:hidden;min-height:0}.editor-field{display:flex;flex-direction:column;min-height:0;overflow:hidden;border-bottom:1px solid var(--color-border)}.editor-field:last-child{border-bottom:none}.editor-field .split-markdown-editor{height:100%;border:none;border-radius:0}@media (max-width: 1024px){.card-editor-modal{max-width:100%}.card-list-sidebar{width:240px}}@media (max-width: 768px){.card-editor-modal{flex-direction:column;height:100vh}.card-list-sidebar{width:100%;max-height:200px;border-right:none;border-bottom:1px solid var(--color-border)}.editor-content{grid-template-rows:auto auto}}.deck-detail-container{max-width:1200px;margin:0 auto;padding:var(--spacing-xl);position:relative;overflow-x:hidden;min-height:calc(100vh - 64px);display:flex;transition:all .3s ease;width:100%}.deck-detail-main{flex:1;transition:all .3s ease;min-width:0}.card-item.active-editing .card-content{border:2px solid var(--color-primary);box-shadow:0 0 0 4px var(--color-primary-bg-light)}.deck-detail-header{margin-bottom:var(--spacing-xl)}.deck-detail-header-actions{display:flex;align-items:center;justify-content:space-between;margin-bottom:var(--spacing-lg)}.back-button,.download-button{display:flex;align-items:center;gap:var(--spacing-xs);padding:var(--spacing-sm) var(--spacing-md);background:transparent;border:1px solid var(--color-border);border-radius:var(--radius-md);color:var(--color-text-primary);font-size:var(--font-size-sm);cursor:pointer;transition:all var(--transition-base);margin-right:10px}.back-button:hover,.download-button:hover{background:var(--color-bg-secondary);border-color:var(--color-primary)}.back-button:disabled,.download-button:disabled{opacity:var(--opacity-disabled);cursor:not-allowed}.back-button .material-icons,.download-button .material-icons{font-size:20px}.download-button{background:var(--color-primary);color:var(--color-text-white);border-color:var(--color-primary)}.download-button:hover:not(:disabled){background:var(--color-primary-hover);border-color:var(--color-primary-hover)}.deck-detail-title-section{display:flex;align-items:center;gap:var(--spacing-md);margin-bottom:var(--spacing-xs);flex-wrap:wrap}.deck-detail-title{font-size:var(--font-size-3xl);font-weight:var(--font-weight-bold);color:var(--color-text-primary);margin:0}.deck-detail-status{display:flex;align-items:center;gap:var(--spacing-xs);font-size:var(--font-size-sm);font-weight:var(--font-weight-medium)}.deck-detail-status .status-icon{font-size:20px}.deck-detail-subtitle{font-size:var(--font-size-lg);color:var(--color-text-secondary);margin:0}.deck-detail-subtitle .processing-info{color:var(--color-text-tertiary);font-size:var(--font-size-sm)}.processing-message{display:flex;align-items:center;gap:var(--spacing-xs);color:var(--color-warning)}.processing-message .material-icons{font-size:20px}.spinning{animation:spin 1s linear infinite}.deck-detail-loading,.deck-detail-error,.deck-detail-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:var(--spacing-3xl);text-align:center;min-height:400px}.deck-detail-loading .loading-spinner{width:48px;height:48px;border:4px solid var(--color-border-light);border-top-color:var(--color-primary);border-radius:50%;animation:spin 1s linear infinite;margin-bottom:var(--spacing-md)}@keyframes spin{to{transform:rotate(360deg)}}.deck-detail-error{color:var(--color-error)}.deck-detail-error .material-icons{font-size:48px;margin-bottom:var(--spacing-md)}.deck-detail-error p{font-size:var(--font-size-lg);margin-bottom:var(--spacing-lg)}.deck-detail-empty{color:var(--color-text-secondary)}.deck-detail-empty .material-icons{font-size:64px;margin-bottom:var(--spacing-md);opacity:.5}.deck-detail-empty p{font-size:var(--font-size-lg);margin-bottom:var(--spacing-xs)}.deck-detail-empty-subtitle{font-size:var(--font-size-sm);color:var(--color-text-tertiary)}.cards-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(400px,1fr));gap:var(--spacing-sm);margin-top:var(--spacing-lg);padding:0 10px 0 0}.card-item{height:auto;min-height:300px;max-height:400px;position:relative;cursor:pointer;transition:transform .15s}.card-item:hover{transform:translateY(-2px)}.card-item:active{transform:translateY(0)}.card-content{position:relative;width:100%;height:100%;background:var(--color-bg-white);border:none;border-radius:var(--radius-lg);padding:20px 20px 50px;display:flex;flex-direction:column;box-shadow:none;overflow:hidden}.card-item.has-overflow .card-content:after{content:"";position:absolute;bottom:0;left:0;right:0;height:80px;background:linear-gradient(to bottom,transparent 0%,var(--color-bg-white) 60%);pointer-events:none;opacity:1}.card-view-indicator{position:absolute;bottom:8px;left:0;right:0;padding:8px 12px;text-align:center;font-size:var(--font-size-xs);color:var(--color-text-tertiary);display:flex;align-items:center;justify-content:center;gap:4px;opacity:1;pointer-events:none;background:var(--color-bg-white);z-index:2}.card-view-indicator .material-icons{font-size:14px}.card-number{font-size:var(--font-size-xs);font-weight:var(--font-weight-medium);color:var(--color-text-tertiary);text-transform:uppercase;letter-spacing:.5px;margin-bottom:var(--spacing-md)}.card-question,.card-answer{display:flex;flex-direction:column;gap:0px}.card-label{font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);color:var(--color-primary);text-transform:uppercase;letter-spacing:.5px}.card-question p,.card-answer p{font-size:var(--font-size-lg);color:var(--color-text-primary);line-height:1.3;margin:var(--spacing-xs) 0 0 0}.card-text-content{font-size:var(--font-size-lg);color:var(--color-text-primary);line-height:1.4;margin:var(--spacing-xs) 0 0 0}.card-text-content p{margin:4px 0}.card-text-content h1,.card-text-content h2,.card-text-content h3{margin:8px 0 4px;font-weight:var(--font-weight-bold)}.card-text-content h1{font-size:18px}.card-text-content h2{font-size:16px}.card-text-content h3{font-size:14px}.card-text-content ul,.card-text-content ol{margin:4px 0;padding-left:20px;text-align:left}.card-text-content li{margin:2px 0}.card-text-content code{background:var(--color-bg-secondary);padding:2px 4px;border-radius:var(--radius-sm);font-family:var(--font-family-mono);font-size:.9em}.card-text-content pre{background:var(--color-bg-secondary);padding:8px;border-radius:var(--radius-md);overflow-x:auto;margin:6px 0;font-size:12px}.card-text-content pre code{background:none;padding:0}.card-text-content strong{font-weight:var(--font-weight-bold)}.card-text-content em{font-style:italic}.card-text-content a{color:var(--color-primary);text-decoration:underline}.card-text-content img{max-width:100%;height:auto;margin:6px 0;border-radius:var(--radius-sm)}.card-text-content .katex{font-size:1.1em}.card-text-content .katex-display{margin:8px 0;overflow-x:auto}.card-text-content mark{padding:2px 4px;border-radius:2px}.card-text-content u{text-decoration:underline}.card-answer{margin-top:var(--spacing-sm);padding-top:var(--spacing-sm);border-top:1px solid var(--color-border-light)}.retry-button{padding:var(--spacing-sm) var(--spacing-lg);background:var(--color-primary);color:var(--color-text-white);border:none;border-radius:var(--radius-md);font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);cursor:pointer;transition:background var(--transition-base)}.retry-button:hover{background:var(--color-primary-hover)}.card-edit-button{position:absolute;top:12px;right:12px;width:36px;height:36px;border-radius:var(--radius-md);background:var(--color-bg-white);border:none;color:var(--color-text-secondary);display:flex;align-items:center;justify-content:center;z-index:10;opacity:0;transition:opacity .25s;pointer-events:none}.card-item:hover .card-edit-button{opacity:1}.card-edit-button .material-icons{font-size:20px}.edit-card-modal{width:100%;max-width:1200px;max-height:90vh;display:flex;flex-direction:column;overflow:hidden}.modal-header{padding:var(--spacing-lg);border-bottom:1px solid var(--color-border);flex-shrink:0}.modal-title{margin:0;font-size:var(--font-size-xl);font-weight:var(--font-weight-bold);color:var(--color-text-primary)}.modal-body{padding:var(--spacing-lg);overflow:hidden;display:grid;grid-template-rows:1fr 1fr;gap:var(--spacing-lg);flex:1;min-height:0}.edit-field{display:flex;flex-direction:column;min-height:0;overflow:hidden}.edit-field .split-markdown-editor{height:100%;min-height:250px}.modal-footer{padding:var(--spacing-lg);border-top:1px solid var(--color-border);display:flex;justify-content:flex-end;gap:var(--spacing-md);background:var(--color-bg-secondary);flex-shrink:0}@media (max-width: 1024px){.edit-card-modal{max-width:95vw}}@media (max-width: 768px){.deck-detail-container{padding:var(--spacing-md)}.cards-grid{grid-template-columns:1fr;gap:var(--spacing-md);margin-top:var(--spacing-md);padding:0}.card-item{min-height:250px;max-height:350px}.card-content{padding:16px 16px 45px}.deck-detail-header{margin-bottom:var(--spacing-lg)}.deck-detail-header-actions{flex-wrap:wrap;gap:var(--spacing-xs)}.deck-detail-title{font-size:var(--font-size-2xl)}.edit-card-modal{max-width:100%;max-height:100vh}.modal-body{padding:var(--spacing-md);gap:var(--spacing-md)}.modal-header,.modal-footer{padding:var(--spacing-md)}.edit-field .split-markdown-editor{min-height:200px}}@media (max-width: 480px){.deck-detail-container{padding:var(--spacing-sm)}.cards-grid{gap:var(--spacing-sm)}.card-item{min-height:220px;max-height:320px}.card-content{padding:12px 12px 40px}.card-number{font-size:10px;margin-bottom:var(--spacing-sm)}.card-label{font-size:11px}.card-text-content{font-size:14px}.card-edit-button{width:32px;height:32px;top:8px;right:8px}.card-edit-button .material-icons{font-size:18px}.card-view-indicator{font-size:10px;padding:6px 8px}.card-view-indicator .material-icons{font-size:12px}.back-button,.download-button{padding:var(--spacing-xs) var(--spacing-sm);font-size:12px}.back-button .material-icons,.download-button .material-icons{font-size:18px}}.editor-save-button{padding:var(--spacing-sm) var(--spacing-lg);background:var(--color-primary);border:none;border-radius:var(--radius-md);color:var(--color-text-white);cursor:pointer;font-weight:var(--font-weight-medium);display:flex;align-items:center;gap:var(--spacing-xs);transition:all .2s}.editor-save-button:hover{background:var(--color-primary-hover)}.editor-save-button:disabled{opacity:.7;cursor:not-allowed}.editor-cancel-button{padding:var(--spacing-sm) var(--spacing-lg);background:transparent;border:1px solid var(--color-border);border-radius:var(--radius-md);color:var(--color-text-secondary);cursor:pointer;font-weight:var(--font-weight-medium);transition:all .2s}.editor-cancel-button:hover{background:var(--color-bg-secondary);color:var(--color-text-primary)}.legal-page{min-height:calc(100vh - var(--header-height) - var(--banner-height));padding:var(--spacing-2xl) var(--spacing-md);display:flex;align-items:flex-start;justify-content:center;background:none;box-sizing:border-box}.legal-container{width:100%;max-width:800px;background:none}.legal-back-button{display:inline-flex;align-items:center;gap:var(--spacing-xs);margin-bottom:var(--spacing-lg);padding:6px 10px;border-radius:var(--radius-lg);border:1px solid var(--color-border);background:#ffffffb3;color:var(--color-text-secondary);font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);cursor:pointer;transition:all var(--transition-base)}.legal-back-button .material-icons{font-size:18px}.legal-back-button:hover{border-color:var(--color-primary);color:var(--color-primary);box-shadow:var(--shadow-sm);transform:translateY(-1px)}.legal-title{font-size:var(--font-size-4xl);font-weight:var(--font-weight-bold);color:var(--color-text-primary);margin:0 0 var(--spacing-md)}.legal-updated{font-size:var(--font-size-sm);color:var(--color-text-secondary);margin:0 0 var(--spacing-lg)}.legal-body{font-size:var(--font-size-base);color:var(--color-text-primary);line-height:1.7;margin:0 0 var(--spacing-lg)}.payment-success-container{display:flex;justify-content:center;align-items:center;min-height:80vh;padding:2rem;background-color:var(--color-background)}.payment-success-card{background:#fff;padding:3rem;border-radius:16px;box-shadow:0 4px 20px #00000014;text-align:center;max-width:500px;width:100%}.success-icon-container{margin-bottom:1.5rem}.success-icon{font-size:64px;color:var(--color-success)}h1{color:var(--color-text-primary);font-size:2rem;margin-bottom:1rem;font-weight:700}.success-message{color:var(--color-text-secondary);font-size:1.1rem;margin-bottom:.5rem;line-height:1.5}.redirect-message{color:var(--color-text-secondary);font-size:1rem;margin-bottom:2rem}.countdown-text{color:var(--color-text-tertiary);font-size:.9rem;margin-bottom:1.5rem}.hub-button{background-color:var(--color-primary);color:#fff;border:none;padding:12px 32px;border-radius:8px;font-size:1rem;font-weight:600;cursor:pointer;transition:all .2s ease}.hub-button:hover{background-color:var(--color-primary-dark);transform:translateY(-1px)}.payment-page-container{display:flex;justify-content:center;align-items:center;min-height:calc(100vh - var(--header-height) - var(--banner-height));padding:var(--spacing-xl);background-color:transparent}.payment-card{background:var(--color-bg-white);border-radius:var(--radius-xl);padding:var(--spacing-2xl);text-align:center;max-width:500px;width:100%;box-shadow:var(--shadow-lg);border:1px solid var(--color-border)}.payment-card.success .icon-container .material-icons{color:var(--color-success);font-size:64px;margin-bottom:var(--spacing-md)}.payment-card.cancel .icon-container .material-icons{color:var(--color-error);font-size:64px;margin-bottom:var(--spacing-md)}.payment-card h1{font-size:var(--font-size-2xl);margin-bottom:var(--spacing-md);color:var(--color-text-primary)}.payment-card p{color:var(--color-text-secondary);margin-bottom:var(--spacing-lg);line-height:1.6}.redirect-note{font-size:var(--font-size-sm);font-style:italic;color:var(--color-text-tertiary)}.action-button{background:var(--color-primary);color:#fff;border:none;padding:var(--spacing-md) var(--spacing-xl);border-radius:var(--radius-full);font-weight:var(--font-weight-bold);cursor:pointer;transition:all var(--transition-base);font-size:var(--font-size-md);box-shadow:var(--shadow-md)}.action-button:hover{background:var(--color-primary-dark);transform:translateY(-1px);box-shadow:var(--shadow-lg)}.action-button:active{transform:translateY(0);box-shadow:var(--shadow-sm)}.App{min-height:100vh;width:100%;max-width:100vw;overflow-x:hidden;background:var(--color-four)}
