:root {
  --rm2-navy:#071d2b; --rm2-navy-2:#0d2a3b; --rm2-green:#42b96c; --rm2-green-dark:#278d4d;
  --rm2-bg:#f4f7f9; --rm2-surface:#fff; --rm2-text:#142331; --rm2-muted:#61707d; --rm2-border:#dce4e9;
  --rm2-shadow:0 18px 50px rgba(7,29,43,.12);
}
html,body{min-height:100%;background:var(--rm2-bg)!important;color:var(--rm2-text)!important;font-family:Inter,Segoe UI,Roboto,Arial,sans-serif!important}
.rm-skip-link{position:fixed!important;left:16px!important;top:-80px!important;z-index:99999!important;background:#fff!important;color:#071d2b!important;padding:12px 16px!important;border-radius:8px!important;box-shadow:var(--rm2-shadow)!important;text-decoration:none!important;transition:top .15s ease!important}
.rm-skip-link:focus{top:16px!important}
#rmMainContent{padding:0!important;min-height:100vh!important;background:var(--rm2-bg)!important}
#rmMainContent>div{max-width:none!important;padding:0!important}

.rm2-login{min-height:100vh;display:grid;grid-template-columns:minmax(340px,46%) 1fr;background:#fff}
.rm2-login-brand-panel{position:relative;display:flex;flex-direction:column;padding:42px 56px;color:#fff;background:radial-gradient(circle at 18% 18%,rgba(66,185,108,.12),transparent 30%),linear-gradient(145deg,#071d2b,#123f4d)}
.rm2-login-brand{display:flex;align-items:center;gap:12px;font-size:1.12rem;font-weight:800;letter-spacing:.01em}
.rm2-brand-mark{display:inline-grid;place-items:center;width:42px;height:42px;border-radius:12px;background:var(--rm2-green);color:#fff;font-size:.82rem;font-weight:900;box-shadow:0 8px 20px rgba(66,185,108,.25)}
.rm2-login-message{margin:auto 0;max-width:540px}.rm2-eyebrow{display:block;margin-bottom:15px;font-size:.73rem;font-weight:800;letter-spacing:.16em;color:var(--rm2-green)}
.rm2-login-message h2{font-size:clamp(2.3rem,4vw,4.5rem);line-height:1.04;margin:0 0 24px;font-weight:780;letter-spacing:-.045em}.rm2-login-message p{font-size:1.05rem;line-height:1.7;color:#cfdae0;max-width:500px}
.rm2-feature-list{display:grid;gap:18px;margin-top:30px;color:#e7eff2;font-size:.92rem}.rm2-feature-list span{display:grid;gap:4px}.rm2-feature-list strong{color:#fff;font-size:.95rem}.rm2-feature-list small{color:#c9d7dd;font-size:.82rem;line-height:1.45}.rm2-login-brand-footer{margin:0;color:#9db0ba;font-size:.78rem}
.rm2-login-form-panel{display:grid;place-items:center;padding:40px;background:linear-gradient(180deg,#fff,#f8fafb)}
.rm2-login-card{width:min(100%,460px)}.rm2-mobile-brand{display:none;align-items:center;gap:10px;margin-bottom:36px}.rm2-login-card h1{font-size:2.6rem;line-height:1.05;margin:0 0 12px;font-weight:780;letter-spacing:-.035em;color:var(--rm2-text)}
.rm2-login-intro{margin:0 0 32px;color:var(--rm2-muted);font-size:1rem;line-height:1.55}.rm2-field-group{margin-bottom:18px}.rm2-field-group label{display:block;margin-bottom:8px;font-size:.85rem;font-weight:750;color:#2b3b47}
.rm2-field-group input{width:100%;height:54px;border:1px solid var(--rm2-border);border-radius:12px;padding:0 16px;background:#fff;color:var(--rm2-text);font-size:1rem;outline:none;box-shadow:0 1px 2px rgba(7,29,43,.03);box-sizing:border-box}
.rm2-field-group input:focus{border-color:var(--rm2-green);box-shadow:0 0 0 4px rgba(66,185,108,.15)}
.rm2-login-actions>div{width:100%}.rm2-primary-button,.rm2-secondary-button{width:100%;min-height:52px;border-radius:12px;font-weight:800;font-size:.95rem;cursor:pointer;transition:transform .15s ease,box-shadow .15s ease}
.rm2-primary-button{border:0;background:var(--rm2-green);color:#fff;box-shadow:0 10px 24px rgba(66,185,108,.22)}.rm2-primary-button:hover{background:var(--rm2-green-dark);transform:translateY(-1px)}
.rm2-secondary-button{margin-top:10px;background:#fff;border:1px solid var(--rm2-border);color:var(--rm2-text)}
.rm2-account-note{display:grid;gap:4px;margin-top:28px;padding:16px 18px;border:1px solid #dfe9e3;border-radius:12px;background:#f5faf7;color:var(--rm2-muted);font-size:.86rem}.rm2-account-note strong{color:#24372c}
.rm2-security-note{margin:22px 0 0;text-align:center;color:#89949d;font-size:.75rem;line-height:1.45}

.camera-gateway-viewport-housing,.property-portal-viewport-housing{min-height:100vh!important;background:linear-gradient(180deg,#f7fafb,#eef3f5)!important;padding:42px 20px!important;box-sizing:border-box!important}
.camera-gateway-central-card,.property-selector-central-card{max-width:620px!important;border:0!important;border-radius:18px!important;background:#fff!important;box-shadow:var(--rm2-shadow)!important;padding:34px!important}
.camera-gateway-main-title,.property-portal-main-title{font-size:2rem!important;color:var(--rm2-text)!important;letter-spacing:-.025em!important}.camera-gateway-meta-subtitle,.property-portal-meta-subtitle{color:var(--rm2-muted)!important}
#btnExecuteCameraConnection,.btn-action-accent,.btn-trigger-play{background:var(--rm2-green)!important;color:#fff!important;border:0!important;border-radius:10px!important;min-height:44px!important;padding:10px 18px!important;font-weight:800!important;box-shadow:0 8px 18px rgba(66,185,108,.18)!important}
#btnExecuteSystemSessionSignOut{color:var(--rm2-muted)!important;font-weight:700!important}
.recordings-panel-layout{background:var(--rm2-bg)!important;padding:28px!important;max-width:1320px!important}.settings-tactical-card{border:1px solid var(--rm2-border)!important;border-radius:16px!important;box-shadow:0 12px 34px rgba(7,29,43,.07)!important;padding:22px!important}
.recordings-panel-layout .btn-settings-action-pill{min-height:42px!important;border-radius:10px!important;font-size:.82rem!important;padding:10px 16px!important}.recordings-panel-layout .settings-diagnostics-summary-row{gap:10px!important;margin-bottom:18px!important}
.recordings-panel-layout .settings-diagnostics-summary-row button{background:#fff!important;color:#42515d!important;border:1px solid var(--rm2-border)!important}.recordings-panel-layout .settings-diagnostics-summary-row button.active{background:var(--rm2-navy)!important;color:#fff!important;border-color:var(--rm2-navy)!important}
.btn-trigger-play{min-width:108px!important;font-size:.86rem!important}.dense-action-pill{min-height:40px!important;border-radius:9px!important;padding:9px 14px!important;font-weight:750!important}
@media(max-width:850px){.rm2-login{grid-template-columns:1fr}.rm2-login-brand-panel{display:none}.rm2-login-form-panel{padding:28px 22px}.rm2-mobile-brand{display:flex}.rm2-login-card h1{font-size:2.2rem}.recordings-panel-layout{padding:16px!important}}


/* Alpha 1.3: isolate the sign-in route from inherited 440/640px workspace clamps. */
html, body { width:100%; min-width:0; }
#rmMainContent {
    width:100% !important;
    max-width:none !important;
    padding:0 !important;
    margin:0 !important;
    overflow:visible !important;
}
#rmMainContent > div {
    width:100% !important;
    max-width:none !important;
    height:auto !important;
    max-height:none !important;
    margin:0 !important;
    padding:0 !important;
    overflow:visible !important;
    display:block !important;
}
#divContentHolder_SIGN_IN,
body #divContentHolder_SIGN_IN,
main #divContentHolder_SIGN_IN,
div[id="divContentHolder_SIGN_IN"] {
    position:relative !important;
    width:100% !important;
    max-width:none !important;
    min-width:0 !important;
    height:auto !important;
    min-height:100vh !important;
    max-height:none !important;
    margin:0 !important;
    padding:0 !important;
    overflow:visible !important;
    transform:none !important;
    perspective:none !important;
    display:block;
}
#divContentHolder_SIGN_IN > .rm2-login {
    width:100% !important;
    max-width:none !important;
    min-width:0 !important;
    margin:0 !important;
    overflow:hidden !important;
}
@media (max-width: 850px) {
    #divContentHolder_SIGN_IN,
    #divContentHolder_SIGN_IN > .rm2-login { min-height:100vh !important; }
    .rm2-login-form-panel { min-height:100vh; box-sizing:border-box; }
}

/* ========================================================================== 
   Rural Monitor 2.0 Alpha 2 — actual application shell and media redesign
   ========================================================================== */
body:not(.rm-auth-view){padding-left:280px!important;padding-top:72px!important;background:#f4f7f9!important;overflow-x:hidden}
.rm-app-sidebar{position:fixed;inset:0 auto 0 0;width:280px;z-index:12000;background:linear-gradient(180deg,#071d2b 0%,#0a2434 100%);color:#fff;display:flex;flex-direction:column;padding:24px 18px;box-sizing:border-box;box-shadow:12px 0 40px rgba(7,29,43,.10)}
.rm-sidebar-brand{display:flex;align-items:center;gap:12px;padding:0 8px 24px;border-bottom:1px solid rgba(255,255,255,.10)}.rm-sidebar-brand>span:last-child{display:grid}.rm-sidebar-brand strong{font-size:1.15rem}.rm-sidebar-brand small{font-size:.7rem;color:#a9bbc4;letter-spacing:.12em}.rm-sidebar-mark{display:grid;place-items:center;width:44px;height:44px;border-radius:12px;background:#42b96c;font-weight:900;box-shadow:0 8px 20px rgba(66,185,108,.25)}
.rm-sidebar-nav{display:grid;gap:8px;padding:28px 0}.rm-sidebar-nav button{display:flex;align-items:center;gap:14px;width:100%;min-height:52px;padding:0 16px;border:0;border-radius:10px;background:transparent;color:#d9e4e9;font-weight:700;text-align:left;cursor:pointer}.rm-sidebar-nav button span:first-child{width:24px;font-size:1.25rem;text-align:center}.rm-sidebar-nav button:hover,.rm-sidebar-nav button.active{background:linear-gradient(90deg,#2d8d43,#3aa653);color:#fff;box-shadow:0 8px 22px rgba(45,141,67,.22)}
.rm-sidebar-plan{margin-top:auto;display:grid;gap:7px;padding:18px;border:1px solid rgba(255,255,255,.09);border-radius:14px;background:rgba(255,255,255,.05)}.rm-sidebar-plan span{font-size:.65rem;color:#70d38e;letter-spacing:.15em;font-weight:800}.rm-sidebar-plan small{color:#b6c6ce}.rm-sidebar-signout{margin-top:18px;min-height:48px;border:0;border-top:1px solid rgba(255,255,255,.10);background:transparent;color:#fff;text-align:left;font-weight:700;padding:18px 10px 0;cursor:pointer}
.rm-app-header{position:fixed;left:280px;right:0;top:0;height:72px;z-index:11000;background:rgba(255,255,255,.96);backdrop-filter:blur(10px);border-bottom:1px solid #dce4e9;display:flex;align-items:center;justify-content:space-between;padding:0 30px;box-sizing:border-box}.rm-app-header>div:first-child{display:grid}.rm-app-header strong{font-size:1.2rem;color:#142331}.rm-app-header small{color:#71808c}.rm-header-status{display:flex;align-items:center;gap:10px;color:#53636f;font-size:.85rem}.rm-header-status button{border:1px solid #dce4e9;background:#fff;border-radius:9px;padding:8px 12px;font-weight:700}.rm-status-dot{width:9px;height:9px;border-radius:50%;background:#42b96c;box-shadow:0 0 0 4px rgba(66,185,108,.13)}
body.rm-auth-view{padding:0!important}.rm-auth-view .rm-app-sidebar,.rm-auth-view .rm-app-header{display:none!important}.rm-auth-view #rmMainContent{min-height:100vh!important}
#rmMainContent{min-height:calc(100vh - 72px)!important;width:100%!important;padding:28px!important;background:#f4f7f9!important;box-sizing:border-box!important}.rm-main-inner{width:100%!important;max-width:1480px!important;margin:0 auto!important;padding:0!important;box-sizing:border-box!important}#rmMainContent>div{max-width:1480px!important}
.workspace-center-panel.wrapper-showing{width:100%!important;max-width:none!important;min-height:0!important;align-items:flex-start!important;justify-content:center!important;padding:0!important;box-sizing:border-box!important}
#globalAppBottomNavbar{display:none!important}

/* Playback: large, readable and no wasted postage-stamp layout */
#divContentHolder_LIBRARY_PLAY{width:100%!important;max-width:none!important}.player-panel-layout{width:min(100%,1180px)!important;max-width:1180px!important;margin:0 auto!important;padding:24px!important;background:#fff!important;border:1px solid #dce4e9!important;border-radius:18px!important;box-shadow:0 18px 50px rgba(7,29,43,.10)!important;box-sizing:border-box!important}.player-header-context-bar{min-height:54px!important;margin-bottom:16px!important}.btn-player-utility{min-height:44px!important;padding:0 16px!important;border:1px solid #dce4e9!important;border-radius:10px!important;background:#fff!important;color:#142331!important;font-weight:800!important}.player-telemetry-badge{padding:9px 12px!important;border-radius:8px!important;background:#edf3f5!important;color:#41515e!important;font-size:.75rem!important}.player-canvas-render-container{width:100%!important;aspect-ratio:16/9!important;min-height:0!important;max-height:68vh!important;border-radius:14px!important;overflow:hidden!important;background:linear-gradient(135deg,#102332,#234936)!important;border:1px solid #19313d!important}.unselectable-feed-canvas{width:100%!important;height:100%!important;display:block!important}.player-timeline-tracker-housing{padding:16px 2px 8px!important}.player-scrubber-bar{width:100%!important;height:8px!important;accent-color:#42b96c!important;cursor:pointer}.telemetry-time-labels{font-size:.8rem!important;color:#677783!important;margin-top:6px!important}.player-action-control-footer{display:grid!important;gap:12px!important;margin-top:8px!important}.player-control-row{display:grid!important;grid-template-columns:repeat(4,minmax(0,1fr))!important;gap:12px!important}.player-control-row.row-secondary-utilities{grid-template-columns:repeat(3,minmax(0,1fr))!important}.btn-player-action-node{min-height:52px!important;padding:11px 14px!important;border:1px solid #d7e0e5!important;border-radius:11px!important;background:#f7fafb!important;color:#243541!important;font-size:.88rem!important;font-weight:800!important;letter-spacing:0!important;opacity:1!important;box-shadow:none!important}.btn-player-action-node:hover{background:#edf3f5!important}.btn-player-action-node.btn-core-play{background:#2f914d!important;border-color:#2f914d!important;color:#fff!important;box-shadow:0 10px 22px rgba(47,145,77,.22)!important}.btn-player-action-node:disabled{opacity:.45!important;color:#52616c!important}

/* Recordings: spacious content card and obvious text actions */
.recordings-panel-layout{width:100%!important;max-width:1320px!important;margin:0 auto!important;padding:0!important;background:transparent!important}.recordings-panel-layout>.settings-tactical-card,.recordings-panel-layout .settings-tactical-card{background:#fff!important;border:1px solid #dce4e9!important;border-radius:18px!important;box-shadow:0 14px 40px rgba(7,29,43,.08)!important;padding:24px!important}.recordings-panel-layout .settings-diagnostics-summary-row{display:flex!important;flex-wrap:wrap!important;gap:10px!important}.recordings-panel-layout .btn-settings-action-pill{min-height:46px!important;border-radius:10px!important;padding:10px 18px!important;font-size:.84rem!important;font-weight:800!important}.clips-feed-vertical-stack{gap:10px!important;overflow:visible!important}.recording-row,.clip-list-row,.recording-list-item{border:1px solid #e0e7eb!important;border-radius:12px!important;background:#fff!important;padding:12px!important;box-shadow:0 4px 14px rgba(7,29,43,.04)!important}.btn-trigger-play{min-width:120px!important;min-height:44px!important;background:#2f914d!important;color:#fff!important;font-size:.88rem!important}

/* Settings and source cards */
.camera-gateway-viewport-housing,.property-portal-viewport-housing{padding:0!important;background:transparent!important;min-height:0!important}.camera-gateway-central-card,.property-selector-central-card{max-width:900px!important;width:100%!important;border-radius:18px!important;padding:30px!important}.settings-master-layout,.camera-menu-master-layout{width:100%!important;max-width:1180px!important;margin:0 auto!important}

@media(max-width:980px){body:not(.rm-auth-view){padding-left:88px!important}.rm-app-sidebar{width:88px;padding:18px 12px}.rm-sidebar-brand>span:last-child,.rm-sidebar-nav button span:last-child,.rm-sidebar-plan,.rm-sidebar-signout{display:none}.rm-sidebar-brand{justify-content:center;padding:0 0 20px}.rm-sidebar-nav button{justify-content:center;padding:0}.rm-sidebar-nav button span:first-child{width:auto}.rm-app-header{left:88px}.player-control-row,.player-control-row.row-secondary-utilities{grid-template-columns:repeat(2,minmax(0,1fr))!important}}
@media(max-width:650px){body:not(.rm-auth-view){padding-left:0!important;padding-top:64px!important}.rm-app-sidebar{left:0;right:0;top:auto;bottom:0;width:100%;height:68px;display:block;padding:8px 10px}.rm-sidebar-brand,.rm-sidebar-plan,.rm-sidebar-signout{display:none}.rm-sidebar-nav{grid-template-columns:repeat(4,1fr);padding:0;gap:5px}.rm-sidebar-nav button{min-height:52px}.rm-sidebar-nav button span:last-child{display:none}.rm-app-header{left:0;height:64px;padding:0 16px}.rm-header-status span:not(.rm-status-dot){display:none}#rmMainContent{padding:14px 12px 84px!important}.player-panel-layout{padding:14px!important;border-radius:12px!important}.player-control-row,.player-control-row.row-secondary-utilities{grid-template-columns:1fr!important}.rm2-login-form-panel{padding:24px 18px!important}}
