@import"https://fonts.googleapis.com/css2?family=Manrope:wght@400;500;600;700;800&display=swap";:root{--font: "Manrope", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--font-sans: "Manrope", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--font-serif: "Manrope", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--font-mono: "SF Mono", "JetBrains Mono", Consolas, monospace;--bg: #f6efe6;--bg-elevated: #fffaf4;--bg-subtle: #f1e2d4;--bg-muted: #e4d2c1;--bg-hover: #dac3af;--bg-surface: #fffaf4;--bg-page: var(--bg);--surface: var(--bg-subtle);--surface-container: #ede1d3;--surface-container-low: #f5eadf;--surface-container-lowest: #fffaf4;--surface-container-high: #e2d4c5;--surface-container-highest: #d6c4b2;--text-primary: #2a211b;--text-secondary: #524339;--text-tertiary: #6f5d51;--text-quaternary: #89776b;--text-muted: #6d5b50;--text-soft: #9a887a;--text-inverse: #ffffff;--border: rgba(42, 33, 27, .12);--border-subtle: rgba(42, 33, 27, .18);--border-ghost: rgba(42, 33, 27, .1);--accent: #9c5836;--accent-soft: #edd7cb;--accent-hover: #8a4a2d;--accent-strong: #9c5836;--accent-subtle: #f3e2d8;--accent-border: rgba(156, 88, 54, .34);--brand-mark: #b87355;--brand-word-start: #3a261d;--brand-word-end: #c98b72;--brand-tagline: #5f514a;--note-shell-bg: #f6efe6;--note-surface: #fffaf4;--note-surface-strong: #f3e7d9;--note-border: rgba(42, 33, 27, .1);--note-border-strong: rgba(156, 88, 54, .34);--note-accent: #9c5836;--note-accent-soft: #edd7cb;--note-text: #2a211b;--note-text-muted: #6d5b50;--backdrop: rgba(15, 12, 10, .48);--overlay: rgba(20, 15, 12, .5);--surface-overlay: color-mix(in srgb, var(--bg-elevated) 82%, var(--surface-container-low));--border-overlay: rgba(26, 22, 18, .16);--accent-shadow: 0 20px 36px rgba(196, 98, 58, .22);--accent-glow: 0 24px 44px rgba(196, 98, 58, .32);--success: #587862;--success-soft: #dde8e1;--warning: #bc9136;--warning-soft: #efe5bf;--warn: #bc9136;--danger: #b25a49;--danger-soft: #f0d8d2;--danger-border: rgba(178, 90, 73, .34);--info: #5d7ca7;--info-soft: #dde5ef;--purple: #8a6bb0;--purple-soft: #e6def0;--pink: #b05a7a;--pink-soft: #f1dde5;--success-border: rgba(88, 120, 98, .28);--card-planned-bg: #fffaf4;--card-planned-text: #453830;--card-planned-border: rgba(26, 22, 18, .12);--card-seen-bg: #f5e9de;--card-seen-text: #624b3d;--card-seen-border: rgba(26, 22, 18, .16);--card-good-bg: #eef4ee;--card-good-text: #32593f;--card-good-border: rgba(90, 143, 106, .2);--card-warn-glow: #c98a2f;--card-bad-glow: #b85a45;--status-done-bg: #e7f0ea;--status-done-border: rgba(90, 143, 106, .25);--status-studied-bg: #f4ead4;--status-studied-border: rgba(196, 154, 50, .25);--status-todo-bg: var(--bg-surface);--status-todo-border: var(--border);--color-accurate: #5a8f6a;--color-warning: #c49a32;--color-wrong: #c4534a;--color-correct: #5a8f6a;--hm-0: #ebe3d8;--hm-1: #d7e1d4;--hm-2: #a7c1a8;--hm-3: #6f9274;--hm-4: #4f6d57;--area-cm: #9c5836;--area-pd: #bc9136;--area-cx: #587862;--area-go: #b05a7a;--area-ps: #8a6bb0;--area-mp: #5d7ca7;--area-ot: #8a7e72;--area-clinica-medica: #9c5836;--area-pediatria: #bc9136;--area-cirurgia: #587862;--area-ginecologia-obstetricia: #b05a7a;--area-psiquiatria: #8a6bb0;--area-medicina-preventiva: #5d7ca7;--area-outras: #8a7e72;--space-1: 4px;--space-2: 8px;--space-3: 12px;--space-4: 16px;--space-5: 20px;--space-6: 24px;--space-8: 32px;--space-10: 40px;--space-12: 48px;--radius-sm: 8px;--radius-md: 12px;--radius-card: 16px;--radius-lg: 18px;--radius-xl: 24px;--radius-btn: 10px;--radius-pill: 20px;--shadow-sm: 0 1px 3px rgba(26, 22, 18, .06);--shadow: 0 3px 10px rgba(26, 22, 18, .08);--shadow-inline: 0 6px 18px rgba(26, 22, 18, .08);--shadow-ambient: 0 14px 34px rgba(26, 22, 18, .09);--shadow-panel: 0 22px 52px rgba(26, 22, 18, .12);--shadow-lg: 0 10px 28px rgba(26, 22, 18, .12);--shadow-elevated: 0 24px 60px rgba(26, 22, 18, .16);--transition: .18s cubic-bezier(.16, 1, .3, 1);--transition-slow: .28s cubic-bezier(.16, 1, .3, 1);--glass-topbar: rgba(255, 250, 244, .92);--glass-mobilenav: rgba(255, 250, 244, .96);--toolbar-bg: #2a2018;--toolbar-icon: #d4c4b0;--toolbar-icon-hover: #ffffff;--toolbar-hover-bg: rgba(146, 74, 40, .2);--toolbar-active-bg: rgba(146, 74, 40, .35);--toolbar-active-icon: #e8d4c0;--toolbar-border: rgba(146, 74, 40, .3);--toolbar-shadow: 0 4px 20px rgba(30, 20, 12, .3);--toolbar-disabled: rgba(180, 165, 150, .4);--toolbar-separator: rgba(146, 74, 40, .25);--toolbar-tooltip-bg: #1c1c19;--toolbar-tooltip-text: #c4bbb2;--editor-selection-bg: rgba(146, 74, 40, .15);--mono: "SF Mono", "JetBrains Mono", Consolas, monospace;--text-caption: .7rem;--text-xs: .72rem;--text-sm: .78rem;--text-body: .8rem;--text-base: .85rem;--text-md: .95rem;--text-lg: 1rem;--text-xl: 1.1rem;--text-2xl: 1.5rem;--text-3xl: 1.8rem;--text-4xl: 2.3rem;--text-display: 2.6rem;--site-body-font-size: 1rem;--note-content-font-size: .78rem;--note-content-heading-1: 1.35rem;--note-content-heading-2: 1.15rem;--note-content-heading-3: 1.02rem}html[data-site-font-size=medium]{--site-body-font-size: 1.04rem;--text-caption: .74rem;--text-xs: .77rem;--text-sm: .84rem;--text-body: .87rem;--text-base: .93rem;--text-md: 1.03rem;--text-lg: 1.1rem;--text-xl: 1.22rem;--text-2xl: 1.62rem;--text-3xl: 1.95rem;--text-4xl: 2.48rem;--text-display: 2.8rem}html[data-site-font-size=large]{--site-body-font-size: 1.08rem;--text-caption: .78rem;--text-xs: .83rem;--text-sm: .9rem;--text-body: .95rem;--text-base: 1.02rem;--text-md: 1.14rem;--text-lg: 1.22rem;--text-xl: 1.36rem;--text-2xl: 1.8rem;--text-3xl: 2.15rem;--text-4xl: 2.7rem;--text-display: 3.05rem}html[data-note-font-size=medium]{--note-content-font-size: .9rem;--note-content-heading-1: 1.55rem;--note-content-heading-2: 1.3rem;--note-content-heading-3: 1.12rem}html[data-note-font-size=large]{--note-content-font-size: 1rem;--note-content-heading-1: 1.75rem;--note-content-heading-2: 1.45rem;--note-content-heading-3: 1.24rem}html[data-theme=dark]{--bg: #141210;--bg-elevated: #211d1a;--bg-subtle: #2a2521;--bg-muted: #342d28;--bg-hover: #3b332d;--bg-surface: #211d1a;--surface: var(--bg-subtle);--surface-container: #2b2622;--surface-container-low: #26211e;--surface-container-lowest: #211d1a;--surface-container-high: #342d28;--surface-container-highest: #403730;--text-primary: #f0ebe5;--text-secondary: #d4c7bc;--text-tertiary: #b8a89b;--text-quaternary: #98877a;--text-muted: #b09f91;--text-soft: #877669;--text-inverse: #ffffff;--border: rgba(240, 235, 229, .14);--border-subtle: rgba(240, 235, 229, .22);--border-ghost: rgba(240, 235, 229, .14);--accent: #e07850;--accent-soft: #432b21;--accent-hover: #f08a62;--accent-strong: #e07850;--accent-subtle: rgba(224, 120, 80, .18);--accent-border: rgba(224, 120, 80, .42);--brand-mark: #e0a183;--brand-word-start: #f0ebe5;--brand-word-end: #e0a183;--brand-tagline: #d4c7bc;--note-shell-bg: #141210;--note-surface: #201c19;--note-surface-strong: #2a2420;--note-border: rgba(240, 235, 229, .14);--note-border-strong: rgba(224, 120, 80, .42);--note-accent: #e07850;--note-accent-soft: #432b21;--note-text: #f0ebe5;--note-text-muted: #b09f91;--backdrop: rgba(15, 12, 10, .55);--overlay: rgba(8, 6, 5, .62);--surface-overlay: color-mix(in srgb, var(--bg-elevated) 82%, var(--surface-container-high));--border-overlay: rgba(240, 235, 229, .2);--accent-shadow: 0 20px 36px rgba(224, 120, 80, .26);--accent-glow: 0 24px 44px rgba(224, 120, 80, .38);--success: #72b08a;--success-soft: #1a2e20;--warning: #d4a840;--warning-soft: #2e2510;--warn: #d4a840;--danger: #e06860;--danger-soft: #2e1515;--danger-border: rgba(224, 104, 96, .38);--info: #7098c8;--info-soft: #151e2e;--purple: #a882cc;--purple-soft: #1e152e;--pink: #cc7090;--pink-soft: #2e1520;--success-border: rgba(114, 176, 138, .28);--card-planned-bg: #1e1b18;--card-planned-text: #e2d6cc;--card-planned-border: rgba(240, 235, 229, .06);--card-seen-bg: #2e2418;--card-seen-text: #f0d3be;--card-seen-border: rgba(240, 235, 229, .1);--card-good-bg: #1f2823;--card-good-text: #dce7df;--card-good-border: rgba(114, 176, 138, .2);--card-warn-glow: #d4a840;--card-bad-glow: #e06860;--shadow-elevated: 0 24px 60px rgba(5, 4, 3, .4);--status-done-bg: #1a2e20;--status-done-border: rgba(114, 176, 138, .25);--status-studied-bg: #2e2510;--status-studied-border: rgba(212, 168, 64, .25);--status-todo-bg: var(--bg-surface);--status-todo-border: var(--border);--color-accurate: #72b08a;--color-warning: #d4a840;--color-wrong: #e06860;--color-correct: #72b08a;--hm-0: #23282b;--hm-1: #3d4c43;--hm-2: #5f7a67;--hm-3: #8ca885;--hm-4: #b6d4ae;--shadow-sm: 0 1px 3px rgba(0, 0, 0, .2);--shadow: 0 2px 8px rgba(0, 0, 0, .25);--shadow-inline: 0 4px 16px rgba(0, 0, 0, .25);--shadow-ambient: 0 12px 32px rgba(0, 0, 0, .35);--shadow-panel: 0 18px 48px rgba(0, 0, 0, .45);--shadow-lg: 0 8px 24px rgba(0, 0, 0, .3);--glass-topbar: rgba(30, 27, 24, .92);--glass-mobilenav: rgba(30, 27, 24, .96);--toolbar-bg: #1a1510;--toolbar-icon: #b8a898;--toolbar-icon-hover: #f0d4c0;--toolbar-hover-bg: rgba(232, 160, 122, .15);--toolbar-active-bg: rgba(232, 160, 122, .25);--toolbar-active-icon: #f0d4c0;--toolbar-border: rgba(146, 74, 40, .2);--toolbar-shadow: 0 4px 20px rgba(0, 0, 0, .5);--toolbar-disabled: rgba(100, 90, 80, .4);--toolbar-separator: rgba(146, 74, 40, .2);--toolbar-tooltip-bg: #141210;--toolbar-tooltip-text: #b8a898;--editor-selection-bg: rgba(232, 160, 122, .2)}@keyframes toast-in{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@keyframes skeleton-pulse{0%{opacity:1}50%{opacity:.4}to{opacity:1}}.skeleton{background:var(--surface-container);border-radius:var(--radius-sm);animation:skeleton-pulse 1.6s ease-in-out infinite}.skeleton--text{height:13px;width:100%;border-radius:999px}.skeleton--title{height:18px;width:60%;border-radius:999px}.skeleton--card{height:72px;width:100%;border-radius:var(--radius-md)}.skeleton--avatar{width:36px;height:36px;border-radius:50%;flex-shrink:0}@media print{body>*{display:none!important}#analytics-report{display:block!important}#analytics-report{font-family:Manrope,sans-serif;font-size:12pt;color:#1c1c19;padding:24pt;max-width:100%}.print-section{break-inside:avoid;margin-bottom:24pt}.print-title{font-size:18pt;font-weight:800;margin-bottom:4pt}.print-sub{font-size:10pt;color:#8d776e;margin-bottom:16pt}.print-table{width:100%;border-collapse:collapse;font-size:10pt}.print-table th,.print-table td{padding:6pt 8pt;border-bottom:1px solid #dac2b8;text-align:left}.print-table th{font-weight:700;background:#f6f3ee}.print-bar{height:8pt;background:#eee;border-radius:4pt;overflow:hidden}.print-bar-fill{height:100%;background:#924a28;border-radius:4pt}}.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: #777;--xy-background-pattern-lines-color-default: #777;--xy-background-pattern-cross-color-default: #777;--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}.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))}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html{font-size:14px;height:100%}body,#root{height:100%}body{font-family:var(--font);font-size:var(--site-body-font-size);color:var(--text-primary);background:var(--bg);line-height:1.5;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility;transition:background .18s ease,color .18s ease}h1,h2,h3,h4,h5,h6{font-weight:700;letter-spacing:-.02em;color:var(--text-primary)}h1{font-size:1.5rem}h2{font-size:1.3rem}h3{font-size:1.1rem}h4{font-size:1rem}button,input,textarea,select{font-family:inherit;font-size:inherit}button{cursor:pointer;border:none;background:none;transition:background var(--transition),color var(--transition),border-color var(--transition),box-shadow var(--transition),transform var(--transition)}button:disabled{cursor:not-allowed}input,textarea,select{color:inherit;background:var(--bg-surface);border:1px solid var(--border-subtle);transition:background var(--transition),border-color var(--transition),box-shadow var(--transition),color var(--transition)}input::placeholder,textarea::placeholder{color:var(--text-soft)}input:focus,textarea:focus,select:focus{border-color:var(--accent-border);box-shadow:0 0 0 3px color-mix(in srgb,var(--accent) 14%,transparent);outline:none}a{color:inherit;text-decoration:none}::selection{background:color-mix(in srgb,var(--accent) 14%,transparent)}:focus-visible{outline:2px solid var(--accent);outline-offset:2px;box-shadow:0 0 0 4px color-mix(in srgb,var(--accent) 18%,transparent)}::-webkit-scrollbar{width:6px;height:6px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:#8a7e724d;border-radius:999px}::-webkit-scrollbar-thumb:hover{background:#8a7e7280}html[data-theme=dark] body{background:radial-gradient(ellipse 80% 50% at 20% -10%,rgba(224,120,80,.08),transparent 50%),radial-gradient(ellipse 60% 40% at 80% 110%,rgba(180,130,100,.05),transparent 50%),var(--bg)}html[data-theme=dark] ::selection{background:color-mix(in srgb,var(--accent) 22%,transparent)}html[data-theme=dark] ::-webkit-scrollbar-thumb{background:#5a524a66}html[data-theme=dark] ::-webkit-scrollbar-thumb:hover{background:#5a524a99}html[data-theme=dark] input,html[data-theme=dark] textarea,html[data-theme=dark] select{background:var(--bg-subtle);border-color:var(--border);color:var(--text-primary)}html[data-theme=dark] input:focus,html[data-theme=dark] textarea:focus{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-subtle)}[data-theme=dark] .cm-flashcard-visible-text{border-bottom-color:var(--accent-hover)}.visually-hidden{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}@keyframes popIn{0%{opacity:0;transform:scale(.95) translateY(-4px)}to{opacity:1;transform:scale(1) translateY(0)}}@keyframes slideUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@keyframes routeFadeSlide{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@keyframes scaleIn{0%{opacity:0;transform:scale(.96)}to{opacity:1;transform:scale(1)}}@keyframes slideInRight{0%{opacity:0;transform:translate(12px)}to{opacity:1;transform:translate(0)}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes pulse{0%,to{opacity:1}50%{opacity:.6}}@keyframes logoBreath{0%,to{box-shadow:0 2px 8px #c4623a26}50%{box-shadow:0 4px 16px #c4623a4d}}@keyframes logoIconFloat{0%,to{transform:translateY(0)}50%{transform:translateY(-1.5px)}}@keyframes navItemIn{0%{opacity:0;transform:translate(-8px)}to{opacity:1;transform:translate(0)}}@keyframes shimmer{0%{background-position:-200% center}to{background-position:200% center}}@keyframes gentlePulse{0%,to{transform:scale(1)}50%{transform:scale(1.04)}}.animate-scale-in{animation:scaleIn .2s cubic-bezier(.16,1,.3,1)}.animate-slide-in-right{animation:slideInRight .2s cubic-bezier(.16,1,.3,1)}.animate-fade-in{animation:fadeIn .15s ease}.animate-pulse{animation:pulse 2s ease-in-out infinite}.sidebar-logo-icon{animation:logoBreath 3s ease-in-out infinite}.sidebar-logo-icon svg{animation:logoIconFloat 3s ease-in-out infinite}.sidebar-logo-collapsed{animation:logoBreath 3s ease-in-out infinite}.sidebar-logo-collapsed svg{animation:logoIconFloat 3s ease-in-out infinite}@keyframes logoHoverWiggle{0%{transform:rotate(0)}15%{transform:rotate(-8deg)}30%{transform:rotate(6deg)}45%{transform:rotate(-4deg)}60%{transform:rotate(2deg)}75%{transform:rotate(-1deg)}to{transform:rotate(0)}}@keyframes logoHoverGlow{0%,to{box-shadow:0 2px 8px #c4623a26}50%{box-shadow:0 4px 20px #c4623a66}}.sidebar-logo-hover:hover .sidebar-logo-icon svg{animation:logoHoverWiggle .5s cubic-bezier(.36,.07,.19,.97) both}.sidebar-logo-hover:hover .sidebar-logo-icon{animation:logoHoverGlow .5s ease both}.sidebar-logo-hover{cursor:default;border-radius:12px;transition:opacity .2s ease}.sidebar-logo-hover:active{opacity:.85}nav a{transition:all .18s cubic-bezier(.16,1,.3,1)}nav a:hover:not([aria-current=page]){background:var(--bg-subtle);color:var(--text-primary)}nav a:active{transform:scale(.98)}.topbar-avatar{cursor:pointer;transition:background .18s ease,transform .18s cubic-bezier(.16,1,.3,1),box-shadow .18s ease}.topbar-avatar:hover{background:color-mix(in srgb,var(--accent-soft) 60%,var(--bg-elevated))!important;transform:scale(1.08);box-shadow:var(--shadow-sm)}.topbar-avatar:active{transform:scale(.95)}button[aria-label="Nova sessão rápida"]:hover{transform:scale(1.08);box-shadow:var(--accent-glow)}button[aria-label="Nova sessão rápida"]:active{transform:scale(.95)}button[aria-label="Busca global"]:hover{transform:scale(1.08);box-shadow:var(--shadow-ambient)}button[aria-label="Busca global"]:active{transform:scale(.95)}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms;animation-iteration-count:1;transition-duration:.01ms}}.modal-overlay{position:fixed;inset:0;background:var(--overlay);display:grid;place-items:center;z-index:50;animation:fadeIn .15s ease}.modal-content{background:var(--bg-elevated);border-radius:20px;border:1px solid var(--border-overlay);box-shadow:var(--shadow-elevated);animation:scaleIn .25s cubic-bezier(.16,1,.3,1);max-width:90vw;max-height:85vh;overflow:auto}.dropdown-menu{animation:scaleIn .18s cubic-bezier(.16,1,.3,1);transform-origin:top center}.route-transition-shell{min-height:100%;animation:routeFadeSlide .2s cubic-bezier(.16,1,.3,1)}.planner-route-shell{height:100%;min-height:0;display:flex}.planner-page-shell{display:flex;flex:1;flex-direction:column;min-height:0;height:100%;overflow:hidden;background:var(--bg-elevated);border:1px solid var(--border-subtle);border-radius:22px;box-shadow:var(--shadow-panel)}.planner-primary-pane{background:var(--bg)}.planner-secondary-pane{min-width:0;min-height:0;overflow-y:auto;display:flex;flex-direction:column;gap:var(--space-3);padding:var(--space-4);background:var(--bg)}.flashcards-home-shell,.flashcards-page-shell{display:flex;flex-direction:column}.flashcards-home-shell{gap:var(--space-5);padding:var(--space-5) var(--space-6) var(--space-6)}.flashcards-home-header{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:var(--space-3)}.flashcards-home-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--space-4)}.flashcards-page-shell{gap:var(--space-4);padding:var(--space-5) var(--space-6) var(--space-6)}.flashcards-home-shell.is-narrow,.flashcards-page-shell.is-narrow{padding:var(--space-4)}.flashcards-home-grid.is-narrow{grid-template-columns:1fr}.empty-state{display:flex;flex-direction:column;align-items:center;padding:var(--space-6) var(--space-4);gap:var(--space-3)}.empty-state-icon{width:64px;height:64px;border-radius:50%;display:grid;place-items:center;background:var(--surface-container-low);border:1px solid var(--border-ghost);box-shadow:var(--shadow-sm)}.empty-state-title{font-size:var(--text-sm);font-weight:700;color:var(--text-primary);margin:0;text-align:center}.empty-state-description{font-size:var(--text-xs);color:var(--text-secondary);margin:0;text-align:center;max-width:240px;line-height:1.5}.empty-state-action{margin-top:var(--space-2)}.editor-shell{display:flex;flex-direction:column;gap:14px}.editor-shell-header{position:sticky;top:0;z-index:10;background:var(--bg-elevated);box-shadow:var(--shadow-sm);padding:12px 20px 0}.editor-header-top{display:flex;align-items:baseline;gap:12px;margin-bottom:8px}.editor-header-left{flex:1;display:flex;flex-direction:column;gap:2px}.editor-shell-title{margin:0;font-size:1rem;font-weight:700;color:var(--text-primary);letter-spacing:-.02em}.editor-shell-subtitle{margin:0;font-size:var(--text-sm);color:var(--text-muted);line-height:1.5;max-width:62ch}.editor-shell-meta{flex-shrink:0;font-size:var(--text-xs);font-weight:700;color:var(--text-muted)}.editor-shell-toolbar{margin-bottom:8px}.editor-shell-footer{padding:8px 20px;color:var(--text-muted);font-size:var(--text-xs)}.editor-shell-body{background:var(--bg-subtle);border-radius:16px;overflow:hidden;box-shadow:var(--shadow)}.editor-shell-body .cm-editor{background:transparent}.editor-shell-body .cm-scroller{padding:20px 22px 30px}.editor-shell-body .cm-content{min-height:360px}.md-editor-root{width:100%;cursor:text}.note-rich-editor{position:relative;width:100%}.note-rich-editor__content,.canvas-node-editor{outline:none;min-height:180px;padding:10px 14px 14px;color:var(--text-primary);font-size:var(--note-content-font-size);line-height:1.7;cursor:text}.canvas-node-editor{min-height:100%;height:100%;padding:0}.note-rich-editor__content p,.canvas-node-editor p{margin:0 0 .8rem}.note-rich-editor__content p:last-child,.canvas-node-editor p:last-child{margin-bottom:0}.note-rich-editor__content h1,.note-rich-editor__content h2,.note-rich-editor__content h3,.canvas-node-editor h1,.canvas-node-editor h2,.canvas-node-editor h3{line-height:1.2;margin:1rem 0 .6rem;color:var(--text-primary)}.note-rich-editor__content h1{font-size:var(--note-content-heading-1);font-weight:800}.note-rich-editor__content h2{font-size:var(--note-content-heading-2);font-weight:800}.note-rich-editor__content h3{font-size:var(--note-content-heading-3);font-weight:800}.canvas-node-editor h1{font-size:var(--note-content-heading-1);font-weight:800}.canvas-node-editor h2{font-size:var(--note-content-heading-2);font-weight:800}.canvas-node-editor h3{font-size:var(--note-content-heading-3);font-weight:800}.note-rich-editor__content ul,.note-rich-editor__content ol,.canvas-node-editor ul,.canvas-node-editor ol{margin:0 0 .55rem;padding-left:1.15rem}.note-rich-editor__content p+ul,.note-rich-editor__content p+ol,.canvas-node-editor p+ul,.canvas-node-editor p+ol{margin-top:-.3rem}.note-rich-editor__content li,.canvas-node-editor li{margin:.1rem 0}.note-rich-editor__content li>p,.canvas-node-editor li>p{margin:0}.note-rich-editor__content li>ul,.note-rich-editor__content li>ol,.canvas-node-editor li>ul,.canvas-node-editor li>ol{margin:0}.note-rich-editor__content blockquote,.canvas-node-editor blockquote{margin:0 0 .8rem;padding-left:.9rem;border-left:3px solid var(--accent-border);color:var(--text-secondary)}.note-rich-editor__content code,.canvas-node-editor code{padding:.12rem .38rem;border-radius:6px;background:var(--bg-subtle);color:var(--accent);font-family:JetBrains Mono,monospace;font-size:.9em}.note-rich-editor__content pre,.canvas-node-editor pre{margin:0 0 .8rem;padding:.9rem 1rem;border-radius:12px;background:color-mix(in srgb,var(--bg-subtle) 82%,black 4%);overflow-x:auto}.note-rich-editor__content pre code,.canvas-node-editor pre code{padding:0;background:transparent;color:var(--text-primary)}.note-rich-editor__content p.is-editor-empty:first-child:before,.canvas-node-editor p.is-editor-empty:first-child:before{color:var(--text-tertiary);content:attr(data-placeholder);float:left;height:0;pointer-events:none}.note-rich-editor__content.ProseMirror-focused,.canvas-node-editor.ProseMirror-focused{outline:none;box-shadow:none}.note-rich-editor__content .tableWrapper,.canvas-node-editor .tableWrapper{margin:0 0 .9rem;overflow-x:auto}.note-rich-editor__content table,.canvas-node-editor table{width:100%;min-width:420px;border-collapse:collapse;table-layout:fixed;overflow:hidden;border:1px solid var(--border-subtle);border-radius:12px;background:var(--bg-surface)}.note-rich-editor__content th,.note-rich-editor__content td,.canvas-node-editor th,.canvas-node-editor td{position:relative;min-width:96px;padding:9px 10px;border:1px solid var(--border-ghost);vertical-align:top}.note-rich-editor__content th,.canvas-node-editor th{background:var(--accent-soft);color:var(--text-primary);font-weight:800}.note-rich-editor__content td,.canvas-node-editor td{background:color-mix(in srgb,var(--bg-surface) 92%,var(--bg-subtle))}.note-rich-editor__content th p,.note-rich-editor__content td p,.canvas-node-editor th p,.canvas-node-editor td p{margin:0}.note-rich-editor__content .selectedCell:after,.canvas-node-editor .selectedCell:after{content:"";position:absolute;inset:0;z-index:1;pointer-events:none;background:color-mix(in srgb,var(--accent-soft) 72%,transparent)}.note-rich-editor__content .column-resize-handle,.canvas-node-editor .column-resize-handle{position:absolute;top:0;right:-2px;bottom:-1px;width:4px;background:var(--accent);pointer-events:none}.table-action-menu{display:flex;align-items:center;gap:5px;padding:5px 6px;border:1px solid var(--toolbar-border);border-radius:12px;background:var(--toolbar-bg);box-shadow:var(--toolbar-shadow)}.table-action-menu__label{display:inline-flex;align-items:center;gap:5px;padding:0 7px 0 3px;color:var(--text-secondary);font-size:var(--text-xs);font-weight:800;white-space:nowrap}.table-action-menu__group{display:inline-flex;align-items:center;gap:2px;padding-left:5px;border-left:1px solid var(--toolbar-separator)}.table-action-menu__button{position:relative;display:inline-flex;align-items:center;justify-content:center;width:30px;height:30px;border:none;border-radius:8px;background:transparent;color:var(--toolbar-icon);cursor:pointer;transition:background .12s ease,color .12s ease}.table-action-menu__button:hover{background:var(--toolbar-active-bg);color:var(--toolbar-active-icon)}.table-action-menu__button--danger{color:var(--danger)}.table-action-menu__mini-icon{position:absolute;right:5px;bottom:5px;border-radius:999px;background:var(--toolbar-bg)}.flow-card-editor{position:relative;height:304px;min-height:248px;border-radius:0 0 8px 8px;background:color-mix(in srgb,var(--bg-surface) 86%,var(--bg-subtle));overflow:hidden}.flow-card-editor__flow{width:100%;height:100%;color:var(--text-primary)}.flow-card-editor__flow .react-flow__pane{cursor:crosshair}.flow-card-editor__toolbar{display:flex;align-items:center;gap:4px;padding:5px;border:1px solid var(--border-ghost);border-radius:12px;background:var(--surface-overlay);box-shadow:var(--shadow-inline)}.flow-card-editor__toolbar button{display:inline-flex;align-items:center;justify-content:center;gap:5px;height:28px;padding:0 8px;border:none;border-radius:8px;background:transparent;color:var(--text-secondary);font-size:11px;font-weight:800;cursor:pointer;white-space:nowrap;transition:background .12s ease,color .12s ease}.flow-card-editor__toolbar button:hover{background:var(--accent-soft);color:var(--accent)}.flow-card-header-toolbar{display:flex;align-items:center;gap:2px;flex-shrink:0}.flow-card-header-toolbar button{display:inline-flex;align-items:center;justify-content:center;gap:5px;height:28px;padding:0 8px;border-radius:7px;border:none;background:transparent;color:var(--text-quaternary);font-size:11px;font-weight:800;cursor:pointer;white-space:nowrap;transition:background .12s ease,color .12s ease}.flow-card-header-toolbar button:hover{background:var(--accent-soft);color:var(--accent)}.flow-card-header-toolbar--compact .flow-card-header-toolbar__add{padding:0;width:28px}.flow-card-header-toolbar--compact .flow-card-header-toolbar__add span{display:none}.flow-card-header-toolbar--compact .flow-card-header-toolbar__add:hover{width:auto;padding:0 8px}.flow-card-header-toolbar--compact .flow-card-header-toolbar__add:hover span{display:inline}.flow-card-header-toolbar__sep{width:1px;height:16px;background:var(--border-ghost);flex-shrink:0;margin:0 4px}.flow-card-node{display:flex;flex-direction:column;gap:7px;width:238px;min-height:132px;padding:12px 14px 10px;border:1px solid var(--border-subtle);border-left:5px solid var(--flow-node-accent, var(--accent));border-radius:12px;background:var(--bg-surface);box-shadow:0 6px 18px #3a281c14;transition:border-color .14s ease,box-shadow .14s ease,transform .14s ease}.flow-card-node--selected{border-color:var(--accent-border);box-shadow:0 0 0 3px var(--accent-soft),0 8px 20px #3a281c14}.flow-card-node__kind{display:block;color:var(--text-tertiary);font-size:9px;font-weight:900;letter-spacing:.06em;text-transform:uppercase}.flow-card-node__title{width:100%;min-width:0;padding:0;border:none;border-radius:0;background:transparent;color:var(--text-primary);font:inherit;font-size:13px;font-weight:900;line-height:1.25;outline:none}.flow-card-node__input{flex:1;width:100%;min-width:0;min-height:74px;padding:2px 0 0;border:none;border-radius:0;background:transparent;color:var(--text-primary);font:inherit;font-size:12.5px;font-weight:700;line-height:1.45;outline:none;resize:none;overflow:hidden}.flow-card-node__resize{width:14px!important;height:14px!important;right:-5px!important;bottom:-5px!important;border:2px solid var(--bg-surface)!important;border-radius:6px!important;background:var(--accent)!important;box-shadow:0 1px 4px #3a281c2e!important}.flow-card-node .react-flow__handle{width:8px;height:8px;border:2px solid var(--bg-surface);background:var(--accent);opacity:.65}.flow-card-editor .react-flow__edge-path{stroke:var(--text-quaternary);stroke-width:1.8}.flow-card-editor .react-flow__edge.selected .react-flow__edge-path{stroke:var(--accent);stroke-width:2.3}.flow-card-edge-condition{position:absolute;z-index:8;min-width:84px;max-width:178px;padding:5px 7px;border:1px solid var(--border-subtle);border-radius:10px;background:var(--surface-overlay);box-shadow:0 4px 12px #3a281c14;cursor:grab;pointer-events:all}.flow-card-edge-condition--selected{border-color:var(--accent-border);box-shadow:0 0 0 3px var(--accent-soft),0 4px 12px #3a281c14}.flow-card-edge-condition input{width:100%;min-width:0;border:none;background:transparent;color:var(--text-secondary);font:inherit;font-size:10.5px;font-weight:800;line-height:1.2;outline:none}.flow-card-context-menu{position:absolute;z-index:30;width:208px;padding:8px;border:1px solid var(--border-overlay);border-radius:14px;background:var(--bg-surface);box-shadow:var(--shadow-panel)}.flow-card-context-menu__label{display:block;margin:2px 4px 6px;color:var(--text-tertiary);font-size:10px;font-weight:900;letter-spacing:.06em;text-transform:uppercase}.flow-card-context-menu__grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:4px;margin-bottom:10px}.flow-card-context-menu__item{display:inline-flex;align-items:center;gap:6px;min-width:0;height:30px;padding:0 8px;border:1px solid transparent;border-radius:9px;background:transparent;color:var(--text-secondary);font-size:11px;font-weight:800;cursor:pointer;text-align:left}.flow-card-context-menu__item:hover,.flow-card-context-menu__item--active{border-color:var(--accent-border);background:var(--accent-soft);color:var(--accent)}.flow-card-context-menu__swatches{display:flex;align-items:center;gap:7px;padding:0 4px 2px}.flow-card-context-menu__swatch{width:22px;height:22px;border:2px solid var(--bg-surface);border-radius:999px;box-shadow:0 0 0 1px var(--border-subtle);cursor:pointer}.react-flow__attribution{display:none!important}.react-flow__handle{opacity:0;transition:opacity .15s ease,transform .15s ease}.react-flow__node:hover .react-flow__handle,.react-flow__handle.connecting{opacity:1}.react-flow__handle:hover{transform:scale(1.4);background:var(--accent)}.react-flow__connection-line{stroke:var(--accent);stroke-width:2;stroke-dasharray:5}.canvas-node-title:hover{background:color-mix(in srgb,var(--bg-subtle) 50%,transparent)}.canvas-node-title-editing{background:var(--bg-surface);outline:1px solid var(--border);outline-offset:-1px}.canvas-toolbar-btn{display:inline-flex;align-items:center;gap:4px;min-height:30px;padding:0 8px;border-radius:8px;border:1px solid transparent;background:transparent;color:var(--text-tertiary);font-size:.7rem;font-weight:700;cursor:pointer;transition:background .12s ease,color .12s ease;white-space:nowrap}.canvas-toolbar-btn:hover:not(:disabled){background:var(--bg-subtle);color:var(--text-secondary)}.canvas-toolbar-btn:active:not(:disabled){background:var(--accent-soft);color:var(--accent)}.canvas-toolbar-btn:disabled{opacity:.35;cursor:not-allowed}.editor-toolbar{display:flex;flex-wrap:wrap;gap:4px;align-items:center;background:linear-gradient(180deg,color-mix(in srgb,var(--toolbar-bg) 94%,white) 0%,var(--toolbar-bg) 100%);border:1px solid var(--toolbar-border);border-radius:14px;padding:7px 8px;box-shadow:var(--toolbar-shadow),inset 0 1px #ffefe314}.editor-toolbar .toolbar-btn{display:inline-flex;align-items:center;justify-content:center;gap:5px;min-height:34px;min-width:34px;padding:0 9px;border-radius:10px;border:1px solid transparent;background:transparent;color:var(--toolbar-icon);cursor:pointer;transition:background .15s ease,color .15s ease,transform .15s ease,border-color .15s ease;font-weight:700}.editor-toolbar .toolbar-btn:hover:not(:disabled){background:var(--toolbar-hover-bg);color:var(--toolbar-icon-hover);border-color:color-mix(in srgb,var(--toolbar-border) 80%,transparent)}.editor-toolbar .toolbar-btn:active:not(:disabled){background:var(--toolbar-active-bg);color:var(--toolbar-active-icon);transform:translateY(1px)}.editor-toolbar .toolbar-btn:disabled{color:var(--toolbar-disabled);cursor:not-allowed}.editor-toolbar .toolbar-btn-label{font-size:12px;font-weight:700;letter-spacing:.02em}.editor-toolbar .toolbar-sep{width:1px;align-self:stretch;background:var(--toolbar-separator);margin:0 2px}.editor-toolbar .toolbar-btn-card{padding:0 10px;background:color-mix(in srgb,var(--toolbar-hover-bg) 58%,transparent)}.editor-toolbar .toolbar-btn-card:hover:not(:disabled){background:color-mix(in srgb,var(--toolbar-active-bg) 78%,transparent)}.field-wrap{display:flex;flex-direction:column;gap:var(--space-1)}.field-label{font-size:var(--text-xs);font-weight:700;color:var(--text-muted);text-transform:uppercase;letter-spacing:.05em}.popover-textarea{width:100%;padding:var(--space-3);border:1px solid var(--border-subtle);border-radius:var(--radius-md);background:var(--bg-surface);color:var(--text-primary);font-size:var(--text-sm);line-height:1.6;resize:vertical;transition:border-color .15s ease,box-shadow .15s ease}.popover-textarea:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-subtle)}.popover-textarea::placeholder{color:var(--text-soft)}.popover-row{display:flex;justify-content:space-between;align-items:center;gap:var(--space-2);flex-wrap:wrap}.mode-buttons{display:flex;gap:var(--space-1);flex-wrap:wrap}.mode-btn{padding:4px 10px;border-radius:var(--radius-sm);border:1px solid var(--border-ghost);background:var(--bg-surface);color:var(--text-secondary);font-size:var(--text-xs);font-weight:700;cursor:pointer;transition:all .15s ease}.mode-btn:hover{background:var(--surface-container-low);color:var(--text-primary)}.mode-btn.active{background:var(--accent-subtle);border-color:var(--accent-border);color:var(--accent)}.invert-btn{display:flex;align-items:center;gap:4px;padding:4px 10px;border-radius:var(--radius-sm);border:1px solid var(--toolbar-border);background:transparent;color:var(--toolbar-icon);font-size:var(--text-xs);font-weight:700;cursor:pointer;transition:all .15s ease}.invert-btn:hover{background:var(--toolbar-hover-bg);color:var(--toolbar-icon-hover)}.popover-actions{display:flex;gap:var(--space-2);justify-content:flex-end;padding-top:var(--space-1)}.cancel-btn{padding:var(--space-2) var(--space-4);border-radius:var(--radius-md);border:1px solid var(--border-subtle);background:var(--bg-surface);color:var(--text-secondary);font-size:var(--text-sm);font-weight:700;cursor:pointer;transition:all .15s ease}.cancel-btn:hover{background:var(--surface-container-low)}.save-btn{padding:var(--space-2) var(--space-4);border-radius:var(--radius-md);border:none;background:var(--accent);color:#fff;font-size:var(--text-sm);font-weight:700;cursor:pointer;transition:all .15s ease}.save-btn:hover:not(:disabled){background:var(--accent-hover)}.save-btn:disabled{opacity:.5;cursor:not-allowed}.icon-btn{display:flex;align-items:center;justify-content:center;width:36px;height:36px;border-radius:var(--radius-sm);border:1px solid transparent;background:transparent;color:var(--text-secondary);cursor:pointer;flex-shrink:0;transition:all .15s ease}.icon-btn:hover{background:var(--surface-container-low);color:var(--text-primary)}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}[data-popover],[data-modal]{max-width:calc(100vw - 24px);max-height:calc(100vh - 24px);overflow-y:auto}.flashcard-popover{position:fixed;width:360px;max-width:calc(100vw - 32px);max-height:calc(100vh - 40px);z-index:420;background:var(--bg-elevated);border-radius:var(--radius-lg);border:1px solid var(--border-overlay);box-shadow:var(--shadow-elevated);overflow:hidden;animation:popover-enter .2s ease}@keyframes popover-enter{0%{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}.flashcard-popover-header{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);padding:var(--space-3) var(--space-4);background:linear-gradient(180deg,#2a2018f2,#32261ceb);border-bottom:1px solid var(--toolbar-border);box-shadow:inset 0 1px #ffecdc14}.flashcard-popover-header-text{display:flex;flex-direction:column;gap:2px}.flashcard-popover-title{font-size:var(--text-sm);font-weight:800;color:#e8d4c0}.flashcard-popover-subtitle{font-size:var(--text-xs);color:#b8a898}.flashcard-popover-body{padding:var(--space-4);display:flex;flex-direction:column;gap:var(--space-3)}.review-screen{position:fixed;inset:0;z-index:500;background:var(--bg);display:flex;flex-direction:column;align-items:center;padding:16px}.review-header{width:100%;max-width:640px;display:flex;justify-content:space-between;align-items:center;margin-bottom:24px}.review-progress{font-size:13px;color:var(--text-muted);font-weight:500}.review-close-btn{background:none;border:none;cursor:pointer;color:var(--text-muted);padding:4px;border-radius:6px}.review-card{width:100%;max-width:600px;min-height:280px;background:var(--bg-elevated);border-radius:20px;display:flex;align-items:center;justify-content:center;cursor:pointer;padding:40px;text-align:center;box-shadow:var(--shadow);transition:box-shadow .2s cubic-bezier(.16,1,.3,1),transform .2s cubic-bezier(.16,1,.3,1);-webkit-user-select:none;user-select:none;position:relative}.review-card:hover{box-shadow:var(--shadow-lg);transform:translateY(-2px)}.review-card-inner{width:100%;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:14px}.review-card-front,.review-card-back{width:100%;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px}.review-card-text{font-size:1.1rem;font-weight:600;line-height:1.6;color:var(--text-primary);max-width:32ch}.review-card-answer{color:var(--text-quaternary);font-weight:500}.review-tap-hint{display:block;margin-top:16px;font-size:12px;color:var(--text-muted)}.review-ratings{width:100%;max-width:600px;margin-top:24px;text-align:center}.review-ratings-label{font-size:.72rem;font-weight:600;color:var(--text-muted);margin-bottom:12px}.review-ratings-row{display:flex;gap:8px;justify-content:center;flex-wrap:wrap}.review-rating-btn{display:inline-flex;align-items:center;justify-content:center;gap:6px;min-height:38px;padding:0 20px;border:1px solid color-mix(in srgb,var(--rating-color, var(--accent)) 24%,transparent);border-radius:var(--radius-pill);background:color-mix(in srgb,var(--rating-color, var(--accent)) 12%,var(--bg-elevated));color:var(--rating-color, var(--text-primary));cursor:pointer;min-width:98px;transition:background .12s,color .12s,transform .12s}.review-rating-btn:hover{background:color-mix(in srgb,var(--rating-color, var(--accent)) 18%,var(--bg-elevated))}.rating-number{font-size:.78rem;font-weight:700;color:var(--rating-color, var(--accent))}.rating-label{font-size:11px;color:inherit;text-align:center;font-weight:600}.review-finished{justify-content:center}.review-finished-content{text-align:center}.review-finished h2{font-size:24px;margin-bottom:8px}.review-finished p{color:var(--text-muted);margin-bottom:24px}.review-card{animation:card-enter .2s ease}@keyframes card-enter{0%{opacity:0;transform:translate(30px)}to{opacity:1;transform:translate(0)}}@keyframes headerTimerSlideIn{0%{opacity:0;transform:scale(.9) translateY(-4px)}to{opacity:1;transform:scale(1) translateY(0)}}@media(max-width:640px){.review-card{padding:28px 24px;min-height:240px}.review-ratings-row{gap:6px}.review-rating-btn{min-width:86px;padding:0 14px}}.fc-stats{display:flex;flex-direction:column;gap:var(--space-4)}.fc-stats-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:var(--space-3)}.fc-metric-card{display:flex;align-items:center;gap:var(--space-3);padding:var(--space-3) var(--space-4);background:var(--bg-elevated);border-radius:var(--radius-lg);box-shadow:var(--shadow)}.fc-metric-icon{width:36px;height:36px;border-radius:var(--radius-md);background:var(--accent-subtle);display:flex;align-items:center;justify-content:center;color:var(--accent);flex-shrink:0}.fc-metric-info{display:flex;flex-direction:column;gap:2px}.fc-metric-value{font-size:var(--text-lg);font-weight:800;color:var(--text-primary);line-height:1}.fc-metric-label{font-size:var(--text-xs);color:var(--text-muted);font-weight:600}.page-stack{display:flex;flex-direction:column;gap:24px}.page-hero{background:linear-gradient(135deg,var(--accent-soft),var(--bg-elevated) 70%);border-radius:16px;box-shadow:var(--shadow);padding:24px 28px}.surface-card:hover{box-shadow:var(--shadow-lg);transform:translateY(-1px)}.surface-card[data-variant=tinted]{background:linear-gradient(145deg,color-mix(in srgb,var(--accent-soft) 78%,var(--bg-elevated)) 0%,var(--bg-elevated) 100%)}.surface-card[data-variant=soft]{background:linear-gradient(180deg,color-mix(in srgb,var(--bg-subtle) 92%,var(--bg-elevated)) 0%,var(--bg-subtle) 100%)}.tabs-shell{display:flex;gap:4px;background:var(--bg-subtle);padding:3px;border-radius:var(--radius-pill);width:fit-content}.tab-button{padding:6px 16px;border-radius:var(--radius-pill);color:var(--text-tertiary);font-size:.8rem;font-weight:500;transition:all .18s cubic-bezier(.16,1,.3,1)}.tab-button.active{background:var(--bg-elevated);color:var(--text-primary);box-shadow:var(--shadow-sm);font-weight:600}.dashboard-bento-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;grid-template-areas:"hero hero hero hero" "week week week week" "review review flash streak" "review review noq noq" "errors-open errors errors errors"}.bento-hero{grid-area:hero}.bento-streak{grid-area:streak}.bento-flash{grid-area:flash}.bento-review{grid-area:review}.bento-week{grid-area:week}.bento-coverage{grid-area:coverage}.bento-queue{grid-area:queue}.bento-errors-open{grid-area:errors-open}.bento-noq{grid-area:noq}.bento-errors{grid-area:errors}.dash-pull-shell{overscroll-behavior-y:contain}.dash-pull-indicator{display:flex;align-items:center;justify-content:center;gap:8px;overflow:hidden;color:var(--text-tertiary);font-size:var(--text-xs);font-weight:600;transition:height var(--transition),opacity var(--transition)}.dash-pull-indicator svg{flex-shrink:0}.dash-spin{animation:spin 1s linear infinite}@media(max-width:1200px){.dashboard-bento-grid{grid-template-columns:repeat(2,minmax(0,1fr));grid-template-areas:"hero hero" "week week" "review review" "streak flash" "noq noq" "errors-open errors"}}@media(max-width:640px){.page-stack{gap:20px}.page-hero{padding:20px}.dashboard-bento-grid{grid-template-columns:1fr;grid-template-areas:"hero" "week" "review" "streak" "flash" "noq" "errors-open" "errors"}.surface-card{border-radius:14px}}@media(max-width:900px){.planner-split-layout{flex-direction:column}.planner-split-layout>div:first-child{border-right:none;border-bottom:1px solid var(--border)}}.planner-toolbar-control,.planner-toolbar-chip,.planner-toolbar-select{transition:background .16s cubic-bezier(.16,1,.3,1),border-color .16s cubic-bezier(.16,1,.3,1),color .16s cubic-bezier(.16,1,.3,1),box-shadow .16s cubic-bezier(.16,1,.3,1),transform .16s cubic-bezier(.16,1,.3,1)}.planner-toolbar-shell{flex-shrink:0;display:flex;align-items:center;gap:6px;padding:8px 20px;background:color-mix(in srgb,var(--bg-elevated) 92%,var(--surface-container-low));border-bottom:1px solid var(--border-subtle);flex-wrap:wrap;box-shadow:inset 0 -1px 0 var(--border-ghost)}.planner-toolbar-group{display:flex;align-items:center;gap:2px}.planner-toolbar-period{font-size:.85rem;font-weight:700;color:var(--text-primary);letter-spacing:-.01em;margin-left:4px}.planner-toolbar-control{display:inline-flex;align-items:center;justify-content:center;width:30px;height:30px;border-radius:8px;border:1px solid var(--border-subtle);background:var(--bg-elevated);color:var(--text-secondary);cursor:pointer;font-family:inherit}.planner-toolbar-control-primary{width:auto;padding:0 10px;border:1px solid var(--accent);background:var(--accent);color:#fff;font-size:.7rem;font-weight:700}.planner-toolbar-chip{display:inline-flex;align-items:center;justify-content:center;gap:6px;height:28px;padding:0 10px;border-radius:var(--radius-pill);border:1px solid var(--border-ghost);background:var(--bg-elevated);color:var(--text-secondary);font-size:.72rem;font-weight:600;cursor:pointer;font-family:inherit}.planner-toolbar-chip-compact{height:26px;padding:0 8px;font-size:.68rem}.planner-toolbar-chip[data-active=true]{border-color:var(--accent-border);background:var(--accent-soft);color:var(--accent);font-weight:700;box-shadow:var(--shadow-sm)}.planner-toolbar-separator{width:1px;height:22px;background:var(--border-subtle);margin:0 4px;flex-shrink:0}.planner-toolbar-label{font-size:.62rem;font-weight:700;text-transform:uppercase;letter-spacing:.06em;color:var(--text-secondary)}.planner-toolbar-select{height:30px;min-width:170px;font-size:.78rem;background:var(--bg-elevated);cursor:pointer;padding:0 8px;border-color:var(--border-subtle);border-radius:8px;font-weight:600;font-family:inherit}.planner-toolbar-pill{display:inline-flex;align-items:center;height:24px;padding:0 8px;border-radius:var(--radius-pill);font-size:.68rem;font-weight:700;border:1px solid var(--border-ghost);background:var(--surface-container-low);color:var(--text-secondary)}.planner-toolbar-pill-accent{background:var(--accent-soft);color:var(--accent);border-color:var(--accent-border)}.planner-toolbar-search{height:28px;padding:0 10px;border-radius:var(--radius-pill);border:1px solid var(--border-ghost);background:var(--bg-elevated);color:var(--text-primary);font-size:.72rem;font-family:inherit;width:160px;min-width:100px;outline:none}.planner-toolbar-search:focus{border-color:var(--accent-border);box-shadow:0 0 0 2px var(--accent-soft)}.planner-toolbar-search::placeholder{color:var(--text-tertiary)}.planner-schedule-selector{display:flex;align-items:center;gap:var(--space-2);padding-bottom:var(--space-2);border-bottom:1px solid var(--border-ghost);margin-bottom:var(--space-1)}.planner-schedule-selector select{flex:1;height:30px;padding:0 8px;border-radius:8px;border:1px solid var(--border-subtle);background:var(--bg-elevated);color:var(--text-primary);font-size:.78rem;font-weight:600;font-family:inherit;cursor:pointer}.planner-schedule-selector button{display:inline-flex;align-items:center;justify-content:center;width:30px;height:30px;border-radius:8px;border:1px solid var(--border-subtle);background:var(--bg-elevated);color:var(--text-secondary);cursor:pointer;flex-shrink:0}.planner-toolbar-control:hover,.planner-toolbar-select:hover{border-color:var(--border-subtle);background:var(--bg-subtle);color:var(--text-primary)}.planner-toolbar-control:active,.planner-toolbar-chip:active{transform:translateY(1px)}.planner-toolbar-control.planner-toolbar-control-primary:hover{background:var(--accent-hover);border-color:var(--accent-hover);color:#fff;box-shadow:0 8px 18px #c4623a2e}.planner-toolbar-chip:hover{border-color:var(--border-subtle);background:var(--bg-subtle);color:var(--text-primary)}.planner-toolbar-chip[data-active=true]{box-shadow:inset 0 0 0 1px var(--accent-border)}.planner-toolbar-chip[data-active=true]:hover{background:var(--accent-soft);border-color:var(--accent-border);color:var(--accent)}.skip-link{position:absolute;top:-100%;left:0;background:var(--accent);color:var(--text-inverse);padding:8px 16px;z-index:9999;font-weight:600;border-radius:0 0 8px;text-decoration:none}.skip-link:focus{top:0}@keyframes pulse-highlight{0%,to{box-shadow:0 0 0 0 var(--accent-soft)}50%{box-shadow:0 0 0 6px color-mix(in srgb,var(--accent-soft) 0%,transparent)}}.pulse-card{animation:pulse-highlight 2s ease-in-out infinite}.class-card{position:relative;width:100%;min-width:0;max-width:100%;border-radius:var(--radius-md);border:1px solid transparent;padding:var(--space-3);cursor:pointer;overflow:hidden;transition:background .18s cubic-bezier(.16,1,.3,1),box-shadow .18s cubic-bezier(.16,1,.3,1),transform .18s cubic-bezier(.16,1,.3,1);-webkit-user-select:none;user-select:none;box-shadow:var(--shadow)}.class-card .card-title{font-size:var(--text-sm);font-weight:600;color:var(--text-primary);line-height:1.4;margin-bottom:var(--space-1)}.class-card .card-subtitle{font-size:var(--text-xs);color:var(--text-muted);line-height:1.3}.class-card:hover{transform:translateY(-1px);box-shadow:var(--shadow-lg)}.class-card[data-state=planned]{background:var(--card-planned-bg);color:var(--card-planned-text)}.class-card[data-state=seen]{background:var(--card-seen-bg);color:var(--card-seen-text)}.class-card[data-state=good]{background:var(--card-good-bg);color:var(--card-good-text)}.class-card[data-state=warn]{background:var(--card-good-bg);color:var(--card-good-text);box-shadow:var(--shadow),4px 0 12px -2px #c18b3547,inset -3px 0 0 0 var(--card-warn-glow)}.class-card[data-state=bad]{background:var(--card-good-bg);color:var(--card-good-text);box-shadow:var(--shadow),4px 0 12px -2px #ba5a4247,inset -3px 0 0 0 var(--card-bad-glow)}.theme-card{position:relative;border-radius:var(--radius-lg);background:var(--bg-elevated);padding:var(--space-4);padding-bottom:calc(var(--space-4) + 5px);cursor:pointer;transition:all .18s cubic-bezier(.16,1,.3,1);overflow:hidden;box-shadow:var(--shadow)}.class-card strong,.theme-card strong{color:var(--text-primary)}.theme-card:hover{box-shadow:var(--shadow-lg);transform:translateY(-1px)}.theme-card:after{content:"";position:absolute;bottom:0;left:0;right:0;height:3px;background:var(--bg-muted);border-radius:0 0 var(--radius-lg) var(--radius-lg)}.theme-card:before{content:"";position:absolute;bottom:0;left:0;height:3px;width:100%;border-radius:0 0 0 var(--radius-lg);z-index:1;transform:scaleX(var(--progress, 0));transform-origin:left;transition:transform .5s ease}.theme-card[data-accuracy=good]:before{background:var(--success)}.theme-card[data-accuracy=warn]{box-shadow:var(--shadow),4px 0 12px -2px #c18b3538,inset -3px 0 0 0 var(--card-warn-glow)}.theme-card[data-accuracy=warn]:before{background:var(--warn)}.theme-card[data-accuracy=bad]{box-shadow:var(--shadow),4px 0 12px -2px #ba5a4238,inset -3px 0 0 0 var(--card-bad-glow)}.theme-card[data-accuracy=bad]:before{background:var(--danger)}.theme-card[data-accuracy=none]:before{width:0}.class-card.dragging{opacity:.8;transform:scale(1.02) rotate(1deg);box-shadow:var(--shadow-panel);cursor:grabbing}.class-card[data-drag-over=true]{background:var(--accent-subtle);box-shadow:var(--shadow),0 0 0 2px var(--accent)}
