:root{font-family:Inter,ui-sans-serif,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:#293038;background:#f0f1f2;font-size:14px;--canvas:#f0f1f2;--surface:#fff;--ink:#293038;--muted:#717980;--border:#dce0e3;--accent:#e8b84f;--shadow:0 2px 5px #18232d0d,0 10px 25px #18232d06}*{box-sizing:border-box}body{margin:0;overflow:hidden}button,input,select,textarea{font:inherit}button{cursor:pointer;border:0;background:transparent;color:inherit;border-radius:6px;padding:9px 12px}button:hover{background:#7d899015}button:focus-visible,input:focus-visible,select:focus-visible,[contenteditable]:focus-visible{outline:2px solid #477fd0;outline-offset:2px}button:disabled{opacity:.35;cursor:default}header{height:66px;background:var(--surface);border-bottom:1px solid var(--border);display:flex;align-items:center;padding:0 22px;gap:18px;position:fixed;inset:0 0 auto;z-index:20}.brand{font-size:18px;font-weight:750;letter-spacing:-.6px;display:flex;align-items:center;gap:9px;padding-left:0}.brand-mark{background:var(--ink);color:#f5c65d;font-size:25px;width:30px;height:32px;border-radius:6px;line-height:28px}.divider{width:1px;height:22px;background:var(--border);display:inline-block;flex-shrink:0}nav{display:flex;align-items:center;gap:3px;min-width:0}nav button{white-space:nowrap;max-width:180px;overflow:hidden;text-overflow:ellipsis}nav button:last-child{font-weight:650}.header-right{margin-left:auto;display:flex;align-items:center;gap:8px}#save-status{font-size:12px;color:var(--muted);margin-right:12px}#export-btn{border:1px solid var(--border)}.tools{position:fixed;top:66px;bottom:0;left:0;width:86px;background:var(--surface);border-right:1px solid var(--border);z-index:15;display:flex;flex-direction:column;overflow-y:auto}.tools-label{font-size:10px;letter-spacing:1.6px;color:var(--muted);text-align:center;margin:20px 0 12px}.tools button{display:flex;flex-direction:column;align-items:center;justify-content:center;width:66px;margin:2px auto;padding:9px 2px;gap:5px;font-size:23px;line-height:1;border-radius:7px}.tools small{font-size:11px;line-height:1.3;font-weight:500}.tools button.active{background:#f9edca;color:#6a501c}.tool-bottom{margin-top:auto;padding-top:18px;padding-bottom:12px}.tool-bottom button{font-size:19px}.tools .tool-icon{height:23px;display:flex;align-items:center}#viewport{position:fixed;left:86px;right:0;top:66px;bottom:0;overflow:hidden;background-color:var(--canvas);background-image:radial-gradient(#adb7bd66 .75px,transparent .75px);background-size:20px 20px;touch-action:none;outline:0}#world{position:absolute;transform-origin:0 0;width:12000px;height:12000px}#cards{position:absolute;inset:0;pointer-events:none}#lines{position:absolute;inset:0;overflow:visible;pointer-events:none}#lines path{pointer-events:stroke;cursor:pointer}.card{position:absolute;background:var(--surface);border:1px solid #d3d8dc;border-top:3px solid var(--card-color,#d3d8dc);border-radius:5px;box-shadow:var(--shadow);pointer-events:auto;min-height:85px;user-select:none;overflow:visible}.card.selected{outline:2px solid #5689c9;outline-offset:2px}.card.locked .drag-handle:after{content:' · locked';font-size:10px;color:var(--muted)}.drag-handle{padding:12px 15px 8px;min-height:32px;font-size:10px;font-weight:650;letter-spacing:1.1px;text-transform:uppercase;color:var(--muted);cursor:grab;display:flex;justify-content:space-between;align-items:center}.drag-handle:active{cursor:grabbing}.card-menu{padding:0 2px;font-size:16px;letter-spacing:0;line-height:14px}.editable{user-select:text;cursor:text;outline:0;overflow-wrap:anywhere;min-height:28px;white-space:pre-wrap;line-height:1.6;font-size:15px}.editable:empty:before{content:attr(data-placeholder);color:#939a9f;pointer-events:none}.card .body{padding:0 16px 16px}.card-title{font-weight:650;font-size:17px;line-height:1.4;margin:0 0 9px}.card .resize{position:absolute;right:-2px;bottom:-2px;width:15px;height:15px;cursor:nwse-resize;opacity:0}.card.selected .resize{opacity:1}.resize:after{content:'';display:block;width:6px;height:6px;background:white;border:1px solid #5689c9;position:absolute;bottom:0;right:0}.card.image img{display:block;width:100%;max-height:520px;object-fit:contain;background:#f8f8f8}.card.image .body{padding-top:12px}.card video,.card audio{max-width:100%;display:block}.card .media{padding:0 10px 10px}.card.board{min-height:128px;text-align:center;background:transparent;border:0;box-shadow:none}.board-icon{margin:4px auto 12px;width:68px;height:56px;background:var(--card-color,#efc56c);border:1px solid #00000013;border-radius:6px;box-shadow:0 3px 0 #00000008;display:grid;place-items:center;font-size:27px;color:#3c4147}.board-icon:before{content:'';position:absolute;width:28px;height:7px;background:inherit;border-radius:4px 4px 0 0;margin-top:-62px;margin-left:-40px}.card.board .drag-handle{padding:4px 10px}.card.board .card-title{font-size:15px;margin:0}.card.board .board-count{font-size:12px;color:var(--muted);margin-top:7px}.card.column{background:#e6e9ec;border-color:#d4d9dd;box-shadow:none;min-height:180px;padding-bottom:25px}.column>.body{padding-bottom:4px}.column-children{position:relative;margin:8px 12px;min-height:50px}.column-children>.card{position:relative!important;left:auto!important;top:auto!important;width:100%!important;margin:0 0 14px}.column-children .column-drop{border:1px dashed #a8b4bf;border-radius:4px;padding:16px;font-size:12px;text-align:center;color:#7d8892}.card.label{background:transparent;box-shadow:none;border:0;min-height:36px}.label .drag-handle{padding:0 12px;height:18px;min-height:18px;opacity:0}.label:hover .drag-handle,.label.selected .drag-handle{opacity:1}.label .body{padding:0 12px 5px}.label .editable{font-size:24px;font-weight:650}.task{display:flex;gap:9px;align-items:flex-start;margin:8px 0}.task input[type=checkbox]{accent-color:#738b74;width:16px;height:16px;margin-top:5px;flex-shrink:0}.task .editable{font-size:14px;flex:1;min-height:23px}.task.done .editable{text-decoration:line-through;color:#92999e}.task button{opacity:0;padding:3px}.task:hover button{opacity:1}.add-task{font-size:13px;color:#7f878e;padding:8px 0 0}.progress{height:3px;background:#e4e8e9;margin:14px 0 0;border-radius:4px}.progress span{display:block;background:#81a085;height:100%}.link-domain{font-size:12px;color:var(--muted);margin:8px 0}.card a{color:#426eac;overflow-wrap:anywhere}.swatch-block{height:110px;margin:0 0 10px}.card.swatch .body{padding:0 0 12px}.swatch .editable{padding:0 14px;font-family:ui-monospace,monospace}.card-footer{font-size:11px;color:var(--muted);padding:0 14px 9px;display:flex;gap:8px}.card-footer button{font-size:11px;padding:3px 5px}.card table{border-collapse:collapse;width:100%;font-size:13px;table-layout:fixed}.card td{border:1px solid var(--border);padding:6px;overflow-wrap:anywhere;user-select:text;min-width:55px}.card tr:first-child td{background:#f0f3f5;font-weight:600}.card.drawing svg{width:100%;display:block}.file-icon{font-size:36px;margin:5px 0 12px}.tag{display:inline-block;padding:2px 6px;border-radius:4px;background:#eaf0f5;color:#53728b;font-size:11px;margin-right:4px}.canvas-controls{position:fixed;right:24px;bottom:22px;z-index:18;display:flex;align-items:center;padding:5px;background:var(--surface);border:1px solid var(--border);border-radius:9px;box-shadow:var(--shadow)}.canvas-controls button{padding:7px 10px}.canvas-hint{position:fixed;left:112px;bottom:30px;color:var(--muted);font-size:12px;pointer-events:none}#empty{position:absolute;top:35%;left:15%;right:15%;text-align:center;pointer-events:none}#empty h1{font-size:28px;letter-spacing:-.9px;font-weight:550}#empty p{color:var(--muted);line-height:1.7}#empty button{pointer-events:auto;margin-top:10px}.primary{background:#293038;color:white;padding:11px 17px}.primary:hover{background:#414b54}#inspector{position:fixed;top:84px;left:103px;z-index:19;background:var(--surface);padding:7px;box-shadow:var(--shadow);border:1px solid var(--border);border-radius:8px;max-width:calc(100vw - 140px);display:flex;align-items:center;flex-wrap:wrap;gap:3px}#inspector[hidden]{display:none}#inspector button{font-size:13px;padding:7px 9px}input[type=color]{width:27px;height:28px;border:0;padding:2px;background:none;cursor:pointer}#selection-box{position:absolute;border:1px solid #4e83c8;background:#5485c822;pointer-events:none;display:none}#unsorted{position:fixed;right:0;top:66px;bottom:0;width:290px;background:#e9ecef;border-left:1px solid var(--border);z-index:16;padding:16px;overflow-y:auto}#unsorted .card{position:relative!important;left:auto!important;top:auto!important;width:100%!important;margin:18px 0}.panel-head{display:flex;justify-content:space-between;align-items:center}#unsorted .muted{font-size:13px;line-height:1.6}.muted{color:var(--muted)}dialog{border:1px solid var(--border);border-radius:12px;background:var(--surface);color:var(--ink);padding:0;width:min(620px,calc(100vw - 32px));max-height:85vh;box-shadow:0 24px 90px #0003}dialog::backdrop{background:#18243055;backdrop-filter:blur(2px)}.modal-head{display:flex;justify-content:space-between;align-items:center;padding:20px 24px 15px;border-bottom:1px solid var(--border)}.modal-head h2{font-size:20px;margin:0;letter-spacing:-.5px}.modal-head button{font-size:24px;padding:0 5px}#modal-content{padding:22px 24px;overflow:auto;max-height:70vh}#modal-content p{line-height:1.7}input[type=text],input[type=url],input[type=date],textarea,select{border:1px solid var(--border);border-radius:6px;padding:10px 12px;background:var(--surface);color:var(--ink)}.full{width:100%}textarea{resize:vertical;min-height:100px}label.field{display:block;margin:14px 0 6px;color:var(--muted);font-size:13px}.actions{display:flex;justify-content:flex-end;gap:8px;margin-top:20px}.menu-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}.menu-tile{border:1px solid var(--border);padding:18px;text-align:left;line-height:1.5}.menu-tile strong{display:block;font-size:15px;margin-bottom:4px}.menu-tile small{color:var(--muted);font-size:12px}.search-result{display:block;width:100%;text-align:left;border-bottom:1px solid var(--border);padding:14px 6px}.search-result small{display:block;color:var(--muted);margin-top:6px}#toast{position:fixed;bottom:80px;left:50%;transform:translateX(-50%);background:#293038;color:white;box-shadow:var(--shadow);padding:13px 20px;border-radius:7px;z-index:100;display:none;max-width:80vw;font-size:14px}.document-editor{min-height:300px;padding:15px 0;font-size:17px;line-height:1.8}.formatbar{display:flex;gap:3px;flex-wrap:wrap;border-bottom:1px solid var(--border);padding:5px 0 12px;margin-bottom:15px}.comment{border-bottom:1px solid var(--border);padding:13px 0}.comment p{margin:5px 0}.comment small{color:var(--muted)}.shortcut{display:flex;justify-content:space-between;padding:9px 0;border-bottom:1px solid var(--border)}kbd{background:#f0f2f3;padding:3px 7px;border:1px solid #d9dfe3;border-radius:4px;color:#4a555d;font-size:12px}.draw-surface{background:#fff;border:1px solid var(--border);width:100%;height:320px;touch-action:none}.draw-toolbar{display:flex;gap:10px;align-items:center;margin-bottom:12px}.danger{color:#a74040}.presentation header,.presentation .tools,.presentation .canvas-hint,.presentation #inspector{display:none}.presentation #viewport{inset:0}.presentation .card-menu,.presentation .resize{display:none}.presentation .canvas-controls{opacity:.3}.presentation .canvas-controls:hover{opacity:1}body.dark{--canvas:#23282d;--surface:#30363c;--ink:#e5e9ed;--muted:#a4adb5;--border:#454e56}.dark .card{border-color:#52606a}.dark .column{background:#363f47}.dark .card tr:first-child td{background:#424d57}.dark .card.image img{background:#242a2f}.dark #unsorted{background:#293139}.dark .tools button.active{background:#685832;color:#f3d68f}.dark .board-icon{color:#293038}.dark kbd{background:#3b454e;color:#eee;border-color:#555}.dark #viewport{background-image:radial-gradient(#6c778b66 .75px,transparent .75px)}@media(max-width:800px){header{padding:0 10px;gap:4px}.brand{font-size:0}.brand-mark{font-size:25px}header>.divider,#save-status,#templates-btn,#search-btn span{display:none}.header-right{gap:0}nav button{max-width:110px;padding:8px}.tools{width:64px}.tools button{width:54px;padding:8px 2px}.tools small{font-size:10px}#viewport{left:64px}.canvas-hint{display:none}.canvas-controls{right:12px;bottom:12px}#inspector{left:76px;max-width:calc(100vw - 90px)}.menu-grid{grid-template-columns:1fr}#unsorted{width:260px}}@media print{header,.tools,.canvas-controls,.canvas-hint,#inspector,#unsorted,dialog,#toast{display:none!important}body{overflow:visible;background:white}#viewport{position:static;overflow:visible;background:white}#world{position:relative;transform:scale(var(--print-scale,1))!important;transform-origin:0 0}#empty{display:none}.card{break-inside:avoid;box-shadow:none}.card-menu,.resize{display:none}}
:root body{color:var(--ink)}
body.dark .brand-mark{background:#182027;color:#f5c65d}
body.dark .primary{background:#edc668;color:#202a32}
body.dark .primary:hover{background:#f5d891}
body.dark .task.done .editable{color:#a4afb8}
.card.label .editable{font-size:24px}
.download-attachment{display:inline-block;margin:10px 0}
:root{--rail:238px}
.tools{width:var(--rail);padding:12px 16px}
.tools-label{text-align:left;font-size:11px;margin:6px 10px 16px}
#tool-list{display:grid;grid-template-columns:1fr 1fr;gap:7px}
.tools button{width:100%;min-height:66px;margin:0;border:1px solid transparent;gap:8px}
.tools button:hover{border-color:var(--border);background:var(--canvas)}
.tools small{font-size:13px}.tools .tool-bottom{display:flex;gap:8px}
#viewport{left:var(--rail)}.canvas-hint{left:calc(var(--rail) + 25px);max-width:calc(100vw - var(--rail) - 410px);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
#inspector.properties{position:fixed;left:0;top:66px;bottom:0;width:var(--rail);max-width:none;overflow:auto;display:block;border:0;border-right:1px solid var(--border);border-radius:0;box-shadow:none;padding:0 17px 24px;background:var(--surface);z-index:17}
#inspector[hidden]{display:none}.context-open .tools{visibility:hidden}
.property-heading{display:flex;justify-content:space-between;align-items:center;padding:20px 0 14px;border-bottom:1px solid var(--border)}
.property-heading small{font-size:10px;letter-spacing:1.5px;color:var(--muted)}.property-heading h2{font-size:19px;margin:5px 0 0;letter-spacing:-.4px}
.property-heading button{font-size:23px!important}.property-section{padding:16px 0;border-bottom:1px solid var(--border)}.property-section h3{font-size:12px;color:var(--muted);font-weight:600;letter-spacing:.3px;margin:0 0 12px}
.property-field{display:flex;align-items:center;justify-content:space-between;gap:8px;margin:12px 0;font-size:13px}.property-field>span{flex-shrink:0}.properties select,.properties input[type=text],.properties input[type=number]{min-width:0;width:100%;padding:7px 8px;font-size:13px;border:1px solid var(--border);border-radius:5px;background:var(--surface);color:var(--ink)}.property-field select{max-width:125px}.property-field input[type=number]{width:64px}
.properties input[type=range]{accent-color:#587da7;min-width:0;width:110px}.value-control{display:flex;align-items:center;gap:5px}.value-control input[type=range]{width:75px}.value-control output{font-size:11px;white-space:nowrap;min-width:30px;color:var(--muted)}
.property-checks{display:flex;flex-wrap:wrap;gap:8px;font-size:12px}.property-check{font-size:13px;display:block;margin:10px 0}.property-checks input,.property-check input{accent-color:#587da7}
.segmented{display:flex;border:1px solid var(--border);border-radius:6px;overflow:hidden}.segmented button{flex:1;border-radius:0;display:flex;flex-direction:column;align-items:center;gap:5px;font-size:11px!important;padding:8px 3px!important}.segmented span{font-size:23px}.segmented .active{background:#e8eff7;color:#325f93}.dark .segmented .active{background:#455c75;color:#fff}
.panel-wide{display:block;width:100%;text-align:left;margin-top:5px;padding:9px!important;border:1px solid var(--border);font-size:12px!important}.panel-buttons{display:grid;grid-template-columns:1fr 1fr;gap:5px}.panel-buttons button{font-size:12px!important;border:1px solid var(--border);padding:8px 4px!important}.panel-tip{font-size:12px;line-height:1.7;color:var(--muted);margin:14px 0 0}.format-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:4px;margin-top:8px}.format-grid button{border:1px solid var(--border);padding:8px 3px!important}.format-grid [data-text-command=bold]{font-weight:800}.format-grid [data-text-command=italic]{font-style:italic}.format-grid [data-text-command=underline]{text-decoration:underline}.format-grid [data-text-command=strikeThrough]{text-decoration:line-through}.format-grid [data-text-command=justifyLeft]{text-align:left}.format-grid [data-text-command=justifyRight]{text-align:right}
.card-connect{position:absolute;right:-7px;top:16px;width:13px;height:13px;border-radius:50%;border:2px solid #648dba;background:var(--surface);padding:0;opacity:0;cursor:crosshair;z-index:3}.card.selected>.card-connect,.card:hover>.card-connect{opacity:1}.card-connect:hover{background:#6e98c6}.connection-target{outline:3px solid #6e98c6!important}.transparent-card{box-shadow:none!important}.hidden-caption{display:none!important}.canvas-drawing>.drag-handle,.canvas-drawing>.body>[data-field=html]{display:none}.canvas-drawing>.body{padding:0}.canvas-drawing.selected>.drag-handle{display:flex}
#line-handles{position:absolute;inset:0;overflow:visible;pointer-events:none;z-index:10}#line-handles .line-handle{pointer-events:all;fill:#fff;stroke:#497bab;cursor:move}#line-handles .curve-handle{fill:#497bab;stroke:white}#lines .line-label{pointer-events:all;cursor:text}#lines .line-hit{cursor:move}.connecting,.connecting .card{cursor:crosshair!important}
#cards{z-index:1}#lines{z-index:2}
.editable h1{font-size:28px;line-height:1.3;margin:6px 0}.editable h2{font-size:23px;line-height:1.4;margin:6px 0}.editable h3{font-size:18px;margin:6px 0}.editable blockquote{border-left:3px solid #a6b4c1;margin:10px 0;padding:4px 12px;color:var(--muted)}.editable pre{background:#77889912;border:1px solid var(--border);padding:12px;font-family:ui-monospace,monospace;font-size:13px;white-space:pre-wrap;border-radius:5px}.editable ul,.editable ol{padding-left:25px;white-space:normal}
.image-workspace{position:relative;width:100%;background:repeating-conic-gradient(#e4e7eb 0% 25%,#f9fafb 0% 50%) 50% / 18px 18px;border:1px solid var(--border);overflow:hidden}.image-workspace canvas{display:block;max-width:100%;max-height:460px;margin:auto;touch-action:none;cursor:crosshair}.image-editor-tools{display:flex;gap:5px;flex-wrap:wrap;align-items:center;margin:0 0 12px}.image-editor-tools button{border:1px solid var(--border);font-size:12px;padding:7px 9px}.image-editor-tools button.active{background:#e8eff7;color:#325f93}.image-editor-tools select{padding:6px;width:65px}.image-editor-note{font-size:12px;color:var(--muted);line-height:1.6}.draw-toolbar{flex-wrap:wrap}.draw-toolbar button.active{background:#e8eff7;color:#325f93}.draw-surface .shape-selection{stroke:#5083b5;stroke-dasharray:3 3;fill:none}
@media(max-width:850px){:root{--rail:70px}.tools{padding:8px 6px}.tools-label{font-size:9px;margin:8px 3px}#tool-list{display:block}.tools button{min-height:56px;padding:7px 2px;gap:5px}.tools small{font-size:10px}.tools .tool-bottom{display:block}.canvas-hint{display:none}#inspector.properties{width:224px;max-height:calc(100vh - 135px);bottom:auto;border-bottom:1px solid var(--border);border-radius:0 0 9px 0;box-shadow:0 8px 20px #0002}.context-open .tools{visibility:visible}#inspector .property-heading{position:sticky;top:0;background:var(--surface);z-index:2}}
@media print{#line-handles,.card-connect,[data-editor-only]{display:none!important}}
