.cm-chessboard .board.input-enabled .square{cursor:pointer}.cm-chessboard .coordinates,.cm-chessboard .markers-layer,.cm-chessboard .pieces-layer,.cm-chessboard .markers-top-layer{pointer-events:none}.cm-chessboard-content .list-inline{padding-left:0;list-style:none}.cm-chessboard-content .list-inline-item{display:inline-block}.cm-chessboard-content .list-inline-item:not(:last-child){margin-right:1rem}.cm-chessboard-accessibility.visually-hidden{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden}.cm-chessboard-accessibility button:disabled,.cm-chessboard-accessibility button:disabled:hover{opacity:.5;cursor:not-allowed;pointer-events:none}.cm-chessboard.default .board .square.white{fill:#ecdab9}.cm-chessboard.default .board .square.black{fill:#c5a076}.cm-chessboard.default.border-type-thin .board .border{stroke:#c5a076;stroke-width:.7%;fill:#c5a076}.cm-chessboard.default.border-type-none .board .border{stroke:#c5a076;stroke-width:0;fill:#c5a076}.cm-chessboard.default.border-type-frame .board .border{fill:#ecdab9;stroke:none}.cm-chessboard.default.border-type-frame .board .border-inner{fill:#c5a076;stroke:#c5a076;stroke-width:.7%}.cm-chessboard.default .coordinates{pointer-events:none;-webkit-user-select:none;user-select:none}.cm-chessboard.default .coordinates .coordinate{fill:#b5936d;cursor:default;font-size:7px}.cm-chessboard.default .coordinates .coordinate.black{fill:#eeddbf}.cm-chessboard.default .coordinates .coordinate.white{fill:#b5936d}.cm-chessboard.default-contrast .board .square.white{fill:#ecdab9}.cm-chessboard.default-contrast .board .square.black{fill:#c5a076}.cm-chessboard.default-contrast.border-type-thin .board .border{stroke:#c5a076;stroke-width:.7%;fill:#c5a076}.cm-chessboard.default-contrast.border-type-none .board .border{stroke:#c5a076;stroke-width:0;fill:#c5a076}.cm-chessboard.default-contrast.border-type-frame .board .border{fill:#ecdab9;stroke:none}.cm-chessboard.default-contrast.border-type-frame .board .border-inner{fill:#c5a076;stroke:#c5a076;stroke-width:.7%}.cm-chessboard.default-contrast .coordinates{pointer-events:none;-webkit-user-select:none;user-select:none}.cm-chessboard.default-contrast .coordinates .coordinate{fill:#b5936d;cursor:default;font-size:7px}.cm-chessboard.default-contrast .coordinates .coordinate.black,.cm-chessboard.default-contrast .coordinates .coordinate.white{fill:#333}.cm-chessboard.green .board .square.white{fill:#e0ddcc}.cm-chessboard.green .board .square.black{fill:#4c946a}.cm-chessboard.green.border-type-thin .board .border{stroke:#4c946a;stroke-width:.7%;fill:#4c946a}.cm-chessboard.green.border-type-none .board .border{stroke:#4c946a;stroke-width:0;fill:#4c946a}.cm-chessboard.green.border-type-frame .board .border{fill:#e0ddcc;stroke:none}.cm-chessboard.green.border-type-frame .board .border-inner{fill:#4c946a;stroke:#4c946a;stroke-width:.7%}.cm-chessboard.green .coordinates{pointer-events:none;-webkit-user-select:none;user-select:none}.cm-chessboard.green .coordinates .coordinate{fill:#468862;cursor:default;font-size:7px}.cm-chessboard.green .coordinates .coordinate.black{fill:#e2e0d0}.cm-chessboard.green .coordinates .coordinate.white{fill:#468862}.cm-chessboard.blue .board .square.white{fill:#d8ecfb}.cm-chessboard.blue .board .square.black{fill:#86afcf}.cm-chessboard.blue.border-type-thin .board .border{stroke:#86afcf;stroke-width:.7%;fill:#86afcf}.cm-chessboard.blue.border-type-none .board .border{stroke:#86afcf;stroke-width:0;fill:#86afcf}.cm-chessboard.blue.border-type-frame .board .border{fill:#d8ecfb;stroke:none}.cm-chessboard.blue.border-type-frame .board .border-inner{fill:#86afcf;stroke:#86afcf;stroke-width:.7%}.cm-chessboard.blue .coordinates{pointer-events:none;-webkit-user-select:none;user-select:none}.cm-chessboard.blue .coordinates .coordinate{fill:#7ba1be;cursor:default;font-size:7px}.cm-chessboard.blue .coordinates .coordinate.black{fill:#dbeefb}.cm-chessboard.blue .coordinates .coordinate.white{fill:#7ba1be}.cm-chessboard.chess-club .board .square.white{fill:#e6d3b1}.cm-chessboard.chess-club .board .square.black{fill:#af6b3f}.cm-chessboard.chess-club.border-type-thin .board .border{stroke:#692e2b;stroke-width:.7%;fill:#af6b3f}.cm-chessboard.chess-club.border-type-none .board .border{stroke:#692e2b;stroke-width:0;fill:#af6b3f}.cm-chessboard.chess-club.border-type-frame .board .border{fill:#692e2b;stroke:none}.cm-chessboard.chess-club.border-type-frame .board .border-inner{fill:#af6b3f;stroke:#692e2b;stroke-width:.7%}.cm-chessboard.chess-club .coordinates{pointer-events:none;-webkit-user-select:none;user-select:none}.cm-chessboard.chess-club .coordinates .coordinate{fill:#e6d3b1;cursor:default;font-size:7px}.cm-chessboard.chess-club .coordinates .coordinate.black{fill:#e6d3b1}.cm-chessboard.chess-club .coordinates .coordinate.white{fill:#af6b3f}.cm-chessboard.chessboard-js .board .square.white{fill:#f0d9b5}.cm-chessboard.chessboard-js .board .square.black{fill:#b58863}.cm-chessboard.chessboard-js.border-type-thin .board .border{stroke:#404040;stroke-width:.7%;fill:#b58863}.cm-chessboard.chessboard-js.border-type-none .board .border{stroke:#404040;stroke-width:0;fill:#b58863}.cm-chessboard.chessboard-js.border-type-frame .board .border{fill:#f0d9b5;stroke:none}.cm-chessboard.chessboard-js.border-type-frame .board .border-inner{fill:#b58863;stroke:#404040;stroke-width:.7%}.cm-chessboard.chessboard-js .coordinates{pointer-events:none;-webkit-user-select:none;user-select:none}.cm-chessboard.chessboard-js .coordinates .coordinate{fill:#404040;cursor:default;font-size:7px}.cm-chessboard.chessboard-js .coordinates .coordinate.black{fill:#f0d9b5}.cm-chessboard.chessboard-js .coordinates .coordinate.white{fill:#b58863}.cm-chessboard.black-and-white .board .square.white{fill:#fff}.cm-chessboard.black-and-white .board .square.black{fill:#9c9c9c}.cm-chessboard.black-and-white.border-type-thin .board .border{stroke:#9c9c9c;stroke-width:.7%;fill:#9c9c9c}.cm-chessboard.black-and-white.border-type-none .board .border{stroke:#9c9c9c;stroke-width:0;fill:#9c9c9c}.cm-chessboard.black-and-white.border-type-frame .board .border{fill:#fff;stroke:none}.cm-chessboard.black-and-white.border-type-frame .board .border-inner{fill:#9c9c9c;stroke:#9c9c9c;stroke-width:.7%}.cm-chessboard.black-and-white .coordinates{pointer-events:none;-webkit-user-select:none;user-select:none}.cm-chessboard.black-and-white .coordinates .coordinate{fill:#909090;cursor:default;font-size:7px}.cm-chessboard.black-and-white .coordinates .coordinate.black{fill:#fff}.cm-chessboard.black-and-white .coordinates .coordinate.white{fill:#909090}.cm-chessboard .keyboard-focus-indicator .keyboard-focus{fill:none;stroke:#06c;stroke-width:3px;pointer-events:none}.cm-chessboard .keyboard-focus-indicator .keyboard-from-square{fill:#0066cc4d;stroke:#06c;stroke-width:2px;pointer-events:none}.cm-chessboard:focus{outline-offset:2px;outline:2px solid #06c}.cm-chessboard .arrow-warning .arrow-head{fill:orange;fill-rule:nonzero}.cm-chessboard .arrow-warning .arrow-line{stroke:orange;stroke-linecap:round;opacity:.6}.cm-chessboard .arrow-danger .arrow-head{fill:red;fill-rule:nonzero}.cm-chessboard .arrow-danger .arrow-line{stroke:red;stroke-linecap:round;opacity:.5}.cm-chessboard .arrow-success .arrow-head{fill:green;fill-rule:nonzero}.cm-chessboard .arrow-success .arrow-line{stroke:green;stroke-linecap:round;opacity:.5}.cm-chessboard .arrow-info .arrow-head{fill:#00f;fill-rule:nonzero}.cm-chessboard .arrow-info .arrow-line{stroke:#00f;stroke-linecap:round;opacity:.4}.cm-chessboard .arrow-secondary .arrow-head{fill:#666;fill-rule:nonzero}.cm-chessboard .arrow-secondary .arrow-line{stroke:#666;stroke-linecap:butt;opacity:.5}.cm-chessboard .markers{pointer-events:none}.cm-chessboard .markers .marker.marker-frame{stroke:#000;stroke-width:1.8px;opacity:.5}.cm-chessboard .markers .marker.marker-frame-primary,.cm-chessboard .markers .marker.marker-frame-info{stroke:#00f;stroke-width:1.8px;opacity:.4}.cm-chessboard .markers .marker.marker-frame-danger{stroke:red;stroke-width:1.8px;opacity:.4}.cm-chessboard .markers .marker.marker-frame-warning{stroke:orange;stroke-width:1.8px;opacity:.4}.cm-chessboard .markers .marker.marker-circle{stroke:#000;stroke-width:3px;opacity:.3}.cm-chessboard .markers .marker.marker-circle-primary,.cm-chessboard .markers .marker.marker-circle-info{stroke:#00f;stroke-width:3px;opacity:.4}.cm-chessboard .markers .marker.marker-circle-info-filled{stroke:#00f;fill:#00f;stroke-width:3px;opacity:.4}.cm-chessboard .markers .marker.marker-circle-danger{stroke:red;stroke-width:3px;opacity:.4}.cm-chessboard .markers .marker.marker-circle-danger-filled{stroke:red;fill:red;stroke-width:3px;opacity:.4}.cm-chessboard .markers .marker.marker-circle-warning{stroke:orange;stroke-width:3px;opacity:.4}.cm-chessboard .markers .marker.marker-circle-warning-filled{stroke:orange;fill:orange;stroke-width:3px;opacity:.4}.cm-chessboard .markers .marker.marker-circle-success{stroke:green;stroke-width:3px;opacity:.4}.cm-chessboard .markers .marker.marker-circle-success-filled{stroke:green;fill:green;stroke-width:3px;opacity:.4}.cm-chessboard .markers .marker.marker-square{fill:#000;opacity:.11}.cm-chessboard .markers .marker.marker-dot,.cm-chessboard .markers .marker.marker-bevel{fill:#000;opacity:.2}:root{color:#233027;font-synthesis:none;background:#f6f3eb;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}*{box-sizing:border-box}body{min-width:320px;margin:0;overflow:hidden}button,input{font:inherit}button{cursor:pointer}button:disabled{opacity:.4;cursor:default}button:focus-visible,input:focus-visible{outline-offset:2px;outline:3px solid #7ca9d8}#app{height:100dvh;overflow:hidden}.app-header{background:#fffdf9;border-bottom:1px solid #ded8cd;justify-content:space-between;align-items:center;gap:1rem;min-height:86px;padding:.8rem clamp(1.25rem,3vw,3rem);display:flex}.brand{align-items:center;gap:1.15rem;display:flex}.brand img{width:clamp(116px,12vw,172px);height:auto}.brand-title{border-left:1px solid #d3cfbf;padding-left:1.1rem}.brand-title span,.eyebrow{color:#547954;letter-spacing:.12em;font-size:.72rem;font-weight:800;display:block}.brand-title h1{color:#244529;margin:.12rem 0 0;font-size:clamp(1.45rem,2vw,2rem);line-height:1}.header-note{color:#647165;font-size:.9rem}.header-actions{align-items:center;gap:1rem;display:flex}.storage-error{z-index:12;color:#81332a;background:#fff4f0;border:1px solid #b66e64;border-radius:10px;width:min(680px,100vw - 2rem);padding:.9rem 1rem;position:fixed;top:5.5rem;left:50%;transform:translate(-50%);box-shadow:0 8px 25px #0002}.header-actions .secondary{min-height:38px;padding:.45rem .8rem}.app-main{grid-template-columns:minmax(245px,290px) minmax(0,1fr);gap:clamp(.9rem,1.4vw,1.4rem);width:min(100%,1800px);height:calc(100dvh - 86px);min-height:0;margin:auto;padding:clamp(.85rem,1.5vw,1.5rem);display:grid;overflow:hidden}.panel{background:#fffdf9;border:1px solid #dedccf;border-radius:16px;box-shadow:0 6px 24px #2330270b}.collections-panel{flex-direction:column;min-height:0;display:flex;overflow:hidden}.panel-heading,.items-heading{justify-content:space-between;align-items:center;gap:.7rem;display:flex}.panel-heading{padding:1.4rem 1.15rem .9rem}h2,h3,p{overflow-wrap:anywhere}.panel-heading h2,.items-heading h2{margin:.32rem 0 0;font-size:1.35rem}.icon-button{color:#285733;background:#e7f1e3;border:1px solid #b9d0b5;border-radius:9px;width:40px;height:40px;padding:0;font-size:1.7rem;line-height:1}.collection-list{flex:1;align-content:start;gap:.3rem;min-height:0;padding:.35rem .65rem 1rem;display:grid;overflow-y:auto}.collection-card{width:100%;min-width:0;min-height:66px;color:inherit;text-align:left;background:0 0;border:1px solid #0000;border-radius:10px;align-items:center;gap:.7rem;padding:.5rem .65rem;display:flex}.collection-card:hover,.collection-card.selected{background:#edf5e9;border-color:#bcd0b6}.collection-card.selected{box-shadow:inset 3px 0 #3b7440}.collection-icon{color:#285733;background:#d8e8d2;border-radius:8px;flex:none;place-items:center;width:42px;height:42px;font-size:1.65rem;display:grid}.collection-text{flex:1;gap:.18rem;min-width:0;display:grid}.collection-text strong{text-overflow:ellipsis;white-space:nowrap;font-size:.92rem;overflow:hidden}.collection-text small{color:#68766b}.collection-card>span:last-child{color:#5c755d;font-size:1.4rem}.sidebar-empty{color:#657066;padding:1.1rem .7rem;font-size:.9rem;line-height:1.4}.sidebar-footer{color:#6c756d;border-top:1px solid #e9e7dd;align-items:center;gap:.5rem;padding:1rem 1.2rem;font-size:.8rem;display:flex}.status-dot{background:#68a66c;border-radius:50%;width:8px;height:8px}.work-area{flex-direction:column;min-width:0;min-height:0;display:flex}.welcome{text-align:center;flex-direction:column;justify-content:center;align-items:center;min-height:min(72dvh,620px);padding:2rem;display:flex}.welcome-icon{color:#47744a;background:#e0ecd9;border-radius:24px;place-items:center;width:88px;height:88px;margin-bottom:1.4rem;font-size:3.6rem;display:grid}.welcome h2{margin:.7rem 0 .2rem;font-size:clamp(2rem,3vw,3rem)}.welcome p{color:#626d64;max-width:35rem;margin:.7rem 0 1.8rem;line-height:1.55}.primary,.secondary,.quiet{border-radius:9px;min-height:45px;padding:.65rem .95rem;font-weight:700}.primary{color:#fff;background:#315f35;border:1px solid #285a30}.primary:hover{background:#254f2b}.primary span{margin-left:.7rem}.secondary{color:#28552f;background:#e9f2e6;border:1px solid #9cbc9b}.quiet{color:#4b554c;background:#fff;border:1px solid #dedbcf}.danger{color:#9c3d36}.collection-header{flex:none;justify-content:space-between;align-items:flex-end;gap:1rem;margin-bottom:1rem;padding:.85rem 1.2rem;display:flex}.collection-title-group{flex:1;gap:.45rem;min-width:0;display:grid}.collection-fields{grid-template-columns:minmax(0,1.5fr) minmax(150px,1fr);gap:.8rem;display:grid}.collection-field{min-width:0}.collection-title-group label{color:#647066;margin-bottom:.15rem;font-size:.77rem;font-weight:700;display:block}.collection-title-group input{color:#233027;background:0 0;border:1px solid #0000;border-radius:5px;width:100%;min-height:39px;padding:.1rem .35rem;font-size:clamp(1.3rem,1.8vw,1.65rem);font-weight:750}.collection-title-group input:hover,.collection-title-group input:focus{background:#fff;border-color:#b8c8b5}.collection-actions{flex-wrap:wrap;justify-content:flex-end;gap:.45rem;display:flex}.publish-bar{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.8rem;margin-bottom:1rem;padding:.7rem 1rem;display:flex}.publish-status{flex-wrap:wrap;align-items:center;gap:.7rem;display:flex}.publish-bar small{color:#647165}.publish-code{color:#244529;letter-spacing:.1em;white-space:nowrap;font-size:1.05rem;font-weight:800}.publish-actions{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:.4rem;margin-left:auto;display:flex}.publish-access{align-items:center;gap:.4rem;margin-right:.25rem;display:flex}.publish-access-label{color:#647165;white-space:nowrap;font-size:.78rem;font-weight:700}.publish-icon-button{color:#28552f;background:#e9f2e6;border:1px solid #9cbc9b;border-radius:8px;flex:none;place-items:center;width:39px;height:39px;padding:0;display:grid}.publish-icon-button:hover{background:#dcebd7}.publish-icon-button svg{width:19px;height:19px}#collection-publisher{font-size:.9rem;font-weight:500}.content-layout{flex:1;grid-template-columns:minmax(260px,365px) minmax(0,1fr);gap:1rem;min-height:0;display:grid;overflow:hidden}.items-panel,.preview-panel{min-width:0;min-height:0}.items-panel{flex-direction:column;display:flex;overflow:hidden}.items-heading{border-bottom:1px solid #e7e6dc;padding:1.3rem 1.2rem 1rem}.items-hint{color:#899087;text-align:right;font-size:.72rem}.items-list,.groups-list{flex:1;min-height:0;padding:.45rem;overflow-y:auto}.group-row{background:#f7faf5;border:1px solid #d5e0d0;border-radius:12px;margin:.35rem .2rem .7rem}.group-row:hover{background:#eef6eb;border-color:#8eae87}.group-select{width:100%;min-height:92px;color:inherit;text-align:left;background:0 0;border:0;align-items:center;gap:.75rem;padding:.75rem;display:flex}.import-card{margin-bottom:.45rem;position:relative}.import-card .group-select{min-height:88px;padding:.55rem 3.25rem .55rem .7rem}.import-card .group-icon{width:46px;height:46px}.import-card .group-copy{gap:.12rem}.import-card .group-chevron{position:absolute;bottom:.2rem;right:.85rem}.group-icon{color:#315f35;background:#dcead6;border-radius:10px;flex:none;place-items:center;width:52px;height:52px;font-size:2rem;display:grid}.group-icon svg{fill:currentColor;width:30px;height:30px}.group-copy{flex:1;gap:.22rem;min-width:0;display:grid}.group-kind{color:#527b52;letter-spacing:.1em;font-size:.65rem;font-weight:800}.group-copy strong{text-overflow:ellipsis;white-space:nowrap;font-size:.95rem;overflow:hidden}.group-copy small{color:#637365;font-size:.78rem}.group-chevron{color:#6d896b;font-size:1.45rem}.category-icon{font-size:1.45rem}.category-heading{justify-content:space-between;align-items:center;gap:.5rem;padding:.85rem 1.15rem .45rem;display:flex}.category-heading strong{color:#566c57;font-size:.8rem}.category-drill-heading{border-bottom:1px solid #e7e6dc;gap:.3rem;padding:.75rem 1.15rem;display:grid}.category-drill-heading h3{margin:0;font-size:1rem}.category-drill-heading small{color:#6b776b;font-size:.78rem}.category-back-button{color:#315f35;background:#f1f6ef;border:0;border-radius:6px;justify-self:start;min-height:36px;margin-bottom:.35rem;padding:.3rem .5rem;font-size:.82rem;font-weight:800}.category-back-button:hover,.category-back-button:focus-visible{background:#e1efdc}.group-actions{padding:0;display:flex;position:absolute;top:.15rem;right:.15rem}.group-actions button{color:#5c7c60;background:0 0;border:0;border-radius:8px;place-items:center;width:44px;height:44px;font-size:1.1rem;display:grid}.group-actions button:hover{background:#fae9e5}.group-actions [data-action=delete-group]{color:#a45a4d}.group-actions [data-action=delete-group] svg{width:20px;height:20px}.app-confirm-dialog{color:#233027;background:#fffdf9;border:1px solid #d9d2c6;border-radius:14px;width:min(440px,100vw - 2rem);max-width:none;padding:1.5rem;box-shadow:0 24px 70px #141e1440}.app-confirm-dialog::backdrop{background:#141e148c}.app-confirm-dialog h2{margin:0 0 .6rem}.app-confirm-dialog p{line-height:1.5}.app-confirm-actions{justify-content:flex-end;gap:.5rem;margin-top:1.5rem;display:flex}.recovery-dialog{width:min(560px,100vw - 2rem)}.recovery-dialog h3{margin:1.3rem 0 .35rem;font-size:1.15rem}.recovery-dialog label{margin:1.2rem 0 .35rem;font-size:.84rem;font-weight:800;display:block}.recovery-dialog input{color:#233027;background:#fff;border:1px solid #b7c9b3;border-radius:8px;width:100%;min-width:0;min-height:44px;padding:.5rem .7rem}.recovery-key-row{align-items:center;gap:.4rem;display:flex}.recovery-key-row input{flex:1;font-family:ui-monospace,Consolas,monospace}.recovery-key-row button{flex:none}.recovery-unavailable{color:#5a6b5b;background:#f0f5ed;border-radius:8px;padding:.85rem}.recovery-warning{color:#695c47;font-size:.9rem}.recovery-error{color:#9c3d36;margin-bottom:0;font-size:.88rem}.danger-button{background:#a7463a;border-color:#88372e}.danger-button:hover{background:#87362e}.group-drill-heading{border-bottom:1px solid #e7e6dc;flex:none;gap:.4rem;padding:.85rem 1.15rem 1rem;display:grid}.back-button{color:#285d32;text-align:left;background:#e9f3e6;border:1px solid #a9c8a3;border-radius:9px;justify-self:stretch;align-items:center;gap:.65rem;min-height:46px;margin-bottom:.5rem;padding:.55rem .8rem;font-size:.9rem;font-weight:800;display:flex}.back-button:hover,.back-button:focus-visible{background:#dcebd7;border-color:#5e945d}.back-button span:first-child{font-size:1.2rem;line-height:1}.group-drill-heading label{color:#657365;font-size:.7rem;font-weight:700}.group-drill-heading input{width:100%;min-height:38px;color:inherit;background:#fff;border:1px solid #d3d9cf;border-radius:7px;padding:.3rem .5rem;font-weight:750}.group-drill-heading small{color:#718074;text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.item-pager{color:#5b6d5d;border-top:1px solid #e7e6dc;justify-content:center;align-items:center;gap:1rem;padding:.5rem;font-size:.8rem;font-weight:800;display:flex}.item-pager button{color:#315f35;background:#f5f9f2;border:1px solid #c7d4c4;border-radius:6px;width:34px;height:32px;font-size:1.1rem}.item-row{border:1px solid #0000;border-radius:10px;align-items:center;gap:.2rem;margin-bottom:.25rem;display:flex}.item-row:hover,.item-row.selected{background:#edf5e9;border-color:#bed3b7}.item-select{min-width:0;min-height:65px;color:inherit;text-align:left;background:0 0;border:0;flex:1;align-items:center;gap:.55rem;padding:.45rem;display:flex}.item-number{color:#7b9a78;align-self:flex-start;padding-top:.2rem;font-size:.7rem;font-weight:800}.item-copy{flex:1;gap:.25rem;min-width:0;display:grid}.item-copy strong{text-overflow:ellipsis;white-space:nowrap;font-size:.87rem;overflow:hidden}.item-copy small{color:#6b776b;text-overflow:ellipsis;white-space:nowrap;font-size:.74rem;overflow:hidden}.item-chevron{color:#779178;font-size:1.3rem}.item-actions{gap:0;padding-right:.2rem;display:flex}.item-actions button{color:#a45a4d;background:0 0;border:0;border-radius:8px;place-items:center;width:44px;height:44px;padding:0;display:grid}.item-actions button:hover{background:#fae9e5}.item-actions svg{width:20px;height:20px}.items-empty{text-align:center;flex-direction:column;flex:1;justify-content:center;align-items:center;min-height:0;padding:1.5rem;display:flex}.items-empty>div{color:#93ad89;font-size:3rem}.items-empty h3{margin:.4rem 0 0}.items-empty p{color:#6b766c;font-size:.85rem;line-height:1.45}.preview-panel{padding:clamp(1rem,1.4vw,1.5rem);overflow-y:auto}.preview-heading{justify-content:space-between;align-items:flex-start;gap:.8rem;margin-bottom:1rem;display:flex}.preview-heading h2{margin:.35rem 0 0;font-size:clamp(1.2rem,1.6vw,1.7rem)}.kind-badge{color:#315f35;background:#e8f1e5;border-radius:999px;padding:.35rem .7rem;font-size:.75rem;font-weight:800}.preview-body{grid-template-columns:minmax(240px,1.1fr) minmax(200px,.8fr);gap:clamp(.85rem,1.5vw,1.5rem);display:grid}.board-column{min-width:0}.board-host{aspect-ratio:1;pointer-events:none;border:5px solid #e8e2d2;border-radius:7px;width:min(100%,560px,max(240px,100dvh - 420px));margin:auto;overflow:hidden}.board-controls{justify-content:center;align-items:center;gap:.35rem;margin-top:.8rem;display:flex}.board-controls button{color:#315f35;background:#f5f9f2;border:1px solid #c7d4c4;border-radius:8px;width:43px;height:42px;font-size:1.3rem}.board-controls span{text-align:center;color:#516352;min-width:62px;font-size:.85rem;font-weight:800}.move-caption{color:#5b6c5e;text-align:center;margin-top:.55rem;font-size:.85rem}.details-column{min-width:0}.details-column>label{color:#5e6c60;margin-bottom:.3rem;font-size:.77rem;font-weight:800;display:block}.details-column>input{width:100%;min-height:45px;color:inherit;background:#fff;border:1px solid #d5d8cc;border-radius:8px;padding:.55rem .65rem;font-weight:700}.detail-block{border-top:1px solid #ebe9de;margin-top:1.4rem;padding-top:1rem}.description{max-height:300px;margin-top:.7rem;font-size:.9rem;line-height:1.5;overflow-y:auto}.description>:first-child{margin-top:0}.description ul,.description ol{padding-left:1.3rem}.move-comment{font-size:.9rem;line-height:1.45}.move-comment>:first-child{margin-top:.7rem}.move-comment ul,.move-comment ol{padding-left:1.3rem}.metadata{border-top:1px solid #ebe9de;gap:.3rem;margin:1.3rem 0 0;padding-top:1rem;display:grid}.metadata div{grid-template-columns:70px minmax(0,1fr);gap:.5rem;font-size:.82rem;display:grid}.metadata dt{color:#6d796e}.metadata dd{overflow-wrap:anywhere;margin:0;font-weight:650}.lesson-metadata{color:#39483c;gap:.45rem;margin:1.1rem 0 0;font-size:.82rem;display:grid}.lesson-metadata div{grid-template-columns:75px minmax(0,1fr);gap:.5rem;display:grid}.lesson-metadata dt{color:#6b776b}.lesson-metadata dd{overflow-wrap:anywhere;margin:0;font-weight:650}.warning{color:#6e5528;background:#fff7e8;border-left:3px solid #c69a3d;padding:.7rem;font-size:.8rem;line-height:1.4}.preview-empty{text-align:center;flex-direction:column;justify-content:center;align-items:center;height:100%;min-height:0;padding:2rem;display:flex}.preview-empty-icon{color:#a8bd9d;margin-bottom:1rem;font-size:4.5rem}.preview-empty h2{margin:.7rem 0 0}.preview-empty p{color:#6e786d;max-width:23rem;line-height:1.4}.import-summary{width:min(100%,620px);margin:clamp(.5rem,3vh,2rem) auto}.import-summary-header{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:1rem;display:flex}.import-summary-header>div{min-width:0}.import-summary-delete{color:#9c3d36;flex:none}.import-summary h2{margin:.5rem 0 .4rem;font-size:clamp(1.35rem,2vw,2rem)}.summary-type{color:#315f35;background:#e9f3e6;border-radius:999px;padding:.32rem .6rem;font-size:.75rem;font-weight:800;display:inline-block}.summary-count{color:#315f35;background:#f2f8ef;border:1px solid #d7e7d0;border-radius:12px;align-items:baseline;gap:.7rem;margin:1.4rem 0 1.1rem;padding:1.15rem 1.3rem;display:flex}.summary-count strong{font-size:clamp(2.4rem,4vw,4rem);line-height:1}.summary-count span{font-size:1rem;font-weight:800}.summary-count-pair{grid-template-columns:repeat(2,minmax(0,1fr));gap:0;display:grid}.summary-stat{align-content:center;gap:.25rem;display:grid}.summary-stat+.summary-stat{border-left:1px solid #d7e7d0;padding-left:1rem}.import-summary dl{margin:0}.import-summary dl div{border-bottom:1px solid #e6e9df;grid-template-columns:120px minmax(0,1fr);gap:1rem;padding:.6rem .15rem;font-size:.88rem;display:grid}.import-summary dt{color:#667468}.import-summary dd{overflow-wrap:anywhere;margin:0;font-weight:750}.summary-sample{margin-top:1.5rem}.summary-sample ol{gap:.55rem;margin:.7rem 0;padding-left:1.5rem;font-size:.88rem;display:grid}.import-summary>p{color:#667468;margin-top:1.25rem;font-size:.9rem;line-height:1.45}.notice{z-index:10;color:#285230;opacity:0;pointer-events:none;background:#f7fbf5;border:1px solid #b7cbb0;border-radius:10px;max-width:min(480px,100vw - 2rem);padding:.85rem 1rem;transition:all .2s;position:fixed;bottom:1rem;right:1rem;transform:translateY(10px);box-shadow:0 8px 25px #0002}.notice.visible{opacity:1;transform:none}.app-update{z-index:11;background:#fff;border:1px solid #a4c39c;border-radius:10px;align-items:center;gap:.5rem;padding:1rem;display:flex;position:fixed;bottom:1rem;right:1rem;box-shadow:0 8px 25px #0002}.app-update[hidden]{display:none}.app-update button{background:#eef6eb;border:1px solid #9db69a;border-radius:6px;padding:.4rem .6rem}.cm-chessboard .annotation-arrow-G .arrow-line{stroke:#238441;opacity:.78;stroke-linecap:round}.cm-chessboard .annotation-arrow-R .arrow-line{stroke:#cf423c;opacity:.78;stroke-linecap:round}.cm-chessboard .annotation-arrow-B .arrow-line{stroke:#7f8da8;opacity:.78;stroke-linecap:round}.cm-chessboard .annotation-arrow-Y .arrow-line{stroke:#d49b16;opacity:.82;stroke-linecap:round}.cm-chessboard .annotation-arrow-G .arrow-head{fill:#238441}.cm-chessboard .annotation-arrow-R .arrow-head{fill:#cf423c}.cm-chessboard .annotation-arrow-B .arrow-head{fill:#7f8da8}.cm-chessboard .annotation-arrow-Y .arrow-head{fill:#d49b16}.cm-chessboard .marker.annotation-circle-G{stroke:#238441;stroke-width:3.5px;opacity:.9}.cm-chessboard .marker.annotation-circle-R{stroke:#cf423c;stroke-width:3.5px;opacity:.9}.cm-chessboard .marker.annotation-circle-B{stroke:#7f8da8;stroke-width:3.5px;opacity:.9}.cm-chessboard .marker.annotation-circle-Y{stroke:#d49b16;stroke-width:3.5px;opacity:.9}.cm-chessboard .marker.annotation-square-G{fill:#238441;opacity:.38}.cm-chessboard .marker.annotation-square-R{fill:#cf423c;opacity:.38}.cm-chessboard .marker.annotation-square-B{fill:#7f8da8;opacity:.38}.cm-chessboard .marker.annotation-square-Y{fill:#d49b16;opacity:.43}@media (width<=1250px){.content-layout{grid-template-columns:minmax(230px,300px) minmax(0,1fr)}.preview-body{grid-template-columns:1fr}.board-host{max-width:450px}.details-column{grid-template-columns:1fr 1fr;column-gap:1rem;display:grid}.details-column>label,.details-column>input{grid-column:1/-1}.detail-block{margin-top:1rem}}@media (width<=900px){.app-main{grid-template-rows:auto minmax(0,1fr);grid-template-columns:1fr}.collections-panel{max-height:160px}.panel-heading{padding:.75rem 1rem .25rem}.collection-list{padding-bottom:.55rem;display:flex;overflow:auto hidden}.collection-card{flex:0 0 205px}.sidebar-footer{display:none}.content-layout{grid-template-columns:minmax(220px,37%) minmax(0,1fr)}.header-note{display:none}.item-select{min-height:48px}}@media (width<=670px){body{overflow:auto}#app{height:auto;min-height:100dvh;overflow:visible}.app-header{min-height:70px}.brand img{width:110px}.app-main{height:auto;min-height:calc(100dvh - 70px);display:block;overflow:visible}.collections-panel{min-height:130px;margin-bottom:.9rem}.work-area{min-height:0}.collection-header{flex-direction:column;align-items:stretch}.collection-actions{justify-content:flex-start}.publish-actions{justify-content:flex-start;margin-left:0}.content-layout{grid-template-columns:1fr;display:grid;overflow:visible}.items-panel,.preview-panel{min-height:0}.items-list,.groups-list{max-height:330px}.preview-panel{overflow:visible}.preview-body{grid-template-columns:1fr}.details-column{display:block}}@media (width<=430px){.app-header{padding-inline:.65rem}.brand{gap:.45rem}.brand img{width:86px}.brand-title{padding-left:.45rem}.brand-title span{font-size:.58rem}.brand-title h1{font-size:1.3rem}.recovery-key-row{flex-wrap:wrap}.recovery-key-row input{flex-basis:100%}.collection-fields{grid-template-columns:1fr;gap:.35rem}.publish-access{flex-wrap:wrap}}
