:root{font-family:system-ui,-apple-system,Segoe UI,Helvetica,Arial,sans-serif;line-height:1.5;font-weight:400;color-scheme:light;color:#000;background-color:#fff;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}*{box-sizing:border-box;margin:0;padding:0}body{margin:0;min-width:320px;min-height:100vh;background:#f8f8f8;overflow:hidden}#root{height:100vh;width:100vw}h1,h2,h3,h4,h5,h6{font-weight:700;line-height:1.2}button{border-radius:8px;border:2px solid #000000;padding:.6em 1.2em;font-size:1em;font-weight:500;font-family:inherit;background-color:#fff;color:#000;cursor:pointer;transition:all .15s ease}button:hover{background-color:#f0f0f0;transform:translateY(-1px)}button:active{transform:translateY(0)}button:focus-visible{outline:3px solid #000000;outline-offset:2px}.halcyon-bench{background-color:var(--bench-bg-color, #f5f5f5)}[data-theme=calm] .halcyon-bench{background-color:var(--bench-bg-color, #f4e2c4)}@keyframes focus-ring-pulse{0%,to{box-shadow:0 0 0 3px #3b82f680,0 0 20px #3b82f64d}50%{box-shadow:0 0 0 3px #3b82f6cc,0 0 30px #3b82f680}}:root{--halcyon-black: #000000;--halcyon-white: #ffffff;--halcyon-grey-100: #f8f8f8;--halcyon-grey-200: #f0f0f0;--halcyon-grey-300: #e0e0e0;--halcyon-grey-400: #cccccc;--halcyon-grey-500: #999999;--halcyon-grey-600: #666666;--halcyon-grey-700: #333333;--color-bg: var(--halcyon-white);--color-fg: var(--halcyon-black);--color-border: var(--halcyon-black);--color-border-subtle: var(--halcyon-grey-300);--color-surface: var(--halcyon-white);--color-surface-raised: var(--halcyon-white);--color-surface-subtle: var(--halcyon-grey-100);--color-text-primary: var(--halcyon-black);--color-text-secondary: var(--halcyon-grey-600);--color-text-tertiary: var(--halcyon-grey-500);--color-shadow: rgba(0, 0, 0, .1);--signal-background: 1px;--signal-normal: 2px;--signal-loud: 3px;--signal-critical: 4px;--energy-high-focus: "⚡";--energy-medium: "○";--energy-low-energy: "☁";--energy-social: "👥";--bench-bg-color: #f5f5f5;--bench-texture-visible: 1}[data-theme=calm]{--halcyon-background: #f2f0e3;--halcyon-foreground: #2e2e2e;--halcyon-primary: #f76f53;--halcyon-accent: #e6e4d7;--halcyon-card: #f7f6ee;--halcyon-muted: #2e2e2e0b;--halcyon-border: #eae9e2;--halcyon-secondary: #e6e4d7;--color-bg: var(--halcyon-background);--color-fg: var(--halcyon-foreground);--color-surface: var(--halcyon-card);--color-surface-raised: var(--halcyon-white);--color-surface-subtle: var(--halcyon-accent);--color-border: var(--halcyon-foreground);--color-border-subtle: var(--halcyon-border);--color-text-primary: var(--halcyon-foreground);--color-text-secondary: #595959;--color-text-tertiary: #737373;--color-accent: var(--halcyon-primary);--color-accent-foreground: var(--halcyon-white);--color-shadow: rgba(46, 46, 46, .08);--bench-bg-color: #f4e2c4;--bench-texture-visible: 1}@media(prefers-contrast:high){:root{--color-border: #000000;--color-text-primary: #000000;--color-bg: #ffffff;--signal-normal: 3px}[data-theme=calm]{--color-bg: var(--halcyon-white);--color-surface-subtle: var(--halcyon-grey-100)}}@media(prefers-color-scheme:light)and (luminosity:high){[data-theme=calm]{--color-bg: var(--halcyon-white);--color-surface-subtle: var(--halcyon-grey-100)}}[data-theme=calm] img,[data-theme=calm] .emoji,[data-theme=calm] .landmark-icon{filter:saturate(.6) brightness(.98)}[data-theme=calm] [data-zone-type=work]{--zone-tint: var(--accent-work)}[data-theme=calm] [data-zone-type=health]{--zone-tint: var(--accent-health)}[data-theme=calm] [data-zone-type=creative]{--zone-tint: var(--accent-creative)}[data-theme=calm] [data-zone-type=social]{--zone-tint: var(--accent-social)}[data-theme=calm] .zone-background{background-color:var(--zone-tint, var(--halcyon-grey-100));opacity:.3}@media(update:slow){*{animation-duration:.3s!important;transition-duration:.2s!important}}@media print{:root,[data-theme=calm]{--color-bg: white;--color-fg: black;--color-border: black;--color-text-primary: black}.zone-background{background:#fff!important}}.ink-toolbar{position:fixed;top:20px;left:50%;transform:translate(-50%);display:flex;align-items:center;gap:8px;padding:12px 16px;background:#fffffff2;border:2px solid #111;border-radius:12px;box-shadow:0 4px 12px #0000001a;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);z-index:1000;font-family:system-ui,-apple-system,sans-serif;font-size:14px}.ink-toolbar-section{display:flex;align-items:center;gap:6px}.ink-toolbar-divider{width:1px;height:24px;background:#ccc;margin:0 4px}.ink-tool-button{display:flex;align-items:center;justify-content:center;width:36px;height:36px;padding:0;background:transparent;border:2px solid transparent;border-radius:6px;font-size:18px;cursor:pointer;transition:all .15s ease}.ink-tool-button:hover{background:#0000000d}.ink-tool-button.active{background:#111;border-color:#111;filter:grayscale(1) brightness(10)}.ink-tool-button:active{transform:scale(.95)}.ink-slider-group{display:flex;align-items:center;gap:6px;padding:0 8px}.ink-slider-group label{font-size:12px;color:#666;white-space:nowrap}.ink-slider{width:80px;height:4px;-webkit-appearance:none;appearance:none;background:#ddd;border-radius:2px;outline:none}.ink-slider::-webkit-slider-thumb{-webkit-appearance:none;appearance:none;width:14px;height:14px;background:#111;border-radius:50%;cursor:pointer}.ink-slider::-moz-range-thumb{width:14px;height:14px;background:#111;border-radius:50%;cursor:pointer;border:none}.ink-value{font-size:11px;color:#666;min-width:35px;text-align:right}.ink-color-picker input[type=color]{width:36px;height:36px;border:2px solid #111;border-radius:6px;cursor:pointer;padding:0;background:none}.ink-color-picker input[type=color]::-webkit-color-swatch-wrapper{padding:0}.ink-color-picker input[type=color]::-webkit-color-swatch{border:none;border-radius:4px}@media(prefers-color-scheme:dark){.ink-toolbar{background:#1e1e1ef2;border-color:#fff}.ink-toolbar-divider{background:#555}.ink-tool-button.active{background:#fff;border-color:#fff;filter:invert(1)}.ink-slider{background:#444}.ink-slider::-webkit-slider-thumb{background:#fff}.ink-slider::-moz-range-thumb{background:#fff}.ink-color-picker input[type=color]{border-color:#fff}}.primitives-palette{position:fixed;left:20px;bottom:20px;z-index:1000;--cave-bg: #e8d5c4;--cave-dark: #3d2817;--cave-border: #8b6f47;--cave-shadow: rgba(61, 40, 23, .3)}.primitives-toggle{width:60px;height:60px;border-radius:50%;background:var(--cave-bg);border:3px solid var(--cave-dark);box-shadow:0 4px 12px var(--cave-shadow),inset 0 1px 3px #ffffff4d;cursor:pointer;transition:all .3s cubic-bezier(.4,0,.2,1);display:flex;align-items:center;justify-content:center;position:relative;overflow:hidden}.primitives-toggle:hover{transform:scale(1.05);box-shadow:0 6px 16px var(--cave-shadow),inset 0 1px 3px #ffffff80}.primitives-toggle:active{transform:scale(.95)}.primitives-palette.expanded .primitives-toggle{background:var(--cave-dark);border-color:var(--cave-border)}.primitives-palette.expanded .primitives-toggle .primitive-icon{color:var(--cave-bg)}.primitives-grid{position:absolute;bottom:70px;left:0;display:grid;grid-template-columns:repeat(2,1fr);gap:8px;padding:12px;background:var(--cave-bg);border:3px solid var(--cave-dark);border-radius:16px;box-shadow:0 8px 24px var(--cave-shadow);animation:primitives-fade-in .2s ease-out;min-width:160px}@keyframes primitives-fade-in{0%{opacity:0;transform:translateY(10px) scale(.95)}to{opacity:1;transform:translateY(0) scale(1)}}.primitive-button{display:flex;flex-direction:column;align-items:center;gap:4px;padding:12px 8px;background:#fff6;border:2px solid var(--cave-border);border-radius:8px;cursor:pointer;transition:all .2s ease;position:relative;overflow:hidden}.primitive-button:hover{background:#ffffffb3;border-color:var(--cave-dark);transform:translateY(-2px)}.primitive-button.active{background:var(--cave-dark);border-color:var(--cave-dark)}.primitive-button.active .primitive-icon{color:var(--cave-bg);transform:scale(1.1)}.primitive-button.active .primitive-label{color:var(--cave-bg);font-weight:700}.primitive-icon{font-size:24px;line-height:1;color:var(--cave-dark);transition:all .2s ease;filter:contrast(1.2) brightness(.95)}.cave-art{text-shadow:1px 1px 0 rgba(139,111,71,.3),-1px -1px 0 rgba(255,255,255,.5)}.primitive-label{font-size:10px;font-weight:600;text-transform:uppercase;letter-spacing:.5px;color:var(--cave-dark);font-family:system-ui,-apple-system,sans-serif;transition:all .2s ease}.cave-texture{position:absolute;inset:0;pointer-events:none;opacity:.05;background-image:repeating-linear-gradient(45deg,transparent,transparent 10px,rgba(61,40,23,.1) 10px,rgba(61,40,23,.1) 11px);border-radius:inherit}@media(prefers-color-scheme:dark){.primitives-palette{--cave-bg: #2a1f17;--cave-dark: #e8d5c4;--cave-border: #6b5539;--cave-shadow: rgba(0, 0, 0, .5)}.primitive-button{background:#0000004d}.primitive-button:hover{background:#00000080}.primitive-button.active{background:var(--cave-dark)}.primitive-button.active .primitive-icon,.primitive-button.active .primitive-label{color:var(--cave-bg)}}@media(prefers-reduced-motion:reduce){.primitives-toggle,.primitive-button{transition:none}.primitives-grid{animation:none}}@media(max-width:768px){.primitives-palette{left:10px;bottom:10px}.primitives-toggle{width:50px;height:50px}.primitives-grid{bottom:60px;gap:6px;padding:10px;min-width:140px}.primitive-button{padding:10px 6px}.primitive-icon{font-size:20px}.primitive-label{font-size:9px}}.landmark-navigator{display:flex;align-items:center;gap:12px;padding:12px 16px;background:var(--primary-background);border:2px solid var(--primary-border);border-radius:12px;box-shadow:0 4px 12px #0000001a}.landmark-label{font-size:13px;font-weight:600;color:var(--secondary);font-family:var(--sans-serif-font);white-space:nowrap}.landmark-buttons{display:flex;gap:8px;align-items:center}.landmark-button{display:flex;align-items:center;gap:6px;padding:6px 12px;border:2px solid var(--primary-border);background:var(--primary-background);border-radius:8px;cursor:pointer;font-family:var(--sans-serif-font);font-size:13px;font-weight:500;transition:all .15s;white-space:nowrap}.landmark-button:hover{transform:translateY(-2px);box-shadow:0 4px 8px #00000026;background:var(--secondary-background)}.landmark-button:active{transform:translateY(0)}.landmark-icon{font-size:16px;display:flex;align-items:center;justify-content:center}.landmark-name{color:var(--primary)}:root{--bench-bg-color: #f4e2c4;--bench-bg-image: url(/osb-pattern.svg);--bench-bg-size: 160px 160px;--bench-mono-bg-color: #f5f5f5;--bench-mono-splinter-1: rgba(0, 0, 0, .06);--bench-mono-splinter-2: rgba(0, 0, 0, .04)}.bench-background{position:absolute;inset:0;pointer-events:none;z-index:-1;transition:opacity .15s ease-out;opacity:var(--bench-texture-opacity, 1)}.bench-background--osb.bench-background--color{background-color:var(--bench-bg-color);background-image:var(--bench-bg-image);background-size:var(--bench-bg-size);background-repeat:repeat}.bench-background--osb.bench-background--mono{background-color:var(--bench-mono-bg-color);background-image:repeating-linear-gradient(18deg,var(--bench-mono-splinter-1) 0px,var(--bench-mono-splinter-1) 1px,transparent 1px,transparent 7px),repeating-linear-gradient(-13deg,var(--bench-mono-splinter-2) 0px,var(--bench-mono-splinter-2) 1px,transparent 1px,transparent 9px);background-size:var(--bench-bg-size)}.bench-background--grid.bench-background--color{background-color:var(--bench-bg-color);background-image:radial-gradient(circle,rgba(0,0,0,.06) 1px,transparent 1px);background-size:24px 24px}.bench-background--grid.bench-background--mono{background-color:#fff;background-image:radial-gradient(circle,rgba(0,0,0,.08) 1px,transparent 1px);background-size:24px 24px}.bench-background--plain.bench-background--color{background-color:var(--bench-bg-color)}.bench-background--plain.bench-background--mono{background-color:#fff}@media(prefers-contrast:high){.bench-background--osb,.bench-background--grid{background-image:none!important;background-color:#fff!important}}@media(prefers-reduced-motion:reduce){.bench-background{transition:none}}@media print{.bench-background{background:#fff!important;background-image:none!important}}.reminder-picker-overlay{position:fixed;inset:0;background:#00000080;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:2000;display:flex;align-items:center;justify-content:center}.reminder-picker{background:var(--color-surface, #ffffff);border:3px solid var(--color-border, #000);border-radius:12px;padding:20px;width:340px;max-width:90vw;max-height:80vh;overflow-y:auto;box-shadow:6px 6px #0003}.reminder-picker-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:12px}.reminder-picker-header h3{margin:0;font-size:18px;font-weight:700}.reminder-picker-close{background:none;border:none;font-size:24px;cursor:pointer;padding:0 4px;color:var(--color-text-secondary, #666);line-height:1}.reminder-picker-close:hover{color:var(--color-text, #000)}.reminder-picker-card-name{padding:8px 12px;background:var(--color-surface-subtle, #f5f5f5);border-radius:6px;margin-bottom:16px;font-size:14px;color:var(--color-text-secondary, #666)}.reminder-picker-card-name strong{color:var(--color-text, #000)}.reminder-picker-existing{margin-bottom:16px;padding-bottom:16px;border-bottom:1px solid var(--color-border-light, #eee)}.reminder-picker-existing h4{margin:0 0 8px;font-size:13px;font-weight:600;color:var(--color-text-secondary, #666);text-transform:uppercase;letter-spacing:.5px}.reminder-item{display:flex;align-items:center;justify-content:space-between;padding:8px 10px;background:#fff3cd;border-radius:6px;margin-bottom:6px}.reminder-time{font-size:13px;font-weight:500}.reminder-cancel{background:none;border:none;font-size:18px;cursor:pointer;color:#dc3545;padding:0 4px;line-height:1}.reminder-cancel:hover{color:#a71d2a}.reminder-picker-quick h4{margin:0 0 10px;font-size:13px;font-weight:600;color:var(--color-text-secondary, #666);text-transform:uppercase;letter-spacing:.5px}.reminder-quick-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px}.reminder-quick-option{padding:10px 12px;background:var(--color-surface-subtle, #f5f5f5);border:2px solid var(--color-border, #ddd);border-radius:8px;font-size:13px;font-weight:500;cursor:pointer;transition:all .15s ease}.reminder-quick-option:hover{background:var(--color-primary, #000);color:#fff;border-color:var(--color-primary, #000)}.reminder-picker-custom{margin-top:16px;padding-top:16px;border-top:1px solid var(--color-border-light, #eee)}.reminder-custom-toggle{background:none;border:none;font-size:14px;font-weight:500;color:var(--color-primary, #3b82f6);cursor:pointer;padding:0}.reminder-custom-toggle:hover{text-decoration:underline}.reminder-custom-form{margin-top:12px}.reminder-custom-row{display:flex;gap:8px;margin-bottom:10px}.reminder-custom-row input{flex:1;padding:8px 10px;border:2px solid var(--color-border, #ddd);border-radius:6px;font-size:14px}.reminder-custom-message{width:100%;padding:8px 10px;border:2px solid var(--color-border, #ddd);border-radius:6px;font-size:14px;margin-bottom:10px}.reminder-custom-submit{width:100%;padding:10px;background:var(--color-primary, #3b82f6);color:#fff;border:none;border-radius:6px;font-size:14px;font-weight:600;cursor:pointer;transition:background .15s ease}.reminder-custom-submit:hover:not(:disabled){background:#2563eb}.reminder-custom-submit:disabled{background:#ccc;cursor:not-allowed}@media(prefers-color-scheme:dark){.reminder-picker{background:#1a1a1a;border-color:#333;color:#e5e5e5}.reminder-picker-card-name{background:#2a2a2a;color:#999}.reminder-picker-card-name strong{color:#fff}.reminder-item{background:#3a3520}.reminder-quick-option{background:#2a2a2a;border-color:#444;color:#e5e5e5}.reminder-quick-option:hover{background:#3b82f6;border-color:#3b82f6}.reminder-custom-row input,.reminder-custom-message{background:#2a2a2a;border-color:#444;color:#e5e5e5}.reminder-picker-existing h4,.reminder-picker-quick h4{color:#999}}.card-context-menu{position:fixed;background:var(--color-surface, #fff);border:2px solid var(--color-border, #000);border-radius:8px;box-shadow:4px 4px #00000026;z-index:3000;min-width:180px;padding:6px;animation:context-menu-appear .1s ease-out}@keyframes context-menu-appear{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}.context-menu-item{display:flex;align-items:center;gap:10px;width:100%;padding:10px 12px;background:none;border:none;border-radius:6px;font-size:14px;font-weight:500;text-align:left;cursor:pointer;color:var(--color-text, #000);transition:background .1s ease}.context-menu-item:hover{background:var(--color-surface-subtle, #f5f5f5)}.context-menu-item.danger{color:#dc3545}.context-menu-item.danger:hover{background:#fee2e2}.context-menu-icon{font-size:16px;width:20px;text-align:center}.context-menu-badge{margin-left:auto;background:#f59e0b;color:#fff;font-size:11px;font-weight:700;padding:2px 6px;border-radius:10px;min-width:18px;text-align:center}.context-menu-divider{height:1px;background:var(--color-border-light, #eee);margin:6px 0}@media(prefers-color-scheme:dark){.card-context-menu{background:#1a1a1a;border-color:#333}.context-menu-item:hover{background:#2a2a2a}.context-menu-item.danger:hover{background:#3a1a1a}.context-menu-divider{background:#333}}.miniapps-palette{position:relative;z-index:1000}.miniapps-toggle{width:48px;height:48px;border-radius:50%;border:2px solid var(--primary-border);background:var(--primary-background);cursor:pointer;display:flex;align-items:center;justify-content:center;font-size:20px;transition:transform .2s,box-shadow .2s;box-shadow:0 2px 8px #0000001a}.miniapps-toggle:hover{transform:scale(1.05);box-shadow:0 4px 12px #00000026}.miniapps-toggle:active{transform:scale(.95)}.miniapps-grid{position:absolute;bottom:60px;left:0;display:grid;grid-template-columns:1fr;gap:8px;padding:12px;background:var(--primary-background);border:2px solid var(--primary-border);border-radius:12px;box-shadow:0 4px 16px #00000026;min-width:140px;animation:slideUp .2s ease-out}@keyframes slideUp{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.miniapp-button{display:flex;align-items:center;gap:8px;padding:8px 12px;border:1px solid var(--primary-border);background:var(--primary-background);border-radius:8px;cursor:pointer;font-family:var(--sans-serif-font);font-size:13px;transition:all .15s;text-align:left}.miniapp-button:hover{background:var(--secondary-background);border-color:var(--accent-color);transform:translate(4px)}.miniapp-button:active{transform:scale(.95) translate(4px)}.miniapp-icon{font-size:18px;display:flex;align-items:center;justify-content:center}.miniapp-label{color:var(--primary);font-weight:500;white-space:nowrap}.sync-indicator{display:flex;align-items:center;gap:6px;padding:6px 10px;background:#ffffffe6;border:1px solid rgba(0,0,0,.1);border-radius:16px;font-size:11px;color:#666;cursor:pointer;transition:all .2s ease;box-shadow:0 1px 3px #0000001a}.sync-indicator:hover:not(:disabled){background:#fff;box-shadow:0 2px 6px #00000026}.sync-indicator:disabled{cursor:default}.sync-dot{width:8px;height:8px;border-radius:50%;transition:background-color .3s ease}.sync-dot.syncing{animation:pulse 1s ease-in-out infinite}@keyframes pulse{0%,to{opacity:1;transform:scale(1)}50%{opacity:.6;transform:scale(1.2)}}.sync-text{white-space:nowrap}.command-palette-overlay{position:fixed;inset:0;background:#00000080;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:3000;display:flex;align-items:flex-start;justify-content:center;padding-top:15vh}.command-palette{background:#fff;border:2px solid #111;border-radius:12px;width:100%;max-width:560px;box-shadow:0 20px 60px #0000004d;overflow:hidden}.command-input{width:100%;padding:16px 20px;font-size:1.1rem;border:none;border-bottom:1px solid #eee;outline:none;font-family:inherit}.command-input::placeholder{color:#999}.command-list{max-height:400px;overflow-y:auto}.command-empty{padding:24px;text-align:center;color:#888;font-size:.95rem}.command-item{display:flex;align-items:center;gap:12px;padding:12px 20px;cursor:pointer;transition:background .1s}.command-item:hover,.command-item.selected{background:#f5f5f5}.command-item.selected{background:#e8f4ff}.command-category{font-size:.7rem;font-weight:600;text-transform:uppercase;letter-spacing:.05em;color:#888;background:#f0f0f0;padding:3px 8px;border-radius:4px;min-width:60px;text-align:center}.command-label{flex:1;font-size:.95rem;color:#333}.command-shortcut{display:inline-block;padding:4px 8px;background:#f5f5f5;border:1px solid #ddd;border-radius:4px;font-family:monospace;font-size:.8rem;font-weight:500;color:#666;min-width:24px;text-align:center}.command-footer{display:flex;gap:16px;padding:12px 20px;background:#f8f8f8;border-top:1px solid #eee;font-size:.8rem;color:#888}.command-footer kbd{display:inline-block;padding:2px 6px;background:#fff;border:1px solid #ddd;border-radius:3px;font-family:monospace;font-size:.75rem;margin-right:4px}@media(prefers-color-scheme:dark){.command-palette{background:#1a1a1a;border-color:#444}.command-input{background:#1a1a1a;color:#fff;border-bottom-color:#333}.command-item:hover,.command-item.selected{background:#2a2a2a}.command-item.selected{background:#1e3a5f}.command-category{background:#333;color:#aaa}.command-label{color:#eee}.command-shortcut{background:#333;border-color:#444;color:#aaa}.command-footer{background:#222;border-top-color:#333}.command-footer kbd{background:#333;border-color:#444}}.keyboard-guide-overlay{position:fixed;inset:0;background:#0009;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:2000;display:flex;align-items:center;justify-content:center;animation:fadeIn .15s ease-out}.keyboard-guide{background:var(--color-bg, #fff);border:3px solid var(--color-text, #000);border-radius:12px;padding:2rem;max-width:700px;max-height:85vh;overflow-y:auto;box-shadow:8px 8px #0003;animation:slideUp .2s ease-out}@keyframes slideUp{0%{transform:translateY(20px);opacity:0}to{transform:translateY(0);opacity:1}}.keyboard-guide-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1.5rem}.keyboard-guide h2{margin:0;font-size:2rem;font-weight:700;letter-spacing:-.02em}.keyboard-guide-close-btn{background:none;border:2px solid #000;border-radius:6px;width:32px;height:32px;font-size:18px;cursor:pointer;display:flex;align-items:center;justify-content:center}.keyboard-guide-close-btn:hover{background:#f0f0f0}.keyboard-sections{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:2rem;margin-bottom:2rem}.keyboard-guide section{display:flex;flex-direction:column;gap:.75rem}.keyboard-guide h3{margin:0 0 .5rem;font-size:1rem;font-weight:600;text-transform:uppercase;letter-spacing:.05em;opacity:.6;border-bottom:2px solid var(--color-border, #333);padding-bottom:.375rem}.shortcut-row{display:flex;align-items:center;gap:1rem;padding:.375rem 0}.shortcut-keys{display:flex;gap:.375rem;min-width:100px}.shortcut-desc{flex:1;font-size:.9375rem;line-height:1.4}kbd{display:inline-flex;align-items:center;justify-content:center;padding:.25rem .5rem;min-width:32px;height:28px;background:var(--color-bg, #fff);border:2px solid var(--color-text, #000);border-radius:4px;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,monospace;font-size:.875rem;font-weight:600;box-shadow:0 2px 0 var(--color-text, #000);text-align:center}.keyboard-guide-footer{display:flex;flex-direction:column;gap:1rem;padding-top:1.5rem;border-top:2px solid var(--color-border, #333)}.keyboard-guide-close{padding:.75rem 1.5rem;background:var(--color-text, #000);color:var(--color-bg, #fff);border:none;border-radius:6px;cursor:pointer;font-size:1rem;font-weight:600;transition:all .12s ease-out;align-self:flex-start}.keyboard-guide-close:hover{transform:translateY(-2px);box-shadow:0 4px 8px #0003}.keyboard-guide-close:active{transform:translateY(0);box-shadow:0 2px 4px #0003}.keyboard-guide-hint{font-size:.875rem;opacity:.7;margin:0;font-style:italic}:root[data-theme=dark] .keyboard-guide{background:var(--color-bg, #1a1a1a);border-color:var(--color-text, #fff)}:root[data-theme=dark] kbd{background:var(--color-bg, #1a1a1a);border-color:var(--color-text, #fff);box-shadow:0 2px 0 var(--color-text, #fff)}@media(max-width:768px){.keyboard-guide{margin:1rem;padding:1.5rem;max-width:calc(100vw - 2rem)}.keyboard-sections{grid-template-columns:1fr;gap:1.5rem}.keyboard-guide h2{font-size:1.5rem}.shortcut-row{flex-direction:column;align-items:flex-start;gap:.5rem}.shortcut-keys{min-width:auto}}.keyboard-guide::-webkit-scrollbar{width:8px}.keyboard-guide::-webkit-scrollbar-track{background:transparent}.keyboard-guide::-webkit-scrollbar-thumb{background:var(--color-border, #333);border-radius:4px}.keyboard-guide::-webkit-scrollbar-thumb:hover{background:var(--color-text, #000)}.notification-bell-container{position:relative}.notification-bell{background:var(--color-surface, #fff);border:2px solid var(--color-border, #ddd);border-radius:8px;padding:6px 10px;cursor:pointer;display:flex;align-items:center;gap:4px;transition:all .15s ease;position:relative}.notification-bell:hover{border-color:var(--color-primary, #000);background:var(--color-surface-subtle, #f5f5f5)}.notification-bell.has-pending{border-color:#f59e0b}.bell-icon{font-size:16px}.bell-badge{position:absolute;top:-6px;right:-6px;background:#ef4444;color:#fff;font-size:11px;font-weight:700;min-width:18px;height:18px;border-radius:9px;display:flex;align-items:center;justify-content:center;padding:0 4px}.notification-dropdown-backdrop{position:fixed;inset:0;z-index:1999}.notification-dropdown{position:absolute;top:calc(100% + 8px);right:0;width:300px;background:var(--color-surface, #fff);border:2px solid var(--color-border, #000);border-radius:12px;box-shadow:4px 4px #00000026;z-index:2000;overflow:hidden}.notification-dropdown-header{display:flex;align-items:center;justify-content:space-between;padding:12px 16px;border-bottom:1px solid var(--color-border-light, #eee)}.notification-dropdown-header h4{margin:0;font-size:15px;font-weight:600}.dropdown-close{background:none;border:none;font-size:20px;cursor:pointer;color:var(--color-text-secondary, #666);line-height:1;padding:0}.notification-permission{padding:12px 16px;background:#fff3cd;border-bottom:1px solid #ffc107}.notification-permission p{margin:0 0 8px;font-size:13px}.notification-permission button{padding:6px 12px;background:#000;color:#fff;border:none;border-radius:6px;font-size:13px;font-weight:500;cursor:pointer}.notification-stats{display:flex;gap:12px;padding:10px 16px;background:var(--color-surface-subtle, #f9f9f9);font-size:12px;color:var(--color-text-secondary, #666);border-bottom:1px solid var(--color-border-light, #eee)}.notification-stats .failed{color:#dc3545}.notification-list{max-height:250px;overflow-y:auto}.notification-item{display:flex;align-items:center;justify-content:space-between;padding:10px 16px;border-bottom:1px solid var(--color-border-light, #eee)}.notification-item:last-child{border-bottom:none}.notification-item-content{flex:1;min-width:0}.notification-title{display:block;font-size:13px;font-weight:500;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.notification-time{display:block;font-size:11px;color:var(--color-text-secondary, #888);margin-top:2px}.notification-cancel{background:none;border:none;font-size:18px;color:#dc3545;cursor:pointer;padding:0 4px;margin-left:8px;opacity:.6}.notification-cancel:hover{opacity:1}.notification-empty{padding:24px 16px;text-align:center;color:var(--color-text-secondary, #888);font-size:13px}.notification-more{padding:8px 16px;text-align:center;font-size:12px;color:var(--color-text-secondary, #666);background:var(--color-surface-subtle, #f9f9f9)}.notification-actions{padding:10px 16px;border-top:1px solid var(--color-border-light, #eee);background:var(--color-surface-subtle, #f9f9f9)}.notification-actions button{width:100%;padding:8px;background:none;border:1px solid var(--color-border, #ddd);border-radius:6px;font-size:13px;color:var(--color-text-secondary, #666);cursor:pointer}.notification-actions button:hover{background:var(--color-surface, #fff);border-color:var(--color-primary, #000)}@media(prefers-color-scheme:dark){.notification-bell{background:#2a2a2a;border-color:#444}.notification-bell:hover{background:#333}.notification-dropdown{background:#1a1a1a;border-color:#333}.notification-stats{background:#222}.notification-permission{background:#3a3520;border-color:#5c4a10}.notification-item{border-color:#333}.notification-more,.notification-actions{background:#222}}.crumpit-overlay{position:fixed;inset:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:2000;padding:20px}.crumpit-container{background:#f8f8f8;border-radius:16px;width:100%;max-width:1200px;max-height:90vh;display:flex;flex-direction:column;overflow:hidden;box-shadow:0 20px 60px #0000004d}.crumpit-header{display:flex;justify-content:space-between;align-items:flex-start;padding:24px 24px 16px;background:#fff;border-bottom:2px solid #000}.crumpit-header h1{margin:0;font-size:2rem;font-weight:700;color:#000;letter-spacing:-.02em}.crumpit-header p{margin:4px 0 0;font-size:1rem;color:#666;font-style:italic}.crumpit-close{background:none;border:2px solid #000;border-radius:8px;width:36px;height:36px;font-size:18px;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .15s}.crumpit-close:hover{background:#000;color:#fff}.crumpit-board{flex:1;display:grid;grid-template-columns:repeat(2,1fr);gap:16px;padding:16px;overflow-y:auto;min-height:0}.crumpit-bucket{background:#fff;border:2px solid #000;border-radius:12px;padding:16px;display:flex;flex-direction:column;min-height:200px;transition:all .2s}.crumpit-bucket:hover{box-shadow:4px 4px #0000001a}.crumpit-bucket.drag-over{background:#f0f7ff;border-color:#3b82f6;border-style:dashed}.crumpit-bucket.full{background:#fafafa;border-style:dashed}.crumpit-bucket.shaking{animation:bucket-shake .3s ease;background:#fff5f5;border-color:red}@keyframes bucket-shake{0%,to{transform:translate(0)}25%{transform:translate(-8px)}75%{transform:translate(8px)}}.bucket-header{border-bottom:2px solid #e0e0e0;padding-bottom:12px;margin-bottom:12px}.bucket-header h2{margin:0;font-size:1.25rem;font-weight:700;color:#000;letter-spacing:.05em}.bucket-subtitle{margin:4px 0 8px;font-size:.8rem;color:#666}.bucket-capacity{font-size:.8rem;font-weight:600;color:#333;font-family:monospace}.bucket-capacity.full{color:red}.capacity-warning{font-weight:700}.bucket-tasks{flex:1;display:flex;flex-direction:column;gap:8px;min-height:100px}.bucket-empty{flex:1;display:flex;align-items:center;justify-content:center;color:#999;font-size:.875rem;font-style:italic;border:2px dashed #e0e0e0;border-radius:8px;padding:24px}.crumpit-task{display:flex;align-items:center;gap:10px;padding:10px 12px;background:#fff;border:1px solid #e0e0e0;border-left-width:4px;border-radius:8px;cursor:grab;transition:all .15s}.crumpit-task:hover{transform:translate(4px);box-shadow:0 2px 8px #0000001a}.crumpit-task.dragging{opacity:.5;cursor:grabbing}.crumpit-checkbox{width:18px;height:18px;flex-shrink:0;cursor:pointer}.crumpit-task-content{flex:1;display:flex;align-items:center;gap:8px;min-width:0}.crumpit-task-name{flex:1;font-size:.9rem;color:#333;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.crumpit-task-name.completed{text-decoration:line-through;opacity:.5}.crumpit-energy{font-size:16px;flex-shrink:0}.crumpit-remove{background:none;border:none;font-size:18px;color:#999;cursor:pointer;padding:0 4px;line-height:1;opacity:0;transition:all .15s}.crumpit-task:hover .crumpit-remove{opacity:1}.crumpit-remove:hover{color:red}.crumpit-backlog{background:#fff;border-top:2px solid #000;padding:16px 24px;max-height:180px;overflow-y:auto}.crumpit-backlog h3{margin:0 0 12px;font-size:1rem;font-weight:600;color:#000}.backlog-tasks{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:8px}.crumpit-completed{background:#f5f5f5;border-top:1px solid #e0e0e0;padding:12px 24px;max-height:120px;overflow-y:auto}.crumpit-completed h3{margin:0 0 8px;font-size:.9rem;font-weight:600;color:#666}.completed-tasks{display:flex;flex-wrap:wrap;gap:8px}.completed-more{font-size:.8rem;color:#999;font-style:italic;align-self:center;padding-left:8px}@media(max-width:900px){.crumpit-board{grid-template-columns:1fr}.crumpit-bucket{min-height:150px}.backlog-tasks{grid-template-columns:1fr}}@media(max-width:600px){.crumpit-overlay{padding:0}.crumpit-container{border-radius:0;max-height:100vh}.crumpit-header{padding:16px}.crumpit-header h1{font-size:1.5rem}.crumpit-board{padding:12px;gap:12px}}.plan-overlay{position:fixed;inset:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:2000;padding:20px}.plan-container{background:#fafafa;border-radius:20px;width:100%;max-width:520px;max-height:90vh;display:flex;flex-direction:column;overflow:hidden;box-shadow:0 20px 60px #00000040}.plan-header{display:flex;justify-content:space-between;align-items:flex-start;padding:28px 28px 20px;background:#fff}.plan-header h1{margin:0;font-size:1.75rem;font-weight:600;color:#1a1a1a;letter-spacing:-.02em}.plan-date{margin:4px 0 0;font-size:.95rem;color:#666}.plan-close{background:none;border:1px solid #e0e0e0;border-radius:8px;width:32px;height:32px;font-size:16px;cursor:pointer;display:flex;align-items:center;justify-content:center;color:#666;transition:all .15s}.plan-close:hover{background:#f0f0f0;color:#333}.plan-progress{position:relative;height:6px;background:#e8e8e8}.plan-progress-bar{position:absolute;left:0;top:0;height:100%;background:linear-gradient(90deg,#4ade80,#22c55e);transition:width .3s ease}.plan-progress-text{position:absolute;right:16px;top:12px;font-size:.75rem;color:#888}.plan-quick-add{display:flex;gap:8px;padding:16px 20px;background:#fff;border-bottom:1px solid #eee}.plan-input{flex:1;padding:10px 14px;font-size:.95rem;border:1px solid #ddd;border-radius:8px;outline:none;transition:border-color .15s}.plan-input:focus{border-color:#3b82f6}.plan-add-btn{padding:10px 18px;background:#1a1a1a;color:#fff;border:none;border-radius:8px;font-size:.9rem;font-weight:500;cursor:pointer;transition:all .15s}.plan-add-btn:hover:not(:disabled){background:#333}.plan-add-btn:disabled{opacity:.4;cursor:not-allowed}.plan-content{flex:1;overflow-y:auto;padding:16px 20px}.plan-empty{text-align:center;padding:48px 20px;color:#888}.plan-empty p{margin:0;font-size:1.1rem}.plan-empty-sub{margin-top:8px!important;font-size:.9rem!important;color:#aaa!important}.plan-section{margin-bottom:24px}.plan-section h3{display:flex;align-items:center;gap:8px;margin:0 0 12px;font-size:.85rem;font-weight:600;color:#555;text-transform:uppercase;letter-spacing:.05em}.plan-section-icon{font-size:1rem}.plan-section-hint{margin-left:auto;font-size:.75rem;font-weight:400;color:#999;text-transform:none;letter-spacing:0}.plan-section.completed h3{color:#22c55e}.plan-task{display:flex;align-items:center;gap:12px;padding:12px 14px;background:#fff;border:1px solid #eee;border-radius:10px;margin-bottom:8px;transition:all .15s}.plan-task:hover{border-color:#ddd;box-shadow:0 2px 8px #0000000a}.plan-task.completed{opacity:.6}.plan-checkbox{width:20px;height:20px;flex-shrink:0;cursor:pointer;accent-color:#22c55e}.plan-task-name{flex:1;font-size:.95rem;color:#333}.plan-task.completed .plan-task-name{text-decoration:line-through;color:#888}.plan-energy{font-size:16px;flex-shrink:0}.plan-footer{padding:12px 20px;background:#f5f5f5;border-top:1px solid #eee;text-align:center}.plan-footer p{margin:0;font-size:.8rem;color:#999}@media(max-width:600px){.plan-overlay{padding:0}.plan-container{border-radius:0;max-height:100vh}.plan-header{padding:20px}.plan-header h1{font-size:1.5rem}}:root{--entity-radius: 6px;--small-entity-radius: 3px;--subsection-padding: 5px;--button-fixed-height: 30px;--focus-padding: 20px;--max-z: 2147483646;--card-max-width: 200px;--ease-out-circ: cubic-bezier(0, .55, .45, 1);--transition-duration: .2s;--animation-duration: .5s;--sans-serif-font: "Helvetica Neue", Helvetica, Arial, system-ui, sans-serif;--mono-font: Menlo, Monaco, "Courier New", monospace;--serif-font: Georgia, serif;--base-font-size: 15px;--base-line-height: 1.2;--primary-background: #ffffff;--secondary-background: #f5f5f5;--secondary-hover-background: #ebebeb;--secondary-active-background: #e0e0e0;--canvas-bg: #fafafa;--button-background: #ffffff;--primary-border: #d1d1d1;--secondary-border: #e5e5e5;--primary: #333333;--secondary: #666666;--tertiary: #999999;--light-shadow: rgba(0, 0, 0, .1);--heavy-shadow: rgba(0, 0, 0, .15);--hover-shadow: 3px 3px 0 var(--heavy-shadow);--active-shadow: 5px 5px 0 var(--light-shadow);--active-inset-shadow: inset 0 2px 3px var(--light-shadow);--button-hover-shadow: 2px 2px 0 var(--heavy-shadow);--button-active-inset-shadow: inset 0 1px 2px var(--heavy-shadow);--card-shadow: 2px 2px 0 rgba(0, 0, 0, .08);--card-shadow-hover: 4px 4px 0 rgba(0, 0, 0, .12);--card-shadow-drag: 6px 6px 0 rgba(0, 0, 0, .15);--accent-color: #3b82f6;--accent-hover: #2563eb;--accent-active: #1d4ed8;--connection-color: #94a3b8;--selection-color: rgba(59, 130, 246, .2);--info-background: #dbeafe;--success-background: #dcfce7;--danger-background: #fee2e2;--warning-background: #fef3c7}@media(prefers-color-scheme:dark){:root{--primary-background: #1a1a1a;--secondary-background: #2a2a2a;--secondary-hover-background: #333333;--secondary-active-background: #3d3d3d;--canvas-bg: #0f0f0f;--button-background: #2a2a2a;--primary-border: #404040;--secondary-border: #333333;--primary: #e5e5e5;--secondary: #a3a3a3;--tertiary: #737373;--light-shadow: rgba(0, 0, 0, .3);--heavy-shadow: rgba(0, 0, 0, .5);--card-shadow: 2px 2px 0 rgba(0, 0, 0, .3);--card-shadow-hover: 4px 4px 0 rgba(0, 0, 0, .4);--card-shadow-drag: 6px 6px 0 rgba(0, 0, 0, .5);--info-background: #1e3a5f;--success-background: #1e3a2f;--danger-background: #3a1e1e;--warning-background: #3a2f1e}}body{font-family:var(--sans-serif-font);font-size:var(--base-font-size);line-height:var(--base-line-height);color:var(--primary);background-color:var(--canvas-bg)}button,.button{padding:5px 9px;border:1px solid var(--primary-border);border-radius:var(--entity-radius);background-color:var(--button-background);color:var(--primary);font-family:var(--sans-serif-font);font-size:var(--base-font-size);cursor:pointer;touch-action:manipulation;-webkit-user-select:none;user-select:none;transition:none}button:hover,.button:hover{box-shadow:var(--button-hover-shadow);background-color:var(--secondary-hover-background)}button:active,.button:active{box-shadow:var(--button-active-inset-shadow);background-color:var(--secondary-active-background)}button:disabled,.button:disabled{opacity:.5;cursor:not-allowed;box-shadow:none}button.accent,.button.accent{background-color:var(--accent-color);color:#fff;border-color:var(--accent-hover)}button.accent:hover,.button.accent:hover{background-color:var(--accent-hover)}button.accent:active,.button.accent:active{background-color:var(--accent-active)}button.small,.button.small{padding:3px 7px;font-size:13px}button.icon,.button.icon{width:30px;height:30px;padding:0;display:inline-flex;align-items:center;justify-content:center}.segmented-buttons{display:inline-flex}.segmented-buttons>button{margin:0;border-radius:0}.segmented-buttons>button:first-child{border-top-left-radius:var(--entity-radius);border-bottom-left-radius:var(--entity-radius)}.segmented-buttons>button:last-child{border-top-right-radius:var(--entity-radius);border-bottom-right-radius:var(--entity-radius)}.segmented-buttons>button+button{margin-left:-1px}dialog,.dialog{position:absolute;padding:0;background-color:var(--primary-background);border:1px solid var(--primary-border);box-shadow:var(--hover-shadow);border-radius:var(--entity-radius);color:var(--primary)}dialog.narrow{width:230px}dialog.normal{width:250px}dialog.wide{width:280px}.badge{display:inline-block;min-width:17px;min-height:18px;border-radius:var(--entity-radius);padding:2px 5px;margin-right:6px;vertical-align:-1px;font-size:13px;font-weight:500}.badge.info{background:var(--info-background)}.badge.success{background:var(--success-background)}.badge.danger{background:var(--danger-background)}.badge.warning{background:var(--warning-background)}.badge.secondary{background:var(--secondary-background)}input[type=checkbox]{width:12px;height:12px;appearance:none;border:1px solid var(--primary-border);border-radius:var(--small-entity-radius);background-color:var(--primary-background);cursor:pointer}input[type=checkbox]:checked{background-color:var(--accent-color);border-color:var(--accent-color);background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 12'%3E%3Cpath fill='white' d='M10 3L4.5 8.5L2 6'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:center}ul.results-list{list-style:none;padding:0;margin:0}ul.results-list li{display:flex;padding:7px;align-items:flex-start;border-radius:var(--entity-radius);cursor:pointer;word-break:break-word}ul.results-list li:hover{background-color:var(--secondary-hover-background);box-shadow:var(--hover-shadow)}ul.results-list li:active{background-color:var(--secondary-active-background);box-shadow:var(--active-inset-shadow)}@keyframes focusing{to{left:calc(-1 * var(--focus-padding) / 2);top:calc(-1 * var(--focus-padding) / 2);width:calc(100% + var(--focus-padding));height:calc(100% + var(--focus-padding))}}.focusing-frame{animation:focusing .3s alternate ease-out;animation-iteration-count:4}@keyframes blink{0%{opacity:1}to{opacity:.6}}.blink{animation:blink .2s infinite alternate ease-out}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.fade-in{animation:fadeIn .2s ease-out}.card-wrap{pointer-events:all;position:absolute;max-width:var(--card-max-width);-webkit-touch-callout:none}.card{cursor:pointer;touch-action:manipulation;transform-origin:calc(100% - 16px) calc(0% + 16px);user-select:none;-webkit-user-select:none;-webkit-touch-callout:none;transition:left var(--transition-duration) var(--ease-out-circ),top var(--transition-duration) var(--ease-out-circ),width var(--transition-duration) var(--ease-out-circ),height var(--transition-duration) var(--ease-out-circ)}.card.child-is-hovered{box-shadow:none!important}.card.dragging,.card.active,.card.is-resizing,.card.is-tilting,.card.is-selected{transition:none!important}.card-wrap.is-resizing *,.card-wrap.is-tilting *{outline:none}.space,.canvas{transform-origin:top left;pointer-events:none}.space.is-interacting,.canvas.is-interacting{pointer-events:all}.space.is-not-interacting *,.canvas.is-not-interacting *{pointer-events:none!important;cursor:default}@keyframes jiggle{0%{transform:rotate(0)}25%{transform:rotate(-2deg)}50%{transform:rotate(2deg)}75%{transform:rotate(-2deg)}to{transform:rotate(0)}}@keyframes jiggle-small{0%{transform:rotate(0)}25%{transform:rotate(-1deg)}50%{transform:rotate(1deg)}75%{transform:rotate(-1deg)}to{transform:rotate(0)}}.jiggle{animation:jiggle var(--animation-duration) infinite ease-out forwards}.jiggle.large,.jiggle.l-width{animation-name:jiggle-small}.resize-handle,.bottom-button-wrap{position:absolute;right:-5px;bottom:2px}.resize-handle .inline-button-wrap,.bottom-button-wrap .inline-button-wrap{cursor:ew-resize}.resize-handle.left-tilt .inline-button-wrap,.bottom-button-wrap.left-tilt .inline-button-wrap{cursor:nwse-resize;transform:translate(-8px,13px)}.box{transition:width var(--transition-duration) var(--ease-out-circ),height var(--transition-duration) var(--ease-out-circ),left var(--transition-duration) var(--ease-out-circ),top var(--transition-duration) var(--ease-out-circ)}.box.active,.box.is-resizing,.box.is-selected,.box.dragging{transition:none!important}.space-container{-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.spatial-card{transition:none;touch-action:manipulation}.spatial-card:hover{box-shadow:var(--card-shadow-hover)}.spatial-card.dragging{box-shadow:var(--card-shadow-drag);z-index:1000}.spatial-card.editing{cursor:text!important;user-select:text!important;-webkit-user-select:text!important;outline:2px solid var(--accent-color);box-shadow:var(--hover-shadow)}.spatial-card.selected{outline:2px solid var(--accent-color);outline-offset:-2px;position:relative}.spatial-card.selected:before{content:"";position:absolute;left:0;top:0;width:100%;height:100%;border:2px solid var(--accent-color);border-radius:inherit;pointer-events:none;animation:focusing .3s alternate ease-out 4}.connections-layer path{pointer-events:stroke;cursor:pointer;transition:none}.connections-layer path:hover{stroke-width:3!important;stroke:var(--accent-color)!important}.connections-layer{pointer-events:none}.connections-layer *{pointer-events:auto}.card-resize-handle{position:absolute;bottom:0;right:0;width:16px;height:16px;cursor:nwse-resize;opacity:0;transition:opacity .2s;pointer-events:auto;display:flex;align-items:center;justify-content:center;font-size:12px;color:var(--secondary);-webkit-user-select:none;user-select:none}.spatial-card:hover .card-resize-handle,.spatial-card.selected .card-resize-handle{opacity:1}.card-resize-handle:hover{color:var(--primary)}.spatial-card.connection-target{outline:3px solid var(--accent-color)!important;outline-offset:2px;box-shadow:0 0 20px #3b82f666,var(--card-shadow)!important}.space-container::-webkit-scrollbar{display:none}.space-container{-ms-overflow-style:none;scrollbar-width:none}:root{--halcyon-bg: #ffffff;--halcyon-fg: #000000;--halcyon-accent: #333333;--halcyon-border: #e0e0e0;--halcyon-shadow: rgba(0, 0, 0, .08);--halcyon-subtle: #f8f8f8;--halcyon-font-mono: "SF Mono", "Monaco", "Inconsolata", "Roboto Mono", monospace;--halcyon-font-sans: "SF Pro Text", "Inter", "Segoe UI", system-ui, sans-serif;--halcyon-font-draw: "SF Pro Rounded", "Comic Neue", cursive}*{box-sizing:border-box}body{margin:0;padding:0;font-family:var(--halcyon-font-sans);background:var(--halcyon-bg);color:var(--halcyon-fg);line-height:1.6;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;overflow:hidden;touch-action:pan-x pan-y;-webkit-user-select:none;user-select:none}.halcyon-container{height:100vh;display:flex;flex-direction:column;background:var(--color-bg);overflow:hidden}.mode-switcher{position:fixed;bottom:2rem;left:50%;transform:translate(-50%);display:flex;gap:.5rem;padding:.5rem;background:var(--color-surface);border:3px solid var(--color-border);border-radius:12px;box-shadow:4px 4px 0 var(--color-shadow);z-index:1000}.mode-switcher button{padding:.75rem 2rem;font-size:1rem;font-weight:600;background:transparent;border:2px solid transparent;border-radius:8px;cursor:pointer;color:var(--color-text-secondary);transition:all .15s ease}.mode-switcher button:hover{background:var(--color-surface-subtle);color:var(--color-text-primary)}.mode-switcher button.active{background:var(--color-text-primary);color:var(--color-bg);border-color:var(--color-text-primary)}[data-theme=calm] .mode-switcher{background:var(--halcyon-card);border-color:var(--halcyon-foreground)}[data-theme=calm] .mode-switcher button.active{background:var(--halcyon-primary);color:#fff;border-color:var(--halcyon-primary)}@media(max-width:768px){.mode-switcher{bottom:1rem;gap:.25rem;padding:.375rem}.mode-switcher button{padding:.5rem 1rem;font-size:.875rem}}.halcyon-header{padding:1.25rem 2rem;border-bottom:1px solid var(--halcyon-border);background:var(--halcyon-bg);box-shadow:0 1px 3px var(--halcyon-shadow);z-index:10;flex-shrink:0}.halcyon-header h1{margin:0;font-size:1.5rem;font-weight:600;color:var(--halcyon-fg);font-family:var(--halcyon-font-sans);letter-spacing:-.01em}.halcyon-header p{margin:.375rem 0 0;font-size:.875rem;color:var(--halcyon-accent);opacity:.8;font-weight:400}.halcyon-canvas{flex:1;position:relative;background:var(--halcyon-bg);overflow:hidden;min-height:0}.halcyon-footer{padding:.875rem 2rem;border-top:1px solid var(--halcyon-border);background:var(--halcyon-subtle);display:flex;justify-content:space-between;align-items:center;font-size:.875rem;color:var(--halcyon-accent);flex-shrink:0}.mode-indicator{font-weight:500;color:var(--halcyon-fg);background:var(--halcyon-bg);padding:.25rem .75rem;border-radius:12px;font-size:.8125rem;border:1px solid var(--halcyon-border)}.zoom-hint{opacity:.7;font-size:.8125rem}.tldraw,.tldraw__editor{background:var(--halcyon-bg)!important;overflow:hidden}.tldraw__toolbar{background:var(--halcyon-bg)!important;border:1px solid var(--halcyon-border)!important;border-radius:8px;box-shadow:0 2px 8px var(--halcyon-shadow)!important}.tldraw__toolbar button{color:var(--halcyon-fg)!important;border-radius:6px!important}.tldraw__toolbar button:hover{background:var(--halcyon-subtle)!important}.tldraw__toolbar button:active{background:var(--halcyon-border)!important}.tldraw__page-menu,.tldraw__navigation-panel,.tldraw__minimap,.tldraw__debug-panel{display:none!important}.tldraw__shape text{font-family:inherit!important}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background:var(--halcyon-bg);border-radius:4px}::-webkit-scrollbar-thumb{background:var(--halcyon-border);border-radius:4px;transition:background .2s ease}::-webkit-scrollbar-thumb:hover{background:var(--halcyon-accent)}*{transition:background-color .2s ease,border-color .2s ease,color .2s ease}.keyboard-hint{position:fixed;bottom:1rem;right:1rem;padding:.5rem 1rem;background:var(--color-surface, #fff);border:2px solid var(--color-border, #333);border-radius:8px;font-size:.875rem;opacity:.7;transition:opacity .15s ease;z-index:900;pointer-events:none}.keyboard-hint:hover{opacity:1}.keyboard-hint kbd{display:inline-flex;align-items:center;justify-content:center;padding:.125rem .375rem;margin:0 .25rem;min-width:24px;height:20px;background:var(--color-bg, #fff);border:1.5px solid var(--color-text, #000);border-radius:3px;font-family:monospace;font-size:.75rem;font-weight:600;box-shadow:0 1px 0 var(--color-text, #000)}@media(max-width:768px)and (orientation:portrait){.keyboard-hint{display:none}}@media(max-width:768px)and (orientation:landscape){.keyboard-hint{bottom:.5rem;right:.5rem;font-size:.6875rem;padding:.25rem .5rem}.keyboard-hint kbd{font-size:.625rem;min-width:20px;height:16px}}
