*{box-sizing:border-box}html,body,#root{height:100%}body{margin:0;background:var(--bg-page, #0f1115);color:var(--text);font-family:var(--font-base);font-size:calc(1rem * var(--ui-font-scale));line-height:1.4}a{font-weight:500;color:var(--brand);text-decoration:inherit}a:hover{color:var(--accent-1)}h1{font-size:calc(3.2em * var(--ui-font-scale));line-height:1.1}button{border-radius:var(--radius-sm);border:1px solid transparent;padding:.6em 1.2em;font-size:calc(1em * var(--ui-font-scale));font-weight:500;font-family:inherit;background-color:var(--bg-elev-1);cursor:pointer;transition:border-color .25s}button:hover{border-color:var(--accent-1)}button:focus,button:focus-visible{outline:4px auto -webkit-focus-ring-color}.btn{display:inline-flex;align-items:center;justify-content:center;gap:var(--space-2);padding:8px 14px;font-weight:600;font-size:calc(.95rem * var(--ui-font-scale));color:var(--text);background:transparent;border:1px solid var(--border-faint);border-radius:9999px;cursor:pointer;transition:transform .12s ease,background .16s ease,border-color .16s ease,opacity .16s ease}.btn:hover{border-color:var(--border-subtle)}.btn:active{transform:translateY(1px)}.btn[disabled]{opacity:.65;cursor:not-allowed}.btn-primary{background:var(--brand);border-color:transparent;color:var(--text)}.btn-primary:hover{background:var(--accent-1)}.btn-primary:active{background:var(--accent-2)}.form-control{width:100%;min-height:34px;padding:8px 10px;font-size:calc(.94rem * var(--ui-font-scale));color:var(--text);background:#ffffff0f;border:1px solid var(--border-subtle);border-radius:10px;outline:none;transition:border-color .16s ease,background .16s ease}.form-control:focus{border-color:var(--accent-1);background:#ffffff14}.modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:var(--z-modal);background:var(--bg-overlay);-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px)}.card-clamp{width:clamp(var(--modal-min),var(--modal-ideal),var(--modal-max));max-height:var(--content-max-h)}html,body,#root,.App{height:100%;width:100%;margin:0;padding:0;color:var(--color-text-light);font-family:system-ui,sans-serif}.btn{background:none;border:none;padding:var(--space-1) var(--space-3);cursor:pointer;border-radius:var(--radius-md);font-weight:600;transition:var(--transition-ease);outline:none}.btn:hover{transform:scale(1.05)}.btn:active{transform:scale(.97)}.btn:focus{outline:none;box-shadow:none}.btn-primary{background-color:var(--color-navy-deep);color:var(--color-gold-deep)}.btn-primary:hover{background-color:var(--color-gold-deep);color:var(--color-navy-deep)}.btn-ghost{background:transparent;border:1px solid rgba(255,255,255,.2)}.form-control{margin-top:var(--space-1);padding:var(--space-1);border:1px solid var(--blue-gray);border-radius:var(--radius-md);font-size:var(--space-3);background-color:#1c3c69e6;color:var(--color-text-light);-webkit-appearance:none;-moz-appearance:none;appearance:none;cursor:pointer;transition:var(--transition-ease)}.modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;width:100%;height:100%;background-color:#091a2c80;display:flex;justify-content:center;align-items:center;z-index:20}:root{--ui-font-scale: 1;--font-base: system-ui, -apple-system, Segoe UI, Roboto, Arial, sans-serif;--text: #f3f5f7;--text-dim: rgba(243, 245, 247, .8);--bg-page: #0f1115;--bg-elev-1: rgba(22, 22, 26, .96);--bg-overlay: rgba(0, 0, 0, .4);--brand: #6aa68f;--accent-1: #7db9a3;--accent-2: #518a73;--border-subtle: rgba(255, 255, 255, .1);--border-faint: rgba(255, 255, 255, .08);--shadow-lg: 0 10px 40px rgba(0, 0, 0, .55);--radius-sm: 8px;--radius-md: 12px;--radius-xl: 16px;--radius-2xl: 20px;--space-1: 4px;--space-2: 8px;--space-3: 12px;--space-4: 16px;--space-5: 20px;--space-6: 24px;--space-7: 28px;--space-8: 32px;--z-modal: 9999;--z-popover: 1000;--z-header: 900;--content-max-h: 95vh;--modal-min: 720px;--modal-ideal: 85vw;--modal-max: 1120px;--bp-sm: 480px;--bp-md: 768px;--bp-lg: 1024px;--bp-xl: 1280px;--radius-full: 50%;--surface-1: rgba(255,255,255,.05);--surface-2: rgba(255,255,255,.08);--surface-3: rgba(255,255,255,.14);--border-1: rgba(255,255,255,.12);--text-strong: #e8edf2;--shadow-glow: 0 1px 0 rgba(0,0,0,.35);--blur-xs: 2px;--radius-pill: 9999px;--chip-bg: rgba(255,255,255,.08);--chip-shadow: 0 2px 10px rgba(0,0,0,.18);--border-2: rgba(255,255,255,.22);--color-focus-dark-purple: #2a2b4a;--color-focus-medium-purple: #3a3b5a;--color-focus-light-blue: #a0c0ff;--box-shadow-focus-panel: 0 4px 12px rgba(0, 0, 0, .3);--color-focus-border-blue: #5a7a9a;--color-focus-background-dark: #1a1b2f;--color-white: #ffffff;--color-focus-checked-text: #888888;--color-focus-add-btn: #4CAF50;--color-focus-add-btn-hover: #45a049;--color-focus-timer-btn: #007bff;--color-focus-timer-btn-text: #ffffff;--color-focus-timer-btn-hover: #0056b3;--color-focus-stop-btn: #dc3545;--color-focus-stop-btn-hover: #c82333;--color-focus-timer-display: #ffffff;--color-focus-timer-background: rgba(0, 0, 0, .5);--color-focus-quote-background: rgba(0, 0, 0, .3);--color-focus-quote-shadow: rgba(0, 0, 0, .2);--color-focus-modal-background: rgba(0, 0, 0, .8);--color-focus-modal-shadow: 0 8px 16px rgba(0, 0, 0, .4);--color-focus-modal-btn-background: #007bff;--color-focus-modal-btn-hover: #0056b3;--color-mission-complete-btn: #28a745;--color-mission-complete-btn-border: #218838;--color-scrollbar-thumb: #888888}:root[data-theme=light]{--text: #0f1216;--text-dim: rgba(15, 18, 22, .7);--bg-page: #ffffff;--bg-elev-1: #f7f9fb;--bg-overlay: rgba(0, 0, 0, .35);--brand: #3f7d66;--accent-1: #4d8f78;--accent-2: #2d6953;--border-subtle: rgba(0, 0, 0, .12);--border-faint: rgba(0, 0, 0, .08);--shadow-lg: 0 12px 40px rgba(0, 0, 0, .18)}button:not(.engage-btn),.action-buttons-grid>button,.action-buttons-grid>a,.timer-controls .timer-btn,.partner-checkin-buttons button{position:relative;z-index:0;transition:all .25s ease;box-shadow:0 0 0 transparent}button:not(.engage-btn):hover,.action-buttons-grid>button:hover,.action-buttons-grid>a:hover,.timer-controls .timer-btn:hover,.partner-checkin-buttons button:hover{box-shadow:0 0 10px var(--glow-color, rgba(255,255,255,.25));background:var(--chip-bg-hover, rgba(255,255,255,.14));-webkit-backdrop-filter:blur(4px) brightness(1.05);backdrop-filter:blur(4px) brightness(1.05)}button:not(.engage-btn):active,.action-buttons-grid>button:active,.action-buttons-grid>a:active,.timer-controls .timer-btn:active,.partner-checkin-buttons button:active{box-shadow:0 0 6px var(--glow-color, rgba(255,255,255,.2));-webkit-backdrop-filter:blur(2px) brightness(.98);backdrop-filter:blur(2px) brightness(.98)}.App{display:flex;flex-direction:column;min-height:100%;overflow-y:auto}.header-buttons{position:absolute;top:var(--space-4);left:0vw;display:flex;z-index:2;padding:var(--space-1) var(--space-3);pointer-events:auto}.header-buttons .btn{color:var(--color-gold-soft);font-size:calc(.95rem * var(--ui-font-scale));transition:var(--transition-ease)}.main-content{display:grid;grid-template-columns:450px 1fr;flex:1;align-items:start;gap:var(--space-8);padding:var(--space-2) var(--space-4);height:100%;max-height:100vh;max-width:100%;width:100%;box-sizing:border-box;overflow:visible;margin-top:calc(var(--space-6) * 2)}.mode-layout-container{width:100%;max-width:1000px;display:flex;flex-direction:column;padding:var(--space-4);box-sizing:border-box;flex:1;overflow:visible}.chat-container{flex:1;max-width:450px;background-color:var(--steel-blue);border-radius:var(--radius-md);display:flex;flex-direction:column;overflow:hidden;height:100%;position:relative;z-index:2;pointer-events:auto;margin-top:var(--space-8)}.low_spoon-theme.chat-input-container button{opacity:.73}.low_spoon-theme.chat-container{background-color:#03253699;border:1px solid var(--border-faint);box-shadow:0 0 20px #d6e49a39;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);height:90%}.low_spoon-theme .mode-layout,.low_spoon-theme .mode-layout-container,.low_spoon-theme .mode-layout-columns,.low_spoon-theme .mode-layout-header,.low_spoon-theme .mode-layout-subtitle,.low_spoon-theme .mode-layout-heading{position:relative;z-index:2;margin:var(--space-4);margin-top:var(--space-4)}.focus-theme .chat-container{background:linear-gradient(145deg,#1a1b2f6b,#23254a4f);border:1px solid var(--border-faint);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);box-shadow:0 0 12px #0080ff2b;height:85%}.focus-theme .mode-layout-subtitle,.mode-layout-heading{margin-top:0}.partner_support-theme{background:linear-gradient(230deg,#d9b086,#f6a05f,#ec5b73);filter:brightness(85%);color:#7d6860}.focus-theme{background:var(--background-dark);color:#dcefff;overflow:hidden}.partner_support-theme.chat-container{background:#fdabb86e;border:1px solid var(--border-faint);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);box-shadow:0 0 20px #d6e49a39;height:90%;transition:background-color .6s ease,box-shadow .6s ease}.dashboard-theme{background:#032d2e;color:#fbe0ccde}.dashboard-theme.chat-container{background:var(--background-dark);border:1px solid var(--border-faint);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);box-shadow:0 0 20px #d6e49a39;height:80%;transition:background-color .6s ease,box-shadow .6s ease}.messages{flex:1;overflow-y:auto;padding:var(--space-4);padding-top:var(--space-4);display:flex;flex-direction:column;gap:var(--space-4);min-height:0}.message-bubble{padding:var(--space-3) var(--space-4);border-radius:var(--radius-md);max-width:80%;line-height:1.4}.message-bubble.user{background-color:var(--gold-dark);color:#1c1c1c;align-self:flex-end}.message-bubble.ai{background-color:#0d214183;color:var(--text-light);align-self:flex-start}.chat-input-container{flex-shrink:0;padding:var(--space-2) var(--space-3);display:flex;gap:var(--space-2);border-top:1px solid var(--border-subtle);background-color:#15202be6}.chat-textarea{flex:1;padding:var(--space-1) var(--space-3);border-radius:var(--radius-sm);border:1px solid var(--blue-gray);background-color:#ffffff0f;color:var(--text-light);font-size:calc(.9rem * var(--ui-font-scale));resize:none;overflow:hidden;line-height:1;font-family:inherit;max-height:calc(1em * 2 + var(--space-4));overflow-y:auto;box-shadow:none;outline:none}.chat-input-container .btn{padding:var(--space-2) var(--space-3);font-size:calc(.95rem * var(--ui-font-scale));border-radius:var(--radius-sm);background-color:var(--color-gold-deep);color:#fff;font-weight:600;transition:var(--transition-ease)}.settings-modal{background-color:#1c3c69b3;padding:var(--space-8);border-radius:var(--radius-xl);box-shadow:var(--shadow-lg);display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:var(--space-5);max-width:800px;width:70%;max-height:90vh;overflow-y:auto;color:var(--cloud-gray);position:relative;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.settings-modal h2{grid-column:1 / -1;font-size:calc(1.5rem * var(--ui-font-scale));margin-bottom:var(--space-4);color:var(--gold-soft)}.settings-modal label{display:flex;flex-direction:column;font-weight:600;font-size:calc(.95rem * var(--ui-font-scale))}.settings-modal select:hover,.settings-modal select:focus,.settings-modal .close-settings:hover{background-color:#142d50;outline:none;border-color:var(--gold-soft);color:var(--gold-soft)}.close-settings{position:absolute;top:var(--space-4);right:var(--space-8);display:inline-flex;align-items:center;justify-content:center;background:var(--color-steel-blue);color:var(--color-text-light);padding:var(--space-1) var(--space-2);border-radius:var(--radius-md);font-size:.8rem;border:none;cursor:pointer;transition:transform .12s ease,background .16s ease,border-color .16s ease,opacity .16s ease}.settings-modal .save-btn{display:inline-flex;align-items:center;justify-content:center;padding:var(--space-2, 8px) var(--space-5, 20px);border-radius:var(--radius-md, 8px);font-weight:600;position:absolute;bottom:var(--space-4, 16px);right:var(--space-4, 16px)}.save-settings:hover{background-color:var(--gold-deep);color:var(--navy-deep)}.integrations-section{grid-column:1 / -1;margin-top:var(--space-4);padding-top:var(--space-4);border-top:1px solid var(--border-subtle)}.integrations-section h3{color:var(--gold-soft);margin-bottom:var(--space-4)}.google-connect-button{background-color:#4285f4;color:#fff;padding:var(--space-3) var(--space-6);border-radius:var(--radius-md);font-weight:600;transition:var(--transition-ease);max-width:250px;margin:var(--space-4) auto 0;display:block}.google-connect-button:hover{background-color:#357ae8}.mode-layout-columns{display:grid!important;grid-template-columns:1fr 1fr!important;gap:var(--space-8)!important;width:100%!important;max-width:100%!important}.aeli-poweroff-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#000000e6;color:#ccc;font-size:calc(1.2rem * var(--ui-font-scale));display:flex;align-items:center;justify-content:center;z-index:9999;pointer-events:none;text-align:center;opacity:0;transition:opacity .5s ease-in}.aeli-poweroff-overlay.fade-in{opacity:1}@media (max-width: 768px){.main-content{grid-template-columns:1fr;padding:var(--space-2);margin-top:var(--space-8);align-items:stretch}.chat-container{max-width:100%;margin-top:0}.dashboard-theme.chat-container,.low_spoon-theme.chat-container,.focus-theme .chat-container,.partner_support-theme.chat-container{height:75vh}.header-buttons{left:var(--space-2);top:var(--space-2);right:var(--space-2);justify-content:space-between}.settings-modal{width:90%;max-height:90vh}.save-settings{bottom:0;right:var(--space-2)}}.memory-block{padding:var(--space-2) 0;border-top:1px solid var(--border-faint)}.memory-block:first-of-type{border-top:none}.memory-pre{font-family:inherit;font-size:calc(.875rem * var(--ui-font-scale));opacity:.9}
