@import"https://fonts.googleapis.com/css2?family=Bebas+Neue&family=Oswald:wght@400;600&family=Space+Grotesk:wght@300;400;500;600;700&display=swap";:root{--bg: #f6f7fb;--card: #ffffff;--text: #0b1220;--muted: rgba(11, 18, 32, .65);--border: rgba(11, 18, 32, .1);--shadow: 0 10px 30px rgba(11, 18, 32, .08);--shadow-soft: 0 6px 16px rgba(11, 18, 32, .08);--accent: #b0121b;--accent-dark: #7d0a12;--accent-soft: rgba(176, 18, 27, .12);--primary: #0b1220;--primaryText: #ffffff;--primaryAlt: #f4b76b;--themeA: #f6eeee;--themeB: #efe0df;--danger: #b00020;--radius: 16px;--font-xs: 11px;--font-sm: 12px;--font-base: 13px;--font-md: 14px;--font-lg: 16px;--font-xl: 20px;--radius-sm: 8px;--radius-md: 12px;--radius-lg: 18px;--radius-xl: 24px;--radius-full: 999px}*{box-sizing:border-box}html,body{height:100%}body{margin:0;background:var(--bg);color:var(--text);font-family:ui-sans-serif,system-ui,-apple-system,Segoe UI,Roboto,Arial,"Apple Color Emoji","Segoe UI Emoji";line-height:1.35}a{color:inherit}input,select,button{font:inherit}input,select{background:#fff;color:var(--text);border:1px solid var(--border);border-radius:12px;padding:10px 12px;outline:none}input:focus,select:focus{border-color:#0b122040;box-shadow:0 0 0 4px #0b122014}button{border-radius:12px;border:1px solid var(--border);padding:10px 12px;background:#fff;color:var(--text);cursor:pointer;transition:transform .12s ease,box-shadow .12s ease,background .12s ease}button:hover{box-shadow:var(--shadow-soft);transform:translateY(-1px)}button:disabled{opacity:.55;cursor:not-allowed;transform:none;box-shadow:none}button:focus-visible,select:focus-visible,a:focus-visible{outline:3px solid var(--accent);outline-offset:2px;border-radius:var(--radius-md)}.extra-presets-row{align-items:center}.extra-presets-select{min-width:260px}.extra-presets-actions{display:flex;gap:8px;flex-wrap:wrap}.extra-presets-actions button{white-space:nowrap;padding:8px 12px}@media(min-width:900px){.extra-presets-actions{flex-wrap:nowrap}}#root{min-height:100%}.page{min-height:100vh;display:flex;align-items:flex-start;justify-content:center;padding:28px 16px 48px;background:radial-gradient(1200px 700px at 20% -20%,rgba(255,255,255,.7) 0%,transparent 60%),linear-gradient(135deg,var(--themeA) 0%,var(--themeB) 100%)}.login-page{padding:0;overflow:hidden;background:#eceae6;--login-accent: #9C0F24;--accent: var(--login-accent);--accent-dark: #7d0a12;--accent-soft: rgba(156, 15, 36, .12)}.login-page .shell-login{width:100%;max-width:none}.dashboard-page{background:radial-gradient(1200px 700px at 10% -10%,rgba(255,255,255,.85) 0%,transparent 60%),radial-gradient(900px 500px at 90% 10%,rgba(11,18,32,.08),transparent 60%),linear-gradient(135deg,var(--themeA) 0%,var(--themeB) 100%)}.shell{width:min(1400px,100%);background:#ffffffc7;border:1px solid rgba(11,18,32,.1);border-radius:20px;padding:18px;box-shadow:0 22px 40px #0b12201f;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);min-height:calc(100vh - 76px)}.shell-login{background:transparent;border:none;box-shadow:none;padding:0;min-height:auto}.shell-dashboard{background:linear-gradient(140deg,#fffffff0,#ffffffd1),linear-gradient(120deg,var(--themeA) 0%,var(--themeB) 100%);border-radius:24px;border:1px solid rgba(11,18,32,.08);box-shadow:0 28px 48px #0b122024;position:relative;overflow:clip}.topbar{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:14px;margin-bottom:14px;background:linear-gradient(120deg,#ffffffeb,#ffffffe0),linear-gradient(120deg,var(--themeA) 0%,var(--themeB) 100%);border-radius:18px;padding:12px 14px;border:1px solid rgba(11,18,32,.1);box-shadow:0 14px 26px #0b12201a;color:var(--text);position:sticky;top:0;z-index:100;backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px)}.topbar-left{display:flex;align-items:center;justify-self:start;min-width:0}.topbar-logo{height:34px;width:auto;display:block;object-fit:contain}.topbar-center{justify-self:center;min-width:0}.topbar-center h1{margin:0;font-size:32px;line-height:1.1}.topbar-actions{display:flex;gap:10px;align-items:center;justify-self:end}.topbar-actions button{padding:14px 20px;min-height:44px}.brand{display:grid;gap:4px}.brand h1{margin:0;font-size:22px;letter-spacing:-.02em}.brand .subtitle{font-size:13px;color:var(--muted)}.lang-switch{display:inline-flex;align-items:center;gap:10px;border:1px solid var(--border);border-radius:12px;padding:8px 10px;background:#fff}.lang-toggle{display:inline-flex;gap:6px}.lang-toggle button{padding:6px 10px;border-radius:10px;border:1px solid var(--border);background:#fff}.lang-toggle button.active{background:var(--accent);color:var(--primaryText);border-color:#0003}.card{background:linear-gradient(160deg,#fffffff5,#ffffffe0),linear-gradient(120deg,var(--themeA) 0%,var(--themeB) 100%);border:1px solid rgba(11,18,32,.08);border-radius:18px;box-shadow:0 18px 32px #0b12201a;padding:18px;overflow:hidden;background-clip:padding-box}.grid2{display:grid;grid-template-columns:1fr;gap:14px}.grid2>*{min-width:0}.extra-day-nav{width:100%}.extra-day-input{min-width:0}@media(min-width:900px){.grid2{grid-template-columns:1fr 1fr;align-items:start}}.h2{margin:0;font-size:14px;letter-spacing:-.01em}.muted{color:var(--muted);font-size:13px}.row{display:flex;gap:10px;align-items:center;flex-wrap:wrap}@keyframes fadeSlideIn{0%{opacity:0;transform:translateY(-5px)}to{opacity:1;transform:translateY(0)}}.sheet-row{animation:fadeSlideIn .18s ease}.sheet-row--sent{border-left:3px solid var(--accent);padding-left:10px}.sheet-row--draft{border-left:3px solid var(--border);padding-left:10px}.sheet-row--error{border-left:3px solid var(--danger);padding-left:10px}.sheet-date-label{display:inline-flex;align-items:center;gap:3px;font-size:var(--font-xs, 11px);font-weight:600;padding:1px 7px;border-radius:var(--radius-full, 999px)}.sheet-date-today{background:#22c55e24;color:#166534}.sheet-date-future{background:#6366f11f;color:#4338ca}.badge{display:inline-flex;align-items:center;font-size:var(--font-xs, 11px);padding:2px 8px;border-radius:var(--radius-full, 999px);font-weight:500;white-space:nowrap}.badge-warning{background:#fef3c7;color:#92400e}.badge-error{background:#fee2e2;color:#8b1c1c}.badge-neutral{background:#e5e7eb;color:#374151}.badge-success{background:#22c55e1f;color:#166534}.badge-info{background:#eef2ff;color:#3730a3}.badge-sent{background:#e7f0ef;color:#234449}.badge-sent-modified{background:#fee2e2;color:#8b1c1c}.badge-vip{background:#d9770621;color:#92400e}.badge-sar{background:#dc262624;color:#991b1b}.badge-ndc{background:#111827;color:#fff}.form-error{font-size:var(--font-xs, 11px);color:#8b1c1c}.success-toast{position:fixed;bottom:24px;left:50%;transform:translate(-50%);font-size:var(--font-base, 13px);color:#166534;background:#22c55e1f;border:1px solid rgba(34,197,94,.3);border-radius:var(--radius-sm, 8px);padding:8px 18px;z-index:9999;pointer-events:none;white-space:nowrap;box-shadow:0 4px 12px #00000014}.connectivity-badge{margin-top:4px;display:inline-flex;align-items:center;gap:8px;padding:2px 10px;border-radius:var(--radius-full, 999px);font-size:var(--font-xs, 11px);font-weight:600;border:1px solid transparent}.connectivity-syncing{background:#eef2ff;color:#3730a3;border-color:#4338ca29}.connectivity-online{background:#edf7f1;color:#166534;border-color:#16653424}.connectivity-offline{background:#fff1f2;color:#9f1239;border-color:#be185d24}.offline-banner--online{background:#f5faf7}.offline-banner--offline{background:#fff5f5}.pilot-plan-button{width:100%;justify-content:flex-start;padding:12px 14px;border-radius:16px;border:1px solid var(--border);background:#fff}.pilot-plan-button:hover{background:#f8fafc}.primary{background:var(--accent);color:var(--primaryText);border-color:#b0121b66}.primary:hover{color:var(--primaryText)}.primary:hover{background:var(--accent-dark)}.danger{color:var(--danger);font-size:13px}.login-stage{width:100vw;height:100vh;display:flex;overflow:hidden;font-family:Space Grotesk,Segoe UI,system-ui,sans-serif}.login-footer-lang{display:inline-flex;gap:6px;padding:6px;border-radius:999px;background:#ffffffe6;border:1px solid rgba(11,18,32,.12);box-shadow:0 10px 20px #0b122014;width:fit-content;justify-self:center}.login-footer-lang button{padding:6px 12px;border-radius:999px;border:1px solid rgba(11,18,32,.1);background:transparent;color:#27303f;font-size:12px;letter-spacing:.08em}.login-footer-lang button.active{background:var(--accent, #2f6f6a);color:#fff;border-color:#0b122033;box-shadow:0 8px 14px #0b12201f}@media(max-width:900px){.page{padding:20px 12px 32px}.shell-dashboard{border-radius:18px;padding:14px}.topbar{grid-template-columns:1fr;align-items:stretch}.topbar-center h1{margin:0;font-size:18px;text-align:center}.topbar-left{justify-content:center}.topbar-actions{flex-wrap:wrap;justify-content:flex-start;justify-self:stretch}.topbar-actions button{flex:1 1 160px}.dashboard-userbar{flex-direction:column;align-items:stretch;margin-bottom:20px}.dashboard-base-select{width:100%;margin-bottom:20px}.section-heading-extra{margin-top:12px}.mobile-section-gap{height:12px}.dashboard-base-select select{width:100%;min-width:0}.sheet-filters{grid-template-columns:1fr!important;width:100%}}@media(min-width:601px)and (max-width:768px){.topbar{grid-template-columns:auto 1fr auto;align-items:center}.topbar-left{justify-content:flex-start}.topbar-center{text-align:center}.topbar-actions{flex-wrap:nowrap;justify-content:flex-end}.topbar-actions button{flex:none;padding:10px 14px;min-height:40px}.card{padding:16px}}@media(max-width:600px){.topbar{padding:10px 12px}.topbar-actions button{flex:1 1 100%}.topbar-logo{height:24px}.topbar-center{text-align:center;overflow:visible;min-width:0}.topbar-center h1{font-size:14px;white-space:normal;word-break:break-word}.card{padding:14px;border-radius:16px}.sheet-list .sheet-row{flex-direction:column!important;align-items:stretch!important;gap:6px}.sheet-list .sheet-row>*{width:100%;min-width:0}.sheet-list .sheet-row a,.sheet-list .sheet-row button{width:100%}.sheet-filters input[type=date]{height:36px;font-size:14px;min-width:0;padding:6px 10px 6px 34px;background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%2394a3b8' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'><rect x='3' y='4' width='18' height='18' rx='2' ry='2'/><line x1='16' y1='2' x2='16' y2='6'/><line x1='8' y1='2' x2='8' y2='6'/><line x1='3' y1='10' x2='21' y2='10'/></svg>");background-repeat:no-repeat;background-position:10px center;background-size:16px 16px}.sheet-filters input[type=date]::-webkit-calendar-picker-indicator{opacity:.7}.sheet-pagination{flex-wrap:wrap}.sheet-pagination button{flex:1 1 120px}.pilot-section .row{flex-direction:column;align-items:stretch}.pilot-section .row>*{width:100%;min-width:0}.pilot-section .row button{width:100%}.extra-day-nav{display:grid!important;grid-template-columns:minmax(0,1fr) minmax(0,1.6fr) minmax(0,1fr);justify-content:stretch!important;align-items:center;width:100%}.extra-day-nav>*{min-width:0;width:100%!important}.extra-day-nav button{min-width:0;padding-left:8px;padding-right:8px}.extra-day-input{min-width:0}.extra-presets-row{flex-direction:column;align-items:stretch}.extra-presets-select{width:100%;min-width:0}}.login-footer-logo{width:103px;max-width:118px;height:auto;display:inline-block;vertical-align:middle;opacity:.85}.login-footer-version{font-size:11px;opacity:.45;letter-spacing:.04em}.login-footer-brand{display:grid;place-items:center}.login-footer-site{display:inline-block;width:103px;text-align:center}.login-footer-rights{font-size:11px}.login-art{flex:0 0 52%;position:relative;display:flex;flex-direction:column;justify-content:space-between;padding:clamp(36px,5vw,64px);overflow:hidden;background:radial-gradient(ellipse at 25% 65%,#e8d0d4,#eceae6 65%)}.login-art-watermark{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:90%;opacity:.06;z-index:1;pointer-events:none;-webkit-user-select:none;user-select:none}.login-logo{position:relative;z-index:2}.login-logo img{height:52px;width:auto}.login-copy{position:relative;z-index:2}.login-eyebrow{font-size:11px;letter-spacing:4px;text-transform:uppercase;color:#9c0f24;font-weight:600;margin-bottom:20px}.login-headline{font-size:clamp(32px,3.5vw,48px);font-weight:700;color:#1a1a1a;line-height:1.1;letter-spacing:-1.5px;margin-bottom:24px;max-width:380px}.login-deck{font-size:16px;color:#0000006b;line-height:1.7;max-width:340px;font-weight:400}.login-chips{display:flex;flex-wrap:wrap;gap:10px;margin-top:36px}.login-chips span{padding:7px 16px;border-radius:6px;border:1px solid rgba(156,15,36,.25);color:#00000073;font-size:12px;font-weight:500;background:#9c0f240a}.login-art-footer{position:relative;z-index:2;color:#00000040;font-size:12px}.login-form-card{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;background:#fff;border-left:1px solid rgba(0,0,0,.06);padding:48px;position:relative;overflow-y:auto}.login-lang-toggle{position:absolute;top:40px;right:48px}.login-form-inner{width:100%;max-width:380px}.login-form-accent{width:28px;height:3px;background:#9c0f24;border-radius:2px;margin-bottom:20px}@media(max-width:820px){.login-stage{flex-direction:column}.login-art{flex:0 0 auto;min-height:220px;padding:28px 24px}.login-art-footer{display:none}.login-lang-toggle{top:20px;right:24px}.login-form-card{flex:1;padding:32px 24px;justify-content:flex-start}.login-form-inner{margin-top:auto;margin-bottom:auto}.login-form-card-footer{position:static;padding-top:16px;padding-bottom:4px}}.login-form-card-footer{position:absolute;bottom:28px;color:#ddd;font-size:11px;text-align:center}.login-form-title{font-size:28px;font-weight:700;color:#111;letter-spacing:-.5px;margin-bottom:8px}.login-form-sub{font-size:14px;color:#aaa;font-weight:400;margin-bottom:32px}.login-form-inner label>div{font-size:11px;font-weight:600;color:#bbb;letter-spacing:1px;text-transform:uppercase;margin-bottom:8px}.login-form-inner input[type=email],.login-form-inner input[type=password],.login-form-inner input[type=text]{padding:14px 18px;border-radius:10px;border:1.5px solid #e8e8e8;background:#fafafa;color:#111;font-size:15px;font-family:inherit;transition:border-color .2s}.login-form-inner input[type=email]:focus,.login-form-inner input[type=password]:focus,.login-form-inner input[type=text]:focus{border-color:#9c0f24;outline:none}.login-form-inner input:-webkit-autofill{-webkit-box-shadow:0 0 0 1000px #fafafa inset;-webkit-text-fill-color:#111}.login-form-inner .password-field input{padding-right:48px}.auth-form{display:grid;gap:20px;margin:0}.auth-form>label>input{width:100%}.password-field{position:relative}.password-field input{width:100%;padding-right:44px}.password-toggle{position:absolute;right:6px;top:50%;transform:translateY(-50%);width:32px;height:32px;min-width:32px;padding:0;border:none;background:transparent;color:#0b1220b8;box-shadow:none;display:grid;place-items:center}.password-toggle:hover{transform:translateY(-50%);background:#0b12200f;border-radius:8px;box-shadow:none}.password-toggle:focus-visible{outline:2px solid rgba(11,18,32,.3);outline-offset:1px}.login-actions{display:flex;flex-wrap:wrap;gap:10px}.login-page .login-actions-auth button,.login-page .login-actions-reset button{padding:15px 0;border-radius:10px;font-size:15px;font-weight:700;letter-spacing:.3px;line-height:1;white-space:nowrap}.login-page .login-actions-auth button.primary{width:100%;background:#9c0f24;box-shadow:0 4px 20px #9c0f2440}.login-page .login-actions-auth button.primary:disabled{background:#9c0f2480;box-shadow:none}.login-page .login-actions-reset button{min-height:44px;height:44px;font-size:14px;border-radius:12px}.login-page .login-actions-reset button.primary{flex:0 0 120px}.login-page .login-actions-reset button:not(.primary){flex:0 0 180px}.login-forgot{align-self:flex-end;border:none;background:transparent;color:#9c0f24;padding:0;font-size:13px;font-weight:500;text-decoration:none;box-shadow:none;cursor:pointer}.login-forgot:hover{text-decoration:underline}.login-actions-equal{display:grid;grid-template-columns:1fr 1fr;gap:10px}.login-actions-equal button{width:100%;min-height:42px}@media(max-width:720px){.login-actions-equal{grid-template-columns:1fr}}@media(max-width:768px){.planning-sticky-clear-col{position:static!important}}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.spin{display:inline-block;animation:spin 1s linear infinite}@keyframes ribbonFloat{0%{transform:translateY(0) rotate(-6deg)}50%{transform:translateY(-12px) rotate(-4deg)}to{transform:translateY(0) rotate(-6deg)}}
