:root{
  --bg:#080b1f;
  --panel:#111832;
  --panel2:#16213f;
  --soft:#1d2b51;
  --text:#f6f8ff;
  --muted:#9da9cd;
  --line:#2c3f69;
  --green:#22c55e;
  --blue:#38bdf8;
  --purple:#8b5cf6;
  --yellow:#f59e0b;
  --red:#ef4444;
  --pink:#ec4899;
  --orange:#f97316;
}
*{box-sizing:border-box}
body{
  margin:0;
  font-family:Inter,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif;
  background:
    radial-gradient(circle at top left, rgba(139,92,246,.24), transparent 36%),
    radial-gradient(circle at top right, rgba(34,197,94,.14), transparent 30%),
    linear-gradient(135deg,#080b1f,#101633 55%,#070b1a);
  color:var(--text);
  min-height:100vh;
}
button,input,select,textarea{font:inherit}
button{cursor:pointer}
a{color:inherit}
.hidden{display:none!important}
.auth{
  min-height:100vh;
  display:grid;
  place-items:center;
  padding:22px;
}
.auth-card{
  width:min(1080px,100%);
  display:grid;
  grid-template-columns:1.1fr .9fr;
  gap:18px;
}
.hero,.login-card,.card{
  background:rgba(17,24,50,.88);
  border:1px solid rgba(255,255,255,.09);
  border-radius:24px;
  box-shadow:0 22px 60px rgba(0,0,0,.32);
}
.hero{padding:34px;overflow:hidden;position:relative}
.hero:before{
  content:"";position:absolute;right:-90px;top:-90px;width:240px;height:240px;border-radius:50%;
  background:linear-gradient(135deg,rgba(34,197,94,.7),rgba(56,189,248,.35));filter:blur(3px)
}
.logo{
  width:58px;height:58px;border-radius:18px;
  background:linear-gradient(135deg,var(--green),var(--blue));
  display:grid;place-items:center;color:#06101c;font-weight:900;font-size:22px;
}
.hero h1{font-size:44px;line-height:1.02;margin:22px 0 12px;letter-spacing:-1.4px}
.hero p{color:#dbeafe;font-size:17px;line-height:1.55;max-width:620px}
.feature-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:12px;margin-top:24px}
.feature{background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.08);border-radius:16px;padding:14px;color:#e8efff}
.login-card{padding:26px}
.tabs{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-bottom:16px}
.tab{background:#0b1228;color:var(--muted);border:1px solid var(--line);border-radius:14px;padding:11px}
.tab.active{background:linear-gradient(135deg,var(--green),#16a34a);color:#03130a;font-weight:900;border-color:var(--green)}
.form{display:none}.form.active{display:block}
label{display:block;font-size:12px;color:var(--muted);margin:0 0 7px}
input,select,textarea{
  width:100%;background:#081126;border:1px solid #30446e;color:#fff;border-radius:13px;
  padding:12px 13px;outline:none;
}
input:focus,select:focus,textarea:focus{border-color:var(--blue);box-shadow:0 0 0 3px rgba(56,189,248,.12)}
textarea{min-height:100px;resize:vertical}
.row{display:grid;grid-template-columns:repeat(2,1fr);gap:12px}
.field{margin-bottom:12px}
.btn{
  border:1px solid #32466f;background:#172442;color:#fff;border-radius:14px;
  padding:11px 14px;text-decoration:none;display:inline-flex;align-items:center;gap:8px;justify-content:center;
}
.btn:hover{filter:brightness(1.1)}
.btn.primary{background:linear-gradient(135deg,var(--green),#16a34a);color:#03130a;font-weight:900;border-color:var(--green)}
.btn.info{background:linear-gradient(135deg,var(--blue),#0284c7);color:#03131e;font-weight:900;border-color:var(--blue)}
.btn.danger{background:rgba(239,68,68,.18);color:#fecaca;border-color:rgba(239,68,68,.44)}
.btn.warn{background:rgba(245,158,11,.18);color:#fde68a;border-color:rgba(245,158,11,.45)}
.btn.ghost{background:transparent}
.full{width:100%}
.muted{color:var(--muted)}
.small{font-size:12px;color:var(--muted);line-height:1.45}
.app{display:grid;grid-template-columns:286px 1fr;min-height:100vh}
.sidebar{
  background:rgba(5,10,25,.74);
  border-right:1px solid rgba(255,255,255,.08);
  padding:18px;
  position:sticky;top:0;height:100vh;
}
.brand{
  display:flex;gap:12px;align-items:center;padding:12px;border-radius:20px;
  background:linear-gradient(135deg,rgba(34,197,94,.18),rgba(56,189,248,.10));
  border:1px solid rgba(255,255,255,.08);margin-bottom:14px;
}
.brand h2{font-size:16px;margin:0}.brand small{color:var(--muted)}
.nav{display:grid;gap:7px}
.nav button{
  width:100%;text-align:left;background:transparent;border:1px solid transparent;color:var(--muted);
  padding:13px;border-radius:15px;display:flex;gap:10px;align-items:center;
}
.nav button:hover,.nav button.active{background:rgba(255,255,255,.07);border-color:rgba(255,255,255,.08);color:#fff}
.userbox{
  position:absolute;left:18px;right:18px;bottom:18px;
  background:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.09);border-radius:18px;padding:13px;
}
main{padding:22px;overflow:auto}
.topbar{display:flex;justify-content:space-between;align-items:flex-start;gap:14px;margin-bottom:18px}
.topbar h1{margin:0;font-size:30px;letter-spacing:-.8px}
.actions{display:flex;gap:10px;flex-wrap:wrap}
.card{padding:18px;margin-bottom:16px}
.grid{display:grid;gap:14px}
.g2{grid-template-columns:repeat(2,1fr)}
.g3{grid-template-columns:repeat(3,1fr)}
.g4{grid-template-columns:repeat(4,1fr)}
.g5{grid-template-columns:repeat(5,1fr)}
.metric{position:relative;overflow:hidden}
.metric:after{
  content:"";position:absolute;right:-35px;top:-35px;width:110px;height:110px;border-radius:50%;
  background:rgba(56,189,248,.10);
}
.metric small{color:var(--muted);display:block;margin-bottom:8px}
.metric strong{font-size:25px;letter-spacing:-.7px}
.metric span{display:block;color:var(--muted);font-size:12px;margin-top:6px}
.table-wrap{overflow:auto}
table{width:100%;border-collapse:collapse}
th,td{padding:12px;border-bottom:1px solid rgba(255,255,255,.08);vertical-align:top;text-align:left;font-size:14px}
th{font-size:12px;color:#cbd5e1;text-transform:uppercase;background:rgba(255,255,255,.05);letter-spacing:.03em}
.pill,.deadline{
  display:inline-flex;border-radius:999px;padding:6px 10px;font-size:12px;font-weight:800;border:1px solid transparent;white-space:nowrap
}
.st-criacao{background:rgba(139,92,246,.18);color:#ddd6fe;border-color:var(--purple)}
.st-aprovada{background:rgba(20,184,166,.18);color:#ccfbf1;border-color:#14b8a6}
.st-impressao{background:rgba(59,130,246,.18);color:#bfdbfe;border-color:#3b82f6}
.st-calandra{background:rgba(249,115,22,.18);color:#fed7aa;border-color:var(--orange)}
.st-costura{background:rgba(236,72,153,.18);color:#fbcfe8;border-color:var(--pink)}
.st-disponivel{background:rgba(34,197,94,.18);color:#bbf7d0;border-color:var(--green)}
.st-entregue,.st-pago{background:rgba(34,197,94,.22);color:#dcfce7;border-color:var(--green)}
.st-debito{background:rgba(239,68,68,.22);color:#fecaca;border-color:var(--red)}
.st-finalizada{background:rgba(148,163,184,.18);color:#e2e8f0;border-color:#94a3b8}
.st-cancelado{background:rgba(239,68,68,.18);color:#fecaca;border-color:var(--red)}
.d-green{background:rgba(34,197,94,.18);color:#bbf7d0;border-color:var(--green)}
.d-yellow{background:rgba(245,158,11,.18);color:#fde68a;border-color:var(--yellow)}
.d-red{background:rgba(239,68,68,.20);color:#fecaca;border-color:var(--red)}
.d-gray{background:rgba(148,163,184,.14);color:#e2e8f0;border-color:#94a3b8}
.item{
  border:1px solid rgba(255,255,255,.10);
  background:rgba(255,255,255,.035);
  border-radius:18px;padding:14px;margin:12px 0;
}
.item-head{display:grid;grid-template-columns:1.25fr 1fr .7fr .8fr .8fr auto;gap:10px;align-items:end}
.size-grid{display:grid;grid-template-columns:repeat(8,1fr);gap:8px;margin:8px 0 12px}
.size-grid input{text-align:center;padding:8px}
.size-title{font-size:12px;color:#dbeafe;font-weight:800;margin:12px 0 4px}
.mock-row{display:grid;grid-template-columns:170px 1fr;gap:14px;margin-top:12px}
.mock-box{height:150px;border:1px dashed #415987;border-radius:14px;display:grid;place-items:center;overflow:hidden;color:var(--muted);font-size:12px;background:#081126;text-align:center}
.mock-box img{max-width:100%;max-height:150px}
.check-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}
.check-grid label{border:1px solid #31466f;background:#081126;border-radius:14px;padding:12px;color:#fff;font-size:14px}
.check-grid input{width:auto;margin-right:8px}
.file-card{border:1px solid #31466f;background:#081126;border-radius:15px;padding:13px;margin-top:10px}
.file-card b{display:block;margin-bottom:4px}
.chart-card{height:350px}
.chart-card canvas{max-height:280px}
.big-text{min-height:170px}
.setup-alert{
  border:1px solid rgba(245,158,11,.45);background:rgba(245,158,11,.14);
  color:#fde68a;border-radius:16px;padding:14px;margin-bottom:16px
}
.empty{padding:28px;text-align:center;border:1px dashed #435b88;border-radius:18px;color:var(--muted)}
.print-area{display:none}

/* Ficha impressa */
.ficha{width:1120px;background:white;color:#061a55;font-family:Arial,Helvetica,sans-serif;border:2px solid #143a78;border-radius:6px;padding:7px;margin:0 auto}
.ficha h1{text-align:center;color:#062e78;font-weight:900;font-size:29px;letter-spacing:.4px;line-height:1;margin:0 0 8px;text-transform:uppercase}
.f-top{display:grid;grid-template-columns:1.45fr 1.75fr .72fr .55fr .55fr;gap:7px;margin-bottom:8px}
.f-box{border:2px solid #a0b0ce;border-radius:6px;padding:7px;min-height:62px;background:#fff}
.f-line{display:grid;grid-template-columns:104px 1fr;gap:5px;align-items:center;margin-bottom:3px}
.f-lab{font-size:10px;font-weight:900;color:#183a7b;text-transform:uppercase}
.f-val{font-size:15px;font-weight:900;color:#000;border-bottom:1px solid #9fb0ce;min-height:18px;padding-left:3px}
.f-row{display:grid;grid-template-columns:245px 1fr 128px;border:2px solid #85a5de;border-radius:6px;overflow:hidden;min-height:143px;margin-bottom:8px}
.f-row.green{border-color:#91cc94}.f-row.wind{border-color:#eda25d}
.f-mock{padding:6px;border-right:2px solid #85a5de}.green .f-mock{border-color:#91cc94}.wind .f-mock{border-color:#eda25d}
.f-mock-title{font-size:10px;font-weight:900;text-transform:uppercase;color:#163a7b;margin-bottom:4px}
.f-img{height:116px;display:grid;place-items:center;overflow:hidden}.f-img img{max-width:100%;max-height:116px}
.f-head{display:grid;grid-template-columns:6fr 5fr 7fr;border-bottom:1px solid #9fb0ce;text-align:center;font-size:11px;font-weight:900;text-transform:uppercase}
.f-head div{padding:8px 3px;border-right:1px solid #9fb0ce}.f-head div:last-child{border-right:0}.f-head .fem{background:#ffe5df}
.f-sizes{display:grid;grid-template-columns:repeat(18,1fr)}
.f-size{border-right:1px solid #b3c0da;min-height:95px;text-align:center;padding:6px 1px 0}.f-size:last-child{border-right:0}
.f-size small{display:block;font-size:7px;font-weight:900;color:#071a55;min-height:18px}
.sq{width:23px;height:23px;border:2px solid #8093bd;border-radius:3px;margin:12px auto 0;display:grid;place-items:center;color:#000;font-size:14px;font-weight:900}
.f-right{border-left:2px solid #85a5de;padding:8px}.green .f-right{border-color:#91cc94}.wind .f-right{border-color:#eda25d}
.f-qtd-lab,.f-obs-lab{font-size:10px;font-weight:900;text-transform:uppercase;color:#163a7b}.f-qtd{height:34px;border:2px solid #8093bd;border-radius:4px;display:grid;place-items:center;margin:5px 0 11px;color:#000;font-size:25px;font-weight:900}
.f-obs{border-top:1px solid #9fb0ce;min-height:47px;padding-top:6px;color:#000;font-size:12px;font-weight:800;line-height:1.25}
.f-wind-center{display:grid;grid-template-columns:repeat(3,1fr);min-height:139px}
.f-wind-opt{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;border-right:2px solid #eda25d}.f-wind-opt:last-child{border-right:0}
.f-wind-opt b{font-size:20px;text-transform:uppercase;color:#123a7c}.f-wind-check{width:54px;height:54px;border:2px solid #8093bd;border-radius:5px;display:grid;place-items:center;color:red;font-size:28px;font-weight:900}
.f-footer{display:grid;grid-template-columns:repeat(5,1fr);gap:7px}.f-money{border:2px solid #a0b0ce;border-radius:6px;padding:6px;min-height:43px}.f-money b{font-size:9px;text-transform:uppercase;color:#183a7b;display:block}.f-money span{font-size:15px;color:#000;font-weight:900}

@media(max-width:1100px){
  .auth-card,.app{grid-template-columns:1fr}
  .sidebar{position:relative;height:auto}.userbox{position:relative;left:auto;right:auto;bottom:auto;margin-top:14px}
  .g5{grid-template-columns:repeat(2,1fr)}.g4,.g3,.g2{grid-template-columns:1fr}
  .item-head,.mock-row{grid-template-columns:1fr}.size-grid{grid-template-columns:repeat(4,1fr)}
}
@media(max-width:680px){main{padding:14px}.topbar{display:block}.g5{grid-template-columns:1fr}.feature-grid,.row,.check-grid{grid-template-columns:1fr}.size-grid{grid-template-columns:repeat(2,1fr)}}
@media print{
  @page{size:A4 landscape;margin:5mm}
  body{background:white}
  .auth,.app{display:none!important}.print-area{display:block!important}
  .ficha{width:100%;border:2px solid #143a78;padding:5px}
  .ficha h1{font-size:23px}.f-top{gap:5px;grid-template-columns:1.45fr 1.7fr .72fr .55fr .55fr}
  .f-box{padding:5px;min-height:51px}.f-line{grid-template-columns:78px 1fr}.f-lab{font-size:8px}.f-val{font-size:12px;min-height:14px}
  .f-row{grid-template-columns:185px 1fr 102px;min-height:112px;margin-bottom:5px}.f-mock{padding:4px}.f-mock-title{font-size:8px}.f-img{height:88px}.f-img img{max-height:88px}
  .f-head{font-size:8px}.f-head div{padding:4px 2px}.f-size{min-height:73px;padding-top:4px}.f-size small{font-size:6px;min-height:13px}.sq{width:18px;height:18px;margin-top:8px;font-size:11px}
  .f-right{padding:5px}.f-qtd-lab,.f-obs-lab{font-size:8px}.f-qtd{height:25px;font-size:20px;margin-bottom:7px}.f-obs{font-size:9px;min-height:32px}
  .f-wind-center{min-height:107px}.f-wind-opt b{font-size:14px}.f-wind-check{width:39px;height:39px;font-size:22px}
  .f-footer{gap:5px}.f-money{padding:4px;min-height:32px}.f-money b{font-size:7px}.f-money span{font-size:12px}
}
