:root{--bg:#f6f6f7;--panel:#f3f3f4;--active:#e8e8ea;--text:#111;--muted:#8b8b90;--line:#ececee;--accent:#6d4dff;--accent-hover:#5b3de6;color:var(--text);background:var(--bg);font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;font:14px/1.4 Inter,system-ui,sans-serif}*{box-sizing:border-box}html,body,#root{height:100%;margin:0}button,input,select,textarea{font:inherit;color:inherit}button{cursor:pointer;background:0 0;border:0;border-radius:10px;padding:6px 10px}button:hover:not(:disabled){background:var(--active)}button:disabled{opacity:.4;cursor:not-allowed}.icon-btn{color:#3a3a3e;border-radius:10px;flex:none;place-items:center;width:32px;height:32px;padding:0;display:inline-grid}.icon-btn.is-on{background:var(--active);color:var(--text)}.icon-btn.btn-primary{background:var(--accent);color:#fff;border-radius:999px}.icon-btn.btn-primary:hover:not(:disabled){background:var(--accent-hover)}.icon-row{align-items:center;gap:2px;display:flex}:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.app{grid-template-rows:auto minmax(0,1fr);height:100%;display:grid;position:relative}.topbar{border-bottom:1px solid var(--line);background:#fff;align-items:center;gap:4px;min-height:48px;padding:6px 12px;display:flex}.title-input{background:0 0;border:1px solid #0000;border-radius:10px;width:220px;padding:6px 8px;font-weight:600}.title-input:hover,.title-input:focus{border-color:var(--line);background:#fff}.insert-group,.topbar-actions,.panel-actions,.slideshow-actions,.format-row{flex-wrap:wrap;align-items:center;gap:2px;display:flex}.toolbar-sep{background:var(--line);flex:none;width:1px;height:16px;margin:0 6px}.topbar-actions{margin-left:auto}.properties-toggle{display:none}.workspace{grid-template-columns:220px minmax(0,1fr) 280px;min-height:0;display:grid}.slide-list,.properties{background:var(--panel);flex-direction:column;min-height:0;display:flex}.panel-head{justify-content:space-between;align-items:center;gap:8px;min-height:48px;padding:8px 12px;display:flex}.panel-head h2{margin:0;font-size:13px;font-weight:600}.thumbs{flex-direction:column;gap:4px;padding:0 8px 8px;display:flex;overflow:auto}.thumb{text-align:left;width:100%;color:var(--muted);background:0 0;border-radius:10px;flex-direction:column;align-items:stretch;gap:6px;padding:8px;font-size:12px;display:flex}.thumb:hover:not(:disabled),.thumb.is-active,.thumb.is-active:hover{background:var(--active);color:var(--text)}.thumb .slide-view{pointer-events:none;flex:none;box-shadow:0 0 0 1px #00000014}.panel-actions{border-top:1px solid var(--line);padding:8px 12px}.layer-row{padding:0 12px 8px}.canvas,.slideshow-stage{place-items:center;min-width:0;min-height:0;display:grid}.canvas{background:var(--bg)}.slide-frame{background:repeating-conic-gradient(#d9d9dc 0% 25%,#fff 0% 50%) 0 0/16px 16px;position:relative;box-shadow:0 8px 28px #00000014}.slide-view{background:#fff;position:relative;overflow:hidden}.slide-object{cursor:move;touch-action:none;position:absolute}.slide-object.is-editing{cursor:text}.slide-table{border-collapse:collapse;table-layout:fixed;width:100%;height:100%}.slide-table td{vertical-align:middle;box-sizing:border-box;padding:0 4px;overflow:hidden}.slide-table .slide-text{height:auto}.cell-grid{gap:4px;display:grid}.cell-grid input{border:1px solid var(--line);background:#fff;border-radius:8px;width:100%;min-width:0;padding:4px 6px}.slide-text{white-space:pre-wrap;word-break:break-word;-webkit-user-select:none;user-select:none;width:100%;height:100%;line-height:1.15;overflow:hidden}.slide-text-edit{-webkit-user-select:text;user-select:text;outline:none}.slide-shape,.slide-image,.image-placeholder{width:100%;height:100%;display:block}.slide-shape{box-sizing:border-box}.slide-image{object-fit:fill;pointer-events:none}.image-placeholder{background:var(--panel);color:var(--muted);place-items:center;display:grid}.selection{border:1.5px solid var(--accent);pointer-events:none;z-index:2;position:absolute}.handle{border:1.5px solid var(--accent);pointer-events:auto;background:#fff;border-radius:2px;width:10px;height:10px;padding:0;position:absolute;transform:translate(-50%,-50%)}.handle:hover:not(:disabled){background:#fff}.handle-nw{cursor:nwse-resize;top:0;left:0}.handle-n{cursor:ns-resize;top:0;left:50%}.handle-ne{cursor:nesw-resize;top:0;left:100%}.handle-e{cursor:ew-resize;top:50%;left:100%}.handle-se{cursor:nwse-resize;top:100%;left:100%}.handle-s{cursor:ns-resize;top:100%;left:50%}.handle-sw{cursor:nesw-resize;top:100%;left:0}.handle-w{cursor:ew-resize;top:50%;left:0}.fields{flex-direction:column;gap:10px;padding:0 12px 16px;display:flex;overflow:auto}.field{color:var(--muted);flex-direction:column;gap:4px;font-size:12px;display:flex}.field input,.field select,.field textarea{border:1px solid var(--line);width:100%;color:var(--text);background:#fff;border-radius:10px;padding:6px 8px}.color-control{align-items:center;gap:8px;display:flex}.color-swatch{border:1px solid var(--line);background-image:linear-gradient(var(--swatch), var(--swatch)), repeating-conic-gradient(#d9d9dc 0% 25%, #fff 0% 50%);background-size:auto,8px 8px;border-radius:8px;flex:none;width:32px;height:32px;position:relative;overflow:hidden}.field .color-swatch input[type=color]{opacity:0;cursor:pointer;border:0;border-radius:0;width:100%;height:100%;margin:0;padding:0;position:absolute;inset:0}.field .color-control input[type=range]{width:auto;min-width:0;accent-color:var(--accent);background:0 0;border:0;flex:1;padding:0}.color-alpha-value{text-align:right;font-variant-numeric:tabular-nums;width:2.75rem;color:var(--text);flex:none}.field textarea{resize:vertical}.check{color:var(--text);align-items:center;gap:8px;display:flex}.geometry{grid-template-columns:1fr 1fr;gap:8px;display:grid}.hint{color:var(--muted);margin:0;font-size:12px}.banner{z-index:5;color:#8a2418;background:#fff4f2;border:1px solid #efc4be;border-radius:12px;align-items:center;gap:12px;max-width:min(560px,100% - 32px);padding:8px 8px 8px 12px;display:flex;position:absolute;top:56px;left:50%;transform:translate(-50%);box-shadow:0 8px 24px #00000014}.slideshow{z-index:20;color:#f5f5f5;background:#111;grid-template-rows:auto minmax(0,1fr);display:grid;position:fixed;inset:0}.slideshow-bar{align-items:center;gap:12px;padding:8px 12px;display:flex}.slideshow-actions{margin-left:auto}.slideshow .icon-btn{color:#f5f5f5}.slideshow .icon-btn:hover:not(:disabled){background:#ffffff1f}.slideshow .slide-view{box-shadow:0 18px 50px #00000073}@media (width<=960px){.topbar{flex-wrap:wrap;row-gap:2px}.title-input{flex:120px;width:auto;min-width:0}.topbar-actions{margin-left:0}.properties-toggle{display:inline-grid}.workspace{grid-template-columns:72px minmax(0,1fr);position:relative}.slide-list{overflow:hidden}.slide-list .panel-head{justify-content:center;padding:4px}.slide-list .panel-head h2,.thumb span{display:none}.thumbs{padding:0 4px 4px}.thumb{padding:4px}.panel-actions{flex-direction:column;align-items:center;padding:4px}.properties{display:none}.properties.is-open{z-index:6;width:min(280px,100%);display:flex;position:absolute;top:0;bottom:0;right:0;box-shadow:-8px 0 24px #0000001f}}
