/* CONNECT Sistemas em PHP — SaaS independente • CSS isolado */
:root{--navy:#09244c;--blue:#096ab9;--cyan:#06b4df;--ink:#113760;--muted:#5c7994;--border:#d4e4f2;--soft:#f3f9ff;--shadow:0 17px 50px rgba(6,40,88,.07)}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:#f5f9ff;color:var(--ink);font-family:Arial,Helvetica,sans-serif;font-size:14px;line-height:1.55}
a{color:#075fad}a:hover{text-decoration:underline}a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid var(--cyan);outline-offset:3px}
.skip{position:absolute;top:-90px;left:12px;padding:10px 15px;background:#fff;z-index:100}.skip:focus{top:12px}
.top{background:#082448;border-bottom:3px solid #0c8fcf}.topinner{max-width:1320px;margin:auto;padding:15px 24px;display:flex;align-items:center;gap:25px;justify-content:space-between}
.brand{display:block;flex:0 0 auto}.brand img{display:block;width:min(230px,28vw);height:auto;max-height:78px;object-fit:contain}
.top nav{display:flex;align-items:center;gap:15px;flex-wrap:wrap}.top nav a{color:#e2f3ff;text-decoration:none;font-size:12px;font-weight:800;padding:8px 4px}
.top nav a:hover{color:#67dcff}.user-nav{display:flex;align-items:center;gap:9px;color:#ecf8ff}
.user-chip{background:#0f679d;border:1px solid #3595bc;padding:6px 9px;border-radius:999px;color:#fff;font-size:10px;font-weight:900;white-space:nowrap}
.user-label{font-size:11px;max-width:120px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.nav-logout button{background:none;border:1px solid #76bce2;color:#fff;border-radius:9px;padding:9px 11px;font-size:11px;font-weight:850;cursor:pointer}
.appmain{max-width:1320px;margin:auto;padding:36px 24px 68px;min-height:calc(100vh - 210px)}
.foot{background:#082448;color:#d9e9f7;display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap;padding:22px max(24px,calc((100vw - 1272px)/2));font-size:11px}
.foot p{margin:0;line-height:1.6}.foot a{color:#d9f7ff}
.eyebrow{font-size:11px;letter-spacing:.1em;font-weight:900;color:#048bd3}
.hero{background:linear-gradient(116deg,#092c5a,#0874c2);border-radius:19px;color:#fff;padding:clamp(23px,3.7vw,47px);margin:0 0 23px;box-shadow:var(--shadow)}
.hero .eyebrow{color:#8de4ff}.hero h1{color:#fff;font-size:clamp(27px,3.5vw,44px);line-height:1.15;letter-spacing:-.04em;margin:12px 0}
.hero p{max-width:800px;color:#dcefff;font-size:14px;line-height:1.7}
.hero-actions{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin-top:22px}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:46px;padding:11px 17px;border-radius:10px;font:inherit;font-weight:850;font-size:12px;text-decoration:none;border:1px solid transparent;cursor:pointer;max-width:100%;overflow-wrap:anywhere}
.btn:hover{text-decoration:none;filter:brightness(.97)}.primary{background:linear-gradient(100deg,#0b71c7,#04a6dd);color:#fff}.secondary{color:#0b659e;background:#fff;border-color:#bddbf0}
.panel,.formcard{padding:clamp(20px,2.5vw,29px);background:#fff;border-radius:17px;border:1px solid var(--border);box-shadow:var(--shadow);min-width:0;margin-bottom:20px}
.panel h2,.formcard h2{font-size:23px;line-height:1.2;color:#0b3c6d;margin:10px 0 15px}
.panel p,.formcard p{font-size:12px;line-height:1.75;color:#5b7890}
.statgrid,.pricegrid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin:20px 0}
.stat{background:#fff;border:1px solid var(--border);border-radius:15px;box-shadow:var(--shadow);padding:19px;min-width:0;display:grid;gap:8px;align-content:start}
.stat small{font-size:11px;color:#5f7c93;font-weight:900;letter-spacing:.04em}.stat b{font-size:clamp(21px,2.5vw,31px);color:#0a5da3;overflow-wrap:anywhere}
.stat span{color:#657e92;font-size:11px;line-height:1.5}
.twocol{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:19px;align-items:start}
.tablewrap{max-width:100%;overflow:auto;border:1px solid #d7e6f1;border-radius:12px;margin:13px 0}
table{border-collapse:collapse;width:100%;min-width:530px}th,td{padding:12px;text-align:left;font-size:11px;vertical-align:top;border-bottom:1px solid #e2ebf4}
th{background:#edf7ff;color:#0c517f;font-weight:900;letter-spacing:.01em}td{color:#365f7e;overflow-wrap:anywhere}
.empty-inline{padding:25px 16px;color:#6b8093;background:#f5faff;border:1px dashed #bfd9ee;border-radius:10px;font-size:12px}
.detail{display:grid;border:1px solid #d7e6f4;border-radius:13px;overflow:hidden}.detail>div{display:grid;grid-template-columns:1fr 1.2fr;gap:10px;border-bottom:1px solid #e8eff4;padding:14px;font-size:12px}
.detail dt{color:#5f7c94}.detail dd{margin:0;font-weight:800;color:#154a7a;overflow-wrap:anywhere}
.small,.hint{font-size:11px!important;color:#698399!important;line-height:1.65!important}
.textlink{display:inline-flex;margin:13px 0;font-size:12px;font-weight:850}
label{display:grid;gap:7px;font-weight:850;font-size:12px;color:#1c4b76;margin:15px 0}
input,select,textarea{display:block;width:100%;font:inherit;color:#173858;border:1px solid #c5dcee;background:#fff;border-radius:10px;min-height:45px;padding:11px 12px;resize:vertical}
button{font:inherit}form .btn{width:100%;margin-top:10px}.alert,.notice{padding:15px 17px;border-radius:11px;margin:14px 0 20px;font-size:12px;line-height:1.65}
.alert{color:#922b36;background:#fff3f3;border:1px solid #eec4c6}
.notice{color:#145b8c;background:#eaf8ff;border:1px solid #b9dff8}
.notice .break{overflow-wrap:anywhere;color:#104c7a;font-weight:850}
.login-layout{display:grid;grid-template-columns:minmax(0,1.08fr) minmax(320px,.92fr);align-items:center;gap:28px;min-height:580px}
.login-story{background:linear-gradient(120deg,#082549,#0c63b1);padding:clamp(24px,4vw,47px);border-radius:20px;color:#fff;min-height:420px;display:flex;flex-direction:column;justify-content:center}
.login-story .eyebrow{color:#84eaff}.login-story h1{font-size:clamp(30px,3.6vw,51px);line-height:1.1;letter-spacing:-.048em;margin:18px 0}
.login-story p{font-size:14px;line-height:1.8;color:#e2effe}
.story-chips{display:flex;gap:8px;flex-wrap:wrap;margin-top:20px}
.story-chips span{background:#ffffff21;border:1px solid #ffffff60;border-radius:99px;padding:7px 11px;font-size:11px}
.login-layout .formcard{margin:0}.standalone{max-width:600px;margin:65px auto}
.catalog-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:15px;margin-bottom:23px}
.catalogcard{background:#fff;border:1px solid var(--border);border-radius:16px;min-width:0;padding:20px}
.catalogcard h2{font-size:18px;color:#0e477a;line-height:1.3}.catalogcard p{font-size:12px;line-height:1.6;color:#607d90}
.ticketlink{display:inline-block;padding:9px 10px;margin:5px;background:#f1f9ff;border:1px solid #d8ebf8;border-radius:8px;font-size:11px;font-weight:800}
.message{border:1px solid #dce9f3;border-radius:11px;background:#f8fcff;padding:17px;margin:9px 0}
.message p{font-size:13px;color:#244f75;white-space:normal;overflow-wrap:anywhere;margin:0 0 7px}
.message small{font-size:10px;color:#68849a}.checklist{display:grid;gap:12px;list-style:none;padding:0;font-size:12px;color:#496d8a}.checklist b{color:#0b629c}
@media(max-width:1080px){.catalog-grid,.statgrid,.pricegrid{grid-template-columns:repeat(2,minmax(0,1fr))}.topinner{flex-wrap:wrap}}
@media(max-width:760px){.appmain{padding:22px 12px 45px}.login-layout,.twocol{grid-template-columns:1fr}.login-story{min-height:0}.brand img{width:195px}.topinner{padding:15px 12px}.top nav{order:3;width:100%;overflow:auto;flex-wrap:nowrap}.top nav a{white-space:nowrap}.foot{padding:19px 12px}.hero{border-radius:13px}}
@media(max-width:460px){.statgrid,.pricegrid,.catalog-grid{grid-template-columns:1fr}.detail>div{grid-template-columns:1fr;gap:4px}.hero-actions{flex-direction:column;align-items:stretch}.hero-actions .btn{width:100%}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}}

/* LIVE-308 — shortcuts for authenticated owner only */
.client-quick-links{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:10px;margin:0 0 22px}
.client-quick-links a{display:flex;align-items:center;padding:14px 12px;background:#fff;border:1px solid #d4e5f3;border-radius:12px;font-size:11px;line-height:1.5;font-weight:850;text-decoration:none;color:#0c639c}
.client-quick-links a:hover{background:#ebf7ff;border-color:#7fbfe9}
@media(max-width:1020px){.client-quick-links{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:610px){.client-quick-links{grid-template-columns:1fr 1fr}}
@media(max-width:390px){.client-quick-links{grid-template-columns:1fr}}

/* LIVE-309 — filtered MASTER orders */
.master-filters{display:flex;flex-wrap:wrap;gap:8px;margin:15px 0}
.master-filters a{display:inline-flex;align-items:center;min-height:42px;padding:9px 13px;border-radius:10px;border:1px solid #c7dfef;text-decoration:none;color:#13578b;font-size:12px;font-weight:850}
.master-filters a[aria-current=page]{background:#0c65a6;color:#fff;border-color:#0c65a6}

/* LIVE-310 — visible payment-status gates */
.gate-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:19px 0}
.gate-grid article{display:grid;align-content:start;gap:7px;background:#f3f9ff;border:1px solid #cee1f2;border-radius:12px;padding:16px}
.gate-grid b{color:#0b5189;font-size:14px}.gate-grid span{font-size:12px;line-height:1.6;color:#52758e}
@media(max-width:640px){.gate-grid{grid-template-columns:1fr}}
