/* Rivia Optical CRM design system — v1.0.7 */
:root{--rocrm-red:#ED1A3B;--rocrm-red-dark:#c9122e;--rocrm-red-soft:#fff1f3;--rocrm-white:#fff;--rocrm-ink:#191919;--rocrm-muted:#626262;--rocrm-line:#e7e7e9;--rocrm-surface:#f7f7f8;--rocrm-radius:14px;--rocrm-shadow:0 12px 36px rgba(25,25,25,.06)}
.rocrm-shell{max-width:1200px;margin:32px auto;padding:0 20px;color:var(--rocrm-ink);font-size:15px;line-height:1.65;font-family:inherit}.rocrm-shell *{box-sizing:border-box}.rocrm-shell h1,.rocrm-shell h2,.rocrm-shell h3,.rocrm-shell h4{color:var(--rocrm-ink);line-height:1.2;letter-spacing:-.025em}.rocrm-shell h1{font-size:clamp(32px,5vw,54px)}.rocrm-shell h2{font-size:clamp(23px,3vw,32px)}.rocrm-shell p{color:var(--rocrm-muted)}.rocrm-shell a{color:var(--rocrm-red);text-underline-offset:3px}.rocrm-shell a:hover{color:var(--rocrm-red-dark)}
.rocrm-button,.rocrm-shell button[type=submit],.rocrm-shell input[type=submit]{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:44px;border:1px solid var(--rocrm-red);border-radius:8px;background:var(--rocrm-red);color:#fff!important;text-decoration:none;padding:11px 19px;font-size:14px;font-weight:750;line-height:1.2;cursor:pointer;transition:background .18s ease,transform .18s ease,border-color .18s ease}.rocrm-button:hover,.rocrm-shell button[type=submit]:hover,.rocrm-shell input[type=submit]:hover{background:var(--rocrm-red-dark);border-color:var(--rocrm-red-dark);color:#fff!important;transform:translateY(-1px)}.rocrm-button-light{background:#fff;color:var(--rocrm-red)!important}.rocrm-button-light:hover{background:var(--rocrm-red-soft);color:var(--rocrm-red-dark)!important}
.rocrm-notice{border:1px solid #ffd2da;border-left:4px solid var(--rocrm-red);background:var(--rocrm-red-soft);color:var(--rocrm-ink);padding:13px 16px;margin:0 0 20px;border-radius:8px}.rocrm-form-card{max-width:540px;margin:36px auto;padding:clamp(22px,4vw,34px);border:1px solid var(--rocrm-line);border-radius:var(--rocrm-radius);background:#fff;box-shadow:var(--rocrm-shadow)}.rocrm-form-card h1{font-size:30px;margin:0 0 10px}.rocrm-form-card label{display:block;font-size:13px;font-weight:700;color:var(--rocrm-ink);margin:16px 0}.rocrm-form-card label input:not([type=checkbox]),.rocrm-form-card label input[type=password],.rocrm-form-card label input[type=email],.rocrm-form-card label input[type=tel]{display:block;width:100%;min-height:44px;padding:11px 12px;margin-top:7px;border:1px solid #d5d5d8;border-radius:8px;background:#fff;color:var(--rocrm-ink);font:inherit}.rocrm-form-card input:focus,.rocrm-data-form input:focus,.rocrm-data-form select:focus,.rocrm-data-form textarea:focus{outline:2px solid #ED1A3B33;border-color:var(--rocrm-red)}.rocrm-form-card .rocrm-check{display:flex;gap:9px;align-items:center}.rocrm-small,.rocrm-form-card small{font-size:12px;color:var(--rocrm-muted)}
.rocrm-hero{position:relative;overflow:hidden;padding:clamp(32px,6vw,70px);border-radius:20px;background:linear-gradient(125deg,#fff5f6 0%,#fff 65%);border:1px solid #ffe0e5;margin-bottom:28px}.rocrm-hero:after{content:"";position:absolute;width:250px;height:250px;border:42px solid rgba(237,26,59,.055);border-radius:50%;right:-75px;top:-90px;pointer-events:none}.rocrm-hero>*{position:relative;z-index:1}.rocrm-eyebrow{color:var(--rocrm-red)!important;font-size:12px;font-weight:850;letter-spacing:2px;text-transform:uppercase;margin:0 0 12px}.rocrm-hero h1{max-width:820px;margin:8px 0 18px}.rocrm-hero p{max-width:740px;font-size:clamp(16px,2vw,19px);margin:0 0 24px}.rocrm-hero .rocrm-button{margin:0 8px 8px 0}.rocrm-feature-grid,.rocrm-plan-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;margin:28px 0}.rocrm-feature-grid article,.rocrm-plan{padding:24px;border:1px solid var(--rocrm-line);border-radius:var(--rocrm-radius);background:#fff;box-shadow:0 4px 16px rgba(25,25,25,.025);transition:transform .18s ease,box-shadow .18s ease}.rocrm-feature-grid article:hover,.rocrm-plan:hover{transform:translateY(-3px);box-shadow:var(--rocrm-shadow)}.rocrm-feature-grid article:before{content:"";display:block;width:36px;height:4px;border-radius:4px;background:var(--rocrm-red);margin-bottom:18px}.rocrm-feature-grid h2,.rocrm-feature-grid h3{font-size:19px;margin:0 0 10px}.rocrm-feature-grid p{margin:0}.rocrm-plan h2,.rocrm-plan h3{margin:0 0 12px}.rocrm-price{font-size:34px!important;font-weight:850;color:var(--rocrm-ink)!important;letter-spacing:-1px;margin:12px 0}.rocrm-price small{font-size:13px;font-weight:500;letter-spacing:0;color:var(--rocrm-muted)}.rocrm-plan>a:not(.rocrm-button){display:inline-flex;margin-top:10px;font-weight:750;text-decoration:none}.rocrm-plan .rocrm-button{margin-top:12px}
.rocrm-workspace{display:grid;grid-template-columns:250px minmax(0,1fr);border:1px solid var(--rocrm-line);border-radius:14px;overflow:hidden;min-height:580px;background:#fff;box-shadow:var(--rocrm-shadow)}.rocrm-sidebar{background:#fff;border-right:1px solid var(--rocrm-line);padding:18px 12px}.rocrm-brand{font-size:16px;font-weight:850;padding:10px 12px 22px;color:var(--rocrm-ink)}.rocrm-brand b{color:var(--rocrm-red)}.rocrm-sidebar a{display:block;padding:10px 12px;margin:2px 0;border-radius:7px;text-decoration:none;color:#292929;font-size:14px;font-weight:600}.rocrm-sidebar a.active,.rocrm-sidebar a:hover{background:var(--rocrm-red);color:#fff}.rocrm-main{min-width:0;padding:clamp(16px,3vw,30px);background:var(--rocrm-surface)}.rocrm-main header{display:flex;justify-content:space-between;align-items:center;gap:16px;margin-bottom:24px;padding-bottom:18px;border-bottom:1px solid var(--rocrm-line)}.rocrm-main header h1{margin:4px 0;font-size:26px}.rocrm-main header small{color:var(--rocrm-muted)}.rocrm-metrics,.rocrm-cards{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin:20px 0}.rocrm-metric,.rocrm-card,.rocrm-panel{background:#fff;border:1px solid var(--rocrm-line);border-radius:10px;padding:18px}.rocrm-metric span,.rocrm-card span{display:block;font-size:13px;color:var(--rocrm-muted)}.rocrm-metric strong,.rocrm-card strong{display:block;font-size:27px;line-height:1.2;margin-top:8px;color:var(--rocrm-ink)}.rocrm-panel{margin:16px 0}.rocrm-panel h2{margin-top:0}.rocrm-data-form{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin-top:16px}.rocrm-data-form label{display:flex;flex-direction:column;gap:6px;font-size:13px;font-weight:700}.rocrm-data-form input,.rocrm-data-form select,.rocrm-data-form textarea{box-sizing:border-box;width:100%;min-height:42px;padding:10px 11px;border:1px solid #d5d5d8;border-radius:7px;background:#fff;color:var(--rocrm-ink);font:inherit}.rocrm-data-form textarea{min-height:80px}.rocrm-data-form button{align-self:end;justify-self:start}.rocrm-table-wrap{width:100%;overflow-x:auto;border:1px solid var(--rocrm-line);border-radius:8px;background:#fff}.rocrm-table{width:100%;border-collapse:collapse;font-size:13px}.rocrm-table th,.rocrm-table td{padding:12px;text-align:left;vertical-align:top;border-bottom:1px solid var(--rocrm-line)}.rocrm-table th{background:#f7f7f8;color:#252525;font-weight:750}.rocrm-table tr:last-child td{border-bottom:0}.rocrm-legal{max-width:850px;margin:0 auto;padding:clamp(22px,4vw,42px);background:#fff;border:1px solid var(--rocrm-line);border-radius:var(--rocrm-radius)}.rocrm-legal h1{font-size:clamp(28px,4vw,38px)}.rocrm-legal h2{font-size:22px;margin-top:30px}.rocrm-shell :focus-visible{outline:2px solid var(--rocrm-red);outline-offset:3px}
@media(max-width:900px){.rocrm-workspace{grid-template-columns:1fr}.rocrm-sidebar{border-right:0;border-bottom:1px solid var(--rocrm-line);display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}.rocrm-brand{grid-column:1/-1}.rocrm-feature-grid,.rocrm-plan-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.rocrm-metrics,.rocrm-cards{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:600px){.rocrm-shell{padding:0 12px;margin:20px auto}.rocrm-feature-grid,.rocrm-plan-grid,.rocrm-data-form{grid-template-columns:1fr}.rocrm-metrics,.rocrm-cards{grid-template-columns:1fr}.rocrm-hero{padding:28px 20px;border-radius:14px}.rocrm-main{padding:14px}.rocrm-main header{align-items:flex-start;flex-direction:column}.rocrm-sidebar{grid-template-columns:1fr}.rocrm-form-card{margin:20px auto}.rocrm-button{width:100%;margin-right:0!important}}


/* Plugin-owned page chrome: only generated Rivia Optical CRM pages are affected. */
body.rocrm-managed-page #masthead,
body.rocrm-managed-page header.site-header,
body.rocrm-managed-page .site-header,
body.rocrm-managed-page #colophon,
body.rocrm-managed-page footer.site-footer,
body.rocrm-managed-page .site-footer,
body.rocrm-managed-page .wp-site-blocks > header,
body.rocrm-managed-page .wp-site-blocks > footer,
body.rocrm-managed-page .elementor-location-header,
body.rocrm-managed-page .elementor-location-footer,
body.rocrm-managed-page .site-branding + .primary-navigation,
body.rocrm-managed-page .entry-header,
body.rocrm-managed-page .page-header,
body.rocrm-managed-page .wp-block-post-title,
body.rocrm-managed-page .ast-breadcrumbs-wrapper,
body.rocrm-managed-page .breadcrumbs,
body.rocrm-managed-page nav.rank-math-breadcrumb,
/* Remove theme-generated navigation/page clouds and default footer widgets on CRM pages. */
body.rocrm-managed-page .wp-block-navigation,
body.rocrm-managed-page nav.primary-navigation,
body.rocrm-managed-page .primary-navigation,
body.rocrm-managed-page .main-navigation,
body.rocrm-managed-page #site-navigation,
body.rocrm-managed-page .wp-block-page-list,
body.rocrm-managed-page .wp-block-pages-list,
body.rocrm-managed-page .widget_pages,
body.rocrm-managed-page .widget_nav_menu,
body.rocrm-managed-page .wp-block-page-list a,
body.rocrm-managed-page .wp-block-template-part:has(> nav),
body.rocrm-managed-page .entry-footer,
body.rocrm-managed-page .post-navigation,
body.rocrm-managed-page .wp-block-post-navigation-link,
body.rocrm-managed-page .wp-block-query-pagination,
body.rocrm-managed-page .wp-block-site-title,
body.rocrm-managed-page .wp-block-site-tagline,
body.rocrm-managed-page .wp-block-template-part:has(> footer),
body.rocrm-managed-page .footer-widgets,
body.rocrm-managed-page .footer-widget-area,
body.rocrm-managed-page .site-info,
body.rocrm-managed-page .powered-by-wordpress {display:none!important}
body.rocrm-managed-page,body.rocrm-managed-page #page,body.rocrm-managed-page .site,body.rocrm-managed-page .wp-site-blocks{margin:0!important;padding:0!important;min-height:100%;}
body.rocrm-managed-page #content,body.rocrm-managed-page .site-content,body.rocrm-managed-page .content-area,body.rocrm-managed-page .site-main,body.rocrm-managed-page main.wp-block-group{margin:0!important;padding:0!important;max-width:none!important;width:100%!important;}
body.rocrm-managed-page .entry-content,body.rocrm-managed-page .wp-block-post-content{margin:0!important;padding:0!important;max-width:none!important;}
body.rocrm-managed-page .rocrm-shell{width:min(100% - 40px,1440px);max-width:1440px;margin:0 auto;padding:0 0 26px;}
.rocrm-chrome{position:relative;z-index:20;margin:0 0 28px;}
.rocrm-site-header{display:flex;align-items:center;justify-content:space-between;gap:24px;padding:18px 24px;background:#fff;border:1px solid #eeeef0;border-radius:0 0 14px 14px;box-shadow:0 8px 24px rgba(25,25,25,.045);}
.rocrm-site-brand{display:inline-flex;align-items:center;gap:10px;flex-shrink:0;color:var(--rocrm-ink)!important;text-decoration:none!important;font-size:17px;font-weight:850;line-height:1.15;}
.rocrm-site-brand>span:last-child{display:flex;flex-direction:column;gap:3px;}
.rocrm-site-brand b{color:var(--rocrm-red);}
.rocrm-site-brand small{font-size:10px;font-weight:600;color:var(--rocrm-muted);letter-spacing:.035em;}
.rocrm-brand-mark{display:inline-flex;align-items:center;justify-content:center;width:42px;height:42px;border-radius:11px;background:var(--rocrm-red);color:#fff;font-size:23px;font-weight:900;box-shadow:0 5px 12px rgba(237,26,59,.2);}
.rocrm-public-nav,.rocrm-header-actions{display:flex;align-items:center;gap:18px;}
.rocrm-public-nav a,.rocrm-header-link{color:#333!important;text-decoration:none!important;font-size:13px;font-weight:700;white-space:nowrap;}
.rocrm-public-nav a:hover,.rocrm-header-link:hover{color:var(--rocrm-red)!important;}
.rocrm-header-actions{gap:14px;}
.rocrm-header-actions .rocrm-button{min-height:40px;padding:10px 16px;font-size:13px;white-space:nowrap;}
.rocrm-user-chip{display:inline-flex;align-items:center;max-width:190px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;border:1px solid var(--rocrm-line);border-radius:999px;padding:8px 12px;background:#fafafa;font-size:12px;font-weight:700;color:#333;}
.rocrm-site-footer{margin-top:36px;padding:30px 26px 16px;background:#fff;border:1px solid var(--rocrm-line);border-radius:14px;}
.rocrm-footer-main{display:grid;grid-template-columns:minmax(220px,1.5fr) minmax(150px,.8fr) minmax(220px,1fr);gap:36px;padding-bottom:24px;}
.rocrm-footer-brand p,.rocrm-footer-contact p{max-width:380px;margin:14px 0 0;color:var(--rocrm-muted);font-size:13px;}
.rocrm-footer-links{display:flex;flex-direction:column;align-items:flex-start;gap:10px;}
.rocrm-footer-links strong,.rocrm-footer-contact strong{font-size:13px;color:var(--rocrm-ink);margin-bottom:4px;}
.rocrm-footer-links a,.rocrm-footer-contact a{font-size:13px;font-weight:650;text-decoration:none;}
.rocrm-footer-bottom{display:flex;justify-content:space-between;gap:12px;padding-top:15px;border-top:1px solid var(--rocrm-line);color:var(--rocrm-muted);font-size:11px;}
.rocrm-app-header{border-radius:14px;}
.rocrm-header-logout{width:auto!important;margin:0!important;}
@media(max-width:1000px){.rocrm-site-header{flex-wrap:wrap;gap:14px;padding:16px}.rocrm-public-nav{order:3;width:100%;justify-content:center;flex-wrap:wrap;padding-top:8px;border-top:1px solid var(--rocrm-line)}.rocrm-header-actions{margin-left:auto}.rocrm-footer-main{grid-template-columns:1fr 1fr}.rocrm-footer-brand{grid-column:1/-1}}
@media(max-width:600px){body.rocrm-managed-page .rocrm-shell{width:calc(100% - 24px);padding-bottom:16px}.rocrm-chrome{margin-bottom:18px}.rocrm-site-header{align-items:flex-start;padding:13px;gap:13px}.rocrm-site-brand{font-size:15px}.rocrm-brand-mark{width:36px;height:36px;font-size:20px}.rocrm-public-nav{justify-content:flex-start;gap:10px 16px}.rocrm-public-nav a,.rocrm-header-link{font-size:12px}.rocrm-header-actions{width:100%;justify-content:space-between;gap:10px}.rocrm-header-actions .rocrm-button{width:auto!important}.rocrm-user-chip{max-width:120px}.rocrm-footer-main{grid-template-columns:1fr;gap:24px}.rocrm-footer-brand{grid-column:auto}.rocrm-footer-bottom{flex-direction:column}.rocrm-site-footer{padding:22px 16px 14px}}

/* Permanently suppress the active theme's default header and footer on CRM-managed pages.
   Keep the plugin-owned .rocrm-site-header and .rocrm-site-footer visible. */
body.rocrm-managed-page #masthead,
body.rocrm-managed-page #colophon,
body.rocrm-managed-page #header:not(.rocrm-site-header),
body.rocrm-managed-page #footer:not(.rocrm-site-footer),
body.rocrm-managed-page header.site-header,
body.rocrm-managed-page footer.site-footer,
body.rocrm-managed-page .site-header:not(.rocrm-site-header),
body.rocrm-managed-page .site-footer:not(.rocrm-site-footer),
body.rocrm-managed-page .elementor-location-header,
body.rocrm-managed-page .elementor-location-footer,
body.rocrm-managed-page .wp-site-blocks > header,
body.rocrm-managed-page .wp-site-blocks > footer,
body.rocrm-managed-page .flatsome-header-wrapper,
body.rocrm-managed-page .header-wrapper:not(.rocrm-site-header),
body.rocrm-managed-page .footer-wrapper:not(.rocrm-site-footer) {
    display: none !important;
    visibility: hidden !important;
    height: 0 !important;
    min-height: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
    overflow: hidden !important;
}
body.rocrm-managed-page { padding-top: 0 !important; }
