:root{--bg:#eef6ff;--ink:#172033;--muted:#5b677a;--line:#cbd8ea;--panel:#fffaf0;--accent:#0f8fa8}*{box-sizing:border-box}body{background:var(--bg);color:var(--ink);margin:0;font-family:Arial,Helvetica,sans-serif}a{color:inherit}.shell{min-height:100vh;padding:32px}.stack{gap:20px;max-width:1040px;display:grid}.panel{background:var(--panel);border:1px solid var(--line);border-radius:8px;padding:20px}.nav{flex-wrap:wrap;gap:12px;display:flex}.button{border:1px solid var(--accent);min-height:40px;color:var(--accent);border-radius:8px;align-items:center;padding:8px 14px;text-decoration:none;display:inline-flex}.primary-button{background:var(--accent);color:#fff}.button:disabled{cursor:not-allowed;opacity:.55}.text-button{color:#8f1f1f;cursor:pointer;min-height:40px;font:inherit;background:0 0;border:0;padding:8px 10px}.field{color:var(--ink);gap:8px;font-size:14px;font-weight:600;display:grid}.field input{border:1px solid var(--line);width:100%;min-height:44px;color:var(--ink);font:inherit;background:#fff;border-radius:8px;padding:10px 12px;font-weight:400}.field textarea{resize:vertical;border:1px solid var(--line);width:100%;min-height:120px;color:var(--ink);font:inherit;background:#fff;border-radius:8px;padding:10px 12px;font-weight:400;line-height:1.5}.field input:focus,.field textarea:focus{border-color:var(--accent);outline:3px solid #0f8fa82e}.compact-field{min-width:min(260px,100%)}.library-grid{grid-template-columns:minmax(260px,340px) minmax(0,1fr);gap:20px;display:grid}.library-upload{align-content:start;gap:18px;display:grid}.library-list{gap:20px;display:grid}.library-list-header{justify-content:space-between;align-items:flex-end;gap:16px;display:flex}.icon-grid{grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:14px;display:grid}.icon-card{border:1px solid var(--line);background:#fff;border-radius:8px;grid-template-rows:136px auto;min-width:0;display:grid;overflow:hidden}.icon-preview{background-color:#f8fbff;background-image:linear-gradient(45deg,#cbd8ea66 25%,#0000 25%),linear-gradient(-45deg,#cbd8ea66 25%,#0000 25%),linear-gradient(45deg,#0000 75%,#cbd8ea66 75%),linear-gradient(-45deg,#0000 75%,#cbd8ea66 75%),none;background-position:0 0,0 8px,8px -8px,-8px 0;background-repeat:repeat,repeat,repeat,repeat,repeat;background-size:16px 16px;background-attachment:scroll,scroll,scroll,scroll,scroll;background-origin:padding-box,padding-box,padding-box,padding-box,padding-box;background-clip:border-box,border-box,border-box,border-box,border-box;justify-content:center;align-items:center;padding:16px;display:flex}.icon-preview img{object-fit:contain;width:auto;max-width:104px;height:auto;max-height:104px}.icon-card-body{gap:12px;padding:14px;display:grid}.icon-card h3{overflow-wrap:anywhere;margin:0;font-size:16px;line-height:1.35}.icon-actions{justify-content:space-between;align-items:center;gap:8px;display:flex}.empty-state{border:1px dashed var(--line);border-radius:8px;padding:28px}.config-list{gap:8px;margin:0;padding-left:18px;display:grid}.status{border-radius:8px;margin:0;padding:10px 12px}.status.success{color:#17613a;background:#e7f8ef}.status.error{color:#8f1f1f;background:#fdecec}.status.warning{color:#744d00;background:#fff6db}.prepare-grid{grid-template-columns:minmax(300px,420px) minmax(0,1fr);gap:20px;display:grid}.prepare-form,.prepare-output{align-content:start;gap:18px;display:grid}.form-row{grid-template-columns:1fr 1fr;gap:12px;display:grid}.json-output{color:#d7f9ff;white-space:pre-wrap;background:#101827;border-radius:8px;max-height:620px;margin:0;padding:16px;font-size:13px;line-height:1.5;overflow:auto}.approval-grid{grid-template-columns:minmax(340px,1fr) minmax(360px,.9fr);gap:20px;display:grid}.approval-column,.approval-panel{min-width:0}.approval-panel{align-content:start;gap:18px;display:grid}.approval-header-row{justify-content:space-between;align-items:flex-start;gap:14px;display:flex}.board-preview-list,.asset-editor-list{gap:16px;display:grid}.board-page-preview{border:1px solid var(--line);border-radius:8px;gap:14px;min-height:260px;padding:16px;display:grid;overflow:hidden}.board-block-list{gap:12px;display:grid}.compact-board-field input,.compact-board-field textarea{min-height:38px}.board-pill-editor{background:#ffffffb8;border:1px solid #0f8fa838;border-radius:999px;grid-template-columns:44px 1fr;align-items:center;gap:8px;padding:8px 12px;display:grid}.board-pill-editor span{color:var(--muted);font-size:12px;font-weight:700}.board-pill-editor input,.asset-label-input{border:1px solid var(--line);color:var(--ink);font:inherit;border-radius:8px;width:100%;min-width:0;min-height:38px;padding:8px 10px}.board-card-editor{border:2px solid;border-radius:8px;gap:10px;padding:12px;display:grid}.asset-editor-card{border:1px solid var(--line);background:#fff;border-radius:8px;gap:14px;min-width:0;padding:14px;display:grid}.segmented-control{border:1px solid var(--line);background:#eef4fb;border-radius:8px;grid-template-columns:repeat(2,minmax(0,1fr));gap:4px;padding:4px;display:grid}.segmented-control button{color:var(--muted);cursor:pointer;font:inherit;background:0 0;border:0;border-radius:6px;min-height:38px;font-weight:800}.segmented-control button[aria-pressed=true]{color:var(--ink);background:#fff;box-shadow:0 1px 5px #0f172a1a}.asset-card-topline{grid-template-columns:minmax(0,1fr) auto;align-items:start;gap:10px;display:grid}.asset-type{color:var(--accent);text-transform:uppercase;margin:0 0 6px;font-size:12px;font-weight:800}.asset-formula-preview,.asset-text-preview,.asset-3d-preview{color:#39e0f0;background:#101827f0;border-radius:8px;min-height:140px;padding:14px;overflow:hidden}.asset-formula-preview{justify-content:center;align-items:center;display:flex}.asset-text-preview{align-items:center;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;line-height:1.5;display:flex}.asset-diagram-preview,.asset-shape-preview{border:1px solid var(--line);background:#f8fbff;border-radius:8px;width:100%;height:180px;display:block}.asset-3d-preview{padding:0}.asset-3d-preview canvas{width:100%;height:150px;display:block}.scenario-link{color:inherit;margin-left:12px;font-weight:800;display:inline-flex}.live-page{min-height:calc(100vh - 64px)}.live-shell{grid-template-columns:minmax(0,1fr) 320px;gap:18px;height:calc(100vh - 64px);min-height:620px;display:grid}.live-stage-surface{background:#0b1020;border:1px solid #39e0f03d;border-radius:8px;min-height:0;position:relative;overflow:hidden}.live-video-placeholder{height:100%;position:absolute;inset:0}.live-camera-video{object-fit:cover;opacity:.94;width:100%;height:100%;position:absolute;inset:0;scale:-1 1}.live-video-placeholder:before{content:"";background:radial-gradient(circle at 50% 36%,#39e0f033,#0000 34%),linear-gradient(145deg,#121e34f5,#040712fa);position:absolute;inset:0}.live-video-grid{opacity:.42;background-image:linear-gradient(#39e0f014 1px,#0000 1px),linear-gradient(90deg,#39e0f014 1px,#0000 1px);background-size:44px 44px;position:absolute;inset:0}.live-overlay-layer{pointer-events:none;position:absolute;inset:0}.live-asset-card{cursor:grab;filter:drop-shadow(0 0 6px #39e0f08c);pointer-events:auto;min-width:220px;max-width:min(320px,36vw);scale:var(--live-scale,1);touch-action:none;-webkit-user-select:none;user-select:none;animation:.55s ease-out both live-pop;position:absolute}.live-asset-card[data-asset-type=formula],.live-asset-card[data-asset-type=shape],.live-asset-card[data-asset-type=model3d]{min-width:200px;max-width:min(260px,30vw)}.live-asset-card[data-asset-type=text]{min-width:260px;max-width:min(340px,36vw)}.live-asset-card[data-asset-type=diagram]{min-width:260px;max-width:min(330px,36vw)}.live-asset-card:active{cursor:grabbing}.live-asset-card.is-selected{outline-offset:4px;outline:2px solid #39e0f0d1}.live-asset-card .asset-formula-preview,.live-asset-card .asset-text-preview,.live-asset-card .asset-3d-preview{box-shadow:none;text-shadow:0 1px 10px #040712e6;background:0 0;border-color:#0000}.live-asset-card .asset-diagram-preview,.live-asset-card .asset-shape-preview{background:0 0;border-color:#0000}.live-asset-card .asset-shape-preview path,.live-asset-card .asset-shape-preview circle,.live-asset-card .asset-shape-preview rect{stroke-dasharray:360;stroke-dashoffset:360px;animation:.7s ease-out both live-stroke}.live-asset-label{color:#d7f9ff;letter-spacing:0;background:#070d1cdb;border:1px solid #39e0f057;border-radius:8px 8px 0 0;padding:7px 10px;font-size:12px;font-weight:800}.live-control-panel{border:1px solid var(--line);background:#fffaf0;border-radius:8px;align-content:start;gap:16px;min-width:0;padding:18px;display:grid;overflow:auto}.live-control-panel h2{margin:0 0 6px;font-size:20px;line-height:1.25}.live-status{color:var(--muted);margin:0}.live-actions{grid-template-columns:1fr;gap:10px;display:grid}.danger-button{color:#8f1f1f;border-color:#8f1f1f}.voice-active-button{color:#0b1020;background:#39e0f0;border-color:#39e0f0;box-shadow:0 0 18px #39e0f08c}.live-asset-queue{gap:8px;display:grid}.live-queue-item{border:1px solid var(--line);color:var(--ink);cursor:pointer;font:inherit;text-align:left;background:#fff;border-radius:8px;grid-template-columns:28px minmax(0,1fr);align-items:center;gap:10px;min-height:42px;padding:8px 10px;display:grid}.live-queue-order{color:#17613a;background:#e7f8ef;border-radius:999px;justify-content:center;align-items:center;width:24px;height:24px;font-size:12px;font-weight:800;display:inline-flex}.live-queue-copy{gap:2px;display:grid}.live-queue-copy small{color:var(--muted);font-size:11px;font-weight:500}@keyframes live-pop{0%{filter:drop-shadow(0 0 18px #39e0f0);opacity:0;transform:scale(.6)}to{filter:drop-shadow(0 0 6px #39e0f08c);opacity:1;transform:scale(1)}}@keyframes live-stroke{to{stroke-dashoffset:0}}@media (prefers-reduced-motion:reduce){.live-asset-card,.live-asset-card .asset-shape-preview path,.live-asset-card .asset-shape-preview circle,.live-asset-card .asset-shape-preview rect{animation:none}}@media (max-width:820px){.shell{padding:20px}.library-grid,.prepare-grid,.approval-grid{grid-template-columns:1fr}.library-list-header{flex-direction:column;align-items:stretch}.form-row,.approval-header-row,.asset-card-topline{grid-template-columns:1fr}.approval-header-row{display:grid}.live-shell{grid-template-columns:1fr;height:auto}.live-stage-surface{min-height:62vh}.live-asset-card{min-width:min(240px,76vw);max-width:min(330px,86vw)}}:root{--bg:#f5f7fb;--bg-deep:#edf1f8;--ink:#111827;--ink-soft:#30394b;--muted:#6b7280;--line:#e2e7f0;--line-strong:#d4dbe8;--panel:#ffffffeb;--accent:#6d5dfc;--accent-dark:#5646e8;--accent-soft:#efedff;--cyan:#06a9c6;--amber:#e88b25;--success:#12a06a;--danger:#d94b5b;--shadow-sm:0 1px 2px #131d360a, 0 4px 14px #131d360d;--shadow-md:0 18px 50px #1c264517;--shadow-accent:0 14px 28px #6d5dfc3d}html{scroll-behavior:smooth;min-width:320px}body{background:radial-gradient(circle at 10% 0%, #6d5dfc14, transparent 27rem), radial-gradient(circle at 95% 8%, #06a9c60f, transparent 24rem), var(--bg);color:var(--ink);text-rendering:optimizelegibility;min-height:100vh;font-family:Inter,ui-sans-serif,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-size:15px;line-height:1.55}button,input,textarea,select{font-family:inherit}button,a{-webkit-tap-highlight-color:transparent}a{text-decoration:none}h1,h2,h3,p{margin-top:0}h1{letter-spacing:-.045em;margin-bottom:14px;font-size:clamp(2rem,4vw,3rem);line-height:1.08}h2{letter-spacing:-.025em;margin-bottom:8px;font-size:1.28rem;line-height:1.25}h3{letter-spacing:-.01em;margin-bottom:6px;font-size:1rem}.muted{color:var(--muted)}.eyebrow{color:var(--accent);letter-spacing:.14em;text-transform:uppercase;margin:0 0 9px;font-size:11px;font-weight:800}.shell{width:100%;max-width:1480px;min-height:calc(100vh - 76px);margin:0 auto;padding:42px clamp(24px,4vw,64px) 72px}.stack{gap:28px;width:100%;max-width:1280px;margin:0 auto}.app-header{-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);z-index:100;background:#fafbfddb;border-bottom:1px solid #d9dfebcc;height:76px;position:sticky;top:0}.app-header-inner{grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:clamp(20px,4vw,52px);max-width:1480px;height:100%;margin:0 auto;padding:0 clamp(24px,4vw,64px);display:grid}.brand{align-items:center;gap:11px;min-width:max-content;display:inline-flex}.brand-mark{color:#fff;letter-spacing:-.04em;background:linear-gradient(145deg,#7869ff,#5141de);border-radius:12px;justify-content:center;align-items:center;width:38px;height:38px;font-size:13px;font-weight:900;display:inline-flex;box-shadow:0 8px 18px #5444e040,inset 0 1px #ffffff47}.brand>span:last-child{line-height:1.08;display:grid}.brand strong{letter-spacing:-.02em;font-size:15px}.brand small{color:#8b93a4;margin-top:4px;font-size:10px;font-weight:600}.app-nav{align-items:center;gap:6px;display:flex}.app-nav a{color:#677083;border-radius:11px;align-items:center;gap:8px;min-height:42px;padding:0 13px;font-size:13px;font-weight:650;transition:background .16s,color .16s,transform .16s;display:inline-flex}.app-nav a:hover{color:var(--ink);background:#eff2f8}.app-nav a.active{background:var(--accent-soft);color:var(--accent-dark)}.nav-icon{fill:none;stroke:currentColor;stroke-linecap:round;stroke-linejoin:round;stroke-width:1.8px;width:17px;height:17px}.account-menu,.guest-nav{justify-self:end;align-items:center;gap:8px;display:flex}.account-link{border-radius:12px;align-items:center;gap:9px;padding:5px 8px 5px 5px;transition:background .16s;display:inline-flex}.account-link:hover{background:#eef1f7}.avatar{color:#fff;background:linear-gradient(145deg,#1d2739,#44506a);border:2px solid #fff;border-radius:11px;justify-content:center;align-items:center;width:34px;height:34px;font-size:12px;font-weight:800;display:inline-flex;box-shadow:0 2px 8px #141d3029}.account-name{text-overflow:ellipsis;white-space:nowrap;max-width:110px;font-size:13px;font-weight:700;overflow:hidden}.logout-button{color:#8a93a5;cursor:pointer;background:0 0;border:0;border-radius:10px;align-items:center;gap:6px;min-height:38px;padding:0 8px;display:inline-flex}.logout-button:hover{color:var(--danger);background:#fff0f2}.logout-button svg{fill:none;stroke:currentColor;stroke-linecap:round;stroke-linejoin:round;stroke-width:1.8px;width:17px;height:17px}.logout-button span{font-size:12px;font-weight:650}.panel{background:var(--panel);box-shadow:var(--shadow-sm);border:1px solid #dde3eeeb;border-radius:20px;padding:clamp(20px,2.5vw,30px)}.button{border:1px solid var(--line-strong);color:var(--ink-soft);cursor:pointer;background:#fff;border-radius:12px;justify-content:center;align-items:center;gap:8px;min-height:44px;padding:9px 16px;font-size:13px;font-weight:750;transition:border-color .16s,box-shadow .16s,transform .16s,background .16s;display:inline-flex}.button:hover:not(:disabled){border-color:#b9c2d2;transform:translateY(-1px);box-shadow:0 6px 18px #1f2a4614}.primary-button{color:#fff;background:linear-gradient(135deg,#7668ff,#5b4bea);border-color:#0000;box-shadow:0 8px 18px #5a49eb33}.primary-button:hover:not(:disabled){box-shadow:var(--shadow-accent);background:linear-gradient(135deg,#6c5dfa,#5141df);border-color:#0000}.button:disabled{box-shadow:none;cursor:not-allowed;filter:saturate(.5);opacity:.55}.text-button{color:var(--danger);border-radius:10px;font-size:12px;font-weight:700}.text-button:hover{background:#fff0f2}.field{color:#343d50;gap:8px;font-size:13px;font-weight:700}.field input,.field textarea,.field select,.asset-label-input,.board-pill-editor input{appearance:none;color:var(--ink);background:#fbfcfe;border:1px solid #dce2ec;border-radius:12px;outline:none;width:100%;min-height:46px;padding:11px 13px;font-size:14px;font-weight:450;transition:border-color .16s,box-shadow .16s,background .16s;box-shadow:inset 0 1px 2px #161f3406}.field textarea{min-height:140px;line-height:1.55}.field select{background-image:linear-gradient(45deg,#0000 50%,#7d879a 50%),linear-gradient(135deg,#7d879a 50%,#0000 50%);background-position:calc(100% - 17px) 20px,calc(100% - 12px) 20px;background-repeat:no-repeat;background-size:5px 5px,5px 5px;padding-right:34px}.field input[type=file]{color:#737d90;min-height:48px;padding:8px}.field input[type=file]::file-selector-button{background:var(--accent-soft);color:var(--accent-dark);cursor:pointer;font:inherit;border:0;border-radius:8px;margin-right:10px;padding:7px 11px;font-weight:700}.field input:focus,.field textarea:focus,.field select:focus,.asset-label-input:focus,.board-pill-editor input:focus{background:#fff;border-color:#8174ff;outline:none;box-shadow:0 0 0 4px #6d5dfc1f}.field input::placeholder,.field textarea::placeholder{color:#a5adbb}.form-row{gap:14px}.status{border:1px solid #0000;border-radius:12px;padding:12px 14px;font-size:13px;line-height:1.45}.status.success{color:#08764c;background:#ecfbf5;border-color:#c9f0df}.status.error{color:#af2d40;background:#fff0f2;border-color:#ffd3d8}.status.warning{color:#8a5c0e;background:#fff8e8;border-color:#f8e4b3}.empty-state{text-align:center;background:linear-gradient(145deg,#fafbfe,#f6f8fc);border:1px dashed #d5dce8;border-radius:16px;flex-direction:column;justify-content:center;align-items:center;min-height:180px;padding:30px;display:flex}.empty-state p:last-child{margin-bottom:0}.json-output{color:#cceff5;background:#121927;border:1px solid #252f42;border-radius:14px;padding:20px}.page-heading{justify-content:space-between;align-items:flex-end;gap:24px;display:flex}.page-heading>div{max-width:780px}.page-heading h1{margin-bottom:12px}.page-heading p:last-child{max-width:730px;margin-bottom:0;font-size:15px;line-height:1.6}.page-heading-badge{border:1px solid var(--line);box-shadow:var(--shadow-sm);color:#596276;background:#fff;border-radius:999px;align-items:center;gap:8px;min-width:max-content;margin-bottom:5px;padding:8px 12px;font-size:12px;font-weight:750;display:inline-flex}.page-heading-badge span{background:var(--accent);border-radius:50%;width:7px;height:7px;box-shadow:0 0 0 4px #6d5dfc1a}.page-heading-badge.cyan span{background:var(--cyan);box-shadow:0 0 0 4px #06a9c61a}.page-heading-badge.amber span{background:var(--amber);box-shadow:0 0 0 4px #e88b251a}.prepare-workspace{gap:20px;display:grid}.prepare-mode-switch{background:#e9edf5;border:1px solid #dfe4ee;border-radius:14px;grid-template-columns:repeat(2,minmax(0,1fr));place-self:start;align-items:center;gap:4px;padding:4px;display:inline-grid}.prepare-mode-switch button{color:#70798b;cursor:pointer;background:0 0;border:0;border-radius:10px;min-height:42px;padding:0 18px;font-size:13px;font-weight:750}.prepare-mode-switch button[aria-pressed=true]{color:var(--accent-dark);background:#fff;box-shadow:0 3px 10px #1f2a461a}.prepare-grid,.board-image-workspace{grid-template-columns:minmax(360px,.82fr) minmax(440px,1.18fr);align-items:start;gap:22px}.board-image-workspace{display:grid}.prepare-form,.prepare-output,.board-image-form,.board-image-output{gap:20px}.prepare-form,.board-image-form{position:relative}.prepare-form:before,.board-image-form:before,.library-upload:before{background:linear-gradient(90deg, var(--accent), #8f83ff);content:"";border-radius:20px 20px 0 0;height:3px;position:absolute;inset:-1px 22px auto}.prepare-output{min-height:560px}.prepare-output>div:first-child h2,.board-image-output-heading h2,.library-list-header h2{font-size:1.45rem}.board-image-options{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;display:grid}.board-image-palette-field{grid-column:span 2}.board-reference-preview{border:1px solid var(--line);background:#f6f8fc;border-radius:14px;padding:10px;overflow:hidden}.board-reference-preview img{object-fit:contain;border-radius:9px;width:100%;max-height:240px;display:block}.board-image-output{display:grid}.board-image-output-heading{justify-content:space-between;align-items:flex-start;gap:16px;display:flex}.board-image-actions{gap:8px;display:flex}.board-image-canvas{border:1px solid var(--line);background:#eef1f6;border-radius:16px;justify-content:center;align-items:center;display:flex;overflow:hidden}.board-image-canvas img{object-fit:contain;width:100%;height:100%;display:block}.board-image-history{border-top:1px solid var(--line);padding-top:20px}.board-image-history-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;display:grid}.board-image-history-grid button{border:1px solid var(--line);color:var(--ink);cursor:pointer;text-align:left;background:#f8f9fc;border-radius:12px;padding:5px;overflow:hidden}.board-image-history-grid button[aria-pressed=true]{border-color:var(--accent);box-shadow:0 0 0 3px #6d5dfc1a}.board-image-history-grid img{aspect-ratio:16/9;object-fit:cover;border-radius:8px;width:100%;display:block}.board-image-history-grid span{text-overflow:ellipsis;white-space:nowrap;padding:6px 5px 3px;font-size:11px;font-weight:700;display:block;overflow:hidden}.dashboard-page{gap:30px}.dashboard-hero{color:#fff;background:radial-gradient(circle at 76% 22%,#9589ff57,#0000 15rem),linear-gradient(135deg,#191a32 0%,#2a2556 52%,#4b3db4 100%);border:1px solid #ffffff1a;border-radius:26px;grid-template-columns:minmax(0,1fr) minmax(260px,.62fr);align-items:center;gap:24px;min-height:330px;padding:clamp(32px,5vw,62px);display:grid;position:relative;overflow:hidden;box-shadow:0 24px 60px #2a255638}.dashboard-hero:before{content:"";background-image:linear-gradient(#ffffff0a 1px,#0000 1px),linear-gradient(90deg,#ffffff0a 1px,#0000 1px);background-size:38px 38px;position:absolute;inset:0;-webkit-mask-image:linear-gradient(90deg,#0000,#000);mask-image:linear-gradient(90deg,#0000,#000)}.dashboard-hero-copy,.hero-orbit{z-index:1;position:relative}.dashboard-hero h1{max-width:700px;margin-bottom:16px;font-size:clamp(2.25rem,5vw,4.1rem)}.dashboard-hero-copy>p:not(.eyebrow){color:#f2f3ffc2;max-width:620px;font-size:16px;line-height:1.65}.hero-action{color:#3e31b9;background:#fff;min-height:50px;margin-top:8px;padding-inline:20px;box-shadow:0 12px 28px #0a0a193d}.hero-action:hover:not(:disabled){color:#3e31b9;background:#f5f3ff}.hero-orbit{justify-content:center;align-items:center;min-height:220px;display:flex}.hero-orbit:before,.hero-orbit:after{content:"";border:1px solid #ffffff29;border-radius:50%;width:260px;height:260px;position:absolute}.hero-orbit:after{width:190px;height:190px}.orbit-card-main{-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);background:#ffffff21;border:1px solid #ffffff3d;border-radius:20px;min-width:205px;padding:22px;display:grid;transform:rotate(-4deg);box-shadow:0 24px 40px #09081e40}.orbit-card-main span{background:#8e81ff;border-radius:10px;justify-content:center;align-items:center;width:32px;height:32px;margin-bottom:25px;font-size:11px;font-weight:900;display:inline-flex}.orbit-card-main strong{font-size:17px}.orbit-card-main small{color:#ffffffa6;margin-top:5px}.orbit-dot{border-radius:50%;position:absolute}.orbit-dot-one{background:#57d5e8;width:13px;height:13px;top:14%;right:8%}.orbit-dot-two{background:#ffbe72;width:9px;height:9px;bottom:9%;left:10%}.dashboard-stats{grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;display:grid}.dashboard-stats>div{border:1px solid var(--line);box-shadow:var(--shadow-sm);background:#ffffffdb;border-radius:17px;grid-template-columns:1fr auto;gap:2px;padding:18px 20px;display:grid}.dashboard-stats span{color:var(--muted);font-size:12px;font-weight:700}.dashboard-stats strong{letter-spacing:-.05em;grid-row:span 2;font-size:1.7rem}.dashboard-stats small{color:#9aa2b1;font-size:11px}.section-heading{justify-content:space-between;align-items:flex-end;margin-bottom:-12px;display:flex}.section-heading h2{margin:0;font-size:1.6rem}.quick-action-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;display:grid}.quick-action-card{border:1px solid var(--line);box-shadow:var(--shadow-sm);background:#fff;border-radius:18px;grid-template-columns:48px minmax(0,1fr) auto;align-items:center;gap:14px;min-height:112px;padding:20px;transition:border-color .18s,box-shadow .18s,transform .18s;display:grid}.quick-action-icon{background:var(--accent-soft);color:var(--accent-dark);border-radius:14px;justify-content:center;align-items:center;width:48px;height:48px;font-size:18px;font-weight:900;display:inline-flex}.quick-action-card.cyan .quick-action-icon{color:#078aa1;background:#e6f9fc}.quick-action-card.amber .quick-action-icon{color:#c56b0d;background:#fff4e6}.quick-action-copy{gap:4px;display:grid}.quick-action-copy strong{font-size:15px}.quick-action-copy small{color:var(--muted);font-size:12px;line-height:1.45}.quick-action-arrow{color:#a5adbb;font-size:17px}.dashboard-content-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;display:grid}.resource-panel{min-width:0}.panel-heading{justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:14px;display:flex}.panel-heading h2{margin:0}.panel-heading>a{color:var(--accent);font-size:12px;font-weight:750}.resource-list{gap:0;margin:0;padding:0;list-style:none;display:grid}.resource-list li{border-top:1px solid #edf0f5;grid-template-columns:36px minmax(0,1fr) auto;align-items:center;gap:12px;min-height:65px;padding:9px 0;display:grid}.resource-list li>span:nth-child(2){min-width:0;display:grid}.resource-list li>span:nth-child(2)>a{text-overflow:ellipsis;white-space:nowrap;font-size:13px;font-weight:750;overflow:hidden}.resource-list small{color:#929aaa;margin-top:2px;font-size:10px}.resource-icon{background:var(--accent-soft);color:var(--accent-dark);border-radius:10px;justify-content:center;align-items:center;width:34px;height:34px;font-size:11px;font-weight:900;display:inline-flex}.resource-icon.live{color:#0b9363;background:#e8faf4;font-size:8px}.resource-arrow{color:#a5adbb;padding:8px;font-size:15px}.compact-empty{text-align:left;flex-direction:row;align-items:center;gap:12px;min-height:112px;padding:18px}.compact-empty>span{color:var(--accent);font-size:22px}.connection-strip{background:#eef1f6;border:1px solid #e2e6ef;border-radius:16px;align-items:center;gap:30px;padding:15px 18px;display:flex}.connection-strip>div{align-items:center;gap:10px;display:flex}.connection-strip>div>span:last-child{display:grid}.connection-strip strong{font-size:12px}.connection-strip small{color:var(--muted);font-size:10px}.connection-strip>a{color:var(--accent-dark);margin-left:auto;font-size:12px;font-weight:750}.connection-light{background:#aab1bf;border:3px solid #fff;border-radius:50%;width:12px;height:12px;box-shadow:0 0 0 1px #d1d6e0}.connection-light.on{background:#1fb97d}.account-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;display:grid}.account-section{align-content:start;gap:20px;display:grid}.account-section h2{margin-bottom:4px}.profile-form{gap:14px;display:grid}.profile-form .button{justify-self:start}.account-stats{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin:0;display:grid}.account-stats>div{background:#f6f8fc;border:1px solid #ebeff5;border-radius:14px;padding:15px;display:grid}.account-stats dt{color:var(--muted);font-size:11px;font-weight:700}.account-stats dd{letter-spacing:-.05em;margin:4px 0 0;font-size:1.8rem;font-weight:800}.integration-copy{justify-content:space-between;align-items:flex-start;gap:16px;display:flex}.connection-badge{color:#737b8b;background:#f1f3f7;border:1px solid #e1e5ed;border-radius:999px;min-width:max-content;padding:6px 10px;font-size:11px;font-weight:750}.connection-badge.connected{color:#08764c;background:#eafaf3;border-color:#c9f0df}.auth-layout{grid-template-columns:minmax(360px,1fr) minmax(360px,.8fr);align-items:stretch;gap:0;max-width:1080px;min-height:620px;margin:10px auto 0;display:grid;overflow:hidden}.auth-intro{color:#fff;background:radial-gradient(circle at 80% 20%,#978bff61,#0000 13rem),linear-gradient(145deg,#191a32,#403491);border-radius:26px 0 0 26px;flex-direction:column;justify-content:flex-end;padding:clamp(35px,6vw,70px);display:flex;position:relative}.auth-intro:before{content:"✦";border:1px solid #ffffff24;border-radius:50%;place-items:center;width:180px;height:180px;font-size:30px;display:grid;position:absolute;top:70px;left:50%;transform:translate(-50%)}.auth-intro .eyebrow{color:#c6c0ff}.auth-intro h1{font-size:clamp(2.2rem,4vw,3.5rem)}.auth-intro>p:last-child{color:#ffffffb3;line-height:1.7}.auth-panel{border:1px solid var(--line);background:#fff;border-left:0;border-radius:0 26px 26px 0;align-content:center;gap:26px;padding:clamp(35px,6vw,70px);display:grid}.auth-panel h2{font-size:2rem}.auth-form{gap:17px;display:grid}.password-field{display:block;position:relative}.password-field input{padding-right:82px}.password-toggle{color:var(--accent);cursor:pointer;background:0 0;border:0;padding:8px;font-size:11px;font-weight:750;position:absolute;top:5px;right:5px}.field-hint{color:var(--muted);font-size:11px;font-weight:500}.auth-submit{width:100%;margin-top:4px}.auth-switch{color:var(--muted);text-align:center;margin:0;font-size:12px}.auth-switch a{color:var(--accent);font-weight:750}.library-grid{grid-template-columns:minmax(300px,.68fr) minmax(0,1.32fr);align-items:start;gap:22px}.library-upload{border-top-color:#6d5dfc40;position:sticky;top:98px}.library-list{gap:22px}.icon-grid{grid-template-columns:repeat(auto-fill,minmax(205px,1fr));gap:14px}.icon-card{border-color:#e4e9f1;border-radius:16px;transition:box-shadow .16s,transform .16s;box-shadow:0 3px 12px #1822390a}.icon-card:hover{box-shadow:var(--shadow-md);transform:translateY(-2px)}.icon-preview{background-color:#f8f9fc;background-size:18px 18px}.icon-card-body{padding:16px}.approval-grid{align-items:start;gap:22px}.board-page-preview,.asset-editor-card{border-color:#e1e6ef;border-radius:16px}.asset-editor-card{padding:18px;box-shadow:0 4px 16px #19243d0a}.board-pill-editor{border-radius:999px}.board-card-editor{border-radius:14px}.segmented-control{background:#edf0f6;border-color:#e0e5ee;border-radius:13px;padding:4px}.segmented-control button{border-radius:9px;font-size:12px}.asset-formula-preview,.asset-text-preview,.asset-3d-preview,.asset-diagram-preview,.asset-shape-preview{border-radius:14px}.live-page{margin:-18px auto 0}.live-shell{gap:14px;height:calc(100vh - 108px)}.live-stage-surface{border-radius:22px;box-shadow:0 20px 55px #080e1f33}.live-control-panel{border-color:var(--line);box-shadow:var(--shadow-sm);background:#fffffff5;border-radius:20px;padding:20px}.live-actions{grid-template-columns:repeat(2,minmax(0,1fr))}.live-actions .danger-button:last-child:nth-child(3){grid-column:span 2}.live-queue-item{border-color:#e3e7ef;border-radius:12px;min-height:48px;transition:border-color .15s,transform .15s}.live-queue-item:hover{border-color:#bfb8ff;transform:translate(2px)}@media (max-width:1060px){.app-header-inner{gap:20px}.app-nav a{padding-inline:10px}.app-nav a .nav-icon{display:none}.dashboard-hero{grid-template-columns:minmax(0,1fr) 270px}.prepare-grid,.board-image-workspace{grid-template-columns:minmax(320px,.9fr) minmax(380px,1.1fr)}}@media (max-width:860px){.app-header{height:auto;position:relative}.app-header-inner{grid-template-columns:1fr auto;padding-block:12px}.app-nav{grid-area:2/1/auto/-1;padding-top:4px;overflow-x:auto}.app-nav a .nav-icon{display:block}.shell{padding:30px 20px 54px}.dashboard-hero{grid-template-columns:1fr}.hero-orbit{display:none}.quick-action-grid,.dashboard-content-grid,.prepare-grid,.board-image-workspace,.library-grid,.approval-grid,.account-grid{grid-template-columns:1fr}.library-upload{position:static}.auth-layout{grid-template-columns:1fr;min-height:0;margin-top:0}.auth-intro{border-radius:22px 22px 0 0;min-height:360px}.auth-panel{border-left:1px solid var(--line);border-radius:0 0 22px 22px}}@media (max-width:620px){.brand small,.account-name,.logout-button span{display:none}.app-header-inner{padding-inline:14px}.app-nav{justify-content:space-between}.app-nav a{flex-direction:column;flex:1;gap:2px;min-width:65px;padding:7px 5px;font-size:10px}.shell{padding-inline:14px}.page-heading{flex-direction:column;align-items:flex-start}.page-heading-badge{order:-1}.dashboard-hero{border-radius:20px;min-height:0;padding:28px 22px}.dashboard-stats{grid-template-columns:1fr}.quick-action-card{min-height:94px}.connection-strip{flex-direction:column;align-items:stretch;gap:14px}.connection-strip>a{margin-left:0}.prepare-mode-switch{justify-self:stretch}.prepare-mode-switch button{padding-inline:10px}.form-row,.board-image-options,.account-stats{grid-template-columns:1fr}.board-image-palette-field{grid-column:auto}.board-image-output-heading,.library-list-header,.approval-header-row{flex-direction:column;align-items:stretch}.board-image-actions{grid-template-columns:1fr 1fr;display:grid}.live-shell{height:auto}.live-stage-surface{min-height:56vh}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important}}.worksheet-studio{grid-template-columns:minmax(320px,420px) minmax(0,1fr);align-items:start;gap:clamp(16px,2vw,24px);display:grid}.worksheet-form{flex-direction:column;gap:16px;display:flex}.worksheet-form small{margin-top:6px;line-height:1.4;display:block}.worksheet-output{flex-direction:column;gap:clamp(16px,2vw,24px);min-width:0;display:flex}.worksheet-placeholder h2,.worksheet-result h2,.worksheet-history h2,.font-kit h2{margin:0 0 8px;font-size:1.15rem}.worksheet-hints{color:var(--muted);flex-direction:column;gap:8px;margin:16px 0 0;padding-left:18px;display:flex}.worksheet-result-head{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:12px;margin-bottom:16px;display:flex}.worksheet-result-head p{margin:4px 0 0}.worksheet-note{background:#fff4d6b3;border:1px solid #ebd9aee6;border-radius:12px;margin:0 0 16px;padding:10px 14px;font-size:.92rem}.worksheet-pages{flex-direction:column;gap:16px;display:flex}.worksheet-pages img{border:1px solid var(--line);border-radius:12px;width:100%;height:auto;display:block}.worksheet-history-list,.font-kit-list{flex-direction:column;gap:10px;margin:0;padding:0;list-style:none;display:flex}.worksheet-history-list li,.font-kit-list li{border:1px solid var(--line);background:#f8f9fc;border-radius:12px;justify-content:space-between;align-items:center;gap:12px;padding:12px 14px;display:flex}.worksheet-history-list strong,.font-kit-list strong{display:block}.worksheet-history-list small,.font-kit-list small{margin-top:2px;display:block}.font-kit{flex-direction:column;gap:18px;display:flex}.font-kit-head p{max-width:62ch;margin:6px 0 0}.shared-fonts{border-top:1px solid var(--line);flex-direction:column;gap:12px;padding-top:18px;display:flex}.shared-fonts h3{margin:0;font-size:1.05rem}.shared-fonts>p{max-width:62ch;margin:0}.shared-fonts-grid{grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:12px;margin:0;padding:0;list-style:none;display:grid}.shared-fonts-grid li{border:1px solid var(--line);background:#faf9f5;border-radius:12px;flex-direction:column;gap:8px;padding:14px;display:flex}.shared-fonts-grid strong{font-size:1.3rem}.shared-fonts-grid p{margin:0;font-size:1.05rem;line-height:1.35}.shared-fonts-actions{align-items:center;gap:8px;margin-top:auto;display:flex}.shared-fonts-actions select{flex:1;min-width:0}.font-kit-form{flex-direction:column;gap:14px;max-width:520px;display:flex}@media (max-width:900px){.worksheet-studio{grid-template-columns:minmax(0,1fr)}}.worksheet-blocks header p{max-width:62ch;margin:6px 0 0}.worksheet-blocks-list{flex-direction:column;gap:10px;margin:18px 0 0;padding:0;list-style:none;display:flex}.worksheet-blocks-list li{border:1px solid var(--line);background:#f8f9fc;border-radius:12px;padding:12px 14px}.worksheet-blocks-list li.open{border-color:var(--line-strong);background:#fff}.worksheet-block-head{justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.worksheet-block-head strong{margin:4px 0 2px;display:block}.worksheet-block-head small{text-overflow:ellipsis;white-space:nowrap;max-width:46ch;display:block;overflow:hidden}.worksheet-block-type{background:var(--panel-soft,#eef1f8);color:var(--muted);letter-spacing:.06em;text-transform:uppercase;border-radius:999px;padding:3px 10px;font-size:.72rem}.block-editor{border-top:1px solid var(--line);flex-direction:column;gap:14px;margin-top:14px;padding-top:16px;display:flex}.block-editor textarea{font-family:inherit}.block-editor-actions{gap:10px;display:flex}.block-editor-ask{border-top:1px dashed var(--line);flex-direction:column;gap:10px;padding-top:14px;display:flex}.block-editor-ask button{align-self:flex-start}.worksheet-history-actions{gap:8px;display:flex}.worksheet-block-tools{flex-shrink:0;align-items:center;gap:6px;display:flex}.icon-button{border:1px solid var(--line-strong);color:var(--ink);cursor:pointer;background:#fff;border-radius:10px;padding:8px 11px;font-size:.95rem;line-height:1}.icon-button:disabled{color:var(--muted);cursor:not-allowed;opacity:.5}.icon-button.danger:not(:disabled):hover{color:#d94848;border-color:#d94848}.worksheet-block-confirm{background:#fff5f5;border:1px solid #f0cfcf;border-radius:12px;flex-wrap:wrap;align-items:center;gap:10px;margin-top:12px;padding:12px 14px;display:flex}.worksheet-block-confirm span{flex-grow:1}.worksheet-add-block{border-top:1px dashed var(--line);flex-wrap:wrap;align-items:center;gap:8px;margin-top:16px;padding-top:16px;display:flex}.canvas-page{max-width:1180px}.canvas-library-layout{grid-template-columns:minmax(300px,390px) minmax(0,1fr);gap:20px;display:grid}.canvas-create-form,.canvas-list{align-content:start;gap:16px;display:grid}.canvas-create-form h2,.canvas-create-form p,.canvas-list h2{margin:0}.canvas-create-form select,.canvas-properties select{border:1px solid var(--line);color:var(--ink);font:inherit;background:#fff;border-radius:8px;min-height:44px;padding:8px 10px}.canvas-list ul{gap:10px;margin:0;padding:0;list-style:none;display:grid}.canvas-list li{border:1px solid var(--line);background:#fff;border-radius:12px;justify-content:space-between;align-items:center;gap:12px;padding:14px;display:flex}.canvas-list li strong,.canvas-list li small{display:block}.canvas-list li small{margin-top:4px}.canvas-list-actions,.canvas-delete-confirm{flex-shrink:0;align-items:center;gap:8px;display:flex}.canvas-empty{border:1px dashed var(--line-strong,var(--line));text-align:center;border-radius:12px;padding:30px}.canvas-empty p{margin-bottom:0}.canvas-workspace{gap:14px;max-width:none;margin:-8px;display:grid}.canvas-page-title{justify-content:space-between;align-items:flex-end;gap:20px;display:flex}.canvas-page-title h1,.canvas-page-title p{margin:0}.canvas-page-title>p{text-align:right;font-size:.85rem}.canvas-editor-shell{border:1px solid var(--line);background:#f9fafc;border-radius:14px;min-height:700px;overflow:hidden;box-shadow:0 12px 30px #21304f14}.canvas-toolbar{border-bottom:1px solid var(--line);background:#fff;align-items:center;gap:10px;min-height:58px;padding:8px 12px;display:flex}.canvas-toolbar-group{align-items:center;gap:6px;display:flex}.canvas-toolbar-group+.canvas-toolbar-group{border-left:1px solid var(--line);padding-left:10px}.canvas-toolbar-spacer{flex:1}.canvas-zoom output{color:var(--muted);font-variant-numeric:tabular-nums;text-align:center;min-width:48px}.canvas-save-message{color:var(--muted);max-width:280px;font-size:.82rem}.canvas-editor-shell:fullscreen{background:#fff;flex-direction:column;display:flex}.canvas-editor-shell:fullscreen .canvas-editor-layout{flex:1;height:auto}.canvas-editor-layout{grid-template-columns:190px minmax(0,1fr) 210px;height:max(560px,100vh - 150px);display:grid}.canvas-sidebar,.canvas-properties{background:#fff;padding:14px;overflow:auto}.canvas-sidebar{border-right:1px solid var(--line)}.canvas-properties{border-left:1px solid var(--line)}.canvas-sidebar h2,.canvas-properties h2{letter-spacing:.02em;margin:0 0 12px;font-size:.9rem}.canvas-add-grid{grid-template-columns:1fr 1fr;gap:7px;display:grid}.canvas-add-grid button,.canvas-icon-list button{border:1px solid var(--line);color:var(--ink);cursor:pointer;font:inherit;background:#f7f9fc;border-radius:9px}.canvas-add-grid button{flex-direction:column;align-items:center;gap:4px;min-height:62px;padding:8px 4px;font-size:.72rem;display:flex}.canvas-add-grid button:hover,.canvas-icon-list button:hover{border-color:var(--accent);background:#eef8fa}.canvas-add-grid button span{font-size:1.3rem;line-height:1}.canvas-library-head{border-top:1px solid var(--line);margin-top:16px;padding-top:16px}.canvas-library-head input{min-height:38px}.canvas-icon-list{grid-template-columns:repeat(2,minmax(0,1fr));gap:7px;margin-top:10px;display:grid}.canvas-icon-list button{min-width:0;padding:6px}.canvas-icon-list img{object-fit:contain;width:100%;height:52px;display:block}.canvas-icon-list span{text-overflow:ellipsis;white-space:nowrap;font-size:.65rem;display:block;overflow:hidden}.canvas-stage{cursor:default;touch-action:none;background-color:#e5e9ef;background-image:radial-gradient(#b9c2ce 1px,#0000 1px);background-size:20px 20px;position:relative;overflow:hidden}.canvas-stage:focus-visible{outline-offset:-3px;outline:3px solid #0f8fa859}.canvas-stage.panning{cursor:grabbing}.canvas-world{transform-origin:0 0;width:1px;height:1px;position:absolute;top:0;left:0;overflow:visible}.canvas-frame{pointer-events:none;background-color:#fff;position:absolute;box-shadow:0 4px 24px #161f322e}.canvas-bg-grid{background-image:linear-gradient(var(--canvas-grid,#e0e5eb) 1px, transparent 1px), linear-gradient(90deg, var(--canvas-grid,#e0e5eb) 1px, transparent 1px);background-size:32px 32px}.canvas-bg-dots{background-image:radial-gradient(var(--canvas-grid,#c4ccd7) 1.5px, transparent 1.5px);background-size:32px 32px}.canvas-frame-label{color:#fff;background:#263246;border-radius:4px 4px 0 0;padding:5px 8px;font-size:12px;position:absolute;top:-26px;left:0}.canvas-element{cursor:move;transform-origin:50%;-webkit-user-select:none;user-select:none;white-space:pre-wrap;justify-content:center;align-items:center;padding:8px;line-height:1.25;display:flex;position:absolute}.canvas-element-text{justify-content:flex-start;padding:2px}.canvas-element-sticky{color:#202636;border:1px solid #2c34401f;border-radius:8px;justify-content:flex-start;padding:16px;box-shadow:0 5px 14px #1e283c1f}.canvas-element-image img{object-fit:contain;pointer-events:none;width:100%;height:100%}.canvas-element-shape{background:0 0}.canvas-shape-fill{background:var(--shape-fill);border:2px solid var(--shape-stroke);position:absolute;inset:0}.shape-rect .canvas-shape-fill{border-radius:7px}.shape-ellipse .canvas-shape-fill{border-radius:999px}.shape-triangle .canvas-shape-fill{clip-path:polygon(50% 0,100% 100%,0 100%)}.canvas-shape-label{z-index:1;position:relative}.canvas-element.selected{outline:calc(2px * var(--inv,1)) solid #087f96;outline-offset:calc(2px * var(--inv,1))}.canvas-element textarea{font:inherit;height:100%;line-height:inherit;resize:none;background:#fffffff0;border:1px solid #087f96;width:100%;padding:6px}.canvas-resize-handle{--h:calc(14px * var(--inv,1));border:calc(2px * var(--inv,1)) solid #087f96;height:var(--h);touch-action:none;width:var(--h);z-index:5;background:#fff;border-radius:50%;padding:0;position:absolute}.canvas-resize-handle:after{content:"";inset:calc(-6px * var(--inv,1));position:absolute}.handle-nw{cursor:nwse-resize;left:calc(var(--h) / -2);top:calc(var(--h) / -2)}.handle-n{cursor:ns-resize;left:calc(50% - var(--h) / 2);top:calc(var(--h) / -2)}.handle-ne{cursor:nesw-resize;right:calc(var(--h) / -2);top:calc(var(--h) / -2)}.handle-e{cursor:ew-resize;right:calc(var(--h) / -2);top:calc(50% - var(--h) / 2)}.handle-se{bottom:calc(var(--h) / -2);cursor:nwse-resize;right:calc(var(--h) / -2)}.handle-s{bottom:calc(var(--h) / -2);cursor:ns-resize;left:calc(50% - var(--h) / 2)}.handle-sw{bottom:calc(var(--h) / -2);cursor:nesw-resize;left:calc(var(--h) / -2)}.handle-w{cursor:ew-resize;left:calc(var(--h) / -2);top:calc(50% - var(--h) / 2)}.canvas-marquee{border:calc(1px * var(--inv,1)) solid #087f96;pointer-events:none;z-index:100000;background:#087f9614;position:absolute}.canvas-group-bounds{border:calc(1.5px * var(--inv,1)) dashed #087f96;pointer-events:none;z-index:99999;position:absolute}.canvas-help ul{gap:6px;margin:10px 0 0;padding:0;font-size:.82rem;list-style:none;display:grid}.canvas-help b{font-weight:600}.canvas-size-fields input{width:100%}.canvas-add-grid button[draggable=true],.canvas-icon-list button[draggable=true]{cursor:grab}@font-face{font-family:Canvas Sans;font-weight:400;src:url(/fonts/PTSans-Regular.ttf)format("truetype");font-display:swap}@font-face{font-family:Canvas Sans;font-weight:700;src:url(/fonts/PTSans-Bold.ttf)format("truetype");font-display:swap}@font-face{font-family:Canvas Serif;font-weight:400;src:url(/fonts/PTSerif-Regular.ttf)format("truetype");font-display:swap}@font-face{font-family:Canvas Serif;font-weight:700;src:url(/fonts/PTSerif-Bold.ttf)format("truetype");font-display:swap}@font-face{font-family:Canvas Script;font-weight:400;src:url(/fonts/MarckScript-Regular.ttf)format("truetype");font-display:swap}.canvas-properties-fields{gap:13px;display:grid}.canvas-element-kind{color:#226576;background:#eef5f8;border-radius:6px;margin:0;padding:6px 8px;font-size:.76rem;font-weight:700}.canvas-check{align-items:center;gap:8px;font-size:.82rem;display:flex}.canvas-swatches{border:0;flex-wrap:wrap;gap:7px;margin:0;padding:0;display:flex}.canvas-swatches legend{width:100%;margin-bottom:8px;font-size:.76rem;font-weight:700}.canvas-swatches button{cursor:pointer;border:1px solid #141e2d40;border-radius:50%;width:28px;height:28px}.canvas-order-buttons,.canvas-export-actions{gap:7px;display:flex}.canvas-order-buttons .button,.canvas-export-actions .button{flex:1;justify-content:center;padding-inline:8px}.canvas-export-actions{border-top:1px solid var(--line);margin-top:20px;padding-top:16px}.canvas-note{font-size:.74rem;line-height:1.45}.sr-only{clip:rect(0, 0, 0, 0);clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}@media (max-width:1100px){.canvas-editor-layout{grid-template-columns:136px minmax(0,1fr) 176px}.canvas-sidebar,.canvas-properties{padding:12px;font-size:.88rem}.canvas-add-grid{grid-template-columns:1fr}.canvas-icon-list{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:980px){.canvas-library-layout{grid-template-columns:1fr}}.canvas-mobile-note{display:none}@media (max-width:700px){.canvas-page-title{flex-direction:column;align-items:flex-start}.canvas-page-title>p{text-align:left}.canvas-editor-shell{min-height:650px}.canvas-editor-layout{grid-template-columns:1fr;height:auto}.canvas-sidebar{border-bottom:1px solid var(--line);border-right:0;max-height:220px}.canvas-stage{height:480px}.canvas-properties{grid-column:auto;max-height:none}.canvas-toolbar{flex-wrap:wrap}.canvas-save-message{order:5;width:100%}.canvas-mobile-note{margin:0;display:block}}.shared-library{flex-direction:column;gap:16px;display:flex}.shared-library-head p{max-width:62ch;margin:6px 0 0}.shared-library-filters{flex-direction:column;gap:12px;display:flex}.shared-library-filters input{max-width:420px}.shared-library-subjects{flex-wrap:wrap;gap:6px;display:flex}.chip{border:1px solid var(--line);color:var(--ink);cursor:pointer;background:#fff;border-radius:999px;padding:6px 12px;font-size:.85rem}.shared-library-grid{grid-template-columns:repeat(auto-fill,minmax(96px,1fr));gap:10px;margin:0;padding:0;list-style:none;display:grid}.shared-library-grid li{border:1px solid var(--line);background:#faf9f5;border-radius:12px;flex-direction:column;align-items:center;gap:6px;padding:10px 6px 8px;display:flex}.shared-library-grid img{object-fit:contain;width:64px;height:64px}.shared-library-grid small{color:var(--muted);text-align:center;font-size:.72rem;line-height:1.2}@font-face{font-family:Onest;font-weight:400;font-display:swap;src:url(/fonts/ui/Onest-400.ttf)format("truetype")}@font-face{font-family:Onest;font-weight:500;font-display:swap;src:url(/fonts/ui/Onest-500.ttf)format("truetype")}@font-face{font-family:Onest;font-weight:600;font-display:swap;src:url(/fonts/ui/Onest-600.ttf)format("truetype")}@font-face{font-family:Onest;font-weight:700;font-display:swap;src:url(/fonts/ui/Onest-700.ttf)format("truetype")}@font-face{font-family:Onest;font-weight:800;font-display:swap;src:url(/fonts/ui/Onest-800.ttf)format("truetype")}:root{--font-ui:"Onest", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;--bg:#f6f7fb;--bg-deep:#eef0f6;--ink:#14151c;--ink-soft:#363a4b;--muted:#676d80;--line:#e8eaf1;--line-strong:#d8dce6;--panel:#fff;--accent:#5b4cf0;--accent-dark:#4636d8;--accent-soft:#efedff;--shadow-sm:0 1px 2px #1018280a, 0 1px 3px #1018280a;--shadow-md:0 12px 32px #10182814;--shadow-accent:0 6px 16px #5b4cf038;--focus-ring:0 0 0 3px #5b4cf047}body{background:var(--bg);font-family:var(--font-ui);-webkit-font-smoothing:antialiased;font-size:15.5px}h1{letter-spacing:-.035em;font-weight:800}h2{letter-spacing:-.02em;font-weight:700}h3{font-weight:650}.eyebrow{letter-spacing:.08em;font-size:12px;font-weight:700}a:focus-visible,button:focus-visible,.button:focus-visible,.chip:focus-visible{box-shadow:var(--focus-ring);outline:none}.panel{background:var(--panel);border:1px solid var(--line);box-shadow:var(--shadow-sm);border-radius:18px}.button{border-color:var(--line-strong);color:var(--ink-soft);letter-spacing:-.005em;border-radius:12px;min-height:44px;padding:10px 18px;font-size:14px;font-weight:600}.button:hover:not(:disabled){box-shadow:var(--shadow-sm);background:#fafafc;border-color:#c5cad6;transform:none}.primary-button{background:var(--accent);border-color:var(--accent);color:#fff;box-shadow:0 1px 2px #1018281a,inset 0 1px #ffffff24}.primary-button:hover:not(:disabled){background:var(--accent-dark);border-color:var(--accent-dark);box-shadow:var(--shadow-accent)}.button-secondary{background:#fff}.button[aria-disabled=true]{cursor:default;opacity:.6}.field{color:var(--ink-soft);font-size:13.5px;font-weight:600}.field input,.field textarea,.field select{border-color:var(--line-strong);box-shadow:none;background-color:#fff;min-height:44px;font-size:15px;font-weight:400}.field input:focus,.field textarea:focus,.field select:focus{border-color:var(--accent);box-shadow:var(--focus-ring)}.app-header{border-bottom-color:var(--line);background:#ffffffe0;height:64px}.brand-mark{background:var(--accent);box-shadow:none;border-radius:10px;width:34px;height:34px}.brand strong{font-size:15px;font-weight:750}.app-nav a{color:var(--muted);border-radius:10px;min-height:38px;font-size:14px;font-weight:550}.app-nav a.active{background:var(--accent-soft);color:var(--accent-dark);font-weight:650}.header-cta{min-height:38px;padding:8px 14px}.credits-pill{background:var(--accent-soft);color:var(--accent-dark);font-variant-numeric:tabular-nums;border-radius:999px;align-items:center;gap:5px;height:34px;padding:0 12px 0 10px;font-size:13px;font-weight:700;transition:background .16s;display:inline-flex}.credits-pill:hover{background:#e3dfff}.credits-pill svg{fill:currentColor;width:14px;height:14px}.credits-pill.low{color:#b25e05;background:#fff3e0}.avatar{background:var(--ink-soft);box-shadow:none;border:0;border-radius:999px}.text-link{color:var(--ink-soft);padding:8px 10px;font-size:14px;font-weight:600}.text-link:hover{color:var(--accent-dark)}@media (max-width:1100px){.header-cta{display:none}}.dashboard-hero{border:1px solid var(--line);box-shadow:none;color:var(--ink);background:linear-gradient(120deg,#f1efff 0%,#fff 48%,#eaf8fb 100%);border-radius:24px;min-height:300px}.dashboard-hero:before{background-image:radial-gradient(#5b4cf01f 1px,#0000 1px);background-size:22px 22px;-webkit-mask-image:linear-gradient(90deg,#0000 35%,#000);mask-image:linear-gradient(90deg,#0000 35%,#000)}.dashboard-hero .eyebrow{color:var(--accent)}.dashboard-hero h1{font-size:clamp(2.1rem,4.4vw,3.4rem)}.dashboard-hero-copy>p:not(.eyebrow){color:var(--muted)}.hero-action{background:var(--accent);color:#fff;box-shadow:0 1px 2px #1018281a}.hero-action:hover:not(:disabled){background:var(--accent-dark);color:#fff}.hero-art{min-height:240px;display:block;position:relative}.hero-art img{filter:drop-shadow(0 18px 24px #281e7824);position:absolute}.hero-art .art-1{width:150px;height:150px;top:8%;left:18%;transform:rotate(-8deg)}.hero-art .art-2{width:110px;height:110px;top:0;right:6%;transform:rotate(10deg)}.hero-art .art-3{width:112px;height:112px;bottom:2%;right:4%;transform:rotate(-4deg)}.hero-note{border:1px solid var(--line);box-shadow:var(--shadow-md);background:#fff;border-radius:14px;gap:2px;padding:12px 14px;font-size:13px;display:grid;position:absolute;bottom:10%;left:0}.hero-note strong{font-size:14px}.hero-note small{color:var(--muted)}.dashboard-stats>div,.quick-action-card{border-color:var(--line);box-shadow:var(--shadow-sm);background:#fff}.dashboard-stats span{font-weight:600}.dashboard-stats strong{font-weight:750}.quick-action-card:hover{box-shadow:var(--shadow-md);border-color:#cfc9ff;transform:none}.quick-action-icon{background:var(--bg);border-radius:14px;width:56px;height:56px;overflow:hidden}.quick-action-icon img{object-fit:contain;width:46px;height:46px}.quick-action-card{grid-template-columns:56px minmax(0,1fr) auto}.quick-action-card.cyan .quick-action-icon,.quick-action-card.amber .quick-action-icon{background:var(--bg)}.panel-heading>a{font-size:13px;font-weight:650}.pricing-page{max-width:1180px}.pricing-hero{text-align:center;justify-items:center;max-width:720px;margin:8px auto 12px;display:grid}.pricing-hero h1{font-size:clamp(2rem,4vw,3rem)}.pricing-hero p{margin-bottom:8px}.pricing-current{background:var(--accent-soft);color:var(--accent-dark);border-radius:999px;margin-top:8px;padding:8px 16px;font-size:14px}.pricing-grid{grid-template-columns:repeat(4,minmax(0,1fr));align-items:stretch;gap:16px;display:grid}.pricing-card{border:1px solid var(--line);box-shadow:var(--shadow-sm);background:#fff;border-radius:20px;flex-direction:column;gap:10px;padding:26px 22px;display:flex;position:relative}.pricing-card h2{margin:0;font-size:1.15rem}.pricing-card>.muted{min-height:42px;margin:0;font-size:14px}.pricing-card.featured{border:2px solid var(--accent);box-shadow:0 18px 40px #5b4cf024}.pricing-badge{background:var(--accent);color:#fff;border-radius:999px;padding:4px 10px;font-size:12px;font-weight:700;position:absolute;top:-13px;left:22px}.pricing-price{align-items:baseline;gap:6px;margin:4px 0 0;display:flex}.pricing-price strong{letter-spacing:-.04em;font-size:2.1rem;font-weight:800}.pricing-price span{color:var(--muted);font-size:14px}.pricing-year{color:var(--success);min-height:20px;margin:0;font-size:13px;font-weight:600}.pricing-card ul{flex:1;gap:8px;margin:8px 0 12px;padding:0;list-style:none;display:grid}.pricing-card li{padding-left:24px;font-size:14px;position:relative}.pricing-card li:before{color:var(--accent);content:"✓";font-weight:800;position:absolute;left:2px}.pricing-cta{width:100%}.muted-card{background:var(--bg);box-shadow:none}.pricing-costs table{border-collapse:collapse;width:100%;margin:8px 0 12px}.pricing-costs td{border-bottom:1px solid var(--line);padding:12px 4px;font-size:15px}.pricing-costs td:last-child{text-align:right;white-space:nowrap;font-weight:650}@media (max-width:1000px){.pricing-grid{grid-template-columns:repeat(2,minmax(0,1fr));row-gap:28px}}@media (max-width:560px){.pricing-grid{grid-template-columns:1fr}}.credit-history{gap:0;margin:0 0 16px;padding:0;list-style:none;display:grid}.credit-history li{border-top:1px solid var(--line);grid-template-columns:1fr auto auto;align-items:center;gap:12px;padding:10px 0;font-size:14px;display:grid}.credit-history strong{color:var(--ink-soft);font-variant-numeric:tabular-nums}@media (max-width:860px){.dashboard-hero{grid-template-columns:1fr}.hero-art{display:none}.app-header{height:auto}.app-nav a{min-height:52px;font-size:12px}}@media (max-width:620px){.dashboard-stats{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.dashboard-stats>div{grid-template-columns:1fr;padding:12px}.dashboard-stats strong{order:-1;grid-row:auto;font-size:1.4rem}.dashboard-stats small{display:none}}.consent-check{color:var(--ink-soft);cursor:pointer;grid-template-columns:20px 1fr;align-items:flex-start;gap:10px;font-size:13.5px;line-height:1.45;display:grid}.consent-check input{accent-color:var(--accent);width:18px;height:18px;margin:1px 0 0}.consent-check a{color:var(--accent-dark);text-underline-offset:2px;text-decoration:underline}.legal-page{max-width:760px;margin:0 auto}.legal-page h1{font-size:clamp(1.7rem,3.4vw,2.4rem)}.legal-page h2{margin-top:24px;font-size:1.1rem}.legal-page p{color:var(--ink-soft);line-height:1.65}.legal-page a{color:var(--accent-dark);text-decoration:underline}.site-footer{border-top:1px solid var(--line);color:var(--muted);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px 24px;max-width:1480px;margin:0 auto;padding:20px clamp(24px,4vw,64px) 28px;font-size:13px;display:flex}.site-footer nav{flex-wrap:wrap;gap:8px 20px;display:flex}.site-footer a:hover{color:var(--accent-dark)}.cookie-notice{border:1px solid var(--line);box-shadow:var(--shadow-md);z-index:200;background:#fff;border-radius:16px;align-items:center;gap:16px;width:calc(100% - 32px);max-width:640px;padding:14px 16px 14px 20px;display:flex;position:fixed;bottom:16px;left:50%;transform:translate(-50%)}.cookie-notice p{color:var(--ink-soft);margin:0;font-size:14px}.cookie-notice a{color:var(--accent-dark);text-decoration:underline}.cookie-notice .button{flex-shrink:0;min-height:38px}@media (max-width:560px){.cookie-notice{flex-direction:column;align-items:stretch}}.ui-icon{fill:none;stroke:currentColor;stroke-linecap:round;stroke-linejoin:round;stroke-width:1.8px;flex-shrink:0;width:20px;height:20px}.app-frame{grid-template-columns:auto minmax(0,1fr);min-height:100vh;display:grid}.app-main{flex-direction:column;min-width:0;display:flex}.app-main .shell{flex:1;width:100%;max-width:1240px;min-height:0;padding:40px 48px 64px}.app-main .site-footer{width:100%;max-width:1240px;padding-inline:48px}.app-sidebar{border-right:1px solid var(--line);background:#fff;flex-direction:column;gap:8px;width:248px;height:100vh;padding:20px 16px 16px;display:flex;position:sticky;top:0;overflow-y:auto}.sidebar-brand{align-items:center;gap:10px;margin:0 4px 12px;display:flex}.sidebar-brand strong{letter-spacing:-.02em;font-size:15px;font-weight:750;display:block}.sidebar-brand small{color:var(--muted);font-size:11.5px;display:block}.sidebar-create{justify-content:flex-start;width:100%;margin-bottom:12px}.sidebar-nav{gap:2px;display:grid}.sidebar-nav a{color:var(--ink-soft);border-radius:10px;align-items:center;gap:12px;min-height:40px;padding:0 12px;font-size:14.5px;font-weight:550;transition:background .14s,color .14s;display:flex}.sidebar-nav a .ui-icon{color:var(--muted)}.sidebar-nav a:hover{background:var(--bg);color:var(--ink)}.sidebar-nav a[aria-current=page]{background:var(--accent-soft);color:var(--accent-dark);font-weight:650}.sidebar-nav a[aria-current=page] .ui-icon{color:var(--accent)}.sidebar-nav-secondary{border-top:1px solid var(--line);margin-top:12px;padding-top:12px}.sidebar-bottom{gap:12px;margin-top:auto;padding-top:16px;display:grid}.sidebar-credits{background:var(--bg);border-radius:14px;gap:8px;padding:14px;transition:background .14s;display:grid}.sidebar-credits:hover{background:var(--bg-deep)}.sidebar-credits-row{justify-content:space-between;align-items:baseline;font-size:13px;font-weight:600;display:flex}.sidebar-credits-row strong{font-variant-numeric:tabular-nums;font-size:14px}.sidebar-credits small{color:var(--muted);font-size:12px}.sidebar-meter{background:#e3e5ee;border-radius:999px;height:6px;display:block;overflow:hidden}.sidebar-meter>span{background:var(--accent);border-radius:inherit;height:100%;display:block}.sidebar-user{align-items:center;gap:4px;display:flex}.sidebar-user-link{border-radius:12px;flex:1;align-items:center;gap:10px;min-width:0;padding:6px;display:flex}.sidebar-user-link:hover{background:var(--bg)}.sidebar-user-link .sidebar-label{min-width:0;display:grid}.sidebar-user-link strong{text-overflow:ellipsis;white-space:nowrap;font-size:13.5px;overflow:hidden}.sidebar-user-link small{color:var(--muted);text-overflow:ellipsis;white-space:nowrap;font-size:12px;overflow:hidden}.sidebar-logout{color:var(--muted);border:0;width:36px;height:36px}.avatar{background:var(--accent);color:#fff;border-radius:999px;flex-shrink:0;justify-content:center;align-items:center;width:34px;height:34px;font-size:13px;font-weight:700;display:inline-flex}.app-sidebar.compact{align-items:center;width:72px;padding-inline:12px}.app-sidebar.compact .sidebar-label,.app-sidebar.compact .sidebar-label-block,.app-sidebar.compact .sidebar-logout{display:none}.app-sidebar.compact .sidebar-brand{margin-inline:0}.app-sidebar.compact .sidebar-create,.app-sidebar.compact .sidebar-nav a{justify-content:center;width:44px;padding:0}.app-sidebar.compact .sidebar-user-link{flex:none}.mobile-topbar,.mobile-tabbar{display:none}@media (max-width:900px){.app-frame{display:block}.app-sidebar{display:none}.app-main .shell{padding:20px 16px 104px}.app-main .site-footer{padding:16px 16px 96px}.mobile-topbar{-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border-bottom:1px solid var(--line);z-index:100;background:#ffffffeb;align-items:center;gap:10px;height:56px;padding:0 16px;display:flex;position:sticky;top:0}.mobile-topbar .sidebar-brand{flex:1;margin:0}.mobile-topbar .credits-pill .ui-icon{width:14px;height:14px}.mobile-tabbar{border-top:1px solid var(--line);height:calc(64px + env(safe-area-inset-bottom));padding-bottom:env(safe-area-inset-bottom);z-index:100;background:#fff;grid-template-columns:repeat(5,1fr);align-items:center;display:grid;position:fixed;bottom:0;left:0;right:0}.mobile-tabbar a{color:var(--muted);place-items:center;gap:2px;min-height:48px;font-size:11px;font-weight:600;display:grid}.mobile-tabbar a[aria-current=page]{color:var(--accent-dark)}.mobile-tabbar-create{background:var(--accent);box-shadow:var(--shadow-accent);border-radius:16px;justify-self:center;width:48px;height:48px;color:#fff!important}.cookie-notice{bottom:80px}}.sr-only{clip:rect(0 0 0 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.page-header{justify-content:space-between;align-items:flex-end;gap:16px;margin-bottom:8px;display:flex}.page-header h1{margin-bottom:6px;font-size:clamp(1.8rem,3vw,2.3rem)}.page-header p{max-width:64ch;margin:0;font-size:15px}.chip{border:1px solid var(--line-strong);color:var(--ink-soft);background:#fff;border-radius:999px;padding:7px 14px;font-size:13.5px;font-weight:550;transition:border-color .14s,background .14s,color .14s;display:inline-flex}.chip:hover{border-color:var(--accent);color:var(--accent-dark)}.chip.active{background:var(--ink);border-color:var(--ink);color:#fff}.button-lg{min-height:52px;padding-inline:24px;font-size:15.5px}.button-sm{min-height:34px;padding:6px 12px;font-size:13px}.home{gap:48px;display:grid}.home-prompt{border:1px solid var(--line);text-align:center;background:radial-gradient(60% 120% at 100% 0,#7ad6ea47,#0000 60%),radial-gradient(60% 120% at 0 100%,#8b7cff3d,#0000 60%),#fff;border-radius:28px;justify-items:center;padding:clamp(32px,6vw,64px) clamp(20px,5vw,56px);display:grid}.home-greeting{color:var(--muted);margin-bottom:8px;font-size:15px;font-weight:550}.home-prompt h1{margin-bottom:28px;font-size:clamp(2rem,4.6vw,3.4rem)}.home-prompt-form{border:1px solid var(--line-strong);box-shadow:var(--shadow-md);background:#fff;border-radius:18px;gap:8px;width:100%;max-width:720px;padding:8px;display:flex}.home-prompt-form:focus-within{border-color:var(--accent);box-shadow:var(--shadow-md), var(--focus-ring)}.home-prompt-form input{color:var(--ink);font:inherit;background:0 0;border:0;outline:none;flex:1;min-width:0;padding:0 14px;font-size:17px}.home-prompt-form .button{min-height:52px;padding-inline:22px}.home-ideas{flex-wrap:wrap;justify-content:center;gap:8px;max-width:760px;margin-top:20px;display:flex}.home-section h2{margin-bottom:16px;font-size:1.3rem}.section-row{justify-content:space-between;align-items:baseline;display:flex}.create-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;display:grid}.create-card{border-radius:20px;gap:2px;padding:16px 16px 18px;transition:transform .16s,box-shadow .16s;display:grid}.create-card:hover{box-shadow:var(--shadow-md);transform:translateY(-2px)}.create-card-art{justify-content:center;align-items:center;height:112px;margin-bottom:10px;display:flex}.create-card-art img{object-fit:contain;width:96px;height:96px;transition:transform .2s}.create-card:hover .create-card-art img{transform:scale(1.06)rotate(-3deg)}.create-card strong{font-size:15.5px}.create-card small{color:var(--muted);font-size:13px}.tone-violet{background:#f0edff}.tone-blue{background:#e8f3ff}.tone-amber{background:#fff4e2}.tone-mint{background:#e7f8f0}.recent-grid{grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:20px;display:grid}.recent-card{gap:4px;min-width:0;display:grid}.recent-card strong{text-overflow:ellipsis;white-space:nowrap;font-size:14.5px;overflow:hidden}.recent-card small{color:var(--muted);font-size:12.5px}.recent-thumb{aspect-ratio:4/3;background:var(--bg-deep);border:1px solid var(--line);border-radius:14px;margin-bottom:6px;transition:box-shadow .16s,border-color .16s;display:block;position:relative;overflow:hidden}.recent-card:hover .recent-thumb{box-shadow:var(--shadow-md);border-color:#cfc9ff}.recent-thumb>img{object-fit:cover;object-position:top;width:100%;height:100%}.recent-thumb.is-canvas{background:#fff8ec;justify-content:center;align-items:center;display:flex}.recent-thumb .recent-thumb-icon{object-fit:contain;width:72px;height:72px}.recent-kind{background:#ffffffeb;border-radius:999px;padding:3px 9px;font-size:11.5px;font-weight:650;position:absolute;bottom:8px;left:8px}.empty-card{border:1px dashed var(--line-strong);background:#fff;border-radius:20px;align-items:center;gap:20px;padding:24px;display:flex}.empty-card img{width:72px;height:72px}.empty-card p{margin:4px 0 0}@media (max-width:1100px){.create-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:560px){.home{gap:32px}.home-prompt-form{flex-direction:column}.home-prompt-form input{min-height:48px}.create-card-art{height:80px}.create-card-art img{width:68px;height:68px}.recent-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}}.studio{grid-template-columns:minmax(340px,420px) minmax(0,1fr);align-items:start;gap:24px;display:grid}.studio-form{gap:4px;padding:8px 24px 24px;display:grid;position:sticky;top:24px}.studio-step{border:0;border-bottom:1px solid var(--line);gap:14px;min-width:0;margin:0;padding:20px 0;display:grid}.studio-step legend{float:left;align-items:center;gap:10px;width:100%;margin-bottom:14px;font-size:15.5px;font-weight:700;display:flex}.studio-step legend+*{clear:both}.studio-step legend em{color:var(--muted);font-size:13px;font-style:normal;font-weight:500}.step-num{background:var(--accent-soft);color:var(--accent-dark);border-radius:999px;justify-content:center;align-items:center;width:26px;height:26px;font-size:13px;font-weight:750;display:inline-flex}.field-hint{color:var(--muted);margin:-6px 0 0;font-size:13px}.field .input-lg{min-height:50px;font-size:16.5px}.file-drop{background:var(--bg);border:1.5px dashed var(--line-strong);color:var(--ink-soft);cursor:pointer;border-radius:12px;align-items:center;min-height:52px;padding:0 16px;font-size:14px;font-weight:550;transition:border-color .14s,background .14s;display:flex;position:relative}.file-drop:hover{background:var(--accent-soft);border-color:var(--accent)}.file-drop input{cursor:pointer;opacity:0;position:absolute;inset:0}.format-options{grid-template-columns:1fr 1fr;gap:10px;display:grid}.format-option{border:1.5px solid var(--line-strong);cursor:pointer;border-radius:14px;align-items:center;gap:12px;padding:12px;transition:border-color .14s,background .14s;display:flex}.format-option input{opacity:0;width:1px;height:1px;position:absolute}.format-option:has(input:checked){background:var(--accent-soft);border-color:var(--accent)}.format-option:has(input:focus-visible){box-shadow:var(--focus-ring)}.format-option strong{font-size:14px;display:block}.format-option small{color:var(--muted);font-size:12px}.format-shape{color:var(--muted);background:#fff;border:1.5px solid;border-radius:3px;flex-shrink:0}.format-shape.a4{width:22px;height:30px}.format-shape.wide{width:34px;height:20px}.format-option:has(input:checked) .format-shape{color:var(--accent)}.studio-submit{align-items:center;gap:14px;padding-top:20px;display:flex}.studio-submit .button{flex:1}.studio-cost{color:var(--muted);white-space:nowrap;font-size:13px;font-weight:600}.studio-output{gap:20px;min-width:0;display:grid}.studio-empty{border:1px dashed var(--line-strong);text-align:center;background:#fff;border-radius:20px;place-items:center;min-height:460px;padding:40px;display:grid}.studio-empty img{width:120px;height:120px;margin-bottom:8px}.studio-empty strong{font-size:1.2rem}.studio-empty p{max-width:44ch}.studio-empty.is-busy img{animation:1.8s ease-in-out infinite float}.progress-bar{background:var(--bg-deep);border-radius:999px;width:min(320px,80%);height:6px;margin-top:8px;display:block;overflow:hidden}.progress-bar span{background:var(--accent);border-radius:inherit;width:40%;height:100%;animation:1.6s ease-in-out infinite progress;display:block}@keyframes progress{0%{transform:translate(-100%)}to{transform:translate(260%)}}@keyframes float{0%,to{transform:translateY(0)}50%{transform:translateY(-8px)}}@media (prefers-reduced-motion:reduce){.studio-empty.is-busy img,.progress-bar span{animation:none}}.worksheet-result-actions{flex-wrap:wrap;gap:8px;display:flex}.studio-library{margin-top:48px}.studio-library h2{align-items:center;gap:10px;margin-bottom:16px;font-size:1.3rem;display:flex}.count{background:var(--bg-deep);color:var(--muted);border-radius:999px;padding:2px 10px;font-size:13px;font-weight:650}.sheet-grid{grid-template-columns:repeat(auto-fill,minmax(190px,1fr));gap:20px;display:grid}.sheet-card{gap:4px;min-width:0;display:grid}.sheet-card strong{text-overflow:ellipsis;white-space:nowrap;font-size:14.5px;overflow:hidden}.sheet-card small{font-size:12.5px}.sheet-thumb{aspect-ratio:210/297;background:var(--bg-deep);border:1px solid var(--line);cursor:pointer;border-radius:12px;margin-bottom:6px;padding:0;transition:box-shadow .16s,border-color .16s;overflow:hidden}.sheet-thumb:hover{box-shadow:var(--shadow-md);border-color:#cfc9ff}.sheet-thumb img{object-fit:cover;object-position:top;width:100%;height:100%;display:block}.sheet-actions{gap:6px;margin-top:6px;display:flex}@media (max-width:1100px){.studio{grid-template-columns:1fr}.studio-form{position:static}.studio-empty{min-height:240px}}@media (max-width:560px){.sheet-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.format-options{grid-template-columns:1fr}}.app-main .shell,.app-main .site-footer{margin-inline:auto}.studio-empty{align-content:center;gap:8px}.tab-list{border-bottom:1px solid var(--line);gap:4px;margin-bottom:24px;display:flex;overflow-x:auto}.tab{color:var(--muted);cursor:pointer;font:inherit;white-space:nowrap;background:0 0;border:0;border-bottom:2px solid #0000;align-items:center;gap:8px;margin-bottom:-1px;padding:10px 14px 12px;font-size:15px;font-weight:600;display:inline-flex}.tab:hover{color:var(--ink)}.tab[aria-selected=true]{border-bottom-color:var(--accent);color:var(--ink)}.tab[aria-selected=true] .count{background:var(--accent-soft);color:var(--accent-dark)}.tabs .shared-library>header{display:none}.canvas-library{gap:24px;display:grid}.canvas-create-form{gap:14px;max-width:760px;display:grid}.canvas-create-head{justify-content:space-between;align-items:center;display:flex}.canvas-create-head h2{margin:0}.canvas-create-form .form-row{grid-template-columns:repeat(4,minmax(0,1fr))}.board-grid{grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:20px;display:grid}.board-card{color:inherit;font:inherit;text-align:left;background:0 0;border:0;gap:6px;min-width:0;padding:0;display:grid}.board-thumb{aspect-ratio:3/2;background:var(--bg-deep);border:1px solid var(--line);border-radius:14px;transition:box-shadow .16s,border-color .16s;display:block;position:relative;overflow:hidden}.board-card:hover .board-thumb{box-shadow:var(--shadow-md);border-color:#cfc9ff}.board-thumb-bg{background-color:#fbf7f0;border-radius:4px;position:absolute;inset:14% 12%;box-shadow:0 2px 8px #10182814}.board-thumb-bg.bg-grid{background-image:linear-gradient(#e8e2d6 1px,#0000 1px),linear-gradient(90deg,#e8e2d6 1px,#0000 1px);background-size:12px 12px}.board-thumb-bg.bg-dots{background-image:radial-gradient(#d8d0c0 1.2px,#0000 1.2px);background-size:12px 12px}.board-thumb-bg.palette-soft_blue{background-color:#f3f7fc}.board-thumb-bg.palette-paper_olive{background-color:#f6f5ec}.board-thumb-bg.palette-high_contrast{background-color:#fff}.board-card-new{cursor:pointer}.board-card-new .board-thumb{border:1.5px dashed var(--line-strong);background:#fff;justify-content:center;align-items:center;display:flex}.board-card-new:hover .board-thumb{background:var(--accent-soft);border-color:var(--accent)}.board-plus{color:var(--accent);font-size:40px;font-weight:300;line-height:1}.board-card-new strong,.board-card-title strong{font-size:14.5px}.board-card-new small,.board-card-title small{color:var(--muted);font-size:12.5px}.board-card-row{justify-content:space-between;align-items:flex-start;gap:8px;display:flex}.board-card-title{min-width:0;display:grid}.board-card-title strong{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.board-card .icon-button{border:0;flex-shrink:0;width:30px;height:30px}@media (max-width:700px){.canvas-create-form .form-row{grid-template-columns:1fr 1fr}.board-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}}.canvas-page-title{align-items:center;margin-bottom:12px}.canvas-page-title .eyebrow{display:none}.canvas-page-title h1{margin:0;font-size:1.5rem}.canvas-page-title>p{font-size:13px}@media (max-width:900px){.app-main .shell:has(.canvas-editor-shell){padding-bottom:24px}}.app-main .shell:has(.canvas-editor-shell){max-width:none;padding:0}.app-main:has(.canvas-editor-shell) .site-footer{display:none}.canvas-workspace{display:block}.canvas-workspace .canvas-editor-shell{box-shadow:none;border:0;border-radius:0;flex-direction:column;height:100vh;min-height:0;display:flex}.canvas-workspace .canvas-editor-layout{flex:1;grid-template-columns:184px minmax(0,1fr) 232px;height:auto;min-height:0}.canvas-workspace .canvas-stage{height:100%}.canvas-workspace .canvas-sidebar,.canvas-workspace .canvas-properties{min-height:0;overflow-y:auto}.canvas-toolbar-title{align-items:center;gap:8px;min-width:0;display:flex}.canvas-toolbar-title h1{letter-spacing:-.01em;text-overflow:ellipsis;white-space:nowrap;max-width:260px;margin:0;font-size:16px;font-weight:700;overflow:hidden}.canvas-toolbar-title .icon-button{justify-content:center;align-items:center;display:inline-flex}@media (max-width:1100px){.canvas-workspace .canvas-editor-layout{grid-template-columns:136px minmax(0,1fr) 176px}.canvas-toolbar-title h1{max-width:140px}}@media (max-width:900px){.canvas-workspace .canvas-editor-shell{height:calc(100vh - 56px)}.app-main .shell:has(.canvas-editor-shell){padding:0}}@media (max-width:700px){.canvas-workspace .canvas-editor-shell{height:auto}.canvas-workspace .canvas-editor-layout{grid-template-columns:1fr}.canvas-workspace .canvas-stage{height:60vh}}.canvas-workspace .canvas-editor-layout,.canvas-editor-layout{grid-template-columns:60px minmax(0,1fr);position:relative}.canvas-rail{border-right:1px solid var(--line);z-index:20;background:#fff;flex-direction:column;align-items:center;gap:4px;padding:10px 0;display:flex;position:relative}.rail-button{color:var(--ink-soft);cursor:grab;background:0 0;border:0;border-radius:10px;justify-content:center;align-items:center;width:42px;height:42px;font-size:18px;display:inline-flex}.rail-button:hover{background:var(--bg);color:var(--ink)}.rail-button.active{background:var(--accent-soft);color:var(--accent-dark);cursor:pointer}.rail-divider{background:var(--line);width:28px;height:1px;margin:6px 0}.canvas-flyout,.canvas-workspace .canvas-properties,.canvas-properties{border:1px solid var(--line);box-shadow:var(--shadow-md);z-index:30;background:#fff;border-radius:16px;gap:10px;width:260px;max-height:calc(100% - 24px);padding:14px;display:grid;position:absolute;top:12px;overflow-y:auto}.canvas-flyout{align-content:start;left:68px}.canvas-workspace .canvas-properties,.canvas-properties{border-left:1px solid var(--line);align-content:start;right:12px}.canvas-flyout-head{justify-content:space-between;align-items:center;display:flex}.canvas-flyout-head h2{margin:0;font-size:15px}.canvas-flyout input,.canvas-flyout select{border:1px solid var(--line-strong);font:inherit;border-radius:10px;min-height:38px;padding:0 10px;font-size:14px}.canvas-flyout .canvas-icon-list{grid-template-columns:repeat(4,minmax(0,1fr));gap:6px;display:grid}.canvas-flyout .canvas-icon-list button{aspect-ratio:1;background:var(--bg);cursor:grab;border:1px solid #0000;border-radius:10px;justify-content:center;align-items:center;min-height:0;padding:4px;display:flex}.canvas-flyout .canvas-icon-list button:hover{border-color:var(--accent)}.canvas-flyout .canvas-icon-list img{object-fit:contain;width:100%;height:100%}@media (max-width:1100px){.canvas-workspace .canvas-editor-layout{grid-template-columns:60px minmax(0,1fr)}}@media (max-width:700px){.canvas-workspace .canvas-editor-layout,.canvas-editor-layout{grid-template-columns:52px minmax(0,1fr)}.canvas-flyout,.canvas-properties,.canvas-workspace .canvas-properties{width:auto;left:60px;right:8px}.canvas-toolbar .button-sm{display:none}}.canvas-toolbar-title{flex-shrink:1;min-width:0}.canvas-toolbar-title h1{min-width:64px}@media (max-width:900px){.canvas-toolbar .canvas-save-message{display:none}}.canvas-properties .canvas-size-fields{grid-template-columns:1fr 1fr;gap:8px;display:grid}.canvas-properties .field{gap:4px;font-size:12.5px}.canvas-properties .field input,.canvas-properties .field select{min-height:36px;padding:6px 10px;font-size:14px}.canvas-properties .button{min-height:36px;padding:6px 10px}.canvas-properties .canvas-element-kind{margin:0}.canvas-element textarea.canvas-editing{color:inherit;font:inherit;outline:calc(2px * var(--inv,1)) solid var(--accent);height:100%;padding:inherit;resize:none;background:#fff9;border:0;border-radius:4px;width:100%}.canvas-element textarea.canvas-editing-sticky{background:0 0;padding:0}.canvas-element textarea.canvas-editing-shape{text-align:center;z-index:2;background:#ffffff80;position:relative}.canvas-element-text>span{width:100%;display:block}.section-title{margin:16px 0 0;font-size:1.3rem}.board-ai{border:1px solid var(--line);background:radial-gradient(70% 140% at 100% 0,#7ad6ea38,#0000 60%),radial-gradient(60% 120% at 0 100%,#8b7cff2e,#0000 60%),#fff;border-radius:24px;gap:18px;padding:28px;display:grid}.board-ai-head{align-items:flex-start;gap:14px;display:flex}.board-ai-head h2{margin:0 0 4px;font-size:1.35rem}.board-ai-head p{margin:0}.board-ai-badge{background:var(--accent);color:#fff;border-radius:12px;flex-shrink:0;justify-content:center;align-items:center;width:40px;height:40px;font-size:13px;font-weight:800;display:inline-flex}.board-ai-row{grid-template-columns:minmax(0,1fr) 180px;gap:12px;display:grid}.board-ai-topic input{min-height:50px;font-size:16.5px}.board-ai-level input{min-height:50px}.board-ai-layouts{border:0;flex-wrap:wrap;gap:8px;margin:0;padding:0;display:flex}.board-ai-layouts legend{color:var(--ink-soft);margin-bottom:8px;font-size:13.5px;font-weight:600}.layout-chip{border:1.5px solid var(--line-strong);cursor:pointer;background:#fff;border-radius:12px;align-items:center;gap:8px;padding:8px 14px 8px 10px;font-size:14px;font-weight:550;transition:border-color .14s,background .14s;display:inline-flex}.layout-chip input{opacity:0;width:1px;height:1px;position:absolute}.layout-chip .ui-icon{color:var(--muted);width:22px;height:22px}.layout-chip:hover{border-color:var(--accent)}.layout-chip.active{background:var(--accent-soft);border-color:var(--accent);color:var(--accent-dark)}.layout-chip.active .ui-icon{color:var(--accent)}.layout-chip:has(input:focus-visible){box-shadow:var(--focus-ring)}.board-ai-source summary{color:var(--accent-dark);cursor:pointer;font-size:14px;font-weight:600}.board-ai-source textarea{border:1px solid var(--line-strong);font:inherit;border-radius:12px;width:100%;margin-top:10px;padding:12px}.board-ai-submit{flex-wrap:wrap;align-items:center;gap:14px;display:flex}.board-ai-wait{font-size:13px}@media (max-width:700px){.board-ai{padding:20px}.board-ai-row{grid-template-columns:1fr}.board-ai-submit .button{flex:1}}.assistant{pointer-events:none;z-index:150;flex-direction:column;align-items:flex-end;gap:8px;display:flex;position:fixed;bottom:20px;right:20px}.assistant>*{pointer-events:auto}.assistant-body{cursor:pointer;background:0 0;border:0;width:80px;height:120px;padding:0}.assistant-body:focus-visible{box-shadow:var(--focus-ring);border-radius:16px;outline:none}.assistant-clip{width:100%;height:100%;display:block;overflow:visible}.assistant-shadow{fill:#14143c24;transform-box:fill-box;transform-origin:50%;animation:3.2s ease-in-out infinite assistant-shadow}.assistant-figure{filter:drop-shadow(0 6px 8px #4636d840);transform-box:fill-box;transform-origin:50% 100%;animation:3.2s ease-in-out infinite assistant-bob}.assistant-body:hover .assistant-figure{animation:.6s ease-in-out assistant-wiggle}.assistant-eyes{transform-box:fill-box;transform-origin:50%;animation:5s infinite assistant-blink}.assistant-pupils{transition:transform .12s ease-out}.assistant-mouth{transform-box:fill-box;transform-origin:50%}.assistant-body.is-talking .assistant-mouth{animation:.28s ease-in-out 5 assistant-talk}.assistant-body.is-talking .assistant-figure{animation:.5s ease-out assistant-hop}.assistant.is-open .assistant-brows{transform:translateY(-1.5px)}@keyframes assistant-bob{0%,to{transform:translateY(0)rotate(-2deg)}50%{transform:translateY(-6px)rotate(2deg)}}@keyframes assistant-shadow{0%,to{opacity:1;transform:scaleX(1)}50%{opacity:.7;transform:scaleX(.8)}}@keyframes assistant-blink{0%,92%,to{transform:scaleY(1)}95%{transform:scaleY(.1)}}@keyframes assistant-talk{0%,to{transform:scaleY(1)}50%{transform:scaleY(2.1)}}@keyframes assistant-hop{0%{transform:translateY(0)}35%{transform:translateY(-14px)rotate(-6deg)}70%{transform:translateY(0)rotate(3deg)}to{transform:translateY(0)}}@keyframes assistant-wiggle{0%,to{transform:rotate(0)}25%{transform:rotate(-9deg)}50%{transform:rotate(7deg)}75%{transform:rotate(-4deg)}}@keyframes assistant-pop{0%{opacity:0;transform:translateY(8px)scale(.96)}to{opacity:1;transform:none}}.assistant-bubble{border:1px solid var(--line);box-shadow:var(--shadow-md);background:#fff;border-radius:18px 18px 6px;max-width:300px;margin-right:28px;padding:14px 16px 12px;animation:.22s ease-out assistant-pop;position:relative}.assistant-bubble p{color:var(--ink);margin:0 18px 10px 0;font-size:14.5px;line-height:1.5}.assistant-actions{flex-wrap:wrap;align-items:center;gap:6px;display:flex}.assistant-hide{color:var(--muted);cursor:pointer;font:inherit;background:0 0;border:0;margin-left:auto;padding:4px;font-size:12.5px}.assistant-hide:hover{color:var(--ink)}.assistant-close{color:var(--muted);cursor:pointer;background:0 0;border:0;padding:4px;font-size:18px;line-height:1;position:absolute;top:6px;right:8px}.assistant-restore{background:var(--accent);box-shadow:var(--shadow-accent);color:#fff;cursor:pointer;z-index:150;border:0;border-radius:999px;width:36px;height:36px;font-size:16px;font-weight:800;position:fixed;bottom:20px;right:20px}@media (max-width:900px){.assistant{bottom:84px;right:12px}.assistant-body{width:48px;height:72px}.assistant-restore{bottom:84px;right:12px}.assistant-bubble{max-width:min(280px,82vw);margin-right:8px}}@media (prefers-reduced-motion:reduce){.assistant-figure,.assistant-shadow,.assistant-eyes,.assistant-body.is-talking .assistant-mouth,.assistant-body.is-talking .assistant-figure,.assistant-body:hover .assistant-figure,.assistant-bubble{animation:none}}.stroke-layer{pointer-events:none;z-index:90000;width:1px;height:1px;position:absolute;top:0;left:0;overflow:visible}.stroke-layer.is-erasing .stroke-hit{cursor:crosshair;pointer-events:stroke}.stroke-layer.is-erasing g:hover path:not(.stroke-hit){opacity:.35}.live-cursor{pointer-events:none;transform:scale(var(--inv,1));transform-origin:0 0;z-index:90001;transition:left .12s linear,top .12s linear;position:absolute}.live-cursor svg{fill:var(--cursor);stroke:#fff;stroke-width:1.2px;width:16px;height:16px;display:block}.live-cursor span{background:var(--cursor);color:#fff;white-space:nowrap;border-radius:6px;padding:2px 7px;font-size:12px;font-weight:650;position:absolute;top:12px;left:14px}.canvas-stage.drawing,.canvas-stage.drawing .canvas-element{cursor:crosshair}:is(body:has(.student-board) .app-header,body:has(.student-board) .site-footer,body:has(.student-board) .cookie-notice,body:has(.student-board) .app-sidebar,body:has(.student-board) .mobile-topbar,body:has(.student-board) .mobile-tabbar,body:has(.student-board) .assistant){display:none}.shell:has(.student-board){min-height:0;max-width:none!important;padding:0!important}body:has(.student-board) .app-frame{display:block}.student-board{flex-direction:column;height:100dvh;display:flex;position:relative}.student-board .canvas-stage{touch-action:none;flex:1;height:auto}.student-top{border-bottom:1px solid var(--line);background:#fff;align-items:center;gap:12px;min-height:52px;padding:8px 16px;display:flex}.student-top strong{text-overflow:ellipsis;white-space:nowrap;font-size:16px;overflow:hidden}.student-people{color:var(--muted);text-overflow:ellipsis;white-space:nowrap;flex:1;font-size:13px;overflow:hidden}.student-tools{border:1px solid var(--line);bottom:calc(16px + env(safe-area-inset-bottom));box-shadow:var(--shadow-md);z-index:10;background:#fff;border-radius:18px;align-items:center;gap:6px;max-width:calc(100vw - 24px);padding:8px 10px;display:flex;position:absolute;left:50%;overflow-x:auto;transform:translate(-50%)}.student-tool{cursor:pointer;background:0 0;border:0;border-radius:12px;flex-shrink:0;width:44px;height:44px;font-size:20px}.student-tool.active{background:var(--accent-soft);color:var(--accent-dark)}.student-sep{background:var(--line);flex-shrink:0;width:1px;height:28px}.student-color{box-shadow:0 0 0 1px var(--line-strong);cursor:pointer;border:3px solid #fff;border-radius:999px;flex-shrink:0;width:30px;height:30px}.student-color.active{box-shadow:0 0 0 2px var(--accent)}.student-width{cursor:pointer;background:0 0;border:0;border-radius:10px;flex-shrink:0;justify-content:center;align-items:center;width:36px;height:40px;display:inline-flex}.student-width span{background:var(--ink);border-radius:999px;display:block}.student-width.active{background:var(--accent-soft)}.student-paused,.student-notice{color:#8a4b00;font:inherit;z-index:11;background:#fff4e0;border:1px solid #f3d9a6;border-radius:12px;padding:8px 14px;font-size:14px;font-weight:600;position:absolute;top:64px;left:50%;transform:translate(-50%)}.student-notice{cursor:pointer;top:110px}.student-name-backdrop{z-index:20;background:#14151c59;justify-content:center;align-items:center;padding:16px;display:flex;position:absolute;inset:0}.student-name{box-shadow:var(--shadow-md);text-align:center;background:#fff;border-radius:24px;justify-items:center;gap:12px;width:100%;max-width:400px;padding:28px 24px;display:grid}.student-name img{width:72px;height:72px}.student-name h1{margin:0;font-size:1.6rem}.student-name p{margin:0}.student-name input{border:1px solid var(--line-strong);font:inherit;text-align:center;border-radius:12px;width:100%;min-height:52px;padding:0 16px;font-size:18px}.student-name .button{width:100%}.student-message{text-align:center;flex-direction:column;justify-content:center;align-items:center;display:flex}.share-button{gap:6px}.share-button.is-live{color:#15803d;border-color:#16a34a}.live-dot{background:#16a34a;border-radius:999px;width:8px;height:8px;animation:1.6s ease-in-out infinite live-pulse;display:inline-block}@keyframes live-pulse{0%,to{opacity:1}50%{opacity:.35}}@media (prefers-reduced-motion:reduce){.live-dot{animation:none}}.share-panel{width:300px}.share-text{margin:0;font-size:13.5px}.share-link{gap:6px;display:flex}.share-link input{border:1px solid var(--line-strong);font:inherit;border-radius:10px;flex:1;min-width:0;padding:0 8px;font-size:12.5px}.share-toggle{font-size:13.5px}.share-section{border-top:1px solid var(--line);gap:8px;padding-top:10px;display:grid}.share-section-head{align-items:center;gap:8px;display:flex}.share-section .is-active{background:var(--accent-soft);border-color:var(--accent);color:var(--accent-dark)}.share-authors{gap:4px;margin:0;padding:0;list-style:none;display:grid}.share-authors li{grid-template-columns:1fr auto auto;align-items:center;gap:6px;font-size:13.5px;display:grid}.share-footer{border-top:1px solid var(--line);justify-content:space-between;padding-top:10px;display:flex}.share-export{font-size:13px}.share-export a{color:var(--accent-dark);font-weight:600;text-decoration:underline}.shared-library-grid li.on-dark{background:#2e4838}.shared-library-grid li.on-dark small{color:#cbd6c8}.canvas-icon-list button.on-dark{background:#2e4838}.canvas-element-sticky,.canvas-shape-label{font-family:var(--canvas-font-sans,"Canvas Sans"), Arial, sans-serif}.canvas-element-sticky{color:var(--canvas-ink,#202636)}.board-ai-styles{border:0;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:10px;margin:0;padding:0;display:grid}.board-ai-styles legend{color:var(--ink-soft);margin-bottom:8px;font-size:13.5px;font-weight:600}.style-card{border:1.5px solid var(--line-strong);cursor:pointer;background:#fff;border-radius:12px;flex-direction:column;gap:2px;padding:0 0 10px;transition:border-color .14s,box-shadow .14s;display:flex;position:relative;overflow:hidden}.style-card input{opacity:0;width:1px;height:1px;position:absolute}.style-card-thumb{aspect-ratio:16/9;border-bottom:1px solid var(--line);object-fit:cover;width:100%;margin-bottom:6px;display:block}span.style-card-thumb{background:var(--accent-soft);justify-content:center;align-items:center;display:flex}span.style-card-thumb .ui-icon{color:var(--accent);width:32px;height:32px}.style-card-title{padding:0 10px;font-size:14px;font-weight:650}.style-card small{color:var(--muted);padding:0 10px;font-size:12px;line-height:1.3}.style-card:hover{border-color:var(--accent)}.style-card.active{border-color:var(--accent);box-shadow:0 0 0 2px var(--accent-soft)}.style-card:has(input:focus-visible){box-shadow:var(--focus-ring)}@media (max-width:600px){.board-ai-styles{grid-template-columns:repeat(2,1fr)}}.board-ai-modes{background:var(--accent-soft);border-radius:12px;gap:4px;padding:4px;display:inline-flex}.board-ai-modes button{color:var(--ink-soft);cursor:pointer;font:inherit;background:0 0;border:0;border-radius:9px;min-height:40px;padding:0 16px;font-size:14px;font-weight:600}.board-ai-modes button.active{color:var(--accent-dark);background:#fff;box-shadow:0 1px 3px #1e283c1f}.board-ai-modes button:focus-visible{box-shadow:var(--focus-ring);outline:none}.manual-plan{justify-items:start;gap:10px;display:grid}.manual-sections{gap:10px;width:100%;margin:0;padding:0;list-style:none;display:grid}.manual-section{border:1px solid var(--line);background:#fff;border-radius:12px;gap:8px;padding:12px;display:grid}.manual-section-head{align-items:center;gap:8px;display:flex}.manual-section-number{background:var(--accent-soft);color:var(--accent-dark);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:28px;height:28px;font-size:13px;font-weight:700;display:inline-flex}.manual-section-head input{border:1px solid var(--line-strong);font:inherit;border-radius:10px;flex:1;min-width:0;min-height:40px;padding:0 12px;font-weight:600}.manual-section textarea{border:1px solid var(--line-strong);font:inherit;resize:vertical;border-radius:10px;width:100%;padding:10px 12px}.manual-kind{border:1px solid var(--line-strong);border-radius:10px;flex-shrink:0;display:inline-flex;overflow:hidden}.manual-kind button{cursor:pointer;font:inherit;background:#fff;border:0;min-height:38px;padding:0 10px;font-size:13px}.manual-kind button.active{background:var(--accent-soft);color:var(--accent-dark);font-weight:600}.manual-hint{color:var(--muted);font-size:12px}.manual-hint.error{color:var(--danger,#c0392b);font-weight:600}@media (max-width:600px){.manual-section-head{flex-wrap:wrap}.manual-section-head input{flex-basis:calc(100% - 36px)}}.canvas-element-path{pointer-events:none;padding:0}.canvas-element-path .canvas-path-svg{width:100%;height:100%;position:absolute;top:0;left:0;overflow:visible}.canvas-element-path .canvas-path-hit{cursor:move;pointer-events:stroke}.canvas-element-path .canvas-resize-handle{pointer-events:auto}.canvas-element-path.selected{outline:calc(1.5px * var(--inv,1)) dashed #5b4cf0}.canvas-stage.drawing .canvas-path-hit{cursor:crosshair}.canvas-stage.erasing,.canvas-stage.erasing .canvas-element,.canvas-stage.erasing .canvas-path-hit{cursor:cell}.canvas-stage.filling,.canvas-stage.filling .canvas-element{cursor:copy}.canvas-frame-label.movable{cursor:grab;font:inherit;pointer-events:auto;transform:scale(var(--inv,1));transform-origin:0 100%;white-space:nowrap;border:0;font-size:12px;top:auto;bottom:100%}.canvas-frame-label.movable:active{cursor:grabbing}.canvas-frame-handle{pointer-events:auto;position:absolute}.canvas-frame-handle.frame-n,.canvas-frame-handle.frame-s{cursor:ns-resize;height:calc(14px * var(--inv,1));left:0;right:0}.canvas-frame-handle.frame-e,.canvas-frame-handle.frame-w{cursor:ew-resize;width:calc(14px * var(--inv,1));top:0;bottom:0}.canvas-frame-handle.frame-n{top:calc(-7px * var(--inv,1))}.canvas-frame-handle.frame-s{bottom:calc(-7px * var(--inv,1))}.canvas-frame-handle.frame-e{right:calc(-7px * var(--inv,1))}.canvas-frame-handle.frame-w{left:calc(-7px * var(--inv,1))}.canvas-frame-handle.frame-ne,.canvas-frame-handle.frame-nw,.canvas-frame-handle.frame-se,.canvas-frame-handle.frame-sw{border:calc(2px * var(--inv,1)) solid #5b4cf0;height:calc(14px * var(--inv,1));width:calc(14px * var(--inv,1));z-index:1;background:#fff;border-radius:50%}.canvas-frame-handle.frame-nw{cursor:nwse-resize;left:calc(-7px * var(--inv,1));top:calc(-7px * var(--inv,1))}.canvas-frame-handle.frame-se{bottom:calc(-7px * var(--inv,1));cursor:nwse-resize;right:calc(-7px * var(--inv,1))}.canvas-frame-handle.frame-ne{cursor:nesw-resize;right:calc(-7px * var(--inv,1));top:calc(-7px * var(--inv,1))}.canvas-frame-handle.frame-sw{bottom:calc(-7px * var(--inv,1));cursor:nesw-resize;left:calc(-7px * var(--inv,1))}.canvas-frame-handle.frame-n:hover,.canvas-frame-handle.frame-s:hover,.canvas-frame-handle.frame-e:hover,.canvas-frame-handle.frame-w:hover{background:#5b4cf02e}.canvas-rail{scrollbar-width:none;overflow-y:auto}.canvas-rail .rail-button{flex-shrink:0}.canvas-editor-layout{position:relative}.canvas-tool-options{border:1px solid var(--line);z-index:25;background:#fff;border-radius:14px;flex-wrap:wrap;align-items:center;gap:10px 14px;max-width:calc(100% - 96px);padding:8px 10px 8px 14px;display:flex;position:absolute;top:12px;left:50%;transform:translate(-50%);box-shadow:0 8px 24px #161f3224}.canvas-tool-options strong{font-size:14px}.canvas-tool-options .muted{font-size:12.5px}.canvas-tool-colors,.canvas-tool-widths{flex-wrap:wrap;gap:5px;display:flex}.canvas-tool-colors button{cursor:pointer;border:1px solid #141e3233;border-radius:50%;width:24px;height:24px;padding:0}.canvas-tool-colors button.active{box-shadow:0 0 0 2px #fff, 0 0 0 4px var(--accent)}.canvas-tool-widths button{border:1px solid var(--line-strong);cursor:pointer;background:#fff;border-radius:8px;justify-content:center;align-items:center;width:32px;height:32px;display:inline-flex}.canvas-tool-widths button span{background:var(--ink);border-radius:50%;display:block}.canvas-tool-widths button.active{background:var(--accent-soft);border-color:var(--accent)}.canvas-size-select{border:1px solid var(--line-strong);font:inherit;border-radius:10px;height:36px;padding:0 8px;font-size:13px}.canvas-draft-path{pointer-events:none}@media (max-width:700px){.canvas-tool-options{max-width:calc(100% - 72px);left:60px;transform:none}.canvas-size-select{display:none}}.canvas-save-message{text-overflow:ellipsis;white-space:nowrap;max-width:170px;overflow:hidden}.app-sidebar.compact{z-index:60;background:#f3f2fb;border-right:1px solid #dcd8f5;transition:width .16s,margin-right .16s,box-shadow .16s}.app-sidebar.compact:hover,.app-sidebar.compact:focus-within{align-items:stretch;width:248px;margin-right:-176px;padding-inline:16px;box-shadow:8px 0 28px #161f3229}.app-sidebar.compact:hover .sidebar-label,.app-sidebar.compact:focus-within .sidebar-label{white-space:nowrap;display:inline}.app-sidebar.compact:hover .sidebar-brand .sidebar-label,.app-sidebar.compact:focus-within .sidebar-brand .sidebar-label,.app-sidebar.compact:hover .sidebar-user-link .sidebar-label,.app-sidebar.compact:focus-within .sidebar-user-link .sidebar-label{display:grid}.app-sidebar.compact:hover .sidebar-logout,.app-sidebar.compact:focus-within .sidebar-logout{display:inline-flex}.app-sidebar.compact:hover .sidebar-user-link,.app-sidebar.compact:focus-within .sidebar-user-link{flex:1}.app-sidebar.compact:hover .sidebar-label-block,.app-sidebar.compact:focus-within .sidebar-label-block{display:block}.app-sidebar.compact:hover .sidebar-create,.app-sidebar.compact:focus-within .sidebar-create{justify-content:flex-start;width:auto;padding:0 14px}.app-sidebar.compact:hover .sidebar-nav a,.app-sidebar.compact:focus-within .sidebar-nav a{justify-content:flex-start;width:auto;padding:0 12px}.app-sidebar.compact:hover .sidebar-brand,.app-sidebar.compact:focus-within .sidebar-brand{margin-inline:4px}@media (prefers-reduced-motion:reduce){.app-sidebar.compact{transition:none}}.canvas-element.locked,.canvas-element.locked .canvas-path-hit{cursor:default}.canvas-lock-badge{font-size:calc(14px * var(--inv,1));pointer-events:none;right:calc(-10px * var(--inv,1));top:calc(-12px * var(--inv,1));position:absolute}.canvas-element.curtain-closed{background-image:repeating-linear-gradient(45deg,#ffffff2e 0 10px,#0000 10px 20px)}.canvas-element.curtain-open{border:calc(2px * var(--inv,1)) dashed #5b4cf08c!important;box-shadow:none!important;background:0 0!important}.canvas-element.curtain-open>span,.canvas-element.curtain-open .canvas-shape-fill{opacity:0}.canvas-curtain-toggle{border-radius:calc(8px * var(--inv,1));color:#fff;cursor:pointer;font:inherit;font-size:calc(13px * var(--inv,1));padding:calc(5px * var(--inv,1)) calc(10px * var(--inv,1));right:calc(6px * var(--inv,1));top:calc(6px * var(--inv,1));z-index:2;background:#5b4cf0;border:0;font-weight:600;position:absolute}.visually-hidden{clip:rect(0 0 0 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}label.rail-button{cursor:pointer;justify-content:center;align-items:center;display:inline-flex}label.rail-button:has(input:focus-visible){box-shadow:var(--focus-ring)}.canvas-context-bar{border:1px solid var(--line);z-index:30;background:#fff;border-radius:12px;align-items:center;gap:2px;max-width:calc(100% - 16px);padding:4px;display:flex;position:absolute;transform:translate(-50%,-100%);box-shadow:0 6px 20px #161f3229}.canvas-context-bar.below{transform:translate(-50%)}.canvas-context-bar>button,.canvas-context-bar .context-popover>button,.canvas-context-bar .context-font-size button{color:var(--ink);cursor:pointer;font:inherit;background:0 0;border:0;border-radius:8px;justify-content:center;align-items:center;min-width:34px;height:34px;padding:0 6px;font-size:13px;display:inline-flex}.canvas-context-bar button:hover{background:var(--bg)}.canvas-context-bar button.active{background:var(--accent-soft);color:var(--accent-dark)}.canvas-context-bar button.danger:hover{color:#c0392b;background:#fdecec}.canvas-context-bar .ui-icon{width:18px;height:18px}.context-divider{background:var(--line);align-self:stretch;width:1px;margin:4px 3px}.context-hint{color:var(--muted);white-space:nowrap;padding:0 8px;font-size:12.5px}.context-text-button{white-space:nowrap;font-weight:550;padding:0 10px!important}.context-bold{font-weight:800!important}.context-swatch{border:1px solid #141e3240;border-radius:50%;width:20px;height:20px;display:block}.context-font-name{text-overflow:ellipsis;white-space:nowrap;max-width:120px;overflow:hidden}.context-font-size{align-items:center;display:inline-flex}.context-font-size input{border:1px solid var(--line-strong);font:inherit;text-align:center;-moz-appearance:textfield;border-radius:6px;width:44px;height:28px;font-size:13px}.context-font-size input::-webkit-inner-spin-button{appearance:none}.context-width span{background:var(--ink);border-radius:50%;display:block}.context-popover{position:relative}.context-popover-panel{border:1px solid var(--line);z-index:2;background:#fff;border-radius:12px;max-height:320px;padding:8px;position:absolute;top:calc(100% + 6px);left:50%;overflow-y:auto;transform:translate(-50%);box-shadow:0 10px 28px #161f322e}.canvas-context-bar:not(.below) .context-popover-panel{top:auto;bottom:calc(100% + 6px)}.context-colors{grid-template-columns:repeat(6,24px);gap:5px;display:grid}.context-colors button{cursor:pointer;border:1px solid #141e3233;border-radius:50%;width:24px;height:24px;padding:0}.context-colors button.active{box-shadow:0 0 0 2px #fff, 0 0 0 4px var(--accent)}.context-colors button.none{background:linear-gradient(135deg,#fff 45%,#c0392b 45% 55%,#fff 55%)}.context-subtitle{color:var(--muted);text-transform:uppercase;margin:6px 4px 4px;font-size:11.5px;font-weight:600}.context-font-list{min-width:250px;display:grid}.context-font-list button{cursor:pointer;text-align:left;white-space:nowrap;background:0 0;border:0;border-radius:8px;padding:7px 10px;font-size:17px}.context-font-list button:hover{background:var(--bg)}.context-font-list button.active{background:var(--accent-soft)}.context-menu{min-width:170px;display:grid}.context-menu button{cursor:pointer;font:inherit;text-align:left;background:0 0;border:0;border-radius:8px;padding:8px 10px;font-size:14px}.context-menu button:hover{background:var(--bg)}.context-align-grid{grid-template-columns:repeat(4,36px);gap:4px;display:grid}.context-align-grid button{border:1px solid var(--line);cursor:pointer;background:0 0;border-radius:8px;justify-content:center;align-items:center;height:36px;display:inline-flex}.context-align-grid button:disabled{cursor:default;opacity:.35}.context-size{gap:8px;display:flex}.context-size label{align-items:center;gap:4px;font-size:13px;display:flex}.context-size input{border:1px solid var(--line-strong);font:inherit;border-radius:6px;width:72px;height:30px;font-size:13px}@media (max-width:700px){.canvas-context-bar{flex-wrap:wrap;max-width:calc(100vw - 80px)}}.canvas-element-table{align-items:stretch;padding:0}.canvas-table{border:2px solid var(--canvas-rule,#cfd6e0);border-collapse:collapse;color:var(--canvas-ink,#202636);font-family:var(--canvas-font-sans,"Canvas Sans"), Arial, sans-serif;table-layout:fixed;background:#fff;width:100%;height:100%}.canvas-table td{border:1px solid var(--canvas-rule,#cfd6e0);vertical-align:middle;word-break:break-word;padding:4px 8px;line-height:1.2;overflow:hidden}.canvas-table.editing td{padding:0}.canvas-table.editing input{font:inherit;background:0 0;border:0;width:100%;height:100%;min-height:28px;padding:4px 8px}.canvas-table.editing input:focus{outline-offset:-2px;background:#5b4cf014;outline:2px solid #5b4cf0}span.canvas-frame-label.movable{align-items:center;gap:4px;padding:0;display:inline-flex}span.canvas-frame-label.movable>button{color:#fff;cursor:grab;font:inherit;white-space:nowrap;background:0 0;border:0;padding:5px 8px;font-size:12px}span.canvas-frame-label.movable>button:active{cursor:grabbing}.canvas-frame-remove{cursor:pointer!important;border-left:1px solid #ffffff40!important}.laser-trail{pointer-events:none;z-index:100001;width:1px;height:1px;position:absolute;top:0;left:0;overflow:visible}.canvas-stage.lasering,.canvas-stage.lasering .canvas-element,.canvas-stage.lasering .canvas-path-hit{cursor:none}.account-material-list{gap:6px;margin:0;padding:0;list-style:none;display:grid}.account-material-list li{border:1px solid var(--line);border-radius:10px;grid-template-columns:auto minmax(0,1fr) auto auto;align-items:center;gap:10px;padding:8px 12px;display:grid}.account-material-kind{background:var(--accent-soft);color:var(--accent-dark);border-radius:6px;padding:2px 8px;font-size:12px;font-weight:650}.account-material-kind.sheet{color:#1f7a45;background:#e7f4ec}.account-material-title{text-overflow:ellipsis;white-space:nowrap;font-weight:600;overflow:hidden}.account-material-actions{gap:8px;font-size:13px;font-weight:600;display:inline-flex}@media (max-width:600px){.account-material-list li{grid-template-columns:auto minmax(0,1fr)}.account-material-list small,.account-material-actions{grid-column:2}}
