:root{--ink:#18251d;--muted:#6c776f;--line:#dfe6df;--soft:#f6f8f5;--green:#2f6b3a;--green2:#eaf4eb;--white:#fff}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:#f4f6f3;color:var(--ink);font-family:Inter,Arial,Helvetica,sans-serif;font-size:14px}.topbar{height:62px;background:#fff;border-bottom:1px solid var(--line);display:flex;align-items:center;padding:0 24px;position:sticky;top:0;z-index:20}.brand{display:flex;align-items:center;gap:9px;margin-right:auto}.brand img{width:36px;height:36px;object-fit:contain}.brand b{display:block;font-size:17px;letter-spacing:.4px}.brand small{display:block;color:var(--muted);font-size:9px;font-weight:800;letter-spacing:.5px}.topbar nav{display:flex;gap:4px}.topbar nav a{text-decoration:none;color:#5d685f;font-weight:800;font-size:12px;padding:8px 11px;border-radius:8px}.topbar nav a.active,.topbar nav a:hover{background:var(--green2);color:var(--green)}
.wrap{width:min(1200px,94%);margin:18px auto 40px}.toolbar,.meta-card,.panel{background:#fff;border:1px solid var(--line);border-radius:12px;box-shadow:0 2px 10px rgba(30,50,35,.035)}.toolbar{padding:16px 18px;display:flex;align-items:end;justify-content:space-between;gap:16px;margin-bottom:10px}.toolbar-title h1{margin:3px 0 4px;font-size:24px}.toolbar-title p{margin:0;color:var(--muted);font-size:12px}.eyebrow{font-size:9px;letter-spacing:1.6px;font-weight:900;color:var(--green)}.toolbar-fields{display:flex;gap:8px;align-items:end}.toolbar-fields label,.meta-card label{font-size:10px;font-weight:800;color:#59655b;display:flex;flex-direction:column;gap:4px}.toolbar select,.meta-card input{height:36px;border:1px solid #cfd9d0;border-radius:8px;background:#fff;padding:0 9px;color:var(--ink);font-weight:700}.meta-card{display:grid;grid-template-columns:1.8fr .65fr .75fr 1fr;gap:9px;padding:11px;margin-bottom:10px}.meta-card input{width:100%}.live-score{border:1px solid #b9d1ba;background:var(--green2);border-radius:8px;padding:6px 10px;display:flex;justify-content:center;flex-direction:column}.live-score span{font-size:9px;text-transform:uppercase;color:#607064;font-weight:900}.live-score b{font-size:21px;color:var(--green);line-height:1.1}.live-score small{font-size:9px;color:#708070}.tabs{display:flex;gap:5px;flex-wrap:wrap;margin-bottom:10px}.tab,.btn{border:1px solid #d3ddd4;background:#fff;color:#536056;border-radius:8px;padding:9px 12px;font-weight:800;font-size:12px;cursor:pointer}.tab.active,.btn.primary{background:var(--green);border-color:var(--green);color:#fff}.form-page{background:#fff;border:1px solid #cfd7cf;padding:12px;margin-bottom:14px;border-radius:10px}.hidden{display:none!important}
.paper-head{display:grid;grid-template-columns:1fr 64px auto;align-items:center;gap:8px;margin-bottom:10px}.paper-head .info-table{grid-column:1;grid-row:1;margin:0}.paper-head .paper-logo{grid-column:2;grid-row:1}.paper-head .paper-title{grid-column:3;grid-row:1}.paper-title{text-align:right}.paper-logo{text-align:right}.paper-title b{display:block;font-size:16px}.paper-title div{font-weight:900;font-size:12px;margin-top:2px}.paper-title small{display:block;font-size:9px;margin-top:3px}.paper-logo img{width:64px;height:64px;object-fit:contain}.info-table{border-collapse:collapse;width:100%;font-size:10px}.info-table td{border:1px solid #222;padding:4px 6px;height:22px}.info-table td:first-child{width:43%;font-weight:900}.section-title{display:flex;align-items:center;justify-content:space-between;background:#f5f8f4;border:1px solid #d6dfd5;border-left:4px solid var(--green);padding:7px 9px;margin:9px 0 5px;font-size:11px}.section-title span{font-size:9px;color:var(--muted);font-weight:800}.score-table{width:100%;border-collapse:collapse;table-layout:fixed;font-size:9px}.score-table th,.score-table td{border:1px solid #252a26;padding:3px;text-align:center}.score-table th{background:#f0f4ef;color:#1d2a20;font-weight:900}.score-table .no{width:36px}.score-table .criterion{width:40%;text-align:left;font-weight:700}.score-table .judge{width:13%}.group-row td{background:#edf3ec;color:#315b37;font-weight:900;text-align:left;padding:4px 6px}.score-select{width:100%;border:0;background:transparent;font-weight:900;text-align:center;cursor:pointer;min-height:25px;color:#1f2b22}.score-select:focus{outline:2px solid #8eb391;background:#f1f8f1}.score-selected{background:#e4f0e4}.form-total{display:flex;justify-content:flex-end;gap:6px;flex-wrap:wrap;margin-top:7px}.total-chip{border:1px solid #cbd9cc;background:#f8faf7;padding:6px 9px;font-size:10px;font-weight:800;border-radius:6px}.total-chip b{font-size:14px;color:var(--green)}.total-chip.strong{background:var(--green2);border-color:#a9c5aa}.champ-inline{display:flex;align-items:center;justify-content:center;gap:9px;background:var(--green2);border:1px solid #a9c5aa;border-radius:8px;margin-top:9px;padding:8px}.champ-inline span{font-size:10px;font-weight:900}.champ-inline b{font-size:21px;color:var(--green)}.champ-inline small{font-size:9px;color:#667368}.legend{display:flex;justify-content:center;gap:4px;margin:5px 0;font-size:8px;font-weight:800}.legend span{border:1px solid #aaa;padding:3px 7px}.note-box{margin-top:9px;border:1px solid #222;padding:5px}.note-box b{font-size:9px}.note-box textarea{display:block;width:100%;min-height:70px;border:0;resize:vertical;font:11px Arial;outline:none;margin-top:4px}.sign-row{display:flex;justify-content:flex-end;gap:7px;margin-top:7px}.sign-box{width:150px;height:65px;border:1px solid #222;text-align:center;padding-top:5px;font-size:9px;font-weight:900}.bottom-actions{display:flex;gap:7px;flex-wrap:wrap}.panel{padding:12px}.summary{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;margin-bottom:10px}.summary>div{background:#fff;border:1px solid var(--line);border-radius:9px;padding:9px 10px}.summary span{display:block;font-size:9px;color:var(--muted);font-weight:800}.summary b{font-size:19px}.summary .champ{background:var(--green2);border-color:#b0c9b1}.summary small{display:block;font-size:8px;color:#718073}.table-wrap{overflow:auto}.table-wrap table{width:100%;border-collapse:collapse;font-size:10px}.table-wrap th,.table-wrap td{border:1px solid #d2dbd3;padding:7px;text-align:center}.table-wrap th{background:#eef3ee}.table-wrap td:nth-child(3){text-align:left}.rank{font-weight:900}.ok{color:var(--green);font-weight:900}.pending{color:#98701c;font-weight:900}.print-heading{display:none}
@media(max-width:800px){.topbar{padding:0 12px}.brand small{display:none}.toolbar{display:block}.toolbar-fields{margin-top:10px}.meta-card{display:block}.meta-card label{margin-bottom:7px}.summary{grid-template-columns:repeat(2,1fr)}.paper-head{grid-template-columns:54px 1fr;justify-content:end;gap:6px}.paper-logo{grid-column:1;grid-row:1;text-align:right}.paper-title{grid-column:2;grid-row:1;text-align:right}.score-table{font-size:8px}.score-table .criterion{width:38%}.score-select{font-size:8px}.form-page{padding:7px}.paper-logo img{width:54px;height:54px}}
@media print{
  @page{size:A4 portrait;margin:5mm}
  html,body{background:#fff!important;margin:0!important;padding:0!important}
  body{font-size:10px}
  .topbar,.no-print,.bottom-actions{display:none!important}
  .wrap{width:100%!important;max-width:none!important;margin:0!important}
  .form-page{border:0!important;border-radius:0!important;padding:0!important;margin:0!important;display:none!important;box-shadow:none!important}
  .form-page.printing{display:block!important;page-break-after:always;break-after:page;break-inside:avoid;overflow:visible!important}
  .paper-head{display:grid;grid-template-columns:1fr 46px auto;align-items:center;gap:6px;margin:0 0 5px}
  .paper-logo{grid-column:2;grid-row:1;text-align:right}
  .paper-title{grid-column:3;grid-row:1;text-align:right;margin:0}
  .paper-title b{font-size:13px}.paper-title div{font-size:10px}.paper-title small{font-size:6.5px}
  .paper-logo img{width:42px;height:42px}
  .paper-head .info-table{grid-column:1;grid-row:1;width:100%;font-size:7px;margin:0;align-self:stretch}
  .info-table td{padding:1.5px 3px;height:15px}
  .info-table td:first-child{width:25%}
  .section-title{padding:3px 5px;margin:3px 0 2px;font-size:8px}
  .section-title span{font-size:6px}
  .score-table{font-size:6.5px}
  .score-table th,.score-table td{padding:1px 1.5px;line-height:.98}
  .score-table .no{width:22px}.score-table .criterion{width:48%}.score-table .judge{width:auto}
  .group-row td{padding:1.5px 3px;line-height:1}
  .score-select{appearance:none!important;-webkit-appearance:none!important;-moz-appearance:none!important;border:0!important;outline:0!important;background:transparent!important;box-shadow:none!important;width:auto!important;min-width:0!important;max-width:100%!important;padding:0!important;margin:0!important;text-align:center!important;font:inherit!important;font-weight:900!important;color:#111!important;pointer-events:none!important}
  .score-select::-ms-expand{display:none!important}.score-selected{background:transparent!important}
  .form-total{gap:3px;margin-top:2px}.total-chip{padding:2px 5px;font-size:6.5px;border-radius:3px}.total-chip b{font-size:9px}
  .champ-inline{margin-top:3px;padding:3px;gap:4px}.champ-inline span{font-size:6.5px}.champ-inline b{font-size:13px}.champ-inline small{font-size:6.5px}
  .legend{margin:1px 0;font-size:5.5px}.legend span{padding:2px 4px}
  .note-box{display:none!important}
  .sign-row{gap:3px;margin-top:2px}.sign-box{width:95px;height:30px;padding-top:2px;font-size:6.5px}
  .print-heading{display:block;text-align:center;margin-bottom:5px}.print-heading h1{font-size:16px;margin:0}
  .panel{border:0!important;padding:0!important;box-shadow:none!important}
  .table-wrap{overflow:visible!important}.table-wrap table{font-size:8px}.table-wrap th,.table-wrap td{padding:3px}
}

/* Pastikan versi lama dengan kolom Juri 3 tidak muncul. */
.score-table th:nth-child(5),.score-table td:nth-child(5){display:none!important}

@media print {
  /* Portrait A4: keep rows intact and avoid accidental horizontal overflow. */
  .form-page, .score-table, .info-table, .note-box, .sign-row, .form-total, .champ-inline { max-width:100%; }
  .score-table tr { break-inside:avoid; page-break-inside:avoid; }
  .score-table td, .score-table th { overflow:hidden; }
  .criterion { word-break:normal; overflow-wrap:anywhere; }
}

@media print { .note-box, .note-box * { display:none !important; } }

/* Saat dicetak, format Danton/Komandan dimulai pada halaman baru.
   Di layar tetap menjadi satu form agar input tetap sederhana. */
.danton-print-page{margin-top:12px}
@media print{
  .danton-print-page{page-break-before:always;break-before:page;margin-top:0!important}
  .danton-print-page .paper-head{margin-top:0}
}

.app-error{background:#fff1f1;border:1px solid #e2b5b5;color:#8a2626;padding:10px 12px;border-radius:8px;margin-bottom:10px;font-size:12px;font-weight:700}.app-error.hidden{display:none!important}
