/* Rocas Suite — editorial operations UI */
:root{
  --rs-ink:#171b19;
  --rs-ink-2:#242a27;
  --rs-paper:#f2f0ea;
  --rs-surface:#fbfaf7;
  --rs-white:#fff;
  --rs-line:#d9d6ce;
  --rs-line-dark:#343a36;
  --rs-muted:#747a76;
  --rs-copper:#a9683f;
  --rs-green:#356b53;
  --rs-red:#a84e43;
  --rs-shadow:0 18px 50px rgba(23,27,25,.08);
  --ink:var(--rs-ink);
  --muted:var(--rs-muted);
  --line:var(--rs-line);
  --bg:var(--rs-paper);
  --green:var(--rs-green);
}
html{background:var(--rs-paper)}
body{background:var(--rs-paper);color:var(--rs-ink);font-family:Inter,ui-sans-serif,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;-webkit-font-smoothing:antialiased}
button,input,select,textarea{font:inherit}
.sidebar{width:236px;background:var(--rs-ink);padding:24px 18px 20px;border-right:1px solid #2b302d}
.side-brand{gap:13px;padding:0 8px 30px;font-size:15px;letter-spacing:.01em}
.side-brand .brand-mark{width:38px;height:38px;border:1px solid #5f665f;background:transparent!important;color:#f6f2e8!important;font-family:Georgia,serif;font-size:19px;font-weight:400}
.side-brand>span:last-child{display:flex;flex-direction:column;gap:2px}
.side-brand b{font-weight:640;color:#f8f6f0}
.side-brand small{color:#878e88;font-size:8px;letter-spacing:.18em}
.side-label{padding:15px 11px 7px;color:#747b75;font-size:8px;letter-spacing:.2em}
.side-nav{gap:3px}
.side-nav a{grid-template-columns:30px 1fr;padding:10px 11px;border:0!important;border-radius:6px;color:#aeb4af;font-size:12px;transition:background .15s,color .15s}
.side-nav a:hover{background:#242a27;color:#fff}
.side-nav a.active{background:#f1eee6;color:#171b19}
.side-nav i{width:22px;height:22px;display:grid;place-items:center;border:1px solid currentColor;border-radius:4px;font-size:7px;font-weight:800;letter-spacing:.05em;opacity:.72}
.side-nav a.active i{opacity:1}
.side-status{background:#1d221f;border:1px solid var(--rs-line-dark);border-radius:7px;padding:14px}
.side-status b{font-size:10px;font-weight:650;color:#eef1ed}
.side-status small{color:#8c948e;font-size:8px}
.side-status i{background:#75a98f}
.uptime-line{height:2px;background:#343a36}
.uptime-line span{background:#75a98f}
.workspace{margin-left:236px}
.workspace-bar{height:70px;padding:0 34px;background:rgba(251,250,247,.94);border-color:var(--rs-line);backdrop-filter:blur(12px)}
.workspace-bar>div:first-of-type{gap:1px}
.workspace-label{font-size:8px;letter-spacing:.15em;color:#888d89}
.workspace-bar>div:first-of-type>b{font-size:13px;font-weight:650}
.workspace-actions{gap:22px}
.sync-state{font-size:10px;color:#7b817d}
.sync-state i{background:#699b83}
.account{gap:10px;margin:0}
.account-avatar{width:30px;height:30px!important;display:grid!important;place-items:center;border-radius:50%;background:#e5e0d5;color:#393e3b;font-size:11px;font-weight:800}
.account-copy{font-size:11px;font-weight:650!important;line-height:1.25}
.account-copy small{font-size:8px}
.account-exit{border:0;background:none;padding:7px 0 7px 8px;color:#777e79;font-size:10px;cursor:pointer}
.account-exit:hover{color:var(--rs-copper)}
.mobile-menu{border:1px solid var(--rs-line)!important;border-radius:5px!important;padding:7px 10px!important;font-size:10px!important;color:var(--rs-ink)}
.workspace .container{max-width:1440px;padding:34px 36px 76px}
.page-head{align-items:center;margin-bottom:25px}
.page-head h1{font-family:"Iowan Old Style",Baskerville,Georgia,serif;font-weight:500;font-size:35px!important;letter-spacing:-.025em;margin:3px 0 7px}
.page-head p{font-size:12px;max-width:680px}
.eyebrow{color:var(--rs-copper)!important;font-size:8px;letter-spacing:.2em!important}
.btn{min-height:38px;padding:9px 15px;border-radius:5px;font-size:11px;font-weight:700}
.btn.primary{background:var(--rs-ink);color:#fff}
.btn.primary:hover{background:#323835}
.btn.ghost{background:transparent;border-color:var(--rs-line)}
.icon-btn{width:32px;height:32px;border-radius:5px;font-size:14px}
.alert{border:1px solid #cdded4;border-radius:6px;padding:12px 14px;font-size:11px}
.suite-home-head{min-height:250px;display:grid;grid-template-columns:minmax(0,1fr) 220px;align-items:end;gap:70px;padding:46px 50px;background:var(--rs-ink);color:#f7f4ec;position:relative;overflow:hidden}
.suite-home-head:after{content:"";position:absolute;inset:0 36% 0 auto;width:1px;background:#303632}
.suite-kicker{display:block;color:#bf8a68;font-size:9px;text-transform:uppercase;letter-spacing:.2em;margin-bottom:18px}
.suite-home-copy h1{max-width:720px;margin:0 0 18px;font-family:"Iowan Old Style",Baskerville,Georgia,serif;font-weight:400;font-size:clamp(38px,5vw,64px);line-height:.98;letter-spacing:-.04em}
.suite-home-copy p{max-width:610px;margin:0;color:#afb6b0;font-size:13px}
.suite-home-health{position:relative;z-index:1;display:flex;flex-direction:column;padding-left:30px;border-left:1px solid #3c433f}
.suite-home-health>span{font-size:8px;text-transform:uppercase;letter-spacing:.18em;color:#969e98}
.suite-home-health strong{font-family:"Iowan Old Style",Baskerville,Georgia,serif;font-size:58px;font-weight:400;line-height:1;margin:14px 0 7px}
.suite-home-health strong small{font-size:20px;color:#89918c}
.suite-home-health em{font-style:normal;font-size:9px;color:#b5bbb6}
.suite-section-intro{display:flex;align-items:end;justify-content:space-between;margin:32px 0 14px}
.suite-section-intro span{font-size:8px;text-transform:uppercase;letter-spacing:.18em;color:var(--rs-copper)}
.suite-section-intro h2{margin:4px 0 0;font-family:"Iowan Old Style",Baskerville,Georgia,serif;font-size:23px;font-weight:500}
.suite-section-intro time{font-size:9px;color:var(--rs-muted);letter-spacing:.1em}
.suite-overview{grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}
.suite-module-card{min-height:270px;padding:22px;background:var(--rs-surface);border-color:var(--rs-line);border-radius:0;display:flex;flex-direction:column;gap:0;transition:transform .18s,box-shadow .18s,background .18s}
.suite-module-card:before{display:none}
.suite-module-card:hover{transform:translateY(-4px);box-shadow:var(--rs-shadow);background:#fff}
.suite-module-card header{display:flex;align-items:center;justify-content:space-between}
.suite-module-card header>small{font-size:9px;color:#aaa9a3;letter-spacing:.1em}
.suite-module-icon{width:31px;height:31px;border:1px solid #c8c5bc;border-radius:4px;background:transparent!important;color:var(--rs-ink);font-size:8px;font-weight:800;letter-spacing:.08em}
.suite-card-copy{margin-top:48px}
.suite-card-copy h2{font-family:"Iowan Old Style",Baskerville,Georgia,serif;font-size:25px;font-weight:500;margin:0 0 6px}
.suite-card-copy p{margin:0;color:var(--rs-muted);font-size:10px}
.suite-module-card footer{display:flex;align-items:end;justify-content:space-between;margin-top:auto;padding-top:22px;border-top:1px solid var(--rs-line)}
.suite-module-card footer>span{display:flex;flex-direction:column}
.suite-module-card footer strong{font-size:25px;line-height:1;color:var(--rs-ink)}
.suite-module-card footer em{margin-top:5px;font-size:8px;color:var(--rs-muted);font-style:normal}
.suite-module-card footer b{font-size:9px;color:var(--rs-copper);font-weight:750;text-transform:uppercase;letter-spacing:.12em}
.suite-page-head{padding-bottom:20px;border-bottom:1px solid var(--rs-line)}
.status-refresh-form{margin:0}
.suite-kpis{gap:10px;margin-bottom:18px}
.suite-kpis article,.kpi-grid article,.quality-grid article{background:var(--rs-surface);border-color:var(--rs-line);border-radius:0;padding:19px;box-shadow:none}
.suite-kpis span,.suite-kpis small{font-size:9px}
.suite-kpis strong{font-family:"Iowan Old Style",Baskerville,Georgia,serif;font-weight:500;font-size:29px}
.suite-filter{margin-bottom:10px}
.suite-filter select,input,select,textarea{border:1px solid #cbc8c0;background:#fff;border-radius:4px;padding:10px}
.table-wrap,.suite-editor,.manage-card,.chart-card,.health-strip{background:var(--rs-surface);border-color:var(--rs-line);border-radius:0;box-shadow:none}
table{background:var(--rs-surface)}
th{background:#efede7;color:#757a76;font-size:8px;letter-spacing:.14em}
th,td{padding:14px 16px;border-color:#e1ded6}
td{font-size:11px}
.pill,.platform{background:#e9e6df;color:#565c58;border-radius:3px;font-size:8px;letter-spacing:.1em}
.status{font-size:9px}
.suite-status-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
.suite-status-card{min-height:285px;padding:23px;background:var(--rs-surface);border:1px solid var(--rs-line);border-top:1px solid var(--rs-line)}
.suite-status-card.is-up{border-top:1px solid var(--rs-line)}
.suite-status-card.is-down{box-shadow:inset 3px 0 0 var(--rs-red)}
.suite-status-head{font-size:9px;letter-spacing:.08em;text-transform:uppercase}
.suite-pulse{width:7px;height:7px;box-shadow:none}
.suite-brand{height:52px;margin:26px 0 14px}
.suite-status-card h2{font-family:"Iowan Old Style",Baskerville,Georgia,serif;font-size:24px;font-weight:500}
.suite-status-card>a{font-size:9px}
.suite-status-card dl{margin-top:27px}
.suite-status-card dt{font-size:8px;letter-spacing:.1em}
.suite-status-card dd{font-size:13px;font-weight:650}
.status-source{margin:17px 0 0;padding-top:12px;border-top:1px solid #e1ded6;color:var(--rs-muted);font-size:8px}
.suite-editor{padding:26px}
.suite-editor input,.suite-editor select,.suite-editor textarea{border-color:#cbc8c0;border-radius:4px;padding:11px}
.manage-card{padding:20px}
.site-card{border-color:var(--rs-line);background:var(--rs-surface);border-radius:0}
.portfolio-summary{background:var(--rs-ink);margin-bottom:24px}
.portfolio-summary>div{padding:20px 22px}
.chart-card{padding:20px}
.chart-card h3,.section-title h3{font-family:"Iowan Old Style",Baskerville,Georgia,serif;font-weight:500}
.date-filter{border-color:var(--rs-line)!important;background:var(--rs-surface)!important}
dialog{border-radius:8px;background:var(--rs-surface);box-shadow:0 30px 90px rgba(15,18,16,.3)}
dialog::backdrop{background:rgba(18,21,19,.58);backdrop-filter:blur(3px)}
.modal-form{padding:28px}
.login-shell{background:var(--rs-paper)}
.login-brand{background:var(--rs-ink)!important;padding:clamp(44px,8vw,120px)}
.login-brand .brand-mark{width:44px;height:44px;border:1px solid #666c67;background:transparent;color:#fff;margin-bottom:70px;font-family:Georgia,serif;font-size:20px;font-weight:400}
.login-brand h1{max-width:660px;font-family:"Iowan Old Style",Baskerville,Georgia,serif;font-size:clamp(46px,6vw,78px);font-weight:400;letter-spacing:-.045em}
.login-brand>p:last-child{font-size:14px;color:#aeb5af}
.login-panel{background:var(--rs-paper)}
.form-stack h2{font-family:"Iowan Old Style",Baskerville,Georgia,serif;font-size:36px;font-weight:500}
.form-stack input{border-color:#c9c6bd;background:#fff;border-radius:4px}
.form-stack .btn{min-height:44px}
@media(max-width:1160px){
  .suite-overview{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:980px){
  .sidebar{width:210px}
  .workspace{margin-left:210px}
  .suite-home-head{grid-template-columns:1fr 180px;padding:40px}
}
@media(max-width:760px){
  .sidebar{width:236px}
  .workspace{margin-left:0}
  .workspace-bar{padding:0 16px}
  .workspace .container{padding:24px 16px 60px}
  .suite-home-head{grid-template-columns:1fr;padding:34px 28px;gap:34px}
  .suite-home-head:after{display:none}
  .suite-home-health{padding:22px 0 0;border-left:0;border-top:1px solid #3c433f}
  .suite-home-copy h1{font-size:42px}
  .page-head{align-items:flex-start}
}
@media(max-width:620px){
  .suite-overview,.suite-status-grid{grid-template-columns:1fr}
  .suite-module-card{min-height:230px}
  .suite-card-copy{margin-top:34px}
  .suite-kpis{grid-template-columns:1fr 1fr}
  .workspace-actions{gap:8px}
  .sync-state,.account-copy{display:none!important}
  .account-avatar{display:grid!important}
  .login-brand{min-height:42vh;padding:34px}
  .login-brand .brand-mark{margin-bottom:34px}
  .login-brand h1{font-size:42px}
}
@media(max-width:420px){
  .suite-kpis{grid-template-columns:1fr}
  .suite-home-copy h1{font-size:36px}
}
