:root{--age-green:#00a052;--age-green-dk:#22934a;--green-soft:#e3f4ea;--bg:#f6f8f7;--sheet:#fff;--ink:#1e2a24;--muted:#5f6e67;--rule:#dce4df;--amber:#a9740c;--amber-soft:#fbf0d5;--red:#b3402c;--red-soft:#f9e2dc;--sans:"Prompt", system-ui, sans-serif;--mono:"IBM Plex Mono", ui-monospace, Menlo, monospace;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}@media (prefers-color-scheme:dark){:root{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--age-green:#2fc07a;--age-green-dk:#6fd7a0;--green-soft:#17311f;--bg:#0f1613;--sheet:#16201b;--ink:#e4ece7;--muted:#9baba3;--rule:#2a3730;--amber:#e5b556;--amber-soft:#372c14;--red:#ee8b76;--red-soft:#3a211b}}*{box-sizing:border-box}html,body{margin:0}body{background:var(--bg);color:var(--ink);font-family:var(--sans);font-size:16px;line-height:1.6}.num{font-family:var(--mono);font-variant-numeric:tabular-nums}.topbar{background:var(--age-green);color:#fff;flex-wrap:wrap;align-items:baseline;gap:14px;padding:14px 20px;display:flex}.topbar h1{margin:0;font-size:20px;font-weight:600}.topbar span{opacity:.85;font-size:14px}main{flex-direction:column;gap:20px;max-width:1100px;margin:0 auto;padding:24px 16px 80px;display:flex}.step{background:var(--sheet);border:1px solid var(--rule);border-radius:10px;padding:18px 20px}.step h2{margin:0 0 12px;font-size:18px;font-weight:600}.step.locked{opacity:.5}.step.locked h2:after{content:" · ทำขั้นก่อนหน้าให้เสร็จก่อน";color:var(--muted);font-size:14px;font-weight:400}button{font:inherit;border:1px solid var(--age-green);background:var(--age-green);color:#fff;cursor:pointer;border-radius:8px;padding:10px 18px;font-weight:600}button.ghost{color:var(--age-green-dk);background:0 0}button:disabled{opacity:.45;cursor:default}button:focus-visible,select:focus-visible,input:focus-visible,textarea:focus-visible{outline:2px solid var(--age-green);outline-offset:2px}.muted{color:var(--muted)}.ok{color:var(--age-green-dk)}.bad{color:var(--red)}.drops{grid-template-columns:1fr 1fr;gap:14px;display:grid}@media (width<=720px){.drops{grid-template-columns:1fr}}.drop{border:2px dashed var(--rule);background:var(--bg);border-radius:10px;padding:14px;transition:border-color .15s,background .15s}.drop.over{border-color:var(--age-green);background:var(--green-soft)}.drop.filled{border-style:solid;border-color:var(--age-green)}.drop-label{cursor:pointer;gap:4px;display:grid}.drop-title{font-weight:600}.drop-hint{color:var(--muted);overflow-wrap:anywhere;font-size:14px}.drop-btn{color:var(--age-green-dk);border:1px solid var(--age-green);border-radius:6px;justify-self:start;margin-top:6px;padding:4px 12px;font-size:14px;font-weight:600}.drop-body p{margin:10px 0 0;font-size:15px}select,input[type=number]{font:inherit;border:1px solid var(--rule);background:var(--sheet);color:var(--ink);border-radius:6px;padding:4px 8px}.check-hero{border-radius:10px;align-items:center;gap:14px;padding:14px 16px;display:flex}.check-hero.good{background:var(--green-soft)}.check-hero.badbox{background:var(--red-soft)}.check-hero .big{color:var(--age-green-dk);font-size:34px;font-weight:700;line-height:1}.check-hero.badbox .big{color:var(--red)}.check-hero strong{font-size:18px}.check-list{gap:6px;margin:12px 0 0;padding:0;font-size:15px;list-style:none;display:grid}.check-list li{gap:10px;display:flex}.check-list .ico{text-align:center;width:22px;font-weight:700}.check-list .pass .ico{color:var(--age-green-dk)}.check-list .fail .ico,.check-list .fail{color:var(--red)}.check-list .skipped{color:var(--muted)}.run-row{flex-wrap:wrap;align-items:flex-start;gap:14px;margin-bottom:16px;display:flex}.progress{background:var(--rule);border-radius:99px;flex:1;min-width:160px;height:10px;margin-top:16px;overflow:hidden}.progress span{background:var(--age-green);height:100%;transition:width .2s;display:block}.settings{margin-left:auto;font-size:14px}.settings summary{cursor:pointer;color:var(--muted);padding-top:10px}.settings .opt{justify-content:space-between;align-items:center;gap:10px;margin:6px 0;display:flex}.settings input{width:90px}.cards{grid-template-columns:repeat(3,1fr);gap:12px;display:grid}@media (width<=820px){.cards{grid-template-columns:1fr}}.card-stat{border:1px solid var(--rule);border-radius:10px;gap:2px;padding:12px 14px;display:grid}.card-stat .label{color:var(--muted);font-size:14px}.card-stat .value{font-size:28px;font-weight:600}.card-stat .sub{color:var(--muted);font-size:13px}.warn{color:var(--amber)}.bridge{margin:14px 0;font-size:15px}.bridge summary{cursor:pointer;color:var(--age-green-dk)}.bridge table{border-collapse:collapse;width:100%;max-width:620px;margin-top:8px}.bridge td{border-bottom:1px solid var(--rule);padding:4px 6px}.bridge tr.strong td{font-weight:600}.r{text-align:right;white-space:nowrap}.tabs{flex-wrap:wrap;gap:6px;margin:6px 0 10px;display:flex}.tab{color:var(--ink);border-color:var(--rule);background:0 0;padding:6px 14px;font-weight:500}.tab.on{background:var(--green-soft);border-color:var(--age-green);color:var(--age-green-dk)}.rule{border-top:1px solid var(--rule);padding:8px 0}.rule>summary{cursor:pointer;padding:4px 0}.groups{gap:4px;margin:6px 0 0;padding:0;list-style:none;display:grid}.group-row{text-align:left;background:var(--bg);width:100%;color:var(--ink);border:1px solid var(--rule);grid-template-columns:auto auto 1fr auto auto;align-items:center;gap:12px;padding:8px 12px;font-weight:400;display:grid}.group-row:hover{border-color:var(--age-green)}.groups li.open .group-row{border-color:var(--age-green);border-bottom-right-radius:0;border-bottom-left-radius:0}.gdesc{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}@media (width<=640px){.group-row{grid-template-columns:auto 1fr auto}.group-row>:nth-child(2),.group-row>:nth-child(4){display:none}}.badge{white-space:nowrap;border-radius:99px;padding:2px 8px;font-size:12px;font-weight:600}.b-ok{background:var(--green-soft);color:var(--age-green-dk)}.b-sug{background:var(--amber-soft);color:var(--amber)}.pill{border-radius:99px;padding:4px 12px;font-size:13px}.ok-pill{background:var(--green-soft);color:var(--age-green-dk)}.detail{border:1px solid var(--age-green);background:var(--sheet);border-top:0;border-radius:0 0 8px 8px;padding:12px}.detail-cols{grid-template-columns:1fr 1fr;gap:16px;display:grid}@media (width<=760px){.detail-cols{grid-template-columns:1fr}}.detail h4{color:var(--muted);margin:0 0 6px;font-size:14px;font-weight:600}.detail table{border-collapse:collapse;width:100%;font-size:14px}.detail td{border-bottom:1px solid var(--rule);vertical-align:top;padding:3px 4px}.detail tfoot td{border-bottom:0;border-top:2px solid var(--ink);font-weight:600}.detail-foot{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;margin-top:10px;font-weight:600;display:flex}.actions{gap:8px;display:flex}.wb-table{border:1px solid var(--rule);border-radius:8px;max-height:520px;overflow:auto}.wb-table table{border-collapse:collapse;width:100%;font-size:14px}.wb-table th{background:var(--sheet);text-align:left;color:var(--muted);border-bottom:1px solid var(--rule);padding:6px 8px;font-weight:500;position:sticky;top:0}.wb-table td{border-bottom:1px solid var(--rule);vertical-align:middle;padding:5px 8px}.wb-table tr.sel td{background:var(--green-soft)}.wb-table select{max-width:150px;font-size:13px}.wb-table .note{font:inherit;border:1px solid var(--rule);background:var(--sheet);width:100%;min-width:120px;color:var(--ink);border-radius:6px;padding:3px 6px;font-size:13px}.nowrap{white-space:nowrap}.wb-bar{background:var(--sheet);border:1px solid var(--age-green);border-radius:10px;flex-wrap:wrap;align-items:center;gap:14px;margin-top:10px;padding:10px 14px;display:flex;position:sticky;bottom:0;box-shadow:0 -4px 14px #0000000f}.export{flex-wrap:wrap;align-items:center;gap:14px;display:flex}.ai{border:1px dashed var(--age-green);border-radius:10px;gap:10px;margin-top:14px;padding:14px;display:grid}.ai-head{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;display:flex}.ai-rows{max-height:360px}.linkish{color:var(--age-green-dk);cursor:pointer;background:0 0;border:0;padding:0;font-weight:500;text-decoration:underline}.cross{border-top:1px solid var(--rule);gap:10px;margin-top:16px;padding-top:12px;display:grid}.cross>summary{cursor:pointer}
