/* ROHRVANTA Office v2: one responsive frontend, no WordPress dashboard UI. */
:root{--ro-bg:#f4f6f7;--ro-dark:#17232a;--ro-ink:#1e2b33;--ro-gold:#cba354;--ro-line:#e1e6e8;--ro-radius:16px}
html{scroll-behavior:smooth}
body.rv-office-page{margin:0!important;min-height:100vh;background:var(--ro-bg);color:var(--ro-ink);font-family:Inter,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;line-height:1.45;overflow-x:hidden}
.rv-office-page *{box-sizing:border-box}
.rv-office-page a{color:inherit}
.rv-office-page button,.rv-office-page input,.rv-office-page select,.rv-office-page textarea{font:inherit}
.rv-office-topbar{position:sticky;top:0;z-index:15;background:#172229;box-shadow:0 7px 28px #0b141820;color:#fff}
.rv-office-top-inner{max-width:1460px;padding:9px 24px;min-height:76px;margin:auto;display:flex;align-items:center;justify-content:space-between;gap:18px}
.rv-office-identity{display:flex;align-items:center;gap:12px}.rv-office-identity img{width:46px;height:46px;object-fit:contain}.rv-office-identity strong{font-size:21px;letter-spacing:-.055em}.rv-office-identity small{display:block;color:#cba354;letter-spacing:.25em;font-size:9px;font-weight:800;margin-top:-5px}
.rv-office-top-right{display:flex;align-items:center;gap:16px;font-size:13px;color:#d8e1e5}
.rv-office-top-right a,.rv-office-top-right button{background:transparent;border:1px solid #657076;color:#eef2f4;border-radius:9px;padding:10px 14px;font-size:12px;cursor:pointer;text-decoration:none;min-height:42px;display:inline-flex;align-items:center;justify-content:center}
.rv-office-top-right a:hover,.rv-office-top-right button:hover{background:#354049;border-color:#aeb9c0}
.rv-office-top-right form{margin:0}
.rv-office-body{max-width:1460px;padding:0 24px 40px;margin:auto}
.rv-office-body .rv-crm{margin:20px 0 40px;width:100%;max-width:none}
.rv-office-body .rv-crm-head{border-radius:18px 18px 0 0;padding:26px 30px}
.rv-office-body .rv-crm-tabs{position:relative;display:flex;flex-wrap:nowrap;overflow-x:auto;overscroll-behavior-x:contain;scrollbar-width:thin;padding:13px 15px;gap:6px;white-space:nowrap;border-radius:0 0 13px 13px}
.rv-office-body .rv-crm-tabs a{font-size:13px;min-height:43px;display:flex;align-items:center;flex:0 0 auto}
.rv-office-body .rv-crm-head .rv-crm-site{display:inline-flex}
.rv-office-body .rv-crm .rv-crm-panel{margin:15px 0;padding:21px}
.rv-office-body .rv-crm .rv-stat{min-width:0}
.rv-office-body .rv-crm .rv-form-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
.rv-office-body .rv-crm .rv-field input:not([type=checkbox]),.rv-office-body .rv-crm .rv-field select,.rv-office-body .rv-crm .rv-field textarea{font-size:15px;min-height:43px}
.rv-office-body .rv-crm .rv-crm-btn{background:linear-gradient(135deg,#e1bf77,#c59a45);color:#18232b;border-radius:10px;min-height:44px;cursor:pointer;box-shadow:none}
.rv-office-body .rv-crm .rv-crm-btn:hover{background:#edc780}
.rv-office-body .rv-crm .rv-crm-title{margin-bottom:6px}
.rv-office-body .rv-crm .rv-crm-entry summary{gap:10px;min-height:52px}
.rv-office-body .rv-crm .rv-crm-entry-body{padding:15px}
.rv-office-body .rv-crm .rv-crm-form{gap:12px}
.rv-office-body .rv-crm .rv-crm-form+.rv-crm-form{margin-top:16px}
.rv-office-page a:focus-visible,.rv-office-page input:focus-visible,.rv-office-page select:focus-visible,.rv-office-page button:focus-visible{outline:3px solid #d4b46f;outline-offset:3px}
/* Office login */
.rv-office-login-shell{min-height:100vh;display:grid;place-items:center;padding:30px 18px;background:radial-gradient(circle at 85% 17%,rgba(203,163,84,.18),transparent 28%),linear-gradient(145deg,#0b141a,#233640 62%,#111d25)}
.rv-office-login-card{width:min(100%,430px);border-radius:24px;padding:34px 34px 27px;background:#fff;box-shadow:0 26px 70px #010b1175;color:#202a30}
.rv-office-mark{text-align:center;height:110px;margin:-4px auto 6px}.rv-office-mark img{max-width:100%;width:110px;height:110px;object-fit:contain}
.rv-office-overline{text-align:center;font-size:10px;color:#ab8134;letter-spacing:.19em;font-weight:850;margin:4px 0 9px}
.rv-office-login-card h1{font-size:29px;letter-spacing:-.055em;text-align:center;line-height:1.2;margin:0 0 7px}
.rv-office-sub{font-size:13px;text-align:center;color:#697783;margin:0 0 24px}
.rv-office-login-form{display:grid;gap:9px}
.rv-office-login-form>label:not(.rv-office-remember){font-size:12px;font-weight:750;margin-top:5px}
.rv-office-login-form>input{padding:12px 13px;border:1px solid #d8e0e4;border-radius:11px;min-height:48px;background:#fafbfc;color:#18232b;max-width:100%;width:100%}
.rv-office-remember{font-size:12px;color:#687682;display:flex;align-items:center;gap:8px;margin:5px 0}
.rv-office-remember input{accent-color:#bd8f38}
.rv-office-login-form button{border:0;border-radius:12px;background:linear-gradient(145deg,#e4c27b,#c59b49);min-height:50px;padding:12px 17px;color:#152028;font-weight:850;cursor:pointer;margin-top:4px;display:flex;align-items:center;justify-content:space-between}
.rv-office-login-form button:hover{background:#e8c57e}
.rv-office-help{text-align:center;font-size:12px;color:#64727a;margin:19px 0 0}
.rv-office-help a{text-decoration:none;color:#64727a}.rv-office-help a:hover{text-decoration:underline}
.rv-office-alert{border:1px solid #eccac5;background:#fff4f2;border-radius:10px;color:#a03e31;padding:12px;font-size:12px;line-height:1.5}
@media(max-width:1050px){.rv-office-body .rv-crm .rv-crm-two-col{grid-template-columns:1fr}.rv-office-body .rv-crm .rv-stat-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:720px){
 .rv-office-top-inner{padding:11px 13px;min-height:65px}.rv-office-identity img{width:38px;height:38px}.rv-office-identity strong{font-size:19px}
 .rv-office-top-right{gap:8px}.rv-office-top-right>span,.rv-office-home{display:none!important}
 .rv-office-top-right button{padding:10px;font-size:12px}
 .rv-office-body{padding:0 10px 20px}.rv-office-body .rv-crm{margin:10px 0}
 .rv-office-body .rv-crm-head{padding:17px 14px}.rv-office-body .rv-crm-head p{font-size:11px}
 .rv-office-body .rv-crm .rv-stat-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
 .rv-office-body .rv-crm .rv-crm-panel{padding:14px 12px}
 .rv-office-body .rv-crm .rv-form-grid{grid-template-columns:1fr}
 .rv-office-body .rv-crm .rv-crm-tabs{padding:9px;gap:3px}
 .rv-office-body .rv-crm .rv-crm-tabs a{font-size:12px;padding:10px 11px;min-height:42px}
 .rv-office-body .rv-crm .rv-crm-brand{font-size:23px}.rv-office-body .rv-crm-head .rv-crm-site{display:none}
 .rv-office-body .rv-crm .rv-crm-table{min-width:650px}
 .rv-office-body .rv-crm .rv-stat strong{font-size:23px}
 .rv-office-body .rv-crm .rv-crm-entry summary{font-size:12px}
 .rv-office-login-card{padding:28px 21px 23px;border-radius:20px}
}
@media(max-width:370px){.rv-office-body .rv-crm .rv-stat-grid{grid-template-columns:1fr}.rv-office-body .rv-crm-head p{max-width:260px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
