:root{--color-primary:#1a2744;--color-accent:#c8723a;--color-accent-hover:#b5642f;--color-bg-cream:#f5f0e8;--color-bg-white:#fff;--color-bg-input:#fdfcfb;--color-bg-page:#f8f7f5;--color-border:#f0ede8;--color-border-dark:#e0ddd8;--color-text-muted:#b5afa9;--color-text-hint:#c5c0ba;--color-text-primary:#1a2744;--color-text-secondary:#6b7280;--color-success:#22c55e;--color-warning:#f59e0b;--color-danger:#ef4444;--sidebar-width:220px;--header-height:60px;--radius-sm:6px;--radius-md:10px;--radius-lg:16px}*{box-sizing:border-box;margin:0;padding:0}body{color:var(--color-text-primary);background:var(--color-bg-page);-webkit-font-smoothing:antialiased;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif}input,button,select,textarea{font-family:inherit}a{color:inherit;text-decoration:none}.sidebar{width:var(--sidebar-width);background:var(--color-primary);color:#fff;z-index:100;flex-direction:column;display:flex;position:fixed;top:0;bottom:0;left:0}.sidebar-brand{border-bottom:1px solid #ffffff1a;align-items:baseline;gap:8px;padding:20px 20px 16px;display:flex}.sidebar-logo{letter-spacing:2px;font-size:22px;font-weight:800}.sidebar-version{opacity:.5;font-size:11px;font-weight:400}.sidebar-store-info{color:var(--color-accent);border-bottom:1px solid #ffffff1a;padding:10px 20px;font-size:12px}.sidebar-nav{flex-direction:column;flex:1;gap:2px;padding:12px 10px;display:flex;overflow-y:auto}.sidebar-link{border-radius:var(--radius-sm);color:#ffffffa6;cursor:pointer;text-align:left;background:0 0;border:none;align-items:center;gap:10px;width:100%;padding:10px 12px;font-size:14px;transition:all .15s;display:flex}.sidebar-link:hover{color:#fff;background:#ffffff14}.sidebar-link.active{color:#fff;background:#ffffff1f}.sidebar-bottom{border-top:1px solid #ffffff1a;padding:10px}.sidebar-logout{color:#ffffff80}.sidebar-logout:hover{color:#f88;background:#ff000014}.header{height:var(--header-height);background:var(--color-bg-white);border-bottom:1px solid var(--color-border);justify-content:space-between;align-items:center;padding:0 24px;display:flex}.header-org{color:var(--color-text-primary);font-size:16px;font-weight:600}.header-right{align-items:center;gap:16px;display:flex}.header-user{color:var(--color-text-secondary);background:var(--color-bg-page);border-radius:20px;align-items:center;gap:8px;padding:6px 12px;font-size:13px;display:flex}.app-layout{min-height:100vh;display:flex}.app-main{margin-left:var(--sidebar-width);flex-direction:column;flex:1;display:flex}.app-content{flex:1;padding:24px}.login-page{min-height:100vh;display:flex}.login-left{background:var(--color-bg-cream);flex-direction:column;justify-content:center;align-items:center;width:40%;padding:40px;display:flex;position:relative}.login-brand{text-align:center}.login-logo{color:var(--color-primary);letter-spacing:4px;margin-bottom:12px;font-size:48px;font-weight:800}.login-subtitle{color:var(--color-text-muted);letter-spacing:2px;font-size:16px}.login-footer{color:var(--color-text-hint);font-size:12px;position:absolute;bottom:24px}.login-right{background:var(--color-bg-white);justify-content:center;align-items:center;width:60%;padding:40px;display:flex}.login-form-wrapper{width:100%;max-width:400px}.login-tabs{border-bottom:2px solid var(--color-border);gap:0;margin-bottom:32px;display:flex}.login-tab{color:var(--color-text-muted);cursor:pointer;background:0 0;border:none;border-bottom:2px solid #0000;flex:1;margin-bottom:-2px;padding:12px 0;font-size:15px;font-weight:500;transition:all .2s}.login-tab.active{color:var(--color-accent);border-bottom-color:var(--color-accent)}.login-form{flex-direction:column;gap:20px;display:flex}.form-group{flex-direction:column;gap:6px;display:flex}.form-group label{color:var(--color-text-secondary);font-size:13px;font-weight:500}.form-group input,.form-group select{border:1px solid var(--color-border-dark);border-radius:var(--radius-sm);background:var(--color-bg-input);outline:none;padding:10px 14px;font-size:14px;transition:border-color .2s}.form-group input:focus,.form-group select:focus{border-color:var(--color-accent)}.login-btn{background:var(--color-accent);color:#fff;border-radius:var(--radius-sm);cursor:pointer;border:none;margin-top:4px;padding:12px;font-size:15px;font-weight:600;transition:background .2s}.login-btn:hover{background:var(--color-accent-hover)}.login-btn:disabled{opacity:.6;cursor:not-allowed}.login-error{color:var(--color-danger);text-align:center;border-radius:var(--radius-sm);background:#fef2f2;padding:8px;font-size:13px}.pin-dots{justify-content:center;gap:14px;padding:16px 0;display:flex}.pin-dot{border:2px solid var(--color-border-dark);border-radius:50%;width:16px;height:16px;transition:all .15s}.pin-dot.filled{background:var(--color-accent);border-color:var(--color-accent)}.pin-pad{grid-template-columns:repeat(3,1fr);gap:10px;max-width:280px;margin:0 auto;display:grid}.pin-key{border:1px solid var(--color-border-dark);border-radius:var(--radius-md);background:var(--color-bg-white);cursor:pointer;color:var(--color-text-primary);padding:14px;font-size:20px;font-weight:500;transition:all .15s}.pin-key:hover{background:var(--color-bg-cream)}.pin-key:active{transform:scale(.96)}.pin-key-action{color:var(--color-text-muted);font-size:13px}@media (width<=768px){.login-page{flex-direction:column}.login-left{width:100%;min-height:auto;padding:32px 20px}.login-right{width:100%;padding:24px 20px}.login-footer{margin-top:16px;position:static}}.dashboard{max-width:1000px}.page-title{color:var(--color-text-primary);margin-bottom:24px;font-size:22px;font-weight:700}.dashboard-cards{grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:16px;margin-bottom:32px;display:grid}.dash-card{background:var(--color-bg-white);border:1px solid var(--color-border);border-radius:var(--radius-md);padding:20px}.dash-card-label{color:var(--color-text-secondary);margin-bottom:8px;font-size:13px}.dash-card-value{color:var(--color-text-primary);font-size:28px;font-weight:700}.dashboard-placeholder{background:var(--color-bg-white);border:1px solid var(--color-border);border-radius:var(--radius-md);text-align:center;color:var(--color-text-muted);padding:40px;font-size:14px}
