:root{--primary-color: #3b82f6;--primary-hover: #2563eb;--bg-color: #0d1117;--fg-color: #e2e8f0;--muted: #94a3b8;--nav-color: #0d1117;--card-bg: #161b22;--card-inner-bg: #1e2431;--card-border: #30363d;--border-color: #30363d;--link-color: #93c5fd;--hover-color: var(--primary-color);--shadow-sm: 0 1px 3px rgba(0,0,0,.3), 0 1px 2px rgba(0,0,0,.2);--shadow-md: 0 4px 6px rgba(0,0,0,.35), 0 2px 4px rgba(0,0,0,.25);--shadow-lg: 0 10px 25px rgba(0,0,0,.4), 0 4px 10px rgba(0,0,0,.3);--radius-sm: 6px;--radius-md: 10px;--radius-lg: 14px;--transition: .15s ease}body.light{--primary-color: #2563eb;--primary-hover: #1d4ed8;--bg-color: #f8fafc;--fg-color: #0f172a;--muted: #64748b;--nav-color: #ffffff;--card-bg: #ffffff;--card-inner-bg: #f1f5f9;--card-border: #e2e8f0;--border-color: #e2e8f0;--link-color: #2563eb;--shadow-sm: 0 1px 3px rgba(0,0,0,.08), 0 1px 2px rgba(0,0,0,.05);--shadow-md: 0 4px 6px rgba(0,0,0,.07), 0 2px 4px rgba(0,0,0,.05);--shadow-lg: 0 10px 25px rgba(0,0,0,.1), 0 4px 10px rgba(0,0,0,.07)}*,*:before,*:after{box-sizing:border-box}html,body{margin:0;padding:0;height:100%;font-family:Inter,Segoe UI,system-ui,-apple-system,sans-serif;background:var(--bg-color);color:var(--fg-color);display:flex;flex-direction:column;line-height:1.6;-webkit-font-smoothing:antialiased;transition:background var(--transition),color var(--transition)}a{color:var(--link-color);text-decoration:none;transition:color var(--transition)}a:hover{color:var(--primary-color)}.container{width:100%;max-width:1200px;margin:0 auto;padding-left:1rem;padding-right:1rem}main.app-main{flex:1;padding:1.5rem 1rem;max-width:1200px;margin:0 auto;width:100%}.main-header{background:var(--nav-color);border-bottom:1px solid var(--card-border);padding:0 1.5rem;padding-top:env(safe-area-inset-top);position:sticky;top:0;z-index:2000;box-shadow:var(--shadow-sm)}.header-row{display:flex;align-items:center;gap:1rem;height:56px;padding:0}.logo{font-size:1.1rem;font-weight:800;color:var(--fg-color)!important;letter-spacing:-.3px;text-decoration:none;white-space:nowrap;display:inline-flex;align-items:center;gap:.5rem;flex-shrink:0}.logo__text{display:inline-block;font-size:1.1rem;line-height:1}.logo:before{content:"";display:inline-block;background:var(--primary-color);width:.8rem;height:.8rem;border-radius:999px;box-shadow:0 0 0 4px color-mix(in srgb,var(--primary-color) 18%,transparent)}.navbar{flex:1}.nav-container{display:flex}.nav{list-style:none;margin:0;padding:0;display:flex;align-items:center;gap:.15rem;flex-wrap:nowrap}.nav>li>a,.nav>li>button{display:flex;align-items:center;padding:.4rem .7rem;font-size:.88rem;font-weight:500;color:var(--muted);border-radius:var(--radius-sm);text-decoration:none;background:none;border:none;cursor:pointer;transition:color var(--transition),background var(--transition);white-space:nowrap}.nav>li>a:hover,.nav>li>button:hover,.nav>li.dropdown.open>a{color:var(--fg-color);background:var(--card-inner-bg)}.nav>li>a.active{color:var(--primary-color);background:#3b82f61a}.dropdown{position:relative}.dropdown-toggle{-webkit-user-select:none;-moz-user-select:none;user-select:none}.dropdown-menu{display:none;position:absolute;top:calc(100% + 6px);left:0;background:var(--card-bg);border:1px solid var(--card-border);border-radius:var(--radius-md);box-shadow:var(--shadow-lg);min-width:180px;padding:.35rem;z-index:3000}.dropdown.open .dropdown-menu{display:block}.dropdown-menu li{list-style:none}.dropdown-menu a{display:block;padding:.5rem .75rem;font-size:.875rem;color:var(--fg-color);border-radius:var(--radius-sm);transition:background var(--transition)}.dropdown-menu a:hover{background:var(--card-inner-bg)}.menu-toggle{display:none;background:none;border:none;padding:.4rem;cursor:pointer;flex-direction:column;gap:5px;border-radius:var(--radius-sm);margin-left:auto}.menu-toggle span{display:block;width:22px;height:2px;background:var(--fg-color);border-radius:1px;transition:transform .2s,opacity .2s}.user-area{display:flex;align-items:center;gap:.5rem;margin-left:auto;flex-shrink:0}#themeToggle{background:none;border:1px solid var(--border-color);border-radius:var(--radius-sm);padding:.35rem .5rem;cursor:pointer;color:var(--muted);font-size:.85rem;transition:border-color var(--transition),color var(--transition)}#themeToggle:hover{border-color:var(--primary-color);color:var(--fg-color)}.user-dropdown #themeToggle{border:0;width:100%;padding:.5rem .75rem;color:var(--fg-color);background:transparent;text-align:left}.user-dropdown #themeToggle:hover{border-color:transparent;background:var(--card-inner-bg)}.user-dropdown__theme:before{content:"Theme: ";color:var(--muted);font-weight:600}.user-menu{position:relative}.user-btn{background:var(--card-inner-bg);border:1px solid var(--border-color);border-radius:var(--radius-sm);padding:.35rem .75rem;font-size:.85rem;font-weight:600;color:var(--fg-color);cursor:pointer;transition:border-color var(--transition);white-space:nowrap}.user-btn:hover,.user-menu.open .user-btn{border-color:var(--primary-color)}.user-dropdown{display:none;position:absolute;top:calc(100% + 8px);right:0;background:var(--card-bg);border:1px solid var(--card-border);border-radius:var(--radius-md);box-shadow:var(--shadow-lg);min-width:200px;padding:.35rem;z-index:3000}.user-menu.open .user-dropdown{display:block}.user-dropdown__item{display:block;width:100%;padding:.5rem .75rem;font-size:.875rem;color:var(--fg-color);text-decoration:none;border-radius:var(--radius-sm);background:none;border:none;cursor:pointer;text-align:left;transition:background var(--transition);line-height:1.4}.user-dropdown__item:hover{background:var(--card-inner-bg)}.user-dropdown__item--logout{color:#f87171}.user-dropdown__item--logout:hover{background:#f871711a}.user-dropdown__divider{height:1px;background:var(--card-border);margin:.3rem .5rem}.theme-switcher{display:flex;align-items:center}.theme-switcher select{background:var(--card-inner-bg);border:1px solid var(--border-color);border-radius:var(--radius-sm);color:var(--fg-color);padding:.3rem .5rem;font-size:.82rem;cursor:pointer}.main-footer{border-top:1px solid var(--card-border);padding:.75rem 1.5rem;font-size:.8rem;color:var(--muted);text-align:center}.dashboard-section h1{font-size:1.4rem;font-weight:700;margin:0 0 1.25rem}.card,.profile-card,.form-card,.notif-card,.password-card{background:var(--card-bg);border:1px solid var(--card-border);border-radius:var(--radius-lg);box-shadow:var(--shadow-md)}.card-inner,.push-master,.event-toggle,.profile-link-row{background:var(--card-inner-bg);border-radius:var(--radius-sm)}.btn{display:inline-flex;align-items:center;padding:.55rem 1.1rem;border-radius:var(--radius-sm);font-size:.9rem;font-weight:600;cursor:pointer;text-decoration:none;border:none;transition:filter var(--transition),background var(--transition),border-color var(--transition)}.btn.primary,.btn-primary{background:var(--primary-color);color:#fff}.btn.primary:hover,.btn-primary:hover{background:var(--primary-hover)}.btn.ghost,.btn-ghost{background:transparent;border:1px solid var(--border-color);color:var(--fg-color)}.btn.ghost:hover,.btn-ghost:hover{background:var(--card-inner-bg)}.btn.danger,.btn-danger{background:#ef4444;color:#fff}.btn.edit{background:var(--primary-color);color:#fff}.form-group label{font-size:.85rem;font-weight:600;color:var(--fg-color);display:block;margin-bottom:.3rem}.form-group input,.form-group select,.form-group textarea{width:100%;padding:.6rem .8rem;background:var(--card-inner-bg);border:1px solid var(--border-color);border-radius:var(--radius-sm);color:var(--fg-color);font-size:.95rem;transition:border-color var(--transition)}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{outline:none;border-color:var(--primary-color);box-shadow:0 0 0 3px #3b82f626}.form-hint,.field-hint{font-size:.8rem;color:var(--muted)}.alert{padding:.7rem 1rem;border-radius:var(--radius-sm);font-size:.88rem}.alert-success{background:#22c55e1a;color:#4ade80;border:1px solid rgba(34,197,94,.3)}.alert-error{background:#ef44441a;color:#f87171;border:1px solid rgba(239,68,68,.3)}.alert-warn{background:#eab3081a;color:#fbbf24;border:1px solid rgba(234,179,8,.3)}.dashboard-section{padding:0}.login-container{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:2rem 1rem}.login-card{width:100%;max-width:400px;background:var(--card-bg);border:1px solid var(--card-border);border-radius:var(--radius-lg);padding:2rem;box-shadow:var(--shadow-lg)}.login-title{font-size:1.5rem;font-weight:800;margin:0 0 .3rem}.login-subtitle{font-size:.9rem;color:var(--muted);margin:0 0 1.5rem}@media (max-width: 768px){.menu-toggle{display:flex}.navbar{position:fixed;top:56px;left:0;right:0;background:var(--nav-color);border-bottom:1px solid var(--card-border);box-shadow:var(--shadow-md);z-index:1999}.nav-container{display:none;flex-direction:column;padding:.5rem}.nav-container.active{display:flex}.nav{flex-direction:column;width:100%;gap:0}.nav>li{width:100%}.nav>li>a,.nav>li>button{width:100%}.dropdown-menu{position:static;border:none;box-shadow:none;padding:0 0 0 1rem;background:transparent}.dropdown.open .dropdown-menu{display:block}.user-area{gap:.3rem;min-width:0}.user-menu{min-width:0}.user-btn{max-width:8.8rem;padding:.3rem .5rem;font-size:.8rem;overflow:hidden;text-overflow:ellipsis}.user-dropdown{right:0;min-width:min(220px,calc(100vw - 1.5rem))}#themeToggle{padding:.3rem .45rem}.user-dropdown #themeToggle{padding:.5rem .75rem}.theme-switcher{display:none}main.app-main{padding-top:1rem}}@media (max-width: 480px){.header-row{gap:.5rem}}@media (max-width: 768px){.header-row{align-items:center;flex-wrap:wrap;padding:.75rem 1rem}.logo{flex:1 1 auto;min-width:0}.nav-container{max-height:calc(100svh - 64px);overflow-y:auto}.user-area{margin-left:auto}.login-container{min-height:auto;padding:1rem 0}.login-card{max-width:100%;padding:1.5rem 1.25rem}}@media (max-width: 480px){.login-card{border-radius:var(--radius-md);padding:1.25rem 1rem}}
