.tl-library{display:flex;gap:10px;overflow-x:auto;padding:0 0 18px;align-items:stretch}.tl-line{display:flex;align-items:center;gap:11px;text-align:left;min-width:190px;max-width:300px;padding:12px 16px;background:#0b1c2b;border:1px solid var(--line);border-radius:5px;flex-shrink:0}.tl-line.active{border-color:var(--line-color);background:#142a38}.tl-line strong{font-size:17px;font-weight:500;display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:230px}.tl-line small{font-size:12px;color:var(--muted);display:block;max-width:230px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.tl-line-dot{width:8px;height:8px;border-radius:50%;background:var(--line-color);flex-shrink:0}.tl-new{min-width:135px;justify-content:center;color:var(--lightgold);border-style:dashed}.tl-board{border:1px solid var(--line);background:#0c1c2a;border-radius:6px;overflow:hidden}.tl-board-head{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:22px 24px}.tl-board-head h2{font-size:31px;margin:4px 0 0;overflow-wrap:anywhere}.tl-board-head .eyebrow{font-size:10px;margin:0}.tl-board-head p{font-size:15px;color:var(--muted);max-width:650px;margin:7px 0 0}.tl-board-head .button{font-size:13px;padding:8px 11px;min-height:34px}.tl-toolbar{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;padding:12px 24px;border-top:1px solid var(--line);border-bottom:1px solid var(--line);background:#102332}.tl-toolbar .button{font-size:14px;min-height:35px;padding:8px 12px}.tl-toolbar .row{gap:8px}.tl-view-toggle{display:flex;border:1px solid var(--line);border-radius:4px;overflow:hidden}.tl-view-toggle button{background:none;border:0;padding:7px 11px;color:var(--muted);font-size:14px;display:flex;align-items:center;gap:7px}.tl-view-toggle button.active{color:var(--lightgold);background:#c99b4520}.tl-view-toggle .icon{width:16px;height:16px}.tl-map-wrap{position:relative}.tl-canvas{height:560px;max-height:70vh;min-height:350px;overflow:auto;position:relative;background-color:#091925;background-image:radial-gradient(#e9d4a424 1px,transparent 1px);background-size:22px 22px;touch-action:none;overscroll-behavior:contain;cursor:grab;scrollbar-color:#58636a #102332}.tl-canvas.is-dragging,.tl-canvas.is-dragging *{cursor:grabbing!important;user-select:none}.tl-stage{position:relative;min-width:100%;min-height:100%}.tl-scene{position:relative;transform-origin:0 0}.tl-connections{position:absolute;left:0;top:0;pointer-events:none;overflow:visible}.tl-connections path{stroke:var(--line-color);stroke-width:2;fill:none;opacity:.7}.tl-connections path.branch{stroke-dasharray:6 5;opacity:.55}.tl-connections circle{fill:var(--line-color)}.tl-root{position:absolute;width:260px;height:170px;padding:21px 22px;background:var(--paper);color:var(--ink);border:1px solid #f6e8cd;box-shadow:0 8px 24px #0004;border-radius:4px 16px 4px 16px;display:flex;flex-direction:column;justify-content:center}.tl-root>span{display:flex;gap:8px;align-items:center;color:var(--wine);font-size:13px}.tl-root h3{font-family:var(--editorial);font-size:26px;line-height:1.1;margin:12px 0;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.tl-root .button{color:var(--wine);font-size:13px;justify-content:flex-start}.tl-node{width:270px;height:202px;position:absolute;border:1px solid #6a6e68;border-top:3px solid var(--line-color);background:#142b3b;border-radius:7px;box-shadow:0 6px 17px #0004;display:flex;flex-direction:column;overflow:hidden}.tl-node:focus-within{border-color:var(--lightgold)}.tl-node-top{display:flex;align-items:center;justify-content:space-between;padding:6px 10px 0;gap:5px;height:31px;flex-shrink:0}.tl-drag{display:flex;gap:5px;align-items:center;background:none;border:0;color:var(--muted);font-size:10px;padding:2px 0;cursor:grab;touch-action:none}.tl-grip{font-size:19px;color:#c5b48c;line-height:1}.tl-node-date{font-size:11px;color:var(--lightgold);max-width:112px;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.tl-node-title{text-align:left;padding:0 15px;margin:6px 0 4px;font:600 22px/1.1 var(--editorial);color:var(--paper);background:none;border:0;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;min-height:25px;max-height:49px;flex-shrink:0;overflow-wrap:anywhere}.tl-node-title:hover{color:var(--lightgold)}.tl-node-note{font-size:13px;line-height:1.3;color:#abbac1;padding:0 15px;margin:4px 0 7px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;flex-shrink:0}.tl-chips{display:flex;flex-wrap:wrap;gap:4px;padding:0 13px;max-height:43px;overflow:hidden}.tl-chip{font-size:11px;color:#c9d1cf;background:#253c48;border:1px solid #6f7f8045;border-radius:4px;padding:1px 6px;max-width:145px;white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.tl-chip:hover{color:var(--lightgold);border-color:var(--gold)}.tl-node-actions{display:flex;gap:4px;justify-content:space-between;margin-top:auto;border-top:1px solid #d1bc8d26;padding:6px 10px;background:#0c1d2a66}.tl-node-actions button{border:0;border-radius:3px;background:transparent;color:#aebec8;width:28px;height:25px;padding:4px;display:grid;place-items:center}.tl-node-actions button:hover{color:var(--lightgold);background:#c99b4520}.tl-node-actions button:disabled{opacity:.25;cursor:default}.tl-node-actions .icon{width:16px;height:16px}.tl-node-actions button:first-child{background:var(--line-color);color:#091827}.tl-branch-node{background:#172b36}.tl-map-hint{position:absolute;top:13px;left:18px;right:18px;z-index:2;pointer-events:none;color:#9cabb3;font-size:12px;text-shadow:0 1px 5px #091827;background:#091925bd;width:fit-content;padding:3px 8px;border-radius:3px}.tl-map-controls{position:absolute;bottom:15px;left:16px;z-index:3;display:flex;gap:5px;align-items:center;background:#102333f5;border:1px solid var(--line);border-radius:5px;padding:5px;box-shadow:0 3px 20px #0004}.tl-map-controls .button{min-height:30px;padding:5px 9px;font-size:12px}.tl-map-controls .icon-button{min-width:30px;min-height:30px;font-size:21px}.tl-zoom-label{min-width:44px;font:13px var(--serif);color:var(--lightgold);background:none;border:0}.tl-map-empty{position:absolute;top:140px;left:400px;width:300px}.tl-map-empty h3{font-size:29px;margin-bottom:13px}.tl-map-empty p{font-size:17px;color:var(--muted);margin-bottom:20px}.tl-caption{display:flex;justify-content:space-between;gap:16px;flex-wrap:wrap;padding:11px 20px;font-size:12px;color:#9eafb8;border-top:1px solid var(--line)}.tl-caption .icon{width:14px;height:14px;margin-right:4px}.tl-welcome{padding:60px 28px 48px;text-align:center;border:1px solid var(--line);border-radius:6px;background:radial-gradient(ellipse at 50% 0,#263d494d,transparent 70%),#0c1c2a}.tl-welcome h2{font-size:38px;margin:25px 0 13px;color:var(--paper)}.tl-welcome p{max-width:580px;margin:0 auto 25px;color:var(--muted)}.tl-welcome-art{display:flex;align-items:center;justify-content:center}.tl-welcome-art span{padding:10px 17px;background:#172e3d;color:var(--lightgold);border:1px solid var(--gold);border-radius:5px;font-size:15px}.tl-welcome-art span:first-child{background:var(--paper);color:var(--ink)}.tl-welcome-art i{width:50px;height:1px;background:var(--gold)}.tl-unplaced{margin:25px 0;padding:20px 22px;background:#102333;border:1px solid var(--line);border-radius:5px}.tl-unplaced summary{font-size:21px;color:var(--paper);cursor:pointer}.tl-unplaced summary .badge{margin-left:8px}.tl-unplaced>p{margin:15px 0}.tl-existing-list{display:grid;gap:10px;max-height:400px;overflow:auto}.tl-existing-list label{display:flex;align-items:center;gap:12px;padding:13px 15px;background:#091827;border:1px solid var(--line);border-radius:4px;cursor:pointer}.tl-existing-list input{flex-shrink:0}.tl-existing-list small{display:block;color:var(--muted);font-size:13px}.tl-list{padding:18px 24px;max-height:600px;overflow:auto}.tl-list-item{display:flex;gap:16px;align-items:center;padding:18px 0;border-bottom:1px solid var(--line)}.tl-list-item>div:first-of-type{flex:1;min-width:0}.tl-list-item h3{font-size:24px;margin:4px 0 8px}.tl-list-item small{color:var(--muted);font-size:13px}.tl-list-item .tl-chips{padding:0;max-height:none}.tl-order{width:34px;height:34px;border:1px solid var(--line-color);border-radius:50%;display:grid;place-items:center;color:var(--line-color);flex-shrink:0;font-size:16px}.tl-list-item .button{padding:6px 9px;min-height:30px}
@media(max-width:900px){.tl-board-head{flex-direction:column;align-items:flex-start}.tl-canvas{height:510px}.tl-board-head,.tl-toolbar{padding-left:18px;padding-right:18px}}
@media(max-width:620px){.tl-line{min-width:160px}.tl-line strong{max-width:190px}.tl-welcome{padding:35px 16px}.tl-welcome h2{font-size:30px}.tl-welcome-art span{font-size:11px;padding:9px 8px}.tl-welcome-art i{width:18px}.tl-toolbar .button{font-size:12px;padding:8px;gap:4px}.tl-toolbar .row{gap:5px}.tl-toolbar .icon{width:15px;height:15px}.tl-map-controls{left:8px;bottom:10px;gap:3px}.tl-map-controls .button{font-size:11px;padding:5px 6px}.tl-map-controls .button .icon{display:none}.tl-map-controls .icon-button{min-width:26px;min-height:28px}.tl-map-hint{font-size:10px;left:8px}.tl-caption{font-size:11px;padding:10px 14px;gap:6px}.tl-list{padding:10px 14px}.tl-list-item{gap:10px;flex-wrap:wrap}.tl-list-item h3{font-size:21px}.tl-board-head h2{font-size:28px}.tl-unplaced{padding:17px 14px}.tl-unplaced .note-row{flex-wrap:wrap}.tl-canvas{min-height:420px}}
