@import "https://fonts.googleapis.com/css2?family=Plus+Jakarta+Sans:wght@500;600;700;800&family=Inter:wght@400;500;600;700;800&family=JetBrains+Mono:wght@400;500;700;800&display=swap";*,:before,:after{box-sizing:border-box;margin:0;padding:0}:root{--font-heading:"Plus Jakarta Sans", "Inter", sans-serif;--font-body:"Inter", sans-serif;--font-mono:"JetBrains Mono", monospace;--blue:#3b82f6;--blue-dim:#1d4ed8;--indigo:#3b82f6;--teal:#3b82f6;--pro-red:#3b82f6;--pro-red-deep:#1d4ed8;--motion-duration-fast:.18s;--motion-duration-base:.32s;--motion-duration-slow:.46s;--motion-ease:cubic-bezier(.22, 1, .36, 1);--bg:#0f172a;--bg-2:#16213c;--bg-3:#1c2942;--bg-4:#23304d;--surface:#1e293b;--surface-2:#263246;--border:#334155;--border-s:#3d4a63;--text:#f8fafc;--text-2:#94a3b8;--text-3:#64748b;--shadow:0 4px 20px #00000073;--shadow-lg:0 10px 40px #0009;--overlay:#020617b3;--green:#4ade80;--amber:#fde047;--red:#fca5a5;--status-ok-bg:#064e3b;--status-ok-border:#15803d;--status-ok-text:#4ade80;--status-pendente-bg:#78350f;--status-pendente-border:#a16207;--status-pendente-text:#fde047;--status-conflito-bg:#7f1d1d;--status-conflito-border:#b91c1c;--status-conflito-text:#fca5a5;--status-folga-bg:#1e293b;--status-folga-border:#334155;--status-folga-text:#64748b;--slot-on-bg:var(--status-ok-bg);--slot-on-border:var(--status-ok-border);--slot-on-text:var(--status-ok-text);--slot-off-bg:var(--status-folga-bg);--slot-off-border:var(--status-folga-border);--slot-off-text:var(--status-folga-text)}[data-theme=light]{--bg:#f8fafc;--bg-2:#eef2f7;--bg-3:#e2e8f0;--bg-4:#d6dee8;--surface:#fff;--surface-2:#f8fafc;--border:#e2e8f0;--border-s:#cbd5e1;--text:#0f172a;--text-2:#64748b;--text-3:#94a3b8;--shadow:0 4px 20px #0f172a14;--shadow-lg:0 10px 40px #0f172a24;--overlay:#94a3b840;--blue:#2563eb;--blue-dim:#1e40af;--indigo:#2563eb;--teal:#2563eb;--pro-red:#2563eb;--pro-red-deep:#1e40af;--green:#15803d;--amber:#a16207;--red:#b91c1c;--status-ok-bg:#dcfce7;--status-ok-border:#15803d;--status-ok-text:#15803d;--status-pendente-bg:#fef9c3;--status-pendente-border:#a16207;--status-pendente-text:#a16207;--status-conflito-bg:#fee2e2;--status-conflito-border:#b91c1c;--status-conflito-text:#b91c1c;--status-folga-bg:#f1f5f9;--status-folga-border:#e2e8f0;--status-folga-text:#475569}html,body,#root{height:100%}body{font-family:var(--font-body);background:radial-gradient(circle at top left, #3b82f624, transparent 28%), radial-gradient(circle at top right, #7dd3fc14, transparent 22%), radial-gradient(circle at bottom right, #2563eb1f, transparent 32%), var(--bg);color:var(--text);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-size:14px;line-height:1.65;overflow:auto}html.theme-transitioning body,html.theme-transitioning .app-sidebar,html.theme-transitioning .app-topbar,html.theme-transitioning .content-card,html.theme-transitioning .stat-card,html.theme-transitioning .hero-panel,html.theme-transitioning .empty-state,html.theme-transitioning .config-info-card,html.theme-transitioning .settings-info-card,html.theme-transitioning .limit-card,html.theme-transitioning .week-shift-card,html.theme-transitioning .turno-card,html.theme-transitioning .dashboard-limit-card,html.theme-transitioning .modal-card,html.theme-transitioning .toggle-theme-track,html.theme-transitioning .toggle-theme-knob,html.theme-transitioning button,html.theme-transitioning input,html.theme-transitioning select,html.theme-transitioning textarea,html.theme-transitioning p,html.theme-transitioning span,html.theme-transitioning strong,html.theme-transitioning h1,html.theme-transitioning h2,html.theme-transitioning h3,html.theme-transitioning h4,html.theme-transitioning div{transition:background .42s,background-color .42s,border-color .42s,color .42s,box-shadow .42s,fill .42s,stroke .42s}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}button{cursor:pointer}input,select,textarea{background:var(--surface-2);border:1px solid var(--border);width:100%;color:var(--text);border-radius:10px;outline:none;padding:12px 14px;transition:border-color .18s,background-color .18s,box-shadow .18s}input:focus,select:focus,textarea:focus{border-color:var(--blue);box-shadow:0 0 0 3px #3b82f629}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background:0 0}::-webkit-scrollbar-thumb{background:var(--border-s);border-radius:999px}.app-shell{grid-template-columns:280px minmax(0,1fr);min-height:100vh;display:grid}.app-sidebar{border-right:1px solid var(--border);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);z-index:40;background:linear-gradient(#1e293beb,#0f172af5);flex-direction:column;gap:18px;max-height:100vh;padding:22px 18px;display:flex;position:sticky;top:0;overflow:hidden auto}[data-theme=light] .app-sidebar{background:linear-gradient(#ffffffeb,#f1f5f9f5)}.app-brand{align-items:center;gap:14px;display:flex}.app-brand__icon{width:72px;height:72px;box-shadow:var(--shadow);background:#94a3b814;border-radius:18px;place-items:center;padding:8px;display:grid;overflow:hidden}.app-brand__logo{object-fit:contain;width:100%;height:100%;transform:scale(1.12)}.app-topbar__brand-logo{margin-bottom:8px}.app-brand__eyebrow,.page-header__eyebrow{font-family:var(--font-heading);letter-spacing:.16em;text-transform:uppercase;color:var(--text-3);font-size:11px;font-weight:700}.app-brand__title{font-family:var(--font-heading);letter-spacing:-.04em;font-size:22px;font-weight:800}.brand-pro{color:var(--pro-red)}.auth-hero__badge{align-items:center;gap:10px;display:inline-flex}.auth-hero__badge-logo{object-fit:contain;width:26px;height:26px;box-shadow:var(--shadow);border-radius:8px}.auth-hero__logo-stacked{width:min(100%,540px)}.app-sidebar__copy{color:var(--text-2);line-height:1.7}.app-sidebar__nav{flex-direction:column;gap:10px;display:flex}.app-nav-link{transition:transform var(--motion-duration-fast) var(--motion-ease), border-color var(--motion-duration-fast) var(--motion-ease), background-color var(--motion-duration-fast) var(--motion-ease), box-shadow var(--motion-duration-fast) var(--motion-ease);animation:fade-slide-in var(--motion-duration-base) var(--motion-ease) both;animation-delay:var(--motion-delay,0s);background:#94a3b80f;border:1px solid #0000;border-radius:16px;flex-direction:column;gap:4px;padding:14px 16px;display:flex}.app-nav-link:hover{border-color:var(--border);box-shadow:var(--shadow);background:#3b82f61a;transform:translateY(-1px)}.app-nav-link.is-active{background:linear-gradient(135deg,#3b82f629,#2563eb14);border-color:#3b82f659}.app-nav-link__label{font-family:var(--font-heading);color:var(--text);font-size:14px;font-weight:700}.app-nav-link__hint{color:var(--text-2);font-size:12px}.app-sidebar__panel{border:1px solid var(--border);box-shadow:var(--shadow);background:#0f172a6b;border-radius:18px;flex-direction:column;gap:12px;margin-top:auto;padding:18px;display:flex}[data-theme=light] .app-sidebar__panel{background:#ffffffad}.app-sidebar__panel-title{font-family:var(--font-heading);letter-spacing:.12em;text-transform:uppercase;color:var(--text-3);font-size:12px;font-weight:700}.app-sidebar__metric{color:var(--text-2);justify-content:space-between;gap:12px;display:flex}.app-sidebar__metric strong{color:var(--text);text-align:right}.app-shell__main{flex-direction:column;min-width:0;display:flex}.app-topbar{border-bottom:1px solid var(--border);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);background:#0f172a73;justify-content:space-between;align-items:flex-start;gap:20px;padding:18px 24px 14px;display:flex}[data-theme=light] .app-topbar{background:#f8fafcb8}.page-title{font-family:var(--font-heading);letter-spacing:-.04em;margin-top:6px;font-size:22px;font-weight:800;line-height:1.1}.page-subtitle{max-width:720px;color:var(--text-2);margin-top:6px;font-size:13px;line-height:1.55}.app-topbar__actions,.page-actions{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:10px;display:flex}.primary-button,.pro-button,.ghost-button,.secondary-button,.logout-button,.danger-button{min-height:38px;font-size:13px;font-weight:700;font-family:var(--font-heading);transition:transform var(--motion-duration-fast) var(--motion-ease), border-color var(--motion-duration-fast) var(--motion-ease), background-color var(--motion-duration-fast) var(--motion-ease), box-shadow var(--motion-duration-fast) var(--motion-ease), color var(--motion-duration-fast) var(--motion-ease);border-radius:10px;justify-content:center;align-items:center;padding:0 14px;display:inline-flex}.primary-button{background:linear-gradient(135deg, var(--blue), var(--blue-dim));color:#fff;box-shadow:var(--shadow);border:none}.pro-button{background:linear-gradient(135deg, var(--pro-red), var(--pro-red-deep));color:#fff;box-shadow:var(--shadow);border:none}.danger-button{color:#fecaca;box-shadow:var(--shadow);background:linear-gradient(#7f1d1d33,#450a0a52);border:1px solid #ef444452}.ghost-button,.secondary-button{border:1px solid var(--border-s);color:var(--text);background:#94a3b814}.logout-button{color:#fecaca;box-shadow:var(--shadow);background:linear-gradient(#1e293be6,#0f172aeb);border:1px solid #ef44443d;gap:10px}[data-theme=light] .logout-button{color:#b91c1c;background:linear-gradient(#fffffff5,#fef2f2fa);border-color:#dc262638}[data-theme=light] .logout-button__badge{color:#dc2626;background:#dc262614;border-color:#dc262661}[data-theme=light] .danger-button{color:#b91c1c;background:linear-gradient(#fffffffa,#fef2f2);border-color:#dc262638}.logout-button__label{font-family:var(--font-heading);letter-spacing:.08em;text-transform:uppercase;color:var(--text-2);font-size:12px;font-weight:800}.logout-button__badge{color:#f87171;min-height:24px;font-family:var(--font-heading);letter-spacing:.08em;text-transform:uppercase;background:#7f1d1d29;border:1px solid #ef444499;border-radius:7px;justify-content:center;align-items:center;padding:0 8px;font-size:11px;font-weight:900;display:inline-flex}.primary-button:hover,.pro-button:hover,.ghost-button:hover,.secondary-button:hover,.logout-button:hover,.danger-button:hover{box-shadow:var(--shadow-lg);transform:translateY(-1px)}.primary-button:disabled,.pro-button:disabled,.ghost-button:disabled,.secondary-button:disabled,.logout-button:disabled,.danger-button:disabled{opacity:.6;cursor:not-allowed;transform:none}.quick-action-button{white-space:normal;text-align:left;border-radius:14px;flex:220px;justify-content:flex-start;min-height:46px;padding:12px 18px;line-height:1.35}.app-shell__content{flex:1;min-height:0;padding:18px 24px 24px;overflow:auto}.page-transition{min-height:100%;animation:page-enter .76s var(--motion-ease) both;transform-origin:top;will-change:opacity, transform, filter;overflow:clip}.page-transition .app-page{animation:page-content-reveal .82s var(--motion-ease) both}.page-transition .app-page>*{opacity:0;animation:fade-slide-in .7s var(--motion-ease) both}.page-transition .app-page>:first-child{animation-delay:.1s}.page-transition .app-page>:nth-child(2){animation-delay:.18s}.page-transition .app-page>:nth-child(3){animation-delay:.26s}.page-transition .app-page>:nth-child(4){animation-delay:.34s}.page-transition .app-page>:nth-child(5){animation-delay:.42s}.page-transition .app-page>:nth-child(6){animation-delay:.5s}.page-transition .app-page>:nth-child(7){animation-delay:.58s}.page-transition .app-page>:nth-child(8){animation-delay:.66s}.app-page{flex-direction:column;gap:18px;display:flex}.page-header{justify-content:space-between;align-items:flex-end;gap:16px;display:flex}.page-section{flex-direction:column;gap:12px;display:flex}.stat-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;display:grid}.stat-card,.content-card,.hero-panel,.empty-state{border:1px solid var(--border);box-shadow:var(--shadow);background:linear-gradient(#1e293be0,#1e293bb3);border-radius:20px}[data-theme=light] .stat-card,[data-theme=light] .content-card,[data-theme=light] .hero-panel,[data-theme=light] .empty-state{background:linear-gradient(#fffffffa,#f8fafce6)}.stat-card{padding:18px}.stat-card--compact{padding:12px 14px}.stat-card__label{color:var(--text-3);text-transform:uppercase;letter-spacing:.12em;font-size:11px;font-family:var(--font-heading);font-weight:700}.stat-card__value{font-family:var(--font-heading);margin-top:8px;font-size:24px;font-weight:800}.stat-card__hint{color:var(--text-2);margin-top:6px;font-size:12px}.content-card,.hero-panel,.empty-state{padding:22px}.config-info-card,.settings-info-card,.limit-card,.week-shift-card{border:1px solid var(--border);background:var(--bg-2);box-shadow:var(--shadow);border-radius:16px}.config-info-card{color:var(--text-2);background:#3b82f61a;border-color:#3b82f659;padding:14px 16px;line-height:1.7}.section-title{font-family:var(--font-heading);font-size:18px;font-weight:800}.section-subtitle{color:var(--text-2);line-height:1.7}.settings-grid-2,.settings-grid-3,.limit-grid,.week-shift-grid{gap:14px;display:grid}.settings-grid-2{grid-template-columns:repeat(2,minmax(0,1fr))}.settings-grid-3{grid-template-columns:repeat(3,minmax(0,1fr))}.compact-toggle-grid{flex-wrap:wrap;gap:8px;display:flex}.compact-toggle{border:1px solid var(--border);background:var(--surface);min-height:42px;color:var(--text-2);font-family:var(--font-heading);border-radius:999px;padding:0 16px;font-size:13px;font-weight:700;transition:border-color .18s,background-color .18s,color .18s}.compact-toggle.is-active{border-color:var(--slot-on-border);background:var(--slot-on-bg);color:var(--slot-on-text)}.preset-button-group{flex-wrap:wrap;gap:8px;display:flex}.turno-card-list{flex-direction:column;gap:12px;display:flex}.turno-card{border:1px solid var(--border);background:linear-gradient(#3b82f614,#0f172a05);border-radius:18px;padding:14px}.turno-card__header{justify-content:space-between;align-items:center;gap:10px;margin-bottom:12px;display:flex}.turno-card__grid,.limit-card__fields{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;display:grid}.limit-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.limit-card{padding:16px}.limit-card__title,.week-shift-card__title{font-family:var(--font-heading);color:var(--text);font-size:15px;font-weight:800}.limit-card__hint,.week-shift-card__date,.week-shift-card__empty{color:var(--text-2);margin-top:4px;font-size:12px}.settings-info-card{flex-direction:column;gap:10px;padding:14px;display:flex}.settings-info-card__title{font-family:var(--font-heading);color:var(--text);font-size:15px}.toolbar{flex-wrap:wrap;align-items:center;gap:12px;display:flex}.toolbar__spacer{flex:1}.segmented-switch{border:1px solid var(--border);background:#94a3b814;border-radius:999px;padding:4px;display:inline-flex;box-shadow:inset 0 1px #ffffff0a}.segmented-switch__option{min-width:88px;min-height:34px;color:var(--text-2);font-family:var(--font-heading);transition:transform var(--motion-duration-fast) var(--motion-ease), background-color var(--motion-duration-fast) var(--motion-ease), color var(--motion-duration-fast) var(--motion-ease), box-shadow var(--motion-duration-fast) var(--motion-ease);background:0 0;border:none;border-radius:999px;padding:0 14px;font-size:12px;font-weight:700}.segmented-switch__option:hover{color:var(--text);transform:translateY(-1px)}.segmented-switch__option.is-active{color:var(--text);background:linear-gradient(135deg,#3b82f62e,#2563eb24);box-shadow:0 8px 18px #2563eb29}.search-input{max-width:320px}.dashboard-limit-summary{grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:10px;margin-top:6px;display:grid}.dashboard-limit-card{border:1px solid var(--border);background:var(--bg-2);border-radius:16px;flex-direction:column;gap:4px;padding:14px;display:flex}.motion-fade-slide{opacity:0;animation:fade-slide-in var(--motion-duration-base) var(--motion-ease) forwards;animation-delay:var(--motion-delay,0s)}.motion-scale-in{opacity:0;animation:scale-in var(--motion-duration-slow) var(--motion-ease) forwards;animation-delay:var(--motion-delay,0s);transform:scale(.985)}.motion-card-lift,.stat-card,.content-card,.hero-panel,.empty-state,.config-info-card,.settings-info-card,.limit-card,.week-shift-card,.turno-card,.dashboard-limit-card,.quick-action-button,.auth-card{transition:transform var(--motion-duration-fast) var(--motion-ease), border-color var(--motion-duration-fast) var(--motion-ease), box-shadow var(--motion-duration-fast) var(--motion-ease), background-color var(--motion-duration-fast) var(--motion-ease)}.motion-card-lift:hover,.stat-card:hover,.content-card:hover,.hero-panel:hover,.empty-state:hover,.config-info-card:hover,.settings-info-card:hover,.limit-card:hover,.week-shift-card:hover,.turno-card:hover,.dashboard-limit-card:hover,.quick-action-button:hover,.auth-card:hover{border-color:var(--border-s);box-shadow:var(--shadow-lg);transform:translateY(-2px)}@keyframes fade-slide-in{0%{opacity:0;transform:translateY(22px)scale(.985)}to{opacity:1;transform:translateY(0)}}@keyframes scale-in{0%{opacity:0;transform:translateY(12px)scale(.985)}to{opacity:1;transform:translateY(0)scale(1)}}@keyframes page-enter{0%{opacity:0;filter:blur(14px);transform:translate(64px)scale(.97)}to{opacity:1;filter:blur();transform:translate(0,0)scale(1)}}@keyframes page-content-reveal{0%{opacity:.4;transform:translate(28px)}to{opacity:1;transform:translate(0,0)}}@keyframes palette-pulse{0%{transform:scale(.98)}55%{transform:scale(1.03)}to{transform:scale(1)}}.dashboard-limit-card__label{color:var(--text-2);letter-spacing:.1em;text-transform:uppercase;font-size:11px;font-weight:700;font-family:var(--font-heading)}.dashboard-limit-card__value{font-family:var(--font-mono);color:var(--text);font-size:26px;font-weight:900;line-height:1}.dashboard-limit-card__hint{color:var(--text-3);font-size:12px}.card-stack{flex-direction:column;gap:16px;display:flex}.card-stack--grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;display:grid}.split-grid{grid-template-columns:1.2fr .8fr;gap:16px;display:grid}.feature-list,.auth-hero__list{color:var(--text-2);flex-direction:column;gap:10px;list-style:none;display:flex}.feature-list li,.auth-hero__list li{padding-left:16px;position:relative}.feature-list li:before,.auth-hero__list li:before{content:"";background:var(--blue);border-radius:999px;width:7px;height:7px;position:absolute;top:9px;left:0}.status-pill{font-size:12px;font-weight:700;font-family:var(--font-heading);border-radius:999px;align-items:center;padding:6px 10px;display:inline-flex}.status-pill--ok{background:var(--status-ok-bg);border:1px solid var(--status-ok-border);color:var(--status-ok-text)}.status-pill--warn{background:var(--status-pendente-bg);border:1px solid var(--status-pendente-border);color:var(--status-pendente-text)}.status-pill--danger{background:var(--status-conflito-bg);border:1px solid var(--status-conflito-border);color:var(--status-conflito-text)}.week-shift-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.week-shift-card{padding:14px}.week-shift-card.is-today{border-color:#3b82f666}.week-shift-card__header{justify-content:space-between;align-items:flex-start;gap:12px;margin-bottom:12px;display:flex}.week-shift-card__content{flex-direction:column;gap:10px;display:flex}.week-shift-card__row{grid-template-columns:84px minmax(0,1fr);gap:10px;display:grid}.week-shift-card__turno{color:var(--text-3);text-transform:uppercase;letter-spacing:.12em;font-size:11px;font-family:var(--font-heading);font-weight:800}.week-shift-card__people{color:var(--text-2);font-size:12px;line-height:1.65}.empty-state{text-align:center;color:var(--text-2)}.loading-screen{min-height:100%;color:var(--text-2);place-items:center;display:grid}.escala-preview-scroll{padding-bottom:6px;overflow-x:auto}.escala-preview-scroll>*{min-width:880px}.escala-preview-scroll div[draggable=true]{-webkit-user-drag:element}.escala-cell-has-people:hover{background:var(--bg-3)!important;box-shadow:inset 0 0 0 2px var(--blue)!important}.escala-draggable-card{will-change:transform, opacity}.escala-draggable-card:hover{filter:brightness(1.05)}.escala-draggable-card:active{cursor:grabbing}@media (prefers-reduced-motion:reduce){.escala-draggable-card,.escala-preview-scroll div{transition:none!important}}.auth-shell{grid-template-columns:minmax(320px,1.05fr) minmax(420px,.95fr);min-height:100%;display:grid}.auth-hero{border-right:1px solid var(--border);flex-direction:column;justify-content:center;gap:18px;padding:48px;display:flex}.auth-hero__badge{color:var(--blue);font-family:var(--font-heading);letter-spacing:.12em;text-transform:uppercase;background:#3b82f61f;border:1px solid #3b82f63d;border-radius:999px;align-self:flex-start;padding:8px 12px;font-size:12px;font-weight:700;display:inline-flex}.auth-hero__badge-suffix{opacity:.68}.auth-hero__title{font-family:var(--font-heading);letter-spacing:-.06em;font-size:clamp(36px,4vw,58px);line-height:.98}.auth-hero__description{max-width:560px;color:var(--text-2);font-size:16px;line-height:1.8}.auth-hero__panel{border:1px solid var(--border);max-width:520px;box-shadow:var(--shadow);background:#1e293b70;border-radius:24px;margin-top:14px;padding:22px}[data-theme=light] .auth-hero__panel{background:#ffffffb8}.auth-hero__panel-title,.auth-card__brand{font-family:var(--font-heading);font-size:16px;font-weight:800}.auth-card__brand-wrap{align-items:center;gap:10px;display:inline-flex}.brand-lockup{flex-direction:column;gap:8px;display:inline-flex}.brand-lockup__row{align-items:baseline;gap:0;line-height:1;display:inline-flex}.brand-lockup__name{font-family:var(--font-heading);letter-spacing:-.06em;color:#f8fafc;font-weight:800}.brand-lockup__name--accent{background:linear-gradient(135deg,#60a5fa,#2563eb);color:#0000;-webkit-background-clip:text;background-clip:text}.brand-lockup--horizontal .brand-lockup__name{font-size:clamp(30px,3.4vw,52px)}.brand-lockup--stacked .brand-lockup__name{font-size:clamp(56px,7vw,108px)}.brand-lockup__tagline{color:#cbd5e1c7;font-family:var(--font-heading);letter-spacing:.08em;text-transform:uppercase;flex-direction:column;gap:6px;font-size:clamp(22px,2.5vw,42px);font-weight:700;display:flex}.brand-lockup--compact .brand-lockup__name{font-size:28px}[data-theme=light] .brand-lockup__name{color:#0f172a}[data-theme=light] .brand-lockup__tagline{color:#475569d1}.auth-panel{place-items:center;padding:32px;display:grid}.auth-card{border:1px solid var(--border);width:min(100%,460px);box-shadow:var(--shadow-lg);background:#1e293bd6;border-radius:28px;padding:28px}[data-theme=light] .auth-card{background:#fffffff0}.auth-card__header{justify-content:space-between;align-items:center;gap:16px;margin-bottom:24px;display:flex}.auth-form{flex-direction:column;gap:14px;display:flex}.auth-form__title{font-family:var(--font-heading);letter-spacing:-.04em;font-size:28px;font-weight:800}.auth-form__subtitle{color:var(--text-2);margin-bottom:8px;line-height:1.7}.auth-form__group{flex-direction:column;gap:6px;display:flex}.input-with-action{align-items:center;display:flex;position:relative}.input-with-action input{padding-right:52px}.input-action-button{width:32px;height:32px;color:var(--text-3);transition:color var(--motion-duration-fast) var(--motion-ease), background-color var(--motion-duration-fast) var(--motion-ease);background:0 0;border:none;border-radius:10px;justify-content:center;align-items:center;line-height:1;display:inline-flex;position:absolute;top:50%;right:10px;transform:translateY(-50%)}.input-action-button:hover{color:var(--text);background:#94a3b81f}.input-action-button svg{flex-shrink:0;display:block}.color-choice-row{flex-wrap:wrap;gap:8px;margin-top:8px;display:flex}.color-choice{border:2px solid #0000;border-radius:9px;width:28px;height:28px}.color-choice.is-active{border-color:var(--text)}.inline-checkbox{color:var(--text-2);align-items:center;gap:10px;display:inline-flex}.inline-checkbox input{width:auto}.inline-checkbox__strong{color:var(--text);font-weight:800}.toggle-theme-switch{cursor:pointer;display:inline-block}.toggle-theme-input{display:none}.toggle-theme-track{background:linear-gradient(135deg,#0f172a,#1d4ed8);border:1px solid #3b82f62e;border-radius:24px;justify-content:center;align-items:center;width:154px;height:48px;padding:4px 12px;transition:background .4s,border-color .4s,box-shadow .4s;display:flex;position:relative;overflow:hidden;box-shadow:0 10px 24px #02061747,inset 0 1px #ffffff0f}.toggle-theme-label{letter-spacing:.08em;pointer-events:none;z-index:1;width:48px;font-size:10px;font-weight:800;transition:opacity .3s,color .3s;position:absolute;top:50%;transform:translateY(-50%)}.toggle-theme-label-light{color:#f8fafc;opacity:0;text-align:left;left:14px;right:auto}.toggle-theme-label-dark{color:#ffffffa8;opacity:1;text-align:right;left:auto;right:14px}.toggle-theme-knob{width:40px;height:40px;transition:left .4s ease, background .4s ease, transform .35s var(--motion-ease), box-shadow .35s var(--motion-ease);z-index:2;background:linear-gradient(#f8fafc,#cbd5e1);border-radius:50%;justify-content:center;align-items:center;display:flex;position:absolute;left:4px;box-shadow:0 8px 18px #0f172a59,inset 0 0 0 2px #ffffff59}.toggle-theme-knob:before{content:"";border-radius:inherit;background:inherit;position:absolute;inset:-2px}.toggle-theme-icon{width:18px;height:18px;transition:opacity .3s ease, transform .4s var(--motion-ease);position:absolute}.toggle-theme-icon-sun{color:#f59e0b;opacity:0}.toggle-theme-icon-moon{color:#0f172a;opacity:1}.toggle-theme-input:checked~.toggle-theme-track{background:linear-gradient(135deg,#e2e8f0,#bfdbfe);border-color:#2563eb38;box-shadow:0 10px 24px #2563eb24,inset 0 1px #ffffffb3}.toggle-theme-input:checked~.toggle-theme-track .toggle-theme-knob{background:linear-gradient(#fff,#dbeafe);left:110px;transform:rotate(180deg)scale(1.04)}.toggle-theme-input:checked~.toggle-theme-track .toggle-theme-label-light{opacity:1;color:var(--blue-dim)}.toggle-theme-input:checked~.toggle-theme-track .toggle-theme-label-dark{opacity:0;color:var(--blue-dim)}.toggle-theme-input:checked~.toggle-theme-track .toggle-theme-icon-sun{opacity:1;transform:rotate(180deg)scale(1)}.toggle-theme-input:checked~.toggle-theme-track .toggle-theme-icon-moon{opacity:0;transform:rotate(-180deg)scale(.75)}.auth-form__label{letter-spacing:.14em;text-transform:uppercase;color:var(--text-3);font-size:11px;font-weight:700;font-family:var(--font-heading)}.confirm-dialog{flex-direction:column;gap:18px;display:flex}.confirm-dialog__message{color:var(--text-2);line-height:1.75}.confirm-dialog__actions{gap:10px;display:flex}.modal-shell{background:var(--overlay);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);z-index:1000;animation:modal-fade-in var(--motion-duration-fast) var(--motion-ease);justify-content:center;align-items:center;padding:24px;display:flex;position:fixed;inset:0}.modal-card{border:1px solid var(--border-s);max-height:min(88vh,920px);animation:modal-card-in var(--motion-duration-base) var(--motion-ease);background:linear-gradient(#1e293bf5,#0f172af0);border-radius:24px;padding:26px 28px;overflow-y:auto;box-shadow:0 26px 90px #02061775}[data-theme=light] .modal-card{background:linear-gradient(#fffffffa,#f8fafcf5)}.modal-card__header{justify-content:space-between;align-items:center;gap:16px;margin-bottom:22px;display:flex}.modal-card__title{font-family:var(--font-heading);color:var(--text);font-size:18px;font-weight:800}.modal-card__close{border:1px solid var(--border);width:34px;height:34px;color:var(--text-3);background:#94a3b814;border-radius:10px;justify-content:center;align-items:center;display:inline-flex}.modal-card__close:hover{color:var(--text);background:#94a3b824}.section-toggle{border:1px solid var(--border);min-height:36px;color:var(--text);font-size:12px;font-weight:700;font-family:var(--font-heading);transition:transform var(--motion-duration-fast) var(--motion-ease), background-color var(--motion-duration-fast) var(--motion-ease), border-color var(--motion-duration-fast) var(--motion-ease), box-shadow var(--motion-duration-fast) var(--motion-ease);background:#94a3b814;border-radius:999px;justify-content:center;align-items:center;gap:8px;padding:0 12px 0 14px;display:inline-flex}.section-toggle:hover{box-shadow:var(--shadow);background:#3b82f61a;transform:translateY(-1px)}.section-toggle__chevron{width:18px;height:18px;transition:transform var(--motion-duration-base) var(--motion-ease), background-color var(--motion-duration-fast) var(--motion-ease);background:#94a3b81a;border-radius:999px;justify-content:center;align-items:center;display:inline-flex}.section-toggle__chevron svg{width:14px;height:14px}.section-toggle__chevron.is-open{transform:rotate(0)}.section-toggle[aria-expanded=false] .section-toggle__chevron{transform:rotate(-90deg)}.section-collapse{opacity:0;transition:grid-template-rows .34s var(--motion-ease), opacity .24s ease, transform .34s var(--motion-ease);grid-template-rows:0fr;display:grid;transform:translateY(-8px)}.section-collapse.is-open{opacity:1;grid-template-rows:1fr;transform:translateY(0)}.section-collapse__inner{flex-direction:column;gap:12px;min-height:0;display:flex;overflow:hidden}.palette-picker{flex-direction:column;gap:16px;display:flex}.palette-picker__grid{grid-template-columns:repeat(3,1fr);gap:8px;display:grid}.palette-option{cursor:pointer;text-align:center;background:var(--palette-bg);border:2px solid var(--palette-border);transition:transform var(--motion-duration-fast) var(--motion-ease), box-shadow var(--motion-duration-fast) var(--motion-ease), background-color var(--motion-duration-fast) var(--motion-ease), border-color var(--motion-duration-fast) var(--motion-ease);border-radius:10px;padding:10px 8px}.palette-option:hover{box-shadow:var(--shadow);transform:translateY(-2px)scale(1.015)}.palette-option:active,.palette-trigger-button:active{transform:scale(.98)}.palette-option.is-active{animation:palette-pulse .42s var(--motion-ease);box-shadow:var(--shadow-lg)}.palette-option__swatch{border-radius:8px;width:32px;height:32px;margin:0 auto 6px}.palette-custom-panel{opacity:0;transition:grid-template-rows .36s var(--motion-ease), opacity .24s ease, transform .36s var(--motion-ease);grid-template-rows:0fr;display:grid;transform:translateY(-8px)}.palette-custom-panel.is-open{opacity:1;grid-template-rows:1fr;transform:translateY(0)}.palette-custom-panel__inner{overflow:hidden}.palette-trigger-button{transition:transform var(--motion-duration-fast) var(--motion-ease), box-shadow var(--motion-duration-fast) var(--motion-ease), background-color var(--motion-duration-fast) var(--motion-ease)}.dashboard-summary-list{flex-wrap:wrap;gap:10px;display:flex}.dashboard-summary-item{border:1px solid var(--border);background:var(--bg-2);border-radius:14px;flex:180px;min-width:180px;padding:12px 14px}.dashboard-summary-item__label{color:var(--text-3);text-transform:uppercase;letter-spacing:.12em;font-size:11px;font-family:var(--font-heading);margin-bottom:6px;display:block}.dashboard-summary-item__value{color:var(--text);line-height:1.6;display:block}.period-meta{flex-wrap:wrap;gap:10px;display:flex}.period-meta__item{border:1px solid var(--border);background:var(--bg-2);border-radius:14px;min-width:170px;padding:12px 14px}.period-meta__item span{color:var(--text-3);text-transform:uppercase;letter-spacing:.12em;font-size:11px;font-family:var(--font-heading);margin-bottom:4px;display:block}.period-meta__item strong{color:var(--text);line-height:1.6;font-family:var(--font-mono);font-size:12px;display:block}.mono-text,input[type=time],.week-shift-card__people,.dashboard-limit-card__hint{font-family:var(--font-mono)}@keyframes modal-fade-in{0%{opacity:0}to{opacity:1}}@keyframes modal-card-in{0%{opacity:0;transform:translateY(18px)scale(.985)}to{opacity:1;transform:translateY(0)scale(1)}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:1ms!important;animation-duration:1ms!important;animation-iteration-count:1!important}}.auth-message{color:var(--text);background:#3b82f61a;border:1px solid #3b82f633;border-radius:14px;padding:12px 14px}.auth-message--error{color:var(--red);background:#b91c1c29;border-color:#b91c1c4d}.auth-card__footer{border-top:1px solid var(--border);color:var(--text-2);flex-wrap:wrap;gap:14px;margin-top:20px;padding-top:16px;display:flex}.auth-card__footer a{color:var(--blue);font-weight:600}@media (width<=1100px){.stat-grid,.split-grid,.settings-grid-3,.week-shift-grid{grid-template-columns:1fr 1fr}.app-shell{grid-template-columns:230px minmax(0,1fr)}}@media (width<=920px){.app-shell{grid-template-columns:1fr}.app-sidebar{border-right:none;border-bottom:1px solid var(--border)}.app-topbar,.page-header{flex-direction:column;align-items:flex-start}.app-topbar__actions,.page-actions{justify-content:flex-start}.auth-shell,.turno-card__grid,.limit-card__fields,.settings-grid-2,.limit-grid{grid-template-columns:1fr}.auth-hero{border-right:none;border-bottom:1px solid var(--border);padding:32px}}@media (width<=720px){.app-topbar,.app-shell__content,.auth-panel,.auth-card,.auth-hero{padding-left:20px;padding-right:20px}.stat-grid,.split-grid,.card-stack--grid,.settings-grid-2,.settings-grid-3,.limit-grid,.week-shift-grid{grid-template-columns:1fr}.toolbar{flex-direction:column;align-items:stretch}.toolbar__spacer,.search-input{width:100%;max-width:none}.toggle-theme-track{width:144px;height:44px}.toggle-theme-knob{width:36px;height:36px}.toggle-theme-input:checked~.toggle-theme-track .toggle-theme-knob{left:104px}.brand-lockup--horizontal .brand-lockup__name{font-size:clamp(24px,9vw,38px)}.brand-lockup--stacked .brand-lockup__name{font-size:clamp(42px,13vw,70px)}.brand-lockup__tagline{letter-spacing:.08em;font-size:clamp(15px,4vw,24px)}.modal-shell{padding:16px}.modal-card{padding:22px 20px}}
