.thinking-tools-button{width:auto!important;padding:0 9px!important;gap:6px!important;font-size:12px!important;white-space:nowrap}
.thinking-tray{position:absolute;top:12px;left:16px;width:254px;padding:16px;background:#fff;color:#304867;border:1px solid #d9e3ef;border-radius:14px;box-shadow:0 12px 40px #253e6720;z-index:9}
.thinking-tray header{display:flex;align-items:center;justify-content:space-between;font-size:16px}.thinking-tray header button{padding:5px}
.thinking-tray p{margin:7px 0 12px;font-size:12px;color:#677e9b}.thinking-template{display:block;width:100%;padding:10px 12px;margin-top:8px;border:1px solid #dce7ef;border-radius:10px;background:#f8fbfc;text-align:left;cursor:grab;touch-action:none;color:#278b79}
.thinking-template:hover{border-color:#8cb4cc;background:#f1f7fb}.thinking-template>svg{width:100%;height:66px}.thinking-template span{display:flex;flex-direction:column;gap:3px}.thinking-template strong{color:#304867;font-size:14px}.thinking-template small{color:#70839c;font-size:12px}.thinking-tray-foot{display:block;color:#75869d;font-size:11px;margin-top:14px}.thinking-drag-ghost{position:fixed;pointer-events:none;z-index:100;background:#fff;border:2px solid #3d83eb;border-radius:10px;padding:12px;width:180px;color:#278b79;box-shadow:0 10px 35px #18375730}.thinking-drag-ghost svg{width:100%;height:64px}.thinking-drag-ghost strong{display:block;color:#304867;text-align:center}
.canvas-group.has-framework{background:#ffffffd9;border-color:#b9ced6;box-shadow:0 6px 30px #273e6010}.has-framework>.group-header{background:#f2f7f8}.framework-grab-label{display:inline-flex;gap:6px;align-items:center;font-size:12px;white-space:nowrap;color:#647e8b;padding:7px 12px 7px 0}.has-framework>.group-header input{font-size:20px}
.framework-body{position:absolute;inset:68px 24px 40px;pointer-events:none}.framework-diagram{position:relative}.fish-lines{position:absolute;inset:0;fill:none;stroke-width:2;stroke-linecap:round;pointer-events:none}.fish-spine{stroke:#7a92a5;stroke-width:2.5}.fish-category,.fish-cause,.fish-head{position:absolute;pointer-events:auto}
.framework-body textarea{display:block;box-sizing:border-box;border:1px solid transparent;background:transparent;font-family:inherit;color:#304867;font-size:19px;line-height:1.32;padding:5px 7px;margin:0;width:100%;resize:none;outline:none;border-radius:5px;cursor:text;overflow:auto;pointer-events:auto;scrollbar-width:thin}.framework-body textarea::placeholder{color:#8a9aa9;font-weight:400}.framework-body textarea:hover{background:#f4f8fb}.framework-body textarea:focus{border-color:#9ebee8;background:#fff;box-shadow:0 0 0 2px #cfdef54d}
.framework-category{display:flex;align-items:center;padding-right:40px}.framework-category textarea{height:48px;color:var(--framework-accent);font-weight:650;font-size:21px}.framework-category button,.fish-cause button{position:absolute;right:0;top:6px;padding:3px;color:#8092a5;opacity:0}.framework-category button{right:40px;top:-13px}.framework-category:hover button,.framework-category:focus-within button,.fish-cause:hover button,.fish-cause:focus-within button{opacity:1}.fish-cause textarea{height:56px;padding:0 18px 0 3px;font-size:18px;border-radius:3px}.fish-add{position:absolute;pointer-events:auto;border:1px solid #d9e3e9;border-radius:50%;width:28px;height:28px;display:grid;place-items:center;color:var(--framework-accent);background:#fff}.fish-add:hover{border-color:var(--framework-accent)}
.fish-head{width:218px;min-height:128px;border:1.5px solid #9abeb8;background:#eef8f5;border-radius:12px;padding:14px;box-sizing:border-box}.fish-head>span{display:block;color:#4e7f78;font-size:12px;margin:0 7px 5px}.fish-head textarea{height:76px;font-size:22px;font-weight:600}
.framework-add-category{position:absolute;bottom:-28px;left:0;pointer-events:auto;display:flex;gap:5px;align-items:center;color:#557b82;font-size:13px;padding:4px 6px;border-radius:5px}.framework-add-category:hover{background:#edf6f4}.framework-preview{display:flex;flex-direction:column;align-items:center;gap:10px}.framework-preview>svg{height:105px;width:250px;color:#498b82}.framework-preview>strong{max-width:100%;font-size:18px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.framework-worksheet{height:100%;display:flex;flex-direction:column;gap:20px;pointer-events:auto}.framework-problem{display:flex;align-items:center;gap:18px;flex:none;padding:10px 16px;background:#f5f8fc;border-radius:9px}.framework-problem>span{font-size:14px;white-space:nowrap;color:#778a9e}.framework-problem textarea{height:60px;font-size:22px;font-weight:600}.framework-sections{display:grid;flex:1;min-height:0;gap:20px}.swot-sheet .framework-sections{grid-template-columns:1fr 1fr;grid-template-rows:1fr 1fr}.framework-sections section{display:flex;flex-direction:column;border:1px solid #dce6ef;border-top:3px solid var(--framework-accent);border-radius:9px;background:#fff;padding:14px;min-height:0}.framework-section-heading{display:flex;align-items:center;gap:10px;margin-bottom:8px}.framework-section-heading b{font-size:22px;color:var(--framework-accent)}.framework-section-heading textarea{font-size:21px;font-weight:600;height:40px;color:var(--framework-accent)}.framework-sections section>textarea{flex:1;min-height:0;line-height:1.5}.whys-sheet .framework-sections{grid-template-columns:1fr;gap:10px}.whys-sheet .framework-sections section{display:grid;grid-template-columns:150px 1fr;border-top:1px solid #dce6ef;border-left:3px solid var(--framework-accent);padding:8px 14px;gap:15px}.whys-sheet .framework-section-heading{margin:0}.whys-sheet section>textarea{height:100%;min-height:48px}
@media(max-width:650px){.thinking-tray{max-height:70vh;overflow:auto;left:8px;width:230px}.thinking-tools-button span{display:none}}

.thinking-toolkit-link{display:block;margin-top:12px;padding-top:12px;border-top:1px solid #e2e9f1;color:#326cae;font-size:12px;text-decoration:none}.thinking-toolkit-link:hover{text-decoration:underline}.thinking-toolkit-link:focus-visible{outline:2px solid #3985ff;outline-offset:3px;border-radius:3px}

/* Searchable catalogue: compact tiles, scroll the methods rather than the board. */
.canvas-viewport:has(.has-framework){overflow:clip}
.thinking-tray{width:350px;max-width:calc(100% - 32px);height:min(680px,calc(100% - 24px));box-sizing:border-box;display:flex;flex-direction:column;overflow:hidden;padding:14px}
.thinking-tray header strong{display:flex;align-items:center;gap:8px}.thinking-tray header small{font-size:11px;color:#72869b;background:#edf3f8;padding:3px 6px;border-radius:6px}
.thinking-filters{display:grid;gap:7px;margin-bottom:10px}.thinking-filters input,.thinking-filters select{box-sizing:border-box;width:100%;min-width:0;background:#f8fafc;border:1px solid #dae4ee;border-radius:7px;color:#304867;padding:9px 10px;font:inherit;font-size:13px}
.thinking-filters input:focus,.thinking-filters select:focus{outline:2px solid #99bfe9;outline-offset:1px}
.thinking-results{flex:1;min-height:0;display:grid;grid-template-columns:1fr 1fr;gap:8px;align-content:start;overflow:auto;overscroll-behavior:contain;scrollbar-width:thin;padding:2px 3px 3px 1px}
.thinking-template{margin:0;padding:9px 8px;color:var(--template-color);min-height:100px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px;text-align:center}
.thinking-template[hidden],[data-thinking-empty][hidden]{display:none}.thinking-template>svg{height:48px;width:112px;max-width:100%}.thinking-template strong{font-size:12px;line-height:1.3;font-weight:600}
.thinking-template:focus-visible{outline:2px solid #3985ff;outline-offset:-2px}[data-thinking-empty]{grid-column:1/-1;text-align:center}.thinking-toolkit-link{margin-top:10px;padding-top:10px;flex:none}
.framework-workspace{display:flex;gap:20px;flex:1;min-height:0}.framework-workspace>.framework-sections{width:100%;grid-template-columns:repeat(var(--section-columns),minmax(0,1fr));grid-auto-rows:1fr}
.framework-workspace .framework-section-heading{min-width:0;align-items:flex-start}.framework-workspace .framework-section-heading textarea{height:64px;line-height:1.3;font-size:20px}.framework-workspace .framework-section-heading b{display:none}
.framework-workspace section>textarea{min-height:65px}.framework-workspace textarea::placeholder{color:transparent}.framework-workspace textarea:focus::placeholder{color:#8a9aa9}
.framework-problem a{color:#7a8ca4;padding:8px;display:flex;flex:none}.framework-problem a:hover{color:#2374db}.framework-problem a:focus-visible{outline:2px solid #3985ff;border-radius:6px}
.layout-quadrants .framework-sections{grid-template-columns:1fr 1fr;grid-template-rows:1fr 1fr}
.layout-steps .framework-sections{grid-template-columns:1fr;gap:10px}.layout-steps .framework-sections section{display:grid;grid-template-columns:240px 1fr;gap:15px;padding:8px 14px;border-top:1px solid #dce6ef;border-left:3px solid var(--framework-accent)}
.layout-steps .framework-section-heading{margin:0;align-items:center}.layout-steps .framework-section-heading textarea{height:65px}.layout-steps .framework-section-heading b{display:block;font-size:19px}.layout-steps section>textarea{height:100%;min-height:48px}
.layout-flow .framework-sections{grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}.layout-flow .framework-sections section{position:relative}.layout-flow .framework-sections section:not(:last-child)::after{content:'→';position:absolute;right:-23px;top:50%;color:#7c94a9;font-size:22px}.layout-flow .framework-sections section:nth-child(3n)::after{content:none}
.layout-tree .framework-sections{grid-template-columns:1fr 1fr;gap:28px}.layout-tree .framework-sections section:first-child{grid-column:1/-1;width:55%;justify-self:center;position:relative}.layout-tree .framework-sections section:first-child::after{content:'';position:absolute;left:50%;bottom:-29px;height:28px;border-left:2px solid #b5c8d9}
.layout-forces .framework-sections{grid-template-columns:1fr 1fr}.layout-forces .framework-sections section:first-child,.layout-forces .framework-sections section:last-child{grid-column:1/-1}.layout-forces .framework-sections section:nth-child(2){border-right:4px solid #278b79}.layout-forces .framework-sections section:nth-child(3){border-left:4px solid #bd688a}
.layout-iceberg .framework-sections{grid-template-columns:1fr;gap:10px}.layout-iceberg .framework-sections section{display:grid;grid-template-columns:240px 1fr;gap:20px;width:calc(68% + var(--section-order)*8%);justify-self:center;background:#f2f7fc;border-left:3px solid var(--framework-accent);border-top:0}.layout-iceberg .framework-sections section:nth-child(2){border-top:2px dashed #a8c6de}.layout-iceberg .framework-section-heading{margin:0}.layout-iceberg .framework-section-heading textarea{font-size:19px;height:60px}
.layout-chart .framework-sections{width:45%;flex:0 0 45%;grid-template-columns:1fr;gap:12px}.layout-chart .framework-section-heading{margin-bottom:4px}.layout-chart .framework-section-heading textarea{font-size:19px;height:54px}.layout-chart .framework-sections section{padding:9px}.layout-chart .framework-sections section>textarea{min-height:50px;font-size:18px}
.framework-plot{flex:1;min-width:0;overflow:auto;border:1px solid #e0e8f0;border-radius:10px;background:#fff;padding:16px;display:flex;flex-direction:column;justify-content:flex-start;scrollbar-width:thin}.framework-plot>svg{width:100%;flex:none;min-height:260px}.framework-plot-empty{margin:auto;text-align:center;max-width:280px;font-size:19px;color:#8294a8;line-height:1.6}.framework-plot-warning,.framework-plot-key{font-size:15px;line-height:1.5;color:#8b6a3b}.framework-plot-key{color:#677f97}.framework-plot table{border-collapse:collapse;width:100%;font-size:17px;line-height:1.5}.framework-plot th,.framework-plot td{padding:9px 6px;text-align:left;border-bottom:1px solid #e3eaf1;overflow-wrap:anywhere}.framework-plot th{font-weight:600;color:#4c6581}
@media(max-width:650px){.thinking-tray{width:320px;max-height:none;left:8px;max-width:calc(100% - 16px)}.thinking-template>svg{height:40px}.thinking-template{min-height:90px}}
