:root{--bg:#f6f7f4;--card:#fff;--ink:#1f2a26;--muted:#5f6b66;--line:#e2e6e2;--brand:#2f6f5e;--brand-soft:#e4f0eb;--accent:#c8611f;--accent-soft:#fbeee4;--danger:#b23a3a;--ok:#2f6f5e;--radius:12px;--max:760px;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}*{box-sizing:border-box}html,body{margin:0;padding:0}body{background:var(--bg);color:var(--ink);-webkit-font-smoothing:antialiased;font-family:-apple-system,BlinkMacSystemFont,Apple SD Gothic Neo,Pretendard,Noto Sans KR,Segoe UI,sans-serif;font-size:16px;line-height:1.55}a{color:var(--brand)}h1,h2,h3{margin:0 0 .5rem;line-height:1.3}h1{font-size:1.5rem}h2{margin-top:1.5rem;font-size:1.2rem}h3{font-size:1.05rem}p{margin:.4rem 0}small,.muted{color:var(--muted)}code{font-size:.9em}.app-header{background:var(--card);border-bottom:1px solid var(--line);z-index:10;position:sticky;top:0}.app-header .inner{max-width:var(--max);justify-content:space-between;align-items:center;gap:1rem;margin:0 auto;padding:.6rem 1rem;display:flex}.brand{color:var(--ink);font-size:1.1rem;font-weight:700;text-decoration:none}.brand span{color:var(--brand)}.nav{flex-wrap:wrap;gap:.25rem;display:flex}.nav a{color:var(--muted);border-radius:8px;padding:.35rem .6rem;font-size:.92rem;text-decoration:none}.nav a.active,.nav a:hover{background:var(--brand-soft);color:var(--brand)}main{max-width:var(--max);margin:0 auto;padding:1rem 1rem 4rem}footer{max-width:var(--max);color:var(--muted);border-top:1px solid var(--line);margin:0 auto;padding:1rem;font-size:.85rem}.card{background:var(--card);border:1px solid var(--line);border-radius:var(--radius);margin:.75rem 0;padding:1rem}.card.brand{border-color:var(--brand);background:var(--brand-soft)}.card.accent{border-color:var(--accent);background:var(--accent-soft)}.card.warn{background:#fff8e6;border-color:#e0b04a}.card h3{margin-top:0}.hero{padding:1.5rem 0 .5rem}.hero h1{font-size:1.7rem}.hero .lead{color:var(--muted);font-size:1.05rem}.grid{grid-template-columns:1fr;gap:.75rem;display:grid}@media (width>=640px){.grid.two{grid-template-columns:1fr 1fr}.grid.three{grid-template-columns:1fr 1fr 1fr}}.btn{border:1px solid var(--brand);background:var(--brand);color:#fff;cursor:pointer;border-radius:10px;padding:.6rem 1rem;font-size:1rem;text-decoration:none;display:inline-block}.btn.secondary{background:var(--card);color:var(--brand)}.btn.small{border-radius:8px;padding:.3rem .6rem;font-size:.85rem}.btn.ghost{border-color:var(--line);color:var(--muted);background:0 0}.btn:disabled{opacity:.5;cursor:default}label.field{margin:.6rem 0;display:block}label.field>span{color:var(--muted);margin-bottom:.2rem;font-size:.9rem;display:block}input[type=text],input[type=number],input[type=date],select{border:1px solid var(--line);width:100%;color:var(--ink);background:#fff;border-radius:8px;padding:.55rem .6rem;font-size:1rem}label.check{align-items:flex-start;gap:.5rem;margin:.4rem 0;font-size:.95rem;display:flex}label.check input{margin-top:.3rem}fieldset{border:1px solid var(--line);border-radius:var(--radius);background:var(--card);margin:.75rem 0;padding:.75rem 1rem}legend{padding:0 .4rem;font-weight:600}.help{color:var(--muted);margin:.2rem 0 .5rem;font-size:.85rem}table{border-collapse:collapse;width:100%;font-size:.92rem}th,td{text-align:left;border-bottom:1px solid var(--line);vertical-align:top;padding:.45rem .4rem}th{color:var(--muted);font-size:.85rem;font-weight:600}td.num,th.num{text-align:right;font-variant-numeric:tabular-nums;white-space:nowrap}td:first-child{min-width:9rem}.table-wrap{overflow-x:auto}.badge{background:var(--brand-soft);color:var(--brand);white-space:nowrap;border-radius:999px;margin-right:.3rem;padding:.1rem .45rem;font-size:.75rem;display:inline-block}.badge.gray{color:var(--muted);background:#eceeec}.badge.warn{color:#8a5a00;background:#fff3d6}.badge.danger{color:var(--danger);background:#fbe3e3}.badge.accent{background:var(--accent-soft);color:var(--accent)}.big{letter-spacing:-.01em;font-size:1.6rem;font-weight:700}.diff-plus{color:var(--ok);font-weight:600}.diff-minus{color:var(--danger);font-weight:600}.reason{margin:.4rem 0;padding:0;list-style:none}.reason li{gap:.5rem;padding:.2rem 0;font-size:.92rem;display:flex}.reason li .mark{flex:none;width:1.2rem}.reason li.pass .mark{color:var(--ok)}.reason li.fail .mark{color:var(--danger)}.bar{background:#eceeec;border-radius:4px;height:8px;overflow:hidden}.bar>i{background:var(--brand);height:100%;display:block}.timeline{grid-template-columns:repeat(auto-fill,minmax(34px,1fr));gap:3px;margin:.4rem 0;display:grid}.timeline .cell{height:26px;color:var(--muted);background:#eceeec;border-radius:4px;justify-content:center;align-items:center;font-size:.7rem;display:flex}.timeline .cell.A{color:#fff;background:#2f6f5e}.timeline .cell.B{color:#fff;background:#c8611f}.timeline .cell.AB{color:#fff;background:linear-gradient(135deg,#2f6f5e 50%,#c8611f 50%)}.toolbar{flex-wrap:wrap;align-items:center;gap:.5rem;margin:.5rem 0;display:flex}.toolbar select{width:auto}.tabs{flex-wrap:wrap;gap:.25rem;margin:.5rem 0;display:flex}.tabs a,.tabs button{border:1px solid var(--line);background:var(--card);color:var(--ink);cursor:pointer;border-radius:999px;padding:.4rem .7rem;font-size:.9rem;text-decoration:none}.tabs a.active,.tabs button.active{background:var(--brand);border-color:var(--brand);color:#fff}.inst{flex-direction:column;gap:.3rem;display:flex}.inst .title{justify-content:space-between;align-items:baseline;gap:.5rem;display:flex}.inst .title a{color:var(--ink);font-size:1.02rem;font-weight:600;text-decoration:none}.inst .meta{color:var(--muted);font-size:.85rem}.inst .row{justify-content:space-between;gap:.5rem;font-size:.92rem;display:flex}.inst .actions{justify-content:flex-end;gap:.4rem;margin-top:.3rem;display:flex}.sticky-bottom{background:var(--card);border-top:1px solid var(--line);z-index:9;justify-content:center;align-items:center;gap:.5rem;padding:.6rem 1rem;display:flex;position:fixed;bottom:0;left:0;right:0}.note{color:var(--muted);border-left:3px solid var(--line);margin:.5rem 0;padding-left:.6rem;font-size:.85rem}details summary{cursor:pointer;color:var(--brand)}.kv{grid-template-columns:auto 1fr;gap:.2rem .8rem;font-size:.92rem;display:grid}.kv dt{color:var(--muted)}.kv dd{margin:0}
