*{box-sizing:border-box}:root{color-scheme:dark;--page-top:#213070;--page-bottom:#00081f;--card:rgba(10, 18, 56, 0.9);--card-border:rgba(120, 140, 255, 0.24);--control-background:rgba(7, 14, 48, 0.88);--control-background-primary:rgba(13, 24, 74, 0.95);--control-border:rgba(177, 188, 255, 0.25);--control-border-active:rgba(177, 188, 255, 0.62);--text-main:#f7f9ff;--text-sub:#c7cffd;--warn:#ff8080;--saved:#90ffb2}body,html{margin:0;min-height:100%}html{background:var(--page-bottom)}body{padding:18px 18px 28px;background:radial-gradient(circle at top,rgba(33,48,112,.9),transparent 36%),linear-gradient(180deg,var(--page-top) 0,var(--page-bottom) 100%);color:var(--text-main);font-family:"Segoe UI","Yu Gothic UI","Hiragino Kaku Gothic ProN",sans-serif}button,input,select{font:inherit}button{touch-action:manipulation}.app-shell{display:grid;gap:16px;width:100%}.toolbar-card{display:grid;gap:12px;width:min(100%,1100px);margin:0 auto}.toolbar-row{display:flex;flex-wrap:wrap;gap:10px;align-items:center;justify-content:center}.toolbar-row-secondary{gap:8px}.name-input,.pill,.pill-button,.select-wrap{min-height:42px;border:1px solid var(--control-border);border-radius:16px;background:var(--control-background);color:var(--text-main);box-shadow:0 8px 20px rgba(0,0,0,.28)}.pill{display:inline-flex;align-items:center;padding:0 16px;font-weight:700;white-space:nowrap}.state-pill{font-size:18px}.saved-pill{color:var(--saved)}.lang-group{display:inline-flex;gap:8px}.pill-button{appearance:none;padding:0 18px;cursor:pointer;font-size:16px;font-weight:700}.pill-button:focus-visible,.pill-button:hover{outline:0;border-color:var(--control-border-active);transform:translateY(-1px)}.pill-button:active{transform:translateY(0)}.pill-button.is-active{border-color:rgba(144,255,178,.82);background:rgba(19,68,65,.92)}.primary-button{background:var(--control-background-primary)}.name-input{width:min(320px,44vw);padding:0 16px;font-size:16px}.name-input::placeholder{color:rgba(199,207,253,.72)}.name-input:focus{outline:0;border-color:var(--control-border-active)}.select-wrap{display:inline-flex;align-items:center;gap:10px;padding:0 12px 0 14px}.select-label{color:var(--text-sub);font-size:14px;white-space:nowrap}.select-wrap select{min-width:96px;min-height:40px;border:0;background:0 0;color:var(--text-main);font-size:15px}.select-wrap select:focus{outline:0}.select-wrap option{background:#071030;color:var(--text-main)}.status{min-height:34px;display:inline-flex;align-items:center;padding:0 12px;border:1px solid var(--control-border);border-radius:999px;background:var(--control-background);color:var(--text-sub);font-size:14px}.status.warn{color:var(--warn)}.viewer-grid{display:grid;gap:16px;align-items:start}.production-viewer-grid{grid-template-columns:minmax(0,1fr);justify-items:center}.board-shell{display:grid;gap:8px;justify-items:center;width:100%}.board-stage{position:relative;width:min(92vw,760px);aspect-ratio:3/4;overflow:hidden;border-radius:18px;background:rgba(255,255,255,.04);box-shadow:0 18px 42px rgba(0,0,0,.35)}.board-canvas,.hit-layer{position:absolute;inset:0;width:100%;height:100%}.board-canvas{z-index:1;pointer-events:none}.hit-layer{z-index:3}.hit-button{position:absolute;appearance:none;margin:0;padding:0;border:0;background:0 0;cursor:pointer}.hit-button:focus-visible{outline:2px solid rgba(52,119,255,.9);outline-offset:1px;border-radius:8px}.support-hidden-hotspot{position:absolute;left:84.1%;top:.62%;width:10%;height:10.2%;z-index:24;margin:0;padding:0;border:0;border-radius:999px;background:0 0;opacity:0;cursor:default;appearance:none;-webkit-appearance:none;touch-action:none;user-select:none;-webkit-user-select:none;-webkit-tap-highlight-color:transparent}.support-hidden-hotspot:focus-visible{outline:2px dashed rgba(255,255,255,.7);outline-offset:-4px;border-radius:10px}.board-footer{color:var(--text-sub);font-size:12px;text-align:center}.board-footer a{color:#dfe6ff}.viewer-info[hidden]{display:none!important}.viewer-info{width:min(92vw,760px);border:1px solid var(--card-border);border-radius:18px;background:var(--card);padding:16px 18px;color:var(--text-sub);font-size:14px;line-height:1.55}.viewer-info strong{color:var(--text-main)}@media (max-width:640px){body{padding:10px 8px 20px}.app-shell{gap:10px}.toolbar-card{gap:8px}.toolbar-row{gap:8px}.name-input,.pill,.pill-button,.select-wrap{min-height:40px}.pill-button{padding:0 14px;font-size:14px}.name-input{width:min(100%,280px)}.board-stage{width:min(96vw,760px);border-radius:12px}}.background-secret-hotspot{position:absolute;left:29.619%;top:0;width:39.3016%;height:8.2143%;z-index:23;margin:0;padding:0;border:0;background:0 0;opacity:0;cursor:default;appearance:none;-webkit-appearance:none;touch-action:none;user-select:none;-webkit-user-select:none;-webkit-tap-highlight-color:transparent}.background-secret-hotspot:focus-visible{outline:2px dashed rgba(255,255,255,.7);outline-offset:-4px;border-radius:10px}.background-dialog{width:min(92vw,520px);max-width:520px;max-height:min(86vh,720px);margin:auto;padding:0;border:1px solid rgba(177,188,255,.42);border-radius:22px;background:linear-gradient(160deg,rgba(27,39,103,.98),rgba(5,11,42,.99));color:var(--text-main);box-shadow:0 26px 70px rgba(0,0,0,.62),0 0 36px rgba(103,125,255,.18);overflow:hidden}.background-dialog[hidden]{display:none!important}.background-dialog::backdrop{background:rgba(0,4,24,.78);backdrop-filter:blur(5px);-webkit-backdrop-filter:blur(5px)}.background-dialog-panel{display:grid;gap:18px;padding:24px}.background-dialog-header{display:grid;gap:6px}.background-dialog-title{margin:0;color:var(--text-main);font-size:24px;line-height:1.25}.background-code-group{display:grid;gap:8px}.background-code-label,.background-unlocked-title{color:var(--text-sub);font-size:14px;font-weight:700}.background-code-input{width:100%;min-height:48px;padding:0 15px;border:1px solid var(--control-border);border-radius:14px;background:rgba(3,9,37,.94);color:var(--text-main);font-size:18px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;box-shadow:inset 0 0 0 1px rgba(255,255,255,.02)}.background-code-input::placeholder{color:rgba(199,207,253,.58);font-size:15px;font-weight:500;letter-spacing:normal;text-transform:none}.background-code-input:focus{outline:0;border-color:var(--control-border-active);box-shadow:0 0 0 3px rgba(118,139,255,.16),inset 0 0 0 1px rgba(255,255,255,.03)}.background-code-actions,.background-dialog-actions{display:flex;flex-wrap:wrap;gap:10px}.background-dialog-button,.background-option{appearance:none;min-height:42px;padding:0 16px;border:1px solid var(--control-border);border-radius:14px;background:var(--control-background);color:var(--text-main);cursor:pointer;font-size:15px;font-weight:700}.background-dialog-button:focus-visible,.background-dialog-button:hover,.background-option:focus-visible,.background-option:hover{outline:0;border-color:var(--control-border-active);transform:translateY(-1px)}.background-dialog-button:active,.background-option:active{transform:translateY(0)}.background-dialog-button:disabled{cursor:wait;opacity:.62;transform:none}.background-dialog-button-primary{background:var(--control-background-primary)}.background-dialog-button-reset{border-color:rgba(255,191,105,.42);color:#ffd59a}.background-dialog-button-close{margin-left:auto}.background-options-section{display:grid;gap:10px}.background-options{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,180px),1fr));gap:10px}.background-option{width:100%;justify-content:center;text-align:center}.background-option.is-active{border-color:rgba(144,255,178,.82);background:rgba(19,68,65,.94);color:#caffd9;box-shadow:0 0 18px rgba(80,230,144,.14)}.background-message{min-height:24px;margin:0;color:var(--text-sub);font-size:14px;line-height:1.5}.background-message:empty{min-height:0}.background-message[data-status=success]{color:var(--saved)}.background-message[data-status=error]{color:var(--warn)}@media (max-width:640px){.background-dialog{width:min(94vw,520px);border-radius:18px}.background-dialog-panel{gap:15px;padding:18px 16px}.background-dialog-title{font-size:21px}.background-code-actions,.background-dialog-actions{display:grid;grid-template-columns:1fr}.background-dialog-button,.background-option{width:100%;min-height:44px}.background-dialog-button-close{margin-left:0}.background-options{grid-template-columns:1fr}}.background-options-section[hidden]{display:none!important}#spriteCodeEpicNameInput,#spriteCodeInput,#spriteCodeOutput{text-transform:none}.sprite-code-epic-section{display:grid;gap:10px;padding:14px;border:1px solid rgba(177,188,255,.2);border-radius:14px;background:rgba(7,14,48,.42)}.sprite-epic-name-input{letter-spacing:normal}.sprite-code-include-option{display:flex;align-items:flex-start;gap:10px;color:var(--text-main);cursor:pointer;font-size:14px;font-weight:700;line-height:1.45}.sprite-code-include-option input{flex:0 0 auto;width:18px;height:18px;margin:1px 0 0;accent-color:#90ffb2;cursor:pointer}.sprite-code-epic-hint{color:var(--text-sub);font-size:13px}.trade-shell{width:min(100%,1100px);margin:0 auto}.trade-shell [hidden]{display:none!important}.trade-card{width:100%;padding:20px;border:1px solid var(--card-border);border-radius:18px;background:var(--card);box-shadow:0 14px 34px rgba(0,0,0,.28)}.trade-link-button{display:inline-flex;align-items:center;justify-content:center;text-decoration:none}.trade-intro-card{display:grid;gap:12px}.trade-page-title,.trade-result-title,.trade-results-title,.trade-section-title{margin:0;color:var(--text-main)}.trade-page-title{font-size:clamp(26px, 4vw, 38px)}.trade-results-title,.trade-section-title{font-size:22px}.trade-result-title{font-size:18px}.trade-description,.trade-notice,.trade-result-description{margin:0;line-height:1.65}.trade-description,.trade-result-description{color:var(--text-sub)}.trade-notice{padding:12px 14px;border:1px solid rgba(255,191,105,.34);border-radius:14px;background:rgba(88,55,15,.28);color:#ffe0ad;font-size:14px}.trade-player-count-card{padding-top:14px;padding-bottom:14px}.trade-player-count-heading-row{display:flex;align-items:center;justify-content:space-between;gap:14px}.trade-player-count-tabs{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;width:min(100%,300px)}.trade-pair-button,.trade-player-count-button{min-height:42px;padding:6px 10px;line-height:1.25;white-space:normal}.trade-pair-button.is-active,.trade-player-count-button.is-active{border-color:rgba(142,183,255,.82);background:rgba(50,82,164,.84);box-shadow:0 0 0 2px rgba(142,183,255,.14)}.trade-input-grid,.trade-result-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.trade-input-grid:has(#tradePartnerBCard:not([hidden])){grid-template-columns:repeat(3,minmax(0,1fr))}.trade-input-grid:has(#tradePartnerCCard:not([hidden])){grid-template-columns:repeat(2,minmax(0,1fr))}.trade-code-group{display:grid;gap:10px;margin-top:14px}.trade-code-input{font-family:"Cascadia Mono",Consolas,SFMono-Regular,monospace;font-size:15px;letter-spacing:.025em;text-transform:none}#tradeMyCode,#tradePartnerBCode,#tradePartnerCCode,#tradePartnerCode{text-transform:none}.trade-code-input.is-error{border-color:rgba(255,128,128,.82);box-shadow:0 0 0 3px rgba(255,128,128,.12),inset 0 0 0 1px rgba(255,255,255,.03)}.trade-compare-actions,.trade-input-actions{display:flex;flex-wrap:wrap;gap:10px}.trade-compare-actions{justify-content:center}.trade-field-message,.trade-global-message{min-height:22px;margin:0;color:var(--text-sub);font-size:14px;line-height:1.5}.trade-field-message:empty,.trade-global-message:empty{min-height:0}.trade-field-message[data-status=error],.trade-global-message[data-status=error]{color:var(--warn)}.trade-field-message[data-status=success],.trade-global-message[data-status=success]{color:var(--saved)}.trade-results[hidden]{display:none!important}.trade-results{display:grid;gap:14px}.trade-mode-tabs,.trade-pair-tabs{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.trade-pair-tabs{padding-bottom:2px}.trade-mode-button{min-height:42px;padding:6px 10px;line-height:1.25;white-space:normal}.trade-mode-button.is-active{border-color:rgba(142,183,255,.82);background:rgba(50,82,164,.84);box-shadow:0 0 0 2px rgba(142,183,255,.14)}.trade-result-card{display:grid;align-content:start;gap:12px}.trade-result-heading-row{display:flex;align-items:center;justify-content:space-between;gap:12px}.trade-result-summary{flex:0 0 auto;min-height:34px;padding:0 12px;font-size:13px}.trade-result-list{display:grid;gap:9px;margin:0;padding:0;list-style:none}.trade-result-item{display:grid;grid-template-columns:74px minmax(0,1fr) auto;align-items:center;gap:12px;min-height:94px;padding:9px 12px;border:1px solid rgba(177,188,255,.16);border-radius:13px;background:rgba(5,11,42,.62)}.trade-sprite-thumb{display:flex;align-items:center;justify-content:center;overflow:hidden;flex:0 0 auto;border:1px solid rgba(177,188,255,.16);border-radius:12px;background:rgba(3,7,27,.82)}.trade-sprite-crop{display:block;flex:0 0 auto;width:62px;height:62px;object-fit:contain;object-position:center}.trade-result-name-wrap{display:grid;min-width:0;gap:7px}.trade-result-name{overflow-wrap:anywhere;color:var(--text-main);font-size:15px;font-weight:700;line-height:1.45}.trade-result-states{display:grid;gap:3px}.trade-player-state{display:flex;flex-wrap:wrap;align-items:baseline;gap:2px;font-size:12px;line-height:1.45}.trade-player-label{color:var(--text-sub);font-weight:700}.trade-player-value{color:var(--text-main);font-weight:800}.trade-result-tag{flex:0 0 auto;display:inline-flex;align-items:center;justify-content:center;min-height:30px;padding:0 10px;border:1px solid transparent;border-radius:999px;font-size:12px;font-weight:800;white-space:nowrap}.trade-result-tag.is-purpose-list-fill{border-color:rgba(144,255,178,.42);background:rgba(19,68,65,.78);color:#caffd9}.trade-result-tag.is-purpose-master-fill{border-color:rgba(255,176,94,.64);background:rgba(112,59,16,.82);color:#ffd8ad}.trade-empty{padding:18px 12px;border:1px dashed rgba(177,188,255,.22);border-radius:13px;color:var(--text-sub);text-align:center}.trade-partner-epic[hidden]{display:none!important}.trade-partner-epic{display:grid;gap:4px;padding:11px 13px;border:1px solid rgba(144,255,178,.28);border-radius:12px;background:rgba(19,68,65,.34)}.trade-partner-epic-label{color:var(--text-sub);font-size:12px;font-weight:700;line-height:1.4}.trade-partner-epic-value-row{display:flex;align-items:center;gap:10px;min-width:0}.trade-partner-epic-name{flex:1 1 auto;min-width:0;overflow-wrap:anywhere;color:#caffd9;font-size:17px;font-weight:800;line-height:1.4}.trade-partner-epic-copy{flex:0 0 auto;min-width:76px;min-height:34px;padding:5px 12px;border:1px solid rgba(144,255,178,.42);border-radius:999px;background:rgba(19,68,65,.78);color:#caffd9;font:inherit;font-size:12px;font-weight:800;cursor:pointer}.trade-partner-epic-copy:hover:not(:disabled){border-color:rgba(144,255,178,.72);background:rgba(25,88,82,.9)}.trade-partner-epic-copy:focus-visible{outline:2px solid rgba(144,255,178,.8);outline-offset:2px}.trade-partner-epic-copy:disabled{cursor:default;opacity:.82}.trade-saved-partners{display:grid;gap:9px;padding:11px 13px;border:1px solid rgba(142,183,255,.24);border-radius:12px;background:rgba(30,46,96,.28)}.trade-saved-partner-heading-row{display:flex;align-items:center;justify-content:space-between;gap:10px}.trade-saved-partner-label{color:var(--text-sub);font-size:12px;font-weight:700;line-height:1.4}.trade-saved-partner-count{flex:0 0 auto;color:var(--text-main);font-size:12px;font-weight:800}.trade-saved-partner-select{width:100%;min-height:42px;padding:8px 38px 8px 12px;border:1px solid rgba(177,188,255,.26);border-radius:11px;background:rgba(5,11,42,.88);color:var(--text-main);font:inherit;font-size:14px;cursor:pointer}.trade-saved-partner-select:focus-visible{outline:2px solid rgba(142,183,255,.8);outline-offset:2px}.trade-saved-partner-select:disabled{cursor:default;opacity:.6}.trade-saved-partner-select option{background:#0b1020;color:#fff}.trade-saved-partner-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.trade-saved-partner-actions .background-dialog-button{min-width:0;width:100%}.trade-saved-partner-actions .background-dialog-button:disabled{cursor:default;opacity:.48}.trade-result-item.is-delivery-marked{border-color:rgba(144,255,178,.28);background:rgba(15,50,55,.54)}.trade-delivery-controls{grid-column:2/-1;display:flex;flex-wrap:wrap;align-items:center;gap:8px 14px;min-width:0;padding-top:8px;border-top:1px solid rgba(177,188,255,.12)}.trade-delivery-option{display:inline-flex;align-items:center;gap:7px;min-height:30px;color:var(--text-main);font-size:12px;font-weight:700;line-height:1.4;cursor:pointer;user-select:none}.trade-delivery-checkbox{width:18px;height:18px;margin:0;accent-color:#90ffb2;cursor:pointer}.trade-delivery-checkbox:focus-visible{outline:2px solid rgba(144,255,178,.82);outline-offset:2px}.trade-result-item.is-receive-direction .trade-delivery-controls{border-top-color:rgba(105,200,255,.22)}.trade-result-item.is-receive-marked{border-color:rgba(105,200,255,.42);background:rgba(15,42,78,.64)}.trade-delivery-controls.is-receive-direction .trade-delivery-option{color:#bfe8ff}.trade-delivery-controls.is-receive-direction .trade-delivery-checkbox{accent-color:#69c8ff}.trade-delivery-controls.is-receive-direction .trade-delivery-checkbox:focus-visible{outline:2px solid rgba(105,200,255,.88);outline-offset:2px}.trade-partner-code-update.is-self-receive{border-top-color:rgba(105,200,255,.26)}.trade-partner-code-update.is-self-receive .trade-partner-code-update-actions{grid-template-columns:minmax(0,1fr)}.trade-partner-code-update.is-self-receive .trade-partner-code-update-button{border-color:rgba(105,200,255,.52);background:rgba(20,67,110,.82);color:#d9f2ff}.trade-partner-code-update{display:grid;gap:8px;margin-top:4px;padding-top:12px;border-top:1px solid rgba(177,188,255,.14)}.trade-partner-code-update-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.trade-partner-code-copy-button,.trade-partner-code-update-button{width:100%;min-width:0;min-height:44px}.trade-partner-code-copy-button:disabled,.trade-partner-code-update-button:disabled{cursor:default;opacity:.48}@media (max-width:760px){.trade-partner-code-update-actions{grid-template-columns:1fr}.trade-card{padding:16px;border-radius:15px}.trade-player-count-heading-row{align-items:stretch;flex-direction:column}.trade-player-count-tabs{width:100%}.trade-input-grid,.trade-input-grid:has(#tradePartnerBCard:not([hidden])),.trade-input-grid:has(#tradePartnerCCard:not([hidden])),.trade-result-grid{grid-template-columns:1fr}.trade-pair-tabs{grid-template-columns:1fr}.trade-result-heading-row{align-items:flex-start;flex-direction:column}.trade-result-item{grid-template-columns:64px minmax(0,1fr) auto;gap:10px;min-height:84px;padding:9px 10px}.trade-sprite-thumb{width:64px!important;height:64px!important;border-radius:10px}.trade-result-name{font-size:14px}.trade-delivery-controls{grid-column:2/-1;gap:7px 12px}.trade-result-tag{min-height:28px;padding:0 8px;font-size:11px}.trade-compare-actions,.trade-input-actions{display:grid;grid-template-columns:1fr}.trade-saved-partner-actions{grid-template-columns:1fr}.trade-compare-actions .pill-button,.trade-input-actions .background-dialog-button{width:100%}}@media (max-width:430px){.trade-result-item{grid-template-columns:58px minmax(0,1fr)}.trade-sprite-thumb{width:58px!important;height:58px!important}.trade-result-tag{grid-column:2;justify-self:start}.trade-delivery-controls{grid-column:2}}