
:root{font-family:Arial,Helvetica,sans-serif;color:#19212d;background:#f3f5f8;--red:#d71920;--dark:#202a38;--border:#e4e8ee;--muted:#687789}
*{box-sizing:border-box}body{margin:0}button,input,select,textarea{font:inherit}button{cursor:pointer}button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid #d7192060;outline-offset:2px}
header{background:#fff;border-bottom:1px solid var(--border)}.top{max-width:1550px;margin:auto;min-height:83px;display:flex;gap:15px;align-items:center;justify-content:space-between;padding:15px 28px}.brand{display:flex;align-items:center;gap:14px}.mark{font-weight:900;background:var(--red);color:white;padding:11px 13px;border-radius:12px;letter-spacing:1px;font-size:21px}.eyebrow{font-size:11px;color:#768397;font-weight:800;letter-spacing:1.3px}.brand h1{font-size:21px;margin:4px 0 0;letter-spacing:-.5px}main{max-width:1550px;margin:auto;padding:27px 28px 50px}
.hero{display:flex;justify-content:space-between;align-items:center;gap:15px;flex-wrap:wrap;margin-bottom:22px}.hero h2{margin:0;font-size:25px;letter-spacing:-.7px}.hero p{color:var(--muted);margin:6px 0 0;font-size:14px;line-height:1.5}.actions{display:flex;gap:9px;align-items:center;flex-wrap:wrap}.primary{background:var(--red);color:white;border:none;font-weight:800;border-radius:10px;padding:13px 17px;box-shadow:0 5px 15px #d7192022}.secondary{background:white;color:#3e4a59;border:1px solid var(--border);font-weight:700;border-radius:10px;padding:12px 14px}.report-button{background:#197b53;color:white;border-color:#197b53}.danger-button{background:#fff;color:#b4232a;border-color:#f0c9cb}.search{min-width:185px;padding:12px 13px;border:1px solid #dfe4eb;border-radius:10px;background:#fff}
.summary{display:flex;gap:10px;flex-wrap:wrap;margin-bottom:20px}.pill{font-size:13px;font-weight:700;color:#657181;background:white;border:1px solid var(--border);padding:9px 13px;border-radius:9px}.pill b{color:#1b2837;margin-left:7px}.pill[data-color="start"]{border-color:#f1c9cc;background:#fff4f4}.pill[data-color="process"]{border-color:#eed9a0;background:#fffaeb}.pill[data-color="done"]{border-color:#bde7cc;background:#eefaf3}.pill[data-color="withdrawn"]{border-color:#bcd7fa;background:#eef5ff}
.board{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;align-items:start}.lane{border:1px solid #e5eaf0;background:#eaf0f5a3;border-radius:16px;min-height:395px;overflow:hidden}.lane-head{display:flex;justify-content:space-between;align-items:center;padding:18px 15px 15px;gap:8px;border-bottom:1px solid #ffffff8c;margin-bottom:12px}.lane-label{display:flex;align-items:center;gap:9px;font-weight:900;font-size:16px}.dot{flex:none;width:12px;height:12px;border-radius:50%;background:#d71920;box-shadow:0 0 0 4px #d7192022}.count{border-radius:7px;background:white;border:1px solid var(--border);color:#556474;padding:4px 9px;font-weight:800;font-size:13px}.lane-desc{font-size:12px;color:#778597;margin:0 15px 14px;line-height:1.45}
.lane[data-stage="start"]{background:#fff4f4;border-color:#f1c9cc}.lane[data-stage="start"] .lane-head{background:#ffe6e8;color:#a21922}.lane[data-stage="start"] .lane-desc{color:#9b535a}.lane[data-stage="start"] .count{background:#d71920;color:white;border-color:#d71920}
.lane[data-stage="process"]{background:#fffaeb;border-color:#eed9a0}.lane[data-stage="process"] .lane-head{background:#fff0c4;color:#835600}.lane[data-stage="process"] .lane-desc{color:#8d722b}.lane[data-stage="process"] .count{background:#d18a08;color:white;border-color:#d18a08}.lane[data-stage="process"] .dot{background:#e9a217;box-shadow:0 0 0 4px #e9a21733}
.lane[data-stage="done"]{background:#eefaf3;border-color:#bde7cc}.lane[data-stage="done"] .lane-head{background:#d9f5e5;color:#087b4c}.lane[data-stage="done"] .lane-desc{color:#438768}.lane[data-stage="done"] .count{background:#15965d;color:white;border-color:#15965d}.lane[data-stage="done"] .dot{background:#21a16b;box-shadow:0 0 0 4px #21a16b33}
.lane[data-stage="withdrawn"]{background:#edf5ff;border-color:#bcd7fa}.lane[data-stage="withdrawn"] .lane-head{background:#dbeaff;color:#14519d}.lane[data-stage="withdrawn"] .lane-desc{color:#537aaa}.lane[data-stage="withdrawn"] .count{background:#2373d0;color:white;border-color:#2373d0}.lane[data-stage="withdrawn"] .dot{background:#2373d0;box-shadow:0 0 0 4px #2373d033}
.cards{padding:0 11px 15px;min-height:300px}.lane.over{outline:2px dashed #647ca1;outline-offset:-4px}.card{background:white;border:1px solid #e4e8ee;border-left:5px solid #d71920;border-radius:12px;padding:13px;margin-bottom:11px;box-shadow:0 4px 13px #182a3a08}.card[data-stage="process"]{border-left-color:#e69b27}.card[data-stage="done"]{border-left-color:#21a16b}.card[data-stage="withdrawn"]{border-left-color:#2373d0}.card.dragging{opacity:.4}.card-head{display:flex;justify-content:space-between;align-items:flex-start;gap:5px}.plate{font-size:21px;font-weight:900;letter-spacing:.5px;color:#192534;overflow-wrap:anywhere}.mini{font-size:11px;color:#8c97a5;white-space:nowrap}.meta{font-size:12px;color:#778393;margin-top:7px;line-height:1.45}.extra{display:inline-flex;max-width:100%;align-items:center;gap:6px;padding:7px 9px;margin-top:12px;background:#fff3df;color:#9b5a0b;border:1px solid #f6ddb2;border-radius:7px;font-weight:800;font-size:12px;overflow-wrap:anywhere}.no-extra{background:#f3f6fa;border-color:#edf0f4;color:#697a88}.status-tag{display:inline-flex;max-width:100%;padding:6px 8px;border-radius:7px;margin-top:9px;background:#e2efff;color:#14519d;font-size:12px;font-weight:800;overflow-wrap:anywhere}.notes{font-size:12px;color:#607081;padding-top:10px;overflow-wrap:anywhere}.card-buttons{display:flex;gap:7px;flex-wrap:wrap;margin-top:14px}.card-buttons button{border:1px solid #e1e5eb;background:#f7f9fb;color:#314154;padding:8px 10px;border-radius:8px;font-size:12px;font-weight:800}.card-buttons .advance{background:#253447;color:#fff;border-color:#253447}.card-buttons .withdraw{background:#fff;color:#1e61ac;border:1px solid #bcd7fa}.card-buttons .withdraw:hover{background:#edf5ff}.card[data-stage="start"] .advance{background:#d71920;border-color:#d71920}.card[data-stage="process"] .advance{background:#a86d00;border-color:#a86d00}.card[data-stage="done"] .withdraw{background:#2373d0;color:white;border-color:#2373d0}.empty{text-align:center;background:#ffffff80;border:1px dashed #cbd4df;border-radius:11px;padding:35px 10px;color:#8895a5;font-size:13px}.footer-note{color:#7a8592;font-size:12px;margin-top:22px;line-height:1.6}
.overlay{position:fixed;inset:0;background:#152131a8;display:none;align-items:center;justify-content:center;padding:18px;z-index:10}.overlay.open{display:flex}.modal{width:min(100%,495px);background:white;border-radius:18px;padding:25px;box-shadow:0 25px 80px #1119;max-height:calc(100vh - 36px);overflow:auto}.modal.wide{width:min(100%,585px)}.modal h2{margin:0 0 7px;font-size:23px}.modal p{margin:0 0 19px;color:#758192;font-size:13px;line-height:1.5}.field{display:block;font-size:13px;font-weight:800;margin:16px 0 8px}.input{width:100%;border:1px solid #dce2e9;border-radius:10px;padding:13px;background:#fff}.checkbox{display:flex;align-items:center;gap:10px;margin-top:18px;padding:13px;border-radius:11px;background:#fff8ed;border:1px solid #f4e4ca;font-size:14px;font-weight:700}.checkbox input{accent-color:var(--red);width:18px;height:18px}.modal-actions{display:flex;justify-content:flex-end;gap:9px;margin-top:23px;flex-wrap:wrap}.hidden{display:none!important}#alert{color:#b91c1c;font-size:12px;margin-top:8px;min-height:15px}.small-top{font-size:12px;color:#8390a0;text-align:right}.report-text{width:100%;min-height:300px;resize:vertical;background:#f5f8fb;border:1px solid #dce2e9;border-radius:11px;padding:14px;font-size:13px;line-height:1.65;color:#263443}.warning{padding:13px 14px;background:#fff4f4;color:#a21922;border:1px solid #f1c9cc;border-radius:10px;font-size:13px;line-height:1.5}.notice{font-size:12px;color:#667587;margin-top:11px;line-height:1.5}.green{background:#197b53;color:white;border:1px solid #197b53}.modal .danger{background:#b4232a;color:white;border:1px solid #b4232a;border-radius:10px;padding:12px 15px;font-weight:800}.modal .danger:disabled{opacity:.42;cursor:not-allowed}
@media(max-width:1150px){.board{grid-template-columns:repeat(2,minmax(0,1fr))}.lane{min-height:245px}.cards{min-height:165px}}@media(max-width:650px){.board{grid-template-columns:1fr}.lane{min-height:170px}.cards{min-height:95px}.top{padding:14px 17px}main{padding:22px 14px 35px}.hero h2{font-size:23px}.search{flex:1;min-width:135px}.actions{width:100%}.actions button{flex:1}.lane-desc{margin-bottom:12px}.small-top{font-size:11px}}
button:disabled{opacity:.5;cursor:wait}.busy button{pointer-events:none;opacity:.55}.busy .card{cursor:wait}
/* Identidad TOYO: azul #1F3D87 / rojo #AB1918 / blanco. */
:root{--red:#ab1918;--blue:#1f3d87;--dark:#182c55;--border:#e0e5ef;--muted:#67758e;color:#182c55;background:#f4f6fa}
header{border-top:5px solid var(--blue);border-bottom:3px solid var(--red);background:#fff;box-shadow:0 3px 15px #1f3d8708}
.top{min-height:112px;padding:7px 28px}.brand{gap:20px}.toyo-logo{display:block;width:185px;height:105px;object-fit:contain;flex:none}
.brand h1{font-size:24px;color:var(--blue);letter-spacing:-.5px}.eyebrow{color:var(--red);font-size:10px;letter-spacing:1.8px}
.operating-label{display:inline-block;color:var(--blue);font-size:10px;font-weight:800;letter-spacing:1.4px;padding:7px 10px;border:1px solid #dbe2f0;border-radius:6px;margin-bottom:8px;background:#f5f7fc}
.small-top{color:#66758f}.hero{background:#fff;border:1px solid var(--border);border-left:5px solid var(--blue);border-radius:13px;padding:21px 20px;box-shadow:0 5px 18px #1f3d8705}
.hero h2{color:var(--blue);font-size:25px}.hero p{color:#67758e}.primary{background:var(--red);box-shadow:0 4px 12px #ab191819}
.primary:hover{background:#8d1414}.secondary{color:var(--blue);border-color:#dbe2ef}.secondary:hover{background:#f3f6fb}
.report-button{background:var(--blue);border-color:var(--blue);color:#fff}.report-button:hover{background:#182e67}
.danger-button{color:var(--red);border-color:#eacdcc}.search{border-color:#dbe2ef;color:#182c55}
button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline-color:#1f3d8760}
.summary{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:11px}.pill{position:relative;padding:15px 14px;border-radius:11px;background:#fff!important;border-color:var(--border)!important;color:#67758e;font-size:12px;box-shadow:0 3px 10px #1f3d8705}
.pill b{display:block;margin:8px 0 0;font-size:27px;line-height:1.1;color:var(--blue)}
.pill[data-color="start"]{border-top:3px solid #ab1918!important}.pill[data-color="process"]{border-top:3px solid #d18a08!important}.pill[data-color="done"]{border-top:3px solid #15965d!important}.pill[data-color="withdrawn"]{border-top:3px solid var(--blue)!important}
.pill:not([data-color]){border-top:3px solid #c7d1e7!important}.lane{border-radius:13px}.lane-head{padding:17px 15px}.card{box-shadow:0 4px 14px #1f3d8708}.plate{color:var(--blue)}
.lane[data-stage="start"]{background:#fff6f5;border-color:#ecd3d1}.lane[data-stage="start"] .lane-head{background:#f8e5e3;color:#8f1818}.lane[data-stage="start"] .count,.card[data-stage="start"] .advance{background:var(--red);border-color:var(--red)}
.lane[data-stage="start"] .dot{background:var(--red);box-shadow:0 0 0 4px #ab191817}.card[data-stage="start"]{border-left-color:var(--red)}
.lane[data-stage="withdrawn"]{background:#f0f3fb;border-color:#cad5ec}.lane[data-stage="withdrawn"] .lane-head{background:#e2e8f6;color:var(--blue)}.lane[data-stage="withdrawn"] .count,.card[data-stage="done"] .withdraw{background:var(--blue);border-color:var(--blue)}
.lane[data-stage="withdrawn"] .dot{background:var(--blue);box-shadow:0 0 0 4px #1f3d8717}.card[data-stage="withdrawn"]{border-left-color:var(--blue)}
.card-buttons .withdraw{color:var(--blue);border-color:#c9d5ec}.card-buttons .advance{background:var(--blue);border-color:var(--blue)}.status-tag{color:var(--blue);background:#eaf0fc}
.footer-note{background:#fff;border:1px solid var(--border);border-left:3px solid var(--blue);padding:15px 17px;border-radius:9px;color:#68758b}.footer-note strong{color:var(--blue)}
.modal{border-top:5px solid var(--blue)}.modal h2{color:var(--blue)}.overlay{background:#142a4ab8}.checkbox input{accent-color:var(--red)}
@media(max-width:1150px){.summary{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:650px){.top{padding:6px 14px;gap:8px;min-height:99px}.toyo-logo{width:120px;height:78px}.brand{gap:8px}.brand h1{font-size:18px}.eyebrow{font-size:8px;letter-spacing:.6px}.operating-label{font-size:8px;padding:5px;letter-spacing:.3px}.small-top{font-size:10px}.hero{padding:17px 14px}.summary{grid-template-columns:repeat(2,minmax(0,1fr))}.pill{padding:12px}.pill b{font-size:24px}}
@media(max-width:390px){.top{flex-wrap:wrap}.small-top{display:flex;align-items:center;gap:8px}.operating-label{margin:0}.small-top br{display:none}}

/* Shell Laravel TOYO Lavado */
html,body{min-height:100%}.app-shell{background:#f4f6fa}.site-header{position:sticky;top:0;z-index:8;border-top:4px solid #1f3d87;border-bottom:2px solid #ab1918;background:#fff;box-shadow:0 4px 18px #1f3d8710}.site-top{max-width:1550px;margin:auto;min-height:70px;padding:7px 28px;display:flex;align-items:center;gap:22px}.site-brand{display:flex;align-items:center;gap:10px;text-decoration:none;color:#1f3d87}.site-brand img{width:112px;height:58px;object-fit:contain}.site-brand span{display:grid}.site-brand b{font-size:16px}.site-brand small{font-size:10px;color:#687789}.site-nav{display:flex;gap:4px;align-items:center;flex:1}.site-nav a{padding:9px 11px;border-radius:8px;text-decoration:none;color:#43536b;font-size:13px;font-weight:750}.site-nav a:hover,.site-nav a.active{background:#eef3fb;color:#1f3d87}.user-zone{display:flex;align-items:center;gap:10px;font-size:12px;font-weight:750;color:#43536b}.compact{padding:7px 10px!important}.board-main{max-width:1550px;margin:auto;padding:22px 28px 50px}.standard-main{max-width:1550px;margin:auto;padding:24px 28px 50px}.page-title{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:16px}.page-title h1{margin:0;color:#182c55;font-size:27px}.page-title p{margin:5px 0 0;color:#687789}.flash{max-width:1550px;margin:12px auto 0;padding:10px 14px;border-radius:9px;font-size:13px}.flash.success{background:#eaf8f1;color:#08704f;border:1px solid #bde7cc}.flash.error{background:#fff0f1;color:#a7141a;border:1px solid #f1c9cc}.filters{display:flex;gap:8px;align-items:center;margin-bottom:14px;flex-wrap:wrap}.filters .input{width:auto;min-width:180px}.table-wrap{overflow:auto;background:#fff;border:1px solid #e0e5ef;border-radius:12px}table{width:100%;border-collapse:collapse;min-width:920px}th,td{text-align:left;padding:10px 11px;border-bottom:1px solid #edf0f4;font-size:12px;vertical-align:top}th{font-size:10.5px;text-transform:uppercase;letter-spacing:.5px;color:#66758f;background:#f8faff}td{color:#263443}.empty-row{text-align:center;padding:35px;color:#8895a5}.pagination{margin-top:14px}.pagination nav{display:flex;justify-content:center}.pagination svg{width:18px}.panel-box{background:#fff;border:1px solid #e0e5ef;border-radius:13px;padding:18px}.panel-box h2{margin:0 0 14px;color:#182c55;font-size:18px}.admin-grid{display:grid;grid-template-columns:340px 1fr;gap:14px}.form-stack{display:grid;gap:11px}.form-stack label{display:grid;gap:5px;font-size:12px;font-weight:750;color:#43536b}.user-row{display:grid;grid-template-columns:1fr 1.15fr 1fr 160px 90px 1.1fr auto;gap:7px;align-items:center;padding:9px 0;border-bottom:1px solid #edf0f4}.active-check{font-size:12px;white-space:nowrap}.form-error,#alert{color:#b91c1c;font-size:12px;margin-top:8px}.login-page{min-height:100vh;display:grid;grid-template-columns:minmax(360px,43%) 1fr;background:#f4f6fa}.login-brand{background:linear-gradient(160deg,#082d6e,#0b3f96);display:flex;flex-direction:column;justify-content:center;align-items:center;color:white;padding:35px;position:relative;overflow:hidden}.login-brand:after{content:"";position:absolute;width:520px;height:520px;border:2px solid #ffffff12;border-radius:50%;bottom:-300px;right:-130px}.login-logo{background:#fff;border-radius:15px;padding:12px 20px;width:min(300px,80%);position:relative;z-index:1}.login-logo img{display:block;width:100%;height:110px;object-fit:contain}.login-brand h1{font-size:30px;margin:20px 0 5px;position:relative;z-index:1}.login-brand p{margin:0;color:#eaf1ff;position:relative;z-index:1}.login-side{display:flex;align-items:center;justify-content:center;padding:30px}.login-card{width:min(410px,94vw);background:white;border:1px solid #dfe6ef;border-radius:15px;padding:28px;box-shadow:0 18px 50px #16375e12}.login-card h2{margin:0;color:#182c55;font-size:27px}.login-card p{color:#687789;margin:6px 0 22px}.login-card label:not(.remember){display:block;font-size:12px;font-weight:800;margin:12px 0 6px}.remember{display:flex;align-items:center;gap:7px;font-size:12px;color:#687789;margin:13px 0}.login-button{width:100%;margin-top:4px}.danger{background:#b4232a;color:white;border:1px solid #b4232a;border-radius:10px;padding:12px 15px;font-weight:800}
@media(max-width:1000px){.site-nav{overflow:auto}.user-zone>span{display:none}.admin-grid{grid-template-columns:1fr}.user-row{grid-template-columns:1fr 1fr}.login-page{grid-template-columns:1fr}.login-brand{min-height:310px}.login-side{padding:20px}}@media(max-width:650px){.site-top{padding:5px 12px;gap:8px;flex-wrap:wrap}.site-brand img{width:90px;height:46px}.site-brand span{display:none}.site-nav{order:3;width:100%;flex-basis:100%;padding-bottom:4px}.site-nav a{font-size:12px;padding:7px 8px}.board-main,.standard-main{padding:16px 12px 35px}.user-row{grid-template-columns:1fr}.login-brand{min-height:240px}.login-logo img{height:82px}}
