:root{--font-family:"Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--font-size-xs:.75rem;--font-size-sm:.8125rem;--font-size-base:.9375rem;--font-size-lg:1.125rem;--font-size-xl:1.25rem;--font-size-2xl:1.5rem;--font-size-3xl:2rem;--space-xs:4px;--space-sm:8px;--space-md:16px;--space-lg:24px;--space-xl:32px;--space-2xl:48px;--radius-sm:6px;--radius-md:10px;--radius-lg:16px;--radius-full:9999px;--shadow-sm:0 1px 2px #0000004d;--shadow-md:0 4px 12px #0006;--shadow-lg:0 8px 32px #00000080;--shadow-glow:0 0 20px #ffffff08;--transition-fast:.15s ease;--transition-base:.25s ease;--transition-slow:.4s cubic-bezier(.4, 0, .2, 1);--nav-height:56px;--bottom-nav-height:64px;--max-width:600px;--sidebar-narrow-width:60px;--sidebar-wide-width:250px}[data-theme=light]{--color-bg:#fff;--color-bg-elevated:#f8f8f8;--color-bg-card:#fff;--color-bg-modal:#fffffff2;--color-surface:#f1f1f1;--color-border:#e0e0e0;--color-border-subtle:#eee;--color-text-primary:#1a1a1a;--color-text-secondary:#666;--color-text-muted:#999;--color-accent:#000;--color-accent-hover:#333;--color-btn-bg:#000;--color-btn-text:#fff;--color-btn-hover:#1a1a1a;--color-btn-border:#333;--color-danger:#dc2626;--color-success:#16a34a;--shadow-sm:0 1px 2px #0000000d;--shadow-md:0 4px 12px #0000001a;--shadow-lg:0 8px 32px #0000001f;--shadow-glow:0 0 20px #00000005}[data-theme=dark]{--color-bg:#0a0a0a;--color-bg-elevated:#111;--color-bg-card:#161616;--color-bg-modal:#0a0a0ad9;--color-surface:#1a1a1a;--color-border:#2a2a2a;--color-border-subtle:#1e1e1e;--color-text-primary:#f0f0f0;--color-text-secondary:#888;--color-text-muted:#555;--color-accent:#fff;--color-accent-hover:#e0e0e0;--color-btn-bg:#000;--color-btn-text:#fff;--color-btn-hover:#1a1a1a;--color-btn-border:#333;--color-danger:#f44;--color-success:#22c55e;--shadow-sm:0 1px 2px #0000004d;--shadow-md:0 4px 12px #0006;--shadow-lg:0 8px 32px #00000080;--shadow-glow:0 0 20px #ffffff08}*,:before,:after{box-sizing:border-box;margin:0;padding:0}html{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-size:16px}body{font-family:var(--font-family);background-color:var(--color-bg);color:var(--color-text-primary);min-height:100vh;line-height:1.6;overflow-x:hidden}a{color:var(--color-accent);transition:color var(--transition-fast);text-decoration:none}a:hover{color:var(--color-accent-hover)}input,textarea,button{font-family:var(--font-family);font-size:var(--font-size-base)}.btn{justify-content:center;align-items:center;gap:var(--space-sm);background-color:var(--color-btn-bg);color:var(--color-btn-text);border:1px solid var(--color-btn-border);border-radius:var(--radius-sm);font-size:var(--font-size-sm);letter-spacing:.02em;cursor:pointer;transition:all var(--transition-fast);white-space:nowrap;-webkit-user-select:none;user-select:none;padding:10px 25px;font-weight:600;display:inline-flex}.btn:hover{background-color:var(--color-btn-hover);box-shadow:var(--shadow-sm);border-color:#444;transform:translateY(-1px)}.btn:active{transform:translateY(0)}.btn:disabled{opacity:.4;cursor:not-allowed;transform:none}.btn--small{font-size:var(--font-size-xs);padding:6px 16px}.input-field{background-color:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-sm);width:100%;color:var(--color-text-primary);font-size:var(--font-size-base);transition:border-color var(--transition-fast), box-shadow var(--transition-fast);outline:none;padding:12px 16px}.input-field::placeholder{color:var(--color-text-muted)}.input-field:focus{border-color:#444;box-shadow:0 0 0 2px #ffffff0d}.form-group{gap:var(--space-sm);flex-direction:column;display:flex}.form-label{font-size:var(--font-size-sm);color:var(--color-text-secondary);letter-spacing:.02em;font-weight:500}.form-error{font-size:var(--font-size-xs);color:var(--color-danger);margin-top:2px}.app-container{flex-direction:column;min-height:100vh;display:flex}.main-content{width:100%;max-width:var(--max-width);padding-top:var(--nav-height);padding-bottom:calc(var(--bottom-nav-height) + var(--space-lg));flex:1;margin:0 auto}@keyframes fadeIn{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeInUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@keyframes slideUp{0%{opacity:0;transform:translateY(100%)}to{opacity:1;transform:translateY(0)}}@keyframes slideDown{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}@keyframes scaleIn{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}@keyframes pulse{0%,to{opacity:.4}50%{opacity:.8}}@keyframes shimmer{0%{background-position:-200% 0}to{background-position:200% 0}}.animate-fade-in{animation:fadeIn var(--transition-slow) forwards}.animate-fade-in-up{animation:fadeInUp var(--transition-slow) forwards}::-webkit-scrollbar{width:6px}::-webkit-scrollbar-track{background:0 0}::-webkit-scrollbar-thumb{background-color:var(--color-border);border-radius:var(--radius-full)}::-webkit-scrollbar-thumb:hover{background-color:var(--color-text-muted)}.visually-hidden{clip:rect(0, 0, 0, 0);border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}@media (width>=768px){.navbar,.bottom-nav{display:none}.main-content{padding-top:0;padding-bottom:var(--space-lg);transition:margin-left var(--transition-base), max-width var(--transition-base)}.app-container.sidebar-narrow .main-content{max-width:calc(var(--max-width) + var(--sidebar-narrow-width));margin:0 auto}.app-container.sidebar-wide .main-content{max-width:calc(var(--max-width) + var(--sidebar-wide-width));margin:0 auto}}.sidebar{z-index:200;background-color:var(--color-bg-elevated);border-right:1px solid var(--color-border);transition:width var(--transition-base);flex-direction:column;display:flex;position:fixed;top:0;bottom:0;left:0}.sidebar.narrow{width:var(--sidebar-narrow-width)}.sidebar.wide{width:var(--sidebar-wide-width)}@media (width<=767px){.sidebar{display:none}}@media (width>=1280px){.sidebar-toggle{display:none}.app-container.sidebar-narrow .main-content{margin:auto}}.sidebar-user{align-items:center;gap:var(--space-md);padding:var(--space-sm);border-radius:var(--radius-md);background-color:var(--color-surface);display:flex}.sidebar-avatar{border-radius:var(--radius-full);width:32px;height:32px;font-weight:700;font-size:var(--font-size-sm);color:var(--color-text-primary);background:linear-gradient(135deg,#333,#555);flex-shrink:0;justify-content:center;align-items:center;display:flex}.sidebar-username{color:var(--color-text-primary);text-overflow:ellipsis;white-space:nowrap;font-weight:600;overflow:hidden}.sidebar-logout{justify-content:center;align-items:center;gap:var(--space-sm);padding:var(--space-sm) var(--space-md);border-radius:var(--radius-md);border:1px solid var(--color-border);color:var(--color-text-secondary);font-weight:500;font-size:var(--font-size-sm);cursor:pointer;transition:all var(--transition-fast);background-color:#0000;width:100%;display:flex}.sidebar-logout:hover{background-color:var(--color-danger);border-color:var(--color-danger);color:#fff}.sidebar-logout-icon{padding:var(--space-sm);border-radius:var(--radius-md);border:1px solid var(--color-border);color:var(--color-text-secondary);cursor:pointer;transition:all var(--transition-fast);background-color:#0000;justify-content:center;align-items:center;width:100%;display:flex}.sidebar-logout-icon:hover{background-color:var(--color-danger);border-color:var(--color-danger);color:#fff}@media (width<=767px){.sidebar,.sidebar-overlay{display:none}}.dark-switch.svelte-s6higk{cursor:pointer;background:0 0;border:none;justify-content:center;align-items:center;padding:0;display:flex;position:relative}.dark-switch.svelte-s6higk:not(.narrow){width:52px;height:28px}.dark-switch.narrow.svelte-s6higk{border-radius:var(--radius-sm);width:40px;height:40px;transition:background-color var(--transition-fast)}.dark-switch.narrow.svelte-s6higk:hover{background-color:var(--color-surface)}.dark-switch-icon.svelte-s6higk{color:var(--color-text-secondary);transition:color var(--transition-fast);justify-content:center;align-items:center;display:flex}.dark-switch-icon.active.svelte-s6higk{color:var(--color-accent)}.dark-switch-track.svelte-s6higk{border-radius:var(--radius-full);background-color:var(--color-surface);border:1px solid var(--color-border);width:100%;height:100%;transition:all var(--transition-base);position:absolute}.dark-switch-track.active.svelte-s6higk{background-color:var(--color-btn-bg);border-color:var(--color-btn-bg)}.dark-switch-thumb.svelte-s6higk{border-radius:var(--radius-full);background-color:var(--color-btn-bg);width:24px;height:24px;color:var(--color-btn-text);box-shadow:var(--shadow-md);transition:transform var(--transition-base), background-color var(--transition-base);z-index:1;justify-content:center;align-items:center;display:flex;position:absolute;left:2px}.dark-switch-thumb.active.svelte-s6higk{background-color:var(--color-accent);color:var(--color-bg);transform:translate(24px)}.dark-switch-thumb.svelte-s6higk .icon-sun:where(.svelte-s6higk){display:block}.dark-switch-thumb.svelte-s6higk .icon-moon:where(.svelte-s6higk),.dark-switch-thumb.active.svelte-s6higk .icon-sun:where(.svelte-s6higk){display:none}.dark-switch-thumb.active.svelte-s6higk .icon-moon:where(.svelte-s6higk){display:block}.dark-switch.svelte-s6higk:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px;border-radius:var(--radius-full)}.navbar.svelte-rfuq4y{z-index:100;-webkit-backdrop-filter:blur(20px);border-bottom:1px solid var(--color-border-subtle);background-color:#0a0a0acc;position:fixed;top:0;left:0;right:0}[data-theme=light] .navbar.svelte-rfuq4y{background-color:#fff}.navbar-inner.svelte-rfuq4y{height:var(--nav-height);max-width:var(--max-width);padding:0 var(--space-md);justify-content:space-between;align-items:center;margin:0 auto;display:flex}.navbar-hamburger.svelte-rfuq4y{cursor:pointer;border-radius:var(--radius-sm);transition:background-color var(--transition-fast);background:0 0;border:none;flex-direction:column;gap:5px;margin-left:-8px;padding:8px;display:flex}.navbar-hamburger.svelte-rfuq4y:hover{background-color:var(--color-surface)}.hamburger-line.svelte-rfuq4y{background-color:var(--color-text-primary);width:20px;height:2px;transition:all var(--transition-base);transform-origin:50%;border-radius:1px;display:block}.hamburger-line.open.svelte-rfuq4y:first-child{transform:translateY(7px)rotate(45deg)}.hamburger-line.open.svelte-rfuq4y:nth-child(2){opacity:0}.hamburger-line.open.svelte-rfuq4y:nth-child(3){transform:translateY(-7px)rotate(-45deg)}.navbar-brand.svelte-rfuq4y{font-size:var(--font-size-xl);color:var(--color-text-primary);letter-spacing:-.02em;transition:all var(--transition-fast);padding-top:5px;font-weight:700;text-decoration:none}.navbar-brand.svelte-rfuq4y:hover{color:var(--color-text-primary)}@media (width>=521px){.navbar-logo.svelte-rfuq4y{height:55px}}@media (width<=520px){.navbar-logo.svelte-rfuq4y{height:45px}}.navbar-actions.svelte-rfuq4y{align-items:center;gap:var(--space-sm);display:flex}@media (width>=521px){.navbar-brand.svelte-rfuq4y{position:absolute;left:50%;transform:translate(-50%)}}@media (width<=520px){.navbar-inner.svelte-rfuq4y{gap:var(--space-xs);grid-template-columns:auto 1fr auto;display:grid}.navbar-brand.svelte-rfuq4y{font-size:var(--font-size-lg);text-align:center;justify-self:center}.navbar-actions.svelte-rfuq4y{justify-self:end;gap:var(--space-xs)}.btn--small{padding:6px 12px!important;font-size:11px!important}}@media (width>=768px){.navbar.svelte-rfuq4y{display:none}}.navbar-menu.svelte-rfuq4y{top:var(--nav-height);background-color:var(--color-bg-elevated);border-right:1px solid var(--color-border);z-index:150;width:280px;animation:.25s forwards svelte-rfuq4y-slideInLeft;position:fixed;bottom:0;left:0;overflow-y:auto}@keyframes svelte-rfuq4y-slideInLeft{0%{opacity:0;transform:translate(-100%)}to{opacity:1;transform:translate(0)}}.navbar-menu-content.svelte-rfuq4y{padding:var(--space-md)}.navbar-menu-user.svelte-rfuq4y{align-items:center;gap:var(--space-md);padding:var(--space-md);border-radius:var(--radius-md);background-color:var(--color-surface);display:flex}.navbar-menu-avatar.svelte-rfuq4y{border-radius:var(--radius-full);width:40px;height:40px;font-weight:700;font-size:var(--font-size-lg);color:var(--color-text-primary);background:linear-gradient(135deg,#333,#555);justify-content:center;align-items:center;display:flex}.navbar-menu-username.svelte-rfuq4y{color:var(--color-text-primary);font-weight:600}.navbar-menu-divider.svelte-rfuq4y{border:none;border-top:1px solid var(--color-border);margin:var(--space-md) 0}.navbar-menu-item.svelte-rfuq4y{align-items:center;gap:var(--space-md);padding:var(--space-md);border-radius:var(--radius-sm);color:var(--color-text-primary);transition:background-color var(--transition-fast);font-weight:500;text-decoration:none;display:flex}.navbar-menu-item.svelte-rfuq4y:hover{background-color:var(--color-surface);color:var(--color-text-primary)}.navbar-overlay.svelte-rfuq4y{top:var(--nav-height);z-index:140;cursor:pointer;background-color:#00000080;border:none;position:fixed;bottom:0;left:0;right:0}.bottom-nav.svelte-oeh3u8{height:var(--bottom-nav-height);-webkit-backdrop-filter:blur(20px);border-top:1px solid var(--color-border-subtle);z-index:100;background-color:#0a0a0ad9;justify-content:center;align-items:center;display:flex;position:fixed;bottom:0;left:0;right:0}[data-theme=light] .bottom-nav.svelte-oeh3u8{background-color:#fff}.bottom-nav-btn.svelte-oeh3u8{border-radius:var(--radius-full);background-color:var(--color-text-primary);cursor:pointer;width:48px;height:48px;transition:all var(--transition-fast);border:none;justify-content:center;align-items:center;display:flex;box-shadow:0 2px 12px #ffffff26}.bottom-nav-btn.svelte-oeh3u8:hover{transform:scale(1.1);box-shadow:0 4px 20px #ffffff40}.bottom-nav-btn.svelte-oeh3u8:active{transform:scale(.95)}.bottom-nav-btn-icon.svelte-oeh3u8{color:var(--color-bg);justify-content:center;align-items:center;display:flex}@media (width>=768px){.bottom-nav.svelte-oeh3u8{display:none}}.modal-overlay.svelte-1tmh5m3{-webkit-backdrop-filter:blur(8px);z-index:300;background-color:#0009;justify-content:center;align-items:flex-start;padding-top:15vh;animation:.2s svelte-1tmh5m3-fadeIn;display:flex;position:fixed;inset:0}[data-theme=light] .modal-overlay.svelte-1tmh5m3{background-color:#ffffffb3}.modal.svelte-1tmh5m3{background-color:var(--color-bg-elevated);border:1px solid var(--color-border);border-radius:var(--radius-lg);width:100%;max-width:520px;box-shadow:var(--shadow-lg);margin:0 var(--space-md);animation:.25s forwards svelte-1tmh5m3-scaleIn}.modal-header.svelte-1tmh5m3{align-items:center;gap:var(--space-md);padding:var(--space-md) var(--space-lg);border-bottom:1px solid var(--color-border-subtle);display:flex}.modal-close.svelte-1tmh5m3{border-radius:var(--radius-full);width:32px;height:32px;color:var(--color-text-secondary);cursor:pointer;transition:all var(--transition-fast);background:0 0;border:none;justify-content:center;align-items:center;display:flex}.modal-close.svelte-1tmh5m3:hover{background-color:var(--color-surface);color:var(--color-text-primary)}.modal-title.svelte-1tmh5m3{font-weight:600;font-size:var(--font-size-base)}.modal-body.svelte-1tmh5m3{padding:var(--space-lg)}.modal-textarea.svelte-1tmh5m3{resize:vertical;width:100%;min-height:120px;color:var(--color-text-primary);font-size:var(--font-size-lg);line-height:1.7;font-family:var(--font-family);background-color:#0000;border:none;outline:none}.modal-textarea.svelte-1tmh5m3::placeholder{color:var(--color-text-muted)}.modal-error.svelte-1tmh5m3{font-size:var(--font-size-xs);color:var(--color-danger);margin-top:var(--space-sm)}.modal-footer.svelte-1tmh5m3{justify-content:flex-end;align-items:center;gap:var(--space-md);padding:var(--space-md) var(--space-lg);border-top:1px solid var(--color-border-subtle);display:flex}.modal-counter.svelte-1tmh5m3{font-size:var(--font-size-sm);color:var(--color-text-muted);font-variant-numeric:tabular-nums;transition:color var(--transition-fast)}.modal-counter.warn.svelte-1tmh5m3{color:#f59e0b}.modal-counter.over.svelte-1tmh5m3{color:var(--color-danger);font-weight:600}.spinner.svelte-1tmh5m3{border:2px solid #0000;border-top-color:currentColor;border-radius:50%;width:14px;height:14px;animation:.6s linear infinite svelte-1tmh5m3-spin;display:inline-block}@keyframes svelte-1tmh5m3-spin{to{transform:rotate(360deg)}}@keyframes svelte-1tmh5m3-fadeIn{0%{opacity:0}to{opacity:1}}@keyframes svelte-1tmh5m3-scaleIn{0%{opacity:0;transform:scale(.95)translateY(-10px)}to{opacity:1;transform:scale(1)translateY(0)}}.sidebar-header.svelte-129hoe0{padding:var(--space-md);border-bottom:1px solid var(--color-border-subtle);justify-content:space-between;align-items:center;min-height:60px;display:flex}.sidebar-logo.svelte-129hoe0{transition:opacity var(--transition-fast);align-items:center;text-decoration:none;display:flex}.sidebar-logo.svelte-129hoe0:hover{opacity:.8}.sidebar-toggle.svelte-129hoe0{border-radius:var(--radius-sm);width:32px;height:32px;color:var(--color-text-secondary);cursor:pointer;transition:all var(--transition-fast);background:0 0;border:none;flex-shrink:0;justify-content:center;align-items:center;display:flex}.sidebar-toggle.svelte-129hoe0:hover{background-color:var(--color-surface);color:var(--color-text-primary)}.sidebar-nav.svelte-129hoe0{gap:var(--space-xs);padding:var(--space-md);flex-direction:column;flex:1;display:flex;overflow-y:auto}.sidebar-nav-item.svelte-129hoe0{align-items:center;gap:var(--space-md);padding:var(--space-sm) var(--space-md);border-radius:var(--radius-sm);color:var(--color-text-secondary);transition:all var(--transition-fast);cursor:pointer;text-align:left;width:100%;font-weight:500;font-size:var(--font-size-base);white-space:nowrap;background:0 0;border:none;text-decoration:none;display:flex}.sidebar-nav-item.svelte-129hoe0:hover{background-color:var(--color-surface);color:var(--color-text-primary)}.sidebar-nav-item.svelte-129hoe0 svg:where(.svelte-129hoe0){flex-shrink:0}.sidebar-nav-item.svelte-129hoe0 span:where(.svelte-129hoe0){text-overflow:ellipsis;overflow:hidden}.sidebar-footer.svelte-129hoe0{gap:var(--space-md);padding:var(--space-md);border-top:1px solid var(--color-border-subtle);flex-direction:column;display:flex}.sidebar-theme-section.svelte-129hoe0{align-items:center;gap:var(--space-md);display:flex}.sidebar-theme-label.svelte-129hoe0{font-size:var(--font-size-xs);color:var(--color-text-muted);white-space:nowrap}.sidebar-user.svelte-129hoe0{align-items:center;gap:var(--space-md);padding:var(--space-md);border-radius:var(--radius-md);background-color:var(--color-surface);display:flex}.sidebar-avatar.svelte-129hoe0{border-radius:var(--radius-full);width:36px;height:36px;font-weight:700;font-size:var(--font-size-base);color:var(--color-text-primary);background:linear-gradient(135deg,#333,#555);flex-shrink:0;justify-content:center;align-items:center;display:flex}.sidebar-username.svelte-129hoe0{color:var(--color-text-primary);text-overflow:ellipsis;white-space:nowrap;font-weight:600;overflow:hidden}.sidebar-logout.svelte-129hoe0{align-items:center;gap:var(--space-sm);padding:var(--space-sm) var(--space-md);border-radius:var(--radius-sm);color:var(--color-text-secondary);cursor:pointer;transition:all var(--transition-fast);width:100%;font-size:var(--font-size-sm);background:0 0;border:none;font-weight:500;display:flex}.sidebar-logout.svelte-129hoe0:hover{background-color:var(--color-surface);color:var(--color-danger)}.sidebar-logout-icon.svelte-129hoe0{border-radius:var(--radius-sm);width:40px;height:40px;color:var(--color-text-secondary);cursor:pointer;transition:all var(--transition-fast);background:0 0;border:none;justify-content:center;align-items:center;margin:0 auto;display:flex}.sidebar-logout-icon.svelte-129hoe0:hover{background-color:var(--color-surface);color:var(--color-danger)}.sidebar.narrow.svelte-129hoe0 .sidebar-header:where(.svelte-129hoe0){gap:var(--space-sm);flex-direction:column;align-items:center}.sidebar.narrow.svelte-129hoe0 .sidebar-nav:where(.svelte-129hoe0),.sidebar.narrow.svelte-129hoe0 .sidebar-footer:where(.svelte-129hoe0){padding-left:var(--space-sm);padding-right:var(--space-sm)}.sidebar.narrow.svelte-129hoe0 .sidebar-nav-item:where(.svelte-129hoe0) span:where(.svelte-129hoe0){display:none}.sidebar.narrow.svelte-129hoe0 .sidebar-nav-item:where(.svelte-129hoe0){padding:var(--space-sm);justify-content:center}.sidebar.narrow.svelte-129hoe0 .sidebar-theme-section:where(.svelte-129hoe0){justify-content:center}.sidebar.narrow.svelte-129hoe0 .sidebar-theme-label:where(.svelte-129hoe0),.sidebar.narrow.svelte-129hoe0 .sidebar-user:where(.svelte-129hoe0),.sidebar.narrow.svelte-129hoe0 .sidebar-logout:where(.svelte-129hoe0){display:none}
