/* RentOS 3.14.3: shared notice presentation. Native OS prompts retain their own UI. */
body .rentos-brand-image{display:block;width:100%;height:100%;object-fit:contain;border-radius:22%;filter:none}
body .logo-mark:has(>.rentos-brand-image),body .pa-brand-mark:has(>.rentos-brand-image){background:transparent;box-shadow:none;overflow:hidden}
body.rentos-refresh .app-identity img,body.rentos-refresh .mobile-app-identity img{filter:none;object-fit:contain;border-radius:22%;height:auto;aspect-ratio:1}
body .toast-container{--notice-bg:#fffdfb;--notice-ink:#0b3025;--notice-muted:#66756e;--notice-line:#b6d4c5;--notice-tile:#dcefe4;--notice-accent:#075137;position:fixed;left:auto;right:max(22px,env(safe-area-inset-right));bottom:calc(22px + env(safe-area-inset-bottom));width:min(430px,calc(100% - 32px));max-height:calc(100vh - 48px);max-height:calc(100dvh - 48px);overflow-y:auto;overscroll-behavior:contain;display:flex;flex-direction:column;gap:12px;padding:2px;pointer-events:none;z-index:500}
html.dark-mode body:not(.login-premium) .toast-container{--notice-bg:#172e24;--notice-ink:#f1faf5;--notice-muted:#bdd0c4;--notice-line:#4d7c65;--notice-tile:#264c39;--notice-accent:#9bdfb7}
body .toast-container .app-toast{position:relative;flex:none;display:grid;grid-template-columns:46px minmax(0,1fr);align-items:start;gap:12px;min-width:0;padding:17px 16px;background:var(--notice-bg)!important;color:var(--notice-ink)!important;border:1px solid var(--notice-line);border-left:1px solid var(--notice-line);border-radius:21px;box-shadow:0 10px 32px #001b1426;-webkit-backdrop-filter:none;backdrop-filter:none;pointer-events:auto}
body .app-toast .toast-icon{display:grid;place-items:center;width:46px;height:46px;margin:0;background:var(--notice-tile);color:var(--notice-accent);border:0;border-radius:13px;box-shadow:none;font-size:22px}
body .app-toast.warning .toast-icon{color:#885916;background:#fbefd9}
body .app-toast.error .toast-icon{color:#a33531;background:#fbe8e5}
body .app-toast .toast-copy{min-width:0;padding-top:1px}
body .app-toast .toast-copy>strong{display:block;padding-right:24px;font-size:16px;font-weight:800;line-height:1.4;color:var(--notice-ink);overflow-wrap:anywhere}
body .app-toast .toast-copy p{margin:4px 22px 0 0;font-size:13px;line-height:1.55;color:var(--notice-muted);overflow-wrap:anywhere}
body .app-toast .toast-close{position:absolute;right:6px;top:5px;display:grid;place-items:center;width:44px;height:44px;min-height:44px;padding:0;border:0;border-radius:12px;background:transparent;color:var(--notice-muted);box-shadow:none;font-size:20px;cursor:pointer}
body .app-toast .toast-actions{display:flex;align-items:center;justify-content:flex-end;flex-wrap:wrap;gap:4px 8px;margin:10px 0 0}
body .app-toast .toast-action,body .app-toast .toast-dismiss{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:44px;margin:0;padding:10px 15px;border:1px solid transparent;border-radius:11px;background:#075137;color:#fff;font:inherit;font-size:13px;font-weight:700;line-height:1.35;white-space:normal;text-align:center;box-shadow:none;cursor:pointer}
body .app-toast .toast-dismiss{background:transparent;color:var(--notice-accent);padding-left:5px;padding-right:5px}
body .app-toast.install-toast .toast-action::before{content:'';width:16px;height:16px;flex:none;background:currentColor;-webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M12 3v12m-5-5 5 5 5-5M4 15v6h16v-6'/%3E%3C/svg%3E") center/contain no-repeat;mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M12 3v12m-5-5 5 5 5-5M4 15v6h16v-6'/%3E%3C/svg%3E") center/contain no-repeat}
body .app-toast button:focus-visible,body .confirm-dialog button:focus-visible,body .login-phone-help summary:focus-visible{outline:3px solid #55a981;outline-offset:2px}
/* Inline notices, session messages and the bell use the same card and icon language. */
body.rentos-refresh .notice-card,body.rentos-refresh .notification-item,body .session-expired-login,body .alert,body .pa-alert{border:1px solid #bed6c8;border-radius:16px;background:#f6fbf7;color:#163f2d;box-shadow:none;overflow-wrap:anywhere}
body.rentos-refresh .notice-card>span,body.rentos-refresh .notification-icon{display:grid;place-items:center;flex:none;width:38px;height:38px;border-radius:11px;background:#dcefe4;color:#12583b}
body.rentos-refresh .notice-card.warning>span,body.rentos-refresh .notification-icon.warning{background:#fbefd9;color:#885916}
body.rentos-refresh .notice-card.error>span,body.rentos-refresh .notification-icon.error{background:#fbe8e5;color:#a33531}
body.rentos-refresh .notification-item{padding:16px;margin-bottom:10px}
body .alert.error,body .pa-alert.error{background:#fff7f4;border-color:#e7b9ae;color:#92362d}
html.dark-mode body.rentos-refresh .notice-card,html.dark-mode body.rentos-refresh .notification-item{background:#1c3327;border-color:#416450;color:#ecf8ef}
body .confirm-dialog{padding:26px;border:1px solid #bed6c8;border-radius:24px;background:#fffdfb;color:#163f2d;max-height:calc(100vh - 32px);max-height:calc(100dvh - 32px);overflow-y:auto}
body .confirm-dialog .confirm-symbol{width:52px;height:52px;border-radius:15px;background:#fbe8e5;color:#a33531}
body .confirm-dialog p{color:#66756e;overflow-wrap:anywhere}
body .confirm-dialog .confirm-actions{gap:10px}
body .confirm-dialog .confirm-actions button{min-height:48px;border-radius:12px;border:1px solid #bed6c8;background:#f4faf6;color:#16442e}
body .confirm-dialog .confirm-actions [data-confirm-accept]{background:#a33531;border-color:#a33531;color:white}
html.dark-mode body .confirm-dialog{background:#172e24;border-color:#4d7c65;color:#f1faf5}
html.dark-mode body .confirm-dialog p{color:#bdd0c4}
@media(max-width:680px){
 body .toast-container{left:max(12px,env(safe-area-inset-left));right:max(12px,env(safe-area-inset-right));bottom:calc(18px + env(safe-area-inset-bottom));width:auto;max-height:calc(100vh - 48px);max-height:calc(100dvh - 48px)}
 body.rentos-refresh .toast-container{bottom:calc(96px + env(safe-area-inset-bottom));max-height:calc(100vh - 126px);max-height:calc(100dvh - 126px)}
 body .toast-container .app-toast{padding:14px 12px;gap:10px;grid-template-columns:42px minmax(0,1fr);border-radius:20px}
 body .app-toast .toast-icon{width:42px;height:44px;border-radius:12px;font-size:21px}
 body .app-toast .toast-copy>strong{font-size:15px}
 body .app-toast .toast-copy p{font-size:12px}
 body .app-toast .toast-action,body .app-toast .toast-dismiss{font-size:12px;padding:10px 12px}
}
@media(hover:hover) and (pointer:fine){
 body .app-toast .toast-action:hover{background:#126848}
 body .app-toast .toast-dismiss:hover,body .app-toast .toast-close:hover{background:#75ad8a20}
 body .confirm-dialog .confirm-actions button:hover{filter:brightness(.93)}
 body .login-phone-help summary:hover{text-decoration:underline}
}
@media(prefers-reduced-motion:reduce){body .app-toast{transition:none;animation:none}}
@media(forced-colors:active){body .toast-container .app-toast,body .confirm-dialog{border:2px solid CanvasText}body .app-toast .toast-action{border:1px solid ButtonText}}

body .app-toast.ios-install-toast .toast-action::before{display:none}

/* The existing modal forms share the same outline and close controls. */
body.rentos-refresh .dialog{border:1px solid #bed6c8}
body.rentos-refresh .dialog-head-icon{background:#dcefe4;color:#12583b;border-radius:13px}
body.rentos-refresh .dialog-close{background:#edf5ef;color:#466f57}
html.dark-mode body.rentos-refresh .dialog{border-color:#416450}
html.dark-mode body.rentos-refresh .dialog-head-icon,html.dark-mode body.rentos-refresh .dialog-close{background:#264c39;color:#d5efdf}
/* The company app keeps its bottom navigation through 900px, including tablets. */
@media(min-width:681px) and (max-width:900px){
 body.rentos-refresh .toast-container{bottom:calc(96px + env(safe-area-inset-bottom));max-height:calc(100vh - 126px);max-height:calc(100dvh - 126px)}
}
