@font-face{font-display:swap;font-family:Fahkwang;font-weight:300;src:url(../fonts/Fahkwang-Light.woff2) format("woff2")}@font-face{font-display:swap;font-family:MinionProDisp;font-weight:400;src:url(../fonts/MinionProDisp.woff2) format("woff2")}@font-face{font-display:swap;font-family:MinionProRegular;font-weight:400;src:url(../fonts/MinionProRegular.woff2) format("woff2")}@font-face{font-display:swap;font-family:Calibri;font-weight:400;src:url(../fonts/Calibri.woff2) format("woff2")}@font-face{font-display:swap;font-family:CalibriBold;font-weight:700;src:url(../fonts/CalibriBold.woff2) format("woff2")}:root{--bg-primary:#fff;--bg-deep:#2b333f;--bg-light:#f7f7f9;--bg-overlay:rgba(0,0,0,.5);--text-primary:#444344;--text-heading:#3a4a5c;--text-secondary:#50556b;--text-muted:#73859f;--text-inverse:#fff;--accent:#ab8cc0;--border:#e1e0e4;--border-light:#cdcdcd;--status-progress:#ab8cc0;--status-shipped:#73859f;--status-done:#4a8c6f;--status-pending:#c9a96e;--status-error:#c0392b;--font-logo:"Fahkwang",sans-serif;--font-display:"MinionProDisp",Georgia,"Times New Roman",serif;--font-body:"MinionProRegular",Georgia,"Times New Roman",serif;--font-ui:"Calibri","Segoe UI",-apple-system,sans-serif;--font-ui-bold:"CalibriBold","Segoe UI",-apple-system,sans-serif;--radius:2px;--transition-fast:.3s ease;--transition-normal:.4s ease;--transition-slow:.5s ease;--header-height:80px;--content-max:1200px;--content-wide:1400px;--section-padding:80px 0}*,:after,:before{box-sizing:border-box;margin:0;padding:0}html{font-size:16px;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;scroll-behavior:smooth}body{background:var(--bg-primary);color:var(--text-primary);font-family:var(--font-ui);line-height:1.6;overflow-x:hidden}a{color:var(--text-heading);text-decoration:none;transition:color var(--transition-fast)}a:hover{color:var(--accent)}img{display:block;max-width:100%}h1,h2,h3,h4{color:var(--text-heading);font-family:var(--font-display);font-weight:400;letter-spacing:.5px;line-height:1.3}h1{font-size:32px;letter-spacing:3px}h2{font-size:24px;letter-spacing:1.5px}h3{font-size:20px;letter-spacing:1px}h4{font-size:16px}.text-display{color:var(--text-heading);font-family:var(--font-display)}.text-body{color:var(--text-primary);font-family:var(--font-body);line-height:1.8}.text-muted{color:var(--text-secondary);font-size:14px}.text-center{text-align:center}.btn{align-items:center;border:1px solid transparent;border-radius:var(--radius);cursor:pointer;display:inline-flex;font-family:var(--font-ui);font-size:13px;font-weight:600;justify-content:center;letter-spacing:1.5px;line-height:1;padding:13px 32px;text-transform:uppercase;transition:all var(--transition-fast)}.btn-primary{background:var(--bg-deep);border-color:var(--bg-deep);color:var(--text-inverse)}.btn-primary:hover{background:#3a4a5c;border-color:#3a4a5c}.btn-secondary{background:transparent;border-color:var(--bg-deep);color:var(--bg-deep)}.btn-secondary:hover{background:var(--bg-deep);color:var(--text-inverse)}.btn-ghost{background:transparent;border-color:transparent;color:var(--text-secondary);letter-spacing:1px;padding:8px 16px}.btn-ghost:hover{color:var(--bg-deep)}.btn:disabled{cursor:not-allowed;opacity:.4;pointer-events:none}.btn-full{width:100%}.input-group{margin-bottom:20px}.input-group label{color:var(--text-secondary);display:block;font-size:11px;font-weight:600;letter-spacing:1px;margin-bottom:8px;text-transform:uppercase}.input{background:var(--bg-primary);border:1px solid var(--border);border-radius:var(--radius);color:var(--text-primary);font-family:var(--font-ui);font-size:14px;outline:none;padding:12px 16px;transition:border-color var(--transition-fast);width:100%}.input:focus{border-color:var(--bg-deep)}.input::-moz-placeholder{color:var(--border-light)}.input::placeholder{color:var(--border-light)}.input-error{border-color:var(--status-error)}.error-text{color:var(--status-error);font-size:12px;margin-top:6px}select.input{-webkit-appearance:none;-moz-appearance:none;appearance:none;background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12'%3E%3Cpath fill='%2373859f' d='m2 4 4 4 4-4'/%3E%3C/svg%3E");background-position:right 12px center;background-repeat:no-repeat;padding-right:32px}.overlay{align-items:center;background:var(--bg-overlay);display:flex;inset:0;justify-content:center;opacity:0;position:fixed;transition:opacity var(--transition-fast),visibility var(--transition-fast);visibility:hidden;z-index:1000}.overlay.active{opacity:1;visibility:visible}.modal{background:var(--bg-primary);border-radius:var(--radius);box-shadow:0 25px 80px #0003;max-height:90vh;max-width:95vw;opacity:0;overflow-y:auto;padding:48px 40px;transform:scale(.96);transition:transform var(--transition-normal),opacity var(--transition-normal);width:420px}.overlay.active .modal{opacity:1;transform:scale(1)}.modal-close{align-items:center;background:none;border:none;border-radius:50%;color:var(--border-light);cursor:pointer;display:flex;font-size:22px;height:36px;justify-content:center;position:absolute;right:18px;top:18px;transition:color var(--transition-fast);width:36px}.modal-close:hover{background:var(--bg-light);color:var(--text-primary)}.modal-logo{color:var(--text-heading);font-family:var(--font-logo);font-size:29px;font-weight:300;letter-spacing:12px;margin-bottom:36px;text-align:center}.divider,.modal-logo{text-transform:uppercase}.divider{align-items:center;color:var(--text-muted);display:flex;font-size:11px;letter-spacing:2px;margin:28px 0}.divider:after,.divider:before{background:var(--border);content:"";flex:1;height:1px}.divider:before{margin-right:20px}.divider:after{margin-left:20px}.social-buttons{gap:14px;margin:24px 0}.social-btn,.social-buttons{display:flex;justify-content:center}.social-btn{align-items:center;background:var(--bg-primary);border:1px solid var(--border);border-radius:50%;cursor:pointer;height:46px;transition:all var(--transition-fast);width:46px}.social-btn:hover{background:var(--bg-deep);border-color:var(--bg-deep);color:var(--text-inverse)}.social-btn:hover svg{fill:#fff}.social-btn svg{fill:var(--text-secondary);height:18px;transition:fill var(--transition-fast);width:18px}.toast-container{display:flex;flex-direction:column;gap:10px;position:fixed;right:24px;top:24px;z-index:2000}.toast{align-items:center;background:var(--bg-primary);border-left:3px solid var(--border);border-radius:var(--radius);box-shadow:0 8px 30px #0000001f;display:flex;gap:12px;max-width:440px;min-width:320px;padding:16px 24px;transform:translate(120%);transition:transform var(--transition-normal)}.toast.show{transform:translate(0)}.toast.success{border-left-color:var(--status-done)}.toast.error{border-left-color:var(--status-error)}.toast.info{border-left-color:var(--text-heading)}.toast-text{color:var(--text-primary);font-size:14px}.app-header{align-items:center;background:var(--bg-primary);border-bottom:1px solid var(--border);display:flex;height:var(--header-height);justify-content:space-between;padding:0 48px;position:sticky;top:0;z-index:100}.app-header-logo{font-family:var(--font-logo);font-size:29px;font-weight:300;letter-spacing:12px;text-transform:uppercase}.app-header-logo,.app-header-logo:hover{color:var(--text-heading)}.app-header-nav{align-items:center;display:flex;gap:28px}.app-header-nav a{color:var(--text-secondary);font-family:var(--font-ui);font-size:12px;letter-spacing:1.5px;text-transform:uppercase;transition:color var(--transition-fast)}.app-header-nav a.router-link-active,.app-header-nav a:hover{color:var(--bg-deep)}.header-icon-btn{background:none;border:none;color:var(--text-secondary);cursor:pointer;font-size:18px;padding:8px;position:relative;transition:color var(--transition-fast)}.header-icon-btn:hover{color:var(--bg-deep)}.input-password-wrap{position:relative}.input-password-wrap .input{padding-right:44px}.password-toggle{background:none;border:none;color:var(--text-muted);cursor:pointer;font-size:16px;padding:4px;position:absolute;right:14px;top:50%;transform:translateY(-50%)}.layout-sidebar{display:flex;min-height:100vh}.sidebar{background:var(--bg-light);border-right:1px solid var(--border);flex-shrink:0;padding:32px 0;width:240px}.sidebar-user{border-bottom:1px solid var(--border);margin-bottom:20px;padding:0 24px 24px;text-align:center}.sidebar-avatar{border:2px solid var(--border);border-radius:50%;height:72px;margin-bottom:10px;-o-object-fit:cover;object-fit:cover;width:72px}.sidebar-name{color:var(--text-primary);font-size:15px;font-weight:600}.sidebar-email{color:var(--text-secondary);font-size:12px;margin-top:2px}.sidebar-nav a{align-items:center;border-left:2px solid transparent;color:var(--text-primary);display:flex;font-size:14px;gap:10px;padding:11px 24px;transition:all var(--transition-fast)}.sidebar-nav a:hover{background:#00000005;color:var(--bg-deep)}.sidebar-nav a.router-link-exact-active{background:#ab8cc00a;border-left-color:var(--accent);color:var(--bg-deep);font-weight:600}.main-content{flex:1;max-width:960px;padding:40px 48px}.card{background:var(--bg-primary);border:1px solid var(--border);border-radius:var(--radius);padding:28px}.card,.card-title{margin-bottom:20px}.card-title{color:var(--text-heading);font-family:var(--font-display);font-size:18px;letter-spacing:.5px}.badge{border-radius:var(--radius);display:inline-block;font-size:10px;font-weight:600;letter-spacing:1px;padding:3px 10px;text-transform:uppercase}.badge-silver{background:#eaeaea;color:#555}.badge-gold{background:#fef3c7;color:#92400e}.badge-platinum{background:#e0e7ff;color:#3730a3}.admin-sidebar{background:var(--bg-deep);color:var(--text-inverse);display:flex;flex-direction:column;flex-shrink:0;min-height:100vh;padding:28px 0;width:240px}.admin-sidebar-logo{border-bottom:1px solid hsla(0,0%,100%,.08);font-family:var(--font-logo);font-size:18px;font-weight:300;letter-spacing:8px;margin-bottom:20px;padding:0 24px 24px;text-transform:uppercase}.admin-sidebar-label{color:#ffffff59;font-size:10px;letter-spacing:1.5px;padding:20px 24px 8px;text-transform:uppercase}.admin-sidebar a{align-items:center;border-left:2px solid transparent;color:#fff9;display:flex;font-size:14px;gap:10px;padding:11px 24px;transition:all var(--transition-fast)}.admin-sidebar a:hover{background:#ffffff0a;color:#fff}.admin-sidebar a.router-link-exact-active{background:#ffffff14;border-left-color:var(--accent);color:#fff}.admin-content{background:var(--bg-light);flex:1;padding:36px 40px}.stats-grid{display:grid;gap:16px;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));margin-bottom:32px}.stat-card{background:var(--bg-primary);border:1px solid var(--border);border-radius:var(--radius);padding:24px}.stat-label{color:var(--text-secondary);font-size:11px;letter-spacing:1px;margin-bottom:6px;text-transform:uppercase}.stat-value{color:var(--text-heading);font-family:var(--font-ui);font-size:32px;font-variant-numeric:tabular-nums;font-weight:700;letter-spacing:-.5px}.table{border-collapse:collapse;width:100%}.table th{color:var(--text-secondary);font-size:10px;font-weight:600;letter-spacing:1px;padding:12px 16px;text-align:left;text-transform:uppercase}.table td,.table th{border-bottom:1px solid var(--border)}.table td{font-size:14px;padding:14px 16px;vertical-align:middle}.table tr:hover td{background:var(--bg-light)}@keyframes letterFade{0%,to{opacity:.15}50%{opacity:1}}.loading{align-items:center;display:flex;justify-content:center;padding:100px 0}.loading-logo{color:var(--text-muted);font-family:var(--font-logo);font-size:24px;font-weight:300;letter-spacing:10px;text-transform:uppercase}.loading-logo span{animation:letterFade 1.8s ease infinite}.loading-logo span:first-child{animation-delay:0s}.loading-logo span:nth-child(2){animation-delay:.1s}.loading-logo span:nth-child(3){animation-delay:.2s}.loading-logo span:nth-child(4){animation-delay:.3s}.loading-logo span:nth-child(5){animation-delay:.4s}.loading-logo span:nth-child(6){animation-delay:.5s}.loading-logo span:nth-child(7){animation-delay:.6s}.page-enter-active,.page-leave-active{transition:opacity .4s ease,transform .4s ease}.page-enter-from{opacity:0;transform:translateY(8px)}.page-leave-to{opacity:0}@media(max-width:768px){:root{--header-height:60px}.admin-sidebar,.sidebar{display:none}.admin-content,.main-content{padding:20px 16px}.app-header{padding:0 16px}.app-header-logo{font-size:22px;letter-spacing:8px}.app-header-nav{gap:16px}.app-header-nav a{font-size:11px;letter-spacing:1px}.modal{border-radius:0;display:flex;flex-direction:column;justify-content:center;max-width:100%;min-height:100vh;padding:32px 24px;width:100%}.stats-grid{grid-template-columns:1fr 1fr}h1{font-size:24px}h2{font-size:20px}}@media(max-width:480px){.app-header-nav a:not(:last-child):not(:nth-last-child(2)){display:none}}
