*{box-sizing:border-box}body{margin:0;font:15px system-ui,Arial;background:#f4f6fb;color:#18243b}h1,h2,h3{margin-top:0}a{text-decoration:none;color:inherit}button{background:linear-gradient(135deg,#dc2626,#b91c1c);border:0;border-radius:9px;color:white;padding:11px 16px;cursor:pointer;font-weight:700}button:hover{filter:brightness(1.08)}.secondary{background:#e8edf5;color:#172747}.shell{display:flex;min-height:100vh}aside{background:#101b35;color:#fff;width:245px;flex-shrink:0;padding:25px 16px;display:flex;flex-direction:column;gap:18px}aside h2{font-size:22px;margin:0}span{color:#ef4444}aside small{color:#9baac3}nav{display:grid;gap:5px}nav a{padding:12px;border-radius:10px;color:#d5dff1}nav a:hover,nav a.selected{background:#293a59;color:white}aside form{margin-top:auto}.logout{width:100%}.content{padding:28px;flex:1;min-width:0}header{display:flex;justify-content:space-between;align-items:center;margin-bottom:25px;gap:12px}header small{color:#64748b}.panel{background:white;padding:22px;border-radius:15px;box-shadow:0 4px 18px #18243b0a;margin-bottom:20px}.cards{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}.cards strong{display:block;font-size:34px;color:#b91c1c;margin-top:10px}.form-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;align-items:end}label{display:grid;gap:7px;font-weight:600}input,select{width:100%;padding:11px;border:1px solid #d7deeb;border-radius:9px;font:inherit;background:white}.search{max-width:350px;margin-bottom:15px}.table-wrap{overflow-x:auto}table{border-collapse:collapse;width:100%}th,td{padding:12px;text-align:left;border-bottom:1px solid #e9edf3}th{color:#64748b;font-size:13px}.notice{padding:13px;background:#fff3d8;border-radius:9px;margin-bottom:18px}.login{min-height:100vh;display:grid;place-items:center;padding:20px}.login .panel{width:min(420px,100%);display:grid;gap:18px}.login h1{margin:0}.login p{margin:0;color:#64748b}@media(max-width:900px){.cards{grid-template-columns:repeat(2,1fr)}.form-grid{grid-template-columns:repeat(2,1fr)}}@media(max-width:650px){.shell{display:block}aside{width:100%;padding:16px}nav{grid-template-columns:repeat(3,1fr)}nav a{font-size:13px;text-align:center;padding:9px}.content{padding:15px}.form-grid,.cards{grid-template-columns:1fr}header{align-items:flex-start}header h1{font-size:23px}}
/* Etapa 3: navegação de clientes */
.nav-group{border-radius:10px}.nav-group summary{list-style:none;cursor:pointer;padding:12px;color:#d5dff1;border-radius:10px;font-weight:650}.nav-group summary::-webkit-details-marker{display:none}.nav-group summary::after{content:'⌄';float:right}.nav-group[open] summary{background:#293a59;color:white}.nav-sub{display:grid;gap:3px;padding:5px 0 7px 12px}.nav-sub a{font-size:13px;padding:10px 12px}.text-link{color:#b91c1c;text-decoration:underline}.button-link{display:inline-block;padding:9px 12px;border-radius:9px;background:#e8edf5;color:#172747;font-weight:700}.nav-group summary:focus-visible,.nav-sub a:focus-visible{outline:2px solid #fff;outline-offset:2px}@media(max-width:650px){nav{grid-template-columns:1fr 1fr}.nav-group{grid-column:1/-1}.nav-sub{grid-template-columns:1fr 1fr}.nav-sub a{text-align:left}}

/* Infinity Net — melhoria visual incremental, sem alterações em PHP ou banco */
:root{--in-navy:#101b35;--in-red:#dc2626;--in-border:#e3e9f2;--in-focus:#2563eb}
body{line-height:1.5;-webkit-font-smoothing:antialiased;background:#f3f6fb}
.shell aside{position:sticky;top:0;height:100vh;overflow-y:auto;scrollbar-width:thin;scrollbar-color:#52617d #101b35;box-shadow:4px 0 24px #101b3510}
aside h2{letter-spacing:.025em}aside nav{gap:6px}aside nav a,aside nav summary{transition:background-color .16s ease,color .16s ease,transform .16s ease}
aside nav a:hover,aside nav summary:hover{background:#263957;color:#fff}
aside nav a.selected{background:#dc2626;color:#fff;font-weight:750}
.nav-group[open] summary{background:#233452}.nav-sub{border-left:1px solid #43516c;margin-left:12px;padding-left:10px}
.content{max-width:1800px;width:100%;padding:clamp(18px,3vw,38px)}
.content header{padding-bottom:17px;border-bottom:1px solid var(--in-border)}
.content header h1{margin:3px 0 0;font-size:clamp(23px,2.3vw,32px);letter-spacing:-.025em}
.panel{border:1px solid #e9edf5;border-radius:16px;box-shadow:0 8px 24px #1727470a;padding:clamp(17px,2vw,25px)}
.panel h3{font-size:18px;letter-spacing:-.015em}
.cards article{position:relative;overflow:hidden;border-top:3px solid var(--in-red)}
.cards strong{font-size:clamp(28px,3vw,38px);line-height:1.2}
button,.button-link{transition:transform .15s ease,box-shadow .15s ease,filter .15s ease}
button:hover,.button-link:hover{transform:translateY(-1px);box-shadow:0 5px 14px #101b351b}
button:active,.button-link:active{transform:translateY(0)}
input,select{min-height:43px;transition:border-color .15s ease,box-shadow .15s ease}
input:focus,select:focus{outline:none;border-color:var(--in-focus);box-shadow:0 0 0 3px #2563eb20}
button:focus-visible,a:focus-visible,summary:focus-visible{outline:3px solid #60a5fa;outline-offset:3px}
.table-wrap{border:1px solid var(--in-border);border-radius:12px}
table{min-width:540px}th{background:#f8fafd;color:#475569;font-weight:750}tbody tr:hover{background:#f9fbff}td{vertical-align:middle}
.notice{border-left:4px solid #d97706;color:#713f12}
.login{background:radial-gradient(circle at top left,#e8eefb 0,transparent 55%),#f3f6fb}
.login .panel{box-shadow:0 18px 48px #101b3520}
@media(max-width:900px){.shell aside{width:220px}.content{padding:20px}}
@media(max-width:650px){.shell aside{position:relative;top:auto;height:auto;width:100%;overflow:visible;box-shadow:none}.content{padding:16px}.content header{flex-wrap:wrap}.panel{padding:16px}.cards{gap:12px}.nav-sub{grid-template-columns:1fr 1fr}table{min-width:540px}}
@media(prefers-reduced-motion:reduce){button,.button-link,aside nav a,aside nav summary,input,select{transition:none}}
