:root{--bg:#f2f3f0;--ink:#263639;--muted:#7d8a8c;--line:#e1e6e3;--teal:#31594f;--gold:#c2a35d;--navy:#15272c;--radius:12px;--monster:#b99a63;--spell:#6a9e8b;--trap:#a7829e;--extra:#7f90ae}*{box-sizing:border-box}body{background:var(--bg);color:var(--ink);margin:0;font-family:Inter,PingFang SC,Microsoft YaHei,system-ui,sans-serif;font-size:13px}button,input,textarea,select{font:inherit}button{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.46}button,a,input,select,textarea{outline-color:#4b8475}button{transition:background .15s,border-color .15s,box-shadow .15s}button:focus-visible{outline-offset:3px;outline:2px solid #539b84}button svg{flex-shrink:0}a{color:inherit}input,textarea,select{color:var(--ink)}.app-shell{min-height:100vh}.app-header{border-bottom:1px solid var(--line);background:#fff;justify-content:space-between;align-items:center;gap:20px;height:84px;padding:0 30px;display:flex}.brand{align-items:center;gap:12px;min-width:190px;text-decoration:none;display:flex}.brand-mark{background:var(--navy);color:#d8c18b;clip-path:polygon(50% 0,96% 23%,96% 77%,50% 100%,4% 77%,4% 23%);place-items:center;width:43px;height:48px;font:600 24px Songti SC,SimSun,serif;display:grid}.brand h1{letter-spacing:2px;margin:0 0 4px;font-size:19px;font-weight:700}.brand div>span{color:var(--muted);letter-spacing:1.5px;font-size:10px}.header-center{color:#526464;align-items:center;gap:9px;font-size:12px;display:flex}.header-center small{color:var(--muted);border-left:1px solid var(--line);margin-left:8px;padding-left:16px;font-size:11px}.status-dot{background:var(--gold);border-radius:50%;width:6px;height:6px}.status-dot.online{background:#6caa84;box-shadow:0 0 0 4px #6caa8419}.header-actions{align-items:center;gap:10px;display:flex}.primary-button,.secondary-button,.quiet-button{white-space:nowrap;border:1px solid #0000;border-radius:7px;justify-content:center;align-items:center;gap:7px;min-height:34px;padding:8px 13px;font-size:12px;font-weight:600;display:inline-flex}.primary-button{background:var(--teal);color:#fff}.primary-button:hover:not(:disabled){background:#25493f}.secondary-button{color:#4b6260;background:#fff;border-color:#d8e0db}.secondary-button:hover:not(:disabled){background:#f3f6f1;border-color:#bbcfc3}.quiet-button{color:#73817e;background:0 0;font-size:11px;font-weight:400}.quiet-button:hover{background:#f1f5f2}.icon-button{color:#7c8c88;background:0 0;border:0;border-radius:6px;flex-shrink:0;justify-content:center;align-items:center;width:32px;height:32px;display:inline-flex}.icon-button:hover{color:var(--teal);background:#f0f4f1}.bordered{border:1px solid var(--line);background:#fff}.workspace{grid-template-columns:224px minmax(0,1fr) 274px;align-items:start;gap:18px;max-width:1900px;margin:auto;padding:22px 24px 10px;display:grid}.panel{border:1px solid var(--line);border-radius:var(--radius);background:#fff;overflow:hidden}.left-panel,.right-panel{flex-direction:column;height:calc(100vh - 146px);min-height:590px;max-height:1000px;display:flex;position:sticky;top:18px}.panel-heading{justify-content:space-between;align-items:center;min-height:52px;padding:14px 16px 9px;display:flex}.eyebrow{letter-spacing:1.4px;color:#7b8a86;font-size:10px;font-weight:650}.deck-summary{border-bottom:1px solid #edf0ec;align-items:center;gap:26px;margin:5px 16px 16px;padding-bottom:16px;display:flex}.deck-summary>div{flex-direction:column;gap:4px;display:flex}.deck-summary b{font-size:26px;font-weight:500;line-height:1}.deck-summary span{color:#93a09a;font-size:10px}.deck-summary .deck-summary-mark{color:#bccbc1;margin-left:auto}.import-actions{gap:6px;padding:0 12px 16px;display:flex}.import-actions .secondary-button{flex:1;padding:8px;font-size:11px}.panel-tabs{border-bottom:1px solid var(--line);gap:24px;padding:0 14px;display:flex}.panel-tabs button{color:#87958f;background:0 0;border:0;padding:11px 0;font-size:12px;position:relative}.panel-tabs button.active{color:var(--teal);font-weight:650}.panel-tabs button.active:after{content:"";background:var(--teal);height:2px;position:absolute;bottom:-1px;left:0;right:0}.search-box{color:#8a9790;background:#f8faf7;border:1px solid #e5ebe5;border-radius:6px;align-items:center;gap:7px;margin:15px 12px 10px;padding:9px 10px;display:flex}.search-box input{background:0 0;border:0;outline:0;width:100%;min-width:0;font-size:11px}.search-box input::placeholder{color:#a1aba4}.filter-row{gap:5px;padding:0 12px 12px;display:flex}.filter-row button{color:#8a978f;background:0 0;border:0;border-radius:5px;padding:5px 8px;font-size:10px}.filter-row button.active{color:#456357;background:#eaf1eb;font-weight:600}.library-list,.log-list{scrollbar-width:thin;flex:1;min-height:100px;padding:0 8px 12px;overflow-y:auto}.library-item{border:1px solid #0000;border-radius:7px;margin-bottom:4px;overflow:hidden}.library-item.selected{background:#f5f8f3;border-color:#d6e4d7}.library-item:hover{background:#f7f9f5}.library-select{text-align:left;width:100%;color:var(--ink);background:0 0;border:0;align-items:center;gap:9px;padding:11px 7px;display:flex}.type-bar{background:var(--monster);border-radius:3px;flex-shrink:0;width:3px;height:30px}.type-bar.spell-card{background:var(--spell)}.type-bar.trap-card{background:var(--trap)}.type-bar.extra-card{background:var(--extra)}.library-select>div{flex:1;min-width:0}.library-select strong{white-space:nowrap;text-overflow:ellipsis;font-size:12px;font-weight:550;display:block;overflow:hidden}.library-select div>span{color:#92a098;margin-top:4px;font-size:9px;display:block}.library-select>b{color:#97a397;font-size:10px;font-weight:400}.library-options{color:#899789;justify-content:space-between;align-items:center;padding:0 9px 9px 19px;font-size:9px;display:flex}.library-options button{color:var(--teal);background:0 0;border:0;align-items:center;gap:4px;padding:2px 0;font-size:10px;display:flex}.left-footer{color:#a1aba0;border-top:1px solid #edf0e9;justify-content:space-between;padding:13px 14px;font-size:9px;display:flex}.left-footer button{color:#798e7a;background:0 0;border:0;gap:3px;padding:0;font-size:9px;display:flex}.list-empty{text-align:center;color:#b0bcb2;padding:32px 13px}.list-empty p{color:#7d8e82;font-size:12px;line-height:1.6}.list-empty small{font-size:10px;line-height:1.8;display:block}.log-item{border-left:1px solid #dce7de;margin:16px 6px 0;padding:0 10px 12px 14px;position:relative}.log-item:before{content:"";background:#89a994;border-radius:50%;width:5px;height:5px;position:absolute;top:3px;left:-3px}.log-item time{color:#a3b0a5;font-size:9px}.log-item p{color:#647c69;margin:4px 0 0;font-size:11px;line-height:1.8}.board-column{min-width:0}.turn-toolbar{align-items:center;gap:16px;min-height:42px;margin-bottom:12px;display:flex}.turn-info{align-items:center;gap:10px;display:flex}.turn-info strong{color:#405e54;font-size:23px;font-weight:400}.turn-info>span:last-child{color:#7e9285;font-size:11px}.phase-picker{margin-left:auto;position:relative}.phase-picker select{appearance:none;cursor:pointer;background:#fff;border:1px solid #d8e1da;border-radius:6px;padding:8px 28px 8px 12px;font-size:11px}.phase-picker svg{pointer-events:none;color:#8c9b91;position:absolute;top:10px;right:9px}.next-turn{color:#547662;background:0 0;border:0;align-items:center;gap:6px;padding:8px 0;font-size:11px;display:flex}.board-scroll{background:var(--navy);scrollbar-width:thin;scrollbar-color:#5c7674 #183038;border:1px solid #cdd6d1;border-radius:14px;height:calc(100vh - 263px);min-height:535px;max-height:1080px;overflow:auto;box-shadow:0 10px 28px #273d3820}.duel-board{color:#c9d7cf;background:radial-gradient(#284448 0,#1b3339 47%,#172b31 100%);min-width:700px;min-height:100%;padding:14px 15px}.player-bar{justify-content:space-between;align-items:center;gap:20px;padding:4px 2px 9px;display:flex}.player-bar.mine{border-top:1px solid #e1eee418;margin-top:9px;padding:10px 2px 4px}.player-identity{align-items:center;gap:9px;display:flex}.seat-avatar{color:#bbcfc2;background:#4e6c6338;border:1px solid #8bafa147;border-radius:50%;place-items:center;width:33px;height:33px;font-size:12px;font-weight:500;display:grid}.opponent .seat-avatar{color:#d2bbb0;background:#a98c7e15;border-color:#b5aaa240}.player-identity strong{color:#dee4de;font-size:12px;font-weight:500}.name-input{color:#dee6dc;background:0 0;border:0;width:130px;padding:2px 0;font-size:12px}.player-caption{color:#90a59d;margin-top:3px;font-size:9px;display:block}.player-stats{align-items:center;gap:18px;display:flex}.stat{flex-direction:column;align-items:center;gap:1px;display:flex}.stat label{color:#8da49b;font-size:8px}.stat>div{align-items:center;gap:3px;display:flex}.stat b,.stat input{color:#e4e8db;letter-spacing:.5px;font-size:17px;font-weight:450;line-height:1.2}.stat input{text-align:center;appearance:textfield;background:0 0;border:0;width:44px;padding:0}.stat.lp input{width:63px}.stat input::-webkit-inner-spin-button{appearance:none}.stat button{color:#91b69d;background:#74948517;border:0;border-radius:4px;width:17px;height:20px;padding:0;font-size:13px}.player-field{grid-template-columns:74px minmax(0,1fr) 74px;gap:10px;display:grid}.field-side,.field-center{flex-direction:column;gap:8px;display:flex}.field-zone{background:#edf8ee03;border:1px solid #bdd0c328;border-radius:7px;height:155px;position:relative;overflow:hidden}.field-zone.spell-region{background:#89bd9903;border-color:#86baa02b;height:139px}.zone-label{letter-spacing:1.5px;color:#7c958b;z-index:0;pointer-events:none;justify-content:space-between;font-size:8px;display:flex;position:absolute;top:7px;left:9px;right:9px}.monster-region .zone-label{color:#b5a578}.zone-label>span{color:#657d70;letter-spacing:0}.zone-guides{pointer-events:none;grid-template-columns:repeat(5,1fr);display:grid;position:absolute;inset:23px 4px 4px}.zone-guides span{color:#5b766a;border-right:1px solid #d1ded810;justify-content:center;align-items:center;font-size:9px;display:flex}.zone-guides span:last-child{border:0}.zone-cards{position:absolute;inset:24px 4px 5px}.small-zone{height:112px;min-height:112px}.small-zone .zone-label{letter-spacing:0;font-size:8px;left:7px}.small-zone .zone-cards{transform-origin:0 0;inset:23px 3px 4px}.small-zone .duel-card{width:64px;height:80px}.small-zone .card-top{padding:4px;font-size:7px}.small-zone .card-name{padding:4px;font-size:9px}.small-zone .card-kind,.small-zone .card-rule{display:none}.small-zone .card-numbers{padding:4px;font-size:7px;bottom:4px}.small-zone .private-tag{font-size:6px}.pile-zone{color:#8fa69b;background:#edf8ee04;border:1px solid #bdd0c328;border-radius:7px;flex-direction:column;justify-content:center;align-items:center;gap:5px;height:73px;display:flex;position:relative}.pile-zone svg{opacity:.5}.pile-zone>span{letter-spacing:1px;font-size:8px}.pile-zone strong{color:#cfdbcd;font-size:10px;font-weight:500;position:absolute;top:5px;right:7px}.side-note{text-align:center;color:#789489;padding:10px 7px;font-size:8px;line-height:1.7}.extra-lane{justify-content:center;align-items:center;gap:17px;padding:13px 0;display:flex}.center-line{background:linear-gradient(90deg,#0000,#ccbd8350);flex:1;height:1px}.extra-zone{background:#8193b008;border:1px solid #8193b037;border-radius:8px;flex-shrink:0;width:116px;height:132px;position:relative}.extra-zone>span{letter-spacing:.5px;color:#8b9eb0;font-size:8px;position:absolute;top:6px;left:7px}.extra-inner{position:absolute;inset:20px 4px 3px}.center-emblem{color:#c0ad75;flex-direction:column;align-items:center;gap:5px;width:70px;font-family:Georgia,serif;display:flex}.center-emblem>span{letter-spacing:3px;opacity:.85;font-size:16px}.center-emblem small{letter-spacing:2px;color:#a5b2a0;font-size:8px}.hand-zone{align-items:center;gap:10px;min-height:45px;margin-bottom:9px;padding:6px 0;display:flex}.own-hand{background:#fff9d004;border:1px dashed #adc5b430;border-radius:8px;min-height:130px;margin:9px 0 0;padding:7px}.hand-heading{text-align:center;color:#b0c0af;flex-direction:column;gap:4px;min-width:34px;font-size:8px;display:flex}.hand-heading>b{color:#d7dccd;font-size:16px;font-weight:400}.hand-heading>small{color:#758e80;font-size:7px}.hand-cards{scrollbar-width:thin;flex:1;align-items:center;gap:7px;min-height:32px;padding:2px 1px;display:flex;overflow:auto}.their-hand .duel-card{border-width:1px;border-radius:3px;width:21px;min-width:21px;height:31px}.their-hand .duel-card>span{display:none}.their-hand .duel-card .back-symbol{padding:0;font-size:11px;display:block;position:static;transform:none}.empty-hand{color:#648472;padding:10px;font-size:10px}.duel-card{color:#493c2e;text-align:left;-webkit-user-select:none;user-select:none;touch-action:none;z-index:2;background:#fbf5e9;border:1px solid #ab965b;border-radius:5px;flex-direction:column;width:84px;min-width:84px;height:112px;padding:0;transition:box-shadow .12s,border-color .12s;display:flex;position:relative;overflow:hidden;box-shadow:0 3px 7px #0b1c2850}.duel-card:hover{z-index:9;box-shadow:0 0 0 2px #dfd2ab90,0 3px 8px #0b1c2850}.duel-card.selected{z-index:10;box-shadow:0 0 0 2px #e6d6a1,0 0 17px #d2b86730}.card-top{color:#8f774e;white-space:nowrap;background:#bca36d20;justify-content:space-between;min-height:16px;padding:5px 5px 3px;font-size:7px;display:flex;overflow:hidden}.card-top>span:last-child{max-width:50px;font-size:6px;overflow:hidden}.card-name{max-height:35px;padding:5px 5px 1px;font-size:11px;font-weight:700;line-height:1.4;overflow:hidden}.card-kind{color:#a08f71;padding:0 5px;font-size:6px}.card-rule{-webkit-line-clamp:2;color:#a5977e;-webkit-box-orient:vertical;margin-top:auto;margin-bottom:26px;padding:5px 5px 0;font-size:6px;line-height:1.55;display:-webkit-box;overflow:hidden}.card-numbers{color:#8b7d60;white-space:nowrap;border-top:1px solid #aa996131;justify-content:space-between;gap:4px;padding-top:4px;font-size:7px;display:flex;position:absolute;bottom:7px;left:5px;right:5px}.card-numbers b{color:#63563b;font-size:8px;font-weight:650}.duel-card.spell-card{color:#385c48;background:#e7f1e9;border-color:#7a9c86}.spell-card .card-top{color:#678f76;background:#7a9c8620}.spell-card .card-kind,.spell-card .card-rule,.spell-card .card-numbers{color:#87a18d}.duel-card.trap-card{color:#6e4e68;background:#f1e8ee;border-color:#aa87a0}.trap-card .card-top{color:#99718e;background:#aa87a020}.trap-card .card-kind,.trap-card .card-rule,.trap-card .card-numbers{color:#b39bac}.duel-card.extra-card{color:#4e5d84;background:#e9edf5;border-color:#929ebe}.extra-card .card-top{color:#7c8eaf;background:#7a8fb220}.extra-card .card-kind,.extra-card .card-rule,.extra-card .card-numbers{color:#93a0ba}.duel-card.hidden-card{color:#aabc9c;text-align:center;background:repeating-linear-gradient(45deg,#2e3f3e 0 6px,#283938 6px 7px);border-color:#7c8c7290;justify-content:center;align-items:center}.hidden-card .card-top{display:none}.back-symbol{color:#879d8090;border:1px solid #8d9f7750;place-items:center;width:42px;height:42px;font:28px Songti SC,SimSun,serif;display:grid;transform:rotate(-8deg)}.hidden-card .card-name{color:#788d76;margin-top:6px;font-size:7px;font-weight:400}.pose-tag{color:#91774d;background:#e8d7b1;border-radius:0 4px;padding:3px 4px;font-size:6px;line-height:1;position:absolute;top:0;right:0}.pose-tag.defense{color:#567482;background:#d3e3e7}.private-tag{color:#f0e6d5;text-align:center;background:#3e454bcc;padding:2px;font-size:6px;line-height:1.5;position:absolute;bottom:0;left:0;right:0}.known-covered{filter:saturate(.5);border-style:dashed}.duel-card.horizontal{width:126px;min-width:126px;height:84px}.horizontal .card-top{min-height:15px;padding:4px 5px 2px}.horizontal .card-name{padding:4px 5px 1px;font-size:10px}.horizontal .card-rule{display:none}.horizontal .card-numbers{bottom:5px}.bottom-toolbar{align-items:center;gap:15px;min-height:56px;padding:12px 0 0;display:flex}.draw-actions{gap:7px;display:flex}.dice-actions{color:#8b9a8e;align-items:center;gap:5px;margin-left:auto;font-size:10px;display:flex}.dice-actions>span{margin:0 4px 0 0}.dice-actions button{color:#768b75;background:#fff;border:1px solid #dbe4da;border-radius:5px;min-width:29px;height:28px;font:10px ui-monospace,monospace}.dice-actions button:hover{background:#edf4e8}.board-hint{color:#95a48f;white-space:nowrap;font-size:9px}.room-note{color:#789579;align-items:center;gap:6px;padding:6px 0;font-size:10px;display:flex}.detail-banner{background:linear-gradient(135deg,#f8f4e8,#f5f1e4);border-top:1px solid #edebdd;border-bottom:1px solid #edebdd;padding:14px 17px 18px}.detail-banner>span{color:#ad9666;letter-spacing:1px;font-size:9px}.detail-banner h2{margin:9px 0;font-size:21px;font-weight:650;line-height:1.4}.detail-meta{color:#a69b82;font-size:10px;line-height:1.5}.detail-banner.spell-card{background:#eef5ee;border-color:#e1ebdf}.detail-banner.trap-card{background:#f6eff3;border-color:#ebdfe6}.detail-banner.extra-card{background:#f0f2f7;border-color:#e3e7ef}.detail-content{scrollbar-width:thin;flex:1;padding:18px 16px 20px;overflow:auto}.detail-stats{grid-template-columns:1fr 1fr;gap:20px;display:grid}.detail-stats>div{flex-direction:column;gap:4px;display:flex}.detail-stats>div:last-child{border-left:1px solid var(--line);padding-left:18px}.detail-stats span{color:#8f9d91;font-size:9px}.detail-stats b{color:#425844;letter-spacing:1px;font-size:25px;font-weight:450}.original-stats{color:#a0ad9f;margin:9px 0 19px;font-size:9px}.detail-section{margin-bottom:19px}.section-label{letter-spacing:1px;color:#9aa698;margin-bottom:9px;font-size:9px;display:block}.effect-text{white-space:pre-wrap;color:#647663;margin:0;font-size:11px;line-height:1.95}.detail-section>p:not(.effect-text){color:#7c8c74;font-size:10px;line-height:1.8}.card-location{border-bottom:1px solid #edf0e8;flex-wrap:wrap;gap:6px;margin:16px 0;padding-bottom:16px;display:flex}.card-location span{color:#839175;background:#f3f6ee;border:1px solid #e6ebdd;border-radius:4px;padding:4px 7px;font-size:8px}.pose-buttons{gap:5px;display:flex}.pose-buttons button{color:#8a9a82;background:#fff;border:1px solid #e0e7dc;border-radius:5px;flex:1;justify-content:center;align-items:center;gap:4px;padding:8px 4px;font-size:10px;display:flex}.pose-buttons button.active{color:#4d7250;background:#edf4e8;border-color:#bcd0ac}.move-grid{grid-template-columns:1fr 1fr;gap:5px;display:grid}.move-grid button{color:#829374;background:#fbfcf9;border:1px solid #e4e9df;border-radius:5px;justify-content:center;align-items:center;gap:4px;min-height:30px;font-size:10px;display:flex}.move-grid button:hover{background:#eff5e9;border-color:#bbcfad}.move-grid .grave-button{color:#637c88;background:#eef3f4;border-color:#d8e4e7}.adjust-details{color:#8a9980;border:1px solid #e5ebdf;border-radius:6px;padding:9px 10px;font-size:10px}.adjust-details summary{cursor:pointer;justify-content:space-between;align-items:center;list-style:none;display:flex}.adjust-inputs{gap:8px;margin:12px 0;display:flex}.adjust-inputs label{color:#8b9a80;width:50%;min-width:0;font-size:9px}.adjust-inputs input{background:#fbfcf8;border:1px solid #dce6d3;border-radius:4px;width:100%;margin-top:5px;padding:7px;font-size:11px}.note-box{color:#7a8c65;white-space:pre-wrap;background:#f4f7ec;border-radius:5px;margin-top:12px;padding:10px;font-size:10px;line-height:1.8}.inspector-empty{text-align:center;color:#b2c0b0;flex-direction:column;flex:1;align-items:center;padding:55px 25px;display:flex}.inspector-empty h2{color:#778c75;margin:17px 0 7px;font-size:15px;font-weight:500}.inspector-empty p{color:#9aab91;margin:0;font-size:11px;line-height:1.9}.quick-steps{text-align:left;color:#8f9f82;flex-direction:column;align-items:flex-start;gap:16px;margin-top:38px;font-size:10px;display:flex}.quick-steps b{background:#eff4e9;border:1px solid #e0e8d7;border-radius:50%;place-items:center;width:20px;height:20px;margin-right:6px;font-size:9px;font-weight:400;display:inline-grid}.inspector-footer{color:#a4af9c;background:#fcfdfa;border-top:1px solid #edf0e8;padding:12px 17px;font-size:9px}.pile-heading{padding:5px 17px 17px}.pile-heading h2{margin:6px 0;font-size:15px}.pile-heading p{color:#8e9c84;font-size:10px}.pile-list{flex:1;padding:0 10px 15px;overflow:auto}.pile-list button{color:#809477;text-align:left;background:0 0;border:0;border-bottom:1px solid #edf0e8;align-items:center;gap:8px;width:100%;padding:12px 7px;display:flex}.pile-list button:hover{background:#f5f8ef}.pile-list button>div{flex:1;min-width:0}.pile-list strong{font-size:12px;font-weight:500;display:block}.pile-list small{color:#a2ae96;margin-top:4px;font-size:9px;display:block}.mini-type{background:#bca36d;width:3px;height:25px}.mini-type.spell-card{background:var(--spell)}.mini-type.trap-card{background:var(--trap)}.mini-type.extra-card{background:var(--extra)}.mini-type.hidden-card{background:#9fa894}.app-footer{color:#a6afa0;justify-content:space-between;align-items:center;max-width:1900px;margin:auto;padding:11px 26px 20px;font-size:9px;display:flex}.app-footer b{color:#91a182;border:1px solid #dbe3d3;border-radius:3px;margin-left:7px;padding:2px 4px;font-size:8px;font-weight:400}.drag-ghost{z-index:10000;pointer-events:none;opacity:.95;position:fixed;transform:rotate(-4deg)}.drag-ghost .duel-card{outline:2px solid #d6c585;box-shadow:0 12px 30px #13262070}.toast{z-index:20000;color:#eef3df;background:#24453b;border:1px solid #5b7b59;border-radius:8px;align-items:center;gap:10px;max-width:calc(100vw - 30px);padding:13px 16px;font-size:12px;display:flex;position:fixed;bottom:27px;left:50%;transform:translate(-50%);box-shadow:0 6px 22px #243c3330}.toast>span{line-height:1.5}.toast>button{color:#aec3a1;background:0 0;border:0;margin-left:5px;display:flex}.modal-backdrop{-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);z-index:1000;background:#162b2b70;justify-content:center;align-items:center;padding:24px;display:flex;position:fixed;inset:0;overflow:auto}.modal{scrollbar-width:thin;background:#fff;border:1px solid #d4dfce;border-radius:14px;width:470px;max-width:100%;max-height:90vh;padding:23px 26px 27px;overflow:auto;box-shadow:0 30px 80px #102d2940}.modal.wide-modal{width:590px}.modal-header{justify-content:space-between;align-items:center;margin-bottom:5px;display:flex}.modal h2{letter-spacing:.5px;color:#345441;margin:9px 0 10px;font-size:23px;font-weight:550}.modal-lead{color:#8a9c80;margin:0 0 21px;font-size:12px;line-height:1.8}.room-options{flex-direction:column;gap:19px;display:flex}.room-options>div{border:1px solid #e1e9d9;border-radius:9px;padding:14px 16px}.room-options h3{color:#718965;margin:0 0 12px;font-size:12px;font-weight:600}.form-label{color:#849678;margin:0 0 12px;font-size:10px;line-height:1.5;display:block}.form-label input,.form-label textarea,.form-label select{color:#577147;resize:vertical;background:#fcfdf9;border:1px solid #dce6d4;border-radius:6px;width:100%;margin-top:6px;padding:9px 10px;font-size:12px;display:block}.form-label textarea{line-height:1.7}.form-label input::placeholder,.form-label textarea::placeholder{color:#afbaa4}.full{width:100%;margin-top:6px}.form-hint{color:#a0ad94;margin:13px 0;font-size:10px;line-height:1.8}.restore-button{color:#7d976c;background:#f2f7ea;border:1px dashed #c3d3b3;border-radius:6px;width:100%;margin-top:18px;padding:11px;font-size:11px}.custom-form{grid-template-columns:1fr 1fr;gap:0 15px;display:grid}.col-two{grid-column:span 2}.import-preview{background:#fafcf6;border:1px solid #e1e9d8;border-radius:7px;max-height:240px;padding:3px 12px;overflow:auto}.import-preview>div{border-bottom:1px solid #e7eddf;justify-content:space-between;gap:12px;padding:10px 0;font-size:11px;display:flex}.import-preview>div:last-child{border:0}.import-preview strong{color:#69825b;font-weight:500}.import-preview span{color:#a1ae90;font-size:10px}.import-warning{color:#a1895b;background:#fbf8eb;border:1px solid #eae3c9;border-radius:7px;margin:18px 0 10px;padding:11px;font-size:11px;line-height:1.8}.help-content{margin:14px 0 20px}.help-content p{color:#889e77;margin:13px 0;font-size:12px;line-height:1.9}.help-content b{color:#617e50;font-weight:600}.text-button{color:#a6b497;background:0 0;border:0;padding:12px;font-size:10px}.text-button:hover{color:#749557}::-webkit-scrollbar{width:5px;height:5px}::-webkit-scrollbar-thumb{background:#ccd5c6;border-radius:5px}::-webkit-scrollbar-track{background:0 0}@media (width>=1680px){.workspace{grid-template-columns:248px minmax(0,1fr) 310px;gap:24px;padding-top:28px}.duel-board{padding:20px 25px}.player-field{grid-template-columns:85px minmax(0,1fr) 85px;gap:15px}.detail-banner h2{font-size:24px}.library-select strong{font-size:13px}.effect-text{font-size:12px}.board-scroll{height:calc(100vh - 277px)}.left-panel,.right-panel{height:calc(100vh - 165px)}}@media (width<=1230px){.workspace{grid-template-columns:195px minmax(0,1fr) 244px;gap:10px;padding:16px 14px 8px}.app-header{padding:0 20px}.header-center small,.board-hint{display:none}.turn-toolbar{gap:8px}.turn-info .eyebrow{display:none}.turn-info>span:last-child{white-space:nowrap;max-width:70px;overflow:hidden}.detail-banner h2{font-size:19px}.detail-content{padding:15px 12px}.left-panel,.right-panel{height:calc(100vh - 133px)}.duel-board{min-width:680px}.dice-actions{gap:4px}.dice-actions>span{display:none}.bottom-toolbar{gap:7px}.draw-actions .primary-button,.draw-actions .secondary-button{padding:8px 10px}}@media (width<=1020px){.workspace{grid-template-columns:185px minmax(0,1fr);gap:12px}.right-panel{grid-column:span 2;height:auto;min-height:0;max-height:none;display:block;position:static}.right-panel .detail-content{grid-template-columns:1fr 1fr;gap:0 22px;max-height:480px;display:grid}.detail-banner{padding:12px 18px}.detail-banner h2{margin:6px 0;font-size:20px}.detail-stats{align-content:start;max-width:280px}.original-stats{grid-column:1;margin:8px 0}.detail-section{margin-bottom:16px}.left-panel{height:calc(100vh - 142px);max-height:930px}.board-scroll{height:calc(100vh - 232px)}.header-center{font-size:10px}.app-header{height:74px}.app-footer>span:last-child,.help-button{display:none}.quiet-button{padding:7px;font-size:10px}}@media (width<=700px){.app-header{flex-wrap:wrap;gap:8px;height:71px;padding:0 12px}.brand{gap:7px;min-width:auto}.brand h1{letter-spacing:1px;font-size:16px}.brand-mark{width:31px;height:37px;font-size:20px}.brand div>span{letter-spacing:.7px;font-size:8px}.header-center{display:none}.header-actions{gap:3px}.header-actions .primary-button{min-height:30px;padding:7px 9px;font-size:10px}.quiet-button{padding:4px;font-size:9px}.workspace{flex-direction:column;gap:12px;padding:12px 9px;display:flex}.board-column{order:0;width:100%}.left-panel{order:1;width:100%;height:auto;min-height:0;max-height:none;position:static}.right-panel{order:2;width:100%}.left-panel .deck-summary{margin-bottom:10px;padding-bottom:10px}.deck-summary b{font-size:22px}.left-panel .library-list,.left-panel .log-list{max-height:280px}.left-panel .import-actions{padding-bottom:10px}.left-panel .search-box{margin-top:10px}.left-panel .panel-heading{min-height:40px;padding-top:7px}.right-panel .detail-content{max-height:none;display:block}.board-scroll{height:630px;min-height:420px;max-height:75vh}.turn-toolbar{min-height:34px}.phase-picker select{padding:7px 25px 7px 9px;font-size:10px}.turn-info strong{font-size:21px}.turn-info>span:last-child,.next-turn{font-size:10px}.bottom-toolbar{gap:5px}.draw-actions{gap:4px}.draw-actions .primary-button,.draw-actions .secondary-button{min-height:30px;padding:7px 9px;font-size:10px}.dice-actions{gap:4px}.dice-actions svg{display:none}.dice-actions button{min-width:26px;height:26px;font-size:9px}.app-footer{padding:5px 12px 18px}.modal-backdrop{padding:12px}.modal{max-height:92vh;padding:18px 19px 21px}.modal h2{font-size:21px}.toast{font-size:11px;bottom:15px}.custom-form{gap:0 10px}.player-stats{gap:12px}.brand h1{margin-bottom:3px}}@media (prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important}}.bottom-toolbar,.draw-actions{flex-wrap:wrap}.print-button{color:#997d43;background:#fffdf5;border-color:#dfd4b8}.board-hint{margin-left:auto}.hand-detail-actions{grid-template-columns:1fr 1fr;gap:5px;margin:0 0 17px;display:grid}.hand-detail-actions button{padding:7px 4px;font-size:10px}.edit-card-button{margin-bottom:12px;font-size:10px}.seat-choices{grid-template-columns:1fr 1fr;gap:10px;margin:17px 0 21px;display:grid}.seat-choices button{text-align:left;color:#617d51;background:#fafcf8;border:1px solid #dbe5d6;border-radius:9px;align-items:center;gap:10px;min-height:76px;padding:13px 10px;display:flex}.seat-choices button:hover,.seat-choices button.active{background:#f0f6e9;border-color:#86ac78;box-shadow:0 0 0 1px #86ac7820}.seat-choices b{width:25px;font-size:24px;font-weight:450}.seat-choices span{flex:1;font-size:11px;font-weight:600;line-height:1.6}.seat-choices small{color:#a0af91;margin-top:3px;font-size:8px;font-weight:400;display:block}.seat-choices svg{flex-shrink:0;width:16px}.modal.workshop-modal{width:800px}.workshop-layout{grid-template-columns:minmax(0,1fr) 230px;align-items:start;gap:23px;display:grid}.template-choices{flex-wrap:wrap;gap:7px;margin:2px 0 19px;display:flex}.template-choices button{color:#87996e;background:#f8faf4;border:1px solid #dfe7d8;border-radius:5px;align-items:center;gap:4px;padding:7px 10px;font-size:10px;display:flex}.template-choices button:hover{background:#f0f5e8;border-color:#a9bf90}.template-choices .blank-template{color:#a48e55;background:#fffdf3;border-style:dashed;border-color:#d5cda8}.print-preview{background:#faf6e8;border:1px solid #d7c795;border-radius:10px;min-height:280px;padding:16px;position:sticky;top:6px;box-shadow:0 6px 12px #777e5c0b}.print-preview.magic-preview{background:#edf5ee;border-color:#aac8ac}.print-preview.trap-preview{background:#f7eff5;border-color:#cdb4c8}.preview-label{color:#b2a379;letter-spacing:1px;margin-bottom:20px;font-size:9px;display:block}.print-preview h3{color:#746747;overflow-wrap:anywhere;margin:0 0 7px;font-size:19px;font-weight:550;line-height:1.5}.preview-meta{color:#a89870;font-size:9px;line-height:1.7}.preview-values{border-top:1px solid #dfd5b5;border-bottom:1px solid #dfd5b5;gap:20px;margin:16px 0;padding:10px 0;display:flex}.preview-values>span{color:#aa9971;font-size:8px}.preview-values b{color:#817145;margin-top:4px;font-size:17px;font-weight:550;display:block}.print-preview>p{color:#9b8f6b;white-space:pre-wrap;overflow-wrap:anywhere;max-height:280px;font-size:11px;line-height:1.9;overflow:auto}.print-preview>small{color:#aaa079;font-size:9px;line-height:1.8;display:block}.preview-strength{color:#b7ab83;border-top:1px dashed #dcd3b7;margin-top:22px;padding-top:14px;font-size:8px}.print-options{border-top:1px solid #e6ecdf;grid-template-columns:2fr 1fr 1fr;gap:12px;padding:16px 0 0;display:grid}.hand-manager-list{grid-template-columns:1fr 1fr;gap:6px;max-height:175px;margin-bottom:19px;display:grid;overflow:auto}.hand-manager-list button{color:#80976b;text-align:left;background:#fbfdf7;border:1px solid #e4eadc;border-radius:6px;min-width:0;padding:10px}.hand-manager-list button.active{background:#f0f6e9;border-color:#95b481}.hand-manager-list strong{text-overflow:ellipsis;white-space:nowrap;font-size:12px;font-weight:550;display:block;overflow:hidden}.hand-manager-list span{color:#a9b699;margin-top:5px;font-size:9px;display:block}.hand-operation{background:#f9fcf5;border:1px solid #e0e9d5;border-radius:8px;padding:15px}.hand-operation h3{color:#738e60;margin:0 0 14px;font-size:12px;font-weight:600;line-height:1.7}.replace-mode{gap:6px;margin-bottom:15px;display:flex}.replace-mode button{color:#97a785;background:#fff;border:1px solid #dce6d2;border-radius:5px;padding:7px 12px;font-size:10px}.replace-mode button.active{color:#6a8c53;background:#eaf2e1;border-color:#abc694}.cost-grid{grid-template-columns:1fr 1fr;gap:12px;display:grid}.hand-special-actions{flex-wrap:wrap;justify-content:space-between;gap:8px;margin-top:16px;display:flex}.hand-special-actions button{font-size:10px}.danger-button{color:#af8170;background:#fffaf7;border:1px solid #e4c8bd;border-radius:6px;justify-content:center;align-items:center;gap:5px;padding:9px 10px;font-size:11px;line-height:1.4;display:inline-flex}.danger-button:hover{background:#fff2eb;border-color:#c69a86}.delete-confirm{background:#fffbf5;border:1px solid #ead9ca;border-radius:7px;margin-top:13px;padding:12px}.delete-confirm p{color:#b69a7c;margin:0 0 10px;font-size:11px;line-height:1.8}.delete-confirm .text-button{padding:9px 15px}.empty-tools{color:#a0ad94;grid-column:span 2;padding:12px;font-size:11px;line-height:1.8}@media (width<=1230px){.board-hint{display:none}.bottom-toolbar .dice-actions{margin-left:0}.bottom-toolbar{gap:9px}.draw-actions .secondary-button.print-button{padding:8px 10px}}@media (width<=700px){.workshop-layout{grid-template-columns:1fr}.print-preview{min-height:160px;margin-bottom:15px;position:static}.print-preview .preview-label{margin-bottom:10px}.print-options{grid-template-columns:1fr 1fr}.print-options>.form-label:first-child{grid-column:span 2}.template-choices button{padding:7px 9px;font-size:9px}.seat-choices{gap:7px}.seat-choices button{padding:12px 9px}.seat-choices span{font-size:10px}.seat-choices small{font-size:7px}.seat-choices b{width:20px;font-size:20px}.draw-actions .primary-button,.draw-actions .secondary-button{padding:7px 8px;font-size:10px}.bottom-toolbar .dice-actions{margin-left:auto}.hand-manager-list{max-height:150px}.card-kind{font-size:6px}}.monster-card{--frame-bg:#f4d5ae;--frame-ink:#614029;--frame-border:#bb8a58;--frame-band:#b57c3225}.spell-card{--frame-bg:#c6e6da;--frame-ink:#235744;--frame-border:#5c9d89;--frame-band:#38826525}.trap-card{--frame-bg:#ecc9dc;--frame-ink:#772b58;--frame-border:#b45b91;--frame-band:#a3487625}.fusion-card{--frame-bg:#d9b8ee;--frame-ink:#512273;--frame-border:#9661c0;--frame-band:#6e328e25}.synchro-card{--frame-bg:#fff;--frame-ink:#29364d;--frame-border:#b6c0d1;--frame-band:#bac2d730}.xyz-card{--frame-bg:#222330;--frame-ink:#eee4c2;--frame-border:#646171;--frame-band:#dbca9920}.ritual-card{--frame-bg:#bad6fb;--frame-ink:#204e95;--frame-border:#638dca;--frame-band:#3b70b225}.link-card{--frame-bg:#bddced;--frame-ink:#225979;--frame-border:#569dbd;--frame-band:#3977a225}.duel-card:not(.hidden-card){background:var(--frame-bg,#f4d5ae);color:var(--frame-ink,#614029);border-color:var(--frame-border,#bb8a58)}.duel-card:not(.hidden-card) .card-top{background:var(--frame-band);color:var(--frame-ink)}.duel-card:not(.hidden-card) .card-kind,.duel-card:not(.hidden-card) .card-rule,.duel-card:not(.hidden-card) .card-numbers,.duel-card:not(.hidden-card) .card-numbers b{color:var(--frame-ink);border-color:var(--frame-border)}.duel-card:not(.hidden-card) .card-rule{opacity:.68}.duel-card.pendulum-card:not(.hidden-card){background:linear-gradient(180deg,var(--frame-bg) 0%,var(--frame-bg) 58%,#b5dccc 59%,#9dceba 100%)}.duel-card.xyz-card.pendulum-card{background:linear-gradient(#222330 58%,#2e6152 59%)}.pendulum-scale{color:#235d4c;z-index:1;font-size:7px;position:absolute;bottom:22px;left:5px;right:5px}.xyz-card .pendulum-scale{color:#c5e9d9}.pendulum-card .card-rule{-webkit-line-clamp:1;margin-bottom:36px}.type-bar,.mini-type{background:var(--frame-border,#bb8a58)!important}.type-bar.synchro-card,.mini-type.synchro-card{box-shadow:0 0 0 1px #a0abc1;background:#fff!important}.detail-banner,.detail-banner.spell-card,.detail-banner.trap-card,.detail-banner.extra-card{background:var(--frame-bg,#f4d5ae);color:var(--frame-ink);border-color:var(--frame-border)}.detail-banner h2,.detail-banner>span,.detail-banner .detail-meta{color:var(--frame-ink)}.detail-banner>span,.detail-banner .detail-meta{opacity:.7}.detail-banner.pendulum-card{background:linear-gradient(180deg,var(--frame-bg) 92%,#73bfa1 92%)}.print-preview,.print-preview.magic-preview,.print-preview.trap-preview{background:var(--frame-bg,#faf6e8);border-color:var(--frame-border,#d7c795);color:var(--frame-ink)}.print-preview h3,.print-preview .preview-label,.print-preview .preview-meta,.print-preview .preview-values,.print-preview .preview-values b,.print-preview>p,.print-preview>small,.print-preview .preview-strength{color:var(--frame-ink);border-color:var(--frame-border)}.print-preview>p{opacity:.85}.pendulum-toggle{color:#3d795c;background:#edf6f0;border:1px solid #c3dccf;border-radius:6px;align-items:center;gap:8px;margin-bottom:12px;padding:10px 11px;font-size:11px;display:flex}.pendulum-toggle input{accent-color:#397558}.pendulum-effect{color:#3f7760;background:#e7f5ed;border:1px solid #b7d9c5;border-radius:7px;margin-bottom:18px;padding:11px 12px}.pendulum-effect>b{font-size:10px;line-height:1.7}.pendulum-effect>p{white-space:pre-wrap;margin:8px 0 0;font-size:11px;line-height:1.9}.xyz-card .pendulum-effect{color:#d4ede2;background:#315649;border-color:#4b8b6e}.effect-hidden-notice{color:#77859c;background:#eef1f6;border:1px dashed #bec7d8;border-radius:7px;flex-wrap:wrap;align-items:center;gap:8px;margin-bottom:16px;padding:14px;display:flex}.effect-hidden-notice b{font-size:11px}.effect-hidden-notice p{width:100%;margin:2px 0 0;font-size:10px;line-height:1.8}.card-color-legend{flex-wrap:wrap;justify-content:center;gap:7px;margin-top:24px;display:flex}.card-color-legend span{background:var(--frame-bg,#b5dccc);border:1px solid var(--frame-border,#81baa0);color:var(--frame-ink,#407e61);border-radius:5px;padding:7px;font-size:9px}:root{--bg:#edf0f6;--line:#dce2ed;--teal:#3a526f}.board-scroll{scrollbar-color:#a9b7cc #d3ddea;background:#d2dcea;border-color:#b7c4d6;height:calc(100vh - 326px)}.duel-board{color:#50647e;background:radial-gradient(at 50% 40%,#e9edf5,#d6dfec 60%,#cbd7e7)}.field-zone{background:#ffffff20;border-color:#92a5c550}.field-zone.monster-region{background:linear-gradient(#f8f0dc42,#fff2);border-color:#b4a88477}.field-zone.spell-region{background:#eff7f730;border-color:#a2b9b977}.zone-label,.monster-region .zone-label{color:#7a88a0}.zone-guides span{color:#a3b2c5;border-color:#92a6c128}.pile-zone{color:#7d8fa9;background:#ffffff35;border-color:#9fb0c577}.pile-zone:hover,.pile-zone.opened{background:#ffffff65;border-color:#7c94b4}.pile-zone strong{color:#536b8a}.pile-zone.grave{border-color:#9aaac477}.pile-zone.banished{border-color:#b1a5b577}.side-note{color:#8b9cb4}.player-identity strong,.name-input{color:#354f71}.player-caption{color:#8495b0}.seat-avatar,.opponent .seat-avatar{color:#536e95;background:#afc1dc40;border-color:#96afd380}.stat label{color:#7c8daa}.stat b,.stat input{color:#4c668a}.stat.lp b,.stat.lp input{color:#9c804c}.stat.spirit b,.stat.spirit input{color:#687e9e}.stat button{color:#6d87aa;background:#99aec725}.stat button:hover{background:#99aec755}.player-bar.mine{border-color:#9aadc155}.own-hand{background:#ffffff27;border-color:#9eb4c777}.hand-heading{color:#70829c}.hand-heading>b{color:#4e6b91}.hand-heading>small{color:#8198b1}.empty-hand{color:#a0aec1}.center-line{background:linear-gradient(90deg,#0000,#8198b070)}.center-line:last-child{background:linear-gradient(90deg,#8198b070,#0000)}.extra-zone{background:#eef0f635;border-color:#9cacc380}.extra-zone>span{color:#8a96b1}.player-area{border-bottom:1px solid #a9b8cf4a;padding:6px 0 10px;scroll-margin-top:6px}.player-area.my-player-area{border-radius:10px;outline:1px solid #83a3be45;margin:5px -8px;padding:8px}.team-heading{letter-spacing:2px;color:#7c8ca8;padding:7px 0;font-size:9px;font-weight:600}.multi-duel-divider{color:#8c9ab1;text-align:center;letter-spacing:2px;border-top:1px solid #a4b4cb5e;border-bottom:1px solid #a4b4cb5e;margin:20px 0;padding:11px;font-size:10px}.player-extra-lane{justify-content:flex-start;padding:8px 0 1px}.player-extra-lane .extra-zone{height:137px}.match-banner{color:#7686a0;background:#f9fbff;border:1px solid #d3dce8;border-radius:7px;justify-content:space-between;align-items:center;gap:12px;margin-bottom:8px;padding:8px 10px;font-size:10px;display:flex}.match-banner>span:last-child{color:#8394ad;align-items:center;gap:5px;font-size:9px;display:flex}.player-navigation{flex-wrap:wrap;gap:6px;margin:0 0 10px;display:flex}.player-navigation button{color:#7b8ea6;background:#f8fafe;border:1px solid #d9e2ed;border-radius:5px;align-items:center;gap:6px;padding:6px 10px;font-size:10px;display:flex}.player-navigation small{color:#a3b1c5;font-size:8px}.player-navigation button.active{color:#50719e;background:#e9f0fb;border-color:#9fb3d1}.gm-focus-label{color:#8d9cae;align-items:center;gap:10px;padding:0 16px 13px;font-size:10px;display:flex}.gm-focus-label select{color:#7690b2;background:#f7f9fd;border:1px solid #dce3ee;border-radius:5px;flex:1;padding:6px}.gm-readonly{color:#8196b1;align-items:center;gap:7px;font-size:11px;display:flex}.room-modal{width:600px}.room-options h3{align-items:center;gap:6px;display:flex}.room-visibility-toggle{background:#f5f8fd;border:1px solid #d7e1ef;border-radius:7px;align-items:flex-start;gap:10px;margin-bottom:15px;padding:12px;display:flex}.room-visibility-toggle input{accent-color:#5676a0;margin-top:3px}.room-visibility-toggle span{color:#6d85a8;font-size:11px;line-height:1.8}.room-visibility-toggle small{color:#96a5ba;margin-top:3px;font-size:9px;display:block}.room-config-summary{background:#f8faff;border:1px solid #dce4f0;border-radius:7px;margin-bottom:15px;padding:13px}.room-config-summary strong{color:#738cae;font-size:12px}.room-config-summary p{color:#9babc1;margin:7px 0 0;font-size:10px;line-height:1.8}.legacy-room-note{color:#a58b61;background:#fcf8ef;border:1px solid #e9dfc9;border-radius:6px;padding:11px;font-size:10px;line-height:1.8}.multi-seat-choices{grid-template-columns:repeat(2,minmax(0,1fr))}.multi-seat-choices button{min-height:64px}.restore-list{border-top:1px solid #e2e8f1;margin-top:20px;padding-top:16px}.restore-list .restore-button{margin-top:7px}.restore-list .section-label{margin-bottom:5px}@media (width<=1020px){.board-scroll{height:calc(100vh - 300px)}.room-modal{width:540px}}@media (width<=700px){.board-scroll{height:610px;min-height:390px;max-height:70vh}.match-banner{padding:7px 8px;font-size:9px}.match-banner>span:last-child{font-size:8px}.player-navigation button{padding:6px 9px;font-size:9px}.player-navigation small{display:none}.gm-readonly{font-size:10px}.player-area.my-player-area{margin:0;padding:5px}.room-modal{width:100%}}.team-area{background:#ffffff12;border:1px solid #a5b6ce65;border-radius:11px;margin:6px 0 12px;padding:10px 12px}.team-area .team-heading{letter-spacing:1px;padding:3px 0 10px;line-height:1.7}.team-field{align-items:start}.team-field .field-side{gap:10px}.personal-decks{gap:5px;display:grid}.personal-decks>small{text-align:center;color:#7186a3;padding-top:4px;font-size:9px}.personal-decks .pile-zone{gap:3px;height:62px;min-height:62px;padding:6px}.personal-decks .pile-zone svg{width:14px;height:14px}.team-area .player-area{margin-bottom:7px}.team-area .player-bar{padding-top:5px;padding-bottom:8px}.team-area .hand-zone{margin-top:5px}.gm-deck-button{min-height:31px;margin:0 12px 12px;font-size:10px}.gm-seat-settings{background:#f5f8fe;border:1px solid #d5dfed;border-radius:8px;margin:14px 0;padding:12px}.gm-seat-settings>b{color:#566e91;font-size:12px}.gm-seat-settings>p{color:#8b9db6;margin:7px 0 10px;font-size:10px;line-height:1.8}.gm-seat-settings>div{flex-wrap:wrap;gap:10px 17px;display:flex}.gm-seat-settings label{color:#647c9f;align-items:center;gap:5px;font-size:11px;display:flex}.gm-seat-settings input{accent-color:#486893}.gm-deck-list{gap:11px;margin:18px 0;display:grid}.gm-deck-list>div{background:#f8faff;border:1px solid #dce4f0;border-radius:8px;align-items:center;gap:8px;padding:12px;display:flex}.gm-deck-list>div>div{flex:1;min-width:0}.gm-deck-list strong{color:#516e93;font-size:12px;line-height:1.7;display:block}.gm-deck-list small{color:#8b9fb9;margin-top:5px;font-size:10px;line-height:1.6;display:block}.gm-deck-list button{padding:7px 10px;font-size:10px}.pile-entry{border-bottom:1px solid #e3e9f1;margin-bottom:6px;padding-bottom:9px}.pile-list .pile-card-select{color:#5e7696;border-bottom:0}.pile-list .pile-card-select:hover{background:#eff4fb}.pile-quick-actions{flex-wrap:wrap;gap:5px;padding:0 4px;display:flex}.pile-quick-actions button,.pile-list .pile-quick-actions button{color:#718aaa;background:#f6f9fe;border:1px solid #d8e2ef;border-radius:5px;width:auto;min-height:27px;padding:5px 7px;font-size:9px}.pile-quick-actions button:hover,.pile-list .pile-quick-actions button:hover{background:#e9f0fb;border-color:#aebfda}.inspector-empty .pile-quick-actions{justify-content:center;margin-top:14px}.team-area .field-center{min-height:360px}.team-area .monster-region,.team-area .spell-region{min-height:170px}@media (width<=700px){.team-area{padding:7px}.team-area .team-heading{letter-spacing:.6px;font-size:8px}.gm-deck-list>div{flex-wrap:wrap}.gm-deck-list>div>div{flex-basis:100%}.gm-seat-settings>div{gap:10px}.personal-decks .pile-zone{height:58px;min-height:58px}}.battle-mat{background:#ffffff15;border:1px solid #a5b6ce80;border-radius:11px;padding:10px}.battle-mat .field-half{grid-template-columns:80px minmax(0,1fr) 80px;gap:10px;display:grid}.battle-mat .field-center{gap:6px;min-height:0}.battle-mat .monster-region,.battle-mat .spell-region{height:122px;min-height:122px}.battle-mat .zone-cards{inset:20px 4px 4px}.battle-mat .small-zone .zone-cards{inset:23px 3px 4px}.battle-mat .field-side{gap:8px;padding-top:2px}.battle-mat .pile-zone{gap:4px;height:54px;min-height:54px}.battle-mat .pile-zone svg{width:15px;height:15px}.mat-side-caption{color:#879ab5;text-align:center;padding:2px;font-size:8px;line-height:1.8}.battle-mat .small-zone{height:112px;min-height:112px}.battle-mat .central-extra-lane{gap:18px;height:132px;padding:7px 0}.battle-mat .extra-zone{width:148px;height:116px}.battle-mat .extra-zone>span{letter-spacing:0;color:#6581a8;font-size:8px;top:3px;left:7px}.battle-mat .extra-inner{inset:16px 5px 2px}.battle-mat .center-line{flex:1;height:1px}.battle-mat .duel-card{width:72px;min-width:72px;height:96px}.battle-mat .duel-card.horizontal{width:108px;min-width:108px;height:72px}.battle-mat .small-zone .duel-card{width:64px;min-width:64px;height:80px}.battle-mat .card-name{padding:5px;font-size:10px}.battle-mat .card-top{padding:4px;font-size:6px}.battle-mat .card-kind{margin:0 5px;font-size:6px}.battle-mat .card-rule{-webkit-line-clamp:2;margin:3px 5px 21px;font-size:6px;line-height:1.5}.battle-mat .card-numbers{padding:5px;font-size:6px}.battle-mat .card-numbers b{font-size:8px}.battle-mat .pose-tag{padding:2px 3px;font-size:6px}.battle-mat .pendulum-scale{font-size:6px;bottom:18px}.battle-mat .pendulum-card .card-rule{-webkit-line-clamp:1;margin-bottom:30px}.battle-mat .private-tag{font-size:6px;bottom:19px}.team-resources{margin:7px 0 10px;padding:0 4px}.team-resources .team-heading{letter-spacing:1px;justify-content:space-between;align-items:center;gap:12px;padding:4px 0 8px;font-size:9px;display:flex}.team-resources .team-heading>span{letter-spacing:0;color:#97a7bd;font-size:8px;font-weight:400}.resource-players{grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:9px;display:grid}.player-resource{background:#ffffff15;border:1px solid #9dafc940;border-radius:8px;padding:7px 9px;scroll-margin-top:8px}.player-resource .player-bar,.player-resource .player-bar.mine{border:0;gap:7px;margin:0;padding:0 0 7px}.player-resource .player-stats{gap:7px}.player-resource .player-stats b,.player-resource .player-stats input{font-size:13px}.player-resource .stat input{width:27px}.player-resource .stat.lp input{width:42px}.player-resource .stat button{width:13px;height:16px;font-size:11px}.player-resource .name-input{width:85px;font-size:10px}.player-resource .player-identity{gap:6px}.player-resource .player-identity strong{font-size:10px}.player-resource .seat-avatar{width:27px;height:31px;font-size:16px}.player-resource .player-caption{font-size:7px}.personal-deck-row{align-items:center;gap:6px;display:flex}.personal-deck-row .pile-zone{flex-direction:row;justify-content:flex-start;gap:4px;width:84px;height:30px;min-height:30px;padding:4px 7px}.personal-deck-row .pile-zone svg{width:12px;height:12px}.personal-deck-row .pile-zone strong{margin-left:auto;font-size:9px;position:static}.personal-deck-row .pile-zone>span{letter-spacing:0;font-size:8px}.personal-deck-row>span{color:#8ca0bc;font-size:8px;line-height:1.7}.player-hand-details{color:#8aa0bd;margin-top:8px;font-size:9px}.player-hand-details>summary{cursor:pointer;line-height:1.8}.player-resource .hand-zone{border-radius:6px;min-height:32px;margin:8px 0 0;padding:4px 0}.player-resource .hand-heading{min-width:42px;font-size:8px}.player-resource .hand-heading>small{font-size:6px}.player-resource .hand-cards{min-width:0}.board-scroll .duel-board{padding:10px 12px}.lower-resources{margin-top:10px}.upper-resources{margin-bottom:10px}@media (width>=1680px){.battle-mat .field-half{grid-template-columns:88px minmax(0,1fr) 88px;gap:12px}}@media (width<=1230px){.resource-players{grid-template-columns:1fr}.player-resource .name-input{width:110px}.player-resource .player-stats{gap:12px}}@media (width<=700px){.battle-mat{padding:7px}.battle-mat .field-half{grid-template-columns:76px minmax(0,1fr) 76px;gap:7px}.team-resources .team-heading>span{font-size:7px}.player-resource .player-stats{gap:8px}.personal-deck-row>span{font-size:7px}}.dice-mode-tabs{flex-wrap:wrap;gap:7px;margin:15px 0;display:flex}.dice-mode-tabs button{color:#7187a7;background:#f7f9fd;border:1px solid #d9e2ef;border-radius:6px;padding:8px 10px;font-size:11px}.dice-mode-tabs button.active{color:#456a9d;background:#e7effb;border-color:#a3b9d6}.dice-formula-preview{color:#4b709f;text-align:center;background:#f2f6fd;border:1px solid #d6e1f1;border-radius:8px;margin:14px 0;padding:16px 12px;font-size:19px;line-height:1.6}.dice-formula-preview small{color:#8b9fbb;margin-top:7px;font-size:10px;display:block}.dice-result{color:#507d6b;background:#f2faf6;border:1px solid #cedfda;border-radius:9px;margin-top:18px;padding:15px}.dice-result>span{color:#83a295;font-size:10px}.dice-rolls{flex-wrap:wrap;gap:7px;margin:12px 0;display:flex}.dice-rolls b{color:#426a5a;background:#fff;border:1px solid #bad5c9;border-radius:7px;place-items:center;min-width:35px;height:35px;font-size:18px;font-weight:500;display:grid}.dice-result>strong{overflow-wrap:anywhere;font-size:13px;line-height:1.9}.dice-result>p{margin:11px 0 0;font-size:11px}.dice-result>p>b{margin-left:8px;font-size:22px}.dice-actions .dice-editor-button{align-items:center;gap:4px;min-width:70px;padding:0 8px;display:flex}.dice-actions button{white-space:nowrap;width:auto;padding:0 7px}.library-select>b{white-space:nowrap;color:#8097b7}.library-options button:disabled{color:#b5c1d1}.deck-summary span{font-size:9px}.undo-draw-button{color:#587799;border-color:#c6d5e8}.hand-detail-actions .hand-recall-button{grid-column:1/-1}.hand-recall-box{background:#f3faf6;border:1px solid #cddfd6;border-radius:8px;margin:14px 0;padding:10px 12px}.hand-recall-box .primary-button{white-space:normal;line-height:1.7}.hand-recall-box .form-hint{color:#84a295;margin:7px 0 0}.hand-manager-list{margin-top:14px}.control-choice{background:#f7f9fd;border:1px solid #dce4ef;border-radius:7px;margin:12px 0;padding:10px}.control-choice .form-label{margin-top:0}.control-choice .form-hint{margin-bottom:0}.room-history-row{border-bottom:1px solid #e2e8f1;padding:7px 0}.room-history-row>div{justify-content:flex-end;gap:10px;display:flex}.room-history-row .text-button{align-items:center;gap:4px;padding:7px;display:inline-flex}.danger-button{color:#a24940;background:#fff8f6;border:1px solid #d9b3af;border-radius:7px;justify-content:center;align-items:center;gap:6px;padding:9px 12px;font-size:12px;font-weight:600;display:inline-flex}.danger-button.full{margin-top:10px}.danger-text{color:#a24940}.room-delete-confirm{color:#88473f;background:#fff6f2;border:1px solid #dcbbb5;border-radius:8px;margin-top:14px;padding:14px}.room-delete-confirm p{font-size:12px;line-height:1.8}.room-delete-confirm>div{justify-content:flex-end;gap:8px;display:flex}.gm-player-tools{flex-wrap:wrap;gap:6px;margin:7px 0;display:flex}.gm-player-tools button{color:#4c6686;background:#f4f8fd;border:1px solid #b7c7d8;border-radius:5px;padding:6px 9px;font-size:10px}.solo-entry{margin:6px 0}.gm-remove-card{margin-top:10px}.gm-player-tools label{color:#6c829e;align-items:center;gap:5px;font-size:10px;display:flex}.gm-player-tools input{background:#f9fbff;border:1px solid #c1cedd;border-radius:4px;width:58px;padding:5px}.gm-authority-note{color:#627d9f;background:#edf4fb;border:1px solid #d9e5f1;border-radius:6px;margin:0 14px 10px;padding:9px;font-size:10px;line-height:1.7}
