@font-face{font-family:SB;src:url(/assets/NotoSerifBengali-Bold.ttf) format("truetype");font-weight:700;font-style:normal;font-display:swap}:root{--navy:#17234a;--yellow:#ffd400;--ink:#141820;--muted:#6d7480;--bg:#f4f5f8;--card:#fff;--line:#e5e8ee}*{box-sizing:border-box}body,html{margin:0;padding:0;background:var(--bg);color:var(--ink);font-family:Inter,Arial,sans-serif}button,input,select,textarea{font:inherit}button{cursor:pointer}.bn{font-family:SB,serif}a{color:inherit;text-decoration:none}.shell{min-height:100vh}.topbar{height:68px;background:linear-gradient(135deg,#101a3b,#202d62);color:#fff;justify-content:space-between;padding:0 28px;position:-webkit-sticky;position:sticky;top:0;z-index:20}.brand,.topbar{display:flex;align-items:center}.brand{gap:12px}.brand img{width:42px;height:42px;object-fit:contain}.brand strong{font-size:15px}.brand span{display:block;font-size:10px;opacity:.62;margin-top:2px}.userbar{display:flex;align-items:center;gap:12px;font-size:12px}.logout{background:#ffffff14;color:#fff;border:1px solid #ffffff24;border-radius:9px;padding:8px 12px}.main{max-width:1540px;margin:0 auto}.hero,.main{padding:24px}.hero{background:linear-gradient(135deg,#fff,#f8f9fc);border:1px solid var(--line);border-radius:18px;box-shadow:0 12px 40px #17234a0b}.eyebrow{font-size:10px;font-weight:900;letter-spacing:.12em;text-transform:uppercase;color:#5f6a82}.hero h1{margin:7px 0 4px;font-size:28px;letter-spacing:-.02em}.hero p{margin:0;color:var(--muted);font-size:13px}.linkrow{display:flex;gap:10px;margin-top:18px}.linkrow input{flex:1 1;border:1px solid #d9dde5;border-radius:11px;padding:13px 14px;background:#fff;outline:none}.linkrow input:focus{border-color:#8290b8;box-shadow:0 0 0 3px #17234a10}.primary{background:var(--yellow);border:0;border-radius:11px;padding:0 20px;font-weight:900;color:#171717}.workspace{display:grid;grid-template-columns:440px 1fr;grid-gap:16px;gap:16px;margin-top:16px}.panel{background:#fff;border:1px solid var(--line);border-radius:16px;padding:14px;box-shadow:0 10px 28px #17234a08}.panel h3{margin:0 0 9px;font-size:12px}.field{margin:8px 0}.field label{display:block;font-size:10px;font-weight:900;margin:0 0 4px}.field input,.field select,.field textarea{width:100%;border:1px solid #dce0e6;border-radius:8px;padding:8px;font-size:11px;background:#fff}.field textarea{font-family:SB,serif;line-height:1.45;min-height:70px}.row2{grid-template-columns:1fr 1fr;grid-gap:7px}.row2,.row3{display:grid;gap:7px}.row3{grid-template-columns:1fr 1fr 1fr;grid-gap:7px}.section{border-top:1px solid var(--line);margin-top:10px;padding-top:10px}.sectiontitle{display:flex;justify-content:space-between;align-items:center;font-size:11px;font-weight:900}.muted{font-size:9px;color:var(--muted);line-height:1.35}.chips{display:flex;gap:5px;flex-wrap:wrap}.chip{border:1px solid #dfe3ea;background:#fafbfc;border-radius:999px;padding:4px 7px;font-size:9px}.btn{border:1px solid #dfe3ea;background:#fff;border-radius:9px;padding:8px 11px;font-size:10px;font-weight:800}.btn.dark{background:var(--navy);color:#fff;border-color:var(--navy)}.btn.yellow{background:var(--yellow);border-color:var(--yellow)}.btnrow{display:flex;gap:6px;flex-wrap:wrap}.previewbox{background:#20263b;border-radius:16px;padding:14px;display:flex;justify-content:center;align-items:flex-start;min-height:650px}.posterimg{width:min(100%,720px);height:auto;display:block;box-shadow:0 16px 50px #0007}.candidates{display:grid;grid-template-columns:repeat(3,1fr);grid-gap:6px;gap:6px;margin-top:7px}.candidate{border:2px solid transparent;border-radius:8px;overflow:hidden;background:#f3f4f6}.candidate.sel{border-color:var(--yellow)}.candidate img{width:100%;height:70px;object-fit:cover;display:block}.candidate span{display:block;font-size:8px;padding:4px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.library{display:grid;grid-template-columns:repeat(4,1fr);grid-gap:10px;gap:10px;margin-top:16px}.thumb{background:#fff;border:1px solid var(--line);border-radius:12px;overflow:hidden}.thumb img{width:100%;display:block;aspect-ratio:4/5;object-fit:cover}.thumb .meta{padding:8px;font-size:9px}.login{min-height:100vh;display:grid;place-items:center;background:radial-gradient(circle at 20% 10%,#fff,#eef1f7 55%,#e8ebf3)}.loginbox{width:min(420px,92vw);background:#fff;border:1px solid var(--line);border-radius:20px;padding:28px;box-shadow:0 30px 80px #17234a18}.loginlogo{width:70px;height:70px;object-fit:contain}.loginbox h1{font-size:24px;margin:12px 0 5px}.loginbox p{font-size:12px;color:var(--muted);margin:0 0 18px}.loginbox input{width:100%;padding:12px;border:1px solid #d9dde5;border-radius:10px;margin:6px 0}.loginbox button{width:100%;padding:12px;border:0;border-radius:10px;background:var(--yellow);font-weight:900;margin-top:8px}.error{background:#fff1f1;color:#a62c2c;border:1px solid #ffd4d4;border-radius:9px;padding:8px;font-size:10px;margin-top:8px}.captionbox{background:#fbfcfd;border:1px solid var(--line);border-radius:10px;padding:10px;font-family:SB,serif;font-size:12px;line-height:1.7}.loading{display:inline-flex;align-items:center;gap:7px}.dot{width:7px;height:7px;border-radius:50%;background:#17234a;animation:pulse 1s infinite}.dot:nth-child(2){animation-delay:.15s}.dot:nth-child(3){animation-delay:.3s}@keyframes pulse{50%{opacity:.25}}@media(max-width:1100px){.workspace{grid-template-columns:1fr}.previewbox{order:-1}.library{grid-template-columns:repeat(2,1fr)}}@media(max-width:700px){.main{padding:12px}.topbar{padding:0 14px}.linkrow{flex-direction:column}.primary{height:44px}.row3{grid-template-columns:1fr}.library{grid-template-columns:1fr 1fr}}.linkbar{position:-webkit-sticky;position:sticky;top:68px;z-index:15;background:#fff;border-bottom:1px solid var(--line);padding:10px 20px;display:flex;gap:10px;align-items:center}.linkbar input{flex:1 1;border:1px solid #d9dde5;border-radius:10px;padding:11px 12px;outline:none;font-size:13px}.linkbar input:focus{border-color:#8290b8;box-shadow:0 0 0 3px #17234a10}.linkbar .primary{padding:0 18px;height:42px}.linkmsg{font-size:11px;color:var(--muted);padding:6px 20px 0}.editor{display:grid;grid-template-columns:330px minmax(0,1fr) 380px;grid-gap:14px;gap:14px;padding:14px 20px;height:calc(100vh - 68px - 64px);align-items:stretch}.pane{border:1px solid var(--line);border-radius:14px;padding:12px;overflow-y:auto}.pane,.pane h3{background:#fff}.pane h3{margin:0 0 10px;font-size:12px;position:-webkit-sticky;position:sticky;top:-12px;padding:6px 0;z-index:2}.pane .sectiontitle{font-size:10px;font-weight:900;letter-spacing:.04em;text-transform:uppercase;color:#5f6a82;margin:2px 0 4px}.canvas{background:#20263b;border-radius:14px;display:flex;align-items:center;justify-content:center;padding:16px;overflow:hidden}.canvas img{max-width:100%;max-height:100%;width:auto;height:auto;box-shadow:0 16px 50px #0007;border-radius:4px}.canvas .empty{color:#fff;opacity:.7;text-align:center;font-size:13px;padding:24px;line-height:1.6}.pxval{float:right;font-weight:800;color:var(--navy);opacity:.85}.pane input[type=range]{width:100%;accent-color:var(--navy);height:20px;cursor:pointer}.pane input[type=color]{width:100%;height:36px;padding:3px;cursor:pointer}@media(max-width:1200px){.editor{grid-template-columns:1fr;height:auto}.canvas{order:-1;min-height:440px}.pane{max-height:none}}.contenthead{display:flex;align-items:center;justify-content:space-between;position:-webkit-sticky;position:sticky;top:-12px;background:#fff;padding:6px 0;z-index:2}.savestate{font-size:10px;font-weight:800;color:#3a9d5d}.sharepage{min-height:100vh;display:flex;justify-content:center;padding:24px 14px;background:var(--bg)}.sharecard{width:min(560px,96vw);background:#fff;border:1px solid var(--line);border-radius:16px;padding:18px;box-shadow:0 10px 40px #0000000d}.shareposter{width:100%;border-radius:12px;margin-top:10px;display:block}.shareactions{display:flex;gap:10px;margin:14px 0 6px}.shareactions .btn{flex:1 1;justify-content:center;text-align:center;padding:13px 12px;font-weight:800}.sharecaptionhead{display:flex;align-items:center;justify-content:space-between;margin-top:14px;font-size:11px;font-weight:900;letter-spacing:.04em;text-transform:uppercase;color:#5f6a82}.sharecaption{margin-top:8px;white-space:pre-wrap;line-height:1.85;font-size:16px;color:#1a2230;background:#f7f8fb;border:1px solid var(--line);border-radius:12px;padding:14px 15px}.sharefoot{margin-top:14px;text-align:center;font-size:11px}.captionbox{white-space:pre-wrap;line-height:1.85}.startscreen{padding:14px 20px}.recentwrap{margin-top:16px;background:#fff;border:1px solid var(--line);border-radius:14px;padding:14px}.recenttitle{font-size:11px;font-weight:900;letter-spacing:.04em;text-transform:uppercase;color:#5f6a82;margin-bottom:10px}.recentgrid{display:grid;grid-template-columns:repeat(5,1fr);grid-gap:10px;gap:10px}.recentgrid .recentcard{min-width:0}.recentcard{border:1px solid var(--line);border-radius:10px;overflow:hidden;display:flex;flex-direction:column;background:#fafbfc}.recentcard img{width:100%;aspect-ratio:4/5;object-fit:cover;display:block}.recentcard .btn{border:0;border-top:1px solid var(--line);border-radius:0;font-size:11px;padding:8px}@media(max-width:1000px){.topbar{height:auto;gap:8px}.linkbar,.topbar{flex-wrap:wrap;padding:10px 14px}.linkbar{position:static}.linkbar input{min-width:0;flex:1 1 100%}.linkbar .primary{flex:1 1 100%;height:44px}.editor{grid-template-columns:1fr;height:auto;padding:12px 14px}.pane{max-height:none;overflow:visible}.contenthead,.pane h3{position:static}.canvas{order:-1;min-height:56vh}.recentgrid{grid-template-columns:repeat(3,1fr)}.row3{grid-template-columns:1fr 1fr}}@media(max-width:560px){.row3{grid-template-columns:1fr 1fr}.recentgrid{grid-template-columns:repeat(2,1fr)}.topbar .brand span{display:none}.startscreen{padding:12px 14px}.pane input[type=range]{height:26px}.pane input[type=color]{height:40px}}.recentcardbtns{display:flex;border-top:1px solid var(--line)}.recentcardbtns .btn,.recentcardbtns a.btn{flex:1 1;border:0;border-radius:0;font-size:11px;padding:8px;text-align:center;text-decoration:none;color:var(--ink);display:block}.recentcard{position:relative}.recentdel{position:absolute;top:6px;left:6px;width:24px;height:24px;border-radius:50%;background:rgba(0,0,0,.6);color:#fff;border:0;font-size:16px;line-height:1;cursor:pointer;display:flex;align-items:center;justify-content:center;z-index:3;padding:0}.recentdel:hover{background:#c0392b}.captionedit{width:100%;min-height:220px;resize:vertical;border:1px solid var(--line);border-radius:12px;padding:12px 13px;line-height:1.8;font-size:14px;background:#f7f8fb;color:#1a2230;white-space:pre-wrap;outline:none}.captionedit:focus{border-color:#8290b8;box-shadow:0 0 0 3px #17234a10;background:#fff}.aiprompt{width:100%;min-height:80px;resize:vertical;border:1px solid var(--line);border-radius:10px;padding:10px 11px;font-size:13px;line-height:1.6;outline:none;background:#fff}.aiprompt:focus{border-color:#8290b8;box-shadow:0 0 0 3px #17234a10}.discoverwrap{background:#fff;border:1px solid var(--line);border-radius:14px;padding:14px}.discoverhead{display:flex;align-items:center;justify-content:space-between}.discoverlist{display:flex;flex-direction:column;gap:8px;margin-top:6px}.discoveritem{display:flex;gap:10px;align-items:center;justify-content:space-between;border:1px solid var(--line);border-radius:10px;padding:10px 12px;background:#fafbfc}.discovermain{min-width:0;flex:1 1}.discovertitle{font-weight:700;font-size:14px;color:var(--ink);text-decoration:none;display:block;line-height:1.4}.discovertitle:hover{text-decoration:underline}.discovermeta{font-size:11px;color:var(--muted);margin-top:3px}.tag{display:inline-block;background:#eef1f7;color:#3a4a6b;border-radius:20px;padding:1px 8px;font-weight:800;font-size:10px;margin-right:4px}.discoverbtns{display:flex;align-items:center;gap:8px;flex-shrink:0}.discoverbtns .recentdel{position:static}@media(max-width:560px){.discoveritem{flex-wrap:wrap}.discoverbtns{width:100%;justify-content:flex-end}}.rebuildwrap{background:#fff;border:1px solid var(--line);border-radius:14px;padding:14px}.rebuildcap{width:100%;min-height:110px;resize:vertical;border:1px solid var(--line);border-radius:10px;padding:10px 11px;font-size:14px;line-height:1.7;outline:none;background:#fff;margin-top:6px}.rebuildcap:focus{border-color:#8290b8;box-shadow:0 0 0 3px #17234a10}.rebuildrow{display:flex;gap:10px;align-items:flex-end;justify-content:space-between;margin-top:8px;flex-wrap:wrap}.rebuildrow .btn{flex-shrink:0}.sourceswrap{background:#fff;border:1px solid var(--line);border-radius:14px;padding:16px}.sourceswrap .recenttitle{margin-bottom:12px}.sourcesgrid{display:grid;grid-template-columns:1fr 1fr;grid-gap:10px;gap:10px}.sourcechip{display:flex;align-items:center;justify-content:space-between;gap:8px;background:#f7f8fb;border:1px solid var(--line);border-radius:10px;padding:11px 14px;transition:border-color .15s,box-shadow .15s,background .15s}.sourcechip:hover{background:#fff;border-color:#8290b8;box-shadow:0 2px 10px #17234a12}.sourcechip a{color:var(--navy);font-weight:700;font-size:14px;text-decoration:none;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;flex:1 1}.sourcechip a:after{content:" ↗";color:#8290b8;font-weight:400}.sourcechip a:hover{text-decoration:underline}.sourcedel{flex-shrink:0;width:22px;height:22px;border:0;border-radius:50%;background:#e5e8ee;color:#5f6a82;font-size:14px;line-height:1;cursor:pointer;display:flex;align-items:center;justify-content:center;padding:0}.sourcedel:hover{background:#c0392b;color:#fff}.sourceadd{grid-column:1/-1;display:flex;gap:8px;margin-top:2px;flex-wrap:wrap;border-top:1px dashed var(--line);padding-top:12px}.sourceadd input{flex:1 1;min-width:130px;border:1px solid #d9dde5;border-radius:9px;padding:10px 11px;font-size:13px;outline:none}.sourceadd input:focus{border-color:#8290b8;box-shadow:0 0 0 3px #17234a10}.sourceadd .btn{flex-shrink:0}@media(max-width:640px){.sourcesgrid{grid-template-columns:1fr}.sourceadd{flex-direction:column}.sourceadd .btn{width:100%}}.quizwrap{background:#0f1830;border:1px solid #223154;border-radius:14px;padding:14px 16px}.quizwrap .rebuildcap{min-height:64px}.quizopts{display:grid;grid-template-columns:1fr 1fr;grid-gap:8px;gap:8px;margin-top:10px}.quizoptrow{display:flex;align-items:center;gap:8px}.quizoptrow input{flex:1 1}.quizoptbadge{display:inline-flex;align-items:center;justify-content:center;min-width:40px;height:40px;padding:0 6px;border-radius:10px;background:#ffd400;color:#0f1830;font-weight:800;font-size:16px;flex:0 0 auto}@media (max-width:720px){.quizopts{grid-template-columns:1fr}}