#app{width:100%;min-height:100vh;min-height:100dvh;overflow-x:hidden}.page-enter-active,.page-leave-active{transition:opacity .3s cubic-bezier(.4,0,.2,1),transform .3s cubic-bezier(.4,0,.2,1)}.page-enter-from{opacity:0;transform:translateY(10px)}.page-leave-to{opacity:0;transform:translateY(-10px)}:root{--palette-tech-blue: #869BBF;--palette-tech-blue-rgb: 134, 155, 191;--palette-eco-teal: #8A9A86;--palette-eco-teal-rgb: 138, 154, 134;--palette-egg-gold: #C9A86A;--palette-egg-gold-rgb: 201, 168, 106}:root{--primary-color: #BCA88E;--primary-light: #D1C0AA;--primary-dark: #A38F75;--primary-gradient: linear-gradient(135deg, #D1C0AA 0%, #BCA88E 100%);--tech-blue: var(--palette-tech-blue);--tech-blue-glow: rgba(var(--palette-tech-blue-rgb), .6);--eco-teal: var(--palette-eco-teal);--eco-teal-glow: rgba(var(--palette-eco-teal-rgb), .6);--egg-gold: var(--palette-egg-gold);--egg-gold-glow: rgba(var(--palette-egg-gold-rgb), .7);--secondary-color: #A38F75;--accent-color: #8A9A86;--bg-base: #F7F5F0;--bg-surface: rgba(255, 255, 255, .85);--bg-surface-hover: rgba(245, 243, 238, .85);--bg-surface-active: rgba(235, 232, 226, .85);--text-primary: #2C2926;--text-secondary: #5C5651;--text-tertiary: #8C847C;--border-light: rgba(44, 41, 38, .08);--border-medium: rgba(44, 41, 38, .15);--border-tech: 1px solid rgba(188, 168, 142, .4);--card-bg: rgba(255, 255, 255, .95);--card-border: rgba(44, 41, 38, .08);--card-shadow: 0 4px 16px rgba(0, 0, 0, .04), 0 1px 4px rgba(0, 0, 0, .02);--hover-bg: rgba(245, 243, 238, .6);--brand-accent: #BCA88E;--brand-accent-dark: #A38F75;--brand-gold: var(--palette-egg-gold);--brand-wheat: #F7F5F0;--glass-bg: rgba(255, 255, 255, .8);--glass-border: rgba(255, 255, 255, .4);--glass-blur: blur(12px);--bg-pattern: radial-gradient(ellipse at 10% 10%, rgba(188, 168, 142, .08) 0px, transparent 40%), radial-gradient(ellipse at 90% 90%, rgba(138, 154, 134, .08) 0px, transparent 40%), radial-gradient(ellipse at 50% 50%, rgba(201, 168, 106, .05) 0px, transparent 50%), linear-gradient(rgba(44, 41, 38, .02) 1px, transparent 1px), linear-gradient(90deg, rgba(44, 41, 38, .02) 1px, transparent 1px)}[data-theme=midnight],[data-theme=mocha],[data-theme=obsidian],[data-theme=frost],[data-theme=sakura]{--tech-blue: var(--palette-tech-blue);--tech-blue-glow: rgba(var(--palette-tech-blue-rgb), .5);--eco-teal: var(--palette-eco-teal);--eco-teal-glow: rgba(var(--palette-eco-teal-rgb), .5);--egg-gold: var(--palette-egg-gold);--egg-gold-glow: rgba(var(--palette-egg-gold-rgb), .5);--brand-gold: var(--palette-egg-gold);--bg-surface: rgba(var(--theme-surface-rgb), .85);--bg-surface-hover: rgba(var(--theme-surface-2-rgb), .85);--bg-surface-active: rgba(var(--theme-surface-3-rgb), .85);--card-bg: rgba(var(--theme-surface-rgb), .9);--glass-bg: rgba(var(--theme-surface-rgb), .75);--hover-bg: rgba(var(--theme-surface-2-rgb), .6);--border-light: rgba(var(--theme-accent-rgb), .15);--border-medium: rgba(var(--theme-accent-rgb), .25);--border-tech: 1px solid rgba(var(--theme-accent-rgb), .3);--card-border: rgba(var(--theme-accent-rgb), .15);--glass-border: rgba(var(--theme-accent-rgb), .15);--brand-wheat: rgba(var(--theme-accent-rgb), .1)}[data-theme=midnight],[data-theme=mocha],[data-theme=sakura]{--card-shadow: 0 8px 24px rgba(0, 0, 0, .4), 0 2px 8px rgba(0, 0, 0, .2)}[data-theme=midnight],[data-theme=mocha],[data-theme=obsidian],[data-theme=sakura]{--bg-pattern: none}[data-theme=midnight]{--theme-accent-rgb: 134, 155, 191;--theme-surface-rgb: 17, 24, 35;--theme-surface-2-rgb: 26, 36, 51;--theme-surface-3-rgb: 35, 47, 66;--primary-color: #869BBF;--primary-light: #A3B5D6;--primary-dark: #6B82A6;--primary-gradient: linear-gradient(135deg, #A3B5D6 0%, #869BBF 50%, #6B82A6 100%);--secondary-color: #A3B5D6;--accent-color: #6B82A6;--bg-base: #0B111A;--text-primary: #E1E6F0;--text-secondary: #A0ABC0;--text-tertiary: #677691;--brand-accent: #869BBF;--brand-accent-dark: #6B82A6}[data-theme=mocha]{--theme-accent-rgb: 138, 154, 134;--theme-surface-rgb: 24, 29, 25;--theme-surface-2-rgb: 35, 42, 37;--theme-surface-3-rgb: 46, 54, 48;--primary-color: #8A9A86;--primary-light: #A7B5A3;--primary-dark: #6F806B;--primary-gradient: linear-gradient(135deg, #A7B5A3 0%, #8A9A86 50%, #6F806B 100%);--secondary-color: #A7B5A3;--accent-color: #6F806B;--bg-base: #121613;--text-primary: #E0E5DF;--text-secondary: #A3AFA1;--text-tertiary: #6E7A6C;--brand-accent: #8A9A86;--brand-accent-dark: #6F806B}[data-theme=obsidian]{--theme-accent-rgb: 201, 168, 106;--theme-surface-rgb: 22, 22, 22;--theme-surface-2-rgb: 36, 36, 36;--theme-surface-3-rgb: 48, 48, 48;--primary-color: #C9A86A;--primary-light: #E0C48F;--primary-dark: #A6864A;--primary-gradient: linear-gradient(135deg, #E0C48F 0%, #C9A86A 50%, #A6864A 100%);--secondary-color: #E0C48F;--accent-color: #A6864A;--bg-base: #0A0A0A;--text-primary: #F0F0F0;--text-secondary: #B0B0B0;--text-tertiary: #707070;--card-shadow: 0 8px 24px rgba(0, 0, 0, .5), 0 2px 8px rgba(0, 0, 0, .3);--brand-accent: #C9A86A;--brand-accent-dark: #A6864A}[data-theme=frost]{--theme-accent-rgb: 115, 129, 148;--theme-surface-rgb: 255, 255, 255;--theme-surface-2-rgb: 235, 238, 242;--theme-surface-3-rgb: 220, 224, 230;--primary-color: #738194;--primary-light: #94A1B3;--primary-dark: #556275;--primary-gradient: linear-gradient(135deg, #94A1B3 0%, #738194 50%, #556275 100%);--secondary-color: #94A1B3;--accent-color: #556275;--bg-base: #F0F2F5;--text-primary: #2A2F35;--text-secondary: #636D78;--text-tertiary: #9AA4B0;--brand-accent: #738194;--brand-accent-dark: #556275;--glass-bg: rgba(255, 255, 255, .8);--glass-border: rgba(255, 255, 255, .4);--brand-wheat: rgba(var(--theme-accent-rgb), .08);--bg-pattern: radial-gradient(ellipse at 15% 15%, rgba(115, 129, 148, .05) 0px, transparent 45%), radial-gradient(ellipse at 85% 85%, rgba(134, 155, 191, .05) 0px, transparent 45%), linear-gradient(rgba(42, 47, 53, .02) 1px, transparent 1px), linear-gradient(90deg, rgba(42, 47, 53, .02) 1px, transparent 1px)}[data-theme=sakura]{--theme-accent-rgb: 180, 132, 132;--theme-surface-rgb: 38, 30, 32;--theme-surface-2-rgb: 54, 44, 46;--theme-surface-3-rgb: 70, 56, 60;--primary-color: #B48484;--primary-light: #D4A6A6;--primary-dark: #936565;--primary-gradient: linear-gradient(135deg, #D4A6A6 0%, #B48484 50%, #936565 100%);--secondary-color: #D4A6A6;--accent-color: #936565;--bg-base: #1C1617;--text-primary: #E8E2E3;--text-secondary: #BFAFAF;--text-tertiary: #8C7B7B;--brand-accent: #B48484;--brand-accent-dark: #936565}:root{--border-radius-sm: 8px;--border-radius-md: 12px;--border-radius-lg: 16px;--border-radius-xl: 24px;--sidebar-width: 280px}*{margin:0;padding:0;box-sizing:border-box}html{font-size:16px;text-rendering:optimizeLegibility;-webkit-text-size-adjust:100%;min-height:100%;min-height:100dvh}body{font-family:SF Pro Display,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,Noto Sans,sans-serif,"Apple Color Emoji","Segoe UI Emoji",Segoe UI Symbol,"Noto Color Emoji",PingFang SC,Hiragino Sans GB,Microsoft YaHei,微软雅黑;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:geometricPrecision;background:var(--bg-base);background-image:var(--bg-pattern);background-size:100% 100%,100% 100%,100% 100%,30px 30px,30px 30px;background-attachment:fixed;overflow-x:hidden;overflow-y:auto;-webkit-overflow-scrolling:touch;overscroll-behavior-y:none;touch-action:pan-y;min-height:100%;min-height:100dvh;color:var(--text-primary);line-height:1.6;-webkit-tap-highlight-color:transparent}#app{width:100%;min-height:100vh;min-height:100dvh}.brand-name,.title,.upload-title,.upload-hint,.dashboard-header h1,.login-header h1{text-rendering:geometricPrecision}::-webkit-scrollbar{width:6px;height:6px}::-webkit-scrollbar-track{background:var(--bg-surface-hover);border-radius:3px}::-webkit-scrollbar-thumb{background:#8d6e6333;border-radius:3px}::-webkit-scrollbar-thumb:hover{background:#8d6e6359}@media(max-width:768px){::-webkit-scrollbar{width:4px;height:4px}input:not([type=checkbox]):not([type=radio]):not([type=range]):not([type=color]),textarea,select{font-size:max(16px,1rem)}}@media(max-width:480px){html{font-size:14px}}@media(min-width:481px)and (max-width:768px){html{font-size:15px}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes fadeInUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeInDown{0%{opacity:0;transform:translateY(-20px)}to{opacity:1;transform:translateY(0)}}@keyframes slideInLeft{0%{opacity:0;transform:translate(-20px)}to{opacity:1;transform:translate(0)}}@keyframes slideInRight{0%{opacity:0;transform:translate(20px)}to{opacity:1;transform:translate(0)}}html.platform-android body{overscroll-behavior-y:auto;text-rendering:optimizeSpeed}@media(max-width:768px){html.platform-android #app{-webkit-tap-highlight-color:transparent}}
