.navbar[data-v-090a7604]{background-color:#fff;box-shadow:0 2px 10px #0000001a;position:sticky;top:0;z-index:100}.nav-container[data-v-090a7604]{max-width:1200px;margin:0 auto;padding:15px 20px;display:flex;justify-content:space-between;align-items:center}.logo[data-v-090a7604]{display:flex;align-items:center;gap:10px;text-decoration:none;font-size:24px;font-weight:700;color:#00aff5}.logo-icon[data-v-090a7604]{width:22px;height:22px;border-radius:50%;background:linear-gradient(135deg,#00aff5,#09d);box-shadow:0 2px 8px #00aff559}.nav-links[data-v-090a7604]{display:flex;align-items:center;gap:20px}.nav-link[data-v-090a7604]{text-decoration:none;color:#333;font-weight:500;transition:color .3s}.nav-link[data-v-090a7604]:hover{color:#00aff5}.btn-login[data-v-090a7604],.btn-logout[data-v-090a7604]{padding:8px 20px;border-radius:6px;text-decoration:none;font-weight:600;transition:all .3s;border:2px solid #00aff5;background-color:#fff;color:#00aff5;cursor:pointer}.btn-login[data-v-090a7604]:hover,.btn-logout[data-v-090a7604]:hover{background-color:#00aff5;color:#fff}.btn-register[data-v-090a7604]{padding:8px 20px;border-radius:6px;text-decoration:none;font-weight:600;transition:all .3s;background-color:#00aff5;color:#fff}.btn-register[data-v-090a7604]:hover{background-color:#09d}#app{display:flex;flex-direction:column;min-height:100vh}.main-content{flex:1;width:100%}.fade-enter-active,.fade-leave-active{transition:opacity .3s ease,transform .3s ease}.fade-enter-from{opacity:0;transform:translateY(10px)}.fade-leave-to{opacity:0;transform:translateY(-10px)}::-webkit-scrollbar{width:10px}::-webkit-scrollbar-track{background:var(--bg-tertiary)}::-webkit-scrollbar-thumb{background:var(--primary);border-radius:5px}::-webkit-scrollbar-thumb:hover{background:var(--primary-dark)}@media print{.navbar{display:none}.main-content{margin:0;padding:0}}@media(max-width:768px){html{font-size:14px}}@media(min-width:1200px){html{font-size:16px}}*{-webkit-tap-highlight-color:transparent}img{max-width:100%;height:auto}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border-width:0}*:focus-visible{outline:2px solid var(--primary);outline-offset:2px;border-radius:var(--radius-sm)}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}body{min-height:100vh;color:#2c3e50;background:#fff;font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Helvetica Neue,sans-serif;font-size:15px;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}#app{max-width:1280px;margin:0 auto;padding:2rem;font-weight:400}:root{--primary: #00aff5;--primary-dark: #0099dd;--primary-light: #33c0f7;--success: #28a745;--success-light: #d4edda;--danger: #dc3545;--danger-light: #f8d7da;--warning: #ffc107;--warning-light: #fff3cd;--info: #17a2b8;--text-primary: #333333;--text-secondary: #666666;--text-light: #999999;--bg-primary: #ffffff;--bg-secondary: #f8f9fa;--bg-tertiary: #e8ecf1;--border: #e0e0e0;--border-light: #f0f0f0;--spacing-xs: 4px;--spacing-sm: 8px;--spacing-md: 16px;--spacing-lg: 24px;--spacing-xl: 32px;--spacing-2xl: 48px;--spacing-3xl: 64px;--radius-sm: 6px;--radius-md: 8px;--radius-lg: 12px;--radius-xl: 16px;--radius-full: 50%;--shadow-sm: 0 2px 8px rgba(0, 0, 0, .1);--shadow-md: 0 4px 15px rgba(0, 0, 0, .1);--shadow-lg: 0 4px 20px rgba(0, 0, 0, .12);--shadow-xl: 0 8px 30px rgba(0, 0, 0, .15);--font-size-xs: .75rem;--font-size-sm: .875rem;--font-size-base: 1rem;--font-size-lg: 1.125rem;--font-size-xl: 1.25rem;--font-size-2xl: 1.5rem;--font-size-3xl: 2rem;--font-size-4xl: 2.5rem;--font-weight-normal: 400;--font-weight-medium: 500;--font-weight-semibold: 600;--font-weight-bold: 700;--transition-fast: .15s ease;--transition-base: .3s ease;--transition-slow: .5s ease}*{margin:0;padding:0;box-sizing:border-box}body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background-color:var(--bg-tertiary);color:var(--text-primary);line-height:1.6}.container{max-width:1200px;margin:0 auto;padding:0 var(--spacing-lg)}.text-center{text-align:center}.text-primary{color:var(--primary)}.text-secondary{color:var(--text-secondary)}.mt-sm{margin-top:var(--spacing-sm)}.mt-md{margin-top:var(--spacing-md)}.mt-lg{margin-top:var(--spacing-lg)}.mt-xl{margin-top:var(--spacing-xl)}.mb-sm{margin-bottom:var(--spacing-sm)}.mb-md{margin-bottom:var(--spacing-md)}.mb-lg{margin-bottom:var(--spacing-lg)}.mb-xl{margin-bottom:var(--spacing-xl)}.p-sm{padding:var(--spacing-sm)}.p-md{padding:var(--spacing-md)}.p-lg{padding:var(--spacing-lg)}.p-xl{padding:var(--spacing-xl)}.card{background:var(--bg-primary);border-radius:var(--radius-xl);box-shadow:var(--shadow-md);padding:var(--spacing-xl);transition:var(--transition-base)}.card:hover{box-shadow:var(--shadow-lg);transform:translateY(-2px)}.card-header{margin-bottom:var(--spacing-lg);padding-bottom:var(--spacing-md);border-bottom:2px solid var(--primary)}.btn{padding:var(--spacing-md) var(--spacing-xl);border:none;border-radius:var(--radius-md);font-weight:var(--font-weight-semibold);cursor:pointer;transition:all var(--transition-base);display:inline-flex;align-items:center;gap:var(--spacing-sm);text-decoration:none;position:relative;overflow:hidden}.btn:before{content:"";position:absolute;top:50%;left:50%;width:0;height:0;border-radius:50%;background:#fff3;transform:translate(-50%,-50%);transition:width .6s,height .6s}.btn:hover:before{width:300px;height:300px}.btn-primary{background:linear-gradient(135deg,var(--primary) 0%,var(--primary-dark) 100%);color:#fff;box-shadow:0 4px 15px #00aff54d}.btn-primary:hover{transform:translateY(-2px);box-shadow:0 6px 25px #00aff566}.btn-secondary{background:var(--bg-secondary);color:var(--text-primary)}.btn-secondary:hover{background:var(--border)}.btn-success{background:var(--success);color:#fff}.btn-danger{background:var(--danger);color:#fff}.btn:disabled{opacity:.6;cursor:not-allowed;transform:none}.btn:disabled:before{display:none}.form-group{margin-bottom:var(--spacing-lg)}.form-label{display:block;font-weight:var(--font-weight-semibold);color:var(--text-primary);margin-bottom:var(--spacing-sm)}.form-input{width:100%;padding:var(--spacing-md);border:2px solid var(--border);border-radius:var(--radius-md);font-size:var(--font-size-base);transition:all var(--transition-base);background:var(--bg-secondary)}.form-input:focus{outline:none;border-color:var(--primary);background:var(--bg-primary);box-shadow:0 0 0 4px #00aff51a;transform:translateY(-1px)}.alert{padding:var(--spacing-md);border-radius:var(--radius-md);margin-bottom:var(--spacing-lg);font-weight:var(--font-weight-medium);animation:slideDown .3s ease}@keyframes slideDown{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.alert-success{background:var(--success-light);color:#155724;border:2px solid var(--success)}.alert-danger{background:var(--danger-light);color:#721c24;border:2px solid var(--danger)}.alert-warning{background:var(--warning-light);color:#856404;border:2px solid var(--warning)}.gradient-primary{background:linear-gradient(135deg,var(--primary) 0%,var(--primary-dark) 100%);color:#fff}.gradient-bg{background:linear-gradient(135deg,#f5f7fa 0%,var(--bg-tertiary) 100%)}@keyframes spin{to{transform:rotate(360deg)}}.loading-spinner{width:40px;height:40px;border:4px solid var(--border);border-top-color:var(--primary);border-radius:50%;animation:spin .8s linear infinite}.fade-enter-active,.fade-leave-active{transition:opacity var(--transition-base)}.fade-enter-from,.fade-leave-to{opacity:0}.slide-enter-active,.slide-leave-active{transition:all var(--transition-base)}.slide-enter-from{transform:translate(-20px);opacity:0}.slide-leave-to{transform:translate(20px);opacity:0}@keyframes pulse{0%,to{transform:scale(1)}50%{transform:scale(1.05)}}.pulse{animation:pulse 2s ease-in-out infinite}.hover-lift{transition:transform var(--transition-base)}.hover-lift:hover{transform:translateY(-4px)}a:focus,button:focus,input:focus,textarea:focus{outline:2px solid var(--primary);outline-offset:2px}html{scroll-behavior:smooth}::selection{background-color:var(--primary);color:#fff}@media(max-width:768px){:root{--spacing-lg: 16px;--spacing-xl: 24px;--spacing-2xl: 32px}.container{padding:0 var(--spacing-md)}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}
