:root{font-family:Hiragino Kaku Gothic ProN,Yu Gothic,system-ui,sans-serif;color:#302933;background:#fff9fb;font-synthesis:none;text-rendering:optimizeLegibility}*{box-sizing:border-box}html{min-height:100%;background:#fff9fb;overscroll-behavior-y:none}body{margin:0;min-width:320px;min-height:100vh;min-height:100svh;background:radial-gradient(circle at 12% 8%,rgba(255,219,233,.33),transparent 25rem),radial-gradient(circle at 90% 28%,rgba(222,231,255,.3),transparent 27rem),#fff9fb}button,textarea,input,select{font:inherit}button{border:0;cursor:pointer;-webkit-tap-highlight-color:transparent}button:focus-visible,textarea:focus-visible,input:focus-visible,select:focus-visible,summary:focus-visible{outline:3px solid rgba(119,70,128,.35);outline-offset:3px}button:disabled{cursor:wait;opacity:.58}.brain-shell{width:min(960px,100%);min-height:100vh;min-height:100svh;margin:0 auto;padding:calc(3rem + env(safe-area-inset-top)) max(1.25rem,env(safe-area-inset-right)) calc(4rem + env(safe-area-inset-bottom)) max(1.25rem,env(safe-area-inset-left))}.brain-header{text-align:center;margin:0 auto 3rem}.eyebrow{margin:0 0 .8rem;color:#9b657b;font-size:.83rem;letter-spacing:.32em;text-transform:uppercase}.brain-header h1{margin:0;font-family:Yu Mincho,Hiragino Mincho ProN,serif;font-size:clamp(2.65rem,8vw,4.6rem);font-weight:600;letter-spacing:.06em}.subtitle{max-width:38rem;margin:1.2rem auto 0;color:#8b7080;font-family:Yu Mincho,Hiragino Mincho ProN,serif;font-size:clamp(1rem,2.7vw,1.25rem);line-height:1.9}.category-entry,.conversation-composer{padding:clamp(1.4rem,5vw,2.25rem);border:1px solid #ecd9e2;border-radius:2rem;background:#ffffffe0;box-shadow:0 1.2rem 3.5rem #5e36530d}.category-entry h2,.conversation-composer h2{margin:0 0 1.5rem;font-size:clamp(1.25rem,4vw,1.55rem)}form{display:grid;gap:1rem}label{color:#846c7a;font-size:1.05rem}textarea{width:100%;resize:vertical;border:1px solid #e6ccd9;border-radius:1.35rem;padding:1.1rem 1.2rem;color:#302933;background:#fffafd;line-height:1.7}textarea::placeholder{color:#ab9da6}form>button,.voice-button{justify-self:start;min-height:3.4rem;padding:.8rem 1.55rem;border-radius:999px;color:#fff;background:#81528a;box-shadow:0 .5rem 1.2rem #6c3c7726}.brain-map{margin-top:1.5rem;overflow:hidden;border:1px solid #f0e2e9;border-radius:2.5rem;background:#fff9fcbd}.brain-map-heading{padding:2rem 2rem .25rem}.brain-map-heading h2{margin:0;font-size:1.5rem}.brain-map-heading p{margin:.55rem 0 0;color:#987e8d}.orb-field{min-height:30rem;max-height:45rem;overflow-y:auto;display:flex;flex-wrap:wrap;align-content:flex-start;justify-content:center;gap:clamp(.85rem,3vw,1.5rem);padding:clamp(2rem,7vw,4.5rem) clamp(1rem,5vw,3rem)}.category-orb,.thought-orb{width:clamp(10rem,25vw,12.5rem);aspect-ratio:1;flex:0 0 auto;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.75rem;padding:1.4rem;border-radius:50%;color:#403541;box-shadow:0 1.1rem 2.3rem #5c385414;transition:transform .18s ease,box-shadow .18s ease}.category-orb:hover,.thought-orb:hover{transform:translateY(-4px);box-shadow:0 1.4rem 2.7rem #5c385421}.category-orb:active,.thought-orb:active{transform:scale(.97)}.category-orb span,.thought-orb span{display:-webkit-box;overflow:hidden;font-family:Yu Mincho,Hiragino Mincho ProN,serif;font-size:clamp(1rem,3vw,1.2rem);font-weight:600;line-height:1.5;text-align:center;overflow-wrap:anywhere;-webkit-box-orient:vertical;-webkit-line-clamp:4}.category-orb small{color:#684c5e;font-size:.76rem}.brain-empty{width:100%;margin:auto;color:#a18494;text-align:center;line-height:1.8}.app-notice{margin:1rem 0 0;color:#a54260;text-align:center}.conversation-shell{width:min(800px,100%)}.back-button{min-height:2.75rem;margin:0 0 2rem;padding:.55rem .8rem;border-radius:999px;color:#765279;background:transparent;font-weight:600}.back-button:hover{background:#f5eaf0}.category-header{margin:0 0 2.2rem}.category-header h1{margin:0;font-family:Yu Mincho,Hiragino Mincho ProN,serif;font-size:clamp(2rem,7vw,3.5rem);line-height:1.35;overflow-wrap:anywhere}.category-header>p:last-child{margin:1rem 0 0;color:#8b7080;line-height:1.8}.conversation{min-height:24rem;display:flex;flex-direction:column;gap:1.15rem;padding:clamp(1rem,4vw,1.75rem);border:1px solid #efdee6;border-radius:2rem;background:#fff9}.conversation-loading{margin:auto;color:#987e8d}.chat-bubble{width:fit-content;max-width:84%;padding:1rem 1.15rem;border-radius:1.45rem;box-shadow:0 .45rem 1.5rem #53344c0d}.chat-bubble p{margin:.35rem 0 0;white-space:pre-wrap;line-height:1.72;overflow-wrap:anywhere}.assistant-bubble{align-self:flex-start;border-bottom-left-radius:.45rem;background:#fff}.user-bubble{align-self:flex-end;border-bottom-right-radius:.45rem;background:#f0dfef}.bubble-meta{display:flex;align-items:center;gap:.65rem;color:#9b8090;font-size:.74rem}.bubble-label{margin:0!important;color:#765079;font-weight:700}.bubble-meta time{margin-left:auto}.is-thinking{opacity:.75}.compact-header{margin-bottom:1.5rem}.compact-header h1{font-size:clamp(2.4rem,7vw,4rem)}.main-tabs{position:sticky;top:max(.75rem,env(safe-area-inset-top));z-index:10;width:min(28rem,100%);display:grid;grid-template-columns:1fr 1fr;gap:.35rem;margin:0 auto 1.5rem;padding:.35rem;border:1px solid #ead9e2;border-radius:999px;background:#fffcfde6;box-shadow:0 .6rem 2rem #59354f14;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px)}.main-tabs button{min-height:3rem;border-radius:999px;color:#785f70;background:transparent}.main-tabs button[aria-current=page]{color:#fff;background:#81528a;box-shadow:0 .35rem 1rem #6c3c772e}.main-tabs button span{margin-right:.35rem}.action-candidate{margin-top:1.25rem;padding:clamp(1.3rem,4vw,1.8rem);border:1px solid #decfee;border-radius:1.8rem;background:linear-gradient(135deg,#fbf5ff,#fffaf3);box-shadow:0 .8rem 2rem #53344c0f}.action-candidate h2{margin:0;font-family:Yu Mincho,Hiragino Mincho ProN,serif;font-size:1.3rem;line-height:1.6}.action-candidate>p:not(.eyebrow){color:#806f7b;line-height:1.7}.candidate-fields,.manual-grid{display:grid;grid-template-columns:1fr 1fr;gap:.8rem}.candidate-fields label,.manual-grid label{display:grid;gap:.45rem;font-size:.9rem}.candidate-fields input,.manual-plan input,.manual-plan select{width:100%;min-height:3rem;padding:.65rem .8rem;border:1px solid #e3cfd9;border-radius:.9rem;color:#302933;background:#fff}.candidate-actions{display:flex;flex-wrap:wrap;gap:.7rem;margin-top:1rem}.candidate-actions button{min-height:3rem;padding:.65rem 1.2rem;border-radius:999px;color:#fff;background:#81528a}.candidate-actions .quiet-button{color:#674d5b;background:#f0e7eb}.week-calendar,.day-plan,.manual-plan{border:1px solid #ebdbe3;border-radius:2rem;background:#ffffffd6;box-shadow:0 1rem 3rem #5e36530d}.week-calendar{padding:clamp(1.1rem,4vw,1.8rem)}.week-toolbar{display:grid;grid-template-columns:2.8rem 1fr 2.8rem;align-items:center;gap:.5rem}.week-toolbar h2{margin:0;text-align:center;font-family:Yu Mincho,Hiragino Mincho ProN,serif;font-size:1.25rem}.icon-button{width:2.8rem;height:2.8rem;border-radius:50%;color:#735375;background:#f4eaf0}.today-link{display:block;margin:.65rem auto 1rem;padding:.35rem .8rem;color:#8c637a;background:transparent;text-decoration:underline;text-underline-offset:.2rem}.week-days{display:grid;grid-template-columns:repeat(7,1fr);gap:.45rem}.week-days button{position:relative;min-width:0;min-height:5rem;display:grid;place-items:center;align-content:center;gap:.25rem;border-radius:1.1rem;color:#554750;background:#fff9fc}.week-days button span{color:#927b88;font-size:.78rem}.week-days button strong{font-size:1.15rem}.week-days button small{position:absolute;right:.35rem;bottom:.3rem;min-width:1.25rem;height:1.25rem;display:grid;place-items:center;border-radius:50%;color:#fff;background:#a4668d;font-size:.68rem}.week-days button.is-today{box-shadow:inset 0 0 0 2px #d8b8ca}.week-days button.is-selected{color:#fff;background:#81528a}.week-days button.is-selected span{color:#f7eaf4}.day-plan{margin-top:1rem;padding:clamp(1.3rem,4vw,2rem)}.day-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:1rem}.day-heading h2{margin:0;font-family:Yu Mincho,Hiragino Mincho ProN,serif;font-size:1.45rem}.day-heading>p{margin:0;color:#917887;font-size:.9rem}.rest-day{min-height:12rem;display:grid;place-items:center;align-content:center;gap:.5rem;color:#927c88;text-align:center}.rest-day span{font-size:2.2rem}.rest-day p{max-width:24rem;margin:0;line-height:1.8}.calendar-list{display:grid;gap:.75rem;margin-top:1.25rem}.calendar-card{display:grid;grid-template-columns:2.7rem 1fr 2.3rem;align-items:center;gap:.8rem;padding:1rem;border:1px solid #eedee6;border-radius:1.3rem;background:#fffafd}.completion-button{width:2.45rem;height:2.45rem;border:2px solid #caa9bd;border-radius:50%;color:#fff;background:#fff;font-weight:800}.completion-button[aria-pressed=true]{border-color:#81528a;background:#81528a}.calendar-card-body{min-width:0}.calendar-card-body h3{margin:.2rem 0 .65rem;font-size:1.05rem;line-height:1.5;overflow-wrap:anywhere}.calendar-time{margin:0;color:#927987;font-size:.78rem}.category-chip{max-width:100%;padding:.38rem .7rem;border-radius:999px;color:#594a53;font-size:.75rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.calendar-card.is-done h3{color:#93858d;text-decoration:line-through}.entry-delete{width:2.2rem;height:2.2rem;border-radius:50%;color:#a6808f;background:transparent;font-size:1.3rem}.entry-delete:hover{background:#f5e8ee}.manual-plan{margin-top:1rem;overflow:hidden}.manual-plan summary{cursor:pointer;padding:1.25rem 1.5rem;color:#704f6f;font-weight:700}.manual-plan[open] summary{border-bottom:1px solid #efdee6}.manual-plan form{padding:1.35rem}.manual-plan label{display:grid;gap:.45rem;font-size:.92rem}.conversation-composer{margin-top:1.4rem}.composer-help{margin:-.7rem 0 1.25rem;color:#8d7582;line-height:1.7}.voice-button{width:100%;display:flex;align-items:center;justify-content:center;gap:.8rem;margin:0 0 1.25rem;background:#a16186}.voice-button.is-listening{background:#b34568;animation:listening 1.4s ease-in-out infinite}.voice-status{margin:.7rem 0 1rem;color:#806f7b;font-size:.9rem;line-height:1.7}.microphone{width:.9rem;height:.9rem;border:3px solid white;border-radius:50%;color:transparent}@keyframes listening{50%{box-shadow:0 0 0 .65rem #b3456824}}.category-settings{margin-top:2.5rem;text-align:center}.delete-link{padding:.8rem;color:#a77e8c;background:transparent;text-decoration:underline;text-underline-offset:.22rem}.delete-confirm{display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:.8rem;padding:1.25rem;border:1px solid #ecd5dd;border-radius:1.5rem;background:#fff}.delete-confirm p{width:100%;margin:0 0 .3rem}.danger-button,.quiet-button{min-height:2.8rem;padding:.55rem 1.2rem;border-radius:999px}.danger-button{color:#fff;background:#ad3f5c}.quiet-button{color:#674d5b;background:#f0e7eb}@media(max-width:600px){.brain-shell{padding-top:calc(2rem + env(safe-area-inset-top))}.brain-header{margin-bottom:2rem}.brain-map-heading{padding:1.6rem 1.4rem 0}.orb-field{min-height:28rem;padding:2rem .75rem 3rem;gap:.65rem}.category-orb,.thought-orb{width:min(40vw,10.25rem);padding:1.05rem}.category-orb small{display:none}.chat-bubble{max-width:92%}.candidate-fields,.manual-grid{grid-template-columns:1fr}.week-calendar{padding-inline:.75rem}.week-days{gap:.2rem}.week-days button{min-height:4.5rem;border-radius:.85rem}.week-days button small{right:.2rem;bottom:.18rem}.day-heading{align-items:flex-start;flex-direction:column}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;animation:none!important;transition:none!important}}
