*{box-sizing:border-box}body{margin:0;background:#e8ebef;color:#243247;font:14px system-ui,sans-serif}#folder-note{font-size:12px;margin-left:auto}a{color:#17665e}button{border:1px solid #c9cfd7;border-radius:5px;background:white;color:#243247;padding:9px 12px;font:inherit;cursor:pointer}button:hover{background:#e5f3ef}button:disabled{opacity:.45;cursor:default}input,select,textarea{font:inherit;padding:7px;border:1px solid #c9cfd7;border-radius:4px;width:100%;color:#243247;background:white}input[type=checkbox]{width:auto}input[type=color]{height:34px;padding:2px}label{display:block;margin:10px 0}label input,label textarea,label select{margin-top:4px}#status{margin:0;padding:7px 20px;background:#f0f7f4}#status:empty{display:none}.ribbon{padding:10px 20px;background:#dceee9;border-bottom:1px solid #ccd1d8;display:flex;align-items:center;gap:14px;flex-wrap:wrap}.sequence-bar>label{margin:0;display:flex;align-items:center;gap:10px}.ribbon input{width:280px}#save{background:#17665e;color:white}.sequence-bar{display:flex;align-items:center;gap:14px;width:100%;flex-wrap:wrap}.sequence-bar>label{white-space:nowrap}.sequence-bar>label input{margin:0}.sequence-bar>a{white-space:nowrap}.tools{display:flex;align-items:center;flex-wrap:wrap;gap:6px;width:100%;padding-top:10px;border-top:1px solid #bdd6ce}.tools label{margin:0}.tools input{width:190px;font-size:12px}.workspace{display:grid;grid-template-columns:185px minmax(0,1fr) 260px;min-height:calc(100vh - 200px)}#slides-editor{padding:16px;overflow:auto;max-height:calc(100vh - 200px);border-right:1px solid #ccd1d8}.thumbnail{display:block;width:100%;margin-bottom:16px;padding:6px;text-align:left}.thumbnail.active{outline:2px solid #24877b}.mini{position:relative;aspect-ratio:16/9;overflow:hidden;background:white;pointer-events:none;margin-bottom:5px;container-type:inline-size}.mini .object{outline:0!important}.stage{padding:32px 24px;text-align:center;overflow:hidden}#canvas{position:relative;aspect-ratio:16/9;width:100%;background:white;box-shadow:0 3px 15px #0002;overflow:hidden;container-type:inline-size;text-align:left}.object{position:absolute;touch-action:none;cursor:move;outline:none;white-space:pre-wrap;overflow-wrap:anywhere;line-height:1.2}.object img{width:100%;height:100%;object-fit:contain;pointer-events:none;display:block}.object.selected{outline:2px solid #24877b;outline-offset:-2px}.object[contenteditable=true]{cursor:text;touch-action:auto;overflow:auto}.resize{position:absolute;right:0;bottom:0;width:14px;height:14px;background:white;border:2px solid #24877b;cursor:nwse-resize}.stage>p{color:#607086;font-size:12px}.properties{padding:12px 16px;background:#fafbfc;border-left:1px solid #ccd1d8;overflow:auto;max-height:calc(100vh - 200px)}h2{font-size:16px}.properties fieldset{padding:0;border:0}.properties textarea{min-height:80px}.geometry{display:grid;grid-template-columns:1fr 1fr;gap:8px}.properties button{margin:3px 0}@media(max-width:1000px){.workspace{grid-template-columns:130px minmax(0,1fr) 220px}.stage{padding:24px 12px}}@media(max-width:700px){.workspace{grid-template-columns:100px minmax(0,1fr)}.properties{grid-column:1/-1;max-height:none}.stage{padding:20px 10px}.sequence-bar>label{width:100%;white-space:normal}#folder-note{margin-left:0}.ribbon input{width:100%}#slides-editor{max-height:500px}}
[hidden]{display:none!important}

.tools{align-items:stretch;gap:16px}
.tool-group{padding-right:16px;border-right:1px solid #bdd6ce}
.group-buttons,.history-tools{display:flex;gap:6px;flex-wrap:wrap}
.tools button{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px;min-width:78px;min-height:68px;padding:8px 12px}
.tool-icon{font-size:24px;line-height:1.2}
.tool-group h2{margin:7px 0 0;text-align:center;font-size:12px;font-weight:600;color:#496d65}
.history-tools{align-items:flex-start}
@media(max-width:700px){.tools{gap:10px}.tool-group{padding-right:10px}.tools button{min-width:70px;padding:8px;font-size:12px}}

.thumbnail{position:relative;touch-action:none;user-select:none;cursor:grab}
.thumbnail.dragging{opacity:.45;cursor:grabbing}
.thumbnail.drop-before::before,.thumbnail.drop-after::after{content:"";position:absolute;left:-4px;right:-4px;height:4px;background:#24877b;border-radius:4px}
.thumbnail.drop-before::before{top:-10px}.thumbnail.drop-after::after{bottom:-10px}

/* A single ribbon row, with each group wrapping as a unit when needed. */
.ribbon{gap:16px;align-items:stretch}
.sequence-bar{width:auto;flex:0 1 auto;display:grid;grid-template-columns:auto minmax(170px,250px) auto auto;align-content:center;align-items:center;gap:8px 12px;padding-right:16px;border-right:1px solid #bdd6ce}
.sequence-bar>label{display:flex;flex-direction:column;align-items:flex-start;gap:4px;grid-row:1 / 3;grid-column:2}
.sequence-bar>label input{width:100%;min-width:0}
.sequence-bar>a:first-child{grid-column:1;grid-row:1 / 3}
.sequence-bar #save{grid-column:3;grid-row:1 / 3}
.sequence-bar #view{grid-column:4;grid-row:1 / 3}
.sequence-bar #delete-topic{grid-column:1 / 3;grid-row:3;justify-self:start;padding:4px 8px;font-size:12px}
#folder-note{grid-column:3 / 5;grid-row:3;margin:0;font-size:11px;text-align:right}
.tools{width:auto;flex:1 1 auto;border-top:0;padding-top:0;align-items:stretch}
.tool-group{display:flex;flex-direction:column;justify-content:center}
.history-tools{align-items:center}
@media(max-width:1100px){.sequence-bar{grid-template-columns:auto minmax(150px,210px) auto auto}.tools{flex-wrap:wrap}}
@media(max-width:700px){.sequence-bar{width:100%;padding-right:0;border-right:0;grid-template-columns:auto minmax(0,1fr) auto;gap:8px}.sequence-bar>label{width:auto;grid-row:1;grid-column:2}.sequence-bar>a:first-child{grid-row:1}.sequence-bar #save{grid-row:1}.sequence-bar #view{grid-row:2;grid-column:3}.sequence-bar #delete-topic{grid-row:2;grid-column:1}#folder-note{grid-row:2;grid-column:2;text-align:left}.tools{width:100%}}

.sequence-bar{grid-template-columns:auto minmax(140px,220px) auto auto;align-content:start;gap:6px 8px;padding-top:0}
.sequence-bar>label{grid-row:1;align-self:center;margin:0;font-size:12px}
.sequence-bar>a:first-child,.sequence-bar #save,.sequence-bar #view{grid-row:1}
.sequence-bar .ribbon-action,.sequence-bar #save{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px;min-width:70px;min-height:68px;padding:8px 10px;border:1px solid #c9cfd7;border-radius:5px;background:white;color:#243247;text-decoration:none;font-size:14px}
.sequence-bar #save{background:#17665e;color:white}
.sequence-bar .ribbon-action:hover{background:#e5f3ef}
.sequence-bar .sequence-label{grid-row:2;grid-column:1 / -1;text-align:center;margin:1px 0 0;font-size:12px;font-weight:600;color:#496d65}
.navigation-group{border-right:0;padding-right:0}
@media(max-width:700px){.sequence-bar{grid-template-columns:auto minmax(0,1fr) auto auto}.sequence-bar #view{grid-row:1;grid-column:4}.sequence-bar #delete-topic{grid-row:3;grid-column:1 / 3}#folder-note{grid-row:3;grid-column:3 / 5;text-align:right}.sequence-bar .ribbon-action,.sequence-bar #save{min-width:48px;padding:8px 5px;font-size:12px}.sequence-bar .tool-icon{font-size:22px}.sequence-bar>label{grid-row:1;grid-column:2}}

.document-heading{padding:12px 20px 8px;background:#dceee9}
#rename-title{display:inline-flex;align-items:center;gap:12px;max-width:100%;padding:4px 0;border:0;background:transparent;color:#243247;font-size:22px;font-weight:650;text-align:left;overflow-wrap:anywhere}
#rename-title:hover{color:#17665e}.rename-hint{font-size:17px;color:#496d65}
.sequence-bar{grid-template-columns:repeat(3,auto)}
.sequence-bar #save{grid-column:2}.sequence-bar #view{grid-column:3}
.sequence-bar #delete-topic{grid-column:1 / 3}#folder-note{grid-column:3;grid-row:3}
@media(max-width:700px){.sequence-bar{width:auto;grid-template-columns:repeat(3,auto)}.sequence-bar #save{grid-column:2;grid-row:1}.sequence-bar #view{grid-column:3;grid-row:1}.sequence-bar #delete-topic{grid-column:1 / 3}#folder-note{grid-column:3}.document-heading{padding:10px 20px 4px}#rename-title{font-size:20px}}

.workspace{height:var(--workspace-height,calc(100dvh - 170px));min-height:0}
#slides-editor,.properties{height:100%;max-height:none;min-height:0;overflow:auto}
.stage{display:flex;align-items:center;justify-content:center;min-height:0;padding:20px;container-type:size}
#canvas{flex:none;width:min(100%,calc((var(--workspace-height,calc(100dvh - 170px)) - 40px) * 16 / 9));max-height:100%;aspect-ratio:16 / 9}
@supports(width:1cqh){#canvas{width:min(100cqw,calc(100cqh * 16 / 9))}}
@media(max-width:700px){.workspace{height:auto;grid-template-rows:minmax(180px,calc(var(--workspace-height) - 20px)) auto}#slides-editor{height:100%;max-height:none}.stage{padding:10px;min-height:0}.properties{height:auto;overflow:visible}#canvas{width:min(100%,calc((var(--workspace-height) - 40px) * 16 / 9))}@supports(width:1cqh){#canvas{width:min(100cqw,calc(100cqh * 16 / 9))}}}

.sequence-bar{grid-template-columns:repeat(4,auto)}
.sequence-bar #delete-topic{grid-column:4;grid-row:1;justify-self:stretch;padding:8px 10px;font-size:14px;color:#94362f}
#folder-note{grid-column:1 / -1}
@media(max-width:700px){.sequence-bar{grid-template-columns:repeat(4,auto)}.sequence-bar #delete-topic{grid-column:4;grid-row:1;padding:8px 5px;font-size:12px}#folder-note{grid-column:1 / -1}}

.document-heading{display:flex;align-items:center;gap:16px}
.back-to-slides{flex:none;padding:6px 9px;border:1px solid #bdd6ce;border-radius:5px;background:#f5faf8;color:#17665e;font-size:12px;text-decoration:none;white-space:nowrap}
.back-to-slides:hover{background:#e5f3ef}
.sequence-bar{grid-template-columns:repeat(3,auto)}
.sequence-bar #save{grid-column:1}.sequence-bar #view{grid-column:2}.sequence-bar #delete-topic{grid-column:3}
@media(max-width:700px){.document-heading{gap:10px}.sequence-bar{grid-template-columns:repeat(3,auto)}.sequence-bar #save{grid-column:1}.sequence-bar #view{grid-column:2}.sequence-bar #delete-topic{grid-column:3}}

#worksheet-dialog{width:min(520px,calc(100% - 32px));max-height:85dvh;overflow:auto;border:1px solid #bdd6ce;border-radius:10px;padding:24px;color:#243247}
#worksheet-dialog::backdrop{background:#142b4866}.worksheet-row{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:8px 0}.worksheet-row span{overflow-wrap:anywhere}.worksheet-actions{display:flex;gap:8px;flex-wrap:wrap}#worksheet-status{font-size:13px}

.image-crop-frame{position:relative;width:100%;height:100%;overflow:hidden;pointer-events:none}

#crop-dialog{width:min(760px,calc(100% - 32px));max-height:90dvh;overflow:auto;padding:24px;border:1px solid #bdd6ce;border-radius:10px;color:#243247}#crop-dialog::backdrop{background:#142b4866}
#crop-stage{position:relative;width:fit-content;max-width:100%;margin:12px auto 20px;overflow:hidden;touch-action:none;user-select:none}
#crop-preview{display:block;max-width:100%;max-height:55dvh;pointer-events:none}
#crop-selection{position:absolute;border:2px solid #fff;outline:1px solid #17665e;box-shadow:0 0 0 1000px #0007;cursor:move}
#crop-handle{position:absolute;bottom:-2px;right:-2px;width:18px;height:18px;background:#17665e;border:2px solid white;cursor:nwse-resize}

#upload-progress{display:flex;align-items:center;gap:12px;padding:0 20px 10px;background:#f0f7f4}
#upload-bar{width:min(500px,100%);height:14px;accent-color:#17665e}#upload-percent{font-size:12px;min-width:40px}
