@import"https://fonts.googleapis.com/css2?family=IBM+Plex+Mono:wght@400;500;600&family=Space+Grotesk:wght@400;500;600;700&display=swap";:root{--bg: oklch(.145 0 0);--bg-strong: oklch(.18 0 0);--panel: oklch(.205 0 0);--panel-strong: oklch(.269 0 0);--panel-border: oklch(1 0 0 / 10%);--ink: oklch(.985 0 0);--muted: oklch(.708 0 0);--accent: oklch(.922 0 0);--accent-2: oklch(.78 0 0);--accent-3: oklch(.35 0 0);--edge: oklch(.556 0 0);--edge-hover: oklch(.78 0 0);--shadow: 0 20px 40px oklch(0 0 0 / .4);--shadow-soft: 0 12px 30px oklch(0 0 0 / .5);--table-shadow: 0 12px 30px oklch(0 0 0 / .45);--row-height: 24px;--header-height: 30px}*{box-sizing:border-box}html,body{height:100%}[hidden]{display:none!important}body{margin:0;font-family:Space Grotesk,Segoe UI,sans-serif;color:var(--ink);background:radial-gradient(900px 600px at 12% -10%,oklch(.24 0 0 / .55),transparent 60%),radial-gradient(800px 500px at 90% 10%,oklch(.28 0 0 / .4),transparent 60%),linear-gradient(180deg,var(--bg),var(--bg-strong));height:100%;overflow:hidden;color-scheme:dark}#root{height:100%;display:flex;flex-direction:column;min-height:0}.app-frame{display:flex;flex-direction:column;height:100%;min-height:0}.offline-banner{background:color-mix(in oklch,var(--panel-strong) 70%,black 30%);border-bottom:1px solid var(--panel-border);color:var(--muted);font-size:11px;letter-spacing:.6px;padding:8px 18px;text-transform:uppercase}.status-shell{flex:1;display:flex;align-items:center;justify-content:center;padding:48px 24px}.status-card{width:min(520px,92vw);border:1px solid var(--panel-border);border-radius:22px;padding:28px;background:color-mix(in oklch,var(--panel-strong) 70%,black 30%);box-shadow:var(--shadow)}.status-card h3{margin:0 0 8px;font-size:18px}.status-card p{margin:0 0 16px;color:var(--muted)}.topbar{display:flex;align-items:center;justify-content:space-between;padding:16px 24px;background:color-mix(in oklch,var(--panel) 92%,black 8%);border-bottom:1px solid var(--panel-border);position:sticky;top:0;z-index:10;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px)}.topbar__left{display:flex;align-items:center;gap:16px}.brand{display:flex;flex-direction:column;gap:2px}.brand__title{font-weight:700;letter-spacing:.3px;font-size:18px}.brand__subtitle{font-size:11px;color:var(--muted);text-transform:uppercase;letter-spacing:1px}.actions{display:flex;gap:10px;align-items:center}.btn{border:1px solid var(--panel-border);background:var(--panel-strong);color:var(--ink);padding:8px 14px;border-radius:10px;font-size:13px;cursor:pointer;transition:transform .15s ease,box-shadow .15s ease,border-color .15s ease}.btn:hover{transform:translateY(-1px);box-shadow:var(--shadow-soft)}.btn:disabled{opacity:.5;cursor:not-allowed;transform:none;box-shadow:none}.btn--accent{background:var(--accent);border-color:transparent;color:var(--bg)}.btn--ghost{background:transparent}.btn--danger{background:#8c3432;border-color:transparent;color:#e4e4e4}.btn--danger:hover{background:#7c1117}.btn--mini{padding:6px 10px;font-size:12px}.btn--icon{display:flex;align-items:center;justify-content:center;width:32px;height:32px;padding:0;border:none;background:transparent;color:var(--muted);border-radius:6px;cursor:pointer;transition:background .15s ease,color .15s ease}.btn--icon:hover{background:var(--panel-strong);color:var(--ink)}.btn--icon:active{transform:scale(.95)}.app-shell{height:100%;flex:1;display:grid;grid-template-columns:minmax(240px,280px) minmax(0,1fr);gap:0;min-height:0}.sidebar{background:var(--panel);border-right:1px solid var(--panel-border);display:flex;flex-direction:column;min-height:0}.sidebar__header{display:flex;justify-content:flex-start;align-items:center;gap:12px;padding:16px;border-bottom:1px solid var(--panel-border)}.sidebar__logo{height:36px;width:auto;display:block}.workspace-switcher{position:relative}.workspace-switcher__trigger{display:flex;align-items:center;gap:6px;border:none;background:transparent;color:var(--ink);cursor:pointer;padding:0}.workspace-switcher__badge{width:34px;height:34px;border-radius:10px;background:var(--panel-strong);border:1px solid var(--panel-border);display:flex;align-items:center;justify-content:center;font-size:12px;font-weight:600;letter-spacing:.4px}.workspace-menu{position:absolute;top:calc(100% + 8px);left:0;min-width:220px;background:var(--panel);border:1px solid var(--panel-border);border-radius:12px;padding:8px;box-shadow:0 16px 36px #00000073;z-index:120}.workspace-menu__list{display:flex;flex-direction:column;gap:4px;max-height:240px;overflow-y:auto;padding-right:4px}.workspace-menu__item{display:flex;align-items:center;gap:10px;width:100%;border:none;background:transparent;color:var(--ink);padding:8px 10px;border-radius:8px;text-align:left;cursor:pointer;font-size:13px}.workspace-menu__item:hover{background:var(--panel-strong)}.workspace-menu__item.is-active{background:color-mix(in oklch,var(--accent-2) 25%,var(--panel-strong) 75%)}.workspace-menu__badge{width:26px;height:26px;border-radius:8px;background:var(--panel-strong);border:1px solid var(--panel-border);display:flex;align-items:center;justify-content:center;font-size:11px;font-weight:600}.workspace-menu__title{font-size:13px;font-weight:500}.workspace-menu__empty{font-size:12px;color:var(--muted);padding:6px 8px}.workspace-menu__connect{margin-top:8px;width:100%;border:none;background:var(--panel-strong);color:var(--ink);border-radius:8px;padding:8px 10px;cursor:pointer;font-size:13px}.connect-panel{margin:12px 16px 0;padding:12px;border-radius:12px;border:1px solid var(--panel-border);background:var(--panel)}.connect-panel__header{font-size:13px;font-weight:600;margin-bottom:8px}.connect-panel__form{display:flex;flex-direction:column;gap:12px}.sidebar__new-btn{display:flex;align-items:center;justify-content:center;width:32px;height:32px;padding:0;border:none;background:var(--panel-strong);color:var(--ink);border-radius:8px;cursor:pointer;transition:background .15s ease,transform .1s ease}.sidebar__new-btn:hover{background:color-mix(in oklch,var(--accent-2) 30%,var(--panel-strong) 70%)}.sidebar__new-btn:active{transform:scale(.95)}.sidebar__new-btn.is-open{background:color-mix(in oklch,var(--accent-2) 30%,var(--panel-strong) 70%)}.new-menu-wrap{position:relative;margin-left:auto}.new-menu{position:absolute;top:calc(100% + 8px);right:0;min-width:160px;background:var(--panel);border:1px solid var(--panel-border);border-radius:10px;padding:6px;box-shadow:0 12px 32px #00000080;z-index:100;display:flex;flex-direction:column;gap:2px}.new-menu__item{display:flex;align-items:center;gap:10px;width:100%;padding:10px 12px;border:none;background:transparent;color:var(--ink);font-family:inherit;font-size:13px;text-align:left;border-radius:6px;cursor:pointer;transition:background .1s ease}.new-menu__item:hover{background:var(--panel-strong)}.new-menu__item svg{color:var(--muted);flex-shrink:0}.sidebar__tree{flex:1;overflow-y:auto;padding:8px 8px 16px}.sidebar__footer{border-top:1px solid var(--panel-border);padding:12px 16px 16px}.sidebar__user{display:flex;flex-direction:column;gap:8px;position:relative}.sidebar__user-btn{display:flex;align-items:center;gap:10px;padding:8px 10px;border:none;border-radius:10px;background:var(--panel-strong);color:var(--ink);cursor:pointer;font-family:inherit;text-align:left}.sidebar__user-avatar{width:32px;height:32px;border-radius:10px;background:color-mix(in oklch,var(--accent-2) 30%,var(--panel-strong) 70%);color:var(--ink);display:flex;align-items:center;justify-content:center;font-weight:600;font-size:12px;letter-spacing:.5px}.sidebar__user-name{font-size:13px;font-weight:500;color:var(--ink);max-width:140px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.user-menu{position:absolute;bottom:calc(100% + 8px);right:0;min-width:180px;background:var(--panel);border:1px solid var(--panel-border);border-radius:10px;padding:6px;box-shadow:0 12px 32px #00000073;z-index:120;display:flex;flex-direction:column;gap:4px}.user-menu__item{border:none;background:transparent;color:var(--ink);text-align:left;padding:8px 10px;border-radius:6px;cursor:pointer;font-size:13px}.user-menu__item:hover{background:var(--panel-strong)}.tree-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:4px}.tree-item{width:100%;border:none;background:transparent;color:var(--ink);padding:8px 10px;border-radius:10px;display:flex;align-items:center;justify-content:space-between;gap:8px;cursor:pointer;font-family:inherit;font-size:14px}.tree-item:hover{background:color-mix(in oklch,var(--panel-strong) 55%,transparent)}.tree-item.is-active{background:color-mix(in oklch,var(--panel-strong) 70%,black 30%)}.tree-item__title{font-size:13px;font-weight:400;text-align:left}.tree-item__input{flex:1;min-width:0;font-size:13px;font-weight:400;font-family:inherit;color:var(--ink);background:transparent;border:none;padding:0;margin:0;outline:none;caret-color:var(--accent-2)}.tree-item__meta{display:flex;align-items:center;gap:6px;flex-shrink:0}.tree-item__menu{position:relative;display:flex;align-items:center}.tree-item__menu-btn{display:flex;align-items:center;justify-content:center;width:22px;height:22px;padding:0;border:none;background:transparent;color:var(--muted);border-radius:6px;cursor:pointer;opacity:0;pointer-events:none;transform:translateY(1px);transition:opacity .15s ease,transform .15s ease,background .15s ease,color .15s ease}.tree-item:hover .tree-item__menu-btn,.tree-item:focus-within .tree-item__menu-btn,.tree-item__menu.is-open .tree-item__menu-btn{opacity:1;pointer-events:auto;transform:translateY(0)}.tree-item__menu-btn:hover{background:color-mix(in oklch,var(--panel-strong) 80%,transparent);color:var(--ink)}.note-menu{position:absolute;top:calc(100% + 6px);right:0;min-width:160px;background:var(--panel);border:1px solid var(--panel-border);border-radius:10px;padding:6px;box-shadow:0 12px 32px #00000073;z-index:120;display:flex;flex-direction:column;gap:4px}.note-menu__item{border:none;background:transparent;color:var(--ink);text-align:left;padding:8px 10px;border-radius:6px;cursor:pointer;font-size:13px}.note-menu__item:hover{background:var(--panel-strong)}.note-menu__item--danger{color:#fa6863}.note-menu__item--danger:hover{background:color-mix(in oklch,oklch(.7 .18 25) 20%,transparent);color:#ff847d;color:oklch(.75 .2 25)}.tree-item__kind{font-size:10px;color:var(--muted);letter-spacing:.6px}.tree-item__delete{display:flex;align-items:center;justify-content:center;width:20px;height:20px;padding:0;border:none;background:transparent;color:var(--muted);border-radius:4px;cursor:pointer;opacity:0;transition:opacity .15s ease,background .15s ease,color .15s ease}.tree-item:hover .tree-item__delete{opacity:1}.tree-item__delete:hover{background:color-mix(in oklch,var(--panel-strong) 80%,transparent);color:#ed756e}.tree-li{position:relative;transition:opacity .15s ease}.tree-li[draggable=true]{cursor:grab}.tree-li[draggable=true]:active{cursor:grabbing}.tree-li.is-dragging{opacity:.4}.tree-li.is-drop-before:before{content:"";position:absolute;top:0;left:8px;right:8px;height:2px;background:var(--accent-2);border-radius:1px;pointer-events:none}.tree-li.is-drop-after:after{content:"";position:absolute;bottom:0;left:8px;right:8px;height:2px;background:var(--accent-2);border-radius:1px;pointer-events:none}.tree-li.is-drop-inside>.tree-item{background:color-mix(in oklch,var(--accent-2) 20%,transparent);outline:1px dashed var(--accent-2);outline-offset:-1px}.main-panel{min-width:0;min-height:0;overflow:hidden;padding:24px;display:flex;flex-direction:column}.note-shell{flex:1;min-height:0;display:flex;flex-direction:column;gap:16px}.note-actions{display:flex;gap:6px;align-items:center}.note-actions .btn--mini{display:inline-flex;align-items:center;gap:6px}.canvas-placeholder{flex:1;min-height:0;display:flex;align-items:center;justify-content:center}.canvas-placeholder__card{background:var(--panel);border:1px solid var(--panel-border);border-radius:20px;padding:24px;max-width:420px;box-shadow:var(--shadow)}.main{flex:1;min-height:0;display:flex;flex-direction:column;gap:24px;padding:24px;overflow:hidden}.view{display:none;min-height:0;flex:1}body[data-view=workspace] #workspaceView{display:grid}body[data-view=canvas] #canvasView,body[data-view=workspace] .actions--workspace{display:flex}body[data-view=workspace] .actions--canvas,body[data-view=workspace] #backBtn,body[data-view=canvas] .actions--workspace{display:none}body[data-view=canvas] .actions--canvas{display:flex}.view--workspace{grid-template-columns:minmax(220px,260px) minmax(0,1fr);gap:24px}.panel{background:var(--panel);border-radius:20px;border:1px solid var(--panel-border);box-shadow:var(--shadow);display:flex;flex-direction:column;min-height:0}.panel__header{display:flex;align-items:center;justify-content:space-between;padding:18px 18px 10px;gap:12px}.panel__header h2{margin:4px 0 0;font-size:20px}.panel__header--space{align-items:flex-start}.eyebrow{font-size:11px;letter-spacing:1px;text-transform:uppercase;color:var(--muted)}.muted{color:var(--muted);font-size:13px}.folder-list{list-style:none;padding:0 12px 18px;margin:0;display:flex;flex-direction:column;gap:10px;flex:1;min-height:0;overflow-y:auto}.folder-item{display:grid;grid-template-columns:1fr auto;gap:10px;align-items:center;padding:10px 12px;border-radius:14px;border:1px solid transparent;background:color-mix(in oklch,var(--panel-strong) 75%,black 25%);cursor:pointer;transition:border-color .15s ease,transform .15s ease}.folder-item.is-active{border-color:color-mix(in oklch,var(--accent) 55%,var(--panel) 45%);box-shadow:0 12px 26px #0000004d}.folder-item.is-drop-target{border-color:var(--accent-2);transform:translateY(-2px)}.folder-name{font-weight:600;font-size:14px;display:flex;align-items:center;gap:6px}.folder-count{font-size:11px;color:var(--muted)}.folder-actions{display:flex;gap:6px}.folder-actions button{border:none;background:transparent;font-size:11px;color:var(--muted);cursor:pointer}.folder-actions button:hover{color:var(--ink)}.folder-form{display:flex;gap:8px;width:100%;grid-column:1 / -1}.folder-form input{flex:1;border-radius:10px;border:1px solid var(--panel-border);padding:6px 10px;font-size:13px;font-family:inherit}.canvases-panel{padding-bottom:18px}.canvas-grid{display:flex;flex-direction:column;gap:10px;padding:0 18px 18px;flex:1;min-height:0;overflow-y:auto}.canvas-card{background:var(--panel);border:1px solid var(--panel-border);border-radius:16px;padding:10px 14px;display:flex;flex-direction:column;gap:6px;cursor:pointer;box-shadow:0 12px 22px #00000014;transition:transform .2s ease,border-color .2s ease,box-shadow .2s ease}.canvas-card[draggable='"true"']{cursor:grab}.canvas-card[draggable='"true"']:active{cursor:grabbing}.canvas-card:hover{transform:translateY(-3px);border-color:color-mix(in oklch,var(--accent-2) 45%,var(--panel) 55%);box-shadow:0 16px 36px #00000059}.canvas-card__title{font-weight:600;font-size:15px}.canvas-card__row{display:flex;align-items:center;justify-content:space-between;gap:12px}.canvas-card__status{font-size:12px;color:var(--muted)}.canvas-empty{border:1px dashed var(--panel-border);border-radius:16px;padding:24px;background:color-mix(in oklch,var(--panel-strong) 70%,black 30%)}.canvas-empty h3{margin:0 0 8px;font-size:16px}.auth-shell{flex:1;display:flex;align-items:center;justify-content:center;padding:48px 24px}.auth-card{width:min(520px,92vw);background:var(--panel);border:1px solid var(--panel-border);border-radius:24px;padding:28px;box-shadow:var(--shadow);display:flex;flex-direction:column;gap:20px}.auth-header{display:flex;align-items:flex-start;justify-content:space-between;gap:16px}.auth-title{margin:0;font-size:24px;font-weight:700}.auth-subtitle{margin:6px 0 0;color:var(--muted);font-size:13px}.auth-tabs{display:flex;gap:8px}.auth-tab{border:1px solid var(--panel-border);background:transparent;color:var(--ink);padding:6px 10px;border-radius:999px;font-size:12px;cursor:pointer;transition:background .15s ease,color .15s ease,transform .1s ease}.auth-tab:hover{transform:translateY(-1px)}.auth-tab.is-active{background:var(--accent);color:var(--bg);border-color:transparent}.auth-form{display:flex;flex-direction:column;gap:14px}.auth-submit{align-self:flex-start}.auth-alert{border-radius:14px;padding:12px 14px;font-size:12px;display:flex;flex-direction:column;gap:4px}.auth-alert.is-info{border:1px solid color-mix(in oklch,oklch(.78 .1 235) 45%,var(--panel-border) 55%);background:color-mix(in oklch,oklch(.62 .14 235) 18%,var(--panel-strong) 82%);color:var(--ink)}.auth-alert.is-error{border:1px solid color-mix(in oklch,oklch(.62 .18 25) 45%,var(--panel-border) 55%);background:color-mix(in oklch,oklch(.48 .2 25) 18%,var(--panel-strong) 82%);color:var(--ink)}.auth-alert__detail{display:block;margin-top:4px;color:var(--muted)}.auth-link{background:none;border:none;padding:0;color:var(--muted);font-size:12px;text-align:left;cursor:pointer}.auth-link:hover{color:var(--ink)}.auth-footer{display:flex;align-items:center;gap:6px;font-size:12px;color:var(--muted);margin-top:6px}.auth-footer__text{color:var(--muted)}.auth-footer__link{background:none;border:none;padding:0;color:var(--ink);font-size:12px;cursor:pointer}.auth-footer__link:hover{color:var(--accent)}.field select{border:1px solid var(--panel-border);border-radius:12px;padding:10px 36px 10px 16px;font-size:14px;font-family:inherit;color:var(--ink);background:var(--panel);appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12'%3E%3Cpath fill='%237a7a7a' d='M2 4l4 4 4-4'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 14px center;cursor:pointer}.pill{display:inline-flex;align-items:center;gap:6px;padding:4px 10px;border-radius:999px;font-size:11px;text-transform:uppercase;letter-spacing:.6px;background:color-mix(in oklch,var(--accent-3) 35%,var(--panel) 65%);color:var(--ink)}.sheet-backdrop{position:fixed;inset:0;background:#0000008c;opacity:0;pointer-events:none;transition:opacity .2s ease;z-index:20}.sheet-backdrop.is-open{opacity:1;pointer-events:auto}.sheet{position:fixed;right:24px;top:92px;width:min(460px,92vw);background:var(--panel);border:1px solid var(--panel-border);border-radius:22px;box-shadow:var(--shadow);padding:18px;opacity:0;transform:translateY(-16px) scale(.98);pointer-events:none;transition:opacity .2s ease,transform .2s ease;z-index:30}.sheet.is-open{opacity:1;transform:translateY(0) scale(1);pointer-events:auto}.sheet__header{display:flex;justify-content:space-between;gap:16px;align-items:flex-start}.sheet__body{display:flex;flex-direction:column;gap:16px;margin-top:16px}.field{display:flex;flex-direction:column;gap:8px}.field__label{font-size:12px;text-transform:uppercase;letter-spacing:.8px;color:var(--muted)}.field input{border:1px solid var(--panel-border);border-radius:12px;padding:10px 12px;font-size:14px;font-family:inherit}.field__with-action{display:flex;gap:8px;align-items:stretch}.field__with-action input{flex:1}.field__with-action .btn{flex-shrink:0}.field--checkbox{flex-direction:row;align-items:center;gap:8px;font-size:12px}.field--checkbox input{width:16px;height:16px}.field--checkbox span{font-size:12px;color:var(--muted);text-transform:none;letter-spacing:0}.field__hint{font-size:11px;color:var(--muted)}.field__hint--error{color:var(--accent-2)}.password-requirements{list-style:none;margin:8px 0 0;padding:10px 12px;display:grid;gap:6px;font-size:11px;color:var(--muted);border-radius:12px;background:color-mix(in oklch,var(--panel-strong) 80%,black 20%);border:1px solid var(--panel-border)}.password-requirements__item:before{content:"- ";color:var(--muted)}.password-requirements__item.is-valid{color:var(--ink)}.password-requirements__item.is-valid:before{color:var(--accent)}.kind-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:12px}.kind-card{position:relative}.kind-card input{position:absolute;opacity:0;pointer-events:none}.kind-card__body{display:flex;flex-direction:column;gap:6px;padding:14px;border-radius:14px;border:1px solid var(--panel-border);background:color-mix(in oklch,var(--panel-strong) 70%,black 30%);transition:border-color .2s ease,transform .2s ease,box-shadow .2s ease}.kind-card__title{font-weight:600;font-size:14px}.kind-card__desc{font-size:12px;color:var(--muted)}.kind-card input:checked+.kind-card__body{border-color:var(--accent);box-shadow:0 10px 24px #0006;transform:translateY(-2px)}.sheet__actions{display:flex;gap:10px;justify-content:flex-end}.view--canvas{flex-direction:column;gap:18px;min-height:0}.note-header{display:flex;justify-content:space-between;align-items:flex-end;gap:16px}.note-header__title-wrap{flex:1;min-width:0}.note-header__title{margin:0;font-size:24px;font-weight:700;cursor:text;padding:0;border-radius:4px;transition:opacity .15s ease}.note-header__title:hover{opacity:.7}.note-header__title-input{width:100%;font-size:24px;font-weight:700;font-family:inherit;color:var(--ink);background:transparent;border:none;padding:0;margin:0;outline:none;caret-color:var(--accent-2)}.note-header h2{margin:0;font-size:24px}.note-header__meta{display:flex;gap:12px;align-items:center}.note-body{flex:1;min-height:0;display:flex;flex-direction:column;gap:16px}.placeholder{display:flex;flex:1;min-height:0;align-items:center;justify-content:center}.placeholder__card{background:var(--panel);border-radius:20px;border:1px solid var(--panel-border);padding:30px;max-width:420px;text-align:center;box-shadow:var(--shadow)}.placeholder__actions{margin-top:20px;display:flex;justify-content:center}.dbml-shell{flex:1;min-height:0;display:flex;flex-direction:column;border-radius:22px;overflow:hidden;background:radial-gradient(1200px 600px at 0% 0%,oklch(.26 0 0 / .5),transparent 60%),linear-gradient(180deg,#161616,#0f0f0f);border:1px solid oklch(1 0 0 / .12);box-shadow:0 18px 40px #00000073;--bg: oklch(.16 0 0);--panel: oklch(.205 0 0);--panel-strong: oklch(.269 0 0);--panel-border: oklch(1 0 0 / .12);--ink: oklch(.985 0 0);--muted: oklch(.708 0 0);--accent: oklch(.922 0 0);--accent-2: oklch(.78 0 0);--accent-3: oklch(.35 0 0);--edge: oklch(.556 0 0);--edge-hover: oklch(.78 0 0);--table-shadow: 0 16px 40px oklch(0 0 0 / .6)}.markdown-shell{flex:1;min-height:0;display:flex;flex-direction:column;gap:16px;padding:0;border:none;background:transparent;box-shadow:none;animation:markdown-rise .35s ease}.markdown-header-actions{position:relative;display:flex;align-items:center;gap:12px}.view-toggle{display:inline-flex;align-items:center;gap:0;border:1px solid var(--panel-border);border-radius:999px;overflow:hidden;background:color-mix(in oklch,var(--panel-strong) 70%,transparent)}.view-toggle__btn{border:none;background:transparent;color:var(--muted);padding:6px 12px;font-size:12px;font-weight:600;display:inline-flex;align-items:center;gap:6px;cursor:pointer;transition:background .15s ease,color .15s ease}.view-toggle__btn:hover{color:var(--ink)}.view-toggle__btn.is-active{background:var(--accent);color:#121212}.markdown-workspace{flex:1;min-height:0;display:flex;min-width:0;border-radius:22px;overflow:hidden;border:1px solid var(--panel-border);background:var(--panel)}.markdown-pane{min-height:0;display:flex;flex-direction:column;min-width:260px}.markdown-pane--editor{width:46%;flex:0 0 auto;background:var(--panel);border-right:1px solid var(--panel-border);user-select:text;-webkit-user-select:text}.markdown-pane--preview{flex:1 1 0;min-width:0;padding:28px 32px;background:var(--bg-strong);position:relative}.markdown-preview{flex:1;min-height:0;overflow:auto;padding:0;border-radius:0;border:none;background:transparent;color:var(--ink);font-size:16px;line-height:1.7;font-family:Space Grotesk,Segoe UI,sans-serif;position:relative;outline:none;animation:markdown-fade .35s ease}.markdown-preview:focus{box-shadow:none}.markdown-preview.is-empty:before{content:attr(data-placeholder);position:absolute;top:0;left:0;color:var(--muted);opacity:.7;pointer-events:none}.markdown-selection-toolbar{position:absolute;display:flex;align-items:center;flex-wrap:wrap;gap:4px;row-gap:4px;padding:6px;max-width:min(520px,90vw);border-radius:10px;border:1px solid var(--panel-border);background:color-mix(in oklch,var(--panel-strong) 75%,var(--panel) 25%);box-shadow:var(--shadow-soft);transform:translate(-50%,calc(-100% - 10px));z-index:5}.markdown-selection-toolbar.is-below{transform:translate(-50%,10px)}.markdown-selection-toolbar .btn--icon{width:28px;height:28px;color:var(--ink);background:transparent}.markdown-selection-toolbar .btn--icon:hover,.markdown-selection-toolbar .btn--icon.is-active{background:var(--panel-strong)}.heading-menu-wrap{position:relative}.heading-menu{position:absolute;top:calc(100% + 6px);left:50%;transform:translate(-50%);display:flex;gap:2px;padding:4px;border-radius:10px;border:1px solid var(--panel-border);background:var(--panel);box-shadow:var(--shadow-soft);z-index:10}.heading-menu__item{border:none;background:transparent;color:var(--ink);padding:6px 10px;border-radius:6px;font-size:12px;font-weight:600;cursor:pointer;transition:background .1s ease}.heading-menu__item:hover{background:var(--panel-strong)}.markdown-preview h1,.markdown-preview h2,.markdown-preview h3{margin:1.3em 0 .6em;line-height:1.2}.markdown-preview h1{font-size:32px}.markdown-preview h2{font-size:24px}.markdown-preview h3{font-size:20px}.markdown-preview p{margin:0 0 1em}.markdown-preview ul,.markdown-preview ol{margin:0 0 1em 1.2em;padding:0}.markdown-preview blockquote{margin:1.2em 0;padding:.6em 1em;border-left:3px solid var(--accent-2);background:color-mix(in oklch,var(--panel-strong) 70%,transparent);border-radius:10px}.markdown-preview code{font-family:IBM Plex Mono,SFMono-Regular,Consolas,monospace;background:color-mix(in oklch,var(--panel-strong) 70%,transparent);padding:.15em .35em;border-radius:6px;font-size:.92em}.markdown-preview pre{margin:1.2em 0;padding:16px;border-radius:12px;background:#0d0d0d;border:1px solid var(--panel-border);overflow:auto}.markdown-preview pre code{background:transparent;padding:0}.markdown-preview .code-block-wrapper{position:relative;margin:1.2em 0}.markdown-preview .code-block-wrapper pre{margin:0}.markdown-preview .code-lang-badge{position:absolute;top:8px;right:12px;padding:2px 8px;font-size:11px;font-family:inherit;font-weight:500;text-transform:uppercase;letter-spacing:.5px;color:gray;background:#1b1b1b;border:1px solid oklch(.3 0 0);border-radius:4px;cursor:pointer;-webkit-user-select:none;user-select:none;z-index:10;transition:background .15s,color .15s,border-color .15s}.markdown-preview .code-lang-badge:hover{color:#cecece;background:#292929;border-color:#555}.code-lang-menu{position:absolute;z-index:100;background:#121212;border:1px solid oklch(.3 0 0);border-radius:8px;box-shadow:0 8px 24px #0006;max-height:280px;overflow-y:auto;padding:4px;display:grid;grid-template-columns:repeat(3,1fr);gap:2px;min-width:240px;transform:translate(-100%)}.code-lang-menu__item{border:none;background:transparent;color:#aeaeae;padding:6px 10px;font-size:12px;font-family:IBM Plex Mono,monospace;text-align:left;border-radius:4px;cursor:pointer;transition:background .1s,color .1s}.code-lang-menu__item:hover{background:#222;color:#eee}.code-lang-menu__item.is-active{background:#b688ff33;background:oklch(.72 .18 300 / .2);color:#d6c1ff;color:oklch(.85 .12 300)}.table-grid-menu{position:absolute;z-index:100;background:#121212;border:1px solid oklch(.3 0 0);border-radius:8px;box-shadow:0 8px 24px #0006;padding:12px}.table-grid-menu__label{font-size:12px;color:#8f8f8f;text-align:center;margin-bottom:8px;font-weight:500}.table-grid-menu__grid{display:grid;grid-template-columns:repeat(6,1fr);gap:4px}.table-grid-menu__cell{width:22px;height:22px;border:1px solid oklch(.35 0 0);border-radius:3px;background:#1b1b1b;cursor:pointer;transition:background .1s,border-color .1s}.table-grid-menu__cell:hover{border-color:#636363}.table-grid-menu__cell.is-selected{background:#b688ff66;background:oklch(.72 .18 300 / .4);border-color:#b688ff;border-color:oklch(.72 .18 300)}.markdown-preview pre.line-numbers{padding-left:0;padding-right:0}.markdown-preview pre.line-numbers code{display:block;counter-reset:line;padding:0;line-height:1.5}.markdown-preview pre.line-numbers .code-line{display:block;padding-left:16px;padding-right:16px;min-height:1.5em;border-left:2px solid transparent;transition:background .1s,border-color .1s}.markdown-preview pre.line-numbers .code-line.is-cursor-line{background:#1b1b1b;border-left-color:#b688ff;border-left-color:oklch(.72 .18 300)}.markdown-preview pre.line-numbers .code-line:before{counter-increment:line;content:counter(line);display:inline-block;width:3ch;margin-right:16px;text-align:right;color:#555;-webkit-user-select:none;user-select:none;font-size:.85em}.markdown-preview pre.line-numbers .code-line.is-cursor-line:before{color:#b688ff;color:oklch(.72 .18 300)}.markdown-preview pre code.hljs{display:block;color:#d7d7d7}.markdown-preview .hljs-comment,.markdown-preview .hljs-quote{color:#717171;font-style:italic}.markdown-preview .hljs-keyword,.markdown-preview .hljs-selector-tag,.markdown-preview .hljs-literal,.markdown-preview .hljs-symbol{color:#b688ff;color:oklch(.72 .18 300)}.markdown-preview .hljs-string,.markdown-preview .hljs-template-variable{color:#5bbe62}.markdown-preview .hljs-title,.markdown-preview .hljs-section,.markdown-preview .hljs-name{color:#00befa;color:oklch(.75 .15 230)}.markdown-preview .hljs-attr,.markdown-preview .hljs-attribute,.markdown-preview .hljs-variable{color:#2cc5c5}.markdown-preview .hljs-type,.markdown-preview .hljs-title.class_{color:#eab532}.markdown-preview .hljs-title.function_{color:#00befa;color:oklch(.75 .15 230)}.markdown-preview .hljs-title.invoke__{color:#00d2d2;color:oklch(.78 .14 195)}.markdown-preview .hljs-punctuation{color:#8f8f8f}.markdown-preview .hljs-number,.markdown-preview .hljs-built_in,.markdown-preview .hljs-bullet{color:#f98f3a}.markdown-preview .hljs-emphasis{font-style:italic}.markdown-preview .hljs-strong{font-weight:700}.markdown-preview .hljs-meta,.markdown-preview .hljs-meta .hljs-keyword{color:#ff6551;color:oklch(.7 .2 30)}.markdown-preview .hljs-tag{color:#8f8f8f}.markdown-preview .hljs-tag .hljs-name{color:#b688ff;color:oklch(.72 .18 300)}.markdown-preview .hljs-tag .hljs-attr{color:#2cc5c5}.markdown-preview .hljs-tag .hljs-string{color:#5bbe62}.markdown-preview .hljs-function{color:#eab532}.markdown-preview .hljs-params{color:#2cc5c5}.markdown-preview .hljs-doctag{color:#b688ff;color:oklch(.72 .18 300);font-weight:600}.markdown-preview .hljs-addition{background-color:#0c47144d;color:#6bc670}.markdown-preview .hljs-deletion{background-color:#65201e4d;color:#ff847d}.markdown-preview .hljs-regexp,.markdown-preview .hljs-selector-class,.markdown-preview .hljs-selector-id{color:#5bbe62}.markdown-preview .math-block{display:block;margin:1.2em 0;padding:16px;background:#0d0d0d;border:1px solid var(--panel-border);border-radius:12px;overflow-x:auto;text-align:center}.markdown-preview .math-inline{display:inline;padding:0 .2em}.markdown-preview .math-error{color:#ff847d;font-family:IBM Plex Mono,monospace;font-size:.9em}.markdown-preview .katex,.markdown-preview .katex .mord,.markdown-preview .katex .mbin,.markdown-preview .katex .mrel,.markdown-preview .katex .mopen,.markdown-preview .katex .mclose,.markdown-preview .katex .mpunct,.markdown-preview .katex .minner{color:var(--ink)}.markdown-preview table{width:100%;border-collapse:separate;border-spacing:0;margin:1.2em 0;font-size:.95em;border:1px solid var(--panel-border);border-radius:12px;overflow:hidden}.markdown-preview th,.markdown-preview td{border-bottom:1px solid var(--panel-border);border-right:1px solid var(--panel-border);padding:8px 10px;min-height:1.5em;min-width:40px}.markdown-preview td:empty:after{content:"​";display:inline-block}.markdown-preview th:last-child,.markdown-preview td:last-child{border-right:none}.markdown-preview tr:last-child td{border-bottom:none}.markdown-preview th{background:var(--panel-strong);color:var(--ink);text-align:left}.markdown-preview img{max-width:100%;display:block;margin:1.2em 0;border-radius:12px;border:1px solid var(--panel-border)}.markdown-preview a{color:var(--accent);text-decoration:none;border-bottom:1px solid color-mix(in oklch,var(--accent) 50%,transparent)}.markdown-preview.is-modifier-held a{cursor:pointer}.markdown-preview a:hover{color:var(--ink)}.link-menu{position:absolute;top:calc(100% + 8px);right:0;width:min(340px,90vw);background:var(--panel);border:1px solid var(--panel-border);border-radius:14px;padding:12px;box-shadow:var(--shadow-soft);z-index:20;display:flex;flex-direction:column;gap:10px}.link-menu__header{display:flex;justify-content:space-between;font-size:12px;color:var(--muted)}.link-menu__section{display:flex;flex-direction:column;gap:8px}.link-menu__label{font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.5px;color:var(--muted)}.link-menu__divider{height:1px;background:var(--panel-border);margin:4px 0}.link-menu__url-form{display:flex;gap:8px}.link-menu__url-form .link-menu__input{flex:1;min-width:0}.link-menu__submit{border:none;background:var(--accent);color:var(--bg);padding:8px 14px;border-radius:10px;font-size:12px;font-weight:600;cursor:pointer;transition:opacity .15s ease}.link-menu__submit:hover{opacity:.9}.link-menu__submit:disabled{opacity:.4;cursor:not-allowed}.link-menu__input{border:1px solid var(--panel-border);border-radius:10px;background:transparent;color:var(--ink);padding:8px 10px;font-size:13px}.link-menu__list{display:flex;flex-direction:column;gap:6px;max-height:220px;overflow:auto}.link-menu__item{border:1px solid var(--panel-border);border-radius:10px;background:transparent;color:var(--ink);padding:8px 10px;display:flex;justify-content:space-between;align-items:center;cursor:pointer;transition:border-color .15s ease,background .15s ease}.link-menu__item:hover{border-color:color-mix(in oklch,var(--accent) 50%,var(--panel-border));background:color-mix(in oklch,var(--panel-strong) 60%,transparent)}.link-menu__title{font-size:13px;font-weight:600}.link-menu__meta{font-size:11px;color:var(--muted);letter-spacing:.4px}.link-menu__empty{text-align:center;color:var(--muted);padding:12px 0}.markdown-shell[data-view=code] .markdown-pane--preview,.markdown-shell[data-view=preview] .markdown-pane--editor,.markdown-shell[data-view=code] .markdown-splitter,.markdown-shell[data-view=preview] .markdown-splitter{display:none}.markdown-shell[data-view=code] .markdown-pane--editor{width:100%;flex:1 1 0;border-right:none}.markdown-shell[data-view=preview] .markdown-pane--preview{padding:24px}@keyframes markdown-rise{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}@keyframes markdown-fade{0%{opacity:.65}to{opacity:1}}@media(prefers-reduced-motion:reduce){.markdown-shell,.markdown-preview{animation:none}}.workspace{flex:1;display:flex;min-height:0;min-width:0}.pane{min-width:260px;min-height:0;display:flex;flex-direction:column;background:var(--panel)}.pane--editor{width:45%;flex:0 0 auto;border-right:1px solid var(--panel-border)}.pane--diagram{flex:1 1 0;min-width:0;position:relative}.diagram-zoom-controls{position:absolute;bottom:16px;right:16px;display:flex;align-items:center;gap:4px;background:var(--panel);border:1px solid var(--panel-border);border-radius:10px;padding:4px;box-shadow:0 8px 24px #0006;z-index:10}.diagram-zoom-btn{display:flex;align-items:center;justify-content:center;width:32px;height:32px;border:none;background:transparent;color:var(--ink);border-radius:6px;cursor:pointer;transition:background .15s ease,transform .1s ease}.diagram-zoom-btn--auto{width:auto;padding:0 10px;font-size:12px;font-weight:600;letter-spacing:.02em}.diagram-zoom-btn:hover{background:var(--panel-strong)}.diagram-zoom-btn:active{transform:scale(.95)}.diagram-zoom-level{min-width:48px;text-align:center;font-size:12px;font-weight:500;color:var(--muted);-webkit-user-select:none;user-select:none}.splitter{width:6px;flex:0 0 6px;cursor:col-resize;background:linear-gradient(180deg,var(--panel-strong),var(--panel));border-left:1px solid var(--panel-border);border-right:1px solid var(--panel-border)}.editor{flex:1;overflow:hidden;user-select:text;-webkit-user-select:text}.statusbar{padding:6px 12px;font-size:12px;color:var(--muted);min-height:28px}.status-ok{color:#61bd67}.status-error{color:#f14d4c}.diagram{position:relative;flex:1;overflow:auto;background:linear-gradient(transparent 23px,#2e2e2e4d 24px),linear-gradient(90deg,transparent 23px,oklch(.3 0 0 / .3) 24px),var(--bg);background-size:24px 24px}.diagram-canvas{position:relative;min-width:100%;min-height:100%}.diagram-edges{position:absolute;left:0;top:0;pointer-events:auto;z-index:2}.diagram-groups{position:absolute;left:0;top:0;pointer-events:none;z-index:1}.diagram-group{position:absolute;border:1px dashed oklch(.6 0 0 / .35);border-radius:16px;background:#16161614;padding:10px}.diagram-group-labels{position:absolute;left:0;top:0;pointer-events:none;z-index:4}.diagram-group--selected{border-color:#00b0d5b3;border-color:oklch(.7 .15 220 / .7);box-shadow:0 0 0 3px #00b0d526;box-shadow:0 0 0 3px oklch(.7 .15 220 / .15)}.diagram-group__label{position:absolute;top:-12px;left:18px;padding:2px 10px;border-radius:999px;background:var(--panel);border:1px solid oklch(.6 0 0 / .2);color:var(--muted);font-size:11px;letter-spacing:.08em;text-transform:uppercase;cursor:grab;pointer-events:auto}.diagram-group__label.is-selected{border-color:#00b0d5b3;border-color:oklch(.7 .15 220 / .7);color:#3dbfe2}.diagram-nodes{position:absolute;left:0;top:0;pointer-events:none;z-index:3}.table{position:absolute;min-width:220px;background:var(--panel);border:1px solid var(--panel-border);border-radius:10px;box-shadow:var(--table-shadow);overflow:hidden;-webkit-user-select:none;user-select:none;pointer-events:auto}.table.is-highlight{outline:2px solid oklch(.78 0 0 / .5)}.table__header{height:var(--header-height);display:flex;align-items:center;justify-content:space-between;padding:0 10px;font-weight:600;font-size:13px;color:var(--ink)}.table__schema{font-size:10px;text-transform:uppercase;letter-spacing:.8px;opacity:.8}.table__body{font-family:IBM Plex Mono,SFMono-Regular,Consolas,monospace;font-size:12px;color:var(--ink)}.table__row{display:flex;align-items:center;height:var(--row-height);padding:0 10px;gap:8px;border-top:1px solid oklch(1 0 0 / .04)}.table__row.is-highlight{background:color-mix(in oklch,var(--panel-strong) 65%,transparent)}.table__row.is-selected{background:color-mix(in oklch,var(--panel-strong) 80%,transparent)}.table.is-selected{outline:2px solid oklch(.85 0 0 / .45)}.table.is-multi-selected{outline:2px solid oklch(.7 .15 220 / .8);box-shadow:var(--table-shadow),0 0 0 4px #00b0d533;box-shadow:var(--table-shadow),0 0 0 4px oklch(.7 .15 220 / .2)}.selection-rect{position:absolute;border:2px solid oklch(.7 .15 220 / .8);background:#00b0d526;background:oklch(.7 .15 220 / .15);pointer-events:none;z-index:1000;border-radius:4px}.table__col-name{font-weight:600}.table__col-type{color:var(--muted);margin-left:auto}.badge{font-size:9px;padding:2px 4px;border-radius:4px;text-transform:uppercase;letter-spacing:.5px;background:color-mix(in oklch,var(--panel-strong) 70%,transparent);color:var(--ink)}.edge-line{fill:none;stroke:var(--edge);stroke-width:1.6;pointer-events:none}.edge-hit{fill:none;stroke:transparent;stroke-width:20;pointer-events:stroke;cursor:pointer}.edge--selected .edge-line{stroke:var(--accent-2);stroke-width:2.6}.edge--selected .flow-path{opacity:1;stroke:var(--accent-2);animation:flowAnimation .8s linear infinite}.edge--selected .cardinality-one,.edge--selected .cardinality-many{stroke:var(--accent-2)}.edge--hover .edge-line{stroke:var(--edge-hover);stroke-width:2.6;stroke-dasharray:6 6;animation:dash .8s linear infinite}.edge-label{font-size:11px;font-weight:500;fill:#dedede;paint-order:stroke;stroke:var(--bg);stroke-width:3px}.cardinality-symbol{pointer-events:none}.cardinality-one{stroke:var(--edge);stroke-width:2;stroke-linecap:round}.cardinality-many{stroke:var(--edge);stroke-width:1.6;stroke-linecap:round}.edge--hover .cardinality-one,.edge--hover .cardinality-many{stroke:var(--edge-hover);stroke-width:2.5}.flow-path{fill:none;stroke:var(--edge-hover);stroke-width:3;stroke-linecap:round;stroke-dasharray:8 16;stroke-dashoffset:0;opacity:0;pointer-events:none;filter:drop-shadow(0 0 2px var(--edge-hover))}.edge--hover .flow-path{opacity:1;animation:flowAnimation .8s linear infinite}.edge-handles{opacity:0;pointer-events:none;transition:opacity .15s ease}.edge--selected .edge-handles{opacity:1;pointer-events:all}.edge-handle{fill:var(--ink);stroke:#a1a1a1;stroke-width:2}.edge-handle.is-draggable{cursor:ew-resize}.edge-handle.is-draggable[data-axis=y]{cursor:ns-resize}.edge-handle.is-locked{opacity:.5}@keyframes flowAnimation{to{stroke-dashoffset:24}}@keyframes dash{to{stroke-dashoffset:24}}.tooltip{position:absolute;padding:6px 8px;background:var(--panel);border:1px solid var(--panel-border);border-radius:6px;font-size:12px;color:var(--ink);pointer-events:none;box-shadow:0 12px 24px #00000059;white-space:nowrap}.cm-editor{height:100%}.cm-scroller{font-family:IBM Plex Mono,SFMono-Regular,Consolas,monospace}.cm-gutters{background:var(--panel);border-right:1px solid var(--panel-border);color:var(--muted)}.cm-activeLineGutter{background:var(--panel-strong)}.kanban-workspace{flex:1;min-height:0;display:grid;grid-template-columns:minmax(0,1fr);gap:16px}.kanban-workspace.has-panel{grid-template-columns:minmax(0,1fr) minmax(360px,440px)}.kanban-board{background:var(--panel);border:1px solid var(--panel-border);border-radius:18px;padding:16px;min-height:0;display:flex;flex-direction:column;overflow:hidden}.kanban-columns{display:flex;gap:16px;flex:1;min-height:0;overflow-x:auto;padding-bottom:8px}.kanban-column{background:color-mix(in oklch,var(--panel-strong) 80%,var(--panel) 20%);border:1px solid var(--panel-border);border-radius:16px;min-width:240px;max-width:320px;display:flex;flex-direction:column;max-height:100%}.kanban-column.is-drop-target{outline:2px dashed var(--accent-2);outline-offset:-4px}.kanban-column__header{display:flex;align-items:center;gap:8px;padding:12px 12px 8px}.kanban-column__title{flex:1;background:transparent;border:none;color:var(--ink);font-size:14px;font-weight:600}.kanban-column__title:focus{outline:1px solid var(--accent-2);border-radius:8px;padding:2px 6px}.kanban-column__count{font-size:12px;color:var(--muted)}.kanban-column__delete{width:26px;height:26px}.kanban-column__cards{flex:1;min-height:0;overflow-y:auto;display:flex;flex-direction:column;gap:10px;padding:0 12px 12px}.kanban-card{position:relative;display:flex;align-items:center;background:var(--panel);border:1px solid var(--panel-border);border-radius:12px;padding:10px;min-height:45px;cursor:pointer;transition:transform .12s ease,border-color .12s ease,background .12s ease}.kanban-card:hover{border-color:color-mix(in oklch,var(--accent-2) 40%,var(--panel-border));background:color-mix(in oklch,var(--panel) 70%,var(--panel-strong) 30%)}.kanban-card.is-dragging{opacity:.5}.kanban-card.is-drop-before{box-shadow:0 -2px 0 0 var(--accent-2)}.kanban-card.is-drop-after{box-shadow:0 2px 0 0 var(--accent-2)}.kanban-card__body{display:flex;align-items:center;gap:10px;width:100%}.kanban-card__content{flex:1;display:flex;flex-direction:column;gap:6px;min-width:0}.kanban-card__issue-row{display:flex;align-items:center;gap:6px}.kanban-card__issue{font-size:11px;color:var(--muted);font-weight:500}.kanban-card__title{font-size:13px;font-weight:600}.kanban-card__avatar{width:28px;height:28px;border-radius:50%;background:var(--accent-2);color:var(--bg);font-size:11px;font-weight:600;display:flex;align-items:center;justify-content:center;flex-shrink:0}.kanban-card__labels{display:flex;flex-wrap:wrap;gap:6px}.kanban-label{display:inline-flex;align-items:center;font-size:11px;padding:4px 8px;border-radius:999px;line-height:1;border:none}.kanban-label--removable{gap:4px;cursor:pointer}.kanban-label--removable svg{opacity:.6}.kanban-label--removable:hover svg{opacity:1}.kanban-card__meta{display:flex;flex-wrap:wrap;gap:6px}.kanban-card__pill{font-size:11px;padding:2px 6px;border-radius:999px;background:var(--panel-strong);color:var(--ink)}.kanban-column__add{border:none;background:transparent;color:var(--muted);display:flex;align-items:center;gap:6px;padding:8px 12px 12px;font-size:12px;cursor:pointer}.kanban-column__add:hover{color:var(--ink)}.kanban-panel{background:var(--panel);border:1px solid var(--panel-border);border-radius:18px;min-height:0;display:flex;flex-direction:column;overflow:hidden}.kanban-panel__header{display:flex;align-items:center;justify-content:space-between;padding:16px;border-bottom:1px solid var(--panel-border)}.kanban-panel__title-wrap{flex:1;min-width:0}.kanban-panel__title{margin:0;font-size:18px;font-weight:700;cursor:text;padding:0;border-radius:4px;transition:opacity .15s ease}.kanban-panel__title:hover{opacity:.7}.kanban-panel__title-input{width:100%;font-size:18px;font-weight:700;font-family:inherit;color:var(--ink);background:transparent;border:none;padding:0;margin:0;outline:none;caret-color:var(--accent-2)}.kanban-panel__body{flex:1;padding:16px;display:flex;flex-direction:column;gap:16px;overflow-y:auto;min-height:0}.kanban-field{display:flex;flex-direction:column;gap:8px}.kanban-field__label{font-size:12px;color:var(--muted);text-transform:uppercase;letter-spacing:.08em}.kanban-required{color:#f14d4c}.kanban-field__row{display:grid;grid-template-columns:auto 1fr;gap:8px;align-items:center}.kanban-issue-selects{display:flex;flex-direction:column;gap:8px}.kanban-issue-selects select:disabled{opacity:.5;cursor:not-allowed}.kanban-input{background:var(--panel-strong);border:1px solid var(--panel-border);border-radius:10px;padding:8px 10px;color:var(--ink);font-size:13px}select.kanban-input{appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12'%3E%3Cpath fill='%237a7a7a' d='M2 4l4 4 4-4'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 10px center;padding-right:28px;cursor:pointer}.kanban-input:focus{outline:1px solid var(--accent-2);border-color:var(--accent-2)}.kanban-labels{display:flex;flex-wrap:wrap;gap:8px}.kanban-label-toggle{display:inline-flex;align-items:center;gap:6px;padding:6px 10px;border-radius:999px;border:1px solid var(--panel-border);background:transparent;color:var(--ink);font-size:12px;cursor:pointer}.kanban-label-toggle.is-active{background:color-mix(in oklch,var(--accent-2) 20%,transparent)}.kanban-label-dot{width:10px;height:10px;border-radius:999px}.kanban-inline-form{display:grid;grid-template-columns:auto 1fr auto auto;gap:8px;align-items:center}.kanban-color{width:36px;height:32px;padding:0;border:1px solid var(--panel-border);background:transparent;border-radius:8px;cursor:pointer;appearance:none;-webkit-appearance:none}.kanban-color::-webkit-color-swatch-wrapper{padding:0}.kanban-color::-webkit-color-swatch{border:none;border-radius:6px}.kanban-color::-moz-color-swatch{border:none;border-radius:6px}.kanban-label-dropdown-wrap{position:relative}.kanban-label-add{width:28px;height:28px;border-radius:999px;background:var(--panel-strong);border:1px dashed var(--panel-border)}.kanban-label-add:hover{background:var(--accent-2);border-style:solid}.kanban-label-dropdown{position:fixed;z-index:100;background:var(--panel);border:1px solid var(--panel-border);border-radius:10px;padding:10px;min-width:220px;box-shadow:0 4px 16px #0000004d}.kanban-label-dropdown__list{display:flex;flex-direction:column;gap:6px;margin-bottom:10px}.kanban-label-dropdown__list:empty{display:none}.kanban-label-dropdown__list+.kanban-label-dropdown__create{border-top:1px solid var(--panel-border);padding-top:10px}.kanban-label-dropdown__create{display:grid;grid-template-columns:1fr auto auto;gap:6px;align-items:center}.kanban-labels-list{display:flex;flex-direction:column;gap:8px;margin-bottom:16px}.kanban-labels-list__item{display:flex;align-items:center;gap:10px;padding:8px 10px;background:var(--panel-strong);border-radius:8px}.kanban-labels-list__item .kanban-color--label{width:28px;height:28px;flex-shrink:0}.kanban-label-count{font-size:11px;color:var(--muted);background:var(--panel);padding:2px 6px;border-radius:999px;min-width:20px;text-align:center;cursor:default}.kanban-labels-list__item .btn--icon{opacity:.5;flex-shrink:0}.kanban-labels-list__item:hover .btn--icon{opacity:1}.kanban-label-name{flex:1;font-size:13px;color:var(--ink);cursor:default}.kanban-label-name:hover{opacity:.8}.kanban-label-name-input{flex:1;background:transparent;border:none;font-size:13px;color:var(--ink);padding:0;outline:none}.kanban-description{flex:1;display:flex;flex-direction:column;min-height:0}.kanban-description__toolbar{display:flex;gap:6px;flex-shrink:0}.kanban-description__toolbar .btn--icon.is-active{background:var(--panel-strong);color:var(--ink)}.kanban-description__preview{flex:1;min-height:120px;padding:12px;border-radius:12px;border:1px solid var(--panel-border);background:color-mix(in oklch,var(--panel) 70%,var(--bg) 30%);overflow-y:auto}.kanban-description__editor{flex:1;min-height:120px;border-radius:12px;border:1px solid var(--panel-border);overflow:hidden}.kanban-panel--milestones .kanban-panel__body{gap:20px}.kanban-milestone{border:1px solid var(--panel-border);border-radius:14px;padding:12px;background:var(--panel-strong);display:flex;flex-direction:column;gap:8px}.kanban-milestone__header{display:flex;justify-content:space-between;gap:12px}.kanban-milestone__title{font-weight:600}.kanban-milestone__meta{font-size:12px;color:var(--muted)}.kanban-milestone__percent{font-size:18px;font-weight:700}.kanban-progress{height:8px;border-radius:999px;background:var(--panel);overflow:hidden}.kanban-progress span{display:block;height:100%;background:var(--accent)}.kanban-milestone__cards{list-style:none;padding:0;margin:8px 0 0;display:flex;flex-direction:column;gap:6px}.kanban-milestone__cards li{display:flex;justify-content:space-between;align-items:center;gap:8px;font-size:12px;color:var(--ink)}.kanban-milestone__cards li .is-complete{text-decoration:line-through;color:var(--muted)}.kanban-milestone__actions{display:flex;align-items:center;gap:8px}.kanban-milestone__actions .btn--icon{opacity:.5}.kanban-milestone:hover .kanban-milestone__actions .btn--icon{opacity:1}.kanban-milestone__description{font-size:12px;color:var(--muted);margin-top:8px;padding:8px;background:var(--panel);border-radius:8px}.kanban-milestone-form{display:flex;flex-direction:column;gap:8px;margin-top:8px;padding-top:16px;border-top:1px solid var(--panel-border)}.kanban-milestone-form__row{display:flex;gap:8px;align-items:center}.kanban-milestone-form__row .kanban-input--date{flex:1}.kanban-textarea{resize:vertical;min-height:60px;font-family:inherit}.kanban-milestone{cursor:pointer}.kanban-milestone.is-editing{cursor:default}.kanban-milestone__header-content{display:flex;flex-direction:column;gap:4px;flex:1;min-width:0}.kanban-milestone__title-input{font-weight:600}.kanban-empty{color:var(--muted);font-size:13px}.bpmn-shell{gap:12px}.bpmn-body{display:flex;gap:12px;flex:1;min-height:0}.bpmn-body .bpmn-statusbar{flex-shrink:0;border:1px solid var(--panel-border);border-top:none;background:var(--panel);border-radius:0 0 16px 16px}.bpmn-palette{display:flex;flex-direction:column;gap:12px;padding:12px;background:var(--panel);border:1px solid var(--panel-border);border-radius:16px;flex-shrink:0;width:220px;overflow:auto}.bpmn-palette__group{display:flex;flex-direction:column;gap:6px}.bpmn-palette__group-title{font-size:11px;text-transform:uppercase;letter-spacing:.08em;color:var(--muted);padding:0 6px}.bpmn-palette__group-items{display:flex;flex-direction:column;gap:6px}.bpmn-palette__item{display:flex;flex-direction:column;gap:4px}.bpmn-palette__btn{display:flex;align-items:center;justify-content:flex-start;gap:8px;width:100%;padding:8px 10px;border:1px solid var(--panel-border);background:var(--panel-strong);color:var(--ink);border-radius:10px;cursor:pointer;font-size:12px;text-align:left;position:relative;transition:background .15s ease,color .15s ease,transform .1s ease,box-shadow .15s ease}.bpmn-palette__btn.has-help{padding-right:34px}.bpmn-palette__btn:hover{background:color-mix(in oklch,var(--accent-2) 20%,var(--panel-strong) 80%);transform:translateY(-1px);box-shadow:var(--shadow-soft)}.bpmn-palette__btn:active{transform:scale(.95)}.bpmn-palette__btn.is-open .bpmn-palette__caret{transform:rotate(180deg)}.bpmn-palette__icon{display:inline-flex;align-items:center;justify-content:center;width:18px;height:18px;color:var(--muted)}.bpmn-palette__btn:hover .bpmn-palette__icon,.bpmn-palette__option:hover .bpmn-palette__icon{color:var(--ink)}.bpmn-palette__label{flex:1;color:var(--ink)}.bpmn-palette__caret{margin-left:auto;color:var(--muted);transition:transform .15s ease}.bpmn-palette__options{display:flex;flex-direction:column;gap:4px;padding-left:12px;margin-left:12px;border-left:1px dashed var(--panel-border)}.bpmn-palette__option{display:flex;align-items:center;gap:8px;width:100%;padding:6px 28px 6px 10px;border:1px solid transparent;background:var(--panel);color:var(--muted);border-radius:8px;font-size:11px;cursor:pointer;text-align:left;position:relative;transition:background .15s ease,color .15s ease,border .15s ease}.bpmn-palette__option:hover{border-color:var(--panel-border);background:var(--panel-strong);color:var(--ink)}.bpmn-palette__marker{display:inline-flex;align-items:center;justify-content:center;font-weight:700;font-size:12px;color:var(--accent-2);border:1px solid var(--panel-border);border-radius:6px;width:18px;height:18px}.bpmn-palette__help-inline{position:absolute;right:8px;top:50%;transform:translateY(-50%);width:20px;height:20px;border-radius:999px;border:1px solid var(--panel-border);background:var(--panel);color:var(--muted);display:inline-flex;align-items:center;justify-content:center;opacity:0;pointer-events:none;transition:opacity .15s ease,color .15s ease,border .15s ease}.bpmn-palette__help-inline--option{width:18px;height:18px;right:6px}.bpmn-palette__btn:hover .bpmn-palette__help-inline,.bpmn-palette__option:hover .bpmn-palette__help-inline{opacity:1;pointer-events:auto;color:var(--ink);border-color:color-mix(in oklch,var(--accent-2) 30%,var(--panel-border))}.bpmn-workspace{flex:1;min-width:0;min-height:0;position:relative;display:flex;flex-direction:column}.bpmn-subprocess-bar{display:flex;align-items:center;gap:12px;padding:8px 12px;margin-bottom:8px;border-radius:12px;border:1px solid var(--panel-border);background:var(--panel);font-size:12px;color:var(--muted)}.bpmn-subprocess-bar.is-drop-active{border-color:var(--accent);background:color-mix(in oklch,var(--accent) 14%,var(--panel) 86%);box-shadow:0 0 0 1px color-mix(in oklch,var(--accent) 40%,transparent)}.bpmn-subprocess-bar__back{display:inline-flex;align-items:center;gap:6px;padding:6px 10px;border-radius:8px;border:1px solid var(--panel-border);background:var(--panel-strong);color:var(--ink);font-size:12px;cursor:pointer}.bpmn-subprocess-bar__trail{flex:1;font-size:11px}.bpmn-subprocess-bar__hint{font-size:11px}.bpmn-diagram{flex:1;min-height:0;border-radius:16px 16px 0 0;border:1px solid var(--panel-border);border-bottom:none;position:relative}.bpmn-canvas{position:relative}.bpmn-edges{position:absolute;inset:0;pointer-events:auto}.bpmn-edge{stroke:var(--accent-2);color:var(--accent-2);stroke-width:2px;fill:none;cursor:pointer;pointer-events:stroke;stroke-linecap:round;stroke-linejoin:round;transition:stroke .15s ease}.bpmn-edge.is-selected{stroke:var(--accent);color:var(--accent);stroke-width:2.5px}.bpmn-edge--mini{stroke-width:1.6px;opacity:.8}.bpmn-edge--preview{stroke-dasharray:6 6;opacity:.6;pointer-events:none}.bpmn-edge--association{stroke-dasharray:4 4;stroke:var(--muted)}.bpmn-edge--association.is-selected{stroke:var(--accent)}.bpmn-edge__label{font-size:11px;fill:var(--ink);text-anchor:middle;dominant-baseline:middle;paint-order:stroke;stroke:var(--panel);stroke-width:4px;pointer-events:none}.bpmn-nodes{position:absolute;inset:0;pointer-events:none}.bpmn-node{position:absolute;left:0;top:0;background:var(--panel);border:2px solid var(--panel-border);color:var(--ink);display:flex;align-items:center;justify-content:center;font-size:12px;font-weight:500;text-align:center;cursor:grab;pointer-events:auto;-webkit-user-select:none;user-select:none;box-shadow:var(--shadow);transform-origin:center;transition:border .15s ease,box-shadow .15s ease}.bpmn-node:active{cursor:grabbing}.bpmn-node.is-selected{border-color:var(--accent-2);box-shadow:0 0 0 1px color-mix(in oklch,var(--accent-2) 55%,transparent)}.bpmn-node.is-multi-selected{border-color:color-mix(in oklch,var(--accent) 55%,var(--panel-border));box-shadow:0 0 0 1px color-mix(in oklch,var(--accent) 40%,transparent)}.bpmn-node.is-connecting{outline:2px dashed var(--accent-2);outline-offset:4px}.bpmn-node.is-dragging{opacity:.9}.bpmn-node.is-targetable{border-color:var(--accent);box-shadow:0 0 0 1px color-mix(in oklch,var(--accent) 55%,transparent)}.bpmn-node.is-drop-target{border-color:var(--accent);box-shadow:0 0 0 2px color-mix(in oklch,var(--accent) 40%,transparent);background:color-mix(in oklch,var(--accent) 10%,var(--panel) 90%)}.bpmn-node--event{border-radius:50%;overflow:visible}.bpmn-node--event[data-role=end]{border-width:4px}.bpmn-node--event[data-role=intermediate]:after{content:"";position:absolute;inset:6px;border:2px solid var(--panel-border);border-radius:50%;pointer-events:none}.bpmn-event__symbol{display:flex;align-items:center;justify-content:center}.bpmn-event__icon{width:28px;height:28px;color:var(--ink)}.bpmn-event__label{position:absolute;top:100%;left:50%;transform:translate(-50%,6px);width:120px;font-size:11px;font-weight:500;line-height:1.2;text-align:center;color:var(--muted)}.bpmn-node--event .bpmn-node__input{position:absolute;top:100%;left:50%;transform:translate(-50%,4px);width:120px;padding:4px 6px;border:1px solid var(--panel-border);border-radius:8px;background:var(--panel);font-size:11px;font-weight:500;text-align:center;box-shadow:var(--shadow)}.bpmn-node--activity{border-radius:14px}.bpmn-node--activity.has-markers .bpmn-node__label,.bpmn-node--activity.has-markers .bpmn-node__input{transform:translateY(-6px)}.bpmn-activity__icon{position:absolute;top:8px;left:8px;width:28px;height:28px;display:inline-flex;align-items:center;justify-content:center;color:var(--ink);pointer-events:none}.bpmn-activity__markers{position:absolute;bottom:10px;left:50%;transform:translate(-50%);display:inline-flex;align-items:center;gap:6px;color:var(--muted);pointer-events:none}.bpmn-activity__marker{display:inline-flex;align-items:center;justify-content:center}.bpmn-task-icon{width:22px;height:22px}.bpmn-task-icon--external{filter:invert(1)}.bpmn-task-icon--inline{color:#fff}.bpmn-task-marker-icon{width:22px;height:22px}.bpmn-palette__icon .bpmn-task-icon,.bpmn-palette__icon .bpmn-task-marker-icon{width:14px;height:14px}.bpmn-node.is-preview .bpmn-activity__icon{top:6px;left:6px}.bpmn-node.is-preview .bpmn-task-icon{width:14px;height:14px}.bpmn-node.is-preview .bpmn-activity__markers{bottom:4px}.bpmn-node.is-preview .bpmn-task-marker-icon{width:14px;height:14px}.bpmn-node--activity[data-variant=event-subprocess]{border-style:dashed}.bpmn-boundary-event{position:absolute;border-radius:50%;background:var(--canvas-bg, #0a0a0a);border:2px solid var(--panel-border);display:flex;align-items:center;justify-content:center;cursor:pointer;z-index:10;transition:border-color .15s,transform .15s}.bpmn-boundary-event:hover{border-color:var(--accent);transform:scale(1.1)}.bpmn-boundary-event.is-interrupting{border-style:solid}.bpmn-boundary-event.is-non-interrupting{border-style:dashed}.bpmn-boundary-event__icon{width:16px;height:16px;color:var(--fg)}.bpmn-boundary-event__icon.bpmn-task-icon--external{filter:invert(1)}.bpmn-boundary-event__connector{position:absolute;bottom:-6px;left:50%;transform:translate(-50%);width:12px;height:12px;border-radius:50%;background:var(--accent);border:2px solid var(--panel-bg, #0a0a0a);cursor:crosshair;opacity:0;transition:opacity .15s}.bpmn-boundary-event:hover .bpmn-boundary-event__connector{opacity:1}.bpmn-node--activity[data-variant=call-activity]{box-shadow:var(--shadow),inset 0 0 0 2px var(--panel-border)}.bpmn-node--activity[data-variant=adhoc]:before{content:"~";position:absolute;bottom:6px;left:50%;transform:translate(-50%);font-size:16px;font-weight:700;color:var(--muted)}.bpmn-node--participant{border-radius:16px;background:var(--panel-strong)}.bpmn-node--participant[data-variant=lane]{border-style:dashed}.bpmn-node--participant .bpmn-node__label,.bpmn-node--participant .bpmn-node__input{width:100%;text-align:left;padding:10px 12px;font-weight:600}.bpmn-node--gateway{border-radius:8px;flex-direction:column;gap:4px}.bpmn-node--gateway .bpmn-node__label,.bpmn-node--gateway .bpmn-node__input,.bpmn-node--gateway .bpmn-node__marker{transform:rotate(-45deg)}.bpmn-node__label{padding:8px 10px}.bpmn-node__marker{position:absolute;width:26px;height:26px;border-radius:6px;border:2px solid var(--panel-border);background:var(--panel);display:flex;align-items:center;justify-content:center;font-size:14px;font-weight:700;color:var(--ink);pointer-events:none}.bpmn-node__preview{position:absolute;top:6px;right:6px;width:22px;height:22px;border-radius:999px;border:1px solid var(--panel-border);background:var(--panel);color:var(--muted);display:inline-flex;align-items:center;justify-content:center;cursor:pointer;opacity:0;pointer-events:none;transition:opacity .15s ease,color .15s ease,border .15s ease}.bpmn-node:hover .bpmn-node__preview{opacity:1;pointer-events:auto;color:var(--ink);border-color:color-mix(in oklch,var(--accent-2) 30%,var(--panel-border))}.bpmn-node__count{position:absolute;top:6px;left:6px;min-width:18px;height:18px;border-radius:999px;background:var(--panel-strong);border:1px solid var(--panel-border);color:var(--muted);font-size:10px;font-weight:600;display:inline-flex;align-items:center;justify-content:center;padding:0 4px}.bpmn-node__expand{position:absolute;bottom:6px;right:6px;left:auto;transform:none;width:20px;height:20px;border-radius:4px;border:1px solid var(--panel-border);background:var(--panel);color:var(--ink);display:inline-flex;align-items:center;justify-content:center;cursor:pointer;box-shadow:var(--shadow-soft)}.bpmn-node__expand:hover{border-color:color-mix(in oklch,var(--accent-2) 35%,var(--panel-border))}.bpmn-node__connector{position:absolute;width:14px;height:14px;border-radius:50%;border:2px solid var(--accent-2);background:var(--panel);box-shadow:var(--shadow);opacity:0;transition:opacity .15s ease,transform .15s ease;cursor:crosshair;padding:0;--connector-offset: 0px;--connector-scale: .9}.bpmn-node__connector--right{right:-10px;top:calc(50% + var(--connector-offset));transform:translateY(-50%) scale(var(--connector-scale))}.bpmn-node__connector--left{left:-10px;top:calc(50% + var(--connector-offset));transform:translateY(-50%) scale(var(--connector-scale))}.bpmn-node__connector--top{top:-10px;left:calc(50% + var(--connector-offset));transform:translate(-50%) scale(var(--connector-scale))}.bpmn-node__connector--bottom{bottom:-10px;left:calc(50% + var(--connector-offset));transform:translate(-50%) scale(var(--connector-scale))}.bpmn-node__connector.is-true{border-color:var(--accent-2)}.bpmn-node__connector.is-false{border-color:var(--accent)}.bpmn-node__connector[data-label]:after{content:attr(data-label);position:absolute;left:18px;top:50%;transform:translateY(-50%);font-size:10px;color:var(--muted);background:var(--panel);border:1px solid var(--panel-border);border-radius:999px;padding:2px 6px;opacity:0;pointer-events:none;white-space:nowrap}.bpmn-node:hover .bpmn-node__connector[data-label]:after{opacity:1}.bpmn-node:hover .bpmn-node__connector{opacity:1;--connector-scale: 1}.bpmn-node--gateway .bpmn-node__connector--right,.bpmn-node--gateway .bpmn-node__connector--left{transform:translateY(-50%) rotate(-45deg) scale(var(--connector-scale))}.bpmn-node--gateway .bpmn-node__connector--top,.bpmn-node--gateway .bpmn-node__connector--bottom{transform:translate(-50%) rotate(-45deg) scale(var(--connector-scale))}.bpmn-node__input{width:80%;border:none;background:transparent;color:var(--ink);text-align:center;font-size:12px;font-weight:600;outline:none}.bpmn-statusbar{display:flex;align-items:center;justify-content:space-between;gap:12px}.bpmn-tutorial{position:absolute;inset:0;padding:20px 24px;background:color-mix(in oklch,var(--panel) 92%,transparent);-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);display:flex;flex-direction:column;gap:16px;z-index:18;overflow:auto}.bpmn-tutorial__header{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.bpmn-tutorial__eyebrow{font-size:10px;text-transform:uppercase;letter-spacing:.08em;color:var(--muted)}.bpmn-tutorial__title{margin:4px 0 0;font-size:20px;color:var(--ink)}.bpmn-tutorial__actions{display:inline-flex;align-items:center;gap:8px}.bpmn-tutorial__back,.bpmn-tutorial__close{border:1px solid var(--panel-border);background:var(--panel-strong);color:var(--ink);border-radius:8px;padding:6px 10px;font-size:12px;cursor:pointer}.bpmn-tutorial__close{width:32px;height:32px;padding:0;display:inline-flex;align-items:center;justify-content:center}.bpmn-tutorial__content{display:flex;flex-direction:column;gap:16px}.bpmn-tutorial__summary{font-size:14px;color:var(--ink);margin:0}.bpmn-tutorial__rules{margin:12px 0 0;padding-left:18px;color:var(--muted);font-size:12px;line-height:1.5}.bpmn-tutorial__example{border:1px solid var(--panel-border);background:#0000004d;border-radius:12px;padding:10px}.bpmn-statusbar__message{display:inline-flex;gap:6px;align-items:center}.bpmn-context-menu{position:fixed;min-width:140px;background:var(--panel);border:1px solid var(--panel-border);border-radius:10px;padding:6px;box-shadow:var(--shadow);z-index:20}.bpmn-subprocess-preview{position:absolute;min-width:260px;padding:10px;background:var(--panel);border:1px solid var(--panel-border);border-radius:12px;box-shadow:var(--shadow);z-index:15}.bpmn-subprocess-preview__header{display:flex;align-items:center;justify-content:space-between;gap:8px;font-size:12px;font-weight:600;color:var(--ink);margin-bottom:8px}.bpmn-subprocess-preview__actions{display:inline-flex;gap:6px}.bpmn-subprocess-preview__action{width:26px;height:26px;border-radius:8px;border:1px solid var(--panel-border);background:var(--panel-strong);color:var(--ink);display:inline-flex;align-items:center;justify-content:center;cursor:pointer}.bpmn-mini-diagram{width:100%;overflow:hidden}.bpmn-mini-diagram__canvas{position:relative;transform:scale(1);transform-origin:top left;pointer-events:none}.bpmn-mini-diagram .bpmn-node{box-shadow:none;pointer-events:none}.bpmn-mini-diagram .bpmn-edge{stroke-width:1.5px}.bpmn-mini-diagram .bpmn-node__label,.bpmn-mini-diagram .bpmn-event__label{font-size:10px}.bpmn-context-menu__item{width:100%;text-align:left;background:transparent;border:none;color:var(--ink);padding:8px 10px;border-radius:8px;font-size:12px;cursor:pointer}.bpmn-context-menu__item:disabled{opacity:.5;cursor:not-allowed}.bpmn-context-menu__item:hover{background:var(--panel-strong)}.bpmn-context-menu__divider{height:1px;background:var(--panel-border);margin:4px 0}.bpmn-context-menu__submenu{position:relative}.bpmn-context-menu__submenu-label{display:block;padding:8px 10px;font-size:12px;color:var(--muted);font-weight:500}.bpmn-context-menu__submenu-items{padding-left:8px;border-left:2px solid var(--panel-border);margin-left:8px}@media(max-width:980px){.view--workspace{grid-template-columns:1fr}.panel{min-height:200px}.note-header{flex-direction:column;align-items:flex-start}.actions{flex-wrap:wrap;justify-content:flex-end}.bpmn-subprocess-bar{flex-wrap:wrap}.markdown-workspace{flex-direction:column}.markdown-pane--editor{width:100%;border-right:none;border-bottom:1px solid var(--panel-border)}.markdown-splitter{display:none}.markdown-pane--preview{padding:22px}.markdown-preview{padding:0}}@media(max-width:720px){.topbar{flex-direction:column;align-items:flex-start;gap:12px}.main{padding:16px}.sheet{right:16px;left:16px;width:auto}}.settings-shell{display:flex;flex-direction:column;align-items:center;padding:0 12px 48px;flex:1;min-height:0;overflow-y:auto}.page-header{display:flex;justify-content:space-between;align-items:flex-end;gap:16px;width:min(860px,100%);padding:16px 0}.page-header__title{margin:0;font-size:24px;font-weight:700}.settings-card{width:min(860px,100%);background:var(--panel);border:1px solid var(--panel-border);border-radius:20px;padding:32px;display:flex;flex-direction:column;gap:32px}.settings-section{display:flex;flex-direction:column;gap:16px;padding-top:28px;border-top:1px solid var(--panel-border)}.settings-section:first-of-type{padding-top:0;border-top:none}.settings-section h3{font-size:15px;font-weight:600;color:var(--ink)}.settings-form{display:flex;flex-direction:column;gap:16px;margin-top:8px}.settings-form .field{width:100%}.settings-form .btn{align-self:flex-start}.settings-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:16px;align-items:end;width:100%}.settings-inline{display:flex;flex-direction:row;flex-wrap:wrap;gap:16px;align-items:flex-end}.settings-inline--toggle,.settings-inline--table{justify-content:space-between;align-items:center}.settings-inline .field{width:auto;flex:1 1 220px}.settings-actions{display:flex;gap:12px;align-items:center}.settings-tabs{display:flex;flex-wrap:wrap;gap:8px}.settings-tab{border:1px solid var(--panel-border);background:var(--panel);color:var(--muted);padding:8px 14px;border-radius:999px;font-size:11px;text-transform:uppercase;letter-spacing:.1em;cursor:pointer;transition:border-color .15s ease,color .15s ease,background .15s ease}.settings-tab.is-active{color:var(--ink);background:var(--panel-strong);border-color:var(--accent)}.settings-toggle{display:inline-flex;align-items:center;gap:12px;font-size:13px;color:var(--ink)}.settings-toggle input{position:absolute;opacity:0;pointer-events:none}.settings-toggle__track{width:44px;height:24px;border-radius:999px;background:var(--panel-strong);border:1px solid var(--panel-border);position:relative;transition:background .2s ease,border-color .2s ease}.settings-toggle__track:after{content:"";position:absolute;top:2px;left:2px;width:18px;height:18px;border-radius:50%;background:var(--muted);transition:transform .2s ease,background .2s ease}.settings-toggle input:checked+.settings-toggle__track{background:color-mix(in oklch,var(--accent) 70%,var(--panel-strong));border-color:var(--accent)}.settings-toggle input:checked+.settings-toggle__track:after{transform:translate(20px);background:var(--ink)}.settings-toggle__label{font-weight:600}.settings-hint{color:var(--muted);font-size:12px}.settings-success{color:#7bc27e;font-size:12px;margin-top:6px}.settings-error{color:#fa6863;font-size:12px;margin-top:6px}.settings-code{background:var(--panel-strong);border:1px solid var(--panel-border);padding:10px 12px;border-radius:10px;font-size:12px;word-break:break-all}.settings-code-panel{margin-top:16px}.settings-code-list{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:8px;margin-top:12px}.settings-token-display{margin-top:16px}.settings-qrcode{background:#fff;padding:16px;border-radius:12px;width:fit-content;margin:12px 0}.settings-inline-action{display:flex;align-items:center;gap:12px;margin-bottom:16px}.copied-badge{font-size:12px;color:var(--success);font-weight:500}.settings-codes ul{margin:8px 0 0;padding-left:18px}.settings-backup-codes{margin-top:16px;background:var(--panel-strong);border:1px solid var(--panel-border);border-radius:12px;padding:16px}.settings-backup-codes__header{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px}.backup-codes-block{font-family:ui-monospace,SF Mono,Cascadia Code,Segoe UI Mono,Menlo,Monaco,Consolas,monospace;font-size:13px;background:var(--panel);padding:12px 16px;border-radius:8px;margin:0;line-height:1.8;-webkit-user-select:all;user-select:all}.settings-table{margin-top:24px;display:flex;flex-direction:column;border:1px solid var(--panel-border);border-radius:12px;overflow:hidden}.settings-table__header,.settings-table__row{display:grid;grid-template-columns:minmax(200px,1fr) minmax(100px,140px) minmax(100px,140px);gap:16px;align-items:center;font-size:13px}.settings-table--tokens .settings-table__header,.settings-table--tokens .settings-table__row{grid-template-columns:minmax(220px,1fr) 140px 120px}.settings-table--permissions .settings-table__header,.settings-table--permissions .settings-table__row{grid-template-columns:minmax(200px,1fr) 120px 120px}.settings-table--admin-invitations .settings-table__header,.settings-table--admin-invitations .settings-table__row{grid-template-columns:32px minmax(200px,1fr) 120px minmax(200px,1fr) 160px}.settings-table--admin-users .settings-table__header,.settings-table--admin-users .settings-table__row{grid-template-columns:minmax(220px,1fr) 140px 160px}.settings-table--admin-workspaces .settings-table__header,.settings-table--admin-workspaces .settings-table__row{grid-template-columns:minmax(220px,1fr) minmax(200px,1fr) 120px}.settings-table__header{background:var(--panel-strong);color:var(--muted);text-transform:uppercase;font-size:11px;font-weight:500;letter-spacing:.08em;padding:10px 16px;border-bottom:1px solid var(--panel-border)}.settings-table__row{padding:12px 16px;background:var(--panel);border-bottom:1px solid var(--panel-border);transition:background .15s ease}.settings-table__row:last-child{border-bottom:none}.settings-table__row:hover:not(.settings-table__row--empty){background:color-mix(in oklch,var(--panel-strong) 50%,var(--panel))}.settings-table__row--empty{grid-template-columns:1fr;color:var(--muted);text-transform:none;font-style:italic;padding:20px 16px}.settings-table__meta{display:block;font-size:11px;color:var(--muted);margin-top:2px}.settings-table__actions{display:flex;gap:8px;opacity:0;transition:opacity .15s ease}.settings-table__row--hoverable:hover .settings-table__actions{opacity:1}.settings-pagination{display:flex;justify-content:flex-end;align-items:center;gap:12px;margin-top:16px}.status-pill{display:inline-flex;align-items:center;justify-content:center;justify-self:start;width:fit-content;padding:4px 10px;border-radius:6px;font-size:11px;font-weight:500;text-transform:uppercase;letter-spacing:.04em}.status-pill+.status-pill{margin-left:6px}.admin-stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:16px;margin:16px 0 8px}.admin-stat{background:var(--panel-strong);border:1px solid var(--panel-border);border-radius:14px;padding:14px 16px;display:flex;flex-direction:column;gap:8px}.admin-stat__label{font-size:11px;color:var(--muted);text-transform:uppercase;letter-spacing:.08em}.admin-stat__value{font-size:22px;font-weight:700}.admin-chart{margin-top:12px;background:var(--panel-strong);border:1px solid var(--panel-border);border-radius:16px;padding:12px 16px 4px}.status-pill--active,.status-pill--pending{background:#1b451e;color:#81d584}.status-pill--expired{background:#4d2623;color:#fa8880}.status-pill--accepted{background:#00434c;background:oklch(.35 .08 210);color:#47d2e8}.modal-backdrop{position:fixed;inset:0;background:#0009;display:flex;align-items:center;justify-content:center;z-index:200}.modal{background:var(--panel);border:1px solid var(--panel-border);border-radius:16px;padding:24px;width:min(360px,90vw);display:flex;flex-direction:column;gap:12px}.modal--permissions{width:min(520px,92vw);max-height:80vh;overflow:auto;gap:16px}.modal__actions{display:flex;justify-content:flex-end}
