.fc{width:min(1540px,100% - 36px);margin:20px auto 55px}.fc-heading{justify-content:space-between;align-items:center;gap:18px;margin-bottom:22px;display:flex}.fc-heading a{color:var(--muted);font-size:.8rem}.fc h1{letter-spacing:-.04em;margin:6px 0;font-size:clamp(1.7rem,3vw,2.5rem)}.fc-heading p:last-child{color:var(--muted);font-size:.88rem}.fc-eyebrow{letter-spacing:.14em;margin-top:24px;font-size:.65rem;font-weight:800}.fc-badge{background:var(--green-soft);white-space:nowrap;border-radius:24px;padding:13px 18px;font-size:.78rem}.fc-work{grid-template-columns:210px minmax(0,1fr) 255px;align-items:start;gap:16px;display:grid}.fc-panel{background:var(--card);border:1px solid var(--line);border-radius:13px;overflow:hidden}.fc summary{cursor:pointer;min-height:48px;padding:15px;font-size:.85rem;font-weight:750}.fc-body{gap:12px;padding:0 14px 16px;display:grid}.fc label{gap:6px;min-width:0;font-size:.76rem;font-weight:650;display:grid}.fc input:not([type=checkbox]),.fc textarea,.fc select{font:inherit;border:1px solid var(--line);width:100%;min-width:0;min-height:44px;color:var(--ink);background:#fff;border-radius:7px;padding:9px;font-size:16px}.fc input[type=color]{padding:4px}.fc textarea{resize:vertical}.fc button{border:1px solid var(--line);background:var(--card);min-width:44px;min-height:44px;color:var(--ink);font:inherit;cursor:pointer;border-radius:8px;padding:9px 11px;font-size:.78rem;font-weight:650}.fc button:hover{border-color:var(--ink)}.fc button:disabled{opacity:.4;cursor:not-allowed}.fc button[aria-pressed=true]{background:var(--ink);color:#fff;border-color:var(--ink)}.fc .fc-primary{background:var(--accent);border-color:var(--accent)}.fc .fc-dark{background:var(--ink);color:#fff}.fc .fc-danger{color:#973d29}.fc :focus-visible{outline-offset:3px;outline:3px solid #bb810e}.fc [hidden]{display:none!important}.fc hr{border:0;border-top:1px solid var(--line);width:100%;margin:3px 0}.fc-help{color:var(--muted);margin:4px 0;font-size:.73rem;line-height:1.65}.fc-node-buttons{gap:6px;display:grid}.fc-node-buttons button{text-align:left}.fc .fc-check{align-items:center;gap:8px;min-height:40px;font-weight:500;display:flex}.fc input[type=checkbox]{width:18px;height:18px;accent-color:var(--ink);flex-shrink:0}.fc-editor{min-width:0;position:sticky;top:8px}.fc-title{align-items:end;gap:10px;margin-bottom:10px;display:flex}.fc-title label{flex:1}.fc-segment{gap:4px;display:flex}.fc-toolbar{flex-wrap:wrap;gap:5px;margin-bottom:10px;display:flex}.fc-viewport{border:1px solid var(--line);touch-action:none;user-select:none;background-color:#ecece5;background-image:radial-gradient(#c7ccc2 1px,#0000 1px);background-size:20px 20px;border-radius:12px;height:530px;position:relative;overflow:hidden}.fc-viewport svg{width:100%;height:100%;display:block;overflow:hidden}.fc-node{cursor:move}.fc-edge{cursor:pointer}.fc-edge.is-selected .fc-edge-line{stroke:#ba7800;stroke-width:3px}.fc-port{cursor:crosshair}.fc-port:hover{fill:#f6c453;stroke:#b17600}.fc-viewport:not(.fc-connect) .fc-port{display:none}.fc-viewport.fc-pan,.fc-viewport.fc-pan .fc-node{cursor:grab}.fc-viewport.fc-connect .fc-node{cursor:crosshair}.fc #fc-inline{z-index:2;resize:none;user-select:text;background:#fffef8;border:2px solid #b17600;border-radius:5px;min-height:54px;padding:8px;position:absolute}.fc #fc-empty{text-align:center;color:var(--muted);pointer-events:none;font-size:.85rem;position:absolute;inset:40% 20px auto}.fc-viewbar{flex-wrap:wrap;justify-content:center;align-items:center;gap:6px;margin:10px 0;display:flex}.fc-viewbar output{text-align:center;min-width:45px;font-size:.75rem}.fc-warning{color:#8d4316;min-height:0;font-size:.77rem;line-height:1.5}.fc-export{flex-wrap:wrap;align-items:end;gap:8px;margin:14px 0 6px;display:flex}.fc-export>button{flex:1;min-height:48px}.fc-export label{flex:1;min-width:120px}.fc-status{color:var(--muted);min-height:22px;font-size:.77rem}.fc-two{grid-template-columns:1fr 1fr;gap:10px;display:grid}.fc-fields,.fc #fc-node-props,.fc #fc-edge-props{gap:12px;display:grid}.fc-fields{padding:0 8px 8px}.fc-actions{grid-template-columns:1fr 1fr;gap:7px;display:grid}.fc-notice{background:#fff4d5;border:1px solid #c6ab66;border-radius:12px;flex-wrap:wrap;align-items:center;gap:12px;margin-bottom:18px;padding:18px;display:flex}.fc-notice strong{flex:1;min-width:180px;font-size:.88rem}.fc-sop{background:var(--card);border:1px solid var(--line);border-radius:12px;height:530px;padding:22px;overflow:auto}.fc-sop article{border-bottom:1px solid var(--line);margin:0 0 18px;padding:0 0 18px}.fc-sop h2{margin-top:0;font-size:1.2rem}.fc-sop h3{margin:0 0 8px;font-size:.95rem}.fc-sop p{white-space:pre-wrap;overflow-wrap:anywhere;margin:6px 0;font-size:.82rem;line-height:1.65}.fc-sop button{min-height:40px;font-size:.72rem}.fc-related{border-top:1px solid var(--line);margin-top:34px;padding-top:24px}.fc-related h2{font-size:1.1rem}.fc-related a{min-height:32px;margin:0 22px 14px 0;font-size:.82rem;display:inline-block}.fc #fc-selected-count{font-size:.8rem}@media (width<=1120px){.fc-work{grid-template-columns:210px minmax(0,1fr)}.fc-properties{grid-area:2/1}.fc-editor{grid-area:1/2/span 2}.fc-viewport,.fc-sop{height:470px}}@media (width<=720px){.fc{width:calc(100% - 24px);margin-top:8px}.fc-heading{margin-bottom:15px}.fc-badge{display:none}.fc-heading p:last-child{font-size:.8rem}.fc-work{flex-direction:column;gap:12px;display:flex}.fc-editor{order:0;width:100%;position:static}.fc-palette{order:1;width:100%}.fc-properties{order:2;width:100%}.fc-viewport,.fc-sop{height:420px;min-height:290px;max-height:58svh}.fc-toolbar{gap:4px}.fc-toolbar button{padding:8px;font-size:.73rem}.fc-title{align-items:end;gap:6px}.fc-title input{font-size:16px}.fc-title button{padding:8px}.fc-node-buttons{grid-template-columns:1fr 1fr}.fc-export{gap:6px}.fc-export button{font-size:.75rem}.fc-export label{min-width:100px;font-size:.68rem}.fc-sop{padding:16px}}.fc-mobile-tools{display:none}@media (width<=720px){.fc{padding-bottom:70px}.fc-mobile-tools{z-index:30;padding:8px 12px calc(8px + env(safe-area-inset-bottom));background:var(--paper);border-top:1px solid var(--line);grid-template-columns:1fr 1fr 1fr;gap:7px;display:grid;position:fixed;bottom:0;left:0;right:0}}
