:root{--paper:#F6F5EE;--ink:#20302F;--mut:#5E6B69;--deep:#1E7A50;--deepsoft:#E8F6EC;
      --seal:#A8402F;--line:#D8D6CD;--amber:#B97A1C;--ambersoft:#F6EBD8;
      --deeptext:#186C46;--bar:#0E5A4E;--deephover:#EEF5EF;--bg:#E9E7E0}
*{margin:0;padding:0;box-sizing:border-box}
body{background:var(--bg);font-family:'Noto Sans KR',sans-serif;color:var(--ink);
     font-size:16px;line-height:1.5}
.wrap{max-width:900px;margin:14px auto;padding:0 14px}
.wrap.bare{margin-top:12px}
.wrap.wide{max-width:1240px}
header{background:var(--paper);border:1px solid var(--line);padding:12px 22px;
       display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:10px}
.brand{font-family:'Noto Serif KR',serif;font-size:21px;font-weight:700;
       color:var(--ink);text-decoration:none}
.brand small{font-family:'Noto Sans KR';font-size:13px;font-weight:500;
             color:var(--mut);margin-left:8px}
@media (max-width:640px){.brand small{display:none}}
.who{font-size:13px;color:var(--mut);display:flex;align-items:center;gap:12px}
.whoami{color:var(--mut);text-decoration:none;border-bottom:1px dotted var(--line)}
.whoami:hover{color:var(--deeptext);border-bottom-color:var(--deep)}
.who .btn.link{text-decoration:underline;white-space:nowrap}
.panel{background:var(--paper);border:1px solid var(--line);padding:18px 24px 20px;margin-top:10px}
h2{font-family:'Noto Serif KR',serif;font-size:19px;margin-bottom:4px}
.lead{color:var(--mut);font-size:13.5px;line-height:1.6;margin-bottom:12px}
form{max-width:380px}
form.wide{max-width:none}
label{display:block;font-size:13.5px;font-weight:700;margin:10px 0 5px}
.pwwrap{position:relative;display:block}
.pwwrap input{padding-right:64px}
.pwtoggle{position:absolute;right:6px;top:50%;transform:translateY(-50%);font:inherit;font-size:13px;
          color:var(--deeptext);background:none;border:0;padding:6px 8px;cursor:pointer;text-decoration:underline}
input[type=email],input[type=password]{width:100%;padding:10px 12px;border:1px solid var(--line);
       font-family:inherit;font-size:14px;background:#fff}
input:focus,textarea:focus,select:focus{border-color:var(--deep)}
:focus-visible{outline:2px solid var(--deep);outline-offset:2px}
input:focus-visible,textarea:focus-visible,select:focus-visible{outline-offset:0}
.hint{font-size:13px;color:var(--mut);margin-top:5px}
.btn{padding:10px 18px;border:none;background:var(--deep);color:#fff;font-family:inherit;
     font-size:14px;font-weight:700;cursor:pointer;margin-top:14px}
.btn.sub{background:#fff;color:var(--deeptext);border:1px solid var(--deep)}
.btn.link{background:none;border:none;color:var(--mut);font-weight:500;
          text-decoration:underline;cursor:pointer;padding:0;margin:0;font-size:13px}
.alt{margin-top:12px;font-size:13px;color:var(--mut)}
.alt a{color:var(--deeptext);font-weight:700}
.error{background:#FBEDEA;border:1px solid var(--seal);color:var(--seal);
       padding:9px 13px;font-size:13.5px;margin-bottom:10px;word-break:keep-all}
.error a{color:inherit;font-weight:700}
.error .more{display:block;margin-top:2px}
.hosthead{margin:-4px 0 12px;font-size:15px;color:var(--mut)}
.hosthead b{color:var(--ink)}
.byganum{margin:22px 0 0;text-align:center;font-size:12.5px;color:var(--mut)}
.byganum a{color:var(--deeptext);font-weight:700}
.keepfirst{border:1px solid var(--amber);background:var(--ambersoft);padding:10px 14px;margin:0 0 14px}
.keepfirst p{margin:0 0 6px}
.keepfirst .keepbtns{display:flex;flex-wrap:wrap;gap:8px;margin:8px 0 0}
.keepfirst .btn{margin:0}
.notice{background:var(--deepsoft);border:1px solid var(--deep);color:var(--deeptext);
        padding:9px 13px;font-size:13.5px;margin-bottom:10px}
.empty{background:#fff;border:1px dashed var(--line);padding:22px 18px;text-align:center;
       color:var(--mut);font-size:13.5px}
.empty a{color:var(--deeptext);font-weight:700}
.panelhead{display:flex;justify-content:space-between;align-items:flex-start;
           flex-wrap:wrap;gap:12px;margin-bottom:12px}
.crumb{font-size:13px;color:var(--mut);margin-bottom:6px}
.crumb a{color:var(--mut)}
.tablewrap{overflow-x:auto;-webkit-overflow-scrolling:touch}
table.list{width:100%;min-width:600px;border-collapse:collapse;background:#fff;
           border:1px solid var(--line);font-size:13.5px}
table.list th{background:var(--deepsoft);color:var(--deeptext);font-size:13px;font-weight:700;
              padding:6px 11px;text-align:center;border-bottom:1px solid var(--line)}
table.list td{padding:6px 11px;text-align:center;border-bottom:1px solid #EAE7DE}
table.list tr:last-child td{border-bottom:none}
table.list td.l{text-align:left}
table.list td.l a{color:var(--ink);font-weight:700;text-decoration:none}
table.list td.l a:hover{text-decoration:underline}
table.list a.del{color:var(--mut);font-size:13px}
.badge{display:inline-block;padding:2px 10px;border-radius:12px;font-weight:700;font-size:13px;
       border:1px solid var(--line);color:var(--mut);background:#fff;white-space:nowrap}
table.list td:first-child,table.list th{white-space:nowrap}
.badge.open{border-color:var(--deep);color:var(--deeptext);background:var(--deepsoft)}
.badge.closed{border-color:var(--amber);color:var(--amber);background:var(--ambersoft)}
select{width:100%;padding:10px 12px;border:1px solid var(--line);font-family:inherit;
       font-size:14px;background:#fff}
input[type=text],input[type=datetime-local]{width:100%;padding:10px 12px;border:1px solid var(--line);
       font-family:inherit;font-size:14px;background:#fff}
label.radio{display:flex;align-items:center;gap:8px;font-weight:400;font-size:14px;margin:6px 0}
label.radio input{width:auto}
.opt{font-weight:400;color:var(--mut);font-size:13px}
.cancel{margin-left:14px;font-size:13px;color:var(--mut)}
.btn.warn{background:var(--seal)}
.next{margin-top:16px;padding:10px 14px;background:#fff;border:1px dashed var(--line);
      font-size:13px;color:var(--mut)}
.danger{margin-top:16px;padding-top:10px;border-top:1px solid var(--line);font-size:13px}
.danger a{color:var(--seal)}
h3{font-size:15.5px;margin:16px 0 7px;padding-left:10px;border-left:3px solid var(--deep)}
.warnbox{background:var(--ambersoft);border:1px solid var(--amber);color:#7A4F0E;
      padding:10px 14px;font-size:13.5px;margin-bottom:10px}
.warnbox ul{margin:8px 0 0 18px}
.warnbox li{margin:3px 0}
.warnfoot{margin-top:9px;font-size:13px;color:#8A6420}
.reopenbox{margin:10px 0 14px}
.reopenform{max-width:none;margin-top:12px}
.reopenform label{color:#7A4F0E;margin-top:0}
.reopenform input[type=text]{max-width:340px;background:#fff}
.reopenwhy{font-size:13px;color:#8A6420;margin-top:6px;line-height:1.6;word-break:keep-all}
.reopenask{font-weight:700;font-size:13.5px;color:#7A4F0E;margin-top:4px}
.reopenpick{align-items:flex-start;margin:7px 0;color:#7A4F0E}
.reopenpick input{margin-top:4px}
.reopenpick .radionote{color:#8A6420}
.reopenname{margin-top:10px;padding-top:10px;border-top:1px solid var(--amber)}
.reopenname[hidden]{display:none}
.reopenacts{display:flex;gap:10px;align-items:center;flex-wrap:wrap;margin-top:12px}
.reopenacts .btn{margin:0;text-decoration:none}
.attrrow{border:1px solid var(--line);border-radius:8px;padding:9px 12px;margin-top:8px}
.attrrow label{margin-top:10px}
.attrrow label:first-of-type{margin-top:0}
label.check{display:flex;align-items:center;gap:8px;font-weight:400;margin-top:10px}
form.fields{max-width:none}
.field{display:grid;grid-template-columns:380px minmax(0,1fr);column-gap:18px;align-items:start;
       margin:0;padding:7px 0;border-bottom:1px solid var(--line)}
.field:has(> .fin > details:first-child) .fhint{padding-top:9px}
.field .fin .attrrow:first-child{margin-top:0}
label.radio{flex-wrap:wrap}
label.radio .radionote{flex-basis:100%;padding-left:24px;font-size:13px;color:var(--mut);line-height:1.4;margin-top:-4px}
form.fields > .field:first-of-type{border-top:1px solid var(--line)}
.field .fin label{margin-top:0;line-height:1.6}
.field .fin label + label,.field .fin .attrrow + .attrrow label:first-of-type{margin-top:10px}
.field .fin .attrrow label{margin-top:10px}
.field .fin .attrrow:first-child label:first-child{margin-top:0}
.field .fin label.check{margin-top:2px}
.field .fin label.radio{margin:4px 0}
.field .fin > label:first-child + label.radio{margin-top:2px}
.fhint{font-size:13px;color:var(--mut);margin:0;padding:1px 0 0 14px;line-height:1.6;
       border-left:1px solid var(--line);align-self:stretch}
.fhint p{margin:0 0 6px}
.fhint p:last-child{margin-bottom:0}
.fhint .why{margin-top:4px}
.fhint .why summary{cursor:pointer;color:var(--ink);font-size:13px}
.fhint .why p{margin:6px 0 0}
.field .axispick,.field .practicepick{margin-top:0}
.fhint .axispick{margin:4px 0 10px;background:var(--paper)}
.fhint .axispick summary{color:var(--ink)}
.fhint .axispick .hint{margin-top:8px}
.field .practicepick{border-top:0;padding-top:0}
.field .axispick summary,.field .practicepick summary{line-height:1.6}
form.fields .btn{margin-top:18px}
@media (max-width:900px){
  .field{display:block;border:0;padding:0;margin-top:14px}
  form.fields > .field:first-of-type{border:0}
  .field .fin{max-width:380px}
  .fhint{margin-top:5px;padding:0;border-left:0}
}
label.check input{width:auto}
.purpose .question{display:block;margin:6px 0 8px;padding:8px 12px;border-left:3px solid var(--deep);background:var(--deepsoft);font-weight:600}
.scale.untouched .slider{opacity:.55}
.scale.untouched .answertext{color:var(--amber)}
.skipnote{color:var(--amber)}
.surveyline{display:block;margin-top:6px;font-family:'Noto Sans KR',sans-serif;font-size:13px;color:var(--ink);line-height:1.4}
.surveyline b{font-weight:600}
.surveyline small{display:block;color:var(--mut);font-size:13px}
.practicepick{margin-top:22px;border-top:1px dashed var(--line);padding-top:10px}
.practicepick summary{font-size:13px;color:var(--mut);cursor:pointer}
.practicepick .radiolabel{white-space:nowrap;font-weight:600}
.axispick{margin:14px 0 6px;border:1px solid var(--line);border-radius:8px;padding:8px 12px}
.axispick summary{font-size:14px;cursor:pointer}
.axispick .radiolabel{white-space:nowrap;font-weight:600}
.axisnames{margin-top:6px}
.axisnames label{margin-top:8px}
.fixedval{margin:4px 0 0;font-size:14px}
.tierbadge{display:inline-block;font-size:13px;padding:1px 6px;border:1px solid var(--amber);color:var(--amber);border-radius:3px;margin-left:6px;vertical-align:middle}
.term{display:inline}
.term small{display:inline;font-size:.82em;color:var(--mut);font-weight:400;margin-left:4px}
.term small::before{content:"("}.term small::after{content:")"}
@media (max-width:640px){.hero .term small{display:none}}
.plainlist{margin:6px 0 0 18px;font-size:14px;line-height:1.7}
.gsethead{margin:6px 0}
.sealbox{border:1px dashed var(--line);padding:16px;margin:12px 0;background:#fff}
.sealbox p{margin:0 0 8px}
table.people th small{font-weight:400;color:var(--mut)}
table.people th small.crover{color:var(--amber)}
table.people tr.top td{background:var(--ambersoft)}
input[readonly]{background:var(--paper);color:var(--mut)}
.attrask{background:var(--paper);border:1px solid var(--line);border-radius:10px;
         padding:14px 16px;margin:14px 0 18px}
.attrhead{font-weight:700;font-size:14.5px;margin:0 0 6px}
.attrwhy{font-size:13px;color:var(--mut);line-height:1.65;margin:0 0 12px}
.attrq{margin-top:12px}
.attrlabel{font-weight:700;font-size:13.5px;margin:0 0 7px}
.attropts{display:flex;flex-wrap:wrap;gap:7px}
.attropt{display:flex;align-items:center;gap:6px;margin:0;font-weight:400;font-size:13.5px;
         border:1px solid var(--line);border-radius:999px;padding:7px 13px;background:#fff;
         cursor:pointer;min-height:38px}
.attropt input{width:auto;margin:0}
.attropt:has(input:checked){border-color:var(--deep);background:var(--deepsoft);font-weight:700}
.attrpick{display:flex;flex-wrap:wrap;gap:7px;margin:10px 0 4px}
.pill{font-size:13px;text-decoration:none;color:var(--mut);border:1px solid var(--line);
      border-radius:999px;padding:6px 14px;background:#fff}
.cmpcap{font-size:13px;color:var(--mut);margin:2px 0 7px;line-height:1.6;word-break:keep-all}
.cmpcap b{color:var(--ink)}
table.list.cmp th,table.list.cmp td{text-align:right;white-space:nowrap}
table.list.cmp th.l,table.list.cmp td.l{text-align:left;white-space:normal}
table.list.cmp th.whole,table.list.cmp td.whole{background:var(--paper)}
table.list.cmp .cmpn{display:block;font-weight:400;color:var(--mut);font-size:12px}
table.list.cmp .badge{margin-top:2px}
.stratum.folded{display:none}
.pill.last{border-style:dashed}
.pill.last.on{border-style:solid}
.pill.on{color:#fff;background:var(--deep);border-color:var(--deep);font-weight:700}
.stratum{border:1px solid var(--line);border-radius:10px;padding:12px 14px;margin-top:12px}
.stratumhead{display:flex;flex-wrap:wrap;align-items:baseline;gap:10px;margin-bottom:8px}
.stratumbasis{font-size:13px;color:var(--mut)}
.stratumnote{font-size:13px;color:var(--mut);margin:0;line-height:1.6}
.gatebox{border:2px solid var(--deep);border-radius:12px;padding:14px 18px;margin:12px 0 14px}
.gatehead{font-weight:800;font-size:16px;color:var(--deeptext);margin:0 0 6px}
.gatelead{font-size:13px;color:var(--mut);line-height:1.7;margin:0 0 12px}
.gatelist{margin:0 0 12px;padding-left:20px;font-size:13.5px;line-height:1.8}
.gatelist ul{margin:2px 0 6px;padding-left:18px}
.gatedef{color:var(--mut);font-size:13px;margin-left:6px}
.gatemiss{color:var(--amber);font-size:13px;margin-left:6px;font-weight:700}
.gatecount{font-size:13px;margin:0 0 12px}
.gatewarn{font-size:13px;color:#7A4F0E;background:var(--ambersoft);border:1px solid var(--amber);
          border-radius:8px;padding:9px 12px;line-height:1.65;margin:0 0 12px}
.gateacts{display:flex;flex-wrap:wrap;gap:10px;align-items:center}
.gateacts form{margin:0}
.gatefoot{font-size:13px;color:var(--mut);margin:12px 0 0;line-height:1.65}
select[disabled]{background:var(--paper);color:var(--mut)}
.emptybox{border:1px dashed var(--line);border-radius:10px;padding:14px 16px;margin:10px 0;
          background:var(--paper)}
.emptyhead{font-weight:700;font-size:15px;margin:0 0 8px}
.emptywhy{font-size:13px;color:var(--mut);line-height:1.65;margin:0 0 10px}
.emptyfoot{font-size:13px;color:var(--mut);line-height:1.6;margin:10px 0 0}
.tienote{font-size:13px;color:var(--mut);line-height:1.65;margin:10px 0;
         background:var(--paper);border-left:3px solid var(--line);padding:8px 12px}
.tierhead{font-size:13px;font-weight:700;color:var(--deeptext);margin:14px 0 6px}
.pickitem.tied{border-left:3px solid var(--deepsoft);margin-left:2px}
.tiesame{color:var(--mut);font-weight:400}
.rateprog{font-size:13px;margin:12px 0 4px}
.rateprog b{font-size:15px;color:var(--deeptext)}
.ratesaved{margin-left:8px;font-size:13px;color:var(--deeptext);background:var(--deepsoft);
           border-radius:10px;padding:2px 8px}
.rateno{display:inline-block;min-width:20px;color:var(--mut);font-size:13px;font-weight:400}
.ratedef{font-size:13px;color:var(--mut);line-height:1.6;margin:4px 0 8px;word-break:keep-all}
.ratecard.blank{border-left:3px solid var(--amber);padding-left:9px}
.journey{display:flex;flex-wrap:wrap;align-items:center;gap:6px;margin:10px 0 4px;
         font-size:13px;color:var(--mut)}
.jstep{white-space:nowrap}
.jstep.done{color:var(--deeptext)}
.jstep.now{color:var(--deeptext);font-weight:800;background:var(--deepsoft);
           border-radius:10px;padding:2px 9px}
.jstep.todo{opacity:.55}
.jarrow{opacity:.4;font-size:13px}
.waitbox{border:1px dashed var(--line);border-radius:10px;padding:16px 18px;
         margin:12px 0;background:var(--paper)}
.waithead{font-size:14px;font-weight:700;margin:0 0 6px}
.waitwhy{font-size:13px;color:var(--mut);line-height:1.75;margin:0 0 8px}
.waitnext{font-size:13px;color:var(--mut);line-height:1.65;margin:0;
          border-top:1px solid var(--line);padding-top:8px}
.waitline{font-size:13px;color:var(--mut);line-height:1.65;margin:6px 0 0}
.solobox{border:1px solid var(--deep);border-radius:10px;padding:14px 16px;margin:12px 0}
.solohead{font-size:13.5px;font-weight:800;color:var(--deeptext);margin:0 0 6px}
.soloway{font-size:13px;line-height:1.75;margin:0 0 6px}
.solofoot{font-size:13px;color:var(--mut);line-height:1.6;margin:0 0 4px}
.solobox form{margin:0}
.guide{margin:12px 0 4px;border:1px solid var(--line);background:#fff;padding:10px 16px}
.guide summary{cursor:pointer;font-weight:700;color:var(--deeptext);font-size:14px}
.guidebody{margin-top:8px;font-size:14px;line-height:1.7}
.guidebody h4{margin:16px 0 4px;font-size:14px}
.guidebody code{background:#F2F0E9;padding:1px 5px;border-radius:3px;font-size:13px}
.guidebody .saythis{margin:6px 0 10px}
.pairtable{border-collapse:collapse;margin:10px 0 8px;font-size:13.5px}
.pairtable th,.pairtable td{border:1px solid var(--line);padding:6px 14px;text-align:center}
.pairtable th{background:var(--paper);font-weight:700;font-size:13px;color:var(--mut)}
.sendtable{width:100%;font-size:13px}
.sendtable td.l{text-align:left;vertical-align:top;line-height:1.5}
.sendtable td small{color:var(--mut);font-size:13px}
.pairtable tr.ok td{background:var(--deepsoft)}
.pairtable tr.ok td:first-child{box-shadow:inset 3px 0 0 var(--bar)}
.saythis{margin:10px 0 12px;padding:12px 16px;border-left:3px solid var(--deep);
         background:var(--paper);font-size:14px;line-height:1.8}
.mailnotice{margin:14px 0 0;padding-top:12px;border-top:1px solid #EFEDE4;
            font-size:13px;color:#8A9391;line-height:1.6}
.sitefoot{margin:22px 0 4px;padding-top:10px;border-top:1px solid var(--line);
          font-size:13px;color:var(--mut);text-align:center}
.sitefoot a{color:var(--mut);text-decoration:none;border-bottom:1px solid transparent}
.sitefoot a:hover{color:var(--deeptext);border-bottom-color:var(--line)}
.footdot{margin:0 7px;opacity:.5}
.respondfoot{font-size:12px;opacity:.7;padding-top:10px}
.panel.intro{max-width:900px}
.introvideo{display:block;width:100%;height:auto;background:#000;margin:14px 0 0}
.introlinks{display:flex;flex-wrap:wrap;gap:10px;margin:18px 0 0}
.trustline{font-size:13px;color:var(--mut);margin:6px 0 0;line-height:1.6}
.steps{font-size:15px;font-weight:700;margin:8px 0 10px}
.sarrow{color:var(--mut);font-weight:400;margin:0 4px}
.why{font-size:13.5px;line-height:1.85;padding-left:20px}
.why li{margin-bottom:10px}
.node{background:#fff;border:1px solid var(--line);padding:12px 14px;margin-bottom:10px}
.node.top{border-left:3px solid var(--deep)}
.nodeform{max-width:none}
.noderow{display:flex;gap:8px;align-items:center;margin-bottom:6px;flex-wrap:wrap}
.noderow input[type=text]{flex:1;width:auto;min-width:0}
.nodeform input[name=definition]{font-size:13px;color:var(--mut);background:#FCFBF7}
.tag{flex:none;font-size:13px;font-weight:700;color:var(--deeptext);background:var(--deepsoft);
     border:1px solid var(--deep);padding:3px 9px;border-radius:12px;white-space:nowrap}
.tag.sub{color:var(--amber);background:var(--ambersoft);border-color:var(--amber)}
.nodeacts{display:flex;gap:12px;align-items:center;margin-top:8px}
.nodeacts form{margin:0;max-width:none}
.nodeacts .btn.link{margin:0;font-size:13px;text-decoration:none}
.nodeacts .del{font-size:13px;color:var(--seal);margin-left:auto}
.children{margin:12px 0 0 22px;padding-left:12px;border-left:1px dashed var(--line)}
.offstage{margin:18px 0 0;border-top:1px solid var(--line);padding-top:10px}
.offstage > summary{cursor:pointer;font-size:13px;color:var(--mut);width:max-content}
.offstage[open] > summary{margin-bottom:4px}
.offstage > h3:first-of-type{margin-top:10px}
.subadd{margin-top:8px}
.subadd > summary{cursor:pointer;font-size:13px;color:var(--mut);width:max-content}
.subadd[open] > summary{margin-bottom:6px}
.addrow{display:flex;gap:8px;flex-wrap:wrap;align-items:center;max-width:none;margin-top:10px}
.addrow input[type=text],.addrow input[type=email]{flex:1;min-width:120px;width:auto}
.addrow.top{margin-top:14px;padding-top:14px;border-top:1px solid var(--line)}
.btn.tiny{padding:8px 14px;font-size:13px;margin:0;flex:none}
.savedtag{flex:none;font-size:13px;font-weight:700;color:var(--deeptext);background:var(--deepsoft);
          border:1px solid var(--deep);border-radius:12px;padding:3px 10px;white-space:nowrap;
          animation:savedfade 2.6s ease-out forwards}
@keyframes savedfade{
  0%{opacity:0;transform:translateX(-4px)}
  12%{opacity:1;transform:translateX(0)}
  70%{opacity:1}
  100%{opacity:0;visibility:hidden}
}
@media (prefers-reduced-motion:reduce){
  .savedtag{animation:savedhold 2.6s steps(1,end) forwards}
  @keyframes savedhold{0%,99%{opacity:1}100%{opacity:0;visibility:hidden}}
}
.respond{max-width:620px;margin-left:auto;margin-right:auto}
@media (min-width:900px){
  .respond.pair{max-width:760px}
}
.respond h2{font-size:21px;margin-bottom:6px}
.step{font-size:13px;font-weight:700;color:var(--deeptext);letter-spacing:.04em;
      margin:16px 0 5px;padding-bottom:4px;border-bottom:1px solid var(--line)}
.step:first-of-type{margin-top:4px}
.purpose{font-size:14.5px;line-height:1.7;margin-bottom:6px}
.setcard{background:#fff;border:1px solid var(--line);padding:11px 14px;margin-bottom:8px}
.setname{font-weight:700;font-size:13.5px;color:var(--deeptext);margin-bottom:8px}
.setitems{list-style:none;margin:0}
.setitems li{padding:5px 0;border-top:1px dashed #EAE7DE;font-size:14px}
.setitems li:first-child{border-top:none}
.setitems .def{display:block;font-size:13px;color:var(--mut);margin-top:2px}
.readybox{background:#fff;border:1px solid var(--deep);padding:13px 16px;margin-top:6px}
.readybox p{font-size:14px;line-height:1.7;margin-bottom:8px}
.readybox .resume{color:var(--deeptext);font-weight:700}
.btn.big{width:100%;padding:15px;font-size:15.5px;margin-top:6px}
.progress{margin-bottom:12px}
.progresstext{font-size:13px;color:var(--mut);margin-bottom:6px}
.progressbar{height:5px;background:#E4E2D9}
.progressbar span{display:block;height:100%;background:var(--deep)}
.setnotice{background:var(--deepsoft);border:1px solid var(--deep);color:var(--deeptext);
           padding:9px 14px;font-size:13px;font-weight:700;margin-bottom:12px}
.setlabel{font-size:13px;color:var(--mut);margin-bottom:10px}
.vs{display:flex;align-items:stretch;gap:10px;margin-bottom:16px}
.vsitem{flex:1;background:#fff;border:1px solid var(--line);border-top:3px solid var(--deep);
        padding:14px 14px 16px;min-width:0}
.vsitem b{display:block;font-size:15.5px;line-height:1.45;word-break:keep-all}
.vsitem .def{display:block;font-size:13px;color:var(--mut);margin-top:7px;line-height:1.6;
             word-break:keep-all}
.vsmid{flex:none;align-self:center;font-size:13px;color:var(--mut)}
.kids{display:block;margin-top:9px;padding-top:8px;border-top:1px dashed #EAE7DE;
      font-size:13px;line-height:1.65;color:var(--mut);word-break:keep-all}
.kidslabel{display:inline-block;margin-right:5px;padding:1px 6px;border-radius:8px;
           background:#F2F0E9;color:var(--mut);font-size:13px;font-weight:700}
.slider{width:100%;accent-color:var(--deep);margin:4px 0;display:block}
.sliderends{display:grid;grid-template-columns:1fr auto 1fr;gap:8px;align-items:end;font-size:13px;color:var(--mut)}
.sliderends .endr{text-align:right}
.sliderends .endm{text-align:center;padding-bottom:1px}
.sliderends b{display:block;color:var(--ink);font-weight:700;word-break:keep-all;line-height:1.35}
.sliderends small{display:block;font-size:12.5px}
.scale{margin-top:2px}
.ticks{position:relative;height:30px;margin:2px 9px 0}
.tick{position:absolute;transform:translateX(-50%);text-align:center;line-height:1.25;
      color:var(--mut);white-space:nowrap}
.tick i{display:block;width:1px;height:5px;background:#C9C6BB;margin:0 auto 3px}
.tick b{display:block;font-size:13px;font-weight:400}
.tick em{display:block;font-size:13px;font-style:normal;color:#8B958F}
.tick.on{color:var(--deeptext)}
.tick.on i{background:var(--deep);height:8px;width:2px}
.tick.on b{font-weight:700}
.tick.on em{color:var(--deeptext);font-weight:700}
@media (max-width:520px){
  .tick:not(.keep) em{display:none}
  .tick em{font-size:12px}
  .tick.keep:first-child em{transform:translateX(25%)}
  .tick.keep:last-child em{transform:translateX(-25%)}
}
.scalehelp{background:#fff;border:1px solid var(--line);padding:14px 16px;margin:12px 0}
.scalehelphead{font-weight:700;color:var(--deeptext);margin:0 0 8px;font-size:14.5px}
.scalehelphead + .scalehelphead,.scalesteps + .hint{margin-top:0}
.scalehelp .scalehelphead:nth-of-type(2){margin-top:16px}
.helpbar{display:grid;grid-template-columns:1fr auto 1fr;gap:10px;align-items:center}
.helpend{font-size:12.5px;color:var(--mut);line-height:1.35;word-break:keep-all}
.helpend.right{text-align:right}
.helpend b{color:var(--ink)}
.helptrack{position:relative;width:clamp(90px,34vw,160px);height:4px;background:var(--deepsoft);
           border-radius:2px}
.helpdot{position:absolute;left:50%;top:50%;width:16px;height:16px;margin:-8px 0 0 -8px;
         border-radius:50%;background:var(--deep)}
.helparrow{position:absolute;top:50%;transform:translateY(-50%);font-size:10px;color:var(--mut)}
.helparrow.l{left:-14px}
.helparrow.r{right:-14px}
.scalehelpline{font-size:13.5px;line-height:1.7;margin:10px 0 0;word-break:keep-all}
.scalesteps{list-style:none;display:flex;flex-wrap:wrap;gap:6px;padding:0;margin:0 0 8px}
.scalesteps li{flex:1 1 0;min-width:58px;text-align:center;background:var(--paper);
               border:1px solid var(--line);padding:6px 4px}
.scalesteps b{display:block;font-size:15px;color:var(--deeptext)}
.scalesteps span{display:block;font-size:12.5px;color:var(--mut);word-break:keep-all}
.answertext{text-align:center;font-size:15px;font-weight:700;color:var(--deeptext);
            margin:16px 0 4px;min-height:24px;word-break:keep-all}
.qbtns{display:flex;gap:10px;margin-top:22px}
.qbtns .btn{flex:1;margin:0;padding:14px}
.saveline{text-align:center;margin-top:14px}
.answers{margin:0 0 22px 0;padding:0;list-style:none;counter-reset:ans}
.answers li{counter-increment:ans;border-bottom:1px solid #EAE7DE}
.answers li:last-child{border-bottom:none}
.answers li a{display:flex;gap:10px;align-items:baseline;padding:11px 4px;
              text-decoration:none;color:var(--ink)}
.answers li a::before{content:counter(ans);flex:none;width:22px;font-size:13px;
                      color:var(--mut);text-align:right}
.answers .apair{flex:1;font-size:13px;color:var(--mut);min-width:0;word-break:keep-all}
.answers .atext{flex:1;font-size:13.5px;font-weight:700;text-align:right;word-break:keep-all}
.answers li.missing .atext{color:var(--seal);font-weight:400}
.answers li a{position:relative;padding-right:22px}
.answers .achev{position:absolute;right:4px;top:50%;transform:translateY(-50%);color:var(--mut);font-size:20px;line-height:1}
.donebox{background:#fff;border:1px solid var(--line);padding:18px 20px;margin-bottom:16px}
.donecount{font-weight:700;font-size:15px;margin-bottom:12px}
.donesub{font-size:13px;color:var(--mut);margin-bottom:6px}
.donelist{margin:0 0 0 18px;font-size:14px;line-height:1.9}
.done h2{color:var(--deeptext)}
.closeblock{margin-top:26px;padding-top:18px;border-top:1px solid var(--line);text-align:center}
.savedline{font-size:14.5px;font-weight:700;color:var(--deeptext);margin-bottom:14px}
.closeblock .btn.big{margin-top:0}
.closehint{font-size:13px;color:var(--mut);line-height:1.75;word-break:keep-all;
           background:#fff;border:1px solid var(--line);padding:13px 16px;margin-top:2px}
.crlist{list-style:none;margin:0 0 22px;padding:0;background:#fff;border:1px solid var(--line)}
.crlist li{display:flex;gap:10px;align-items:center;padding:11px 14px;
           border-bottom:1px solid #EFEDE4;font-size:13.5px}
.crlist li:last-child{border-bottom:none}
.crname{flex:1;min-width:0;word-break:keep-all}
.crbadge{flex:none;font-size:13px;font-weight:700;padding:3px 11px;border-radius:12px;
         white-space:nowrap;border:1px solid}
.crbadge.ok{color:var(--deeptext);background:var(--deepsoft);border-color:var(--deep)}
.crbadge.bad{color:var(--amber);background:var(--ambersoft);border-color:var(--amber)}
.crlist li.now{background:#FCFDFC;border-left:3px solid var(--deep)}
.crlist.final li{gap:12px}
.crback{flex:none;font-size:13px;color:var(--deeptext);text-decoration:underline;white-space:nowrap}
.passedline{margin:-14px 0 20px}
.exitform{max-width:none;margin-top:18px;text-align:center}
.exitbtn{font-size:13px;color:var(--mut);text-decoration:underline}
.okbox{background:#fff;border:1px solid var(--deep);padding:18px 20px}
.okline{font-weight:700;color:var(--deeptext);margin-bottom:12px}
.whybox{background:var(--deepsoft);border-left:3px solid var(--deep);padding:12px 15px;
        font-size:13px;line-height:1.75;color:var(--deeptext);word-break:keep-all;margin-bottom:12px}
.fixcard{background:#fff;border:1px solid var(--line);border-left:3px solid var(--amber);
         padding:16px 18px 18px;margin-bottom:14px}
.fixsentence{font-size:14.5px;line-height:1.8;word-break:keep-all}
.fixcycle{margin-top:8px;padding:10px 12px;background:var(--ambersoft);font-size:13px;
          line-height:1.75;color:#7A4F0E;word-break:keep-all}
.fixpair{display:flex;gap:8px;align-items:center;justify-content:space-between;
         margin:16px 0 6px;font-size:13.5px;font-weight:700}
.fixpair .vsmid{font-weight:400}
.exitline{margin-top:18px;text-align:center}
.exitline a{font-size:13px;color:var(--mut);text-decoration:underline}
.panel.results .sumline{margin:12px 0 4px}
.fold{margin:16px 0 7px}
.fold > summary{cursor:pointer;list-style:none;display:flex;align-items:baseline;gap:8px;
                padding-left:10px;border-left:3px solid var(--deep)}
.fold > summary::-webkit-details-marker{display:none}
.fold > summary::after{content:"펼치기";font-size:12px;color:var(--mut);text-decoration:underline}
.fold[open] > summary::after{content:"접기"}
.foldhead{font-size:15.5px;font-weight:700}
.foldn{font-size:13px;color:var(--mut)}
.fold[open] > summary{margin-bottom:8px}
.whyfold{margin:6px 0 0;font-size:13px;color:var(--mut);line-height:1.6}
.whyfold > summary{cursor:pointer;color:var(--deeptext);width:max-content}
.whyfold[open]{padding-bottom:2px}
@media (max-width:640px){
  .statgrid{grid-template-columns:repeat(auto-fit,minmax(78px,1fr))}
}
.statgrid{display:grid;grid-template-columns:repeat(auto-fit,minmax(84px,104px));
          justify-content:start;gap:8px;margin-bottom:4px}
.stat{background:#fff;border:1px solid var(--line);border-top:2px solid var(--deep);
      padding:7px 10px;text-align:center}
.stat b{display:block;font-family:'Noto Serif KR',serif;font-size:19px;line-height:1.2}
.stat span{display:block;font-size:12px;color:var(--mut);margin-top:1px}
.basispub{display:flex;gap:12px;flex-wrap:wrap;align-items:center;justify-content:space-between;
           background:#fff;border:1px solid var(--line);padding:11px 14px;margin:12px 0}
.basispubnow{font-size:13px;color:var(--mut)}
.basispubnow b{color:var(--deeptext)}
.basispubnow b.unset{color:var(--amber)}
.basispub .btn{margin:0}
.basisbar{display:flex;gap:12px;align-items:center;flex-wrap:wrap;background:var(--deepsoft);
          border:1px solid var(--deep);padding:12px 16px}
.basistext{flex:1;min-width:200px;font-size:13.5px;color:var(--deeptext)}
.basisswitch{display:flex;gap:6px}
.basisswitch .btn{margin:0;text-decoration:none}
.wsets.two{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,360px),1fr));gap:12px}
.wsets.two .wset{margin-bottom:0}
.wset{background:#fff;border:1px solid var(--line);padding:12px 14px 13px;margin-bottom:12px}
.morebars{margin-top:8px}
.morebars summary{cursor:pointer;font-size:13px;color:var(--deeptext)}
.morebars .wbar{margin-top:6px}
.wsethead{display:flex;gap:10px;align-items:center;flex-wrap:wrap;margin-bottom:9px;
          padding-bottom:8px;border-bottom:1px solid #EFEDE4}
.wsetname{flex:1;min-width:0;font-weight:700;font-size:13.5px;word-break:keep-all}
.wbars{display:grid;grid-template-columns:fit-content(33%) minmax(0,1fr) max-content;
       column-gap:10px;row-gap:6px;align-items:center;font-size:13px}
.wbars .wbar{display:contents}
.wbars .wname{width:auto}
.wbar{display:flex;align-items:center;gap:10px;margin:4px 0;font-size:13px}
.wname{flex:none;width:34%;min-width:0;word-break:keep-all;text-align:right;color:var(--mut)}
.wtrack{flex:1;height:14px;background:#EFEDE6;min-width:0}
.wfill{display:block;height:100%;background:var(--bar)}
.wval{flex:none;width:52px;text-align:right;font-weight:700}
.ifwrap{background:#fff;border:1px solid var(--line);padding:12px 14px 14px;margin:10px 0 14px}
.iffig{display:grid;grid-template-columns:minmax(0,1fr) 270px;gap:16px;align-items:start}
.ifchart{min-width:0;position:relative}
.ifchart{margin-top:22px}
.iftoggle{position:absolute;top:-22px;right:0;font-size:13px;color:var(--mut);display:flex;align-items:center;gap:4px;cursor:pointer;background:#fff;padding:1px 6px;border:1px solid var(--line);border-radius:3px;z-index:1;margin:0}
.ifsvg{display:block;font-family:inherit;overflow:hidden;max-width:100%}
.ifcell{fill:var(--paper);stroke:none;cursor:pointer}
.ifquad:hover .ifcell{fill:var(--deephover)}
.ifcell.on{fill:var(--deepsoft);stroke:var(--bar);stroke-width:0.6}
.ifqname{font-size:2.1px;fill:#8A928F;font-weight:500;pointer-events:none;paint-order:stroke;stroke:#fff;stroke-width:0.5}
.iftick{font-size:2px;fill:#9AA3A0}
.ifaxis{font-size:2.4px;fill:var(--mut);font-weight:700}
.ifmid{stroke:var(--bar);stroke-width:0.35}
.ifmeanlines line{stroke:var(--amber);stroke-width:0.35;stroke-dasharray:1.2 0.9}
.ifmeanlines.off{display:none}
.ifpt{fill:var(--bar);cursor:pointer}
.ifring{fill:none;stroke:var(--seal);stroke-width:0.45;pointer-events:none}
.ifdot.boundary .ifpt{fill:#fff;stroke:var(--bar);stroke-width:0.5}
.ifdot.boundary .ifnumtext{fill:var(--bar)}
.ifdot.multi .ifpt{stroke:#fff;stroke-width:0.4}
.ifnumtext{font-size:2.2px;fill:#fff;font-weight:700;pointer-events:none}
.ifnumtext.range{font-size:1.6px}
.ifwrap.zoomed .ifnumtext{font-size:1.4px}
.ifwrap.zoomed .ifnumtext.range{font-size:1.1px}
.ifwrap.zoomed .ifqname{font-size:1.1px}
.ifwrap.zoomed .ifaxis{display:none}
.ifwrap.zoomed #ifticks{display:none}
.ifzstrip{fill:#fff;fill-opacity:.8}
.ifztick{fill:#6B7370}
.ifzbg{fill:#fff;fill-opacity:.94;stroke:var(--line);stroke-width:0.14}
.ifztext{fill:var(--ink)}
.ifleader{stroke:var(--bar);stroke-linecap:round;fill:none}
.ifdot.hot .ifpt{fill:var(--seal)}
.ifzl.hot .ifzbg{stroke:var(--seal);stroke-width:0.4}
.ifzl.hot .ifztext{fill:var(--seal);font-weight:700}
.ifqcell li.hot{color:var(--seal);font-weight:700}
.ifqcell li.hot .iflgnum{background:var(--seal)}
.ifside{min-width:0}
.ifn{font-size:13px;margin:0 0 8px;display:flex;flex-wrap:wrap;align-items:center;gap:6px 10px}
.ifn small{color:var(--mut)}
.ifn .btn{margin:0;text-decoration:none}
.ifmini{display:grid;grid-template-columns:1fr 1fr;gap:3px;background:var(--line);border:1px solid var(--line)}
.ifqcell{background:var(--paper);padding:8px 8px 10px;cursor:pointer;font-size:13px;color:var(--ink);min-width:0}
.ifqcell:hover{background:var(--deephover)}
.ifqcell.on{background:var(--deepsoft);outline:2px solid var(--deep);outline-offset:-2px}
.ifqcell.dim{opacity:.4}
.ifqcell.edge{margin-top:6px;border:1px solid var(--line);cursor:default}
.ifqhead{margin:0 0 4px;font-size:13px;color:var(--mut);display:flex;gap:5px;align-items:baseline;flex-wrap:wrap}
.ifqhead b{color:var(--ink)}
.ifqhead small{font-size:13px}
.ifqhead span{margin-left:auto;font-size:13px}
.ifqcell ul{list-style:none;margin:0;padding:0;line-height:1.45}
.ifqcell li{padding:1px 0;display:flex;gap:5px;align-items:baseline;cursor:pointer}
.ifqcell.n7 ul{font-size:.92em}
.ifqcell.n10 ul{font-size:.84em}
.iflgnum{display:inline-block;min-width:18px;text-align:center;font-size:13px;font-weight:700;color:#fff;background:var(--bar);border-radius:9px;padding:0 4px;line-height:16px;flex:none;font-family:inherit}
.ifqcell.edge .iflgnum{background:#fff;color:var(--bar);border:1px solid var(--bar);line-height:14px}
.ifqbtn.all{margin-top:8px;width:100%;border:1px solid var(--line);background:#fff;color:var(--deeptext);font-weight:700;padding:8px;font-family:inherit;cursor:pointer}
.ifqbtn[hidden]{display:none}
.strata{margin:6px 0 10px}
.ifghost{fill:none;stroke:#B8BDBB;stroke-width:0.4}
.ifmove{stroke:var(--seal);stroke-width:0.5;stroke-dasharray:1.4 0.8}
.ifarrowhead{fill:var(--seal)}
.shift{font-weight:700;font-size:13px}
.shift.up{color:var(--deeptext)}.shift.down{color:var(--seal)}.shift.same{color:var(--mut)}.shift.new{color:var(--amber)}
.delta{color:var(--mut);margin-left:3px}
.setsdiff{margin-top:8px;font-size:13px}
.setsdiff summary{cursor:pointer;color:var(--deeptext)}
.setsdiff .setname{margin:8px 0 4px;font-weight:700;color:var(--mut)}
.strata .attrpick.sub{margin-top:2px}
.pill.off{opacity:.55;cursor:not-allowed}
.pill small{font-weight:400;color:var(--mut)}
.pill.on small{color:inherit}
.ifmode{margin-top:10px;font-size:13px;color:var(--mut);display:flex;gap:10px;flex-wrap:wrap;align-items:center}
.ifmode label{display:flex;align-items:center;gap:3px;cursor:pointer;margin:0}
.iffacts{margin-top:12px}
.iffact{font-size:13.5px;margin:8px 0;line-height:1.6}
.iffact ul{margin:4px 0 0;padding-left:20px}
.ifcrowd{font-size:13.5px;line-height:1.6}
.iftable{margin-top:6px}
.ifwrap.big{border:none;background:transparent;padding:0;margin:0}
.ifwrap.big .iffig{gap:20px;align-items:start}
.ifwrap.big .ifn{font-size:clamp(14px,1.2vw,20px)}
.ifwrap.big .iftoggle{font-size:14px;padding:2px 8px}
.ifwrap.big .ifqcell{font-size:clamp(13px,1.05vw,19px);padding:10px 10px 12px}
.ifwrap.big .ifqhead{font-size:clamp(13px,1vw,18px)}
.ifwrap.big .ifqhead small,.ifwrap.big .ifqhead span{font-size:clamp(13px,.85vw,15px)}
.ifwrap.big .iflgnum{min-width:24px;font-size:clamp(13px,.85vw,14px);line-height:20px;border-radius:11px}
.ifwrap.big .ifqbtn.all{font-size:clamp(14px,1.1vw,18px);padding:10px}
.ifwrap.big .iffact,.ifwrap.big .ifcrowd{font-size:16px}
@media (max-width:640px){
  .iffig,.ifwrap.big .iffig{grid-template-columns:1fr!important}
  .ifsvg{width:100%!important;height:auto!important;aspect-ratio:1/1}
  .ifchart{margin-top:24px}
}
.ifsect{margin:16px 0 8px;border-top:1px solid var(--line);padding-top:12px}
.ifsect > summary{cursor:pointer;font-family:'Noto Serif KR',serif;font-size:16px;font-weight:700;
                  color:var(--deeptext);list-style-position:outside;padding-left:2px}
.ifsect[open] > summary{margin-bottom:8px}
.ifsect > summary b{color:var(--deeptext)}
.ifbar{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin:8px 0 10px}
.ifbar .btn{margin:0}
.ifbar .ifstatus{font-size:13.5px}
.ifbar .ifstatus b{color:var(--deeptext)}
.wset.global .wbar.top .wfill{background:var(--seal)}
.wset.global .wname{color:var(--ink)}
.wtop{display:block;font-size:13px;color:var(--mut);font-weight:400}
table.list tr.top td{background:var(--deepsoft)}
table.list tr.top td:first-child{box-shadow:inset 3px 0 0 var(--bar)}
.csvrow{display:flex;gap:8px;flex-wrap:wrap}
.csvrow .btn{margin:0;text-decoration:none}
.ranklist{list-style:none;margin:0 0 8px;padding:0}
.ranklist li{display:flex;align-items:center;gap:9px;
             padding:8px 0;border-bottom:1px solid #EFEDE4;font-size:13px}
.ranklist li:last-child{border-bottom:none}
.rankno{flex:none;width:46px;text-align:right;color:var(--mut);font-size:13px;
        white-space:nowrap}
.rankname{flex:none;width:36%;min-width:0;word-break:keep-all}
:root{--g1:#DCEDE5;--g1b:var(--deeptext);--g2:#F6EBD8;--g2b:#8A5A10;
      --g3:#E3E7F2;--g3b:#3A4E86;--g4:#F2E3EA;--g4b:#8A3A5E}
.live{max-width:none}
header.liveband{padding:8px 16px;gap:12px}
header.liveband .brand{font-size:18px}
.livetitle{flex:1;font-family:'Noto Serif KR',serif;font-size:16px;font-weight:700;
           white-space:nowrap;overflow:hidden;text-overflow:ellipsis;min-width:0}
.liveback{font-size:13px;color:var(--mut);white-space:nowrap}
.livebar{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap;
         background:#fff;border:1px solid var(--line);padding:8px 14px}
.livebar-l,.livebar-r{display:flex;align-items:center;gap:10px;flex-wrap:wrap}
.livebar-l{flex:1 1 480px;min-width:0;flex-direction:column;align-items:flex-start;gap:2px}
.livebar-r{flex:none;margin-left:auto}
.joinrow{display:flex;align-items:center;gap:10px;flex-wrap:wrap}
.joinhow{display:flex;align-items:baseline;gap:8px;flex-wrap:wrap;font-size:13px;color:var(--mut)}
.joinurl{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;color:var(--ink);user-select:all}
.joinhow .btn.link.tiny{padding:0;font-size:13px;text-decoration:underline}
.joinnote{word-break:keep-all}
.livebar .btn{margin:0}
.livestatus{display:flex;align-items:baseline;gap:14px;flex-wrap:wrap;margin:8px 2px 0}
.livestatus .livecount{margin:0}
.liveq{font-size:13px;color:var(--mut);flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.livehelp{font-size:13px;color:var(--mut);flex-basis:100%}
.livehelp summary{cursor:pointer;color:var(--deeptext);width:max-content}
.livehelp-body{margin-top:6px;padding:10px 14px;border:1px solid var(--line);background:var(--paper);line-height:1.65;max-width:none}
.livehelp-body p{margin:0 0 6px}
.livehelp-body p:last-child{margin-bottom:0}
.livehelp-body form{margin:6px 0 0}
.nowbox{background:#fff;border:1px solid var(--deep);border-left:3px solid var(--deep);
        padding:14px 16px;margin:12px 0 16px}
.nowhead{margin:0 0 7px;font-weight:700;font-size:15px}
.nowacts{display:flex;gap:10px;align-items:center;flex-wrap:wrap;margin:0}
.nowacts .btn{margin:0;text-decoration:none}
.stagebar{background:#fff;border:1px solid var(--line);padding:8px 14px 10px;margin:10px 0 8px}
.stagebar .journey{margin:0 0 6px}
.stagerow{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap}
.stagerow form{margin:0;max-width:none}
.stagerow .btn{margin:0}
.pnow{font-size:13px;color:var(--mut);margin-right:2px}
.stagehint{margin:6px 0 0;font-size:13px;color:var(--mut)}
.stageback{margin:6px 0 0;font-size:13px;color:var(--mut);display:flex;flex-wrap:wrap;
           align-items:baseline;gap:8px}
.stageback .hint{margin:0;font-size:12.5px}
.coldel{margin:-4px 0 6px;display:flex;justify-content:flex-end;gap:10px;align-items:center}
.coldel form{margin:0;max-width:none}
.coldel .btn.link{font-size:12px;color:var(--mut)}
.coldel .btn.link:hover{color:var(--seal)}
.colrename input[name=name]{font-size:13px;padding:4px 6px;width:100%;
                            border:1px solid var(--deep);background:#fff}
.colrename{flex:1;min-width:0}
.renamelist{margin:6px 0 0;padding-left:20px;font-size:13.5px;line-height:1.8}
.renamelist li{word-break:keep-all}
.legacyif{background:var(--ambersoft);border-left:3px solid var(--amber);padding:8px 12px;
          margin:6px 0 12px;word-break:keep-all}
.showaxes{display:flex;flex-wrap:wrap;gap:clamp(16px,3vw,44px);justify-content:center;
          margin:clamp(10px,2vh,24px) 0}
.axprog{font-size:clamp(17px,2vw,30px);word-break:keep-all}
.axprog .axn{color:var(--deeptext);font-weight:700;margin-left:6px}
.livehead{display:flex;justify-content:space-between;align-items:flex-start;gap:16px;
          flex-wrap:wrap;margin-bottom:8px}
.q{font-family:'Noto Serif KR',serif;font-size:22px;font-weight:700;line-height:1.4;
   word-break:keep-all}
.livemeta{flex:none;text-align:right}
.livemeta .joinhow{justify-content:flex-end;margin-top:4px}
.joinbox{display:flex;gap:8px;align-items:center;justify-content:flex-end;flex-wrap:wrap}
.joinlabel{font-size:13px;color:var(--mut)}
.joincode{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:22px;
          letter-spacing:.12em;color:var(--deeptext)}
.livecount{margin-top:8px;font-size:13px;color:var(--mut)}
.livecount b{color:var(--ink)}
.countwhy{margin-top:6px;font-size:13px;color:var(--mut);line-height:1.65;
          word-break:keep-all;max-width:340px}
.dotpulse{width:9px;height:9px;border-radius:50%;background:var(--seal);display:inline-block;
          margin-right:6px;animation:pu 1.4s infinite}
@keyframes pu{0%,100%{opacity:1}50%{opacity:.3}}
.wall{display:grid;grid-template-columns:repeat(auto-fill,minmax(190px,1fr));gap:10px;
      margin-top:14px;min-height:110px}
.card{background:#FFFDF5;border:1px solid #E4DFC8;border-left:4px solid var(--amber);
      padding:10px 14px;font-size:14px;box-shadow:2px 2px 0 rgba(0,0,0,.05);
      animation:pop .35s;word-break:keep-all;overflow-wrap:anywhere}
@keyframes pop{from{transform:scale(.6);opacity:0}to{transform:scale(1);opacity:1}}
.card,.qbox,.q,.distname,.gchip,.ratename,.ratedef,.itemdef,.itemlist li,.evalitems li,
.showitems li,.rk .nm,.showgroup h3,.showgroup .card,.linkbox,.gatelist li,.jstep,
.waitmore,.showjoinurl,.minuteshead,
.vsitem b,.vsitem .def,.vsitem .kids,.sliderends b,.setitems .def,.setlabel,
.wname,.wtop,.wsetname,.ifqcell li,.iffact,.ifdivided,table.list td.l,
.pickname,.pickcards,.gsumname,.foldhead{overflow-wrap:anywhere}
.grouping{display:grid;grid-template-columns:340px minmax(0,1fr);gap:12px;margin-top:14px;
          align-items:start}
.col{border:1px dashed var(--line);background:#fff;padding:10px;display:flex;flex-direction:column;min-height:0}
.col.hov{border-color:var(--deep);background:var(--deepsoft)}
.col h4{font-size:14px;padding:6px 9px;margin-bottom:8px;border-radius:4px}
.col h4[data-group]{cursor:default}
.col h4.poolhead{background:#EFEDE6;color:var(--mut)}
.col h4.g1{background:var(--g1);color:var(--g1b)}
.col h4.g2{background:var(--g2);color:var(--g2b)}
.col h4.g3{background:var(--g3);color:var(--g3b)}
.col h4.g4{background:var(--g4);color:var(--g4b)}
.col .card{margin-bottom:8px;cursor:grab}
.col .card:active{cursor:grabbing}
.colbody{overflow-y:auto;min-height:38px}
.col.pool{max-height:min(62vh,560px)}
.col.pool .colbody{flex:1}
.shelf{display:grid;grid-template-columns:repeat(auto-fill,minmax(168px,1fr));gap:10px;
       align-content:start;max-height:min(62vh,560px);overflow-y:auto;padding-right:2px}
.shelf .col .colbody{max-height:48px}
.shelf .col:empty{min-height:0}
.grouping.expanded{grid-template-columns:1fr}
.grouping.expanded .col.pool,.grouping.expanded .shelf{max-height:none;overflow:visible}
.grouping.expanded .colbody{max-height:none;overflow:visible}
.grouping.expanded .shelf{grid-template-columns:repeat(auto-fill,minmax(260px,1fr))}
.grouping.expanded .col.pool .colbody{display:grid;grid-template-columns:repeat(auto-fill,minmax(210px,1fr));gap:8px;align-content:start}
.grouping.expanded .col.pool .card{margin-bottom:0}
.viewtoggle{display:flex;gap:6px;align-items:center;margin:10px 0 0;font-size:13px;color:var(--mut)}
.viewtoggle .btn{margin:0}
.viewtoggle .btn.on{background:var(--deep);color:#fff;border-color:var(--deep)}
.checknudge{margin:6px 0 0;font-size:13px;color:var(--mut)}
.card.picked{border-left-color:var(--deep);background:var(--deepsoft);box-shadow:0 0 0 2px var(--deep) inset}
.grouping.picking .shelf h4,.grouping.picking .pool h4{cursor:pointer;outline:1px dashed var(--deep);outline-offset:2px}
.pickbar{grid-column:1/-1;display:flex;align-items:center;gap:10px;font-size:13px;color:var(--deeptext);
         background:var(--deepsoft);border:1px solid var(--deep);padding:7px 12px}
.pickbar .btn.link{margin:0;font-size:13px;text-decoration:underline}
.pickbar[hidden]{display:none}
@media (max-width:820px){
  .grouping{grid-template-columns:1fr}
  .col.pool,.shelf{max-height:none}
  .shelf .col,.shelf .col .colbody{max-height:none}
  .colbody{overflow:visible}
}
.qbox{background:#fff;border:1px solid var(--line);border-left:3px solid var(--deep);
      padding:16px 18px;font-family:'Noto Serif KR',serif;font-size:18px;font-weight:700;
      line-height:1.5;margin-bottom:16px;word-break:keep-all}
.cardform{max-width:none}
.cardform input[type=text]{font-size:16px;padding:13px 14px}
.card.mine{display:flex;justify-content:space-between;align-items:center;gap:10px}
.carddel{margin:0;max-width:none}
.carddel .btn.link{margin:0;font-size:13px;white-space:nowrap}
.wall.mywall{grid-template-columns:1fr}
.qrscreen{text-align:center;max-width:720px;margin-left:auto;margin-right:auto}
.joininfo{display:flex;gap:28px;align-items:center;justify-content:center;flex-wrap:wrap;margin:16px 0 4px;text-align:left}
.joinqr{background:#fff;border:1px solid var(--line);padding:16px;flex:none}
.joinqr svg{display:block;width:clamp(160px,18vw,240px);height:auto}
.joinbody{min-width:0}
.joinlabel{font-size:13px;color:var(--mut);margin:0 0 3px}
.joinurl{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:clamp(14px,1.3vw,18px);
         margin:0 0 10px;word-break:break-all;user-select:all}
.joincodebig{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:clamp(30px,3.4vw,46px);
             font-weight:700;letter-spacing:.14em;color:var(--deeptext);margin:2px 0 8px;line-height:1.1}
.joincopyline{display:flex;align-items:baseline;gap:10px;flex-wrap:wrap;margin:0 0 8px}
.joincopyline .btn{margin:0}
.joincopyline .hint{margin:0;flex:1;min-width:220px}
.joinnote{font-size:13px;color:var(--mut);margin:0}
.joininfo.big{gap:clamp(20px,3vw,44px);margin-bottom:clamp(10px,1.6vh,20px)}
.joininfo.big .joinqr svg{width:clamp(190px,17vw,280px)}
.joininfo.big .joinlabel{font-size:clamp(13px,1.1vw,17px)}
.joininfo.big .joinurl{font-size:clamp(16px,1.6vw,26px)}
.joininfo.big .joincodebig{font-size:clamp(34px,4.4vw,72px)}
.joininfo.big .joinnote{font-size:clamp(13px,1.1vw,17px)}
.qrbox{display:inline-block;background:#fff;border:1px solid var(--line);padding:18px;margin:18px 0 6px}
.qrbox svg{display:block;width:240px;height:240px}
.bigcode{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:44px;font-weight:700;
         letter-spacing:.16em;color:var(--deeptext);margin:6px 0 2px}
.qrurl{font-size:13px;color:var(--mut);word-break:break-all;margin-bottom:14px}
.codeinput{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:28px;
           letter-spacing:.18em;text-align:center;text-transform:uppercase;padding:14px 12px}
.phasebar{display:flex;justify-content:space-between;align-items:center;gap:14px;flex-wrap:wrap;
          background:#fff;border:1px solid var(--line);padding:12px 16px;margin:14px 0 6px}
.phasebar form{margin:0;max-width:none}
.phasebar .btn{margin:0}
.phasesteps{display:flex;gap:6px;flex-wrap:wrap}
.pstep{font-size:13px;color:var(--mut);background:#F2F0E9;padding:4px 10px;border-radius:12px;
       white-space:nowrap}
.pstep.on{background:var(--deep);color:#fff;font-weight:700}
.collecting{background:#fff;border:1px solid var(--deep);padding:16px 18px}
.collectline{font-size:14px;line-height:1.75;margin-bottom:12px}
.submitted{font-family:'Noto Serif KR',serif;font-size:24px;text-align:center;margin:6px 0 10px}
.submitted b{color:var(--deeptext)}
.evalhead{margin-top:22px}
.evalitems{list-style:none;display:flex;flex-wrap:wrap;gap:8px;margin:0}
.gchip{display:inline-block;font-size:13px;font-weight:700;padding:5px 12px;border-radius:14px}
.gchip.g1{background:var(--g1);color:var(--g1b)} .gchip.g2{background:var(--g2);color:var(--g2b)}
.gchip.g3{background:var(--g3);color:var(--g3b)} .gchip.g4{background:var(--g4);color:var(--g4b)}
.distgrid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,330px),1fr));gap:10px}
.distbox{background:#fff;border:1px solid var(--line);padding:10px 12px;margin-bottom:0}
.disthead{display:flex;justify-content:space-between;align-items:baseline;gap:10px;flex-wrap:wrap;
          margin-bottom:10px}
.distname{font-weight:700;font-size:14px;word-break:keep-all}
.distmean{font-size:13px;color:var(--mut)}
.distrow{display:flex;gap:6px;align-items:flex-end}
.distcell{flex:1;text-align:center}
.distbar{height:46px;background:#F2F0E9;display:flex;align-items:flex-end}
.distbar span{display:block;width:100%;background:var(--bar);min-height:2px}
.distn{font-size:13px;color:var(--mut);margin-top:3px}
.distlabel{font-size:13px;font-weight:700;color:var(--mut)}
.distcell.mine .distbar{outline:2px solid var(--seal);outline-offset:1px}
.distcell.mine .distlabel{color:var(--seal);font-size:15px}
.ratecard{background:#fff;border:1px solid var(--line);padding:14px 16px;margin-bottom:12px}
.ratename{font-weight:700;font-size:15px;margin-bottom:10px;word-break:keep-all}
.ratescale{display:flex;gap:6px}
.rateopt{flex:1;display:flex;flex-direction:column;align-items:center;gap:4px;margin:0;
         cursor:pointer;font-weight:400}
.rateopt input{position:absolute;opacity:0;width:0;height:0}
.ratebox{display:flex;align-items:center;justify-content:center;width:100%;height:46px;
         border:1px solid var(--line);background:#FCFBF7;font-size:17px;font-weight:700;
         color:var(--mut)}
.ratetext{font-size:13px;color:var(--mut);text-align:center;word-break:keep-all;line-height:1.3}
.ratescale.wide{flex-wrap:nowrap;gap:3px}
.ratescale.wide .rateopt{flex:1 1 0;min-width:0}
.ratescale.wide .ratetext:empty{display:none}
.rateopt input:checked + .ratebox{background:var(--deep);border-color:var(--deep);color:#fff}
.rateopt input:focus-visible + .ratebox{outline:2px solid var(--deep);outline-offset:2px}
table.list td.up{color:var(--deeptext);font-weight:700}
table.list td.down{color:var(--seal);font-weight:700}
.frombox{background:#fff;border:1px solid var(--line);border-left:3px solid var(--deep);
         padding:14px 17px;margin-bottom:16px}
.fromhead{font-size:13.5px;font-weight:700;color:var(--deeptext);word-break:keep-all}
.fromlist{margin:8px 0 0 18px;font-size:13px;color:var(--mut);line-height:1.85}
.fromfoot{margin-top:10px;padding-top:9px;border-top:1px solid #EFEDE4;
          font-size:13px;color:var(--mut);line-height:1.7;word-break:keep-all}
.fromfoot a{color:var(--deeptext);font-weight:700}
.badge.session{border-color:var(--seal);color:var(--seal);background:#FBEDEA;margin-left:4px}
.structs{display:grid;gap:8px;margin-bottom:16px}
.struct{display:flex;gap:12px;align-items:flex-start;background:#fff;border:1px solid var(--line);
        padding:14px 16px;cursor:pointer;font-weight:400;margin:0}
.struct input{margin-top:3px;width:18px;height:18px;flex:none;accent-color:var(--deep)}
.struct:has(input:checked){border-color:var(--deep);background:#FCFDFC}
.structbody{flex:1;min-width:0}
.structbody b{font-size:14.5px;word-break:keep-all}
.structtag{display:inline-block;margin-left:6px;padding:1px 8px;border-radius:10px;
           background:var(--deepsoft);color:var(--deeptext);font-size:13px;font-weight:700}
.structwhy{display:block;margin-top:6px;font-size:13px;color:var(--mut);line-height:1.65;
           word-break:keep-all}
.pickcardn{margin-left:6px;font-weight:400;font-size:13px;color:var(--mut)}
.pickwarn{display:block;margin-top:7px;padding:7px 10px;background:var(--ambersoft);
          color:#7A4F0E;font-size:13px;line-height:1.6;word-break:keep-all}
.pickitem.flagged{border-color:var(--amber)}
.planbox{background:#fff;border:1px solid var(--deep);border-top:3px solid var(--deep);
         padding:16px 18px;margin:20px 0 4px}
.planhead{font-size:13px;color:var(--mut);margin-bottom:4px}
.planline{font-family:'Noto Serif KR',serif;font-size:20px;font-weight:700;color:var(--deeptext)}
.planbreak{margin-top:5px;font-size:13px;color:var(--ink)}
.planwhy{margin-top:8px;font-size:13px;color:var(--mut);line-height:1.6;word-break:keep-all}
.planbox .hint{margin-top:10px;padding-top:9px;border-top:1px solid var(--line)}
.nextbox{background:#fff;border:1px solid var(--line);border-top:3px solid var(--deep);
         padding:18px 20px;margin-top:26px}
.nexthead{font-family:'Noto Serif KR',serif;font-size:15px;font-weight:700;color:var(--deeptext);
          margin-bottom:12px}
.nextacts{display:flex;gap:10px;flex-wrap:wrap;align-items:center}
.nextacts .btn{margin-top:0;text-decoration:none}
.nextacts form{max-width:none;margin:0}
.nextacts form:has(.closenamein){display:flex;flex-direction:column;gap:5px;align-items:flex-start}
.closename{margin:0;font-size:13px}
.closenamein{width:min(320px,100%);padding:7px 10px;font-size:13.5px}
.nextacts form:has(.closenamein) .btn{margin-top:3px}
.nextfoot{margin:10px 0 0;font-size:13px;color:var(--mut)}
.nextfoot a{color:var(--deeptext);font-weight:700}
.gsum{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:6px 14px}
.gsumrow{display:flex;justify-content:space-between;gap:10px;align-items:baseline;
         border-bottom:1px solid var(--line);padding:5px 2px;font-size:13.5px}
.gsumname{overflow-wrap:anywhere}
.gsumn{flex:none;color:var(--mut);font-size:13px}
.gsumrow.loose .gsumname{color:var(--mut)}
.nextwhy{margin-top:12px;font-size:13px;color:var(--mut);line-height:1.7;word-break:keep-all}
.nextwhy a{color:var(--deeptext)}
.closebox{display:flex;gap:14px;align-items:center;flex-wrap:wrap;margin-top:12px;
          padding:14px 18px;border:1px solid var(--line);background:#fff}
.closebox .btn{margin:0}
.closenote{flex:1;min-width:220px;font-size:13px;color:var(--mut);line-height:1.7;
           word-break:keep-all}
.closenote a{color:var(--deeptext)}
.sumgrid{display:grid;gap:clamp(14px,2.2vh,28px)}
.sumline{margin:0;font-size:clamp(13px,1.7vh,18px);color:var(--mut);
         padding-bottom:clamp(6px,1vh,10px);border-bottom:1px solid var(--line)}
.sumline b{font-family:'Noto Serif KR',serif;font-size:1.35em;color:var(--deeptext)}
.sumcol{min-width:0}
.sumhead{font-family:'Noto Serif KR',serif;font-size:clamp(15px,2.2vh,24px);font-weight:700;
         color:var(--deeptext);margin-bottom:clamp(6px,1vh,12px);
         padding-bottom:5px;border-bottom:1px solid var(--line)}
.sumcol .showbar{margin:clamp(5px,.9vh,11px) 0}
.sumcol .showbar .nm{font-size:clamp(13px,1.9vh,21px);width:clamp(110px,16vw,260px)}
.sumcol .showbar .track{height:clamp(22px,3.4vh,42px)}
.sumcol .showbar .fill{font-size:clamp(13px,1.6vh,18px)}
.sumtable{width:100%;border-collapse:collapse;background:#fff;border:1px solid var(--line);
          font-size:clamp(13px,1.8vh,19px)}
.sumtable th{background:var(--deepsoft);color:var(--deeptext);font-weight:700;
             padding:clamp(4px,.8vh,9px) 10px;font-size:.82em}
.sumtable td{padding:clamp(4px,.9vh,10px) 10px;text-align:center;border-top:1px solid #EAE7DE}
.sumtable td.l{text-align:left;font-weight:700;word-break:keep-all}
.sumnone{color:var(--mut);font-size:clamp(13px,1.7vh,17px);padding:10px 0}
.sumfoot{margin-top:clamp(8px,1.4vh,16px);font-size:clamp(13px,1.5vh,16px);color:var(--mut)}
.showpanel.summary{padding:clamp(14px,2.4vh,30px) clamp(18px,2.6vw,38px);
                   display:flex;flex-direction:column}
.showpanel.summary .showq{font-size:clamp(17px,3vh,32px);padding-bottom:clamp(8px,1.4vh,16px);
                          margin-bottom:clamp(13px,1.8vh,20px)}
.showpanel.summary .sumgrid{flex:1;align-content:center}
.showlinks{display:flex;gap:8px;flex-wrap:wrap;align-items:center;margin-top:10px}
.forkbox{background:#fff;border:1px solid var(--deep);border-top:3px solid var(--deep);
         padding:20px 22px 18px;margin-bottom:20px}
.forkhead{font-family:'Noto Serif KR',serif;font-size:17px;font-weight:700;color:var(--deeptext);
          margin-bottom:6px;word-break:keep-all}
.forklead{font-size:13px;color:var(--mut);line-height:1.7;word-break:keep-all}
.forkrow{display:flex;gap:14px;flex-wrap:wrap;margin-top:14px}
.forkrow form{flex:1;min-width:230px;max-width:none;margin:0}
.forkrow .btn{margin-top:0;width:100%;padding:14px}
.forkwhy{display:block;margin-top:7px;font-size:13px;color:var(--mut);line-height:1.6;
         word-break:keep-all}
.forkfoot{margin-top:16px;padding-top:12px;border-top:1px solid var(--line);
          font-size:13px;color:var(--mut);line-height:1.7;word-break:keep-all}
.showlink{margin-top:10px}
.showwhy{display:block;margin-top:5px;font-size:13px;color:var(--mut);word-break:keep-all}
.showpanel{background:var(--paper);border:1px solid var(--line);padding:34px 38px 40px;
           margin-top:12px}
.showq{font-family:'Noto Serif KR',serif;font-size:clamp(22px,3.2vw,40px);font-weight:700;
       line-height:1.45;word-break:keep-all;padding-bottom:18px;margin-bottom:22px;
       border-bottom:2px solid var(--deep)}
.showjoin{display:flex;gap:34px;align-items:center;flex-wrap:wrap;margin-bottom:18px}
.showqr svg{width:clamp(150px,17vw,240px);height:auto;display:block}
.showjoininfo{min-width:0}
.showjoinlabel{font-size:clamp(13px,1.1vw,16px);color:var(--mut);margin-top:12px}
.showjoinlabel:first-child{margin-top:0}
.showjoinurl{font-size:clamp(17px,1.9vw,28px);font-weight:500;word-break:break-all}
.showjoinurl b{color:var(--deeptext)}
.showcode{font-family:'Noto Serif KR',serif;font-size:clamp(34px,5vw,72px);font-weight:700;
          color:var(--seal);letter-spacing:.1em;line-height:1.1}
.showcount{font-size:clamp(14px,1.4vw,21px);color:var(--mut);margin:14px 0 4px}
.showcount b{color:var(--ink);font-size:1.25em}
.showstage{font-family:'Noto Serif KR',serif;font-size:clamp(20px,2.4vw,34px);font-weight:700;
           color:var(--deeptext);margin-bottom:14px}
.showwait{font-size:clamp(16px,1.8vw,26px);line-height:1.7;color:var(--mut);
          word-break:keep-all;margin:10px 0}
.showwait b{color:var(--ink)}
.showwall{grid-template-columns:repeat(auto-fill,minmax(clamp(190px,15vw,260px),1fr))}
.showgroups{display:grid;grid-template-columns:repeat(auto-fill,minmax(clamp(220px,18vw,320px),1fr));
            gap:clamp(10px,1.4vw,18px);margin-top:clamp(8px,1.4vh,18px)}
.showgroup h3{font-size:clamp(14px,1.5vw,22px);margin:0 0 8px}
.showgroup .card{font-size:clamp(13px,1.2vw,18px);padding:10px 14px;margin-bottom:8px}
.showgroup.loose h3{background:#EFEDE6;color:var(--mut)}
.showgroups.big{grid-template-columns:repeat(auto-fill,minmax(clamp(260px,24vw,440px),1fr));
                gap:clamp(12px,1.8vw,26px)}
.showgroups.big .showgroup h3{font-size:clamp(17px,2.1vw,32px);margin:0 0 10px}
.showgroups.big .showgroup .card{font-size:clamp(15px,1.7vw,26px);padding:12px 18px;margin-bottom:10px}
.showgroups.big.n13{grid-template-columns:repeat(auto-fill,minmax(clamp(210px,17vw,300px),1fr));
                    gap:clamp(10px,1.3vw,18px)}
.showgroups.big.n13 .showgroup h3{font-size:clamp(15px,1.6vw,24px)}
.showgroups.big.n13 .showgroup .card{font-size:clamp(13px,1.25vw,19px);padding:9px 13px;margin-bottom:7px}
.showgroups.big.n25{grid-template-columns:repeat(auto-fill,minmax(clamp(175px,13.5vw,240px),1fr));
                    gap:clamp(8px,1vw,14px)}
.showgroups.big.n25 .showgroup h3{font-size:clamp(13px,1.25vw,19px);margin:0 0 6px}
.showgroups.big.n25 .showgroup .card{font-size:clamp(12px,1.05vw,16px);padding:7px 10px;margin-bottom:6px}
.showwall .card{font-size:clamp(14px,1.35vw,20px);padding:14px 18px}
.showitems{list-style:none;display:flex;flex-wrap:wrap;gap:10px;margin-top:16px;padding:0}
.showitems.big{gap:clamp(10px,1.2vw,18px);margin-top:clamp(14px,2.4vh,30px)}
.showitems.big .gchip{font-size:clamp(17px,2.1vw,32px);padding:clamp(8px,1vh,15px) clamp(14px,1.5vw,26px)}
.showwall.big{grid-template-columns:repeat(auto-fill,minmax(clamp(230px,19vw,340px),1fr))}
.showwall.big .card{font-size:clamp(16px,1.7vw,26px);padding:16px 20px}
.showdist{margin-bottom:0;padding:clamp(6px,1vh,12px) clamp(8px,1vw,14px)}
.showdist .distname{font-size:clamp(14px,1.5vw,22px)}
.showdist .distmean{font-size:clamp(12px,1vw,16px)}
.showdist .distbar{height:clamp(26px,6vh,64px)}
.showdist .distn,.showdist .distlabel{font-size:clamp(11px,.95vw,15px);margin-top:1px}
.showbar.tight{margin:clamp(4px,.9vh,10px) 0}
.showbar.tight .track{height:clamp(22px,3.2vh,40px)}
.showbar.tight .fill{font-size:clamp(12px,1.5vh,18px)}
.showbars{display:grid;grid-template-columns:max-content fit-content(33vw) minmax(0,1fr);
          column-gap:clamp(8px,1.1vw,18px);row-gap:clamp(6px,1.1vh,14px);align-items:center}
.showbars .showbar,.showbars .showbar .nm{display:contents}
.showbars.norank{grid-template-columns:fit-content(38vw) minmax(0,1fr)}
.showbars .showbar .rkno,.showbars .showbar .item{align-self:center;width:auto}
.showbar{display:flex;align-items:center;gap:16px;margin:12px 0}
.showbar .nm{width:clamp(150px,20vw,340px);flex:none;text-align:right;font-weight:700;
             display:grid;grid-template-columns:clamp(52px,5.6vw,92px) minmax(0,1fr);
             align-items:center;gap:clamp(6px,.7vw,12px);
             font-size:clamp(14px,1.6vw,24px);word-break:keep-all}
.showbar .track{flex:1;background:var(--deepsoft);height:clamp(30px,3.4vw,48px);min-width:0}
.showbar .fill{height:100%;background:var(--bar);color:#fff;font-weight:700;
               font-size:clamp(13px,1.3vw,19px);display:flex;align-items:center;
               padding-left:12px;min-width:52px;transition:width .4s}
.showbar.top .fill{background:var(--seal)}
.showbar .zerovote{display:flex;align-items:center;height:100%;padding-left:12px;
                   color:var(--mut);font-weight:700;font-size:clamp(13px,1.3vw,19px)}
.showbar .rkno{text-align:right;color:var(--deeptext);white-space:nowrap}
.showbar .item{min-width:0;overflow-wrap:anywhere}
.showbar:not(.top) .rkno{color:var(--mut);font-weight:700}
.showbasis{margin:clamp(8px,1.4vh,16px) 0 0;text-align:right;color:var(--mut);
           font-size:clamp(12px,1.05vw,17px);word-break:keep-all}
.waitbox{background:#fff;border:1px solid var(--deep);padding:26px 22px;text-align:center;
         margin:8px 0 4px}
.waitdone{font-family:'Noto Serif KR',serif;font-size:17px;font-weight:700;color:var(--deeptext);
          margin-bottom:8px;word-break:keep-all}
.waitnext{font-size:13.5px;color:var(--mut);line-height:1.7;word-break:keep-all}
.waitdots{display:flex;gap:6px;justify-content:center;margin-top:16px}
.waitdots span{width:6px;height:6px;border-radius:50%;background:var(--deep);opacity:.25;
               animation:waitpulse 1.4s infinite}
.waitdots span:nth-child(2){animation-delay:.2s}
.waitdots span:nth-child(3){animation-delay:.4s}
@keyframes waitpulse{0%,60%,100%{opacity:.25}30%{opacity:1}}
@media (prefers-reduced-motion:reduce){.waitdots span{animation:none}}
.waitmore{text-align:center;margin-top:14px}
.statebox{background:#fff;border:1px solid var(--line);border-left:3px solid var(--amber);
          padding:20px 22px}
.stateline{font-family:'Noto Serif KR',serif;font-size:16px;font-weight:700;margin-bottom:8px}
.statewhy{font-size:13.5px;line-height:1.8;word-break:keep-all}
.statefoot{margin-top:12px;padding-top:10px;border-top:1px solid #EFEDE4;
           font-size:13px;color:var(--mut)}
.waitmore a{font-size:13px;color:var(--mut);text-decoration:underline}
.skiprow{display:flex;align-items:baseline;gap:12px;flex-wrap:wrap;margin:12px 0 4px}
.skiprow .btn{margin:0}
.skiprow .hint{flex:1;min-width:240px;margin:0}
.votesetting{background:#fff;border:1px solid var(--line);padding:14px 16px;margin-top:18px}
.votesetting b{font-size:13.5px}
.votebars{display:grid;grid-template-columns:fit-content(33%) minmax(0,1fr);
          column-gap:12px;row-gap:10px;align-items:center}
.votebars .votebar{display:contents}
.votebars .nm{width:auto}
.votebar{display:flex;align-items:center;gap:12px;margin:10px 0}
.votebar .nm{width:150px;font-weight:700;font-size:14px;text-align:right;word-break:keep-all;overflow-wrap:anywhere}
.votebar .track{flex:1;background:var(--deepsoft);height:30px;min-width:0}
.votebar .zerovote{display:flex;align-items:center;height:100%;padding-left:10px;
                   color:var(--mut);font-weight:700;font-size:14px}
.votebar .fill{height:100%;background:var(--bar);display:flex;align-items:center;color:#fff;
               font-weight:700;font-size:13px;padding-left:10px;min-width:34px;transition:width .4s}
.result{background:#fff;border:1px solid var(--line);padding:18px 20px;margin-top:12px}
.rk{display:flex;gap:12px;align-items:baseline;padding:8px 0;border-bottom:1px solid var(--line)}
.rk:last-child{border-bottom:none}
.rk{align-items:center}
.rk .no{font-family:'Noto Serif KR',serif;font-weight:700;font-size:16px;color:var(--deeptext);
        width:68px;flex:none;text-align:right}
.rk .nm{font-weight:700;flex:1;min-width:0;word-break:keep-all}
.rk .ct{color:var(--mut);font-size:13px;flex:none}
.rk.top{background:var(--ambersoft);margin:0 -10px;padding:8px 10px}
.dotsleft{text-align:center;font-size:15px;margin-bottom:12px}
.dotsleft b{color:var(--seal);font-size:20px}
.votepick{display:flex;align-items:center;gap:10px;background:#fff;border:1px solid var(--line);
          padding:12px 14px;margin-bottom:10px}
.votename{flex:1;min-width:0;font-weight:700;font-size:14.5px;word-break:keep-all}
.votectrl{display:flex;align-items:center;gap:10px;flex:none}
.dotbtn{width:42px;height:42px;border:1px solid var(--deep);background:#fff;color:var(--deeptext);
        font-size:20px;font-weight:700;cursor:pointer;line-height:1}
.dotcount{min-width:24px;text-align:center;font-size:18px;font-weight:700}
.mydot{color:var(--seal);font-size:13px;letter-spacing:1px;margin-left:4px}
.minuteslink{margin-top:18px}
.nextact{display:flex;align-items:baseline;gap:12px;flex-wrap:wrap;margin:0}
.nextact .btn{margin:0}
.nextact .hint{flex:1;min-width:240px;margin:0}
.ifsect.nudge > summary{background:var(--deepsoft);border:1px solid var(--deep);border-radius:6px;
                        padding:8px 12px;font-size:15px}
.clearbox{background:var(--deepsoft);border:1px solid var(--deep);padding:16px 18px;margin:14px 0}
.clearbox b{display:block;font-family:'Noto Serif KR',serif;font-size:19px;color:var(--deeptext);
            margin-bottom:6px}
.clearbox span{font-size:13.5px;color:var(--deeptext)}
.miniprog{display:inline-block;width:110px;height:8px;background:#EFEDE6;vertical-align:middle;
          margin-right:8px}
.miniprog span{display:block;height:100%;background:var(--deep)}
.minicount{font-size:13px;color:var(--mut)}
.crwait{color:var(--mut)}
.nextrow{display:flex;gap:10px;flex-wrap:wrap;margin:18px 0 8px}
.nextrow .btn{margin:0;text-decoration:none}
.pickhead{display:flex;justify-content:space-between;align-items:baseline;gap:12px;
          flex-wrap:wrap;font-size:13.5px;color:var(--mut);margin-bottom:10px}
.pickcount b{color:var(--deeptext);font-size:15px}
.pickitem{display:flex;gap:12px;align-items:flex-start;background:#fff;border:1px solid var(--line);
          padding:14px 16px;margin-bottom:10px;cursor:pointer;font-weight:400}
.pickitem input{margin-top:3px;width:18px;height:18px;flex:none;accent-color:var(--deep)}
.pickitem:has(input:checked){border-color:var(--deep);background:#FCFDFC}
.pickbody{flex:1;min-width:0}
.pickname{display:block;font-weight:700;font-size:14.5px;word-break:keep-all}
.pickvotes{font-weight:400;font-size:13px;color:var(--mut);margin-left:6px}
.pickcards{display:block;margin-top:7px;font-size:13px;color:var(--mut);line-height:1.7;
           word-break:keep-all}
.pickcards.none{color:var(--seal)}
.minutesbox{width:100%;height:460px;border:1px solid var(--line);padding:14px;
            font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:13px;
            line-height:1.7;background:#fff;margin-top:10px;white-space:pre;overflow:auto}
@media (max-width:480px){
  .wname{width:42%;font-size:13px}
  .wval{width:44px;font-size:13px}
}
@media (max-width:480px){
  .vs{flex-direction:column;gap:8px}
  .vsmid{align-self:flex-start;padding-left:2px}
  .answers li a{flex-wrap:wrap}
  .answers .atext{text-align:left;flex-basis:100%}
}
.defline{font-weight:400;font-size:13px}
.statgrid.ops{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:10px;margin:8px 0 6px}
.statgrid.ops .stat{border:1px solid var(--line);border-top:1px solid var(--line);
                    padding:12px 14px;background:var(--paper);text-align:left}
.statn{font-family:'Noto Serif KR',serif;font-size:28px;line-height:1.1}
.statl{font-size:13px;color:var(--mut);margin-top:4px}
table.list tr.today td{background:#F3F1E9}
table.list.kv td{vertical-align:top}
.delconfirm{margin:8px 0 4px}
.delconfirm .delhead{margin:0 0 6px;font-weight:600;font-size:14px}
.delconfirm .error{margin:0 0 8px}
.delconfirm .hint{margin:4px 0 8px}
.delacts{display:flex;align-items:center;gap:10px;margin:0}
tr.delconfirm td{padding:6px 10px 10px}
.cascade{margin-top:10px;padding-top:10px;border-top:1px solid var(--seal)}
.cascade ul{margin:6px 0 0 18px}
h4{font-size:14px;margin:22px 0 8px;color:var(--mut)}
textarea{width:100%;padding:10px 12px;border:1px solid var(--line);font-family:inherit;
         font-size:14px;background:#fff;line-height:1.6;resize:vertical}
textarea:focus{border-color:var(--deep)}
.error ul{margin:8px 0 0 18px}
.error li{margin:3px 0}
.linkrow{display:flex;gap:6px;align-items:center}
.linkrow .btn.tiny,.namerow .btn.tiny{padding:5px 10px;font-size:13px;white-space:nowrap}
.namerow{display:flex;gap:8px;align-items:center;white-space:nowrap}
.copylink.narrow{display:none}
@media (max-width:640px){.copylink.narrow{display:inline-block}.copylink.wide{display:none}}
.hint.copied{color:var(--deeptext)}
input.linkbox{width:100%;min-width:200px;padding:5px 8px;border:1px solid var(--line);
              background:#FCFBF7;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;
              font-size:13px;color:var(--mut);cursor:pointer}
.badge.sent{border-color:var(--deep);color:var(--deeptext);background:var(--deepsoft)}
.badge.started{border-color:var(--amber);color:var(--amber);background:var(--ambersoft)}
.badge.done{border-color:var(--deep);color:#fff;background:var(--deep)}
.badge.partial{border-color:var(--mut);color:var(--mut);background:#F2F0E9;margin-left:5px}
.badge.crover{border-color:var(--amber);color:var(--amber);background:var(--ambersoft);
              margin-left:5px}
.sendbar{display:flex;gap:12px;align-items:center;flex-wrap:wrap;background:#fff;
         border:1px solid var(--line);padding:14px 16px;margin:16px 0 6px}
.sendbar form{margin:0;max-width:none}
.sendbar .btn{margin:0}
.sendbar .counts{font-size:13.5px;color:var(--mut);margin-right:auto}
.sendbar .counts b{color:var(--ink)}
.resendbox{margin-top:10px;font-size:13px}
.resendbox summary{cursor:pointer;color:var(--mut);font-size:13px}
.resendbox form{margin-top:8px;max-width:none}
.excnote{color:var(--mut);font-size:13px}
.excbox{margin:10px 0 4px;background:#fff;border:1px solid var(--line);padding:10px 14px;
        font-size:13px}
.excbox summary{cursor:pointer;color:var(--mut);font-size:13px}
.excbox ul{margin:8px 0 0 18px}
.badge.excluded{border-color:var(--mut);color:var(--mut);background:#F2F0E9;margin-left:5px}
.quota{background:#fff;border:1px solid var(--line);padding:12px 14px;margin:10px 0 4px;
       font-size:13px;color:var(--mut)}
.quota b{color:var(--ink)}
.quotahead{display:flex;justify-content:space-between;align-items:baseline;gap:12px;
           flex-wrap:wrap;margin-bottom:8px}
.quotanum{font-size:13px}
.quotanum b{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:14px}
.quotanum.full b{color:var(--seal)}
.quotabar{height:5px;background:#EFEDE6}
.quotabar span{display:block;height:100%;background:var(--deep)}
.quotafoot{margin-top:8px;line-height:1.6}
.quotafull{color:var(--seal);font-weight:700}
code{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:13px;
     background:#F2F0E9;padding:1px 5px}
.mail{background:#fff;border:1px solid var(--line);margin-bottom:16px}
.mailhead{background:#F2F0E9;border-bottom:1px solid var(--line);padding:9px 16px;
          font-size:13px;color:var(--mut)}
.mailhead .to{display:inline-block;min-width:64px;color:var(--mut)}
.mailhead b{color:var(--ink)}
.mailsubject{padding:14px 16px 4px;font-family:'Noto Serif KR',serif;font-size:16px;
             font-weight:700;border-bottom:1px solid #EFEDE4}
.mailbody{padding:16px 18px 20px;font-size:14px;line-height:1.75}
.mailbody p{margin-bottom:12px}
.mailgreet{font-weight:700}
.mailbtnrow{margin:18px 0 10px}
.mailbtn{display:inline-block;background:var(--deep);color:#fff;text-decoration:none;
         font-weight:700;font-size:14px;padding:11px 26px}
.mailbtn.off{opacity:.55;cursor:not-allowed}
.mailbtnnote{margin-left:10px;font-size:13px;color:var(--mut)}
.previewact{display:flex;gap:12px;align-items:center;flex-wrap:wrap;background:#fff;
            border:1px solid var(--line);padding:12px 16px;margin:14px 0 6px}
.previewact .btn{margin:0;text-decoration:none;flex:none}
.previewwhy{flex:1;min-width:220px;font-size:13px;color:var(--mut);line-height:1.7;
            word-break:keep-all}
.previewband{background:var(--ambersoft);border:1px solid var(--amber);color:#7A4F0E;
             padding:11px 16px;font-size:13.5px;font-weight:700;margin-bottom:14px;
             word-break:keep-all}
.previewband span{display:block;margin-top:4px;font-weight:400;font-size:13px;color:#8A6420}
.maillink{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:13px;
          color:var(--mut);word-break:break-all;margin-bottom:14px}
.mailclose{font-size:13px;color:var(--mut);margin-bottom:0}
.btn:disabled{background:#B9C4C0;cursor:not-allowed}
.panel.hero{padding:clamp(18px,3.4vh,44px) clamp(18px,4vw,40px) clamp(16px,2.8vh,34px)}
.heroname{font-family:'Noto Serif KR',serif;font-size:clamp(30px,5.4vh,46px);
          font-weight:700;line-height:1.2;letter-spacing:.02em}
.herolead{font-family:'Noto Serif KR',serif;font-size:clamp(15px,2.4vh,21px);
          font-weight:600;color:var(--deeptext);margin-top:clamp(6px,1vh,12px);
          line-height:1.55;word-break:keep-all}
.heroscale{margin-top:clamp(14px,2.6vh,28px);background:#fff;border:1px solid var(--line);
           padding:clamp(13px,1.8vh,20px) clamp(14px,2.4vw,26px);display:flex;
           align-items:center;gap:clamp(13px,2vw,18px)}
.heroscale .side{font-weight:700;font-size:clamp(13px,1.7vh,15px);white-space:nowrap}
.heroscale .bar{flex:1;position:relative;height:2px;background:var(--line);min-width:0}
.heroscale{position:relative;pointer-events:none;user-select:none}
.heroscale .figtag{position:absolute;top:-9px;left:12px;background:var(--paper);padding:0 6px;
                   font-size:11.5px;color:var(--mut);letter-spacing:.04em}
.heroscale .bar i{display:block;width:3px;height:16px;border-radius:1px;
                  background:var(--deep);margin-left:68%;margin-top:-7px}
.heroscale .ticks{position:absolute;inset:0;display:flex;justify-content:space-between}
.heroscale .ticks b{width:1px;height:8px;background:var(--line);margin-top:-3px}
.heroscalecap{font-size:clamp(13px,1.5vh,12.5px);color:var(--mut);margin-top:8px;
              word-break:keep-all}
.heroscalecap .cr{display:inline-block;margin-left:10px;color:var(--deeptext);font-weight:700}
.herolist{list-style:none;margin:clamp(14px,2.4vh,30px) 0 0;display:grid;
          gap:clamp(7px,1.2vh,14px)}
.herolist li{border-left:3px solid var(--deep);padding-left:13px}
.herolist b{display:block;font-size:clamp(14px,1.9vh,16px);word-break:keep-all}
.herolist .glossline{display:block;font-size:13px;color:var(--mut);margin-top:1px;word-break:keep-all}
@media (max-width:640px){.herolist .glossline{display:none}}
.herolist b .method{display:inline-block;font-size:12px;font-weight:500;color:var(--mut);border:1px solid var(--line);border-radius:10px;padding:0 7px;margin-left:4px;vertical-align:1px;white-space:nowrap}
.herolist span{display:block;font-size:clamp(13px,1.6vh,13.5px);color:var(--mut);
               line-height:1.7;margin-top:2px;word-break:keep-all}
.heroacts{display:flex;gap:10px;margin-top:clamp(14px,2.4vh,30px)}
.herorespond{margin-top:8px;font-size:13px;color:var(--mut);word-break:keep-all}
.herorespond .herovideo{color:var(--deeptext);font-weight:700;white-space:nowrap}
.heroacts .btn{margin:0;text-decoration:none;padding:clamp(13px,1.6vh,13px) clamp(20px,4vw,30px)}
.herofoot{margin-top:clamp(14px,2.4vh,30px);padding-top:clamp(9px,1.4vh,16px);
          border-top:1px solid var(--line)}
.herofoot p{font-size:clamp(13px,1.5vh,12.5px);color:var(--mut);line-height:1.75;
            word-break:keep-all}
.herofoot p+p{margin-top:3px}
.heropromise{list-style:none;margin:6px 0 0;padding:0}
.heropromise li{font-size:clamp(13px,1.5vh,12.5px);color:var(--mut);line-height:1.65;padding-left:12px;position:relative;word-break:keep-all}
.heropromise li::before{content:"·";position:absolute;left:2px;color:var(--deeptext);font-weight:700}
a.cr{text-decoration:none}
.herofoot a{color:var(--deeptext);font-weight:700;white-space:nowrap}
.heronote{margin-top:clamp(8px,1.4vh,14px);font-size:clamp(13px,1.4vh,12px);color:#8B958F;
          word-break:keep-all;line-height:1.7}
.heronote a{color:var(--mut)}
.panel.doc{max-width:100%}
.docnote{background:var(--deepsoft);border-left:3px solid var(--deep);color:var(--deeptext);
         padding:11px 15px;font-size:13px;line-height:1.75;margin-bottom:20px;
         word-break:keep-all}
.docbody{font-size:14px;line-height:1.85;word-break:keep-all}
.docbody h1{font-family:'Noto Serif KR',serif;font-size:24px;margin-bottom:14px}
.docbody h2{font-family:'Noto Serif KR',serif;font-size:18px;margin:32px 0 10px;
            padding-bottom:6px;border-bottom:1px solid var(--line)}
.docbody h3{font-size:15px;margin:22px 0 8px;padding-left:10px;
            border-left:3px solid var(--deep)}
.docbody p{margin:10px 0}
.docbody ul,.docbody ol{margin:10px 0 10px 20px}
.docbody li{margin:4px 0}
.docbody blockquote{background:#fff;border:1px solid var(--line);border-left:3px solid var(--deep);
                    padding:14px 18px;margin:14px 0;font-size:13.5px}
.docbody blockquote p{margin:5px 0}
.docbody code{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:13px;
              background:#F2F0E9;padding:1px 5px}
.docbody pre{background:#fff;border:1px solid var(--line);padding:14px 16px;margin:14px 0;
             overflow-x:auto;line-height:1.7}
.docbody pre code{background:none;padding:0;font-size:13px}
.docbody table{width:100%;border-collapse:collapse;background:#fff;border:1px solid var(--line);
               font-size:13px;margin:14px 0;display:block;overflow-x:auto}
.docbody th{background:var(--deepsoft);color:var(--deeptext);font-weight:700;padding:8px 11px;
            text-align:left;border-bottom:1px solid var(--line);white-space:nowrap}
.docbody td{padding:8px 11px;border-bottom:1px solid #EAE7DE;vertical-align:top}
.docbody tr:last-child td{border-bottom:none}
.docbody hr{border:none;border-top:1px solid var(--line);margin:28px 0}
.docbody a{color:var(--deeptext)}
.btn.sub:disabled{background:#fff;color:#B9C4C0;border-color:#D8D6CD}
@media print{
  :root{--deep:#0E5A4E;--deeptext:#0E5A4E;--bar:#0E5A4E}
  table.list tr.top td:first-child,.pairtable tr.ok td:first-child{box-shadow:none;border-left:3px solid #000}
  body{background:#fff;color:#000;font-size:12pt;line-height:1.5}
  .wrap{max-width:none;margin:0;padding:0}
  .panel{border:none;padding:0;margin:0;background:#fff}
  header{border:none;padding:0 0 10px;background:#fff}
  header .who,footer.sitefoot,.btn,form,.attrpick,.nextbox,.closebox,.basisswitch,.basispub,
  .csvrow,.iftoggle,.ifmode,.ifshort,.exitline,.emptyfoot,.saveline,.qbtns{display:none!important}
  a{color:inherit;text-decoration:none}
  a[href^="http"]::after{content:""}
  .tablewrap{overflow:visible}
  table.list{min-width:0;page-break-inside:auto;break-inside:auto}
  table.list tr{page-break-inside:avoid;break-inside:avoid}
  table.list th{background:#eee;color:#000;-webkit-print-color-adjust:exact;print-color-adjust:exact}
  thead{display:table-header-group}
  h2,h3,h4{page-break-after:avoid;break-after:avoid}
  .stratum,.wset,.sealbox,.notice,.warnbox,.statgrid,.ifwrap,.docbody pre,.docbody table{page-break-inside:avoid;break-inside:avoid}
  .notice,.warnbox{border:1px solid #999;background:#fff;color:#000}
  .wfill,.crbadge,.badge,.stat{-webkit-print-color-adjust:exact;print-color-adjust:exact}
  .statgrid{display:flex;gap:12px}
}
.nowrap{white-space:nowrap}
.listsort{margin:0 0 10px}
@media (max-width:640px){
  .respond .lead{font-size:14.5px}
  .respond .purpose{font-size:16px}
  .respond .setitems li{font-size:16px}
  .respond .setitems .def{font-size:14px}
  .respond .vsitem b{font-size:17px}
  .respond .answertext{font-size:16px}
  .ratescale.wide .ratebox{height:40px;font-size:15px}
  .respond .qbtns{gap:8px}
  .respond .qbtns .btn{font-size:15.5px;padding:14px 6px;word-break:keep-all}
  .respond .answers .apair{font-size:14px}
  .respond .answers .atext{font-size:15px}
  .respond .donecount{font-size:16px}
  .respond .ratetext{font-size:14px}
  .respond .notice,.respond .warnbox{font-size:15px}
  .surveyline b{font-size:14px}
}
.previewopen{margin-top:12px}
.previewopen summary{display:inline-block;list-style:none;cursor:pointer}
.previewopen summary::-webkit-details-marker{display:none}
.previewbox{margin-top:10px;padding:12px 14px;border:1px solid var(--amber);background:var(--ambersoft)}
.previewbox p{margin:0 0 8px}
.basistext .record{color:var(--amber);font-weight:600}
.previewbar b{color:#7A4F0E}
.pill.small{border-style:dashed}
.pill.small small::after{content:" ⚠";color:var(--amber)}
.smallnote,.warnbox.smallgroup{color:#7A4F0E}
.ifcaution{display:inline-block;margin-left:8px;color:var(--amber);font-weight:600;font-size:13px}
.wrap.desk{max-width:1400px}
.deskgrid{display:grid;grid-template-columns:1fr;gap:10px;margin-top:10px}
.deskform{display:contents;max-width:none}
.deskprogress{display:flex;flex-wrap:wrap;align-items:center;gap:6px 16px;background:var(--deepsoft);
              border:1px solid var(--deep);border-left-width:4px;padding:10px 14px;margin:0 0 14px;font-size:14px;word-break:keep-all}
.deskprogress .pstate{font-weight:700;color:var(--deeptext)}
.deskprogress .pacts{display:flex;flex-wrap:wrap;align-items:center;gap:6px 14px;margin-left:auto}
.deskprogress .pacts a{color:var(--deeptext);font-weight:700}
.deskprogress .btn{margin:0}
.deskcol{background:var(--paper);border:1px solid var(--line);padding:14px 16px;min-width:0}
.deskcol h3{font-family:'Noto Serif KR',serif;font-size:15px;margin-bottom:8px}
.deskcol fieldset{border:0;min-width:0}
.deskcol label{margin:8px 0 3px;font-size:13px}
.deskcol input[type=text],.deskcol input[type=datetime-local]{padding:7px 9px;font-size:14px}
.deskcol label.radio{margin:2px 0;font-size:13.5px}
.desklabel{font-size:13px;font-weight:700;margin:10px 0 2px}
.deskset .desklabel{margin:0}
.deskadd{display:inline-block;text-decoration:none}
#d-items{font-size:14px;line-height:1.6;resize:vertical;min-height:240px}
.deskcount{font-size:13.5px;margin-top:6px;color:var(--deeptext);font-weight:700}
.deskphone{border:1px solid var(--line);border-radius:14px;background:#fff;overflow:hidden;
           width:100%;max-width:360px;height:380px}
.deskphone iframe{border:0;width:100%;height:100%}
.deskrow{display:flex;gap:6px;align-items:center}
.deskrow input{flex:1;font-size:13px}
.deskcode{font-size:13.5px;margin-top:6px}
.deskpromise{font-size:13px;font-weight:700;margin-top:6px;line-height:1.5}
.deskcode b{letter-spacing:.08em}
.deskstatus{margin-top:12px;padding-top:10px;border-top:1px solid var(--line);font-size:13.5px}
.deskstatus form{max-width:none;margin:6px 0}
.deskpublish{margin-top:12px}
.deskpublish .hint{display:block;margin-top:6px}
.deskkakao{font-size:13px;line-height:1.55;margin:2px 0 6px}
.deskshare .desklabel{display:block;margin-top:12px}
.deskerr{color:var(--seal);font-size:13px;margin-top:6px}
.desksaved{font-size:12px;color:var(--mut);margin-top:6px;min-height:18px}
.deskbar{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin-top:10px;
         background:var(--paper);border:1px solid var(--line);padding:8px 16px;font-size:13.5px}
.deskbar .desknow{font-weight:700;flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.deskbar a:not(.btn){color:var(--deeptext)}
.deskset{display:grid;grid-template-columns:76px minmax(0,1fr);gap:7px 10px;align-items:center}
.deskset label:not(.radio),.deskset .desklabel{margin:0;font-size:13px;font-weight:700}
.deskset input[type=text]{max-width:360px}
.deskset + .deskset{margin-top:7px}
.deskradios{display:flex;flex-wrap:wrap;gap:2px 14px;align-items:center}
.deskradios input[type=datetime-local]{width:auto}
.deskmain{display:grid;grid-template-columns:1fr;gap:10px;min-width:0}
.deskmain .deskshare{grid-column:1 / -1}
.deskmain .desknote{grid-column:1 / -1;margin:0}
.deskmore{flex-basis:100%;font-size:13px}
.deskmore > summary{cursor:pointer;color:var(--mut)}
.deskmore[open] > summary{margin-bottom:2px}
.deskmore label.radio{display:inline-flex;margin-right:14px}
@media (min-width:1024px){
  .deskgrid{grid-template-columns:minmax(0,1fr) 360px;align-items:start}
  .deskside{position:sticky;top:10px}
}
@media (min-width:1440px){
  .deskgrid{grid-template-columns:minmax(0,1fr) 380px}
  .deskmain{grid-template-columns:minmax(0,1.15fr) minmax(0,1fr);align-items:start}
}
.promise{font-size:14.5px;font-weight:700;margin:10px 0 12px;line-height:1.55}
.codefield{display:block;font-size:13.5px;font-weight:700;margin:4px 0 5px}
.respond input[name=entry_code]{max-width:180px;font-size:20px;letter-spacing:.3em;
  padding:10px 12px;border:1px solid var(--line);margin-bottom:10px;display:block}
.respond input[name=entry_code]::placeholder{letter-spacing:normal;font-size:15px}
.pubresult{max-width:1000px;margin-left:auto;margin-right:auto}
.pubresult .respond{max-width:380px}
.pubcols{display:grid;grid-template-columns:1fr;gap:18px;margin-top:8px}
.pubrecord{border-top:1px solid var(--line);padding-top:10px;font-size:13.5px}
.pubrecord dl{display:grid;grid-template-columns:auto 1fr;gap:4px 12px}
.pubrecord dt{color:var(--mut)}
.pubrecord dd{margin:0}
@media (min-width:900px){
  .pubcols{grid-template-columns:minmax(0,1fr) 280px}
  .pubrecord{border-top:0;border-left:1px solid var(--line);padding:0 0 0 16px}
}
.namefield{display:block;font-size:14px;font-weight:700;margin:12px 0 5px}
.readybox input[name=display_name]{width:100%;max-width:320px;padding:10px 12px;font-size:16px;
  border:1px solid var(--line);margin-bottom:12px}
.makeline{font-size:13px;color:var(--mut);margin-top:22px;padding-top:12px;border-top:1px solid var(--line)}
.makeline a{color:var(--mut)}
details.fold{margin-top:6px}
details.fold > summary{cursor:pointer;list-style:none}
details.fold > summary::-webkit-details-marker{display:none}
details.fold > summary h3{display:inline}
details.fold > summary h3::after{content:" ▸";color:var(--mut);font-size:13px}
details.fold[open] > summary h3::after{content:" ▾"}
details.advanced{margin:10px 0;border-top:1px dashed var(--line);padding-top:8px}
details.advanced > summary{cursor:pointer;font-size:13px;color:var(--mut)}
details.pastebox{margin-top:6px;font-size:13.5px}
details.pastebox > summary{cursor:pointer;color:var(--deeptext)}
.pasteform{max-width:520px;margin-top:6px}
.pasteform textarea{min-height:120px;margin-bottom:6px}
.deskresearch{grid-column:1 / -1;padding:10px 16px}
.deskresearch > summary{cursor:pointer;font-size:13.5px;font-weight:700;color:var(--deeptext)}
.deskres{margin-top:12px;padding-top:10px;border-top:1px solid var(--line)}
.deskres h4{font-size:13.5px;margin-bottom:2px}
.deskmorelink{font-weight:400;font-size:12.5px;color:var(--deeptext);margin-left:8px}
.deskattrs,.deskroster{list-style:none;margin:6px 0}
.deskattrs li{font-size:13px;margin:3px 0}
.deskroster li{display:flex;gap:6px;align-items:center;font-size:12.5px;margin:4px 0;flex-wrap:wrap}
.deskroster li span{min-width:160px}
.deskroster input{flex:1;min-width:180px;font-size:12px;padding:5px 7px}
.deskinline{display:flex;gap:6px;flex-wrap:wrap;margin-top:6px;max-width:none}
.deskinline input{flex:1;min-width:140px;padding:7px 9px;font-size:13.5px;border:1px solid var(--line)}
.deskblock{font-size:13px;color:var(--amber);margin-top:6px}
.deskdel{background:none;border:0;color:var(--seal);font-family:inherit;font-size:12.5px;
  text-decoration:underline;cursor:pointer;padding:0 2px;margin-left:6px}
.groupform{max-width:520px;margin-top:16px;padding-top:12px;border-top:1px solid var(--line)}
.groupform textarea{min-height:110px;margin:6px 0}
.groupnew{border-top:2px solid var(--deep)}
.groupdel{max-width:none;margin-top:4px}
.deskopts{align-items:center;gap:4px 12px}
.deskopts .desklabel{flex-basis:100%;margin:6px 0 0}
.deskopts label.radio{margin:0;font-size:13px}
.deskroll{list-style:none;margin:6px 0;columns:2;column-gap:18px}
.deskroll li{font-size:13px;margin:2px 0;break-inside:avoid}
.deskroll li em{font-style:normal;font-size:12px;color:var(--mut)}
.deskroll li.st-done em{color:var(--deeptext);font-weight:700}
.deskroll li.st-claimed em{color:var(--amber)}
.deskres select{padding:6px 8px;font-size:13.5px;max-width:260px}
.rosterpick input[type=search]{width:100%;padding:10px 12px;font-size:16px;border:1px solid var(--line);margin-bottom:8px}
.rinitials{display:flex;flex-wrap:wrap;gap:4px;margin-bottom:8px}
.rinitials button{border:1px solid var(--line);background:#fff;font-family:inherit;font-size:14px;padding:6px 10px;cursor:pointer}
.rinitials button.on{background:var(--deep);color:#fff;border-color:var(--deep)}
.rlist{display:grid;grid-template-columns:repeat(auto-fill,minmax(130px,1fr));gap:6px;margin-bottom:12px}
.rname{display:flex;align-items:center;gap:8px;border:1px solid var(--line);background:#fff;padding:12px 10px;
  font-size:15px;min-height:48px;cursor:pointer;font-weight:400;margin:0}
.rname[hidden]{display:none}
.rname input{width:auto}
.deskinline input[type=radio]{flex:none;min-width:0;padding:0;width:auto}
.deskopts label.radio{display:inline-flex;gap:6px;margin-right:14px}
.rankstack{list-style:none;margin:6px 0 12px;min-height:8px}
.rankstack li{background:var(--deepsoft);border-left:3px solid var(--deep);padding:10px 12px;margin:4px 0;
  font-weight:700;font-size:15.5px}
.rankbtns{display:grid;grid-template-columns:1fr;gap:6px;margin-bottom:12px}
.rankpick{border:1px solid var(--line);background:#fff;font-family:inherit;font-size:15.5px;text-align:left;
  padding:14px 12px;min-height:53px;cursor:pointer}
.rankpick:disabled{opacity:.45;cursor:default}
.rankpick[hidden]{display:none}
.rankselects label{display:block;margin:6px 0;font-size:14px}
.rankselects select{margin-left:8px;padding:8px;font-size:15px}
.rankactions{display:flex;gap:8px;align-items:center;flex-wrap:wrap}
.rankactions .btn.big{flex:1}
.rankmine{margin:8px 0 14px 22px;font-size:15.5px;font-weight:700}
.rankmine li{margin:4px 0}
.rankdepth select{padding:4px 6px;font-size:13px;width:auto}
.rankdepth[hidden]{display:none}
.rankresult .rankno{flex:none;width:22px}
.rankresult .rankno{font-weight:700;color:var(--deeptext);text-align:center}
.rankresult .rankfirst{flex:none;min-width:58px;white-space:nowrap;font-size:12px;color:var(--mut);text-align:right}
#d-critbox textarea{width:100%;min-height:96px;font-size:14px;line-height:1.6;margin-bottom:10px}
#d-critbox[hidden]{display:none}
.chainline b{color:var(--deeptext)}
.chainlist{margin:10px 0 0 22px}
.chainlist li{margin:10px 0;padding:8px 10px;border-left:3px solid var(--line)}
.chainlist li.here{border-left-color:var(--deep);background:var(--deepsoft)}
.desksplit{margin-top:6px;padding:8px 10px;border:1px dashed var(--deep);background:var(--deepsoft)}
.desksplit[hidden]{display:none}
.desksplit .btn{margin-top:4px}
.starterlist{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:12px;margin-top:12px}
.startercard{display:flex;flex-direction:column;gap:6px;padding:16px;border:1px solid var(--line);
  background:var(--paper);color:inherit;text-decoration:none;line-height:1.5}
.startercard:hover,.startercard:focus{border-color:var(--deep)}
.startercard b{font-size:16px;color:var(--deeptext)}
.deskexample{border-collapse:collapse;font-size:13px;margin:4px 0 8px}
.deskexample th,.deskexample td{border:1px solid var(--line);padding:3px 10px;text-align:left}
.introlong{line-height:1.7}
.introbrand{font-size:13px;color:var(--mut)}
.introhead{font-family:'Noto Serif KR',serif;font-size:clamp(24px,4vw,34px);line-height:1.35;margin-top:6px;word-break:keep-all}
.introsec{font-size:17px;margin:30px 0 10px;padding-left:10px;border-left:3px solid var(--deep)}
.introscenes{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
@media (max-width:640px){.introscenes{grid-template-columns:1fr}}
.introscenes section{background:#fff;border:1px solid var(--line);padding:14px 16px}
.introscenes h3{font-size:15px;color:var(--deeptext);margin-bottom:4px}
.introscenes p{font-size:14px;word-break:keep-all}
.introtable{width:100%;border-collapse:collapse;font-size:14px}
.introtable th,.introtable td{border-bottom:1px solid var(--line);padding:8px 6px;text-align:left;vertical-align:top;word-break:keep-all}
.introtable td:first-child{font-weight:700;white-space:nowrap}
.introlist{padding-left:18px}
.introold{margin-top:26px;font-size:14px}
.introold summary{cursor:pointer;color:var(--deeptext);font-weight:700}
.introold summary.vthumbrow{display:flex;align-items:center;gap:12px;list-style:none;word-break:keep-all}
.introold summary.vthumbrow::-webkit-details-marker{display:none}
.vthumb{position:relative;flex:none;width:160px;height:75px;border:1px solid var(--line);overflow:hidden;background:var(--paper)}
.vthumb img{width:100%;height:100%;object-fit:cover;display:block}
.vthumb i{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);width:34px;height:34px;border-radius:50%;
          background:rgba(32,48,47,.78);color:#fff;font-style:normal;font-size:14px;line-height:34px;text-align:center;padding-left:2px;box-sizing:border-box}
.vthumb b{position:absolute;right:4px;bottom:4px;background:rgba(32,48,47,.85);color:#fff;font-size:11px;font-weight:700;padding:1px 5px;border-radius:3px}
.introold[open] .vthumb{display:none}
.introinvite{margin:10px 0 0;font-size:13.5px;color:var(--mut)}
.introinvite a{color:var(--deeptext);font-weight:700}
@media (max-width:640px){.introtable td:nth-child(3){white-space:normal}}
.deskaxes{display:inline-flex;align-items:center;gap:6px;max-width:100%;min-width:0}
.deskaxes input{width:7.5em;min-width:0;flex:0 1 7.5em;padding:4px 8px;font-size:13px}
.deskaxes[hidden]{display:none}
.titlerow{display:flex;align-items:center;justify-content:space-between;gap:8px 12px;flex-wrap:wrap}
.titlerow .btn{margin:0}
.panel.contactpage{max-width:640px}
.contactrow{margin:12px 0 8px}
.introbridge{margin:16px 0 4px;font-size:15px;word-break:keep-all}
#workshop-video{margin-top:6px}
.deskpair{border:1px solid var(--line);border-left:3px solid var(--deep);background:#fff;padding:10px 12px;margin:0 0 12px;font-size:14px}
.deskpair p+p{margin-top:4px}
table.list tr.pairchild td.l{padding-left:28px}
table.list tr.hasanswers td{background:var(--ambersoft)}
.delwarn{font-size:13px;color:var(--seal)}
.listpick{width:28px;text-align:center}
table.list.mine td.l{word-break:keep-all;min-width:15em}
table.list.mine td.type{white-space:nowrap}
.listpick input{width:16px;height:16px}
.delbar{display:flex;gap:10px;align-items:center;flex-wrap:wrap;margin:0 0 8px}
#listpickform .pickonly{display:none;align-items:center;gap:10px;flex-wrap:wrap}
#listpickform.picking .pickonly{display:flex}
#listpickform.picking .tidy{display:none}
#listpickform:not(.picking) .listpick{display:none}
table.list.mine th.sorth{padding:0}
table.list.mine th.sorth a{display:block;padding:8px 11px;color:inherit;text-decoration:none}
table.list.mine th.sorth a:hover{text-decoration:underline}
table.list.mine th.sorth.on a{color:var(--ink)}
.btn.link.tidy{font-size:13px;color:var(--mut)}
.guestnote{margin-top:18px;padding:12px 14px;border:1px solid var(--line);background:#fff;font-size:14px;line-height:1.7}
.guestnote a{color:var(--deeptext);font-weight:700}
.guestnote p+p{margin-top:4px}
.entrylock{margin:0 0 12px}
.entrylock form{margin:8px 0 0}
.introplay{position:relative;margin:14px 0 0}
.introplay .introvideo{margin:0}
.introplaybtn{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);width:84px;height:84px;border-radius:50%;
  border:0;background:rgba(32,48,47,.82);color:#fff;font-size:34px;line-height:84px;padding:0 0 0 6px;cursor:pointer;box-shadow:0 2px 10px rgba(0,0,0,.25)}
.introplaybtn:hover{background:var(--deep)}
.introplay.playing .introplaybtn{display:none}
@media (max-width:640px){.introplaybtn{width:64px;height:64px;font-size:26px;line-height:64px}}
.introscenes h3 .method{display:inline-block;font-size:12px;font-weight:500;color:var(--mut);border:1px solid var(--line);border-radius:10px;padding:0 7px;margin-left:4px;vertical-align:1px;white-space:nowrap}
.introlead{font-size:15px;line-height:1.7;margin:10px 0 0;word-break:keep-all}
.introgroup+.introgroup{margin-top:16px}
.introwhen{font-size:14.5px;margin:0 0 8px;word-break:keep-all}
.introwhen b{color:var(--deeptext)}
.inusebox ul{margin:6px 0 0 18px}
.inusebox li{margin:4px 0}
.inusenone{margin:4px 0 14px}
.notefield{margin:18px 0 12px}
.notefield label{display:block;margin-bottom:2px;word-break:keep-all}
.notefield textarea{width:100%;box-sizing:border-box;font:inherit;padding:8px 10px}
.notelist{margin:6px 0 0 18px}
.notelist li{margin:4px 0;word-break:keep-all}
.notelist form{display:inline;margin-left:6px}
.notetoggle{display:inline-flex;align-items:center;gap:6px;flex-wrap:wrap}
.notetoggle input[type=text]{min-width:16em}
