/* R2S white-label presentation. Shared by Brokify and its same-origin HR workspace. */
:root{--r2s-blue:#345fbd;--r2s-tint:#edf2fc;--r2s-line:#dce4f2}
html[data-r2s-surface=platform] aside{background:#345fbd!important;box-shadow:none!important;flex-shrink:0;min-height:0;border:0!important}
html[data-r2s-surface=platform] aside>div{background:#345fbd;flex-shrink:0}
html[data-r2s-surface=platform] aside>div:nth-child(2){min-height:0;flex:1 1 0!important;display:flex;flex-direction:column;overflow-x:hidden!important;scrollbar-width:thin;scrollbar-color:#a8bce8 #345fbd;padding-right:10px!important}
html[data-r2s-surface=platform] aside>div:nth-child(2)>*{flex-shrink:0}
html[data-r2s-surface=platform] aside a[href='/users']{order:2}
html[data-r2s-surface=platform] aside a,html[data-r2s-surface=platform] aside button{color:#fff!important}
html[data-r2s-surface=platform] aside a[aria-current=page]{background:#fff!important;color:#345fbd!important;box-shadow:0 2px 8px #244b9b18}
html[data-r2s-surface=platform] aside a:hover{background:#ffffff1a}
html[data-r2s-surface=platform] aside a[aria-current=page]>span:first-child{background:#edf2fc!important}
html[data-r2s-surface=platform] aside::-webkit-scrollbar,html[data-r2s-surface=platform] aside *::-webkit-scrollbar{width:6px}
html[data-r2s-surface=platform] aside *::-webkit-scrollbar-track{background:#345fbd}
html[data-r2s-surface=platform] aside *::-webkit-scrollbar-thumb{background:#a8bce8;border:1px solid #345fbd;border-radius:8px}
html[data-r2s-route=compliance] main{font-size:14px}
html[data-r2s-route=compliance] main h1{font-size:22px!important;line-height:1.3!important}
html[data-r2s-route=compliance] main h2{font-size:19px!important;line-height:1.35!important}
html[data-r2s-route=compliance] main h3{font-size:16px!important}
html[data-r2s-route=compliance] main p,html[data-r2s-route=compliance] main label,html[data-r2s-route=compliance] main input,html[data-r2s-route=compliance] main select,html[data-r2s-route=compliance] main textarea{font-size:13px!important}
html[data-r2s-route=compliance] .cp-nav{gap:8px!important;padding:16px 24px!important}
html[data-r2s-route=compliance] .cp-nav button{font-size:13px!important;line-height:1.3!important;padding:10px 13px!important;border-radius:9px!important;min-height:38px}
html[data-r2s-route=compliance] main .text-3xl{font-size:22px!important}
html[data-r2s-route=compliance] main .text-2xl{font-size:19px!important}
html[data-r2s-route=compliance] main .text-xl{font-size:16px!important}
html[data-r2s-route=compliance] main .text-lg{font-size:14px!important}
html[data-r2s-route=compliance] .cp-view{margin:0;padding:8px 24px 24px}
html[data-r2s-route=compliance] .cp-box{padding:18px;border-radius:12px;margin:12px 0}
html[data-r2s-route=compliance] main img[alt='R2S Insurance Brokers']{max-height:48px}
html[data-r2s-route=compliance] main img[alt=Brokify]{max-height:38px}
html[data-r2s-surface=hr]{--navy:#345fbd;--blue:#345fbd;--blue2:#345fbd;--ink:#28303c;font-size:14px}
html[data-r2s-surface=hr] .app{display:flex;flex-direction:column;min-height:100vh}
html[data-r2s-surface=hr] .sidebar{display:block!important;position:sticky!important;top:0!important;left:auto!important;bottom:auto!important;transform:none!important;width:100%!important;height:auto!important;max-height:45vh;overflow:auto;z-index:50;background:#fff!important;color:#345fbd;padding:12px 20px 8px;border-bottom:1px solid #dce4f2;box-shadow:0 3px 12px #345fbd0a}
html[data-r2s-surface=hr] .brand{flex-direction:row;align-items:center;gap:12px;padding:0 0 10px}
html[data-r2s-surface=hr] .sidebar .brandLogoBox{width:44px!important;height:44px!important;flex:none;padding:2px;border-radius:6px;box-shadow:none}
html[data-r2s-surface=hr] .brandLogo{width:100%;height:100%;object-fit:contain}
html[data-r2s-surface=hr] .brandText strong{font-size:14px;color:#345fbd}
html[data-r2s-surface=hr] .brandText small{font-size:11px;color:#667085}
html[data-r2s-surface=hr] .brokify-powered{margin-left:auto!important;padding:0!important}
html[data-r2s-surface=hr] .brokify-powered-logo{max-width:112px!important;max-height:34px!important;object-fit:contain}
html[data-r2s-surface=hr] .nav{display:flex;flex-wrap:wrap;gap:5px}
html[data-r2s-surface=hr] .navGroup,html[data-r2s-surface=hr] .sidebar .sideBox,html[data-r2s-surface=hr] .sidebar .userBox,html[data-r2s-surface=hr] .mobBar{display:none!important}
html[data-r2s-surface=hr] .nav button{width:auto;padding:8px 10px;font-size:12px;gap:6px;border-radius:7px;color:#345fbd;background:#fff;border:1px solid #dce4f2;white-space:nowrap}
html[data-r2s-surface=hr] .nav button.active{background:#345fbd!important;color:#fff!important;border-color:#345fbd}
html[data-r2s-surface=hr] .nav button:hover{background:#edf2fc;color:#345fbd}
html[data-r2s-surface=hr] .nav button:disabled{color:#8994a7!important;background:#f6f7f9!important;border-color:#e5e7eb;opacity:.7}
html[data-r2s-surface=hr] .main{width:100%;padding:20px 24px 32px}
html[data-r2s-surface=hr] #dashboard .dHero{background:#345fbd!important;border-radius:16px;padding:24px}
html[data-r2s-surface=hr] #dashboard .dHero h1{font-size:25px!important}
html[data-r2s-surface=hr] .title h1{font-size:23px}
@media(max-width:780px){html[data-r2s-surface=hr] .sidebar{padding:10px 12px;max-height:40vh}html[data-r2s-surface=hr] .nav{flex-wrap:nowrap;overflow-x:auto;padding-bottom:5px}html[data-r2s-surface=hr] .main{padding:16px}html[data-r2s-route=compliance] .cp-view{padding:8px 16px 16px}}

:is(.text-blue-500,.text-blue-600,.text-blue-700,.text-blue-800,.text-blue-900,.text-indigo-500,.text-indigo-600,.text-indigo-700,.text-indigo-800,.text-indigo-900){color:#345fbd!important}
:is(.bg-blue-500,.bg-blue-600,.bg-blue-700,.bg-blue-800,.bg-blue-900,.bg-indigo-500,.bg-indigo-600,.bg-indigo-700,.bg-indigo-800,.bg-indigo-900,.bg-slate-900){background-color:#345fbd!important}
.bg-blue-50,.bg-blue-100,.bg-indigo-50,.bg-indigo-100{background-color:#edf2fc!important}
:is(.border-blue-500,.border-blue-600,.border-blue-700,.border-indigo-500,.border-indigo-600){border-color:#345fbd!important}
html[data-r2s-surface=platform] body,html[data-r2s-surface=hr] body{font-family:'Segoe UI',Arial,sans-serif!important}
h1,h2,h3,button,input,select,textarea{font-family:inherit!important}
html[data-r2s-surface=platform] aside div[style*='color'],html[data-r2s-surface=platform] aside span[style*='color']{color:#edf2fc!important}
html[data-r2s-surface=platform] aside a[aria-current=page] span{color:#345fbd!important}
html[data-r2s-surface=hr] .brokify-powered-label{color:#667085!important}
/* A brighter main login, retaining the existing React form and authentication. */
.r2s-login-shell{min-height:100vh!important;display:grid!important;grid-template-columns:minmax(0,1.1fr) minmax(380px,.9fr)!important;align-items:center!important;gap:50px;padding:48px 6vw!important;background:radial-gradient(circle at 8% 14%,#ffffff29 0,transparent 32%),linear-gradient(125deg,#345fbd 0%,#345fbd 54%,#f4f7fc 54%,#f4f7fc 100%)!important}
.r2s-login-card{grid-column:2;grid-row:1;width:100%!important;max-width:440px!important;justify-self:center;border:1px solid #e0e7f3;border-radius:22px!important;padding:36px!important;box-shadow:0 18px 55px #345fbd1a!important}
.r2s-login-card>div:first-child{text-align:left!important;margin-bottom:26px!important}
.r2s-login-card>div:first-child>div:first-child{display:none!important}
.r2s-login-card h1{font-size:29px!important;color:#345fbd!important;letter-spacing:-.8px;font-weight:800!important}
.r2s-login-card input{height:48px;border-radius:10px!important;font-size:14px!important}
.r2s-login-card button[type=submit]{background:#345fbd!important;height:48px;font-size:14px;box-shadow:0 6px 16px #345fbd22}
.r2s-login-card>div:last-child{background:#f5f8fd!important}
.r2s-welcome{grid-column:1;grid-row:1;color:#fff;max-width:640px;align-self:stretch;display:flex;flex-direction:column;justify-content:space-between;gap:28px;padding:8px 0}
.r2s-login-brand{display:flex;align-items:center;justify-content:space-between;gap:20px}
.r2s-login-logo{width:100px;height:100px;object-fit:contain;background:#fff;padding:10px;border-radius:16px}
.r2s-login-provider{display:flex;flex-direction:column;gap:6px;font-size:10px;letter-spacing:1px;text-transform:uppercase}
.r2s-login-provider img{width:126px;background:#fff;border-radius:8px;padding:8px}
.r2s-welcome h2{font-size:clamp(28px,3.2vw,44px);line-height:1.15;letter-spacing:-1px;margin:12px 0 18px;font-weight:750;color:#fff}
.r2s-welcome h2 em{font-style:normal;color:#c8f3ba}
.r2s-welcome p{color:#edf2fc;font-size:15px;line-height:1.65}
.r2s-welcome-kicker{font-size:11px;font-weight:700;letter-spacing:2px;text-transform:uppercase;color:#d9f4d3}
.r2s-daily{background:#ffffff12;border:1px solid #ffffff35;border-radius:16px;padding:20px;backdrop-filter:blur(6px)}
.r2s-daily-tabs{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:18px}
.r2s-daily-tabs button{font-size:12px;padding:7px 10px;border:1px solid #ffffff35;border-radius:7px;color:#fff;background:transparent;cursor:pointer}
.r2s-daily-tabs button[aria-selected=true]{background:#fff;color:#345fbd;border-color:#fff}
.r2s-daily-content{min-height:126px}
.r2s-daily-content h3{font-size:17px;margin:0 0 10px;color:#fff}
.r2s-daily-content p{margin:0;font-size:14px;color:#fff}
.r2s-daily-content button{display:block;width:100%;text-align:left;margin:7px 0;padding:8px 12px;border:1px solid #ffffff55;background:#ffffff12;color:#fff;border-radius:8px;cursor:pointer;font-size:13px}
.r2s-daily-content button:focus-visible,.r2s-daily-tabs button:focus-visible{outline:3px solid #b9e6ac;outline-offset:3px}
.r2s-daily-feedback{margin-top:10px!important;font-size:13px!important;color:#d9f4d3!important}
.r2s-welcome-footer{display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap;border-top:1px solid #ffffff35;padding-top:18px;font-size:12px;color:#edf2fc}
@media(max-width:900px){.r2s-login-shell{grid-template-columns:1fr!important;gap:28px;padding:28px 20px!important;background:linear-gradient(160deg,#345fbd 0%,#345fbd 55%,#f4f7fc 55%)!important}.r2s-welcome{grid-column:1;grid-row:1;max-width:600px;justify-self:center}.r2s-login-card{grid-column:1;grid-row:2}.r2s-login-logo{width:72px;height:72px}.r2s-welcome h2{font-size:30px}.r2s-welcome-footer{padding-top:12px}.r2s-daily{padding:16px}.r2s-daily-content{min-height:90px}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important}}
/* Compact, grouped primary navigation. */
html[data-r2s-surface=platform] aside>div:first-child{padding:18px 14px!important}
html[data-r2s-surface=platform] aside>div:nth-child(2){padding:12px 10px!important}
html[data-r2s-surface=platform] aside a,html[data-r2s-surface=platform] aside button[aria-label='Claims modules']{position:relative;padding:8px 10px!important;gap:10px!important;margin-bottom:3px!important;border-radius:8px!important;font-size:12px!important;font-weight:600!important;min-height:38px}
html[data-r2s-surface=platform] aside a>span:first-child,html[data-r2s-surface=platform] aside button[aria-label='Claims modules']>span:first-child{min-width:22px!important;width:22px!important;height:24px!important;background:transparent!important;border-radius:0!important;font-size:0!important}
.r2s-nav-icon{display:block;width:18px;height:18px;flex-shrink:0}
html[data-r2s-surface=platform] aside a[aria-current=page]{font-weight:700!important}
html[data-r2s-surface=platform] aside a[href='/commission'],html[data-r2s-surface=platform] aside a[href='/finance'],html[data-r2s-surface=platform] aside a[href='/compliance'],html[data-r2s-surface=platform] aside a[href='/hr-operations']{margin-top:23px!important}
html[data-r2s-surface=platform] aside a[href='/commission']::before,html[data-r2s-surface=platform] aside a[href='/finance']::before,html[data-r2s-surface=platform] aside a[href='/compliance']::before,html[data-r2s-surface=platform] aside a[href='/hr-operations']::before{position:absolute;top:-18px;left:10px;color:#e6edfb;font-size:10px;font-weight:650;letter-spacing:.65px;text-transform:uppercase;pointer-events:none}
html[data-r2s-surface=platform] aside a[href='/commission']::before{content:'Business'}
html[data-r2s-surface=platform] aside a[href='/finance']::before{content:'Operations'}
html[data-r2s-surface=platform] aside a[href='/compliance']::before{content:'Governance'}
html[data-r2s-surface=platform] aside a[href='/hr-operations']::before{content:'People & access'}
html[data-r2s-surface=platform] aside[data-r2s-collapsed=true] a::before{content:none!important}
.r2s-login-shell{background:radial-gradient(circle at 8% 14%,#ffffff22 0,transparent 32%),linear-gradient(90deg,#345fbd 0%,#345fbd 55%,#f4f7fc 55%,#f4f7fc 100%)!important}
.r2s-login-card>div:last-child{display:none}
.r2s-password-field{position:relative}
.r2s-password-field input{padding-right:65px!important}
.r2s-password-toggle{position:absolute;right:10px;bottom:10px;padding:5px;border:0;background:transparent;color:#345fbd;font-size:12px;font-weight:650;cursor:pointer}
@media(max-width:900px){.r2s-login-shell{background:#345fbd!important}}
.bg-r2s-navy,.bg-r2s-blue{background-color:#345fbd!important}
.text-r2s-navy,.text-r2s-blue{color:#345fbd!important}
.border-r2s-navy{border-color:#345fbd!important}
.from-r2s-navy{--tw-gradient-from:#345fbd!important;--tw-gradient-to:#345fbd00!important;--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to)!important}
.to-blue-900{--tw-gradient-to:#345fbd!important}
@media(max-width:900px){.r2s-welcome{display:contents}.r2s-login-brand{grid-column:1;grid-row:1}.r2s-login-card{grid-row:2}.r2s-welcome>div:nth-child(2){grid-column:1;grid-row:3}.r2s-daily{grid-column:1;grid-row:4}.r2s-welcome-footer{grid-column:1;grid-row:5}.r2s-login-shell{align-content:start!important}}
/* Lists use a paper surface; brand blue is reserved for interaction. */
html[data-r2s-surface=platform] main table{width:100%;border-collapse:separate;border-spacing:0;font-size:12px;font-variant-numeric:tabular-nums;background:#fff}
html[data-r2s-surface=platform] main table thead{background:#f7f9fc;color:#667085}
html[data-r2s-surface=platform] main table th{font-size:10px;font-weight:650;letter-spacing:.35px;padding:10px 12px;border-bottom:1px solid #e5e9f0;background:#f7f9fc;white-space:nowrap}
html[data-r2s-surface=platform] main table tbody tr{background:#fff!important;color:#374151}
html[data-r2s-surface=platform] main table tbody tr:hover{background:#f6f8fc!important}
html[data-r2s-surface=platform] main table tbody td{padding:10px 12px;border-bottom:1px solid #edf0f5;color:#374151;line-height:1.45;vertical-align:middle}
html[data-r2s-surface=platform] main table tbody td:first-child{color:#28303c;font-weight:600}
html[data-r2s-surface=platform] main table tbody td a{color:#345fbd}
html[data-r2s-surface=platform] main table tfoot td{background:#f7f9fc;padding:10px 12px;border-top:1px solid #dce4f2;font-weight:650}
html[data-r2s-route=clients] main,html[data-r2s-route=renewals] main{font-size:13px}
html[data-r2s-route=clients] main h3,html[data-r2s-route=renewals] main h3{font-size:16px;color:#28303c!important}
html[data-r2s-route=clients] main input,html[data-r2s-route=clients] main select,html[data-r2s-route=clients] main button,html[data-r2s-route=renewals] main input,html[data-r2s-route=renewals] main select,html[data-r2s-route=renewals] main button{font-size:12px}
html[data-r2s-route=clients] main table td:first-child{min-width:220px;max-width:300px}
html[data-r2s-route=renewals] main table td:nth-child(6){white-space:nowrap}
/* Finance workspace: period, work areas, overview, then task details. */
.r2s-finance{padding:20px 24px 30px!important;display:flex;flex-direction:column;gap:16px;min-width:0}
.r2s-finance>*{margin-top:0!important;margin-bottom:0!important;min-width:0}
.r2s-finance-heading{order:-4;display:flex;justify-content:space-between;align-items:center;gap:16px}
.r2s-finance-heading h1{font-size:23px;font-weight:700;margin:0;color:#28303c}
.r2s-finance-heading p{font-size:12px;color:#667085;margin:4px 0 0}
.r2s-finance-period{order:-3;padding:12px 16px!important;box-shadow:none!important;border:1px solid #e3e8f0;border-radius:10px!important;background:#fff}
.r2s-finance-period button{font-size:12px!important;padding:6px 10px!important}
.r2s-finance-tabs{order:-2;display:flex!important;gap:5px!important;flex-wrap:nowrap!important;overflow-x:auto;padding:6px!important;border:1px solid #e3e8f0;background:#fff;border-radius:10px;scrollbar-width:thin}
.r2s-finance-tabs button{flex:0 0 auto;font-size:12px!important;padding:9px 12px!important;border:0!important;white-space:nowrap;border-radius:7px!important}
.r2s-finance-overview{order:-1;gap:12px!important;grid-template-columns:repeat(4,minmax(0,1fr))!important}
.r2s-finance-overview>div{border:1px solid #e3e8f0!important;border-radius:10px!important;box-shadow:none!important;padding:14px 16px!important;background:#fff!important}
.r2s-finance-overview .text-2xl{font-size:22px!important;color:#28303c!important;line-height:1.35}
.r2s-finance-overview .text-xs{font-size:11px!important}
.r2s-finance-summary{gap:10px!important}
.r2s-finance-summary>div{padding:12px 14px!important;border:1px solid #e3e8f0!important;box-shadow:none!important;border-radius:10px!important}
.r2s-finance-summary .text-2xl{font-size:20px!important;color:#28303c!important}
html[data-r2s-route=finance] main h2,html[data-r2s-route=finance] main h3{color:#28303c!important;font-size:16px!important}
html[data-r2s-route=finance] main input,html[data-r2s-route=finance] main select,html[data-r2s-route=finance] main button{font-size:12px}
html[data-r2s-route=finance] main .text-3xl{font-size:24px!important}
html[data-r2s-route=finance] main .text-xl{font-size:17px!important}
html[data-r2s-route=finance] main .grid-cols-3{gap:14px!important}
@media(max-width:1000px){.r2s-finance-overview{grid-template-columns:repeat(2,minmax(0,1fr))!important}.r2s-finance{padding:16px!important}}
@media(max-width:600px){.r2s-finance{padding:12px!important}.r2s-finance-heading{align-items:flex-start}.r2s-finance-heading h1{font-size:20px}.r2s-finance-overview>div{padding:12px!important}.r2s-finance-overview .text-2xl{font-size:19px!important}}
/* One floating assistant, using the existing account-scoped assistant page. */
html[data-r2s-surface=platform] aside a[href='/ai']{display:none!important}
.r2s-chat-launcher{position:fixed;right:22px;bottom:20px;z-index:1500;display:flex;align-items:center;gap:8px;background:#345fbd;color:#fff;padding:12px 16px;border:1px solid #ffffff44;border-radius:28px;box-shadow:0 5px 20px #244b9b33;cursor:pointer;font-size:13px;font-weight:650}
.r2s-chat-launcher svg{width:20px;height:20px}
.r2s-chat-panel{position:fixed;right:22px;bottom:80px;width:min(460px,calc(100vw - 32px));height:min(650px,calc(100dvh - 110px));z-index:1501;display:flex;flex-direction:column;background:#fff;border:1px solid #dce4f2;border-radius:16px;box-shadow:0 12px 48px #25385833;overflow:hidden}
.r2s-chat-panel[hidden]{display:none}
.r2s-chat-toolbar{display:flex;align-items:center;gap:8px;padding:12px 14px;border-bottom:1px solid #e3e8f0;background:#fff;color:#28303c;font-size:13px}
.r2s-chat-toolbar strong{margin-right:auto}
.r2s-chat-toolbar button,.r2s-chat-toolbar a{border:1px solid #dce4f2;border-radius:6px;background:#fff;padding:5px 8px;font-size:12px;color:#345fbd;text-decoration:none;cursor:pointer}
.r2s-chat-panel iframe{width:100%;flex:1;min-height:0;border:0;background:#fff}
.r2s-chat-launcher:focus-visible,.r2s-chat-toolbar button:focus-visible{outline:3px solid #a8bce8;outline-offset:3px}
html[data-r2s-ai-embedded=true] body,html[data-r2s-ai-embedded=true] #root{height:100dvh;overflow:hidden}
html[data-r2s-ai-embedded=true] aside,html[data-r2s-ai-embedded=true] main>div:first-child{display:none!important}
html[data-r2s-ai-embedded=true] main{width:100%;height:100dvh;min-height:0}
html[data-r2s-ai-embedded=true] .r2s-native-chat{height:100dvh!important;box-shadow:none!important;border:0!important;border-radius:0!important}
html[data-r2s-ai-embedded=true] main>div:nth-child(2){padding:0!important;overflow:hidden!important;min-height:0}
html[data-r2s-ai-embedded=true] .r2s-native-chat>div:first-child{padding:10px 12px!important;border-radius:0!important}
html[data-r2s-ai-embedded=true] .r2s-native-chat>div:nth-child(2){max-height:94px;overflow:auto;padding:8px!important}
html[data-r2s-ai-embedded=true] .r2s-native-chat p{font-size:13px;line-height:1.55}
html[data-r2s-ai-embedded=true] .r2s-native-chat input{min-width:0;font-size:13px;padding:9px 10px}
@media(max-width:600px){.r2s-chat-panel{right:12px;bottom:76px;width:calc(100vw - 24px);height:calc(100dvh - 98px)}.r2s-chat-launcher{right:14px;bottom:14px;padding:11px 14px}}
.r2s-finance-period button{display:none!important}
.r2s-finance-period span:first-child{width:auto!important;white-space:nowrap}
.r2s-finance-year{padding:7px 30px 7px 10px;border:1px solid #dce4f2;border-radius:7px;background:#fff;color:#28303c;font-size:12px;min-width:120px}
.r2s-finance-overview::before{content:'Company overview · selected period';grid-column:1/-1;font-size:10px;font-weight:650;color:#667085;text-transform:uppercase;letter-spacing:.5px}
html[data-r2s-surface=hr] #brokify-save-status{bottom:72px!important;max-width:calc(100vw - 36px)}
.r2s-chat-panel.r2s-chat-expanded{width:min(960px,calc(100vw - 44px));height:calc(100dvh - 110px)}
.r2s-finance-method{background:#f7f9fc!important;border:1px solid #e3e8f0!important;border-radius:8px;font-size:0!important;line-height:0;color:#667085!important;padding:10px 12px!important}
.r2s-finance-method>:not(details){display:none!important}
.r2s-finance-method details{font-size:12px;line-height:1.5}
.r2s-finance-method summary{font-weight:600;cursor:pointer;color:#4b5563}
.r2s-finance-method details p{margin:8px 0 0;max-width:900px}
/* A brighter welcome for the Microsoft-only sign-in card. */
.r2s-login-shell{background:radial-gradient(ellipse at 86% 18%,#7bc36524,transparent 30%),radial-gradient(ellipse at 100% 88%,#345fbd18,transparent 36%),linear-gradient(90deg,#345fbd 55%,#f4f7fc 55%)!important}
.r2s-login-card{position:relative;overflow:hidden;background:linear-gradient(145deg,#fff 65%,#f0f8ed)!important;border:1px solid #dbe6f2!important;border-radius:26px!important;box-shadow:0 28px 70px #345fbd24,0 3px 12px #345fbd0a!important;padding:40px 36px!important}
.r2s-login-card:before{content:'YOUR R2S WORKSPACE';display:inline-block;margin-bottom:22px;padding:7px 11px;border-radius:30px;background:#eaf6e7;color:#357342;font-size:10px;font-weight:800;letter-spacing:1.5px}
.r2s-login-card:after{content:'';position:absolute;top:0;left:0;right:0;height:6px;background:linear-gradient(90deg,#345fbd 0%,#345fbd 55%,#7bc365 55%,#7bc365 100%)}
.r2s-login-card h1+ p{font-size:14px!important;line-height:1.6;color:#62738a!important}
.r2s-login-card [data-ms-policy]{font-size:14px;color:#52647a;line-height:1.65;margin-bottom:20px}
.r2s-login-card [data-ms-signin]{display:flex!important;align-items:center;justify-content:center;gap:12px;min-height:56px;padding:15px 18px!important;background:#345fbd!important;color:#fff!important;border:0!important;border-radius:13px!important;font-size:15px!important;font-weight:700!important;box-shadow:0 9px 22px #345fbd30;transition:transform .18s ease,box-shadow .18s ease}
.r2s-login-card [data-ms-signin]:before{content:'';flex:none;width:18px;height:18px;border:3px solid white;border-radius:3px;background:linear-gradient(#f25022,#f25022) 0 0/8px 8px no-repeat,linear-gradient(#7fba00,#7fba00) 10px 0/8px 8px no-repeat,linear-gradient(#00a4ef,#00a4ef) 0 10px/8px 8px no-repeat,linear-gradient(#ffb900,#ffb900) 10px 10px/8px 8px no-repeat;background-color:white;box-sizing:content-box}
.r2s-login-card [data-ms-signin]:after{content:'';width:8px;height:8px;border-top:2px solid white;border-right:2px solid white;transform:rotate(45deg);margin-left:6px}
.r2s-login-card [data-ms-signin]:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 13px 28px #345fbd40}
.r2s-login-card [data-ms-signin]:focus-visible{outline:3px solid #7bc365;outline-offset:4px}
@media(max-width:900px){.r2s-login-shell{background:radial-gradient(ellipse at 90% 0%,#7bc36530,transparent 55%),#345fbd!important}.r2s-login-card{padding:32px 26px!important}.r2s-login-card h1{font-size:27px!important}}
@media(prefers-reduced-motion:reduce){.r2s-login-card [data-ms-signin]{transition:none}.r2s-login-card [data-ms-signin]:hover:not(:disabled){transform:none}}
/* Larger, recognisable daily-content cards. */
.r2s-daily{padding:24px;border-radius:22px;background:#ffffff12;box-shadow:0 12px 30px #00000008}
.r2s-daily-intro{margin-bottom:18px}.r2s-daily-intro h3{font-size:22px;font-weight:750;color:white;letter-spacing:-.4px;margin:0 0 4px}.r2s-daily-intro p{font-size:13px!important;margin:0;color:#edf2fc}
.r2s-daily-tabs{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin-bottom:20px}
.r2s-daily-tabs button{position:relative;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;min-height:126px;padding:15px 8px;border-radius:15px;background:#ffffff12;border:1px solid #ffffff4d;text-align:center;transition:transform .18s ease,background .18s ease,box-shadow .18s ease}
.r2s-daily-icon{display:grid;place-items:center;flex:none;width:46px;height:46px;border-radius:14px;background:#fff2d4;color:#b87312}.r2s-daily-icon svg{width:29px;height:29px}
.r2s-daily-tabs button:nth-child(2) .r2s-daily-icon{background:#def8e9;color:#18754e}.r2s-daily-tabs button:nth-child(3) .r2s-daily-icon{background:#ffe6ed;color:#b74364}.r2s-daily-tabs button:nth-child(4) .r2s-daily-icon{background:#eee6ff;color:#7751b4}
.r2s-daily-label{font-size:13px;font-weight:750;line-height:1.25}.r2s-daily-hint{font-size:10px;line-height:1.3;opacity:.85}
.r2s-daily-tabs button[aria-selected=true]{background:white;color:#345fbd;border-color:white;box-shadow:0 7px 18px #00000014}
.r2s-daily-tabs button[aria-selected=true]:after{content:'';position:absolute;right:10px;top:10px;width:5px;height:9px;border:solid #3f8c4a;border-width:0 2px 2px 0;transform:rotate(45deg)}
.r2s-daily-tabs button:hover{transform:translateY(-3px);box-shadow:0 9px 20px #00000016;background:#ffffff26}.r2s-daily-tabs button[aria-selected=true]:hover{background:#fff}
.r2s-daily-content{padding:18px;border-radius:14px;background:#ffffff0d;border:1px solid #ffffff24;min-height:120px}.r2s-daily-content h3{font-size:18px}.r2s-daily-content p{font-size:16px!important;line-height:1.65}
.r2s-daily-content button{min-height:44px;padding:11px 14px;transition:background .15s ease}.r2s-daily-content button:hover{background:#ffffff25}
@media(max-width:1200px) and (min-width:901px){.r2s-daily-tabs{grid-template-columns:repeat(2,minmax(0,1fr))}.r2s-daily-tabs button{min-height:114px}}
@media(max-width:600px){.r2s-daily{padding:18px}.r2s-daily-tabs{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.r2s-daily-tabs button{min-height:120px}.r2s-daily-label{font-size:14px}.r2s-daily-hint{font-size:11px}.r2s-daily-content p{font-size:15px!important}}
@media(prefers-reduced-motion:reduce){.r2s-daily-tabs button,.r2s-daily-content button{transition:none}.r2s-daily-tabs button:hover{transform:none}}
/* Reserve the quiz space so switching cards never changes the page frame. */
.r2s-quiz-answers{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin-top:10px}
.r2s-quiz-answers button{margin:0;min-height:48px;font-size:12px;line-height:1.4;padding:9px 10px}
.r2s-daily-content{overflow:auto;overscroll-behavior:contain;scrollbar-width:thin;scrollbar-color:#ffffff88 transparent;overflow-anchor:none}
@media(min-width:901px){
 .r2s-login-shell{height:100svh!important;min-height:0!important;box-sizing:border-box;padding:20px 5vw!important;gap:clamp(28px,4vw,60px);overflow:hidden}
 .r2s-welcome{height:100%;min-height:0;display:grid;grid-template-rows:52px auto minmax(0,1fr) 20px;gap:14px;padding:0}
 .r2s-login-logo{width:52px;height:52px;padding:5px;border-radius:10px}.r2s-login-provider img{width:108px;padding:5px}.r2s-login-provider{gap:3px;font-size:9px}
 .r2s-welcome h2{font-size:clamp(26px,3.7vh,38px);line-height:1.08;margin:7px 0 10px}.r2s-welcome>div:nth-child(2)>p{font-size:13px;line-height:1.45;margin:5px 0}.r2s-welcome-kicker{font-size:10px}
 .r2s-daily{min-height:0;display:grid;grid-template-rows:auto 88px minmax(0,1fr);gap:12px;padding:16px}
 .r2s-daily-intro{margin:0}.r2s-daily-intro h3{font-size:19px;margin:0 0 3px}.r2s-daily-intro p{font-size:11px!important}
 .r2s-daily-tabs{grid-template-columns:repeat(4,minmax(0,1fr));margin:0;gap:8px}.r2s-daily-tabs button{height:88px;min-height:0;padding:7px 5px;gap:4px}.r2s-daily-icon{width:32px;height:32px;border-radius:10px}.r2s-daily-icon svg{width:23px;height:23px}.r2s-daily-label{font-size:12px}.r2s-daily-hint{font-size:9px}
 .r2s-daily-content{height:100%;min-height:0;padding:13px}.r2s-daily-content h3{font-size:16px;margin-bottom:7px}.r2s-daily-content p{font-size:14px!important;line-height:1.5}.r2s-daily-feedback{margin-top:9px!important;font-size:12px!important}
 .r2s-welcome-footer{padding:4px 0 0;font-size:11px;align-items:center}
}
@media(max-width:900px){
 .r2s-login-shell{height:100svh!important;min-height:0!important;box-sizing:border-box;padding:14px!important;gap:12px;grid-template-rows:40px auto minmax(0,1fr) 18px;align-content:stretch!important;overflow:hidden}
 .r2s-login-brand{grid-row:1;min-height:0;width:100%;max-width:640px;justify-self:center}.r2s-login-logo{width:40px;height:40px;padding:4px;border-radius:8px}.r2s-login-provider{font-size:8px;gap:2px}.r2s-login-provider img{width:90px;padding:4px}
 .r2s-welcome>div:nth-child(2){display:none}.r2s-login-card{grid-row:2;padding:18px 22px!important;max-width:440px!important}.r2s-login-card:before{display:none}.r2s-login-card>div:first-child{margin-bottom:8px!important}.r2s-login-card h1{font-size:22px!important;margin:0!important}.r2s-login-card h1+p{display:none}.r2s-login-card [data-ms-policy]{font-size:12px;line-height:1.4;margin:0 0 8px!important}.r2s-login-card [data-ms-signin]{min-height:48px;margin-top:0!important;padding:10px 12px!important;font-size:14px!important}
 .r2s-daily{grid-row:3;display:grid;grid-template-rows:auto 76px minmax(0,1fr);gap:10px;min-height:0;padding:12px;width:100%;max-width:640px;justify-self:center}.r2s-daily-intro{margin:0}.r2s-daily-intro h3{font-size:17px;margin:0}.r2s-daily-intro p{display:none}
 .r2s-daily-tabs{grid-template-columns:repeat(4,minmax(0,1fr));margin:0;gap:6px}.r2s-daily-tabs button{min-height:0;height:76px;padding:7px 3px;gap:5px;border-radius:11px}.r2s-daily-icon{width:30px;height:30px;border-radius:9px}.r2s-daily-icon svg{width:23px;height:23px}.r2s-daily-label{font-size:10px}.r2s-daily-hint{display:none}
 .r2s-daily-content{height:100%;min-height:0;padding:10px}.r2s-daily-content h3{font-size:15px;margin-bottom:6px}.r2s-daily-content p{font-size:13px!important;line-height:1.45}.r2s-quiz-answers button{font-size:11px;padding:8px 6px}.r2s-daily-feedback{font-size:12px!important;margin-top:8px!important}
 .r2s-welcome-footer{grid-row:4;width:100%;max-width:640px;justify-self:center;margin:0;padding:3px 0 0;font-size:10px}
}
/* Keep the reserved panel balanced on roomy displays and close to login on phones. */
@media(min-width:901px){.r2s-daily{height:100%;max-height:480px;align-self:center}.r2s-daily-content{display:flex;flex-direction:column;justify-content:safe center}}
@media(max-width:900px){.r2s-daily{height:100%;align-self:stretch}.r2s-daily-content{display:flex;flex-direction:column;justify-content:safe center}}

.r2s-daily-content>*{flex-shrink:0}
