*{box-sizing:border-box;margin:0;padding:0}body{font-family:system-ui,-apple-system,sans-serif}.react-flow__pane{cursor:grab}.react-flow__pane.dragging{cursor:grabbing}.react-flow__node{transition:box-shadow .15s,transform .15s;cursor:move!important}.react-flow__node:active{cursor:grabbing!important}.react-flow__node:hover{transform:translateY(-1px);box-shadow:0 12px 36px #0f172a14}.custom-node{text-align:center;justify-content:center;align-items:center;gap:8px;display:flex;position:relative}.custom-node__label{font-weight:600;line-height:1.25}.note-node{flex-direction:column;align-items:stretch;width:100%;min-height:128px;display:flex;position:relative}.note-node textarea{resize:none;color:#1f2937;background:0 0;border:none;outline:none;flex:auto;width:100%;padding:8px 8px 4px;font-family:inherit;font-size:14px;line-height:1.5;overflow:hidden;cursor:text!important}.note-node textarea::placeholder{color:#a16207;opacity:.6}.note-node__close{color:#b45309;cursor:pointer;background:0 0;border:none;padding:4px;font-size:16px;line-height:1;position:absolute;top:0;right:0}.note-node__close:focus-visible{outline-offset:2px;outline:2px solid #1d4ed8}.note-node__close:hover{color:#92400e}.react-flow__handle{pointer-events:all;cursor:crosshair}.react-flow__handle:before,.react-flow__handle:after{display:none!important}.react-flow__handle.connector-dot{background:var(--connector-color,#475569);width:18px;height:18px;box-shadow:0 0 0 2px var(--connector-shadow,#47556940);cursor:crosshair;z-index:10;border:2px solid #fff;border-radius:999px;transition:transform .15s,box-shadow .15s;position:absolute;top:50%;transform:translate(-50%,-50%);pointer-events:all!important}.custom-node .connector-dot{left:calc(var(--connector-offset,20px)*-1);right:auto}.custom-node .connector-dot--out{left:calc(100% + var(--connector-offset,20px));right:auto}.react-flow__handle.connector-dot:hover{box-shadow:0 0 0 3px var(--connector-ring,#3b82f673);transform:translate(-50%,-50%)scale(1.1)}.react-flow__handle.connector-dot:focus-visible{box-shadow:0 0 0 4px var(--connector-ring,#3b82f673);outline:none;transform:translate(-50%,-50%)scale(1.1)}.react-flow__edge-path{cursor:pointer}.react-flow__edge-path:hover{filter:brightness(1.2);stroke-width:3px!important}.custom-waypoint{-webkit-user-select:none;user-select:none}.auth-gate{background:linear-gradient(145deg,#e0f2fe,#ede9fe);justify-content:center;align-items:center;min-height:100vh;padding:24px;display:flex}.auth-gate__status{color:#1f2937;background:#fff;border:1px solid #d1d5db;border-radius:10px;padding:16px 20px;font-size:15px;font-weight:500;box-shadow:0 16px 50px #0f172a1f}.access-card{background:#fff;border:1px solid #e5e7eb;border-radius:12px;flex-direction:column;gap:16px;width:100%;max-width:360px;padding:24px;display:flex;box-shadow:0 20px 60px #0f172a1f}.access-card__title{color:#111827;text-align:center;font-size:24px;font-weight:700}.access-card__subtitle{color:#4b5563;text-align:center;font-size:14px}.access-card__form{flex-direction:column;gap:10px;display:flex}.access-card__label{color:#1f2937;font-size:13px;font-weight:600}.access-card__input{border:1px solid #d1d5db;border-radius:8px;padding:10px 12px;font-size:14px}.access-card__input:focus-visible{outline-offset:2px;outline:2px solid #2563eb}.access-card__error{color:#b91c1c;background:#fee2e2;border-radius:8px;padding:8px 12px;font-size:13px}.access-card__button{color:#fff;cursor:pointer;background:#2563eb;border:none;border-radius:8px;padding:10px 12px;font-size:15px;font-weight:600;transition:background .2s}.access-card__button:disabled{cursor:not-allowed;background:#60a5fa}.access-card__hint{color:#64748b;text-align:center;font-size:12px}.flow-layout{color:#0f172a;background-color:#f8fafc;width:100%;min-height:100vh;display:flex}.flow-layout--mobile{position:relative;overflow:hidden}.flow-sidebar-container{z-index:30;opacity:0;pointer-events:none;background-color:#f8fafc;border-right:1px solid #e2e8f0;flex-shrink:0;width:0;transition:width .25s,opacity .2s,transform .25s,box-shadow .25s;position:relative;overflow:hidden}.flow-sidebar-container.is-open{opacity:1;pointer-events:auto;width:280px;transform:translate(0)}.flow-sidebar-container:not(.is-open){border-right:none}.flow-sidebar-backdrop{display:none}.sidebar-toggle{z-index:45;color:#0f172a;cursor:pointer;background:#fffffff5;border:1px solid #0f172a14;border-radius:999px;align-items:center;gap:10px;padding:10px 14px;font-weight:600;transition:transform .15s,opacity .15s,box-shadow .15s;display:inline-flex;position:fixed;top:22px;left:22px;box-shadow:0 12px 28px #0f172a24}.sidebar-toggle.is-hidden{opacity:0;pointer-events:none}.sidebar-toggle__label{font-size:14px;font-weight:600}.flow-canvas{background-color:#fff;flex:auto;min-height:100vh;padding-top:64px;position:relative;overflow:hidden}.flow-canvas__editor{width:100%;height:100%}.flow-toolbar{z-index:35;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background:#fffffff2;border:1px solid #0f172a14;border-radius:12px;gap:8px;padding:10px;display:flex;position:absolute;top:16px;left:50%;transform:translate(-50%);box-shadow:0 14px 32px #0f172a1f}.flow-toolbar__button{cursor:pointer;white-space:nowrap;border:1px solid #0000;border-radius:8px;padding:10px 18px;font-size:14px;font-weight:600;transition:transform .15s,box-shadow .15s,filter .2s}.flow-toolbar__button:active{transform:translateY(1px)}.flow-toolbar__button--agent{color:#fff;background-color:#3b82f6}.flow-toolbar__button--user{color:#fff;background-color:#10b981}.flow-toolbar__button--expert{color:#fff;background-color:#f59e0b}.flow-toolbar__button--note{color:#92400e;background-color:#fef3c7;border-color:#fcd34d}.sidebar{flex-direction:column;gap:20px;height:100%;padding:24px 20px;display:flex;overflow-y:auto}.sidebar__header{justify-content:space-between;align-items:center;gap:12px;display:flex}.sidebar__title{letter-spacing:-.01em;color:#0f172a;font-size:20px;font-weight:700}.sidebar__close{color:#0f172a;cursor:pointer;background:#f8fafcd9;border:1px solid #0f172a1f;border-radius:999px;justify-content:center;align-items:center;width:36px;height:36px;font-size:20px;transition:transform .15s,box-shadow .15s;display:inline-flex}.sidebar__close:active{transform:translateY(1px)}.sidebar__primary{color:#fff;cursor:pointer;background-color:#10b981;border:none;border-radius:10px;padding:12px;font-size:14px;font-weight:600;transition:transform .15s,box-shadow .15s;box-shadow:0 12px 26px #10b98147}.sidebar__primary:active{transform:translateY(1px)}.sidebar__section{flex-direction:column;gap:12px;display:flex}.sidebar__section-title{text-transform:uppercase;letter-spacing:.08em;color:#475569;font-size:13px;font-weight:600}.sidebar__empty{color:#6b7280;font-size:13px}.sidebar__list{flex-direction:column;gap:10px;margin:0;padding:0;list-style:none;display:flex}.sidebar__item{background-color:#fff;border:1px solid #e2e8f0;border-radius:12px;align-items:center;gap:10px;padding:10px 12px;transition:border-color .2s,box-shadow .2s;display:flex;box-shadow:0 4px 12px #0f172a14}.sidebar__item.is-active{border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f62e}.sidebar__item-main{cursor:pointer;text-align:left;color:inherit;background:0 0;border:none;flex-direction:column;flex:1;align-items:flex-start;gap:4px;padding:0;display:flex}.sidebar__item-main:focus-visible{outline-offset:2px;outline:2px solid #2563eb}.sidebar__item-name{color:#0f172a;font-size:14px;font-weight:600}.sidebar__item.is-active .sidebar__item-name{color:#1d4ed8}.sidebar__item-date{color:#6b7280;font-size:12px}.sidebar__item-actions{align-items:center;gap:6px;display:flex}.sidebar__icon-button{cursor:pointer;background:#f8fafc;border:1px solid #47556938;border-radius:999px;justify-content:center;align-items:center;width:32px;height:32px;transition:transform .15s,box-shadow .15s,border-color .15s;display:inline-flex}.sidebar__icon-button:active{transform:translateY(1px)}.sidebar__icon-button--danger{background:#fef2f2e6;border-color:#dc262659}@media (max-width:1024px){.flow-sidebar-container.is-open{width:260px}}@media (max-width:768px){.flow-sidebar-container{z-index:40;border-right:none;width:min(320px,85vw);max-width:360px;height:100%;position:fixed;inset:0 auto 0 0;transform:translate(-110%);box-shadow:0 24px 64px #0f172a57}.flow-sidebar-container.is-open{transform:translate(0)}.flow-sidebar-backdrop{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:35;opacity:0;pointer-events:none;background:#0f172a73;transition:opacity .2s;display:block;position:fixed;inset:0}.flow-sidebar-backdrop.is-visible{opacity:1;pointer-events:auto}.sidebar-toggle{top:18px;left:16px;box-shadow:0 12px 28px #0f172a2e}.flow-toolbar{flex-wrap:wrap;justify-content:center;top:12px;left:16px;right:16px;transform:none}.flow-toolbar__button{text-align:center;flex:calc(50% - 12px);min-width:140px}.sidebar{padding:72px 20px 32px}}
