:root{color:#f5f7fb;background:#07111f;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-text-size-adjust:100%}*{box-sizing:border-box}body{margin:0;min-width:320px;min-height:100vh;background:radial-gradient(circle at 12% 8%,rgba(42,116,255,.28),transparent 30rem),radial-gradient(circle at 88% 16%,rgba(0,214,170,.12),transparent 28rem),#07111f}button,input{font:inherit}button{cursor:pointer}button:disabled{cursor:wait;opacity:.65}.portal-shell{width:min(1120px,calc(100% - 32px));margin:0 auto;padding:32px 0 24px}.portal-header,.section-heading,.form-actions,.portal-footer{display:flex;align-items:center;justify-content:space-between;gap:16px}.portal-header{margin-bottom:28px}.portal-header h1,.portal-card h2,.module-card h3{margin:0;letter-spacing:-.03em}.portal-header h1{font-size:clamp(1.5rem,3vw,2rem)}.portal-card{border:1px solid rgba(151,177,217,.2);border-radius:24px;background:rgba(11,27,48,.84);box-shadow:0 24px 70px rgba(0,0,0,.22);backdrop-filter:blur(18px)}.hero-card{display:grid;grid-template-columns:minmax(0,1fr) minmax(220px,.38fr);gap:32px;padding:clamp(24px,5vw,56px)}.hero-copy h2,.session-card h2,.access-card h2{max-width:720px;font-size:clamp(1.5rem,4vw,2.7rem);line-height:1.08}.hero-copy p:not(.eyebrow),.muted-copy{max-width:680px;color:#a9bad2;line-height:1.65}.eyebrow{margin:0 0 10px;color:#71d9c4;font-size:.72rem;font-weight:800;letter-spacing:.16em;text-transform:uppercase}.environment-badge,.dev-pill,.module-status{border-radius:999px;padding:7px 11px;color:#9ef3df;background:rgba(44,193,160,.13);font-size:.72rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase}.safety-panel{display:grid;align-content:center;gap:8px;padding:22px;border-radius:18px;background:rgba(4,15,29,.52);color:#b8c9df}.safety-panel strong{color:#f4fffc}.status-dot{width:12px;height:12px;border-radius:50%;background:#4de3bd;box-shadow:0 0 0 6px rgba(77,227,189,.12),0 0 24px rgba(77,227,189,.7)}.loading-card,.access-card,.session-card{margin-top:20px;padding:clamp(22px,4vw,38px)}.access-form{max-width:640px;margin-top:26px}.access-form label{display:block;margin-bottom:8px;color:#dce7f6;font-weight:700}.access-form input{width:100%;min-height:48px;border:1px solid rgba(151,177,217,.3);border-radius:12px;padding:0 14px;color:#f5f7fb;background:rgba(3,12,24,.72)}.access-form input:focus{outline:3px solid rgba(90,204,181,.25);border-color:#63d8be}.form-actions{justify-content:flex-start;flex-wrap:wrap;margin-top:16px}.primary-button,.secondary-button{min-height:42px;border:0;border-radius:10px;padding:0 16px;font-weight:800}.primary-button{color:#052219;background:#66e3c2}.secondary-button{color:#d5e4f4;border:1px solid rgba(151,177,217,.28);background:rgba(26,50,79,.6)}.error-message{margin:18px 0 0;color:#ffb1b1}.module-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin-top:28px}.module-card{min-height:168px;padding:20px;border:1px solid rgba(151,177,217,.16);border-radius:16px;background:rgba(4,15,29,.5)}.module-card h3{margin-top:18px;font-size:1.12rem}.module-card p{margin:10px 0 0;color:#9fb1c9;line-height:1.55}.module-open-button{min-height:38px;margin-top:16px;border:1px solid rgba(102,227,194,.45);border-radius:9px;padding:0 12px;color:#a5f5e1;background:rgba(52,182,153,.12);font-weight:800}.module-card-loading{margin-top:20px;padding:28px}.rentocom-dev-card{position:relative;margin-top:28px;padding:22px;border-color:rgba(102,227,194,.28);background:rgba(5,19,34,.82)}.rentocom-heading{align-items:flex-start}.rentocom-heading h2{font-size:clamp(1.2rem,3vw,1.8rem)}.rentocom-heading .muted-copy{margin:8px 0 0}.rentocom-toolbar{display:flex;align-items:center;flex-wrap:wrap;gap:10px 14px;margin-top:24px;padding:14px;border:1px solid rgba(151,177,217,.18);border-radius:14px;background:rgba(4,15,29,.52)}.rentocom-toolbar label,.rentocom-composer label{color:#dce7f6;font-size:.82rem;font-weight:800}.rentocom-toolbar select{min-height:40px;max-width:100%;border:1px solid rgba(151,177,217,.3);border-radius:9px;padding:0 10px;color:#f5f7fb;background:#0b1c31}.day-caption{color:#88a3c3;font-size:.78rem}.rentocom-feed{display:grid;gap:12px;min-height:180px;max-height:430px;margin-top:16px;overflow:auto;-webkit-overflow-scrolling:touch;padding:4px 4px 4px 0;overscroll-behavior:contain}.rentocom-message{max-width:82%;padding:13px 15px;border:1px solid rgba(151,177,217,.16);border-radius:14px 14px 14px 4px;background:rgba(24,48,78,.62)}.rentocom-message.is-client{justify-self:end;border-color:rgba(102,227,194,.25);border-radius:14px 14px 4px;background:rgba(30,92,87,.4)}.rentocom-message-meta{display:flex;align-items:center;justify-content:space-between;gap:12px;color:#b9cbe0;font-size:.76rem}.rentocom-message-meta time{color:#7890ad;font-size:.7rem}.rentocom-message p{margin:8px 0 0;color:#f0f5fb;line-height:1.5;white-space:pre-wrap;overflow-wrap:anywhere}.rentocom-composer{display:grid;gap:9px;margin-top:16px;padding-top:16px;border-top:1px solid rgba(151,177,217,.14)}.rentocom-composer textarea{width:100%;resize:vertical;border:1px solid rgba(151,177,217,.3);border-radius:10px;padding:12px;color:#f5f7fb;background:rgba(3,12,24,.72)}.rentocom-composer textarea:focus{outline:3px solid rgba(90,204,181,.25);border-color:#63d8be}.day-loading-overlay{position:absolute;z-index:4;top:0;right:0;bottom:0;left:0;display:grid;place-items:center;border-radius:inherit;background:rgba(3,12,24,.66);backdrop-filter:blur(8px)}@supports not (backdrop-filter: blur(8px)){.day-loading-overlay{background:rgba(3,12,24,.95)}}.day-loading-panel{display:grid;gap:10px;width:min(360px,calc(100% - 36px));padding:22px;border:1px solid rgba(102,227,194,.36);border-radius:16px;color:#effffc;background:#0b2035;box-shadow:0 18px 55px rgba(0,0,0,.3);text-align:center}.day-loading-panel span,.day-loading-panel small{color:#a6bad1}.day-loading-panel progress{width:100%;height:9px;accent-color:#66e3c2}.module-status{display:inline-block;padding:5px 8px;color:#b8c7dc;background:rgba(125,153,192,.12);font-size:.65rem}.portal-footer{flex-wrap:wrap;margin-top:20px;color:#758ba8;font-size:.78rem}@media(max-width:760px){.portal-shell{width:min(100% - 20px,600px);padding-top:20px}.portal-header,.section-heading{align-items:flex-start;flex-direction:column}.hero-card{grid-template-columns:1fr;gap:20px;padding:24px}.loading-card,.access-card,.session-card{padding:22px}.module-grid{grid-template-columns:1fr}.rentocom-dev-card{margin-inline:-10px;padding:16px}.rentocom-message{max-width:94%}.portal-footer{align-items:flex-start;flex-direction:column}}
