:root{
  --bg:#090806;--bg2:#0e0c09;--panel:#12100d;--panel2:#18150f;--line:#3a3328;
  --line-soft:#29251e;--ink:#eee8dc;--muted:#918777;--paper:#cfc5b0;--brass:#a58a54;
  --brass-bright:#d1b77c;--red:#7c2924;--danger:#cf6c63;--success:#8fb690;
  --shadow:0 22px 70px rgba(0,0,0,.48)
}
html{background:var(--bg);color:var(--ink);font-family:Inter,ui-sans-serif,system-ui,-apple-system,"Pretendard","Noto Sans KR",sans-serif}
body{color:var(--ink);background:
  radial-gradient(circle at 18% 8%,rgba(165,138,84,.11),transparent 24%),
  radial-gradient(circle at 82% 14%,rgba(124,41,36,.09),transparent 22%),
  linear-gradient(rgba(255,255,255,.014) 1px,transparent 1px),
  linear-gradient(90deg,rgba(255,255,255,.012) 1px,transparent 1px),
  linear-gradient(160deg,#100e0b 0,#090806 48%,#050504 100%);
  background-size:auto,auto,38px 38px,38px 38px,auto
}
body:before{content:"";position:fixed;inset:0;pointer-events:none;z-index:-1;opacity:.25;background:repeating-linear-gradient(115deg,transparent 0 120px,rgba(207,197,176,.025) 121px 122px)}
button,a{-webkit-tap-highlight-color:transparent}.hidden{display:none!important}.shell{width:min(1240px,calc(100% - 28px));margin:auto}
.eyebrow,.micro{font-size:9px;letter-spacing:.27em;color:var(--brass);font-weight:800}.tagline{color:#aaa08f;margin:0;font-size:14px;letter-spacing:.02em}
.primary-btn,.secondary-btn,.text-btn,.icon-btn{min-height:40px;cursor:pointer;text-transform:uppercase;letter-spacing:.08em}.primary-btn{background:linear-gradient(180deg,#d8c9a8,#ae9562);color:#17120b;border:1px solid #e0d1af;padding:10px 16px;font-weight:900;box-shadow:inset 0 0 0 1px rgba(55,42,19,.22)}.primary-btn:hover{filter:brightness(1.05)}.secondary-btn{background:#16130f;color:#c7bba5;border:1px solid #4a4030;padding:10px 14px}.text-btn{background:transparent;color:#9c927f;padding:10px 12px}.danger{color:#c67878}
.modal-backdrop{position:fixed;inset:0;background:rgba(0,0,0,.78);display:grid;place-items:center;padding:18px;z-index:100}.modal{width:min(560px,100%);max-height:85vh;overflow:auto;background:#11100d;border:1px solid #574a34;padding:22px;box-shadow:var(--shadow)}.modal h2{font-family:Georgia,"Times New Roman",serif;letter-spacing:.05em;margin:0 0 14px}.modal p,.modal li{color:#b9af9e;line-height:1.7}.actions{display:flex;gap:10px;margin-top:18px;flex-wrap:wrap}

/* Room-first detective home */
.room-shell{min-height:100svh;padding:24px 0 20px;display:flex;flex-direction:column}.room-hero{display:flex;justify-content:space-between;gap:22px;align-items:flex-end;border-bottom:1px solid var(--line);padding:0 2px 15px;position:relative}.room-hero:after{content:"CASE 26 / 0–11";position:absolute;right:0;bottom:-7px;background:var(--bg);padding-left:10px;color:#554b3c;font-size:8px;letter-spacing:.22em}.brand-lockup{min-width:0}.room-hero h1{font-family:Georgia,"Times New Roman",serif;font-size:clamp(38px,5.7vw,72px);line-height:.86;letter-spacing:-.055em;margin:9px 0 8px;font-weight:700}.room-hero h1 span{color:#9f8a63;font-weight:400;font-style:italic}.room-status{border-left:1px solid var(--line);padding:6px 0 6px 14px;min-width:145px}.room-status span,.room-status strong,.room-status small{display:block}.room-status span{font-size:8px;letter-spacing:.2em;color:#766b59}.room-status strong{margin-top:4px;font-size:12px;color:#d0c5b0}.room-status small{margin-top:2px;font-size:8px;color:#514a3f;letter-spacing:.14em}
.cipher-strip{height:30px;display:flex;align-items:center;gap:8px;border-bottom:1px solid var(--line-soft);color:#665d4e;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:9px;letter-spacing:.12em;overflow:hidden;white-space:nowrap}.cipher-strip i{width:28px;height:1px;background:#3a3328;flex:0 0 auto}.cipher-strip b{margin-left:auto;color:#4f473a;font-weight:500;font-size:8px}
.room-home-grid{display:grid;grid-template-columns:minmax(430px,.92fr) minmax(520px,1.08fr);gap:12px;margin-top:12px;align-items:start}.room-panel{position:relative;background:linear-gradient(150deg,rgba(22,19,14,.96),rgba(12,11,9,.96));border:1px solid var(--line);box-shadow:var(--shadow);padding:15px 16px;min-width:0}.room-panel:before{content:"";position:absolute;left:7px;top:7px;width:13px;height:13px;border-left:1px solid #62543d;border-top:1px solid #62543d;pointer-events:none}.room-panel:after{content:"";position:absolute;right:7px;bottom:7px;width:13px;height:13px;border-right:1px solid #62543d;border-bottom:1px solid #62543d;pointer-events:none}.panel-head{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:12px;padding-bottom:9px;border-bottom:1px solid var(--line-soft)}.panel-title{display:flex;align-items:center;gap:9px}.case-no{font-family:Georgia,"Times New Roman",serif;font-size:26px;color:#574b39;line-height:1}.panel-head h2{font-family:Georgia,"Times New Roman",serif;margin:2px 0 0;font-size:19px;font-weight:500;letter-spacing:.02em}.panel-mark{font-size:7px;letter-spacing:.18em;color:#663630;border:1px solid #4c2926;padding:4px 6px;transform:rotate(-2deg)}
.setup-grid{display:grid}.room-create-grid{grid-template-columns:minmax(130px,1.3fr) .62fr .56fr .82fr .82fr .82fr;gap:8px}.field{display:flex;flex-direction:column;gap:4px;min-width:0}.field label,.join-profile label{font-size:8px;color:#897e6c;letter-spacing:.15em;text-transform:uppercase;font-weight:800}.field input,.field select,.join-profile input{width:100%;min-width:0;background:#0b0a08;border:1px solid #3d3528;color:#e9e1d3;border-radius:0;padding:8px 9px;min-height:38px;outline:none}.field input:focus,.field select:focus,.join-profile input:focus{border-color:#9b8251;box-shadow:0 0 0 1px rgba(165,138,84,.22)}.field select{appearance:none;background-image:linear-gradient(45deg,transparent 50%,#8e7a54 50%),linear-gradient(135deg,#8e7a54 50%,transparent 50%);background-position:calc(100% - 13px) 16px,calc(100% - 9px) 16px;background-size:4px 4px,4px 4px;background-repeat:no-repeat;padding-right:25px}.field-help{color:#756b5a;font-size:9px;line-height:1.2;white-space:nowrap}.create-footer{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-top:10px}.create-btn{min-width:160px}.create-btn span{margin-left:10px}.compact-btn{padding:6px 9px;min-height:32px;font-size:9px}
.join-profile{display:grid;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:9px;padding:0 0 10px}.join-profile input{min-height:36px;padding:7px 9px}.room-list{display:flex;flex-direction:column;gap:6px;max-height:360px;overflow:auto;padding-right:2px;scrollbar-width:thin;scrollbar-color:#4a4030 transparent}.room-item{display:grid;grid-template-columns:76px minmax(0,1fr) auto;gap:10px;align-items:center;background:rgba(8,8,7,.8);border:1px solid #302a21;padding:8px 9px;position:relative}.room-item:before{content:"";position:absolute;left:0;top:0;bottom:0;width:2px;background:#665535;opacity:.5}.room-item:hover{border-color:#67583e;background:#100e0b}.room-item.full{opacity:.48}.room-code span,.room-detail span,.room-detail small{display:block}.room-code span{font-size:7px;letter-spacing:.18em;color:#675e50}.room-code strong{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:15px;letter-spacing:.08em;color:#d5cab7}.room-detail strong{font-size:10px;letter-spacing:.1em;color:#bda879}.room-detail span{font-size:10px;color:#9d9383;margin-top:2px}.room-detail small{font-size:8px;color:#655d50;margin-top:2px}.room-join-btn{min-width:62px;min-height:34px;padding:7px 9px;font-size:9px}.room-empty{padding:26px 14px;text-align:center;color:#706758;border:1px dashed #3a3329;font-size:11px;letter-spacing:.04em}.room-empty.error{color:#bd706b}.case-footer{margin-top:auto;padding-top:12px;display:flex;justify-content:space-between;color:#4e473b;font-size:7px;letter-spacing:.18em}.case-footer b{font-weight:500}

@media(max-width:1020px){.room-home-grid{grid-template-columns:1fr}.room-list{max-height:270px}.room-create-grid{grid-template-columns:1.25fr .58fr .54fr .78fr .78fr .78fr}}
@media(max-width:700px){.shell{width:min(100% - 18px,1240px)}.room-shell{padding:13px 0 12px}.room-hero{padding-bottom:11px}.room-hero h1{font-size:42px}.tagline{font-size:11px}.room-status{display:none}.cipher-strip{height:25px}.cipher-strip b{display:none}.room-home-grid{gap:8px;margin-top:8px}.room-panel{padding:12px}.panel-head{margin-bottom:9px;padding-bottom:7px}.panel-head h2{font-size:17px}.case-no{font-size:22px}.room-create-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:7px}.field-nick{grid-column:1 / -1}.field input,.field select{min-height:36px;padding:7px 8px}.create-footer{margin-top:8px}.create-btn{min-width:145px;min-height:36px;padding:8px 11px;font-size:10px}.room-list{max-height:245px}.room-item{grid-template-columns:68px 1fr auto;gap:7px;padding:7px 8px}.room-detail small{display:none}.join-profile{grid-template-columns:82px 1fr;padding-bottom:8px}.case-footer{display:none}}
@media(max-width:390px){.room-hero h1{font-size:37px}.tagline{font-size:10px}.cipher-strip{gap:5px}.cipher-strip i{width:16px}.panel-mark{display:none}.room-panel{padding:10px}.room-create-grid{gap:6px}.field label{font-size:7px}.field-help{font-size:8px;white-space:normal}.create-footer{align-items:flex-end}.room-item{grid-template-columns:61px 1fr auto}.room-code strong{font-size:13px}.room-detail span{font-size:9px}.room-join-btn{min-width:54px;padding:6px}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.001ms!important;transition-duration:.001ms!important;scroll-behavior:auto!important}}

/* ===== V20 · lobby overlap / responsive controls fix ===== */
/* Keep both lobby panels inside the shell. The form is allowed to shrink;
   controls never impose an intrinsic width on the room-list column. */
.room-home-grid{
  grid-template-columns:minmax(0,1fr) minmax(300px,340px);
  gap:14px;
  width:100%;
  min-width:0;
}
.create-room-panel,.room-list-panel{min-width:0;overflow:hidden}
.room-list-panel{width:100%}

/* 10 controls in two compact 6-column rows. No fixed pixel minimums. */
.plus-create-grid{
  grid-template-columns:repeat(6,minmax(0,1fr))!important;
  gap:8px;
  min-width:0;
  width:100%;
}
.plus-create-grid .field{min-width:0;max-width:100%;overflow:hidden}
.plus-create-grid .field-nick{grid-column:span 2}
.plus-create-grid .field-mode{grid-column:span 2}
.plus-create-grid .field input,
.plus-create-grid .field select{
  width:100%;
  max-width:100%;
  min-width:0;
  text-overflow:ellipsis;
}
.plus-create-grid .field select:disabled{opacity:.45;cursor:not-allowed}

/* Prevent long mode labels / helper text from pushing the grid wider. */
.plus-create-grid label,.plus-create-grid .field-help{min-width:0;overflow:hidden;text-overflow:ellipsis}
.create-footer{min-width:0;flex-wrap:wrap}
.create-footer .field-help{flex:1 1 260px;min-width:0;white-space:normal}
.create-btn{flex:0 0 auto}

/* Slightly narrower desktop: room list drops below before controls can collide. */
@media(max-width:1080px){
  .room-home-grid{grid-template-columns:1fr}
  .room-list{max-height:270px}
  .plus-create-grid{grid-template-columns:repeat(5,minmax(0,1fr))!important}
  .plus-create-grid .field-nick,.plus-create-grid .field-mode{grid-column:span 2}
}

/* Tablet: three compact columns. Important fields get the full row. */
@media(max-width:780px){
  .plus-create-grid{grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:7px}
  .plus-create-grid .field-nick,.plus-create-grid .field-mode{grid-column:1/-1}
  .create-footer{align-items:stretch}
  .create-btn{margin-left:auto}
}

/* Mobile: two columns; no horizontal overflow. */
@media(max-width:560px){
  .plus-create-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:6px}
  .plus-create-grid .field-nick,.plus-create-grid .field-mode{grid-column:1/-1}
  .create-footer{display:grid;grid-template-columns:1fr;gap:8px}
  .create-btn{width:100%;min-width:0;margin:0}
}

@media(max-width:360px){
  .plus-create-grid{grid-template-columns:1fr!important}
  .plus-create-grid .field-nick,.plus-create-grid .field-mode{grid-column:auto}
}


/* V21 TILE SET × VISIBILITY builder */
.panel-head-actions{display:flex;align-items:center;gap:8px;min-width:0}.mode-builder{display:grid;gap:10px;margin:0 0 12px}.mode-step{border:1px solid #312b22;background:rgba(10,9,7,.7);padding:10px;min-width:0}.mode-step-head{display:flex;gap:9px;align-items:center;margin-bottom:8px}.mode-step-head>span{width:24px;height:24px;display:grid;place-items:center;border:1px solid #51452f;color:#b69a60;font:800 9px/1 ui-monospace,monospace}.mode-step-head div{display:grid;gap:1px}.mode-step-head b{font-size:8px;letter-spacing:.17em;color:#d8c8a6}.mode-step-head small{font-size:7px;color:#756b5b}.choice-cards{display:grid;gap:6px;min-width:0}.choice-cards-2{grid-template-columns:repeat(2,minmax(0,1fr))}.choice-cards-3{grid-template-columns:repeat(3,minmax(0,1fr))}.choice-card{min-width:0;min-height:58px;padding:8px 9px;text-align:left;background:#0b0a08;border:1px solid #3a3329;color:#918675;cursor:pointer;display:grid;gap:2px;align-content:center}.choice-card strong{font:800 11px/1.15 Georgia,"Times New Roman",serif;color:#d8cbb4;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.choice-card span{font:800 6px/1.2 ui-monospace,monospace;letter-spacing:.1em;color:#81745f;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.choice-card small{font-size:7px;line-height:1.3;color:#6f6658;white-space:normal}.choice-card:hover{border-color:#6b5a3d}.choice-card.active{border-color:#c3a565;background:linear-gradient(145deg,#18130c,#0c0a07);box-shadow:inset 3px 0 0 #c3a565}.choice-card.active strong{color:#f0dfb7}.plus-choice.active{box-shadow:inset 3px 0 0 #8b4637,inset 6px 0 0 #b6963e,inset 9px 0 0 #315f86}.compact-choices .choice-card{min-height:44px}.mode-combination{display:grid;grid-template-columns:minmax(145px,.7fr) minmax(0,1.5fr) auto;gap:10px;align-items:center;padding:9px 10px;border:1px solid #5b4a31;background:linear-gradient(90deg,rgba(181,145,77,.07),rgba(8,7,5,.45))}.mode-combination>div{display:grid;gap:2px}.mode-combination span{font-size:6px;letter-spacing:.16em;color:#776b58}.mode-combination strong{font:800 11px/1.2 Georgia,"Times New Roman",serif;color:#ead8b2}.mode-combination p{margin:0;font-size:8px;line-height:1.45;color:#918574}.mode-combination>small{white-space:nowrap;color:#b59a64;font-size:8px}.split-settings-grid{grid-template-columns:minmax(140px,1.4fr) repeat(4,minmax(80px,1fr))!important}.split-settings-grid .field{min-width:0}.split-settings-grid .field select,.split-settings-grid .field input{min-width:0!important;width:100%!important}.rules-home-modal{width:min(720px,100%)}.home-rule-tabs{display:flex;flex-wrap:wrap;gap:5px;margin:10px 0}.home-rule-tabs button{background:#0d0b08;border:1px solid #3c3428;color:#8f8371;padding:7px 8px;font-size:8px;cursor:pointer}.home-rule-tabs button.active{border-color:#aa8d54;color:#f0deb2}.home-rule-body{min-height:120px;border:1px solid #332d24;background:#0b0a08;padding:14px}.home-rule-body h3{margin:0 0 8px;font-family:Georgia,"Times New Roman",serif;color:#decba4}.home-rule-body p{margin:0;color:#aba08f;line-height:1.7}.current-rule-combo{display:flex;gap:10px;align-items:center;margin-top:12px;padding-top:9px;border-top:1px solid #2e2921;font-size:8px}.current-rule-combo b{color:#776b59}.current-rule-combo span{color:#d3bd8b}.room-mode-badges{display:flex;gap:4px;flex-wrap:wrap;margin-bottom:2px}.room-mode-badges b{font:800 6px/1 ui-monospace,monospace;letter-spacing:.08em;padding:3px 5px;border:1px solid #463d31}.tile-set-badge.standard{color:#d8d0c2}.tile-set-badge.plus{color:#d8bb71;border-color:#765f31}.visibility-badge.classic{color:#a9b89b}.visibility-badge.blind{color:#d4a972}.visibility-badge.master_blind{color:#d78172;border-color:#7f433a}
@media(max-width:1120px){.split-settings-grid{grid-template-columns:repeat(3,minmax(0,1fr))!important}.split-settings-grid .field-nick{grid-column:span 2}.mode-combination{grid-template-columns:1fr 1.4fr}.mode-combination>small{grid-column:1/-1}}
@media(max-width:720px){.choice-cards-3{grid-template-columns:repeat(3,minmax(0,1fr))}.choice-card{padding:7px 6px}.choice-card strong{font-size:9px}.choice-card small{font-size:6px}.mode-combination{grid-template-columns:1fr}.split-settings-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}.split-settings-grid .field-nick{grid-column:1/-1}.panel-head-actions .panel-mark{display:none}}
@media(max-width:390px){.choice-cards-3{gap:3px}.choice-card strong{font-size:8px}.choice-card span{font-size:5px}.mode-step{padding:8px}.split-settings-grid{gap:6px!important}}

/* ===== V22 · readability typography scale =====
   Increase small UI text without increasing intrinsic control widths.
   clamp() keeps desktop readable while protecting tablet/mobile layouts. */
.eyebrow,.micro{font-size:clamp(10px,.78vw,12px)}
.tagline{font-size:clamp(14px,1.05vw,16px);line-height:1.45}
.room-status span{font-size:9px}.room-status strong{font-size:14px}.room-status small{font-size:9px}
.cipher-strip{font-size:10px}.cipher-strip b{font-size:9px}
.panel-head h2{font-size:clamp(21px,1.7vw,25px)}
.case-no{font-size:clamp(28px,2.2vw,34px)}
.panel-mark{font-size:8px}
.field label,.join-profile label{font-size:clamp(9px,.72vw,11px);line-height:1.25}
.field input,.field select,.join-profile input{font-size:clamp(15px,1.05vw,17px);line-height:1.2}
.field-help{font-size:clamp(10px,.78vw,12px);line-height:1.35}
.compact-btn{font-size:clamp(10px,.76vw,12px)}
.create-btn{font-size:clamp(13px,1vw,16px)}
.room-code span{font-size:8px}.room-code strong{font-size:17px}
.room-detail strong{font-size:12px}.room-detail span{font-size:11px}.room-detail small{font-size:9px}
.room-join-btn{font-size:10px}.room-empty{font-size:12px}.case-footer{font-size:8px}

.mode-step-head>span{font-size:10px}
.mode-step-head b{font-size:clamp(9px,.75vw,11px)}
.mode-step-head small{font-size:clamp(8px,.62vw,9px);line-height:1.35}
.choice-card{min-height:64px}
.choice-card strong{font-size:clamp(12px,.92vw,14px)}
.choice-card span{font-size:clamp(7px,.56vw,8px)}
.choice-card small{font-size:clamp(8px,.63vw,9.5px);line-height:1.4}
.compact-choices .choice-card{min-height:50px}
.mode-combination span{font-size:7px}.mode-combination strong{font-size:clamp(12px,.9vw,14px)}
.mode-combination p{font-size:clamp(9px,.7vw,11px);line-height:1.5}.mode-combination>small{font-size:9px}
.home-rule-tabs button{font-size:10px}.home-rule-body h3{font-size:20px}.home-rule-body p{font-size:14px}
.current-rule-combo{font-size:10px}.room-mode-badges b{font-size:7px}

/* Avoid enlarged text forcing columns wider than their grid track. */
.field,.choice-card,.room-detail,.room-code,.panel-title,.mode-combination>*{min-width:0}
.field select,.field input,.choice-card strong,.choice-card span,.room-detail span,.room-detail strong{max-width:100%}
.field select,.field input{overflow:hidden;text-overflow:ellipsis}

@media(max-width:720px){
  .eyebrow,.micro{font-size:9px}.tagline{font-size:12px}
  .panel-head h2{font-size:19px}.case-no{font-size:24px}
  .field label,.join-profile label{font-size:9px}
  .field input,.field select,.join-profile input{font-size:15px}
  .field-help{font-size:9px}
  .choice-card{min-height:60px;padding:8px 7px}
  .choice-card strong{font-size:11px}.choice-card span{font-size:7px}.choice-card small{font-size:7.5px}
  .mode-step-head b{font-size:9px}.mode-step-head small{font-size:7.5px}
  .mode-combination strong{font-size:12px}.mode-combination p{font-size:9px}.mode-combination>small{font-size:8px}
  .room-code strong{font-size:15px}.room-detail strong,.room-detail span{font-size:10px}
  .compact-btn{font-size:10px}.create-btn{font-size:12px}
}
@media(max-width:390px){
  .field label{font-size:8px}.field-help{font-size:8px}
  .choice-card strong{font-size:10px}.choice-card span{font-size:6px}.choice-card small{font-size:7px}
  .choice-card{min-height:58px}
  .mode-step-head b{font-size:8px}.mode-step-head small{font-size:7px}
  .room-detail span{font-size:9px}.room-code strong{font-size:14px}
}

/* ===== V23 · dynamic room seats ===== */
.dynamic-room-create-grid{grid-template-columns:minmax(180px,1.5fr) repeat(5,minmax(84px,1fr))!important}
.dynamic-room-create-grid .field{min-width:0}
@media(max-width:1120px){.dynamic-room-create-grid{grid-template-columns:repeat(3,minmax(0,1fr))!important}.dynamic-room-create-grid .field-nick{grid-column:span 2}}
@media(max-width:720px){.dynamic-room-create-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}.dynamic-room-create-grid .field-nick{grid-column:1/-1}}
@media(max-width:390px){.dynamic-room-create-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}}

/* V24 GLOBAL I18N + READABILITY */
.language-switch{display:inline-flex;align-items:center;gap:3px;padding:3px;border:1px solid rgba(194,164,105,.28);background:rgba(8,7,5,.55);white-space:nowrap}
.language-switch button{appearance:none;border:0;border-right:1px solid rgba(194,164,105,.2);background:transparent;color:#8d806b;font:700 11px/1 var(--font-mono,monospace);letter-spacing:.08em;padding:7px 8px;min-width:34px;cursor:pointer}
.language-switch button:last-child{border-right:0}.language-switch button.active{background:rgba(201,169,105,.18);color:#f0dfb9}.language-switch button:focus-visible{outline:1px solid #d5b777;outline-offset:1px}
.room-status{gap:7px}.room-status .language-switch{margin-bottom:2px}
.choice-card strong{font-size:clamp(15px,1.15vw,19px)}.choice-card span{font-size:clamp(13px,1vw,16px)}.choice-card small{font-size:clamp(12px,.88vw,14px);line-height:1.45}
.field label,.join-profile label{font-size:clamp(12px,.9vw,14px)}.field input,.field select,.join-profile input{font-size:clamp(15px,1.2vw,19px)}
.room-item .room-detail strong{font-size:clamp(14px,1vw,17px)}.room-item .room-detail span,.room-item .room-detail small{font-size:clamp(12px,.85vw,14px)}
@media(max-width:720px){.language-switch button{font-size:10px;padding:6px 7px;min-width:31px}.room-status{align-items:flex-end}.choice-card strong{font-size:15px}.choice-card span{font-size:13px}.choice-card small{font-size:12px}.field input,.field select,.join-profile input{font-size:16px}}
\n\n/* ===== V25 · orientation + timer room settings ===== */
.dynamic-room-create-grid{grid-template-columns:minmax(180px,1.45fr) repeat(7,minmax(80px,1fr))!important}
@media(max-width:1240px){.dynamic-room-create-grid{grid-template-columns:repeat(4,minmax(0,1fr))!important}.dynamic-room-create-grid .field-nick{grid-column:span 2}}
@media(max-width:820px){.dynamic-room-create-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}.dynamic-room-create-grid .field-nick{grid-column:1/-1}}


/* ===== V30 · AdFit reserved placements =====
   No border/background/title by design. Each slot is hidden until ad code is pasted. */
.adfit-wrap{
  width:100%;
  min-width:0;
  display:flex;
  justify-content:center;
  align-items:center;
  clear:both;
  position:relative;
  z-index:1;
  pointer-events:auto;
}
.adfit-index-wrap{margin:22px auto 4px}
.adfit-slot{
  margin:0 auto;
  padding:0;
  border:0;
  outline:0;
  background:transparent;
  box-shadow:none;
  overflow:hidden;
  flex:0 0 auto;
  align-items:center;
  justify-content:center;
}
.adfit-slot:empty{display:none!important}
.adfit-desktop-slot{display:flex;width:728px;height:90px}
.adfit-mobile-slot{display:none;width:320px;height:100px}
.adfit-slot > .kakao_ad_area,
.adfit-slot > ins.kakao_ad_area{margin:0!important;max-width:100%!important}
@media(max-width:760px){
  .adfit-index-wrap{margin:14px auto 3px}
  .adfit-desktop-slot{display:none!important}
  .adfit-mobile-slot:not(:empty){display:flex}
}

.adfit-slot.adfit-server-active:not(:empty){display:flex}


/* ===== V31 · supplied AdFit units ===== */
.adfit-index-wrap .adfit-mobile-slot{height:50px!important}
@media(max-width:760px){
  .adfit-index-wrap .adfit-mobile-slot:not(:empty){display:flex!important;width:320px!important;height:50px!important;max-width:calc(100vw - 16px)!important}
}

@media(max-width:760px){
  .adfit-index-wrap{
    width:100vw!important;
    max-width:100vw!important;
    margin-left:calc(50% - 50vw)!important;
    margin-right:calc(50% - 50vw)!important;
  }
  .adfit-index-wrap .adfit-mobile-slot:not(:empty){
    width:320px!important;
    max-width:320px!important;
    height:50px!important;
  }
}
