:root{--ink:#1d2523;--muted:#68716e;--paper:#f4f1e9;--panel:#fffdf8;--line:#d9ddd3;--accent:#d85d3f;--accent-dark:#a9432d;--sage:#dce7d8}*{box-sizing:border-box}html,body{min-height:100%;margin:0}body{background:var(--paper);color:var(--ink);font-family:Georgia,Times New Roman,serif}a{color:inherit;text-decoration:none}button{font:inherit}.shell{min-height:100vh;display:flex}.sidebar{border-right:1px solid var(--line);background:#ece9df;width:240px;padding:38px 24px}.brand{letter-spacing:0;font-size:34px;font-weight:700}.brand span{color:var(--accent)}.eyebrow{color:var(--muted);letter-spacing:.08em;text-transform:uppercase;margin:0 0 14px;font-family:Arial,sans-serif;font-size:11px}.sidebar .eyebrow{margin-top:4px;margin-bottom:52px}nav{gap:6px;display:grid}.nav-item{border-radius:4px;padding:12px 14px;font-family:Arial,sans-serif;font-size:14px}.nav-item.active{background:var(--ink);color:var(--paper)}.content{width:min(1120px,100%);margin:0 auto;padding:52px 6vw}.topbar{justify-content:space-between;align-items:flex-start;gap:20px;margin-bottom:48px;display:flex}h1,h2,h3,p{margin-top:0}h1{max-width:620px;margin-bottom:0;font-size:clamp(30px,4vw,54px);font-weight:500;line-height:1.03}h2{max-width:440px;margin-bottom:18px;font-size:clamp(32px,4vw,54px);font-weight:500;line-height:1}h3{margin-bottom:0;font-size:21px;font-weight:500}.status{color:var(--muted);white-space:nowrap;align-items:center;gap:8px;padding-top:7px;font-family:Arial,sans-serif;font-size:12px;display:flex}.status span{background:#65936a;border-radius:50%;width:8px;height:8px}.grid{grid-template-columns:1.45fr 1fr;gap:18px;display:grid}.panel{border:1px solid var(--line);background:var(--panel);border-radius:6px;padding:28px}.welcome{background:var(--sage);flex-direction:column;justify-content:flex-end;min-height:360px;display:flex}.muted{max-width:440px;color:var(--muted);font-family:Arial,sans-serif;font-size:14px;line-height:1.55}button{background:var(--accent);color:#fff;cursor:pointer;border:0;border-radius:3px;width:fit-content;margin-top:18px;padding:13px 16px;font-family:Arial,sans-serif;font-size:13px}button span,.panel a span{margin-left:12px}.button-link{background:var(--accent);color:#fff;cursor:pointer;border:0;border-radius:3px;width:fit-content;margin-top:18px;padding:13px 16px;font-family:Arial,sans-serif;font-size:13px;display:inline-block}.button-link span{margin-left:12px}.setup{min-height:174px}.panel-heading{justify-content:space-between;align-items:baseline;gap:12px;margin-bottom:18px;display:flex}.panel-heading span{color:var(--muted);font-family:Arial,sans-serif;font-size:12px}.progress{background:var(--line);height:5px;margin-bottom:17px}.progress span{background:var(--accent);width:20%;height:100%;display:block}.setup .muted{margin-bottom:18px}.panel a{color:var(--accent-dark);font-family:Arial,sans-serif;font-size:13px}.today{grid-column:1/-1;min-height:190px}.empty{color:var(--muted);margin:38px 0 0;font-family:Arial,sans-serif;font-size:14px}.task-list{gap:10px;margin:0 0 18px;padding:0;list-style:none;display:grid}.task-item{align-items:center;gap:10px;font-family:Arial,sans-serif;font-size:14px;display:flex}.task-status{background:var(--line);border-radius:50%;flex-shrink:0;width:8px;height:8px}.task-status-done{background:#65936a}.task-status-in_progress{background:var(--accent)}.quick-add-form{gap:8px;margin-top:4px;display:flex}.quick-add-form input{border:1px solid var(--line);background:var(--paper);color:var(--ink);border-radius:4px;flex:1;padding:10px 12px;font-family:Arial,sans-serif;font-size:13px}.quick-add-form button{margin-top:0}.banner{border-radius:4px;margin:0 0 20px;padding:12px 16px;font-family:Arial,sans-serif;font-size:13px}.banner-success{background:var(--sage);color:var(--ink)}.banner-error{color:var(--accent-dark);background:#f4d9d3}.connection-card{grid-column:1/-1}.google-setup-guide{border:1px solid var(--line);background:var(--panel);border-radius:6px;margin-top:14px;padding:14px 16px}.google-setup-guide summary{cursor:pointer;color:var(--ink);font-family:Arial,sans-serif;font-size:13px;font-weight:600}.google-setup-guide summary::marker{color:var(--muted)}.google-setup-guide p.muted{max-width:none;margin:12px 0}.google-setup-guide .assistant-access-copy-field{margin:10px 0}.status-pill{background:var(--line);color:var(--ink);text-transform:uppercase;letter-spacing:.04em;border-radius:999px;padding:4px 10px;font-family:Arial,sans-serif;font-size:11px}.status-pill.status-connected{background:var(--sage)}.button-secondary{border:1px solid var(--line);color:var(--ink);cursor:pointer;background:0 0;border-radius:3px;margin-top:18px;padding:11px 16px;font-family:Arial,sans-serif;font-size:13px}.chat-layout{align-items:stretch;gap:20px;height:640px;display:flex}.chat-layout .chat-panel{flex:1;min-height:0}.chat-thread-list{width:260px}.chat-panel{flex-direction:column;min-height:480px;padding:0;display:flex;overflow:hidden}.chat-messages{flex-direction:column;flex:1;gap:14px;padding:28px;display:flex;overflow-y:auto}.chat-message{border-radius:8px;max-width:70%;padding:12px 16px;font-family:Arial,sans-serif;font-size:14px;line-height:1.5}.chat-message p{margin:0}.chat-message .chat-markdown p{margin:0 0 8px}.chat-message .chat-markdown p:last-child{margin-bottom:0}.chat-message .chat-markdown ul,.chat-message .chat-markdown ol{margin:4px 0 8px;padding-left:20px}.chat-message .chat-markdown li{margin-bottom:4px}.chat-message .chat-markdown li:last-child{margin-bottom:0}.chat-message .chat-markdown strong{font-weight:700}.chat-message .chat-markdown code{background:#00000014;border-radius:3px;padding:1px 4px;font-size:12px}.chat-message .chat-markdown a{text-decoration:underline}.chat-message-user{background:var(--ink);color:var(--paper);align-self:flex-end}.chat-message-assistant{background:var(--sage);color:var(--ink);align-self:flex-start}.chat-error{color:var(--accent-dark);margin:0 28px 12px;font-family:Arial,sans-serif;font-size:13px}.approval-card{border:1px solid var(--line);background:var(--paper);color:var(--ink);border-radius:6px;max-width:100%;margin-top:10px;padding:14px 16px;font-family:Arial,sans-serif}.approval-card-title{text-transform:uppercase;letter-spacing:.04em;color:var(--muted);margin:0 0 8px;font-size:11px}.approval-card-fields{gap:6px;margin:0 0 12px;display:grid}.approval-card-field{gap:2px;display:grid}.approval-card-field dt{color:var(--muted);font-size:11px}.approval-card-field dd{white-space:pre-wrap;overflow-wrap:anywhere;margin:0;font-size:14px}.approval-card-actions{flex-wrap:wrap;gap:10px;display:flex}.approval-card-actions button{margin-top:0}.chat-form{border-top:1px solid var(--line);gap:10px;padding:20px 28px;display:flex}.chat-form input{border:1px solid var(--line);font:inherit;background:var(--paper);color:var(--ink);border-radius:4px;flex:1;padding:12px 14px;font-family:Arial,sans-serif;font-size:14px}.chat-form button{margin-top:0}.chat-form button:disabled{opacity:.6;cursor:default}.login-shell{justify-content:center;align-items:center;min-height:100vh;padding:24px;display:flex}.login-card{border:1px solid var(--line);background:var(--panel);text-align:center;border-radius:6px;width:min(360px,100%);padding:36px 32px}.login-card .brand{justify-content:center}.login-card .muted{max-width:none;margin:14px 0 24px}.login-card button{width:100%;margin-top:0}.signout-form{margin:0}.signout-form button{border:1px solid var(--line);color:var(--ink);background:0 0;margin-top:0;padding:8px 14px}.memory-page{--mem-bg:#0a0c10;--mem-panel:#ffffff08;--mem-panel-hover:#ffffff0f;--mem-line:#ffffff14;--mem-text:#eef1f0;--mem-muted:#8b93a1;--mem-glow:#ff9466;--mem-glow-soft:#ff946629;background:var(--mem-bg);min-height:100vh;color:var(--mem-text);flex:1;padding:56px 6vw 80px;position:relative;overflow-x:hidden}.memory-glow{background:radial-gradient(ellipse at center, var(--mem-glow-soft) 0%, transparent 70%);pointer-events:none;filter:blur(10px);width:900px;height:520px;position:absolute;top:-220px;left:50%;transform:translate(-50%)}.memory-header{text-align:center;max-width:720px;margin:0 auto 56px;position:relative}.memory-eyebrow{letter-spacing:.14em;text-transform:uppercase;color:var(--mem-glow);margin-bottom:14px;font-family:Arial,sans-serif;font-size:11px}.memory-title{background:linear-gradient(#fff 0%,#cfd6e0 100%);color:#0000;-webkit-background-clip:text;background-clip:text;margin:0 0 14px;font-family:Georgia,Times New Roman,serif;font-size:clamp(32px,5vw,52px);font-weight:500}.memory-subtitle{color:var(--mem-muted);margin:0 0 36px;font-family:Arial,sans-serif;font-size:14px;line-height:1.6}.memory-search{background:var(--mem-panel);border:1px solid var(--mem-line);border-radius:999px;align-items:center;gap:10px;max-width:520px;margin:0 auto;padding:14px 20px;transition:border-color .25s,box-shadow .25s,background .25s;display:flex;position:relative}.memory-search:focus-within{border-color:var(--mem-glow);box-shadow:0 0 0 4px var(--mem-glow-soft);background:var(--mem-panel-hover)}.memory-search-icon{color:var(--mem-muted);flex-shrink:0}.memory-search input{color:var(--mem-text);background:0 0;border:0;outline:none;flex:1;font-family:Arial,sans-serif;font-size:14px}.memory-search input::placeholder{color:var(--mem-muted)}.memory-search-pulse{background:var(--mem-glow);border-radius:50%;flex-shrink:0;width:8px;height:8px;animation:1s ease-in-out infinite memory-pulse}@keyframes memory-pulse{0%,to{opacity:.35;transform:scale(.8)}50%{opacity:1;transform:scale(1.1)}}.memory-body{max-width:980px;margin:0 auto;position:relative}.memory-groups{gap:44px;display:grid}.memory-group-heading{align-items:baseline;gap:12px;margin-bottom:18px;display:flex}.memory-orb{background:var(--mem-glow-soft);width:26px;height:26px;color:var(--mem-glow);box-shadow:0 0 16px var(--mem-glow-soft);border-radius:50%;justify-content:center;align-items:center;font-size:11px;display:inline-flex}.memory-group-heading h2{color:var(--mem-text);margin:0;font-family:Georgia,Times New Roman,serif;font-size:20px;font-weight:500}.memory-group-count{color:var(--mem-muted);font-family:Arial,sans-serif;font-size:12px}.memory-card-grid{flex-wrap:wrap;gap:14px;display:flex}.memory-card{background:var(--mem-panel);border:1px solid var(--mem-line);border-radius:12px;flex:300px;max-width:380px;padding:18px 20px;transition:transform .2s,border-color .2s,background .2s,box-shadow .2s,opacity .25s;position:relative}.memory-card:hover{background:var(--mem-panel-hover);box-shadow:0 8px 24px #00000059, 0 0 0 1px var(--mem-glow-soft);border-color:#ff946659;transform:translateY(-2px)}.memory-card-removing{opacity:0;pointer-events:none;transform:scale(.96)}.memory-card-fact{color:var(--mem-text);margin:0 0 14px;font-family:Georgia,Times New Roman,serif;font-size:15px;line-height:1.5}.memory-card-meta{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.memory-tag{text-transform:uppercase;letter-spacing:.05em;color:var(--mem-muted);background:#ffffff0f;border-radius:999px;padding:3px 8px;font-family:Arial,sans-serif;font-size:10px}.memory-tag-hedge{color:var(--mem-glow);background:#ff946624}.memory-card-time{color:var(--mem-muted);margin-left:auto;font-family:Arial,sans-serif;font-size:11px}.memory-delete{border:1px solid var(--mem-line);width:20px;height:20px;color:var(--mem-muted);cursor:pointer;opacity:0;background:0 0;border-radius:50%;justify-content:center;align-items:center;margin:0;padding:0;font-size:13px;line-height:1;transition:opacity .2s,border-color .2s,color .2s;display:inline-flex}.memory-card:hover .memory-delete{opacity:1}.memory-delete:hover{border-color:var(--mem-glow);color:var(--mem-glow)}.memory-empty{text-align:center;color:var(--mem-muted);padding:60px 0;font-family:Arial,sans-serif;font-size:14px}.memory-card-pending{border-color:#ff94664d}.memory-card-actions{gap:8px;margin-top:14px;display:flex}.memory-confirm,.memory-reject{cursor:pointer;border-radius:6px;flex:1;padding:7px 10px;font-family:Arial,sans-serif;font-size:12px;transition:opacity .2s}.memory-confirm{background:var(--mem-glow-soft);border:1px solid var(--mem-glow);color:var(--mem-glow)}.memory-reject{border:1px solid var(--mem-line);color:var(--mem-muted);background:0 0}.memory-confirm:hover,.memory-reject:hover{opacity:.8}.memory-confirm:disabled,.memory-reject:disabled{opacity:.5;cursor:default}.memory-timeline-section{margin-top:56px}.memory-timeline{flex-direction:column;gap:10px;display:flex}.memory-event{background:var(--mem-panel);border:1px solid var(--mem-line);border-radius:10px;align-items:baseline;gap:14px;padding:12px 16px;display:flex}.memory-event:hover .memory-delete{opacity:1}.memory-event-time{color:var(--mem-muted);flex-shrink:0;width:90px;font-family:Arial,sans-serif;font-size:11px}.memory-event-summary{color:var(--mem-text);flex:1;font-family:Georgia,Times New Roman,serif;font-size:14px}.memory-event-entity{color:var(--mem-glow)}.skills-intro{margin-bottom:28px}.skills-grid{grid-template-columns:repeat(auto-fill,minmax(280px,1fr))}.skill-card{flex-direction:column;display:flex}.skill-meta{gap:8px;margin-bottom:14px;display:flex}.skill-config-fields{gap:10px;margin:4px 0;display:grid}.skill-config-field{color:var(--muted);gap:5px;font-family:Arial,sans-serif;font-size:12px;display:grid}.skill-config-field input,.skill-config-field textarea,.skill-config-field select{border:1px solid var(--line);background:var(--paper);color:var(--ink);border-radius:4px;padding:9px 11px;font-family:Arial,sans-serif;font-size:13px}.skill-config-field textarea{resize:vertical;font-family:inherit}.skill-config-checkbox{flex-direction:row-reverse;justify-content:flex-end;align-items:center;gap:8px;display:flex}.skill-config-checkbox input{width:auto;padding:0}.record-list{gap:14px;margin:0;padding:0;list-style:none;display:grid}.record-item{border:1px solid var(--line);border-radius:6px;gap:8px;padding:16px 18px;display:grid}.record-item-title{color:var(--ink);font-family:Arial,sans-serif;font-size:14px}.record-meta{color:var(--muted);flex-wrap:wrap;gap:8px;font-family:Arial,sans-serif;font-size:11px;display:flex}.record-source{color:var(--muted);font-family:Arial,sans-serif;font-size:11px;font-style:italic}.record-actions{flex-wrap:wrap;gap:8px;display:flex}.record-actions form{margin:0}.record-actions button{margin-top:0;padding:7px 12px;font-size:12px}.record-tag-overdue{color:#c0392b;background:#ff646429}.skill-inactive-notice{border:1px dashed var(--line);border-radius:6px;padding:16px 18px}.assistant-access-setup{margin-top:18px}.assistant-access-steps{color:var(--ink);margin:10px 0 0;padding-left:20px;font-family:Arial,sans-serif;font-size:13px;line-height:1.7}.assistant-access-steps code{background:var(--line);word-break:break-all;border-radius:3px;padding:1px 5px;font-size:12px}.assistant-access-status{margin:18px 0}.assistant-access-copy-field{border:1px solid var(--line);background:var(--panel);border-radius:6px;margin:10px 0;padding:10px 12px}.assistant-access-copy-field-label{justify-content:space-between;align-items:center;gap:10px;margin-bottom:6px;display:flex}.assistant-access-copy-field-label span{text-transform:uppercase;letter-spacing:.04em;color:var(--muted);font-family:Arial,sans-serif;font-size:11px}.assistant-access-copy-field-label button{margin:0;padding:5px 10px;font-size:12px}.assistant-access-copy-field code{white-space:pre-wrap;word-break:break-all;font-size:12px;line-height:1.5;display:block}@media (max-width:720px){.memory-page{padding:40px 20px 60px}.memory-card{flex-basis:100%;max-width:none}.memory-delete{opacity:1}}.admin-member-table{border-collapse:collapse;width:100%;font-family:Arial,sans-serif;font-size:13px}.admin-member-table th{text-align:left;color:var(--muted);text-transform:uppercase;letter-spacing:.04em;border-bottom:1px solid var(--line);padding:8px 10px;font-size:11px}.admin-member-table td{border-bottom:1px solid var(--line);padding:10px}.onboarding-page{z-index:50;color:#f6f0e6;background:radial-gradient(at top,#2a221a 0%,#14100c 65%);justify-content:center;align-items:center;padding:40px 6vw;display:flex;position:fixed;inset:0;overflow-y:auto}.onboarding-shell{width:min(640px,100%)}.onboarding-progress{justify-content:center;gap:8px;margin-bottom:40px;display:flex}.onboarding-dot{background:#ffffff2e;border-radius:50%;width:8px;height:8px;transition:background .3s,transform .3s}.onboarding-dot.active{background:var(--accent);transform:scale(1.3)}.onboarding-dot.done{background:#ff946680}.onboarding-step{animation:.5s onboarding-step-in}@keyframes onboarding-step-in{0%{opacity:0;transform:translateY(14px)}to{opacity:1;transform:translateY(0)}}.onboarding-eyebrow{letter-spacing:.14em;text-transform:uppercase;color:var(--accent);margin-bottom:14px;font-family:Arial,sans-serif;font-size:11px}.onboarding-title{margin:0 0 16px;font-family:Georgia,Times New Roman,serif;font-size:clamp(28px,4.5vw,46px);font-weight:500;line-height:1.08}.onboarding-body{color:#f6f0e6b8;max-width:480px;margin:0 0 28px;font-family:Arial,sans-serif;font-size:15px;line-height:1.65}.onboarding-actions{flex-wrap:wrap;align-items:center;gap:12px;margin-top:28px;display:flex}.onboarding-actions button,.onboarding-actions .button-link{margin-top:0}.onboarding-skip{color:#f6f0e6b8;background:0 0;border:1px solid #fff3}.onboarding-fields{gap:16px;max-width:420px;display:grid}.onboarding-field{color:#f6f0e699;gap:6px;font-family:Arial,sans-serif;font-size:12px;display:grid}.onboarding-field input,.onboarding-field select,.onboarding-field textarea{color:#f6f0e6;font:inherit;background:#ffffff0a;border:1px solid #ffffff29;border-radius:6px;padding:12px 14px;font-family:Arial,sans-serif;font-size:14px}.onboarding-field textarea{resize:vertical}.onboarding-panel{background:#ffffff08;border:1px solid #ffffff1f;border-radius:10px;margin-bottom:16px;padding:20px}.onboarding-panel .panel{color:var(--ink)}.onboarding-voice-toggle{z-index:51;color:#f6f0e6d9;cursor:pointer;background:#0000004d;border:1px solid #fff3;border-radius:999px;margin-top:0;padding:8px 14px;font-family:Arial,sans-serif;font-size:12px;position:fixed;top:24px;right:24px}.onboarding-chat{max-width:480px}.onboarding-chat .chat-messages{max-height:320px}@media (max-width:720px){.shell{display:block}.sidebar{border-right:0;border-bottom:1px solid var(--line);width:100%;padding:22px}.sidebar .eyebrow{margin-bottom:18px}nav{gap:4px;display:flex;overflow-x:auto}.nav-item{white-space:nowrap}.content{padding:34px 22px 48px}.topbar{margin-bottom:32px;display:block}.status{margin-top:18px}.grid{display:block}.panel{margin-bottom:14px}.chat-layout{flex-direction:column;height:auto}.chat-thread-list{width:100%;max-height:200px}.chat-panel{min-height:420px}.chat-message{max-width:88%}}
