:root{--bg:#f7f8fa;--surface:#fff;--text:#202b38;--muted:#788391;--line:#e5e9ed;--accent:#157c70;--soft:#e9f5f1;--canvas:#f5f7f8;--dots:#d6dee2;--shadow:0 6px 25px #21314408}*{box-sizing:border-box}body{margin:0;font:16px/1.5 'Segoe UI',Arial,sans-serif;color:var(--text);background:var(--bg)}body.dark{--bg:#12191f;--surface:#1b242c;--text:#e7edf3;--muted:#9aa9b6;--line:#303c47;--accent:#42bda7;--soft:#203c37;--canvas:#141d24;--dots:#33404a;--shadow:0 6px 25px #0002}button,input,select{font:inherit}button{cursor:pointer;display:inline-flex;align-items:center;justify-content:center;gap:7px;border:0;border-radius:8px;padding:10px 14px;background:transparent;color:inherit;font-size:14px;font-weight:600;transition:background .15s}button:hover{background:var(--soft)}button:disabled{opacity:.5;cursor:wait}input,select{color:var(--text);background:var(--surface);border:1px solid var(--line);border-radius:7px;padding:10px;min-width:0}input:focus,select:focus,[contenteditable]:focus{outline:2px solid var(--accent);outline-offset:1px}button:focus-visible{outline:2px solid var(--accent)}.primary{background:var(--accent);color:#fff;padding:11px 18px}.primary:hover{filter:brightness(.92);background:var(--accent)}.outline{border:1px solid var(--line);background:var(--surface)}.sidebar{width:240px;position:fixed;inset:0 auto 0 0;background:var(--surface);border-right:1px solid var(--line);padding:30px 18px;display:flex;flex-direction:column}.brand{font-weight:750;font-size:27px;letter-spacing:-1px;display:flex;align-items:center;gap:9px;margin:0 10px 45px}.brandmark{background:var(--accent);color:white;border-radius:10px;width:35px;height:35px;text-align:center}.beta{font-size:10px;letter-spacing:1px;border:1px solid var(--line);padding:2px 5px;border-radius:4px;color:var(--muted);margin-left:auto}.workspace-label,.section-title{font-size:12px;letter-spacing:1.2px;font-weight:600;color:var(--muted)}.workspace-label{margin:0 12px 12px}.nav{justify-content:flex-start;width:100%;margin-bottom:5px}.nav span{margin-left:auto;background:var(--surface);padding:0 6px;border-radius:4px}.nav.active{background:var(--soft);color:var(--accent)}.section-title{display:flex;align-items:center;justify-content:space-between;margin:27px 10px 10px}.section-title button{padding:0 5px;font-size:20px}.projectnav{width:100%;text-align:left;justify-content:flex-start;font-weight:400;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.projectnav.active{background:var(--soft)}#projectList{overflow:auto}.sidefooter{margin-top:auto;border-top:1px solid var(--line);padding-top:20px;display:flex;gap:10px;font-size:14px}.avatar{background:var(--soft);color:var(--accent);padding:7px 13px;border-radius:50%;font-weight:700}small{display:block;color:var(--muted);font-size:12px}.sidefooter small{margin-top:2px}main{margin-left:240px}header{height:80px;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;padding:0 36px;background:var(--surface)}.breadcrumbs{font-size:14px;color:var(--muted)}.breadcrumbs span{padding:0 14px;color:#bbc3ca}.breadcrumbs b{color:var(--text);font-weight:500}#dashboard{max-width:1400px;padding:45px 44px;margin:auto}.page-title{display:flex;align-items:center;justify-content:space-between;gap:20px}.eyebrow{font-size:12px;color:var(--accent);letter-spacing:1.5px;font-weight:600}h1{font-size:34px;letter-spacing:-1px;margin:8px 0}.dot{color:var(--accent)}p{color:var(--muted);font-size:14px}.summary{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin:33px 0 40px}.summary>div{background:var(--surface);border:1px solid var(--line);border-radius:12px;padding:20px 24px;display:grid;grid-template-columns:48px auto;column-gap:14px}.summary-icon{grid-row:span 2;border-radius:10px;background:var(--soft);color:var(--accent);display:grid;place-items:center;font-size:25px}.summary strong{font-size:25px;line-height:1.2}.summary small{font-size:14px}.listheading{display:flex;justify-content:space-between;align-items:center;margin:0 0 20px}.listheading h2{font-size:19px;margin:0}.listheading>span{font-size:13px;color:var(--muted)}.project-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:20px}.projectcard{border:1px solid var(--line);background:var(--surface);border-radius:12px;overflow:hidden;box-shadow:var(--shadow)}.mapmini{height:155px;background-color:var(--canvas);background-image:radial-gradient(var(--dots) 1px,transparent 1px);background-size:14px 14px;position:relative;cursor:pointer}.mapmini svg{width:100%;height:100%}.cardbody{padding:20px}.cardbody h3{font-size:17px;margin:0 0 7px}.cardmeta{display:flex;gap:15px;font-size:12px;color:var(--muted)}.cardfoot{display:flex;justify-content:space-between;border-top:1px solid var(--line);margin-top:18px;padding-top:12px}.cardfoot button:first-child{color:var(--accent);padding-left:0}.newcard{border:1px dashed var(--line);border-radius:12px;min-height:285px;display:flex;flex-direction:column;gap:8px;align-items:center;justify-content:center;background:transparent;color:var(--muted);font-size:15px}.newcard b{font-size:30px;background:var(--soft);color:var(--accent);width:45px;border-radius:10px;font-weight:400}.editorbar{padding:18px 24px;border-bottom:1px solid var(--line);background:var(--surface);display:flex;justify-content:space-between;align-items:center;gap:15px}.editorbar>div:first-child{display:flex;align-items:center;gap:14px;min-width:0}.editorbar input{border:none;font-size:19px;font-weight:600;width:250px;background:transparent}.back{font-weight:400;color:var(--muted)}#saveState{font-size:12px;color:var(--muted);white-space:nowrap}.actions{display:flex;gap:8px}.editor-layout{display:flex;height:calc(100dvh - 163px);min-height:450px}.canvas-wrap{flex:1;overflow:auto;position:relative;background-color:var(--canvas);background-image:radial-gradient(var(--dots) 1px,transparent 1px);background-size:20px 20px}.canvas-tools{position:sticky;top:15px;left:15px;z-index:5;background:var(--surface);border:1px solid var(--line);border-radius:9px;box-shadow:var(--shadow);display:flex;align-items:center;width:max-content;max-width:calc(100% - 30px);padding:3px 8px;font-size:12px}.canvas-tools>span:first-child{padding:0 10px;color:var(--muted)}#world{width:5000px;height:4000px;position:relative;transform-origin:0 0}#edges{position:absolute;inset:0;pointer-events:none}#edges path{pointer-events:stroke;cursor:pointer;stroke-width:2.5;fill:none;stroke:var(--accent);opacity:.5}#edges path:hover{stroke:#ec6868;stroke-width:5;opacity:1}.node{position:absolute;width:255px;border:1.5px solid;border-radius:11px;box-shadow:0 5px 15px #2030350a;overflow:visible;cursor:pointer}.node.selected{outline:2px solid var(--accent);outline-offset:4px}.node-head{padding:13px 14px 10px;display:flex;align-items:center;gap:7px;cursor:grab;touch-action:none;font-size:16px;font-weight:650}.node-head:active{cursor:grabbing}.node-head strong{overflow-wrap:anywhere;flex:1}.node-head button{padding:0 4px;color:inherit}.node-body{padding:0 14px 14px;overflow-wrap:anywhere;line-height:1.5}.node-body p{font-size:inherit;color:inherit;margin:0}.node-attachments{padding:0 12px 12px}.node img,.node video{width:100%;max-height:155px;object-fit:cover;border-radius:6px;display:block;margin-bottom:6px}.filelink{font-size:13px;display:flex;gap:7px;align-items:center;border:1px solid #7b899b35;padding:7px;border-radius:6px;margin-top:5px;color:inherit;text-decoration:none;overflow-wrap:anywhere}.port{position:absolute;right:-7px;top:24px;width:13px;height:13px;border:2px solid var(--accent);border-radius:50%;background:var(--surface)}.canvas-bottom{position:sticky;bottom:16px;left:18px;width:max-content;background:var(--surface);border:1px solid var(--line);padding:7px 12px;border-radius:7px;font-size:11px;letter-spacing:1px;color:var(--muted)}.canvas-bottom span{margin-left:12px}#inspector{width:310px;background:var(--surface);border-left:1px solid var(--line);overflow:auto;padding:20px;flex-shrink:0}.inspector-heading{display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid var(--line);padding-bottom:14px;margin-bottom:15px}.inspector-heading h3{font-size:15px;margin:0}.inspector-heading button{font-size:21px;padding:0 5px}#nothing{text-align:center;padding:65px 10px}#nothing>span{font-size:42px;color:var(--accent)}#nothing h3{font-size:16px}#nothing p{font-size:14px}label{display:block;font-size:13px;font-weight:600;margin:15px 0 7px}#nodeTitle{width:100%}.formatbar{display:flex;align-items:center;gap:3px;padding:4px;border:1px solid var(--line);border-radius:7px 7px 0 0}.formatbar button{padding:5px 8px}.formatbar select{font-size:12px;padding:4px}.formatbar input[type=color]{width:30px;height:28px;padding:2px;border:0}.formatbar button.on{background:var(--soft);color:var(--accent)}#richText{min-height:125px;max-height:300px;overflow:auto;padding:12px;border:1px solid var(--line);border-top:0;border-radius:0 0 7px 7px;font-size:16px}#richText:empty:before{content:attr(data-placeholder);color:var(--muted)}.colorrow{display:flex;gap:18px}.colorrow label{margin:0;display:flex;align-items:center;gap:10px;font-size:12px}.colorrow input{width:34px;height:30px;padding:2px}.palette{display:flex;gap:8px;margin:13px 0}.swatch{border:1px solid #8996a555;width:25px;height:25px;border-radius:50%;padding:0}.full{width:100%;margin-top:10px}.upload-box{border:1px dashed var(--line);border-radius:8px;text-align:center;padding:18px 8px;cursor:pointer;color:var(--accent)}.upload-box small{font-size:11px;margin-top:5px;font-weight:400}.attachment-row,.connection-row{display:flex;gap:6px;align-items:center;font-size:13px;padding:8px 0;border-bottom:1px solid var(--line)}.attachment-row a{color:var(--text);overflow-wrap:anywhere;flex:1;text-decoration:none}.attachment-row button,.connection-row button{padding:3px 6px}.connection-row span{flex:1}.danger{color:#c95858;border:1px solid #c9585840;margin-top:25px}#uploadState{font-size:12px;color:var(--accent)}dialog{background:var(--surface);color:var(--text);border:1px solid var(--line);border-radius:14px;padding:26px;width:420px;max-width:calc(100% - 30px)}dialog::backdrop{background:#0a192a60;backdrop-filter:blur(3px)}.dialog-head{display:flex;justify-content:space-between;align-items:center}.dialog-head h2{margin:0;font-size:22px}.dialog-head button{font-size:25px;padding:0}dialog input{width:100%}.dialog-actions{display:flex;justify-content:flex-end;gap:10px;margin-top:25px}#toast{position:fixed;bottom:24px;left:50%;transform:translateX(-50%);background:var(--text);color:var(--surface);padding:12px 20px;border-radius:9px;z-index:20;display:none;font-size:14px}[hidden]{display:none!important}.favcard{padding:20px;cursor:pointer}.favcard h3{margin:0 0 8px}.favcard small{margin-top:10px}@media(max-width:1100px){.sidebar{width:200px}main{margin-left:200px}#dashboard{padding:32px 25px}#inspector{width:270px}.editorbar{flex-wrap:wrap}.editor-layout{height:calc(100dvh - 210px)}.canvas-tools>span:first-child{display:none}.editorbar input{width:200px}}@media(max-width:760px){.sidebar{position:static;width:100%;height:auto;padding:12px 16px;flex-direction:row;align-items:center;gap:10px;border-right:0;border-bottom:1px solid var(--line)}.brand{margin:0;font-size:23px}.beta,.workspace-label,.sidebar .section-title,#projectList,.sidefooter,#allprojects span{display:none}.nav{width:auto;font-size:12px;margin:0;padding:8px}.brandmark{width:30px;height:30px}.nav.active{margin-left:auto}main{margin-left:0}header{height:62px;padding:0 18px}.breadcrumbs{font-size:12px}#dashboard{padding:26px 18px}.page-title{align-items:flex-start}.page-title p{max-width:260px}h1{font-size:27px}.eyebrow{font-size:10px}.page-title .primary{font-size:12px;padding:10px;white-space:nowrap}.summary{gap:8px;margin:20px 0 28px}.summary>div{padding:13px 10px;display:block}.summary-icon{display:none}.summary strong{font-size:23px}.summary small{font-size:11px}.listheading>span{display:none}.editorbar{padding:10px 14px}.editorbar input{width:160px;font-size:16px}.editorbar>div:first-child{gap:4px}.actions{width:100%;justify-content:flex-end}.actions button{font-size:12px;padding:8px 10px}.editor-layout{height:calc(100dvh - 226px);position:relative}#inspector{position:absolute;right:0;top:0;bottom:0;z-index:6;width:285px;box-shadow:-5px 0 20px #0002}#inspector:has(#nodeForm[hidden]){display:none}.project-grid{grid-template-columns:1fr}.canvas-tools{top:8px;left:8px}.back{font-size:12px}}
body.dark{--bg:#1c1c1e;--surface:#28282b;--text:#eeeef0;--muted:#a4a4ad;--line:#414145;--accent:#25b878;--soft:#263f34;--canvas:#1c1c1e;--dots:#303034}header{gap:8px}header .breadcrumbs{margin-right:auto}.node{border-width:2px;border-radius:9px;box-shadow:none}.node-head{font-size:15px;font-weight:500;min-height:58px}.node-icon{background:#55a5bd;color:white;border-radius:50%;width:29px;height:29px;display:grid;place-items:center;margin-right:4px}.port{top:50%;transform:translateY(-50%);width:15px;height:15px;background:var(--accent);border:3px solid var(--canvas);padding:0;touch-action:none;right:-9px}.input-port{right:auto;left:-9px;background:#777}.drop-target{outline:3px solid var(--accent);outline-offset:7px}#edges path{stroke-dasharray:4 5;opacity:.85;stroke-width:2.5}.temporary-edge{stroke-dasharray:3 4!important}.color-trigger{width:29px;height:29px;border:2px solid #9998;box-shadow:inset 0 0 0 2px #ffffff22;border-radius:7px;padding:0;color:transparent}.formatbar .color-trigger{margin-left:auto}.saturation{height:180px;border-radius:9px;position:relative;touch-action:none;background-image:linear-gradient(to top,#000,transparent),linear-gradient(to right,#fff,transparent);margin-top:20px;cursor:crosshair;overflow:hidden}.saturation span{position:absolute;width:15px;height:15px;border:2px solid white;box-shadow:0 0 2px #000;border-radius:50%;transform:translate(-50%,-50%);pointer-events:none}.hue{width:100%;appearance:none;height:13px;border:0;background:linear-gradient(to right,red,#ff0,#0f0,#0ff,#00f,#f0f,red);padding:0;border-radius:20px}.hue::-webkit-slider-thumb{appearance:none;width:19px;height:19px;border:2px solid white;border-radius:50%;background:transparent;box-shadow:0 0 2px #000}.hue::-moz-range-thumb{width:17px;height:17px;border:2px solid white;border-radius:50%;background:transparent}.hexrow{display:flex;align-items:center;gap:12px;margin:18px 0}.hexrow span{width:38px;height:38px;border-radius:8px;border:1px solid var(--line)}.hexrow input{flex:1}#colorPresets{display:flex;gap:8px;flex-wrap:wrap}#colorPresets button{width:27px;height:27px;padding:0;border:1px solid #9998;border-radius:50%}.node-tasks{padding:0 12px 14px}.task{display:flex;gap:6px;align-items:center;font-size:13px;margin:7px 0}.task>span:nth-child(2){flex:1;overflow-wrap:anywhere}.task select{max-width:100px;padding:3px;font-size:10px;background:#ffffff12;color:inherit;border-color:#8885}.task select option{color:#222;background:white}.task.done>span:nth-child(2){text-decoration:line-through;opacity:.65}.task-dot{color:#35b581}.task.doing .task-dot{color:#eeb950}.task.todo .task-dot{color:#999}.task-edit{display:grid;grid-template-columns:1fr 90px 25px;gap:5px;margin-top:8px}.task-edit input,.task-edit select{font-size:12px;padding:6px;min-width:0}.task-edit button{padding:0}#addItemForm{display:flex;gap:5px}#itemText{width:100%;font-size:13px}.auth-screen{position:fixed;inset:0;background:var(--bg);z-index:15;display:grid;place-items:center;padding:20px;background-image:radial-gradient(var(--dots) 1px,transparent 1px);background-size:23px 23px}.auth-card{background:var(--surface);border:1px solid var(--line);border-radius:16px;padding:36px;width:400px;max-width:100%;box-shadow:0 15px 60px #0002}.auth-card .brand{margin:0 0 30px}.auth-card h1{font-size:27px}.auth-card input{width:100%}.error{color:#e07a7a;font-size:14px;margin:12px 0}.wide-dialog{width:720px}.user-row{display:flex;align-items:center;gap:18px;border-bottom:1px solid var(--line);padding:14px 0}.user-row>div{flex:1}.user-row label{margin:0}.user-row input[type=date]{display:block;font-size:13px;padding:5px}.check-label{display:flex;align-items:center;gap:5px}.user-row input[type=checkbox]{width:17px;height:17px}.member-row{display:flex;align-items:center;gap:8px;border-bottom:1px solid var(--line);padding:10px 0;font-size:13px}.member-row>span,.member-row>strong{flex:1}.member-row select{font-size:12px;padding:5px}.member-row button{margin:0;padding:5px;font-size:12px}.invite-row{padding:15px 0;border-bottom:1px solid var(--line)}.invite-row>div{display:flex;gap:8px;margin-top:12px}#inviteLink{width:100%;margin-top:20px}.has-invites{color:var(--accent);border-color:var(--accent)}.formatbar button:disabled,.port:disabled{opacity:.4}.editorbar .actions{flex-wrap:wrap}.editorbar input{width:210px}.editor-layout{height:calc(100dvh - 177px)}@media(max-width:1000px){header{padding:12px;flex-wrap:wrap;height:auto;min-height:80px}header button{font-size:12px;padding:6px}.editorbar>div:first-child{flex-wrap:wrap}.editor-layout{height:calc(100dvh - 225px)}}@media(max-width:760px){header .breadcrumbs{width:100%}.user-row{flex-wrap:wrap}.user-row>div{width:100%;flex:none}.editor-layout{height:calc(100dvh - 275px)}.task select{font-size:11px}.actions button{padding:6px;font-size:11px}.auth-card{padding:25px}}
body.dark .canvas-wrap{background-image:none}body.dark .node{box-shadow:0 2px 4px #0001}.color-trigger:disabled{opacity:.5;cursor:default}#projectName:disabled{opacity:1;color:var(--text)}
.participants-bar{display:flex;align-items:center;gap:18px;padding:10px 24px;background:var(--surface);border-bottom:1px solid var(--line);height:64px}.participants-bar>span{font-size:11px;letter-spacing:1px;color:var(--muted);white-space:nowrap}#projectParticipants{display:flex;gap:18px;overflow:auto;align-items:center;flex:1}.participant{display:flex;gap:8px;align-items:center;flex-shrink:0;font-size:13px}.participant small{font-size:10px}.participant-avatar{width:30px;height:30px;border-radius:50%;object-fit:cover;flex-shrink:0}.initials{display:grid;place-items:center;background:var(--soft);border:1px solid var(--line);color:var(--accent);font-size:11px;font-weight:650}.large-avatar{width:82px;height:82px;font-size:25px}.profile-photo{display:flex;flex-direction:column;align-items:center;gap:12px;margin:20px 0}.profile-photo label{cursor:pointer;padding:8px 14px;border-radius:8px;margin:0}.profile-photo small{font-size:12px}.status-settings{font-size:13px;margin:10px 0;border:1px solid var(--line);padding:10px;border-radius:8px}.status-settings summary{cursor:pointer;color:var(--muted)}.status-definition{display:flex;gap:7px;align-items:center;margin-top:10px}.status-definition input{min-width:0;width:100%;padding:7px;font-size:12px}.status-definition button:last-child{padding:4px}.status-color{width:27px;height:27px;border-radius:7px;border:1px solid #8885;flex-shrink:0;padding:0}#addStatusForm{display:flex;gap:6px;margin-top:13px}#newStatusName{min-width:0;width:100%;font-size:12px;padding:7px}#nodeStatus{width:100%}.node-status-badge{font-size:11px;font-weight:600;padding:0 14px 10px;opacity:.9}.canvas-wrap{overflow:hidden;cursor:grab;touch-action:none}.canvas-wrap.panning{cursor:grabbing}.canvas-tools{position:absolute;top:15px;left:15px}.canvas-bottom{position:absolute;bottom:16px;left:18px}#world{width:1px;height:1px;will-change:transform}#edges{overflow:visible}.editor-layout{height:calc(100dvh - 241px)}.task>span:nth-child(2){border-left:2px solid var(--task-color);padding-left:5px}.node-tasks .task.done>span:nth-child(2){text-decoration:none;opacity:1}@media(max-width:1000px){.editor-layout{height:calc(100dvh - 289px)}}@media(max-width:760px){.participants-bar{padding:8px 14px;gap:10px}.participants-bar>span{font-size:9px}.editor-layout{height:calc(100dvh - 339px);min-height:350px}.canvas-tools{top:8px;left:8px}}
#plansPage{padding:36px;max-width:1500px;margin:auto}.billing-summary{display:flex;gap:40px;background:var(--surface);border:1px solid var(--line);border-radius:12px;padding:23px;margin:26px 0}.billing-summary>div{display:flex;flex-direction:column;gap:5px}.billing-summary small{font-size:11px;letter-spacing:1px}.billing-summary strong{font-size:22px}.billing-summary span{font-size:13px;color:var(--muted)}.purchase-settings{display:flex;gap:20px;flex-wrap:wrap}.purchase-settings label{min-width:230px;margin:0}.purchase-settings input,.purchase-settings select{display:block;width:100%;margin-top:7px}.plans-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin:25px 0 36px}.plan-card{background:var(--surface);border:1px solid var(--line);padding:22px;border-radius:12px;display:flex;flex-direction:column}.plan-card.recommended{border:2px solid var(--accent)}.plan-title{display:flex;justify-content:space-between;align-items:center}.plan-title h2{font-size:20px;margin:0}.plan-title span{background:var(--soft);color:var(--accent);padding:3px 8px;border-radius:5px;font-size:11px}.plan-price{font-size:27px;font-weight:650;letter-spacing:-1px;margin:18px 0}.plan-price small{font-size:12px;letter-spacing:0;font-weight:400}.plan-card ul{list-style:none;padding:0;margin:0 0 22px;font-size:13px;line-height:2.1;flex:1}.plan-card li{border-bottom:1px solid var(--line);padding:4px 0}.billing-order{display:flex;align-items:center;justify-content:space-between;background:var(--surface);border:1px solid var(--line);padding:16px;border-radius:9px;margin-bottom:12px;gap:14px}.billing-order strong{font-size:14px}.order-buttons{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.order-buttons .danger{margin:0}.checkout-link{padding:8px 12px;border-radius:7px;text-decoration:none;color:var(--accent);font-size:13px}#mpSettingsForm input:not([type=checkbox]),#mpSettingsForm select,#mpWebhook{width:100%}#mpTestResult{font-size:13px;margin-top:15px}.user-row select{font-size:13px;padding:5px}.user-row{flex-wrap:wrap}@media(max-width:1200px){.plans-grid{grid-template-columns:repeat(2,1fr)}}@media(max-width:760px){#plansPage{padding:25px 16px}.plans-grid{grid-template-columns:1fr}.billing-summary{gap:20px;flex-wrap:wrap}.billing-order{flex-direction:column;align-items:flex-start}.purchase-settings label{width:100%}.sidebar .nav{font-size:10px;padding:6px}.sidebar{gap:4px}}
@media(max-width:760px){.sidebar{flex-wrap:wrap}.sidebar .brand{width:100%;margin-bottom:4px}.sidebar .nav{flex:1;font-size:11px;margin:0;padding:7px 5px;white-space:nowrap;justify-content:center}.editor-layout{height:calc(100dvh - 375px)}#restrictedScreen button{width:100%;margin-top:8px}}

.canvas-wrap.panning,.canvas-wrap.panning *{cursor:grabbing!important}.canvas-tools,.canvas-bottom{user-select:none}

#adminHome{padding:30px;overflow:auto;height:calc(100vh - 75px)}#adminTotals{display:flex;flex-wrap:wrap}#adminTotals>div{flex:1;min-width:140px}.admin-user{border:1px solid var(--border,#666);border-radius:12px;padding:18px;margin-bottom:16px}.admin-user-form{display:flex;flex-wrap:wrap;gap:14px;align-items:end}.admin-user-form label{display:flex;flex-direction:column;gap:6px;min-width:160px;flex:1}.admin-user-form small{width:100%}#userProjects button{margin:8px 0}

header{height:56px;min-height:56px;padding:8px 24px}header button{padding:7px 12px}.editorbar{min-height:58px;height:auto;padding:8px 24px}.editorbar .actions button{padding:8px 13px}.editorbar .actions{gap:8px}.editor-layout{height:calc(100dvh - 178px)}.sidefooter{cursor:pointer}.sidefooter:hover,.sidefooter:focus-visible{background:var(--soft);border-radius:8px}.breadcrumbs{flex:1}header #account{order:99}#profilePage{padding:28px;max-width:650px;margin:0 auto;width:100%}#profilePage input{width:100%}#profilePage form{padding:20px;border:1px solid var(--line);border-radius:12px;margin:18px 0;background:var(--surface)}#profilePage .dialog-head{margin:0}#profilePage small{display:block;margin:8px 0;color:var(--muted)}@media(max-width:1000px){header{height:auto;min-height:56px}.editorbar{padding:8px 12px}.editor-layout{height:calc(100dvh - 222px)}}@media(max-width:760px){header{padding:8px 12px}.editor-layout{height:calc(100dvh - 272px)}#profilePage{padding:18px}}

#friendsPage{padding:28px;max-width:950px;margin:auto;width:100%}#friendForm{display:flex;gap:12px;flex-wrap:wrap;align-items:center}#friendsPage h2{margin-top:28px}#googleSettingsDialog input{width:100%}#googleLogin{margin-top:12px}#inviteFriend{width:100%}

/* Interface: tipografia e alinhamento comuns. O texto personalizado dos nodes mantém seus estilos. */
:root{--ui-font:'Segoe UI',system-ui,-apple-system,BlinkMacSystemFont,Arial,sans-serif;--ui-body:14px;--ui-label:13px;--ui-small:12px;--ui-title:28px}
body{font-family:var(--ui-font);font-size:var(--ui-body);line-height:1.5}
button,input,select,textarea{font-family:var(--ui-font);line-height:1.4}
button{font-size:var(--ui-body);font-weight:600;min-height:36px}input,select,textarea{font-size:var(--ui-body)}
h1{font-size:var(--ui-title);line-height:1.25;letter-spacing:-.5px}h2{font-size:20px;line-height:1.35}h3{font-size:16px;line-height:1.4}
p{font-size:var(--ui-body);line-height:1.6}small{font-size:var(--ui-small);line-height:1.4}label{font-size:var(--ui-label)}
header button,.sidebar .nav,.projectnav,.editorbar button,.dialog-actions button,.member-row button,.order-buttons button,.admin-user-form button{font-size:var(--ui-label);line-height:1.4}
.page-title button,.dialog-head .outline,.back,#profileBack,#friendsBack,#plansBack{font-size:var(--ui-label);line-height:1.4;padding:8px 12px;min-height:36px;font-weight:600}
.dialog-head button:not(.outline){font-size:22px;line-height:1;width:32px;height:32px;min-height:32px;padding:0;flex-shrink:0}.dialog-head{gap:16px}.dialog-head h2{font-size:20px;line-height:1.35}
.primary,.outline,.danger{line-height:1.4}.danger{margin-top:0}.editorbar input{font-size:16px;line-height:1.4}.editorbar .actions button{min-height:36px;padding:8px 12px}
.sidefooter{position:relative;width:100%;margin-top:auto;border-top:0;padding:12px;border-radius:10px;display:flex;align-items:center;justify-content:flex-start;gap:10px;min-height:66px;text-align:left;font-size:var(--ui-label);transition:background .15s;flex-shrink:0}
.sidefooter::before{content:'';position:absolute;top:-12px;left:0;right:0;height:1px;background:var(--line)}
.sidefooter>div{min-width:0;overflow-wrap:anywhere}.sidefooter .participant-avatar{flex:0 0 32px;width:32px;height:32px}.sidefooter small{font-size:var(--ui-small);margin-top:3px}.sidefooter:hover,.sidefooter:focus-visible{background:var(--soft);border-radius:10px}.sidefooter:focus-visible{outline:2px solid var(--accent);outline-offset:2px}
#projectList{margin-bottom:28px}.member-row{flex-wrap:wrap;gap:10px}.member-row>.participant-avatar{flex:0 0 30px}.member-row>strong,.member-row>span:not(.participant-avatar){min-width:100px;overflow-wrap:anywhere}.member-row select{font-size:var(--ui-label);padding:7px;max-width:100%}
.participant{font-size:var(--ui-label)}.participant small{font-size:var(--ui-small)}.participants-bar>span{font-size:var(--ui-small);letter-spacing:.5px}
.auth-card h1{font-size:var(--ui-title)}.auth-card{max-height:calc(100dvh - 40px);overflow:auto}.auth-card label{font-size:var(--ui-label)}
.admin-user{border-color:var(--line)}#adminTotals>div{display:flex;flex-direction:column;gap:6px}.admin-user .listheading{flex-wrap:wrap;gap:12px}.admin-user .listheading>div{min-width:0;overflow-wrap:anywhere}
.cardmeta{flex-wrap:wrap;gap:6px 12px}.page-title{flex-wrap:wrap}.breadcrumbs{min-width:0;overflow-wrap:anywhere}.task select,.task-edit input,.task-edit select{font-size:var(--ui-small)}
#editor{display:flex;flex-direction:column;height:calc(100dvh - 56px);min-height:420px}.editorbar,.participants-bar{flex-shrink:0}.editor-layout{height:auto;flex:1;min-height:250px;overflow:hidden}
#adminHome{height:auto;min-height:calc(100dvh - 56px)}#profilePage,#friendsPage{padding:28px}.summary small{font-size:var(--ui-label)}
@media(max-width:1000px){.editor-layout{height:auto}header button{font-size:var(--ui-label)}}
@media(max-width:760px){:root{--ui-title:25px}.sidebar .nav{font-size:var(--ui-small);padding:8px;min-height:34px}.sidebar .sidefooter{display:flex;width:auto;margin:4px 0 0 auto;min-height:48px;padding:8px 12px}.sidefooter::before{display:none}.sidefooter small{display:none}.sidebar .sidefooter .participant-avatar{width:28px;height:28px;flex-basis:28px}.sidebar .sidefooter>div{max-width:140px}.dialog-head h2{font-size:19px}.page-title .primary{font-size:var(--ui-label)}header button,.actions button{font-size:var(--ui-label)}#editor{height:calc(100dvh - 210px)}.editor-layout{height:auto;min-height:250px}.editorbar .actions{justify-content:flex-start}.participants-bar{height:58px}.participants-bar>span{font-size:var(--ui-small)}#profilePage,#friendsPage,#adminHome{padding:18px}.member-row select{max-width:160px}}
/* Controles de ícone/cor conservam dimensões próprias. */
.port{min-height:0;width:15px;height:15px;padding:0}.swatch,.color-trigger,.status-color,#colorPresets button{min-height:0}.node-head button,.section-title button,.inspector-heading button{min-height:28px}.formatbar button{min-height:28px}.formatbar .color-trigger{min-height:0}.canvas-tools button{min-height:30px;font-size:13px;padding:4px 8px}.member-row>.participant-avatar{min-width:0}#profileBack,#friendsBack{width:auto;height:auto;flex-shrink:0}

/* Navigation et édition sur téléphone. */
#mobileMenu,#mobileDetails{display:none}#mobileMenuBackdrop{display:none}
@media(max-width:760px){
 html,body{width:100%;overflow-x:hidden}main{margin:0;min-width:0}header{height:58px;min-height:58px;padding:7px 10px;flex-wrap:nowrap;gap:6px;position:sticky;top:0;z-index:8}header .breadcrumbs{width:auto;flex:1;font-size:12px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}header .breadcrumbs span{padding:0 5px}header button{min-width:40px;min-height:42px;padding:8px;font-size:12px}#mobileMenu{display:inline-flex}#theme{font-size:0}#theme::after{content:'◐';font-size:20px}#notifications{font-size:0}#notifications::before{content:'♧';font-size:20px}#inviteBadge{font-size:12px}#adminPanel{font-size:11px;max-width:90px;white-space:normal}header #account{min-width:44px}
 .sidebar{position:fixed;inset:0 auto 0 0;width:min(300px,85vw);height:100dvh;padding:24px 16px;display:flex;flex-direction:column;align-items:stretch;flex-wrap:nowrap;gap:6px;z-index:31;transform:translateX(-110%);transition:transform .2s;overflow:auto;border-right:1px solid var(--line)}.mobile-menu-open .sidebar{transform:translateX(0)}#mobileMenuBackdrop{display:block;position:fixed;inset:0;background:#0008;z-index:30}.sidebar .brand{width:auto;margin:0 8px 24px;font-size:26px}.sidebar .beta,.sidebar .workspace-label,.sidebar .section-title{display:flex}.sidebar #projectList{display:block;flex:1;min-height:40px;overflow:auto}.sidebar .nav{width:100%;flex:none;justify-content:flex-start;font-size:14px;padding:12px;min-height:44px;white-space:normal;margin:0}.sidebar #allprojects span{display:block}.sidebar .nav.active{margin-left:0}.sidebar .sidefooter{width:100%;margin-top:auto;min-height:68px;padding:12px;display:flex}.sidebar .sidefooter small{display:block}.sidebar .sidefooter::before{display:block}.projectnav{min-height:44px;font-size:13px}.sidebar .section-title button{min-width:36px;min-height:36px}
 #editor{height:calc(100dvh - 58px);min-height:450px;position:relative}.editorbar{padding:8px 10px;gap:8px;flex-wrap:nowrap;display:block}.editorbar>div:first-child{flex-wrap:nowrap;gap:6px}.editorbar input{width:auto;flex:1;min-width:0;font-size:16px}#saveState{font-size:11px}.editorbar .actions{flex-wrap:nowrap;overflow-x:auto;justify-content:flex-start;width:100%;padding:6px 0 2px;gap:6px;scrollbar-width:thin}.editorbar .actions button{flex-shrink:0;font-size:12px;min-height:42px;padding:8px 10px}.participants-bar{height:49px;padding:6px 10px;gap:10px}.participants-bar>span{font-size:10px}.participant{font-size:12px}.participant small{font-size:11px}#projectParticipants{gap:12px}.editor-layout{position:relative;flex:1;min-height:250px;height:auto;width:100%;overflow:hidden}.canvas-wrap{min-width:0;width:100%;touch-action:none}.canvas-tools{top:8px;left:8px;max-width:calc(100% - 16px);padding:2px 5px}.canvas-tools>span:first-child{display:none}.canvas-tools button{min-width:40px;min-height:40px;font-size:18px}.canvas-bottom{bottom:10px;left:10px;font-size:10px;max-width:calc(100% - 20px)}#mobileDetails:not([hidden]){display:inline-flex;position:absolute;bottom:48px;left:10px;z-index:5;min-height:42px;font-size:13px;background:var(--surface)}
 #inspector{display:none;position:fixed;inset:auto 0 0 0;width:100%;height:min(70dvh,650px);max-height:calc(100dvh - 68px);z-index:20;border:1px solid var(--line);border-radius:18px 18px 0 0;padding:16px 16px max(18px,env(safe-area-inset-bottom));overflow-y:auto;overscroll-behavior:contain;box-shadow:0 -10px 40px #0004;touch-action:pan-y}.inspector-open #inspector,.inspector-open #inspector:has(#nodeForm[hidden]){display:block}.inspector-heading{position:sticky;top:-16px;background:var(--surface);z-index:2;padding-top:8px}.inspector-heading button{min-width:44px;min-height:44px}.inspector-open #mobileDetails{display:none}#richText{font-size:16px;touch-action:pan-y}#inspector input,#inspector select{font-size:16px}#inspector .formatbar{flex-wrap:wrap}.formatbar button{min-height:40px}.task-edit{grid-template-columns:minmax(0,1fr) minmax(90px,115px) 38px}.task-edit button{min-height:40px}.port{width:26px;height:26px;right:-14px}.input-port{left:-14px;right:auto}.node-head{min-height:56px}.node-head button{min-width:32px;min-height:32px}.task select{min-height:34px;font-size:12px}
 dialog{width:calc(100% - 24px);max-width:500px;max-height:calc(100dvh - 24px);padding:20px;overflow:auto;overscroll-behavior:contain}.wide-dialog{width:calc(100% - 24px)}.dialog-actions{flex-wrap:wrap}.dialog-actions button{flex:1;min-height:44px}.dialog-head button{min-height:40px;min-width:40px}input,select,textarea{font-size:16px;max-width:100%}button{min-height:42px}.member-row{align-items:center}.member-row>strong,.member-row>span:not(.participant-avatar){flex:1;min-width:120px}.member-row select{font-size:14px;min-height:40px}.member-row button{min-height:40px;padding:8px}.purchase-settings label{min-width:0}.purchase-settings{display:block}.purchase-settings label{margin-bottom:18px}.billing-summary{gap:16px;padding:16px}.plan-card{padding:20px}.billing-order{overflow-wrap:anywhere}.page-title{gap:12px}.page-title>div{width:100%}.page-title p{max-width:none}.summary{grid-template-columns:repeat(3,minmax(0,1fr))}.summary>div{min-width:0}.summary small{font-size:11px}#adminTotals>div{min-width:130px}.admin-user-form label{min-width:0;flex-basis:100%}.admin-user-form button{width:100%}#friendForm{display:flex;flex-direction:column;align-items:stretch;gap:8px}#friendForm label{margin-bottom:0}.auth-card{padding:24px;width:100%;max-width:420px}.auth-card h1{font-size:25px}.auth-screen{padding:16px}.swatch,.color-trigger,.status-color,#colorPresets button{min-height:0}.port{min-height:0}#toast{bottom:16px;width:max-content;max-width:calc(100% - 24px);font-size:13px}
}

.node audio{width:100%;height:36px;display:block}.node-audio{margin:10px 0}.annotation-card{position:relative;margin:8px 0;padding:10px 30px 10px 10px;border:1px solid #8885;border-radius:7px;font-size:12px}.annotation-card strong{font-size:12px}.annotation-card p{font-size:13px;color:inherit;white-space:pre-wrap;margin:6px 0;overflow-wrap:anywhere}.annotation-card button{position:absolute;top:2px;right:2px;min-height:25px;padding:2px 6px}#annotationText{width:100%;min-height:80px;resize:vertical;font:inherit;color:var(--text);background:var(--surface);border:1px solid var(--line);border-radius:7px;padding:10px}.link-preview{display:block;padding:12px;border:1px solid #8885;border-radius:8px;color:inherit;text-decoration:none;margin:8px 0;overflow-wrap:anywhere}.link-preview-icon{display:block;font-size:26px;opacity:.7}.link-preview strong{display:block;font-size:14px}.link-preview>span:last-child{font-size:11px;opacity:.8}.link-edit{display:flex;gap:7px;flex-wrap:wrap;align-items:center;font-size:12px}.link-edit>span{width:100%;overflow-wrap:anywhere}.link-edit label{font-size:12px}.check-label input[type=checkbox]{width:18px;flex:none}#nodeLinks,#nodeAnnotations{border-top:1px solid var(--line);margin-top:18px;padding-top:4px}#linkForm input{width:100%;margin:5px 0}#linkForm input[type=checkbox]{width:18px}.participants-bar{flex-wrap:nowrap}#projectOnline{display:flex;gap:10px;max-width:40%;overflow:auto;font-size:12px;white-space:nowrap}.online-user{color:var(--accent)}#liveCursors{position:absolute;inset:0;pointer-events:none;z-index:7}.live-cursor{position:absolute;pointer-events:none;white-space:nowrap}.live-cursor>span{font-size:20px}.live-cursor b{background:var(--surface);padding:3px 6px;border-radius:5px;font-size:11px}.live-cursor small{font-size:10px}@media(max-width:760px){#projectOnline{max-width:35%;font-size:11px}.participants-bar>span{display:none}#annotationText{font-size:16px}.annotation-card button{min-width:32px;min-height:32px}}

#edgeActions{position:absolute;inset:0;pointer-events:none;z-index:4}.edge-delete{position:absolute;transform:translate(-50%,-50%);pointer-events:auto;width:24px;height:24px;min-height:0;padding:4px;border:1px solid var(--line);border-radius:7px;background:var(--surface);color:#e16d6d;box-shadow:0 2px 8px #0002}.edge-delete svg{width:15px;height:15px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.edge-delete:hover{background:var(--soft)}.video-cover{display:flex;flex-direction:column;width:100%;padding:0;min-height:110px;border:1px solid #8885;border-radius:8px;overflow:hidden;background:#161b23;color:white;position:relative;margin:6px 0;gap:0}.node .video-cover img{margin:0;border-radius:0;max-height:155px;width:100%;object-fit:cover}.video-label{font-size:12px;padding:6px;background:#0009;width:100%}.video-cover small{font-size:11px;padding:4px 7px;overflow-wrap:anywhere;color:#ddd}.video-placeholder{display:grid;place-items:center;min-height:80px;width:100%;font-size:32px;background:linear-gradient(135deg,#293645,#161b23)}@media(max-width:760px){.edge-delete{width:34px;height:34px;min-height:0;padding:8px}.edge-delete svg{width:17px;height:17px}.video-cover{min-height:110px}}

.project-online{margin-top:14px;padding-top:12px;border-top:1px solid var(--line)}.project-online-title{color:var(--accent);font-size:12px}.project-online-people{display:flex;flex-wrap:wrap;gap:8px;margin-top:8px}.project-online-person{display:inline-flex;align-items:center;gap:6px;font-size:12px;padding:5px 7px;border:1px solid var(--line);border-radius:8px;max-width:100%}.project-online-person>span{overflow-wrap:anywhere}.project-online-person .participant-avatar{width:24px;height:24px;flex:0 0 24px;font-size:10px}

#chatPage{padding:28px;max-width:1300px;margin:auto}.chat-layout{display:grid;grid-template-columns:240px minmax(0,1fr);gap:18px;margin-top:20px;height:calc(100dvh - 235px);min-height:420px}#chatThreads{overflow:auto}.chat-thread{display:flex;width:100%;align-items:center;gap:8px;padding:12px;text-align:left;justify-content:flex-start}.chat-thread.active{background:var(--soft)}.chat-thread>span{min-width:0;flex:1}.chat-thread small{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:170px}.chat-conversation{display:flex;flex-direction:column;min-width:0;min-height:0;border:1px solid var(--line);background:var(--surface);border-radius:12px;padding:16px}#chatTitle{margin:0 0 12px;font-size:18px}#chatMessages{flex:1;overflow:auto;min-height:150px;padding:8px;overscroll-behavior:contain}.chat-message{background:var(--bg);border:1px solid var(--line);padding:12px;border-radius:10px;max-width:85%;width:fit-content;margin:8px 0}.chat-message.mine{margin-left:auto;background:var(--soft)}.chat-message>strong{font-size:12px}.chat-message p{color:var(--text);white-space:pre-wrap;overflow-wrap:anywhere;margin:6px 0}.chat-message>small{font-size:10px;margin-top:8px}.chat-file{max-width:280px}.chat-file img,.chat-file video{width:100%;max-height:240px;object-fit:contain;border-radius:6px}.chat-file audio{max-width:100%;width:260px}.chat-file .video-cover img{max-height:180px;object-fit:cover}.chat-mention{display:block;border:1px solid var(--line);padding:8px 12px;text-align:left;margin:8px 0}.chat-compose-actions{display:flex;justify-content:space-between;gap:10px;margin-top:8px}#chatText{width:100%;min-height:70px;max-height:160px;resize:vertical;border:1px solid var(--line);background:var(--surface);color:var(--text);padding:10px;border-radius:8px;font:inherit}#chatDraftRefs{display:flex;flex-wrap:wrap;gap:6px}#chatDraftRefs>span{font-size:12px;border:1px solid var(--line);padding:3px 7px;border-radius:6px;margin-bottom:6px}#chatDraftRefs button{padding:0 4px;min-height:26px}.chat-catalog-item{display:block;width:100%;text-align:left;padding:12px;border-bottom:1px solid var(--line)}#chatCatalog{max-height:50dvh;overflow:auto}@media(max-width:760px){#chatPage{padding:16px}.chat-layout{grid-template-columns:1fr;height:auto;min-height:0}#chatThreads{display:flex;overflow-x:auto;gap:8px}.chat-thread{min-width:175px;width:175px;flex-shrink:0}.chat-conversation{height:calc(100dvh - 270px);min-height:420px;padding:10px}.chat-message{max-width:95%}.chat-compose-actions{flex-wrap:wrap}.chat-compose-actions button{flex:1;font-size:12px}#chatText{font-size:16px}.chat-file{max-width:100%}}

.participant-avatar,.avatar{border-radius:6px!important;aspect-ratio:1;object-fit:cover;object-position:center}.participant-avatar{display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;overflow:hidden}.participant-avatar.initials{display:grid}.large-avatar{width:82px;height:82px;flex:0 0 82px}.chat-thread>.participant-avatar{width:32px;height:32px;min-width:32px;flex:0 0 32px}.chat-thread>span:not(.participant-avatar){min-width:0;flex:1}.chat-sidebar{min-width:0;overflow:auto}.chat-sidebar #chatThreads{overflow:visible}.chat-heading{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:12px}.chat-heading h2{margin:0}.chat-heading button{font-size:12px}.group-invite{border:1px solid var(--line);border-radius:8px;padding:8px;margin-top:10px;font-size:12px}.group-invite strong{display:block}#groupName,#groupFriend{width:100%}#groupMembers{margin-top:16px}@media(max-width:760px){.chat-sidebar #chatThreads{display:flex;overflow-x:auto}.chat-sidebar{overflow:visible}.chat-sidebar #groupCreate{margin:0 0 8px;min-height:40px}.chat-heading{flex-wrap:wrap}.chat-conversation{min-height:380px}.sidefooter .participant-avatar{border-radius:6px!important}}

.avatar{width:32px;height:32px;padding:0;display:inline-flex;align-items:center;justify-content:center;flex:0 0 32px}.participant-avatar{object-fit:cover}.chat-thread>.participant-avatar.initials{display:grid}

#groupSuccessor{width:100%}.chat-node-preview{width:255px;max-width:100%;border:2px solid;border-radius:9px;overflow:hidden;margin:10px 0}.chat-node-heading{padding:13px 14px 10px;display:flex;align-items:center;gap:7px;min-height:58px;font-size:15px}.chat-node-heading strong{flex:1;overflow-wrap:anywhere}.chat-node-preview .chat-mention{margin:0 12px 12px;font-size:12px;color:inherit;background:#8881}.chat-node-preview .chat-mention small{color:inherit;opacity:.7}.chat-node-preview .node-attachments img,.chat-node-preview video{width:100%;max-height:155px;object-fit:cover;border-radius:6px}.chat-node-preview audio{width:100%;height:36px}.chat-node-preview .node-body p{font-size:inherit;color:inherit;margin:0}.chat-node-tasks{padding:0 12px 14px}.chat-node-task{display:flex;align-items:center;gap:6px;font-size:13px;margin:7px 0}.chat-node-task>span:nth-child(2){flex:1;overflow-wrap:anywhere}.chat-node-task small{color:inherit;font-size:10px;opacity:.8}.chat-node-preview .link-preview{color:inherit}

/* Compact previews in the existing-content attachment picker. */
.chat-catalog-item{display:flex;align-items:center;justify-content:flex-start;gap:10px}.chat-catalog-info{flex:1;min-width:0}.chat-catalog-info strong,.chat-catalog-info small{display:block;overflow-wrap:anywhere}.chat-catalog-type{flex:none;font-size:11px;color:var(--muted);border:1px solid var(--line);border-radius:5px;padding:3px 6px}.chat-catalog-thumb{width:44px;height:44px;flex:0 0 44px;display:flex;align-items:center;justify-content:center;overflow:hidden;border:1px solid var(--line);border-radius:6px;background:var(--bg);font-size:23px}.chat-catalog-thumb img{width:100%;height:100%;object-fit:cover}@media(max-width:480px){.chat-catalog-item{gap:7px;padding:10px}.chat-catalog-thumb{width:36px;height:36px;flex-basis:36px}.chat-catalog-type{font-size:10px;padding:2px 4px}}

.plan-group-limit{padding:12px;margin:12px 0;border:1px solid var(--line);border-radius:8px;background:var(--soft)}.plan-group-limit strong,.plan-group-limit small{display:block}.plan-group-limit strong{font-size:16px}.plan-group-limit small{margin-top:4px;font-size:12px}

.locked-project{height:150px;display:flex;align-items:center;justify-content:center;color:var(--muted);font-size:13px}#projectPasswordError{overflow-wrap:anywhere}

.canvas-context-menu{position:fixed;z-index:10000;min-width:170px;padding:5px;background:var(--surface);color:var(--text);border:1px solid var(--line);border-radius:8px;box-shadow:0 6px 24px #0003}.canvas-context-menu[hidden]{display:none}.canvas-context-menu button{display:block;width:100%;text-align:left;border:0;background:transparent;padding:10px}.canvas-context-menu button:hover:not(:disabled),.canvas-context-menu button:focus-visible{background:var(--soft)}.node-mention{display:block;width:100%;margin-top:7px;text-align:left;white-space:normal;overflow-wrap:anywhere;font-size:12px;border:1px solid currentColor;background:transparent;color:inherit}.node-mention small,.node-reference-row small{display:block;font-size:10px;opacity:.7}.node-reference-row{display:flex;align-items:center;gap:7px;margin:6px 0}.node-reference-row span{flex:1;min-width:0;overflow-wrap:anywhere}#nodeMentionResults{max-height:45dvh;overflow:auto}#nodeMentionResults button{margin-bottom:6px}.mentioned-focus{animation:mentionPulse 1.2s ease-out}@keyframes mentionPulse{0%{box-shadow:0 0 0 7px #42bb8280}100%{box-shadow:0 0 0 0 transparent}}

.person-mention{display:inline-block;margin:4px 4px 0 0;padding:4px 7px;border-radius:5px;font-size:12px;color:inherit;background:transparent;border:1px solid currentColor;max-width:100%;overflow-wrap:anywhere;white-space:normal}.person-candidate{display:flex;align-items:center;gap:9px;margin:6px 0;text-align:left;justify-content:flex-start}.person-candidate span{flex:1;overflow-wrap:anywhere}.person-candidate small{font-size:11px}#nodePeopleResults{max-height:45dvh;overflow:auto}#myMentionsPage{max-width:1100px;padding:28px;margin:auto}.mentions-project{padding:18px;background:var(--surface);border:1px solid var(--line);border-radius:10px;margin-bottom:16px}.mention-result{display:flex;align-items:center;gap:12px;padding:12px 0;border-top:1px solid var(--line)}.mention-result>span{flex:1;min-width:0;overflow-wrap:anywhere}.mention-result small{display:block;font-size:12px;margin-top:5px}#mentionedPersonInfo{display:flex;align-items:center;gap:10px;overflow-wrap:anywhere}@media(max-width:600px){#myMentionsPage{padding:16px}.mention-result{flex-wrap:wrap}.mention-result button{width:100%}}

#uploadProgressDialog{max-width:460px;width:calc(100% - 32px)}#uploadProgressDialog progress{width:100%;height:12px;accent-color:#42bb82}#uploadProgressName,#uploadState{overflow-wrap:anywhere}#uploadState{font-size:12px;line-height:1.5}.plan-card li small{display:block;font-size:11px;line-height:1.4;margin-top:4px}
