.react-flow{direction:ltr;--xy-edge-stroke-default: #b1b1b7;--xy-edge-stroke-width-default: 1;--xy-edge-stroke-selected-default: #555;--xy-connectionline-stroke-default: #b1b1b7;--xy-connectionline-stroke-width-default: 1;--xy-attribution-background-color-default: rgba(255, 255, 255, .5);--xy-minimap-background-color-default: #fff;--xy-minimap-mask-background-color-default: rgba(240, 240, 240, .6);--xy-minimap-mask-stroke-color-default: transparent;--xy-minimap-mask-stroke-width-default: 1;--xy-minimap-node-background-color-default: #e2e2e2;--xy-minimap-node-stroke-color-default: transparent;--xy-minimap-node-stroke-width-default: 2;--xy-background-color-default: transparent;--xy-background-pattern-dots-color-default: #91919a;--xy-background-pattern-lines-color-default: #eee;--xy-background-pattern-cross-color-default: #e2e2e2;background-color:var(--xy-background-color, var(--xy-background-color-default));--xy-node-color-default: inherit;--xy-node-border-default: 1px solid #1a192b;--xy-node-background-color-default: #fff;--xy-node-group-background-color-default: rgba(240, 240, 240, .25);--xy-node-boxshadow-hover-default: 0 1px 4px 1px rgba(0, 0, 0, .08);--xy-node-boxshadow-selected-default: 0 0 0 .5px #1a192b;--xy-node-border-radius-default: 3px;--xy-handle-background-color-default: #1a192b;--xy-handle-border-color-default: #fff;--xy-selection-background-color-default: rgba(0, 89, 220, .08);--xy-selection-border-default: 1px dotted rgba(0, 89, 220, .8);--xy-controls-button-background-color-default: #fefefe;--xy-controls-button-background-color-hover-default: #f4f4f4;--xy-controls-button-color-default: inherit;--xy-controls-button-color-hover-default: inherit;--xy-controls-button-border-color-default: #eee;--xy-controls-box-shadow-default: 0 0 2px 1px rgba(0, 0, 0, .08);--xy-edge-label-background-color-default: #ffffff;--xy-edge-label-color-default: inherit;--xy-resize-background-color-default: #3367d9}.react-flow.dark{--xy-edge-stroke-default: #3e3e3e;--xy-edge-stroke-width-default: 1;--xy-edge-stroke-selected-default: #727272;--xy-connectionline-stroke-default: #b1b1b7;--xy-connectionline-stroke-width-default: 1;--xy-attribution-background-color-default: rgba(150, 150, 150, .25);--xy-minimap-background-color-default: #141414;--xy-minimap-mask-background-color-default: rgba(60, 60, 60, .6);--xy-minimap-mask-stroke-color-default: transparent;--xy-minimap-mask-stroke-width-default: 1;--xy-minimap-node-background-color-default: #2b2b2b;--xy-minimap-node-stroke-color-default: transparent;--xy-minimap-node-stroke-width-default: 2;--xy-background-color-default: #141414;--xy-background-pattern-dots-color-default: #555;--xy-background-pattern-lines-color-default: #333;--xy-background-pattern-cross-color-default: #333;--xy-node-color-default: #f8f8f8;--xy-node-border-default: 1px solid #3c3c3c;--xy-node-background-color-default: #1e1e1e;--xy-node-group-background-color-default: rgba(240, 240, 240, .25);--xy-node-boxshadow-hover-default: 0 1px 4px 1px rgba(255, 255, 255, .08);--xy-node-boxshadow-selected-default: 0 0 0 .5px #999;--xy-handle-background-color-default: #bebebe;--xy-handle-border-color-default: #1e1e1e;--xy-selection-background-color-default: rgba(200, 200, 220, .08);--xy-selection-border-default: 1px dotted rgba(200, 200, 220, .8);--xy-controls-button-background-color-default: #2b2b2b;--xy-controls-button-background-color-hover-default: #3e3e3e;--xy-controls-button-color-default: #f8f8f8;--xy-controls-button-color-hover-default: #fff;--xy-controls-button-border-color-default: #5b5b5b;--xy-controls-box-shadow-default: 0 0 2px 1px rgba(0, 0, 0, .08);--xy-edge-label-background-color-default: #141414;--xy-edge-label-color-default: #f8f8f8}.react-flow__background{background-color:var(--xy-background-color-props, var(--xy-background-color, var(--xy-background-color-default)));pointer-events:none;z-index:-1}.react-flow__container{position:absolute;width:100%;height:100%;top:0;left:0}.react-flow__pane{z-index:1;touch-action:none}.react-flow__pane.draggable{cursor:grab}.react-flow__pane.dragging{cursor:grabbing}.react-flow__pane.selection{cursor:pointer}.react-flow__viewport{transform-origin:0 0;z-index:2;pointer-events:none}.react-flow__renderer{z-index:4}.react-flow__selection{z-index:6}.react-flow__nodesselection-rect:focus,.react-flow__nodesselection-rect:focus-visible{outline:none}.react-flow__edge-path{stroke:var(--xy-edge-stroke, var(--xy-edge-stroke-default));stroke-width:var(--xy-edge-stroke-width, var(--xy-edge-stroke-width-default));fill:none}.react-flow__connection-path{stroke:var(--xy-connectionline-stroke, var(--xy-connectionline-stroke-default));stroke-width:var(--xy-connectionline-stroke-width, var(--xy-connectionline-stroke-width-default));fill:none}.react-flow .react-flow__edges{position:absolute}.react-flow .react-flow__edges svg{overflow:visible;position:absolute;pointer-events:none}.react-flow__edge{pointer-events:visibleStroke}.react-flow__edge.selectable{cursor:pointer}.react-flow__edge.animated path{stroke-dasharray:5;animation:dashdraw .5s linear infinite}.react-flow__edge.animated path.react-flow__edge-interaction{stroke-dasharray:none;animation:none}.react-flow__edge.inactive{pointer-events:none}.react-flow__edge.selected,.react-flow__edge:focus,.react-flow__edge:focus-visible{outline:none}.react-flow__edge.selected .react-flow__edge-path,.react-flow__edge.selectable:focus .react-flow__edge-path,.react-flow__edge.selectable:focus-visible .react-flow__edge-path{stroke:var(--xy-edge-stroke-selected, var(--xy-edge-stroke-selected-default))}.react-flow__edge-textwrapper{pointer-events:all}.react-flow__edge .react-flow__edge-text{pointer-events:none;-webkit-user-select:none;-moz-user-select:none;user-select:none}.react-flow__arrowhead polyline{stroke:var(--xy-edge-stroke, var(--xy-edge-stroke-default))}.react-flow__arrowhead polyline.arrowclosed{fill:var(--xy-edge-stroke, var(--xy-edge-stroke-default))}.react-flow__connection{pointer-events:none}.react-flow__connection .animated{stroke-dasharray:5;animation:dashdraw .5s linear infinite}svg.react-flow__connectionline{z-index:1001;overflow:visible;position:absolute}.react-flow__nodes{pointer-events:none;transform-origin:0 0}.react-flow__node{position:absolute;-webkit-user-select:none;-moz-user-select:none;user-select:none;pointer-events:all;transform-origin:0 0;box-sizing:border-box;cursor:default}.react-flow__node.selectable{cursor:pointer}.react-flow__node.draggable{cursor:grab;pointer-events:all}.react-flow__node.draggable.dragging{cursor:grabbing}.react-flow__nodesselection{z-index:3;transform-origin:left top;pointer-events:none}.react-flow__nodesselection-rect{position:absolute;pointer-events:all;cursor:grab}.react-flow__handle{position:absolute;pointer-events:none;min-width:5px;min-height:5px;width:6px;height:6px;background-color:var(--xy-handle-background-color, var(--xy-handle-background-color-default));border:1px solid var(--xy-handle-border-color, var(--xy-handle-border-color-default));border-radius:100%}.react-flow__handle.connectingfrom{pointer-events:all}.react-flow__handle.connectionindicator{pointer-events:all;cursor:crosshair}.react-flow__handle-bottom{top:auto;left:50%;bottom:0;transform:translate(-50%,50%)}.react-flow__handle-top{top:0;left:50%;transform:translate(-50%,-50%)}.react-flow__handle-left{top:50%;left:0;transform:translate(-50%,-50%)}.react-flow__handle-right{top:50%;right:0;transform:translate(50%,-50%)}.react-flow__edgeupdater{cursor:move;pointer-events:all}.react-flow__pane.selection .react-flow__panel{pointer-events:none}.react-flow__panel{position:absolute;z-index:5;margin:15px}.react-flow__panel.top{top:0}.react-flow__panel.bottom{bottom:0}.react-flow__panel.top.center,.react-flow__panel.bottom.center{left:50%;transform:translate(-15px) translate(-50%)}.react-flow__panel.left{left:0}.react-flow__panel.right{right:0}.react-flow__panel.left.center,.react-flow__panel.right.center{top:50%;transform:translateY(-15px) translateY(-50%)}.react-flow__attribution{font-size:10px;background:var(--xy-attribution-background-color, var(--xy-attribution-background-color-default));padding:2px 3px;margin:0}.react-flow__attribution a{text-decoration:none;color:#999}@keyframes dashdraw{0%{stroke-dashoffset:10}}.react-flow__edgelabel-renderer{position:absolute;width:100%;height:100%;pointer-events:none;-webkit-user-select:none;-moz-user-select:none;user-select:none;left:0;top:0}.react-flow__viewport-portal{position:absolute;width:100%;height:100%;left:0;top:0;-webkit-user-select:none;-moz-user-select:none;user-select:none}.react-flow__minimap{background:var( --xy-minimap-background-color-props, var(--xy-minimap-background-color, var(--xy-minimap-background-color-default)) )}.react-flow__minimap-svg{display:block}.react-flow__minimap-mask{fill:var( --xy-minimap-mask-background-color-props, var(--xy-minimap-mask-background-color, var(--xy-minimap-mask-background-color-default)) );stroke:var( --xy-minimap-mask-stroke-color-props, var(--xy-minimap-mask-stroke-color, var(--xy-minimap-mask-stroke-color-default)) );stroke-width:var( --xy-minimap-mask-stroke-width-props, var(--xy-minimap-mask-stroke-width, var(--xy-minimap-mask-stroke-width-default)) )}.react-flow__minimap-node{fill:var( --xy-minimap-node-background-color-props, var(--xy-minimap-node-background-color, var(--xy-minimap-node-background-color-default)) );stroke:var( --xy-minimap-node-stroke-color-props, var(--xy-minimap-node-stroke-color, var(--xy-minimap-node-stroke-color-default)) );stroke-width:var( --xy-minimap-node-stroke-width-props, var(--xy-minimap-node-stroke-width, var(--xy-minimap-node-stroke-width-default)) )}.react-flow__background-pattern.dots{fill:var( --xy-background-pattern-color-props, var(--xy-background-pattern-color, var(--xy-background-pattern-dots-color-default)) )}.react-flow__background-pattern.lines{stroke:var( --xy-background-pattern-color-props, var(--xy-background-pattern-color, var(--xy-background-pattern-lines-color-default)) )}.react-flow__background-pattern.cross{stroke:var( --xy-background-pattern-color-props, var(--xy-background-pattern-color, var(--xy-background-pattern-cross-color-default)) )}.react-flow__controls{display:flex;flex-direction:column;box-shadow:var(--xy-controls-box-shadow, var(--xy-controls-box-shadow-default))}.react-flow__controls.horizontal{flex-direction:row}.react-flow__controls-button{display:flex;justify-content:center;align-items:center;height:26px;width:26px;padding:4px;border:none;background:var(--xy-controls-button-background-color, var(--xy-controls-button-background-color-default));border-bottom:1px solid var( --xy-controls-button-border-color-props, var(--xy-controls-button-border-color, var(--xy-controls-button-border-color-default)) );color:var( --xy-controls-button-color-props, var(--xy-controls-button-color, var(--xy-controls-button-color-default)) );cursor:pointer;-webkit-user-select:none;-moz-user-select:none;user-select:none}.react-flow__controls-button svg{width:100%;max-width:12px;max-height:12px;fill:currentColor}.react-flow__edge.updating .react-flow__edge-path{stroke:#777}.react-flow__edge-text{font-size:10px}.react-flow__node.selectable:focus,.react-flow__node.selectable:focus-visible{outline:none}.react-flow__node-input,.react-flow__node-default,.react-flow__node-output,.react-flow__node-group{padding:10px;border-radius:var(--xy-node-border-radius, var(--xy-node-border-radius-default));width:150px;font-size:12px;color:var(--xy-node-color, var(--xy-node-color-default));text-align:center;border:var(--xy-node-border, var(--xy-node-border-default));background-color:var(--xy-node-background-color, var(--xy-node-background-color-default))}.react-flow__node-input.selectable:hover,.react-flow__node-default.selectable:hover,.react-flow__node-output.selectable:hover,.react-flow__node-group.selectable:hover{box-shadow:var(--xy-node-boxshadow-hover, var(--xy-node-boxshadow-hover-default))}.react-flow__node-input.selectable.selected,.react-flow__node-input.selectable:focus,.react-flow__node-input.selectable:focus-visible,.react-flow__node-default.selectable.selected,.react-flow__node-default.selectable:focus,.react-flow__node-default.selectable:focus-visible,.react-flow__node-output.selectable.selected,.react-flow__node-output.selectable:focus,.react-flow__node-output.selectable:focus-visible,.react-flow__node-group.selectable.selected,.react-flow__node-group.selectable:focus,.react-flow__node-group.selectable:focus-visible{box-shadow:var(--xy-node-boxshadow-selected, var(--xy-node-boxshadow-selected-default))}.react-flow__node-group{background-color:var(--xy-node-group-background-color, var(--xy-node-group-background-color-default))}.react-flow__nodesselection-rect,.react-flow__selection{background:var(--xy-selection-background-color, var(--xy-selection-background-color-default));border:var(--xy-selection-border, var(--xy-selection-border-default))}.react-flow__nodesselection-rect:focus,.react-flow__nodesselection-rect:focus-visible,.react-flow__selection:focus,.react-flow__selection:focus-visible{outline:none}.react-flow__controls-button:hover{background:var( --xy-controls-button-background-color-hover-props, var(--xy-controls-button-background-color-hover, var(--xy-controls-button-background-color-hover-default)) );color:var( --xy-controls-button-color-hover-props, var(--xy-controls-button-color-hover, var(--xy-controls-button-color-hover-default)) )}.react-flow__controls-button:disabled{pointer-events:none}.react-flow__controls-button:disabled svg{fill-opacity:.4}.react-flow__controls-button:last-child{border-bottom:none}.react-flow__controls.horizontal .react-flow__controls-button{border-bottom:none;border-right:1px solid var( --xy-controls-button-border-color-props, var(--xy-controls-button-border-color, var(--xy-controls-button-border-color-default)) )}.react-flow__controls.horizontal .react-flow__controls-button:last-child{border-right:none}.react-flow__resize-control{position:absolute}.react-flow__resize-control.left,.react-flow__resize-control.right{cursor:ew-resize}.react-flow__resize-control.top,.react-flow__resize-control.bottom{cursor:ns-resize}.react-flow__resize-control.top.left,.react-flow__resize-control.bottom.right{cursor:nwse-resize}.react-flow__resize-control.bottom.left,.react-flow__resize-control.top.right{cursor:nesw-resize}.react-flow__resize-control.handle{width:5px;height:5px;border:1px solid #fff;border-radius:1px;background-color:var(--xy-resize-background-color, var(--xy-resize-background-color-default));translate:-50% -50%}.react-flow__resize-control.handle.left{left:0;top:50%}.react-flow__resize-control.handle.right{left:100%;top:50%}.react-flow__resize-control.handle.top{left:50%;top:0}.react-flow__resize-control.handle.bottom{left:50%;top:100%}.react-flow__resize-control.handle.top.left,.react-flow__resize-control.handle.bottom.left{left:0}.react-flow__resize-control.handle.top.right,.react-flow__resize-control.handle.bottom.right{left:100%}.react-flow__resize-control.line{border-color:var(--xy-resize-background-color, var(--xy-resize-background-color-default));border-width:0;border-style:solid}.react-flow__resize-control.line.left,.react-flow__resize-control.line.right{width:1px;transform:translate(-50%);top:0;height:100%}.react-flow__resize-control.line.left{left:0;border-left-width:1px}.react-flow__resize-control.line.right{left:100%;border-right-width:1px}.react-flow__resize-control.line.top,.react-flow__resize-control.line.bottom{height:1px;transform:translateY(-50%);left:0;width:100%}.react-flow__resize-control.line.top{top:0;border-top-width:1px}.react-flow__resize-control.line.bottom{border-bottom-width:1px;top:100%}.react-flow__edge-textbg{fill:var(--xy-edge-label-background-color, var(--xy-edge-label-background-color-default))}.react-flow__edge-text{fill:var(--xy-edge-label-color, var(--xy-edge-label-color-default))}:root{font-family:Inter,SF Pro Display,PingFang SC,Microsoft YaHei,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;color:#1b1d18;background:#f4f1eb;font-synthesis:none;text-rendering:optimizeLegibility;--ink: #1b1d18;--muted: #6e7168;--line: #d9d5cc;--paper: #f7f5f0;--white: #fff;--accent: #d9ff5d;--accent-dark: #b8dc3e;--blue: #b9d5ff;--danger: #d9503f;--shadow: 0 18px 60px rgba(35, 37, 31, .1)}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;min-width:320px;min-height:100vh;background:var(--paper)}button,input,textarea,select{font:inherit}button,a{-webkit-tap-highlight-color:transparent}button{color:inherit}a{color:inherit;text-decoration:none}button:focus-visible,a:focus-visible,input:focus-visible,textarea:focus-visible{outline:3px solid rgba(111,153,255,.38);outline-offset:2px}.brand-mark{display:grid;place-items:center;width:38px;height:38px;border-radius:12px;background:var(--accent);color:#1b1d18;font-size:18px;font-weight:800;box-shadow:inset 0 0 0 1px #14140f14}.brand-mark.compact{width:32px;height:32px;border-radius:10px;font-size:15px}.button{display:inline-flex;align-items:center;justify-content:center;gap:8px;border:1px solid transparent;border-radius:12px;padding:10px 16px;font-weight:650;cursor:pointer;transition:transform .18s ease,background .18s ease,border-color .18s ease,opacity .18s ease}.button:hover:not(:disabled){transform:translateY(-1px)}.button:disabled{opacity:.55;cursor:not-allowed}.button-dark{background:var(--ink);color:#fff}.button-primary{background:var(--accent);color:#171914;border-color:#c7ea4f}.button-primary:hover:not(:disabled){background:#e2ff85}.button-ghost{background:#fff;border-color:var(--line)}.button-large{min-height:52px;padding:14px 20px;border-radius:14px}.text-link{font-weight:650;padding:8px 4px}.eyebrow,.section-kicker{margin:0 0 10px;color:#75796e;font-size:11px;font-weight:800;letter-spacing:.17em}.icon-button{width:38px;height:38px;display:grid;place-items:center;padding:0;border:1px solid var(--line);border-radius:11px;background:#fff;cursor:pointer}.icon-button svg{width:18px;height:18px}.icon-button:disabled{opacity:.35;cursor:not-allowed}.danger-hover:hover{color:var(--danger);background:#fff2ef;border-color:#faccc4}.spin{animation:spin 1s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.landing{min-height:100vh;overflow:hidden;background:#f4f1eb}.landing-header{max-width:1440px;height:82px;margin:auto;padding:0 42px;display:flex;align-items:center;justify-content:space-between}.landing-brand{display:flex;align-items:center;gap:11px;font-weight:800;font-size:17px}.landing-header nav{display:flex;gap:30px;color:#55594f;font-size:14px;font-weight:600}.header-actions{display:flex;align-items:center;gap:18px}.hero{max-width:1440px;min-height:730px;margin:auto;padding:92px 42px 80px;display:grid;grid-template-columns:minmax(480px,.92fr) minmax(600px,1.08fr);gap:70px;align-items:center}.hero-badge{width:fit-content;display:flex;gap:7px;align-items:center;margin:0 0 24px;padding:7px 11px;border:1px solid #cfcabf;border-radius:999px;background:#ffffff8c;font-size:12px;font-weight:700}.hero-copy h1{margin:0;font-size:clamp(48px,5.2vw,79px);line-height:1.04;letter-spacing:-.055em;font-weight:700}.hero-copy h1 em{color:#65800a;font-style:normal}.hero-lead{max-width:610px;margin:30px 0;color:#5b5f55;font-size:18px;line-height:1.8}.hero-actions{display:flex;align-items:center;gap:24px}.hero-actions>span{display:flex;align-items:center;gap:7px;color:#666b60;font-size:13px}.hero-canvas{position:relative;height:540px;overflow:hidden;border:1px solid #d6d1c6;border-radius:25px;background:#e8e5dd;box-shadow:0 45px 90px #3d40342b;transform:rotate(1deg)}.preview-toolbar{position:relative;z-index:3;height:52px;padding:0 18px;display:flex;align-items:center;gap:9px;background:#ffffffe8;border-bottom:1px solid #d8d4ca;font-size:12px;font-weight:650}.preview-toolbar small{margin-left:auto;color:#7b7f75}.preview-dot{width:10px;height:10px;border-radius:50%;background:var(--accent);border:1px solid #a8c63c}.preview-grid,.cover-grid{position:absolute;inset:52px 0 0;opacity:.38;background-image:radial-gradient(#a7a59e 1px,transparent 1px);background-size:22px 22px}.preview-node{position:absolute;z-index:2;padding:8px;border:1px solid #cbc7bc;border-radius:14px;background:#fff;box-shadow:0 12px 35px #2a2b251c;font-size:11px}.preview-node p{margin:8px 3px 2px}.preview-node-a{left:52px;top:120px;width:150px}.preview-node-b{left:74px;top:335px;width:190px;padding:14px;line-height:1.5}.preview-node-c{right:42px;top:108px;width:216px}.node-tag{display:inline-block;margin-bottom:7px;padding:3px 6px;border-radius:5px;background:#e9e6df;color:#666961;font-size:8px;font-weight:700}.node-tag.green{background:#e9ffc1;color:#587012}.preview-photo{border-radius:9px;aspect-ratio:4 / 3}.photo-a{background:linear-gradient(145deg,#a6b8c2 0 44%,#f2ead8 44% 60%,#345144 60%)}.photo-b{background:radial-gradient(circle at 48% 55%,#f7f1da 0 14%,transparent 15%),radial-gradient(circle at 48% 55%,#6a8d82 0 26%,transparent 27%),linear-gradient(145deg,#9cc8b8,#e4f2c8)}.preview-links{position:absolute;z-index:1;inset:0;pointer-events:none}.preview-links i{position:absolute;height:2px;border-top:2px dashed #85877f;transform-origin:left center;opacity:.75}.preview-links .link-one{width:205px;left:185px;top:218px;transform:rotate(-23deg)}.preview-links .link-two{width:165px;left:235px;top:357px;transform:rotate(-48deg)}.preview-prompt{position:absolute;z-index:4;right:24px;bottom:22px;left:24px;height:52px;padding:0 9px 0 16px;display:flex;align-items:center;gap:10px;border:1px solid #cac6bd;border-radius:15px;background:#fff;box-shadow:0 12px 32px #2325201f;color:#898c83;font-size:11px}.preview-prompt button{margin-left:auto;padding:9px 16px;border:0;border-radius:10px;background:var(--accent);font-size:11px;font-weight:750}.workflow{padding:118px 42px 130px;background:#1e211b;color:#fff}.workflow>h2,.workflow>.section-kicker,.workflow-grid{max-width:1250px;margin-left:auto;margin-right:auto}.workflow .section-kicker{color:#b9beaf}.workflow>h2{margin-top:0;margin-bottom:58px;font-size:43px;letter-spacing:-.04em}.workflow-grid{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid #464940}.workflow-grid article{position:relative;min-height:290px;padding:34px 48px 25px 0;border-right:1px solid #464940}.workflow-grid article+article{padding-left:42px}.workflow-grid article:last-child{border-right:0}.workflow-grid article>span{position:absolute;top:32px;right:30px;color:#74796d;font-size:12px}.workflow-grid svg{width:30px;height:30px;margin-top:45px;color:var(--accent)}.workflow-grid h3{margin:30px 0 12px;font-size:22px}.workflow-grid p{max-width:290px;color:#b8bcb2;line-height:1.75}.feature-band{max-width:1280px;margin:auto;padding:140px 42px;display:grid;grid-template-columns:1fr 1fr;gap:110px}.feature-band h2{margin:0;font-size:43px;line-height:1.25;letter-spacing:-.04em}.feature-list article{display:flex;gap:22px;padding:27px 0;border-bottom:1px solid var(--line)}.feature-list article:first-child{border-top:1px solid var(--line)}.feature-list article>svg{width:25px;height:25px;color:#69800f;flex:none}.feature-list h3{margin:0 0 8px}.feature-list p{margin:0;color:var(--muted);line-height:1.65}.landing-footer{min-height:90px;padding:0 42px;border-top:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;color:#73776c;font-size:12px}.auth-page{min-height:100vh;display:grid;grid-template-columns:minmax(430px,.9fr) minmax(520px,1.1fr);background:#f8f6f1}.auth-back{position:fixed;z-index:5;top:25px;left:25px;display:flex;align-items:center;gap:6px;padding:9px 12px;border-radius:10px;background:#ffffffbf;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);font-size:13px;font-weight:650}.auth-panel{min-height:100vh}.auth-visual{position:relative;overflow:hidden;padding:45px;background:#20231d;color:#fff}.auth-brand{display:flex;align-items:center;gap:11px;font-weight:800}.auth-quote{position:absolute;z-index:2;left:10%;right:10%;bottom:13%}.auth-quote>svg{color:var(--accent)}.auth-quote h2{margin:20px 0 16px;font-size:clamp(35px,3.8vw,58px);line-height:1.17;letter-spacing:-.045em}.auth-quote p{color:#b7bbb1;font-size:16px}.auth-orbit{position:absolute;width:630px;height:630px;left:-160px;top:-150px;border:1px solid rgba(220,255,100,.15);border-radius:50%}.auth-orbit:before,.auth-orbit:after{content:"";position:absolute;border:1px solid rgba(220,255,100,.12);border-radius:50%}.auth-orbit:before{inset:90px}.auth-orbit:after{inset:185px}.auth-orbit span{position:absolute;width:18px;height:18px;border-radius:50%;background:var(--accent);box-shadow:0 0 35px #daff5d7a}.auth-orbit span:nth-child(1){right:92px;top:145px}.auth-orbit span:nth-child(2){right:180px;bottom:85px;width:11px;height:11px}.auth-orbit span:nth-child(3){left:138px;bottom:132px;width:8px;height:8px}.auth-form-wrap{display:grid;place-items:center;padding:70px 32px}.auth-form{width:min(430px,100%)}.auth-form h1{margin:0;font-size:38px;letter-spacing:-.045em}.form-intro{margin:13px 0 33px;color:var(--muted);line-height:1.65}.auth-form label,.modal label,.admin-card label{display:grid;gap:8px;margin-bottom:17px;font-size:13px;font-weight:650}.auth-form input,.modal input,.admin-card input{width:100%;min-height:48px;padding:0 14px;border:1px solid #d5d1c8;border-radius:11px;background:#fff;color:var(--ink);transition:border-color .18s,box-shadow .18s}.auth-form input:focus,.modal input:focus,.admin-card input:focus{border-color:#9db836;box-shadow:0 0 0 4px #cdef562e;outline:none}.password-field{position:relative}.password-field button{position:absolute;right:9px;top:6px;width:36px;height:36px;display:grid;place-items:center;border:0;background:transparent;color:#777b71;cursor:pointer}.form-error,.inline-error{padding:11px 13px;border:1px solid #f0b9ae;border-radius:10px;background:#fff1ee;color:#9a3629;font-size:13px}.form-error{margin-bottom:15px}.button-submit{width:100%;min-height:50px;margin-top:4px}.button-submit svg{margin-left:auto}.auth-switch{margin:25px 0 10px;text-align:center;color:var(--muted);font-size:13px}.auth-switch a{margin-left:4px;color:#506412;font-weight:750}.legal-copy{display:block;text-align:center;color:#999b95;line-height:1.6}.app-shell{min-height:100vh;display:grid;grid-template-columns:244px 1fr;background:#f5f3ee}.app-sidebar{position:sticky;top:0;height:100vh;padding:24px 17px 18px;display:flex;flex-direction:column;border-right:1px solid #dedad1;background:#ebe8e1}.sidebar-brand{display:flex;align-items:center;gap:10px;padding:3px 6px 25px;border:0;background:transparent;font-weight:800;cursor:pointer}.sidebar-nav{display:grid;gap:5px}.sidebar-nav a{display:flex;align-items:center;gap:10px;min-height:43px;padding:0 12px;border-radius:11px;color:#595d54;font-size:13px;font-weight:650}.sidebar-nav a:hover{background:#ffffff8c}.sidebar-nav a.active{background:#fff;color:var(--ink);box-shadow:0 2px 7px #23241f0d}.sidebar-spacer{flex:1}.credit-card{margin:0 3px 12px;padding:13px 14px;display:flex;align-items:center;justify-content:space-between;border:1px solid #d6d1c5;border-radius:12px;background:#f5f2eb;font-size:11px;color:#74786e}.credit-card strong{color:#53670e;font-size:17px}.sidebar-user{padding:12px 7px 0;display:grid;grid-template-columns:34px 1fr 30px;gap:9px;align-items:center;border-top:1px solid #d4d0c7}.sidebar-user .avatar{width:34px;height:34px;display:grid;place-items:center;border-radius:50%;background:#d7ff5c}.sidebar-user>span:nth-child(2){min-width:0;display:grid;gap:2px}.sidebar-user strong,.sidebar-user small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.sidebar-user strong{font-size:12px}.sidebar-user small{color:#7b7e75;font-size:9px}.sidebar-user button{display:grid;place-items:center;width:30px;height:30px;border:0;border-radius:8px;background:transparent;cursor:pointer;color:#6f7369}.app-main{min-width:0;padding:34px 42px 70px}.app-header{min-height:70px;margin-bottom:28px;display:flex;align-items:center;justify-content:space-between}.app-header h1{margin:0;font-size:31px;letter-spacing:-.04em}.projects-toolbar{display:flex;align-items:center;justify-content:space-between;margin-bottom:22px;color:#777a72;font-size:12px}.search-box{width:min(390px,45vw);height:43px;padding:0 13px;display:flex;align-items:center;gap:9px;border:1px solid var(--line);border-radius:11px;background:#fff}.search-box input{width:100%;border:0;outline:0;background:transparent}.inline-error{margin-bottom:18px;display:flex;justify-content:space-between}.inline-error button{border:0;background:transparent;text-decoration:underline;cursor:pointer}.project-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(255px,1fr));gap:20px}.project-card{overflow:hidden;min-height:305px;border:1px solid #dbd7ce;border-radius:16px;background:#fff;cursor:pointer;transition:transform .2s ease,box-shadow .2s ease,border-color .2s ease}.project-card:hover{transform:translateY(-3px);border-color:#c5c0b5;box-shadow:0 14px 35px #26282117}.project-cover{position:relative;height:180px;overflow:hidden;border-bottom:1px solid #dedad1;background:#dedbd2}.project-cover.cover-1{background:#d7dfd5}.project-cover.cover-2{background:#ddd5e2}.project-cover.cover-3{background:#dfd9cf}.project-cover .cover-grid{inset:0}.cover-node{position:absolute;border:1px solid rgba(65,66,60,.22);border-radius:6px;background:#ffffffd1;box-shadow:0 4px 14px #00000012}.cover-node.n1{width:63px;height:49px;left:17%;top:23%}.cover-node.n2{width:87px;height:69px;right:15%;top:18%;background:#d9ff70}.cover-node.n3{width:78px;height:40px;left:33%;bottom:18%}.project-card-body{padding:18px 18px 10px;display:flex;align-items:flex-start;justify-content:space-between}.project-card h2{margin:0 0 7px;font-size:16px}.project-card p{margin:0;display:flex;align-items:center;gap:5px;color:#858880;font-size:11px}.project-card-meta{padding:9px 18px 15px;display:flex;align-items:center;justify-content:space-between;color:#80847a;font-size:11px}.project-card-meta span{display:flex;align-items:center;gap:5px}.project-card.skeleton{min-height:305px;background:linear-gradient(100deg,#ece9e3 20%,#f6f4ef,#ece9e3 60%);background-size:300% 100%;animation:shimmer 1.5s infinite}@keyframes shimmer{to{background-position:-150% 0}}.empty-state{min-height:430px;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;color:#74786e}.empty-state>svg{width:34px;height:34px;color:#95a458}.empty-state h2{margin:18px 0 7px;color:var(--ink)}.empty-state p{margin:0 0 20px}.empty-icon{width:66px;height:66px;display:grid;place-items:center;border-radius:20px;background:#e0ff78;color:#566a12}.modal-backdrop{position:fixed;z-index:100;inset:0;display:grid;place-items:center;padding:20px;background:#1c1e196b;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px)}.modal{width:min(470px,100%);padding:28px;border-radius:18px;background:#f9f7f2;box-shadow:0 30px 90px #00000040}.modal h2{margin:0 0 25px;font-size:26px}.template-option{display:flex;gap:13px;align-items:center;padding:12px;border:1px solid #cac6bc;border-radius:12px;background:#fff}.template-option.selected{border-color:#a7c43d;box-shadow:0 0 0 3px #d3f55b2e}.template-preview{position:relative;width:70px;height:49px;overflow:hidden;border-radius:7px;background:#e7e4dd}.template-preview span{position:absolute;width:22px;height:17px;border-radius:3px;background:#fff;border:1px solid #c8c4ba}.template-preview span:first-child{left:9px;top:9px}.template-preview span:last-child{right:8px;bottom:8px;background:#dafe64}.template-option div{display:grid;gap:4px}.template-option small{color:#7c8076}.modal-actions{margin-top:26px;display:flex;justify-content:flex-end;gap:9px}.library-hero{position:relative;overflow:hidden;min-height:225px;margin-bottom:18px;padding:34px 36px;display:flex;align-items:flex-end;justify-content:space-between;gap:30px;border-radius:20px;background:#20231d;color:#fff}.library-hero:after{content:"";position:absolute;width:380px;height:380px;right:16%;top:-270px;border:1px solid rgba(218,255,93,.18);border-radius:50%;box-shadow:0 0 0 75px #daff5d06,0 0 0 150px #daff5d05}.library-hero-copy{position:relative;z-index:1;max-width:740px}.library-overline{display:inline-flex;align-items:center;gap:7px;margin-bottom:22px;color:#d9ff5d;font-size:11px;font-weight:800;letter-spacing:.08em}.library-hero h2{margin:0;max-width:690px;font-size:clamp(27px,3vw,43px);line-height:1.16;letter-spacing:-.04em}.library-hero p{max-width:720px;margin:16px 0 0;color:#b9bdb3;font-size:13px;line-height:1.7}.library-rule-card{position:relative;z-index:1;width:275px;flex:none;padding:16px;display:flex;gap:12px;align-items:flex-start;border:1px solid rgba(255,255,255,.14);border-radius:14px;background:#ffffff0f;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.library-rule-card>svg{width:22px;color:var(--accent);flex:none}.library-rule-card div{display:grid;gap:5px}.library-rule-card strong{font-size:12px}.library-rule-card span{color:#afb3aa;font-size:10px;line-height:1.5}.workflow-bar{position:relative;margin-bottom:18px;padding:17px 18px;display:grid;grid-template-columns:repeat(5,1fr);border:1px solid var(--line);border-radius:17px;background:#fff}.workflow-bar-step{position:relative;min-width:0;padding:4px 32px 4px 3px;display:flex;align-items:center;gap:11px}.workflow-step-icon{width:38px;height:38px;display:grid;place-items:center;flex:none;border-radius:11px;background:#edf1e5;color:#687359}.workflow-step-icon svg{width:17px}.workflow-bar-step:last-child .workflow-step-icon{background:var(--accent);color:#3c4b0a}.workflow-bar-step>div{min-width:0;display:grid;grid-template-columns:auto 1fr;gap:2px 6px;align-items:center}.workflow-bar-step small{color:#a0a39b;font-size:8px;font-weight:800;letter-spacing:.12em}.workflow-bar-step strong{grid-column:1 / -1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:12px}.workflow-bar-step em{grid-column:1 / -1;color:#7e8278;font-size:9px;font-style:normal}.workflow-arrow{position:absolute;width:14px;right:10px;color:#b8bbb3}.library-metrics{margin-bottom:18px;display:grid;grid-template-columns:repeat(4,1fr);gap:12px}.metric-card{min-height:126px;padding:20px;display:flex;gap:15px;align-items:flex-start;border:1px solid var(--line);border-radius:16px;background:#fff}.metric-card>span{width:36px;height:36px;display:grid;place-items:center;border-radius:10px;background:#ecefe7;color:#70776a}.metric-card>span svg{width:17px}.metric-card>div{display:grid}.metric-card small{color:#74786e;font-size:10px;font-weight:700}.metric-card strong{margin:5px 0 3px;font-size:28px;letter-spacing:-.04em}.metric-card p{margin:0;color:#92958d;font-size:9px;line-height:1.45}.metric-card.accent{border-color:#c8dc86;background:#f2ffd5}.metric-card.accent>span{background:var(--accent);color:#4e610d}.competition-strip{margin-bottom:20px;display:grid;grid-template-columns:repeat(4,1fr);gap:9px}.competition-card{min-width:0;padding:15px;display:grid;grid-template-columns:1fr auto;gap:5px 10px;text-align:left;border:1px solid var(--line);border-radius:14px;background:#fdfcf9;cursor:pointer;transition:transform .15s,border-color .15s,box-shadow .15s}.competition-card:hover{transform:translateY(-1px);border-color:#bfc3b5}.competition-card.active{border-color:#9cb936;box-shadow:0 0 0 3px #d1f25b33;background:#fbfff0}.competition-card>span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#5d6258;font-size:10px;font-weight:750}.competition-card strong{font-size:18px}.competition-card strong small{color:#9b9e96;font-size:10px;font-weight:600}.competition-meter{grid-column:1 / -1;height:4px;overflow:hidden;border-radius:999px;background:#e7e5df}.competition-meter i{display:block;height:100%;border-radius:inherit;background:#a8c83b}.competition-card em{grid-column:1 / -1;color:#8c9087;font-size:9px;font-style:normal}.library-list-card{overflow:hidden;border:1px solid var(--line);border-radius:18px;background:#fff}.library-list-head{padding:22px 23px 14px;display:flex;align-items:flex-end;justify-content:space-between;gap:18px}.library-list-head .section-kicker{margin-bottom:5px}.library-list-head h2{margin:0;font-size:21px}.scope-switch{padding:3px;display:flex;border-radius:10px;background:#efede7}.scope-switch button{min-height:33px;padding:0 12px;border:0;border-radius:8px;background:transparent;color:#70746a;cursor:pointer;font-size:10px;font-weight:700}.scope-switch button.active{background:#fff;color:var(--ink);box-shadow:0 2px 7px #23241f14}.library-filters{padding:10px 23px 16px;display:grid;grid-template-columns:minmax(220px,1fr) repeat(3,minmax(125px,auto)) auto;gap:8px;align-items:center;border-bottom:1px solid #e4e1d9}.library-search{height:39px;padding:0 11px;display:flex;align-items:center;gap:8px;border:1px solid #d8d4cb;border-radius:10px;background:#fbfaf7;color:#8a8e84}.library-search input{width:100%;border:0;outline:0;background:transparent;font-size:11px}.library-filters select,.review-form-grid select,.review-field select,.create-form-grid select{height:39px;padding:0 30px 0 10px;border:1px solid #d8d4cb;border-radius:10px;background:#fbfaf7;color:#545950;outline:0;font-size:10px}.library-result-count{padding-left:8px;color:#8e9288;white-space:nowrap;font-size:10px}.library-list-card>.inline-error{margin:12px 23px 0}.library-table-wrap{overflow-x:auto}.library-table{width:100%;border-collapse:collapse;table-layout:fixed}.library-table th{padding:11px 15px;color:#95988f;text-align:left;border-bottom:1px solid #e5e2db;background:#faf9f6;font-size:9px;font-weight:750;letter-spacing:.05em}.library-table th:first-child{width:31%;padding-left:23px}.library-table th:nth-child(2){width:18%}.library-table th:nth-child(3){width:17%}.library-table th:nth-child(4){width:8%}.library-table th:nth-child(5){width:13%}.library-table th:last-child{width:88px}.library-table td{height:78px;padding:12px 15px;border-bottom:1px solid #ebe8e1;vertical-align:middle;font-size:11px}.library-table td:first-child{padding-left:23px}.library-table tr:last-child td{border-bottom:0}.library-table tbody tr:hover{background:#fdfdf9}.library-title-button{width:100%;padding:0;display:grid;gap:5px;text-align:left;border:0;background:transparent;cursor:pointer}.library-title-button strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:12px}.library-title-button span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#868a80;font-size:9px}.table-primary{display:block;overflow:hidden;margin-bottom:5px;text-overflow:ellipsis;white-space:nowrap;font-weight:700}.library-table td>small{color:#8c9087;font-size:9px}.status-stack{display:grid;gap:6px}.status-dot{display:flex;align-items:center;gap:6px;color:#92958d;white-space:nowrap;font-size:9px}.status-dot i{width:7px;height:7px;border-radius:50%;background:#ccc8bf}.status-dot.ok{color:#5f6f31}.status-dot.ok i{background:#a6c53c;box-shadow:0 0 0 3px #eff7d5}.score-value{margin-right:3px;font-size:18px}.state-pill{display:inline-flex;align-items:center;min-height:25px;padding:0 8px;border-radius:7px;background:#efede7;color:#686c63;white-space:nowrap;font-size:9px;font-weight:750}.state-selected{background:#e8ffc1;color:#566d0e}.state-needs_review{background:#fff3d8;color:#846018}.state-shortlisted{background:#e8f2ff;color:#3f628c}.state-rejected,.state-duplicate{background:#f1efec;color:#929087}.row-action{padding:6px 0;display:inline-flex;align-items:center;gap:4px;border:0;background:transparent;color:#596d18;cursor:pointer;font-size:10px;font-weight:750}.library-loading-row td{height:77px}.library-loading-row span{display:block;height:15px;border-radius:7px;background:linear-gradient(100deg,#ece9e3 20%,#f8f7f3,#ece9e3 60%);background-size:300% 100%;animation:shimmer 1.5s infinite}.library-empty{min-height:290px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;color:#8b8e86}.library-empty svg{width:29px}.library-empty strong{color:#5c6057}.library-empty span{font-size:10px}.library-pagination{min-height:58px;padding:0 23px;display:flex;align-items:center;justify-content:space-between;border-top:1px solid #e5e2db;color:#898d83;font-size:10px}.library-pagination>div{display:flex;gap:6px}.library-pagination button{width:32px;height:32px;display:grid;place-items:center;border:1px solid var(--line);border-radius:8px;background:#fff;cursor:pointer}.library-pagination button:disabled{opacity:.35;cursor:not-allowed}.library-pagination svg{width:15px}.drawer-backdrop{position:fixed;z-index:120;inset:0;display:flex;justify-content:flex-end;background:#181a1561;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px)}.review-drawer{width:min(610px,94vw);height:100vh;overflow-y:auto;background:#f7f5f0;box-shadow:-25px 0 70px #14161233}.review-drawer>header{position:sticky;z-index:4;top:0;min-height:105px;padding:23px 26px 17px;display:flex;align-items:flex-start;justify-content:space-between;gap:18px;border-bottom:1px solid var(--line);background:#f7f5f0f0;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px)}.review-drawer>header .section-kicker{margin-bottom:6px}.review-drawer>header h2{margin:0;max-width:470px;font-size:22px;line-height:1.28;letter-spacing:-.03em}.drawer-loading{min-height:70vh;display:flex;align-items:center;justify-content:center;gap:9px;color:#7b7f75}.drawer-loading svg{width:21px}.drawer-meta{padding:16px 26px;display:flex;flex-wrap:wrap;gap:7px;border-bottom:1px solid var(--line)}.drawer-meta>span{padding:5px 8px;border-radius:7px;background:#e8e5de;color:#64685f;font-size:9px;font-weight:700}.drawer-meta p{width:100%;margin:4px 0 0;color:#767a70;font-size:10px}.drawer-links{padding:12px 26px;display:flex;flex-wrap:wrap;gap:8px;border-bottom:1px solid var(--line)}.drawer-links a{min-height:34px;padding:0 9px;display:flex;align-items:center;gap:6px;border:1px solid #d4d0c6;border-radius:9px;background:#fff;color:#536514;font-size:9px;font-weight:700}.drawer-links svg{width:13px}.drawer-links a svg:last-child{width:10px;color:#969990}.review-section{padding:24px 26px;border-bottom:1px solid var(--line);background:#f9f7f2}.review-section:nth-of-type(2n){background:#f5f2ec}.review-section-title{margin-bottom:18px;display:flex;gap:12px}.review-section-title>span{width:27px;height:27px;display:grid;place-items:center;flex:none;border-radius:8px;background:#e3ff83;color:#50630f;font-size:9px;font-weight:800}.review-section-title h3{margin:0 0 5px;font-size:14px}.review-section-title p{margin:0;color:#858980;font-size:9px;line-height:1.5}.review-check-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px}.review-check{min-height:42px;padding:0 11px;display:flex;align-items:center;gap:9px;border:1px solid #d6d2c9;border-radius:10px;background:#fff;cursor:pointer}.review-check>input{position:absolute;opacity:0;pointer-events:none}.review-check>span{width:18px;height:18px;display:grid;place-items:center;flex:none;border:1px solid #c6c3b9;border-radius:5px;background:#faf9f6}.review-check input:checked+span{border-color:#a6c43c;background:var(--accent)}.review-check svg{width:12px}.review-check em{font-size:10px;font-style:normal;font-weight:650}.review-check.disabled{opacity:.55;cursor:not-allowed}.review-form-grid{margin-top:11px;display:grid;grid-template-columns:1fr 1fr;gap:10px}.review-form-grid label,.review-field{display:grid;gap:7px;color:#666a61;font-size:10px;font-weight:700}.review-form-grid select,.review-field select{width:100%;background:#fff}.review-form-grid input{width:100%;height:39px;padding:0 10px;border:1px solid #d8d4cb;border-radius:10px;background:#fff;outline:0;color:#545950;font-size:10px}.review-form-grid input:disabled,.review-form-grid select:disabled{background:#efede8;color:#9a9d95;cursor:not-allowed}.rights-evidence-grid{margin-top:15px;padding-top:14px;border-top:1px solid #dfdbd2}.rights-checks{display:grid;grid-template-columns:1fr 1fr;gap:7px;align-self:end}.rights-checks .review-check{min-height:39px;padding:0 8px}.rights-checks .review-check em{font-size:9px}.rights-notice{margin-top:12px;padding:10px 11px;display:flex;gap:8px;border-radius:9px;background:#fff5d9;color:#795f27;font-size:9px;line-height:1.55}.rights-notice svg{width:15px;flex:none}.score-editor{padding:15px;display:grid;gap:16px;border:1px solid #d9d5cc;border-radius:12px;background:#fff}.score-editor label{display:grid;gap:8px}.score-editor label span{display:flex;justify-content:space-between;color:#5f635a;font-size:10px;font-weight:700}.score-editor label em{color:#5b7111;font-style:normal}.score-editor input[type=range]{width:100%;accent-color:#8fae28}.score-total{padding-top:13px;display:flex;align-items:flex-end;justify-content:space-between;border-top:1px solid #e5e1d8}.score-total span{color:#6b7066;font-size:10px}.score-total strong{font-size:27px}.score-total small{margin-left:3px;color:#8f928a;font-size:9px}.review-field{margin-bottom:13px}.review-field textarea{min-height:94px;resize:vertical;padding:11px;border:1px solid #d8d4ca;border-radius:10px;background:#fff;outline:0;color:var(--ink);line-height:1.55;font-size:10px}.blocker-list{padding:12px;display:grid;gap:7px;border-radius:10px;background:#fff0ed;color:#903c30}.blocker-list strong{display:flex;align-items:center;gap:6px;font-size:10px}.blocker-list strong svg{width:14px}.blocker-list span{padding-left:20px;font-size:9px}.blocker-list span:before{content:"·";margin-right:6px}.ready-notice{padding:11px;display:flex;align-items:center;gap:7px;border-radius:10px;background:#eaffc4;color:#566c10;font-size:10px;font-weight:700}.ready-notice svg{width:15px}.audit-section{padding-bottom:16px}.audit-row{min-height:35px;display:flex;align-items:center;justify-content:space-between;border-top:1px solid #e2ded5;color:#676b62;font-size:9px}.audit-row time{color:#93968e}.drawer-footer{position:sticky;z-index:3;bottom:0;padding:14px 26px 18px;border-top:1px solid var(--line);background:#f7f5f0f5;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px)}.drawer-footer>div:last-child{display:flex;justify-content:flex-end;gap:8px}.drawer-footer .form-error{margin-bottom:10px}.create-candidate-modal{width:min(720px,100%);max-height:calc(100vh - 40px);overflow-y:auto}.create-candidate-modal>header{display:flex;align-items:flex-start;justify-content:space-between}.create-candidate-modal>header h2{margin-bottom:0}.modal-intro{margin:-10px 0 22px;color:#767a70;font-size:11px;line-height:1.6}.create-form-grid{display:grid;grid-template-columns:1fr 1fr;gap:0 12px}.create-form-grid .span-two{grid-column:1 / -1}.create-form-grid label{display:grid;gap:7px;margin-bottom:13px;color:#5d6158;font-size:10px;font-weight:700}.create-form-grid input{min-height:42px;padding:0 11px;border:1px solid #d5d1c8;border-radius:10px;background:#fff}.create-form-grid select{height:42px;background:#fff}.create-shortlist-check{display:flex!important;grid-template-columns:auto 1fr;align-items:center;gap:8px!important;margin:5px 0 16px!important}.create-shortlist-check input{width:16px;height:16px;min-height:0}@media(max-width:1250px){.library-rule-card{display:none}.workflow-bar{grid-template-columns:repeat(5,minmax(120px,1fr));overflow-x:auto}.library-metrics,.competition-strip{grid-template-columns:1fr 1fr}.library-filters{grid-template-columns:minmax(220px,1fr) repeat(2,minmax(125px,auto))}.library-filters select:nth-of-type(3){display:none}.library-result-count{display:none}}@media(max-width:820px){.library-hero{min-height:250px;padding:27px 24px}.library-hero h2{font-size:30px}.workflow-bar{padding:13px}.library-metrics,.competition-strip,.library-filters{grid-template-columns:1fr 1fr}.library-search{grid-column:1 / -1}.library-filters select:nth-of-type(3){display:block}.library-table{min-width:820px}.review-check-grid,.review-form-grid{grid-template-columns:1fr}}@media(max-width:540px){.library-hero{min-height:280px}.library-hero p{font-size:11px}.library-metrics,.competition-strip{grid-template-columns:1fr}.library-list-head{align-items:flex-start;flex-direction:column}.scope-switch{width:100%}.scope-switch button{flex:1}.create-form-grid{grid-template-columns:1fr}.create-form-grid .span-two{grid-column:auto}.review-drawer>header,.drawer-meta,.drawer-links,.review-section,.drawer-footer{padding-left:18px;padding-right:18px}}.task-list{display:grid;gap:10px}.task-row{min-height:84px;padding:15px 16px;display:grid;grid-template-columns:40px minmax(240px,1fr) 190px auto;gap:13px;align-items:center;border:1px solid var(--line);border-radius:13px;background:#fff}.task-status{width:34px;height:34px;display:grid;place-items:center;border-radius:10px;background:#eef0e8;color:#7a7e72}.task-status.completed{background:#efffd3;color:#637817}.task-status.failed{background:#fff0ed;color:#bd4434}.task-status svg{width:18px}.task-copy{min-width:0;display:grid;gap:4px}.task-copy strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:13px}.task-copy span{color:#85887f;font-size:11px}.task-copy small{color:var(--danger)}.task-time{display:flex;gap:6px;align-items:center;color:#7c8076;font-size:11px}.admin-grid{display:grid;grid-template-columns:minmax(330px,.8fr) minmax(400px,1.2fr);gap:22px;align-items:start}.admin-card{padding:25px;border:1px solid var(--line);border-radius:16px;background:#fff}.admin-icon{width:45px;height:45px;display:grid;place-items:center;border-radius:13px;background:var(--accent)}.admin-card h2{margin:18px 0 7px}.admin-card>p{margin:0 0 24px;color:var(--muted);line-height:1.6;font-size:13px}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:12px}.invite-result{margin-top:20px;padding:15px;display:grid;grid-template-columns:1fr auto;gap:7px;align-items:center;border-radius:12px;background:#efffd3}.invite-result span,.invite-result small{grid-column:1 / -1;color:#687354;font-size:11px}.invite-result strong{font-family:ui-monospace,monospace;font-size:22px;letter-spacing:.08em}.invite-result button{display:flex;align-items:center;gap:5px;border:0;background:transparent;cursor:pointer;font-weight:700}.invite-list-card{min-height:360px}.invite-list-card h2{margin-top:0}.invite-list{display:grid}.invite-list article{padding:16px 0;border-bottom:1px solid #e4e0d8}.invite-list article>div{display:flex;justify-content:space-between}.invite-list article span,.invite-list article small{color:#7b7f75;font-size:11px}.mini-empty{padding:70px 0;text-align:center;color:#8b8e86}.canvas-page{height:100vh;overflow:hidden;background:#e7e4dd}.canvas-header{position:relative;z-index:20;height:58px;padding:0 12px;display:grid;grid-template-columns:1fr auto 1fr;align-items:center;border-bottom:1px solid #d3cfc5;background:#f9f7f2f5;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px)}.canvas-header-left,.canvas-header-actions{display:flex;align-items:center;gap:9px}.canvas-header-actions{justify-content:flex-end}.project-title-input{width:min(340px,30vw);height:36px;padding:0 8px;border:1px solid transparent;border-radius:8px;background:transparent;font-weight:700}.project-title-input:hover,.project-title-input:focus{border-color:var(--line);background:#fff;outline:0}.save-indicator{display:flex;align-items:center;gap:5px;color:#797d72;font-size:11px}.save-indicator svg{width:14px;height:14px}.save-indicator.error{color:var(--danger)}.save-indicator.saved{color:#6c7c32}.canvas-credit{padding:8px 10px;border-radius:9px;background:#ece9e2;color:#71746c;font-size:11px}.canvas-credit strong{color:#4f620e}.canvas-body{height:calc(100vh - 58px);display:grid;grid-template-columns:1fr 330px}.flow-stage{position:relative;min-width:0}.flow-stage .react-flow{background:#e7e4dd}.react-flow__minimap{border:1px solid #ccc8be;border-radius:10px;overflow:hidden;background:#ffffffe0}.react-flow__controls{overflow:hidden;border:1px solid #ccc8be;border-radius:10px;box-shadow:none}.react-flow__controls-button{border-bottom-color:#ddd9d0}.canvas-loading{position:absolute;z-index:15;inset:0;display:flex;align-items:center;justify-content:center;gap:8px;background:#e7e4dd;color:#70746a}.canvas-tools{position:fixed;z-index:30;left:13px;top:75px;width:48px;padding:5px;display:grid;gap:4px;border:1px solid #cbc7bd;border-radius:13px;background:#ffffffeb;box-shadow:0 10px 25px #23251f1a;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}.canvas-tools button{width:36px;height:36px;display:grid;place-items:center;border:0;border-radius:9px;background:transparent;cursor:pointer;color:#696d63}.canvas-tools button:hover,.canvas-tools button.active{background:#e7ff94;color:#253000}.canvas-tools svg{width:18px;height:18px}.tool-divider{height:1px;margin:2px 4px;background:#dedad1}.generation-panel{position:relative;z-index:10;padding:17px 17px 13px;display:flex;flex-direction:column;overflow-y:auto;border-left:1px solid #d0ccc2;background:#f7f5f0}.panel-title{padding-bottom:15px;display:flex;align-items:flex-start;justify-content:space-between;border-bottom:1px solid #dfdbd2}.panel-title>div{display:flex;gap:10px}.panel-title h2{margin:1px 0 2px;font-size:14px}.panel-title p{margin:0;color:#84877f;font-size:10px}.panel-icon{width:35px;height:35px;display:grid;place-items:center;border-radius:10px;background:var(--accent)}.panel-icon svg{width:17px}.panel-section{position:relative;padding:16px 0;border-bottom:1px solid #e0dcd3}.section-label{margin-bottom:9px;display:flex;justify-content:space-between;color:#575b52;font-size:11px;font-weight:750}.section-label span{color:#92958d;font-weight:500}.reference-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:6px}.reference-thumb{position:relative;aspect-ratio:1;overflow:hidden;border:1px solid #c5c1b7;border-radius:9px}.reference-thumb img{width:100%;height:100%;object-fit:cover}.reference-thumb span{position:absolute;right:3px;bottom:3px;left:3px;padding:2px;border-radius:4px;background:#141612a6;color:#fff;text-align:center;font-size:7px}.reference-empty{width:100%;min-height:82px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;border:1px dashed #c8c4ba;border-radius:10px;background:#fbfaf7;cursor:pointer;color:#777b71}.reference-empty svg{width:18px}.reference-empty strong{font-size:11px}.reference-empty span{font-size:9px}.panel-section textarea{width:100%;min-height:120px;resize:vertical;padding:11px;border:1px solid #d0ccc3;border-radius:10px;background:#fff;color:var(--ink);line-height:1.55;font-size:11px}.panel-section textarea:focus{border-color:#9cb735;box-shadow:0 0 0 3px #d3f55b33;outline:none}.textarea-count{position:absolute;right:8px;bottom:22px;color:#aaa;font-size:8px}.ratio-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:5px}.ratio-grid button{min-height:52px;padding:6px 2px;display:grid;place-items:center;gap:3px;border:1px solid #d0ccc3;border-radius:8px;background:#fff;color:#757970;cursor:pointer;font-size:8px}.ratio-grid button.selected{border-color:#93ad31;background:#f1ffd0;color:#43540c;box-shadow:0 0 0 2px #d3f55b2e}.ratio-shape{display:block;border:1px solid currentColor;border-radius:2px}.r-1-1{width:14px;height:14px}.r-4-3{width:16px;height:12px}.r-3-4{width:12px;height:16px}.r-16-9{width:19px;height:11px}.r-9-16{width:10px;height:18px}.panel-row{display:grid;grid-template-columns:1fr 1fr;gap:20px}.count-stepper{height:34px;display:grid;grid-template-columns:1fr 35px 1fr;align-items:center;border:1px solid #d2cec4;border-radius:8px;background:#fff}.count-stepper button{border:0;background:transparent;cursor:pointer;color:#6f7369}.count-stepper strong{text-align:center;font-size:12px}.model-pill{height:34px;padding:0 9px;display:flex;align-items:center;border:1px solid #d2cec4;border-radius:8px;background:#fff;font-size:9px}.panel-notice{margin-top:13px;padding:9px 10px;display:flex;gap:7px;align-items:flex-start;border-radius:9px;font-size:10px;line-height:1.45}.panel-notice svg{width:14px;height:14px;flex:none}.panel-notice.success{background:#efffd2;color:#586d10}.panel-notice.error{background:#fff0ed;color:#a94032}.panel-spacer{flex:1;min-height:18px}.generate-button{width:100%;min-height:46px;padding:0 13px;display:flex;align-items:center;justify-content:center;gap:8px;border:0;border-radius:11px;background:var(--ink);color:#fff;cursor:pointer;font-size:12px;font-weight:750}.generate-button:hover:not(:disabled){background:#2c3027}.generate-button:disabled{opacity:.7;cursor:wait}.generate-button svg{width:16px}.generate-button span{margin-left:auto;padding:4px 6px;border-radius:6px;background:#ffffff1f;font-size:8px}.generate-tip{margin:8px 4px 0;color:#93968e;text-align:center;font-size:8px;line-height:1.45}.canvas-node{position:relative;min-width:220px;border:1px solid #c4c0b6;border-radius:12px;background:#fff;box-shadow:0 8px 24px #292b2417;transition:border-color .15s,box-shadow .15s}.canvas-node.selected{border-color:#829c24;box-shadow:0 0 0 3px #cdef564d,0 12px 30px #292b241f}.node-header{height:31px;padding:0 9px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid #e2ded6;color:#555950;font-size:9px;font-weight:700}.node-header small{color:#a1a39d;font-size:7px;letter-spacing:.1em}.image-node{width:320px}.image-node-media{position:relative;min-height:160px;background:#ebe8e1}.image-node-media img{display:block;width:100%;max-height:420px;object-fit:contain}.node-download{position:absolute;right:8px;bottom:8px;width:31px;height:31px;display:grid;place-items:center;border-radius:8px;background:#191b16cc;color:#fff}.node-download svg{width:14px}.node-footer{padding:9px;display:grid;gap:4px;font-size:9px}.node-footer span,.node-footer small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.node-footer small{color:#90938a;font-size:7px}.text-node{width:260px}.text-node textarea{width:100%;min-height:145px;resize:none;padding:12px;border:0;border-radius:0 0 12px 12px;outline:0;background:#fffef9;color:#31342e;line-height:1.6;font-size:11px}.generation-node{width:230px;height:150px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px;color:#757970}.generation-node strong{color:var(--ink)}.react-flow__handle{width:9px;height:9px;border:2px solid white;background:#7c8370}.react-flow__handle:hover{background:#91ad2c}.page-loader{min-height:100vh;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:11px;color:#73776c}.page-loader p{margin:0}@media(max-width:1100px){.hero{grid-template-columns:1fr;padding-top:60px}.hero-copy{text-align:center}.hero-badge,.hero-lead{margin-left:auto;margin-right:auto}.hero-actions{justify-content:center}.hero-canvas{max-width:780px;width:100%;margin:auto}.auth-page{grid-template-columns:380px 1fr}.app-shell{grid-template-columns:210px 1fr}.app-main{padding-left:25px;padding-right:25px}.generation-panel{width:310px}.canvas-body{grid-template-columns:1fr 310px}}@media(max-width:820px){.landing-header{padding:0 20px}.landing-header nav{display:none}.hero{grid-template-columns:1fr;padding:55px 20px 70px}.hero-copy h1{font-size:48px}.hero-actions{flex-direction:column}.hero-canvas{height:470px}.preview-node-c{right:18px}.preview-node-a{left:18px}.workflow{padding:80px 22px}.workflow-grid{grid-template-columns:1fr}.workflow-grid article,.workflow-grid article+article{min-height:210px;padding:25px 0;border-right:0;border-bottom:1px solid #464940}.workflow-grid svg{margin-top:25px}.feature-band{padding:80px 22px;grid-template-columns:1fr;gap:50px}.auth-page{display:block}.auth-visual{display:none}.auth-form-wrap{min-height:100vh}.auth-back{color:var(--ink)}.app-shell{display:block}.app-sidebar{position:static;width:100%;height:auto;padding:14px;flex-direction:row;align-items:center}.sidebar-brand{padding:0 15px 0 0}.sidebar-nav{display:flex}.sidebar-nav a{padding:0 9px}.sidebar-spacer,.credit-card,.sidebar-user>span:nth-child(2){display:none}.sidebar-user{margin-left:auto;padding:0;border:0;grid-template-columns:34px 30px}.app-main{padding:25px 18px 60px}.project-grid{grid-template-columns:repeat(auto-fill,minmax(230px,1fr))}.admin-grid{grid-template-columns:1fr}.task-row{grid-template-columns:40px 1fr auto}.task-time{display:none}.canvas-body{grid-template-columns:1fr}.generation-panel{position:fixed;z-index:40;right:0;bottom:0;width:min(330px,92vw);height:calc(100vh - 58px);box-shadow:-15px 0 40px #0000001f}.canvas-header{grid-template-columns:1fr auto}.save-indicator,.canvas-header-actions .button,.canvas-header-actions .icon-button{display:none}}@media(max-width:540px){.landing-header .text-link,.header-actions .button svg{display:none}.landing-header{height:70px}.landing-brand>span:last-child{display:none}.header-actions .button{padding:9px 12px}.hero-copy h1{font-size:39px}.hero-lead{font-size:16px}.hero-canvas{height:390px}.preview-node-b{display:none}.preview-node-c{width:180px;top:130px}.preview-prompt{left:12px;right:12px}.workflow>h2,.feature-band h2{font-size:34px}.landing-footer{padding:20px;flex-direction:column;justify-content:center;gap:6px}.sidebar-nav a{font-size:0}.sidebar-nav a svg{width:20px}.app-header{align-items:flex-end}.app-header h1{font-size:27px}.projects-toolbar{align-items:stretch;flex-direction:column;gap:10px}.search-box{width:100%}.project-grid,.form-row{grid-template-columns:1fr}.task-row{grid-template-columns:36px 1fr}.task-row .button{display:none}.project-title-input{width:150px}.canvas-credit{display:none}}
