.business-page { background:#000; color:#fff; }
.business-page .page-main { padding:20px 32px 32px; max-width:1600px; margin:auto; }
.business-page .site-header { padding:16px 32px; border-bottom:1px solid #fff; }
.business-page .brand img { width:40px;height:40px; }
.business-page .brand > span { font-size:12px; }
#business-game { --growth:0; }
#business-game button,#business-game input,#business-game textarea,#business-game a { -webkit-tap-highlight-color:transparent; }
#business-game button { cursor:pointer; }
#business-game button:disabled { cursor:default; opacity:.55; }
#business-game :focus-visible { outline:3px dashed #fff;outline-offset:5px; }
.business-topline { display:flex;justify-content:space-between;align-items:center;gap:16px;font-size:12px;line-height:1.5;min-height:38px; }
.business-topline nav { display:flex;gap:12px;align-items:center; }
.business-topline button,.quiet-button { border:0;background:#000;color:#fff;padding:10px 4px;text-decoration:underline;text-underline-offset:5px;font-size:12px; }
.business-title { text-align:center;margin:22px 0 8px;font-family:"FMW Display",monospace;font-size:clamp(28px,4.2vw,56px);line-height:1.4; }
.business-help { text-align:center;font-size:14px;line-height:1.7;max-width:700px;margin:0 auto 18px; }
.game-arena { position:relative;min-height:420px;height:clamp(420px,52vh,580px);overflow:hidden;isolation:isolate;border:2px solid #fff;background:#000; }
.scene-background { position:absolute;inset:0;width:100%;height:100%;image-rendering:pixelated;pointer-events:none;z-index:-1; }
.skill-target { --target-shape:polygon(33% 0,67% 0,67% 3%,77% 3%,77% 7%,85% 7%,85% 14%,92% 14%,92% 22%,97% 22%,97% 33%,100% 33%,100% 67%,97% 67%,97% 78%,92% 78%,92% 86%,85% 86%,85% 93%,77% 93%,77% 97%,67% 97%,67% 100%,33% 100%,33% 97%,23% 97%,23% 93%,15% 93%,15% 86%,8% 86%,8% 78%,3% 78%,3% 67%,0 67%,0 33%,3% 33%,3% 22%,8% 22%,8% 14%,15% 14%,15% 7%,23% 7%,23% 3%,33% 3%);isolation:isolate;position:absolute;top:0;left:0;display:grid;place-items:center;min-width:0;max-width:none;padding:20px 15px;background:transparent;color:#fff;font-family:"FMW Pixel",monospace;font-size:13px;line-height:1.5;border:0;overflow-wrap:anywhere;touch-action:manipulation; }
.skill-target::before,.skill-target::after { content:"";position:absolute;inset:0;z-index:-1;background:#fff;clip-path:var(--target-shape); }
.skill-target::after { inset:2px;background:#000; }
.skills .skill-target { text-shadow:2px 2px #000; }
.skills .skill-target::after { background:#000;box-shadow:inset 10px 10px 0 -8px #fff; }
.skill-target:hover,.skill-target:focus-visible { color:#000;text-shadow:none; }
.skill-target:hover::after,.skill-target:focus-visible::after { background:#fff; }
.interests { cursor:crosshair; }
.interests .skill-target { cursor:crosshair;padding:21px 12px; }
.interests .skill-target { --target-shape:polygon(20% 0,63% 0,63% 9%,82% 9%,82% 24%,100% 24%,100% 66%,88% 66%,88% 86%,66% 86%,66% 100%,30% 100%,30% 91%,9% 91%,9% 65%,0 65%,0 29%,14% 29%,14% 13%,20% 13%); }
.target-depth { position:absolute;top:9px;left:30%;font-size:8px;pointer-events:none; }
.pixel-particle { position:fixed;z-index:20;pointer-events:none;width:5px;height:5px;background:#fff;animation:pixel-burst .5s steps(8,end) forwards; }
@keyframes pixel-burst { to { transform:translate(var(--dx),var(--dy));opacity:0; } }
@keyframes skill-drift { from { transform:translate(-3px,-4px) rotate(-2deg); } to { transform:translate(5px,7px) rotate(2deg); } }

.arena-tools { display:flex;justify-content:space-between;align-items:center;gap:16px;margin:8px 0 16px;flex-wrap:wrap; }
.custom-selection { display:flex;align-items:center;gap:8px;max-width:100%; }
.custom-selection input { min-width:0;width:230px;padding:10px;background:#000;color:#fff;border:1px solid #fff;font-size:12px; }
.custom-selection button,.outline-button { background:#000;color:#fff;border:1px solid #fff;padding:12px;font-size:12px;min-height:44px; }
.outline-button:hover,.custom-selection button:hover { background:#fff;color:#000; }
.selection-dock { display:grid;grid-template-columns:minmax(0,1fr) auto;gap:24px;align-items:end;border-top:2px solid #fff;padding-top:18px; }
.selection-label { display:flex;align-items:baseline;gap:14px;margin-bottom:10px;font-size:14px; }
.selection-label small { font-size:11px; }
.selection-list { display:flex;gap:7px;flex-wrap:wrap;max-height:150px;overflow:auto;align-content:start;min-height:45px;padding:4px 7px 6px 0; }
.selection-chip { display:inline-flex;align-items:center;border:1px solid #fff;font-size:11px;line-height:1.5;padding-left:9px;max-width:100%; }
.selection-chip button { background:#000;color:#fff;border:0;min-width:40px;min-height:40px; }
.selection-chip button:hover { background:#fff;color:#000; }
.selection-empty { font-size:12px;padding-top:10px; }
.continue-button { background:#fff;color:#000;border:3px solid #fff;box-shadow:5px 5px 0 #000,7px 7px 0 #fff;font-family:"FMW Pixel",monospace;width:calc(130px + var(--growth)*9px);max-width:40vw;min-height:calc(48px + var(--growth)*4px);padding:12px;font-size:clamp(12px,calc(12px + var(--growth)*1px),36px);line-height:1.5;transition:width .2s,min-height .2s,font-size .2s; }
.game-notice { font-size:12px;min-height:24px;line-height:1.7;margin:10px 0; }
.business-cards { display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;margin:36px 0;align-items:start; }
.business-card { border:2px solid #fff;position:relative;padding:24px;background:#000; }
.business-card summary { cursor:pointer;list-style:none;min-height:230px; }
.business-card summary::-webkit-details-marker { display:none; }
.card-number { display:block;font-size:12px;margin-bottom:32px; }
.business-card h2 { font-family:"FMW Display",monospace;font-size:25px;line-height:1.5;margin-bottom:20px; }
.business-card p,.business-card li { font-family:"FMW Pixel",monospace;font-size:12px;line-height:1.9; }
.card-preview { display:block;margin-top:22px;font-size:11px;text-decoration:underline; }
.card-details { padding-top:20px;border-top:1px dashed #fff; }
.card-details h3 { font-size:12px;margin:18px 0 8px; }
.card-details p { margin:0 0 14px; }
.choose-business { margin-top:22px;width:100%;background:#fff;color:#000;border:2px solid #fff;padding:16px;font-size:13px;line-height:1.5; }
.business-card:focus-within { outline:1px solid #fff;outline-offset:5px; }
.invitation { max-width:760px;margin:36px auto; }
.invitation .business-title { text-align:left;font-size:clamp(26px,4vw,42px);margin-bottom:30px; }
.chosen-business { font-size:13px;line-height:1.8;border-left:3px solid #fff;padding-left:16px;margin-bottom:32px; }
.business-form { display:grid;gap:18px; }
.business-form label { display:grid;gap:10px;font-size:14px;line-height:1.6; }
.business-form input,.business-form textarea { display:block;width:100%;border:1px solid #fff;background:#000;color:#fff;padding:14px;font-family:Arial,sans-serif;font-size:16px;border-radius:0; }
.business-form textarea { min-height:120px;resize:vertical; }
.business-form .small-print { font-size:11px;line-height:1.9; }
.business-form .consent { grid-template-columns:24px 1fr;align-items:start;font-size:12px; }
.business-form input[type=checkbox] { width:20px;height:20px;accent-color:#fff; }
.business-auth { border:1px solid #fff;padding:22px;margin:24px 0;display:grid;gap:16px; }
.business-auth h2 { font-size:16px; }
.business-auth p { font-size:12px;line-height:1.8; }
.business-auth a { display:block;text-align:center; }
.business-auth input { width:100%;background:#000;color:#fff;border:1px solid #fff;padding:12px;font-family:Arial,sans-serif;font-size:16px; }
.business-auth form { display:grid;gap:12px; }
.business-auth label { font-size:12px; }
.booking-frame { width:100%;height:730px;border:1px solid #fff;background:#fff;margin:24px 0; }
.success-actions { display:flex;flex-wrap:wrap;gap:24px;align-items:center;margin:24px 0; }
.restart-confirm { margin-top:14px;display:flex;gap:14px;align-items:center;flex-wrap:wrap;font-size:12px; }
@media (max-width:680px) {
 .business-page .page-main { padding:16px; }.business-page .site-header { padding:12px 16px;gap:10px; }.business-page .site-header nav { font-size:10px; }
 .business-topline { font-size:10px;gap:8px; }.business-topline nav { gap:8px; }.business-topline button { font-size:10px; }
 .business-title { margin-top:18px; }.business-help { font-size:12px;margin-bottom:12px; }
 .game-arena { height:480px;min-height:480px; }
 .skill-target { font-size:10px;padding:17px 10px; }.interests .skill-target { padding:19px 6px;font-size:9px;overflow-wrap:normal; }.target-depth { font-size:6px;top:7px; }
 .arena-tools { gap:8px; }.custom-selection { flex:1; }.custom-selection input { width:100%; }.custom-selection button { padding:8px; }.arena-tools .quiet-button { font-size:10px; }
 .selection-dock { gap:12px;grid-template-columns:minmax(0,1fr) auto; }.selection-list { max-height:144px; }.selection-label { flex-wrap:wrap;gap:6px;font-size:12px; }.selection-chip { font-size:10px; }.selection-chip button { min-width:32px;min-height:36px; }
 .continue-button { width:calc(98px + var(--growth)*3px);max-width:43vw;min-height:calc(48px + var(--growth)*4px);font-size:clamp(10px,calc(10px + var(--growth)*.6px),26px);padding:8px; }
 .business-cards { grid-template-columns:1fr;gap:18px;margin-top:24px; }.business-card summary { min-height:0; }.card-number { margin-bottom:14px; }.business-card h2 { font-size:23px; }.business-auth { padding:16px; }
}
@media (prefers-reduced-motion:reduce) { .skill-target { animation:none; }.pixel-particle { display:none; }.continue-button { transition:none; } }


.pop-ring { position:fixed;z-index:21;pointer-events:none;animation:bubble-pop .24s steps(5,end) forwards; }
@keyframes bubble-pop { to { transform:scale(1.35);opacity:0; } }
.space-shot { position:fixed;height:2px;background:#fff;z-index:20;transform-origin:left center;pointer-events:none; }
/* The discovery stages occupy one viewport, including their controls and selections. */
.business-playing { height:100dvh;overflow:hidden; }
.business-playing .site-header,.business-playing .tutorial-footer { display:none; }
.business-playing .page-main { width:100%;max-width:none;margin:0;padding:0; }
#business-game.game-playing { position:fixed;inset:0;display:grid;grid-template-rows:auto auto minmax(0,1fr) 206px;padding:10px 20px max(12px,env(safe-area-inset-bottom));height:100dvh;overflow:hidden;background:#000; }
.game-playing .business-topline { min-height:30px;font-size:10px; }
.game-playing .business-title { font-size:clamp(22px,3.2vw,42px);line-height:1.35;margin:8px 0 12px; }
.game-playing .game-arena { width:100%;height:100%;min-height:0;border:0; }
.game-playing .selection-dock { position:relative;z-index:2;margin:0;padding:12px 0 0;border:0;grid-template-columns:minmax(0,1fr) auto;gap:12px;align-items:end; }
.game-playing .selection-label { font-size:10px;gap:8px;margin:0 0 4px; }
.game-playing .selection-label small { font-size:9px; }
.game-playing .selection-list { display:block;list-style:disc outside;margin:0;padding:0 0 0 16px;max-height:none;min-height:180px;overflow:visible; }
.game-playing .selection-chip { display:list-item;border:0;padding:0;font-size:10px;line-height:18px; }
.game-playing .selection-chip button { min-width:24px;min-height:18px;padding:0 4px;font-size:12px;line-height:18px; }
.game-playing .selection-empty { font-size:10px;line-height:18px;padding:0;list-style:none; }
.game-playing .continue-button { width:calc(130px + var(--growth)*18px);max-width:44vw;min-height:calc(48px + var(--growth)*8px);font-size:clamp(12px,calc(12px + var(--growth)*2px),32px);margin:0 8px 8px 0; }
.game-playing > .game-notice { position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%); }
.game-victory { position:absolute;inset:0;z-index:10;display:grid;place-items:center;background:#000d;font-family:"FMW Display",monospace;font-size:clamp(42px,10vw,100px); }
.game-playing .restart-confirm { position:absolute;top:45px;left:16px;right:16px;z-index:12;background:#000;border:1px solid #fff;padding:16px; }
.business-cards { gap:16px;margin:20px 0; }
.business-card { padding:18px; }
.business-card summary { min-height:190px; }
.business-card .choose-business { margin-top:16px; }
@media(max-width:680px) {
 #business-game.game-playing { padding:6px 10px max(10px,env(safe-area-inset-bottom));grid-template-rows:auto auto minmax(0,1fr) 206px; }
 .game-playing .business-topline > span { display:none; }
 .game-playing .business-topline nav { width:100%;justify-content:flex-end;gap:12px; }
 .game-playing .business-topline button { padding:7px 2px;font-size:9px; }
 .game-playing .business-title { margin:4px 0 8px;font-size:clamp(19px,5.4vw,30px); }
 .game-playing .continue-button { width:calc(98px + var(--growth)*6px);max-width:43vw;min-height:calc(48px + var(--growth)*8px);font-size:clamp(10px,calc(10px + var(--growth)*1.2px),22px);padding:8px; }
 .business-cards { gap:10px;margin:16px 0; }
 .business-card { padding:12px; }
 .business-card summary { min-height:0; }
 .business-card .card-number { margin-bottom:6px;font-size:9px; }
 .business-card h2 { font-size:19px;line-height:1.3;margin:6px 0; }
 .business-card p { font-size:10px;line-height:1.5;margin:6px 0; }
 .business-card .card-preview { margin-top:8px;font-size:10px; }
 .business-card .choose-business { margin-top:10px;padding:10px;font-size:12px; }
}
@media(max-height:550px) and (min-width:600px) {
 #business-game.game-playing { grid-template-rows:auto auto minmax(0,1fr) 136px; }
 .game-playing .selection-list { columns:2;max-width:400px;min-height:90px; }
 .game-playing .continue-button { min-height:calc(40px + var(--growth)*5px); }
}
.business-options .site-header { display:none; }
.business-options .page-main { padding-top:10px; }
.business-options .business-title { margin:14px 0; }
.game-playing .selection-chip { font-size:9px;line-height:17px; }
.game-playing .selection-chip button { line-height:17px;min-height:17px; }
@media(max-width:680px) {
 .game-playing .skill-target { font-size:8px;line-height:1.5;overflow-wrap:normal;padding:12px 5px; }
 .game-playing .selection-chip { font-size:8px;line-height:16px; }
 .game-playing .selection-chip button { line-height:16px;min-height:16px;min-width:18px; }
 .business-options .business-title { font-size:26px;line-height:1.3;margin:12px 0; }
 .business-options .business-card h2 { font-size:17px; }
 .business-options .business-cards { margin:10px 0; }
}
@media(max-height:550px) and (min-width:600px) {
 #business-game.game-playing { grid-template-rows:auto auto minmax(0,1fr) 184px; }
 .game-playing .selection-list { columns:auto;min-height:170px; }
}

/* Complete recommendations stay visible without disclosure or hover. */
.business-card {display:flex;flex-direction:column;min-width:0;}
.business-card .card-details {border-top:1px solid #777;margin-top:12px;padding-top:4px;}
.business-card .card-details h3 {font-size:11px;line-height:1.5;margin:12px 0 6px;}
.business-card p {font-size:13px;line-height:1.7;overflow-wrap:anywhere;}
.business-card .card-customer {color:#ddd;font-size:12px;}
.business-card .choose-business {margin-top:auto;min-height:48px;}
.business-ratings {display:grid;grid-template-columns:1fr auto;gap:7px 12px;margin:18px 0;font-size:12px;line-height:1.6;}
.business-ratings dt,.business-ratings dd {margin:0;}
.business-ratings dd {font-weight:bold;text-align:right;}
.ratings-note {font-size:11px;line-height:1.8;max-width:760px;margin:20px auto;text-align:center;color:#ddd;}
@media(max-width:680px){.business-card {padding:18px;}.business-card p {font-size:12px;line-height:1.7;}.business-options .business-card h2 {font-size:20px;}.business-cards {gap:20px;}.business-ratings {font-size:12px;}.business-card .choose-business {padding:14px;}.ratings-note {font-size:11px;}}

/* Ten selected answers remain visible with accessible removal targets. */
#business-game.game-playing {grid-template-rows:auto auto minmax(0,1fr) 274px;}
.game-playing .selection-list {min-height:240px;}
.game-playing .selection-chip {line-height:24px;}
.game-playing .selection-chip button {min-width:24px;min-height:24px;line-height:24px;}
@media(max-width:680px){#business-game.game-playing {grid-template-rows:auto auto minmax(0,1fr) 274px;}.game-playing .selection-chip {font-size:8px;line-height:24px;}.game-playing .selection-chip button {min-width:24px;min-height:24px;line-height:24px;}}

.choice-browser {position:fixed;inset:0;width:min(720px,calc(100vw - 24px));max-height:90dvh;margin:auto;padding:20px;border:2px solid #fff;background:#000;color:#fff;overflow:auto;}
.choice-browser::backdrop {background:#000c;}
.choice-browser-header {display:flex;align-items:center;justify-content:space-between;gap:16px;}
.choice-browser h2 {font-size:20px;line-height:1.5;margin:0;}
.choice-browser input {display:block;width:100%;padding:14px;margin:16px 0;background:#000;color:#fff;border:1px solid #fff;font-family:Arial,sans-serif;font-size:16px;}
.choice-browser-list {display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;}
.choice-option {min-height:44px;padding:12px;background:#000;color:#fff;border:1px solid #fff;font-size:12px;line-height:1.6;overflow-wrap:anywhere;}
.choice-option[aria-pressed=true] {background:#fff;color:#000;opacity:1!important;}
@media(max-width:680px){.choice-browser {padding:14px;}.choice-browser-list {grid-template-columns:1fr;}.game-playing .business-topline nav {gap:9px;}.game-playing .business-topline button {min-height:32px;}}

.business-cards {align-items:stretch;}
.business-topline nav {flex-shrink:0;}
.business-topline nav button {white-space:nowrap;}

/* More discoverable choices without shrinking labels or touch controls. */
#business-game.game-playing {grid-template-rows:auto auto auto minmax(0,1fr) auto;gap:6px;}
.choice-tools {display:flex;align-items:center;gap:12px;min-width:0;}
.choice-tools .outline-button {min-height:44px;padding:10px 12px;font-size:12px;line-height:1.4;}
.choice-count {margin-left:auto;font-size:12px;line-height:1.5;}
.game-playing .business-topline nav {flex-wrap:wrap;}
.game-playing .business-topline button {min-height:44px;font-size:12px;}
.game-playing .selection-dock {min-height:76px;max-height:min(28dvh,230px);}
.game-playing .selection-dock > div {min-width:0;}
.game-playing .selection-list {display:flex;flex-direction:column;gap:2px;min-height:0;max-height:clamp(44px,calc(25dvh - 28px),180px);overflow-y:auto;overflow-x:hidden;padding:0;list-style:none;}
.game-playing .selection-chip {display:flex;align-items:center;justify-content:space-between;gap:6px;font-size:12px;line-height:1.4;min-height:44px;flex-shrink:0;}
.game-playing .selection-chip span {min-width:0;overflow-wrap:anywhere;}
.game-playing .selection-chip button {min-width:44px;min-height:44px;line-height:1.2;flex-shrink:0;}
.game-playing .selection-empty {min-height:44px;font-size:12px;}
.game-playing .continue-button {min-height:clamp(48px,calc(48px + var(--growth)*6px),112px);}
.game-playing .skill-target {font-family:Arial,sans-serif;font-weight:600;font-size:14px;line-height:1.3;padding:10px 8px;overflow-wrap:anywhere;}
.business-cards.single-result {grid-template-columns:minmax(0,620px);justify-content:center;}
.choice-option small {display:block;margin-top:6px;font-family:Arial,sans-serif;font-size:12px;line-height:1.4;color:#ddd;}
.choice-option[aria-pressed=true] small {color:#000;}
.choice-browser .quiet-button {min-width:44px;min-height:44px;font-size:12px;}
.starter-fit {border-left:2px solid #fff;padding-left:10px;}
@media(max-width:680px){
 .choice-tools {gap:8px;}.choice-tools .outline-button {padding:10px 8px;font-size:12px;}
 .choice-count {position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);}
 .game-playing .skill-target {font-size:13px;line-height:1.25;padding:8px 2px;overflow-wrap:anywhere;}
 .game-playing .selection-chip {font-size:12px;line-height:1.4;}
 .game-playing .business-topline nav {gap:10px;}
}
@media(max-height:550px){
 .game-playing .business-title {font-size:22px;margin:0;}
 .game-playing .continue-button {font-size:14px;min-height:clamp(48px,calc(48px + var(--growth)*4px),80px);}
 .game-playing .business-topline > span {display:none;}
 .game-playing .business-topline nav {width:100%;justify-content:flex-end;}
}
