:root{--fx-bg: #f6f7fb;--fx-surface: #ffffff;--fx-text: #15161a;--fx-muted: #6b7180;--fx-radius: 16px;--fx-shadow: 0 8px 24px rgba(18, 21, 31, .06);--fx-gap: 24px;--fx-gap-lg: 28px}html,body{background:var(--fx-bg);color:var(--fx-text);font-family:Poppins,system-ui,-apple-system,Segoe UI,Roboto,Helvetica Neue,Arial,Noto Sans,"Apple Color Emoji","Segoe UI Emoji",sans-serif}.fx-shell{display:grid;grid-template-columns:260px 1fr;min-height:100vh}.fx-content{background:var(--fx-bg)}.fx-container{max-width:1200px;margin:0 auto;padding:var(--fx-gap-lg)}.fx-card{background:var(--fx-surface);border-radius:var(--fx-radius);box-shadow:var(--fx-shadow);padding:18px 20px}.fx-card .fx-card-title{font-weight:400;font-size:30px}.fx-hero{display:flex;align-items:center;justify-content:space-between;padding:24px}.fx-hero .fx-hero-stack .fx-h1{font-size:28px;line-height:1.2;margin:0 0 6px}.fx-hero .fx-sub{color:var(--fx-muted)}.fx-grid{display:grid;grid-template-columns:1fr 1fr 1fr;gap:var(--fx-gap)}.fx-row-50{display:grid;grid-template-columns:1fr 1fr;gap:var(--fx-gap)}@media (max-width: 1200px){.fx-grid{grid-template-columns:1fr 1fr}}@media (max-width: 900px){.fx-shell{grid-template-columns:80px 1fr}.fx-grid,.fx-row-50{grid-template-columns:1fr}}.fx-kpis{display:grid;grid-template-columns:repeat(4,1fr);gap:var(--fx-gap)}.fx-kpi{background:var(--fx-surface);border-radius:var(--fx-radius);box-shadow:var(--fx-shadow);padding:16px 18px}.fx-kpi-label{color:var(--fx-muted);font-size:12px;margin-bottom:4px}.fx-kpi-value{font-size:22px;font-weight:700}.fx-rows-cards{display:grid;gap:12px;margin:0;padding:0;list-style:none}.fx-rows-cards>li{background:var(--fx-surface);border-radius:12px;box-shadow:var(--fx-shadow);padding:12px 14px}.fx-calendar .fx-summary-kpi{background:var(--fx-surface);border-radius:12px;box-shadow:var(--fx-shadow);padding:12px 14px}.fx-topbar{height:60px;display:flex;align-items:center;justify-content:space-between;padding:0 16px;background:var(--fx-surface);box-shadow:0 1px #12151f0f}.fx-burger,.fx-icon-btn{background:#fff;border:1px solid rgba(18,21,31,.08);border-radius:10px;height:36px;padding:0 10px}.fx-brand{display:flex;align-items:center;gap:8px;font-weight:700}.fx-helpchip .chip{background:linear-gradient(90deg,#a3a7ff,#f49fd4);-webkit-background-clip:text;background-clip:text;color:transparent}.auth-page .fx-sidebar,.auth-page .fx-header,.auth-page .fx-sidebar-overlay,.auth-page [data-include="/partials/sidebar.html"],.auth-page [data-include="/partials/header.html"],.auth-page .fx-header-spacer{display:none!important}.auth-page .fx-shell{grid-template-columns:1fr!important}.auth-page .fx-content{min-height:100svh;display:flex;flex-direction:column;padding-top:0}.auth-page main.fx-container.auth-container{flex:1 1 auto;display:grid;place-items:center;width:100%;max-width:100%;padding:32px 16px}.auth-card{width:100%;max-width:560px;padding:22px;border-radius:var(--fx-radius);box-shadow:var(--fx-shadow);background:var(--fx-surface)}.auth-card-head{margin-bottom:10px}.auth-card .fx-h1{font-size:24px;margin:0 0 4px}.auth-card .fx-sub{color:var(--fx-muted)}.auth-error-message{background:#dc26261f;color:#fca5a5;padding:12px 16px;border-radius:10px;margin-bottom:16px;font-size:14px;border:1px solid rgba(220,38,38,.25);font-weight:500;animation:slideIn .3s ease-out}.auth-success-message{background:#22c55e1f;color:#86efac;padding:12px 16px;border-radius:10px;margin-bottom:16px;font-size:14px;border:1px solid rgba(34,197,94,.25);font-weight:500;animation:slideIn .3s ease-out}@keyframes slideIn{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.auth-form .field{display:grid;gap:6px;margin:12px 0}.auth-form .field-group{display:grid;grid-template-columns:1fr 1fr;gap:12px}@media (max-width: 640px){.auth-form .field-group{grid-template-columns:1fr}}.auth-form label{font-size:13px;color:var(--fx-text);font-weight:500}.auth-form input[type=email],.auth-form input[type=password],.auth-form input[type=text]{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:1px solid var(--fx-border);border-radius:10px;height:44px;padding:0 14px;background:var(--fx-surface);color:var(--fx-text);font-size:14px;outline:none;transition:border-color .2s ease,box-shadow .2s ease}.auth-form input:focus{border-color:var(--fx-primary);box-shadow:0 0 0 3px color-mix(in srgb,var(--fx-primary) 20%,transparent)}.auth-actions{display:flex;gap:10px;align-items:center;margin-top:10px}.auth-actions .fx-btn.small{height:34px;padding:0 10px;font-size:13px}.auth-divider{display:inline-block;width:100%;text-align:center;color:var(--fx-muted);margin:16px 0 8px;position:relative}.auth-divider:before,.auth-divider:after{content:"";position:absolute;top:50%;width:40%;height:1px;background:var(--fx-border)}.auth-divider:before{left:0;transform:translateY(-50%)}.auth-divider:after{right:0;transform:translateY(-50%)}.auth-social{display:flex;gap:10px;margin-bottom:8px}.auth-page .fx-footer{margin-top:0;width:100%;border-top:1px solid var(--fx-border)}.auth-page .fx-footer .fx-container{max-width:none;width:100%;padding-inline:16px}.auth-page .fx-container>*:first-child{margin-top:0!important}.g_id_signin{margin:8px 0 4px}.password-input-wrapper{position:relative;display:flex;align-items:center}.password-input-wrapper input{width:100%;padding-right:44px}.password-toggle-btn{position:absolute;right:8px;background:none;border:none;padding:8px;cursor:pointer;display:flex;align-items:center;justify-content:center;color:var(--fx-muted);transition:color .2s ease;border-radius:6px}.password-toggle-btn:hover{color:var(--fx-text);background:#ffffff0d}.password-toggle-btn:focus{outline:2px solid var(--fx-primary);outline-offset:2px}.password-toggle-btn svg{width:20px;height:20px}.signin-page .fx-content{min-height:100svh;display:flex;flex-direction:column;padding-top:0}.auth-immersive{position:relative;min-height:100svh;width:100%;background:linear-gradient(180deg,#0a0c10,#0d1117,#0b0e14);display:flex;align-items:center;justify-content:center;overflow:hidden}.auth-center{position:relative;z-index:1;width:100%;max-width:520px;padding:20px;display:flex;flex-direction:column;align-items:center}.auth-signin-logo{height:30px;margin-bottom:24px;opacity:.92}.signin-page .auth-card{max-width:none;width:100%;padding:48px 44px;border-radius:16px;background:#0d1117eb;border:1px solid rgba(148,163,184,.1);box-shadow:0 1px 2px #0000001f,0 4px 12px #0003,0 16px 40px #0000004d}.signin-page .auth-card-head{margin-bottom:36px;text-align:center}.signin-page .auth-card-head .fx-h1{font-size:34px;font-weight:800;letter-spacing:-.03em;margin:0 0 10px;color:#f1f5f9;line-height:1.15}.signin-page .auth-card-head .fx-sub{font-size:14.5px;line-height:1.5;color:#4e5d73}.signin-page .auth-form input:-webkit-autofill,.signin-page .auth-form input:-webkit-autofill:hover,.signin-page .auth-form input:-webkit-autofill:focus,.signin-page .auth-form input:-webkit-autofill:active{-webkit-box-shadow:0 0 0px 1000px rgba(11,14,19,.65) inset!important;-webkit-text-fill-color:#E2E8F0!important;caret-color:#e2e8f0!important;border:1px solid rgba(148,163,184,.1)!important;transition:background-color 5000s ease-in-out 0s}.signin-page .auth-form input:-webkit-autofill:focus{-webkit-box-shadow:0 0 0px 1000px rgba(11,14,19,.85) inset!important;border-color:#8f92f666!important;box-shadow:0 0 0 1000px #0b0e13d9 inset,0 0 0 3px #8f92f614!important}.signin-page .auth-form .field{margin:24px 0}.signin-page .auth-form label{font-size:13px;font-weight:600;letter-spacing:.01em;color:#8896ab}.signin-page .auth-form input[type=email],.signin-page .auth-form input[type=password],.signin-page .auth-form input[type=text]{height:48px;border-radius:12px;font-size:15px;background:#0b0e13a6;border:1px solid rgba(148,163,184,.1);color:#e2e8f0;transition:border-color .2s ease,box-shadow .2s ease,background .2s ease}.signin-page .auth-form input::placeholder{color:#3e4a5c}.signin-page .auth-form input:focus{background:#0b0e13d9;border-color:#8f92f666;box-shadow:0 0 0 3px #8f92f614}.signin-page .auth-actions{margin-top:32px}.signin-page .auth-actions .fx-btn-primary{width:100%;justify-content:center;height:52px;border-radius:14px;font-size:15px;font-weight:600;letter-spacing:.01em;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;border:1px solid rgba(255,255,255,.1);box-shadow:0 2px 8px #667eea40;transition:box-shadow .2s ease,transform .2s ease,filter .2s ease}.signin-page .auth-actions .fx-btn-primary:hover{filter:brightness(1.1);box-shadow:0 4px 16px #667eea66,inset 0 1px #ffffff1a;transform:translateY(-1px)}.signin-page .auth-actions .fx-btn-primary:active{filter:brightness(.95);box-shadow:0 1px 4px #667eea33;transform:translateY(0)}.signin-page .auth-actions .fx-btn-primary:focus-visible{outline:2px solid #667eea;outline-offset:2px}.signin-page .auth-reassurance{text-align:center;font-size:12px;color:#3e4a5c;margin:18px 0 0;display:flex;align-items:center;justify-content:center;gap:5px;letter-spacing:.01em}.signin-page .auth-reassurance:before{content:"";display:inline-block;width:12px;height:12px;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 24 24' stroke='%233E4A5C' stroke-width='2'%3E%3Cpath stroke-linecap='round' stroke-linejoin='round' d='M12 15v2m-6 4h12a2 2 0 002-2v-6a2 2 0 00-2-2H6a2 2 0 00-2 2v6a2 2 0 002 2zm10-10V7a4 4 0 00-8 0v4h8z'/%3E%3C/svg%3E");background-size:contain;background-repeat:no-repeat;flex-shrink:0}.signin-page .auth-links{display:flex;flex-direction:column;gap:8px;margin-top:22px;text-align:center}.signin-page .auth-links p{color:#3e4a5c;font-size:13px}.signin-page .auth-links a{font-weight:500;color:#8896ab;text-decoration:none;transition:color .15s ease}.signin-page .auth-links a:hover{color:#cbd5e1}.signin-page .auth-remember{display:flex;align-items:center;gap:8px;margin-top:14px;font-size:13px;color:#536179;-webkit-user-select:none;user-select:none}.signin-page .auth-remember input[type=checkbox]{accent-color:#3b82f6;width:16px;height:16px}.signup-page .auth-form .field{margin:16px 0}.signup-page .auth-form .field-group{margin-top:0}.signup-page .auth-form .field-group .field{margin:0}.signup-page .auth-actions{margin-top:24px}@keyframes authBgFadeIn{0%{opacity:0}to{opacity:1}}@keyframes authCardFadeUp{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.auth-immersive{animation:authBgFadeIn .4s ease-out forwards}.signin-page .auth-card{opacity:0;animation:authCardFadeUp .3s cubic-bezier(.25,.1,.25,1) .15s forwards}.signin-page .auth-signin-logo{opacity:.92}@media (max-width: 640px){.auth-center{padding:16px;max-width:100%}.signin-page .auth-card{padding:36px 28px;border-radius:14px}.signin-page .auth-card-head{margin-bottom:28px}.signin-page .auth-card-head .fx-h1{font-size:28px}.signin-page .auth-form .field{margin:20px 0}.signin-page .auth-form input[type=email],.signin-page .auth-form input[type=password],.signin-page .auth-form input[type=text]{height:48px;font-size:16px}.signin-page .auth-actions .fx-btn-primary{height:52px;font-size:16px}}@media (max-width: 420px){.auth-center{padding:12px}.auth-signin-logo{height:24px;margin-bottom:18px}.signin-page .auth-card{padding:32px 22px;border-radius:14px}.signin-page .auth-card-head .fx-h1{font-size:26px}.signin-page .auth-card-head .fx-sub{font-size:13px}}@media (max-width: 360px){.auth-center{padding:10px}.signin-page .auth-card{padding:24px 18px}.signin-page .auth-card-head .fx-h1{font-size:22px}.signin-page .auth-form .field{margin:14px 0}}@media (prefers-reduced-motion: reduce){.signin-page .auth-card,.auth-immersive{animation:none;opacity:1}}
