html{font-size:100%}html,body,#root{min-height:100%}body{margin:0;padding:0;font-family:Segoe UI Variable,Segoe UI,sans-serif;color:#f5f7fb;overflow-x:hidden;background:radial-gradient(circle at top left,rgba(59,130,246,.16),transparent 34%),radial-gradient(circle at bottom right,rgba(14,165,233,.12),transparent 28%),#09090b}.app-container{min-height:100vh;display:grid;grid-template-columns:minmax(300px,38vw) minmax(0,1fr);background:linear-gradient(180deg,rgba(255,255,255,.02),transparent 30%)}.sidebar{position:sticky;top:0;height:100vh;display:flex;flex-direction:column;align-items:center;gap:1rem;padding:1.4rem 1rem 1rem;box-sizing:border-box;border-right:1px solid rgba(96,165,250,.25);background:linear-gradient(180deg,#111111f5,#0a0a0cfa);box-shadow:inset -1px 0 #ffffff08}.brand-name{width:100%;text-align:center;font-size:clamp(1.5rem,2vw,2.2rem);font-weight:800;letter-spacing:.12em;color:#3f7cff;text-transform:uppercase}.map-shell{flex:1;width:100%;display:flex;align-items:center;justify-content:center;padding:.5rem 0 .75rem;box-sizing:border-box}.map-shell>*{width:100%;max-width:100%}.main-content{position:relative;min-width:0;min-height:100vh;display:flex;align-items:stretch;justify-content:center;padding:1.1rem 1.1rem 1.4rem;box-sizing:border-box;background:linear-gradient(180deg,rgba(255,255,255,.03),transparent 22%),#0000002e}.navigation-bar{position:absolute;top:1rem;right:1rem;z-index:5;display:flex;flex-direction:column;gap:.7rem;align-items:flex-end}.nav-row{display:flex;gap:.9rem;flex-wrap:wrap;justify-content:flex-end}.nav-btn{display:inline-flex;align-items:center;gap:.45rem;padding:.95rem 1.35rem;border:1px solid rgba(255,255,255,.12);border-radius:999px;color:#fff;background:#ffffff12;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);font-size:1rem;font-weight:700;cursor:pointer;transition:transform .18s ease,background .18s ease,border-color .18s ease,box-shadow .18s ease}.nav-btn:hover{transform:translateY(-2px);background:#ffffff24;border-color:#ffffff40;box-shadow:0 10px 28px #00000047}.chatbot-interface{position:relative;width:100%;min-height:100%;display:flex;flex-direction:column;align-items:center;padding:5.5rem 0 6.5rem;box-sizing:border-box}.chat-messages{width:min(100%,780px);flex:1;display:flex;flex-direction:column;gap:.85rem;overflow-y:auto;overflow-x:hidden;padding:0 .25rem .5rem;box-sizing:border-box;scrollbar-width:none;-ms-overflow-style:none}.chat-messages::-webkit-scrollbar{display:none}.initial-text{position:absolute;top:42%;left:50%;transform:translate(-50%,-50%);width:min(100%,720px);text-align:center;pointer-events:none}.hero-logo-trigger{display:inline-flex;align-items:center;justify-content:center;margin-bottom:.75rem;perspective:900px}.logo-container{width:78px;height:78px;display:inline-flex;align-items:center;justify-content:center;border-radius:50%;overflow:hidden;background:#ffffff0a;box-shadow:0 16px 40px #00000059}.mic-image{width:100%;height:100%;object-fit:cover}.initial-text-main{margin:0;font-size:clamp(2.1rem,4vw,3.55rem);font-weight:800;line-height:1.05;color:#3f7cff}.initial-text-sub{margin:.6rem 0 0;font-size:clamp(1rem,1.55vw,1.3rem);color:#f2f4f8d1}.message{width:fit-content;max-width:min(78%,680px);padding:1rem 1.1rem;border-radius:1.15rem;line-height:1.5;box-sizing:border-box;word-break:break-word}.message.user{align-self:flex-end;background:linear-gradient(135deg,#3f7cff,#2454d8);box-shadow:0 10px 30px #2563eb47}.message.bot{align-self:flex-start;background:#ffffff0f;border:1px solid rgba(255,255,255,.1);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px)}.message.bot.structured-message{width:100%;max-width:100%;padding:.9rem}.typing-dots{letter-spacing:.25em}.structured-response{display:grid;grid-template-columns:repeat(2,minmax(260px,1fr));gap:.9rem;width:100%}.response-box{min-width:0;width:100%;padding:.9rem;border:1px solid rgba(255,255,255,.18);border-radius:.95rem;background:#ffffff08;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}@media (max-width: 760px){.structured-response{grid-template-columns:1fr}}.response-box h3{margin:0 0 .4rem;font-size:.98rem}.response-box p,.response-box li{font-size:.9rem;line-height:1.45}.response-box ul{margin:.55rem 0 0;padding-left:1rem}.chat-input{position:absolute;left:50%;bottom:1.25rem;transform:translate(-50%);width:min(100%,780px);display:flex;gap:.75rem;padding:.85rem;box-sizing:border-box;background:#141416db;border:1px solid rgba(96,165,250,.18);border-radius:1.6rem;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);box-shadow:0 18px 42px #0000004d}.chat-input input{flex:1;min-width:0;padding:1rem 1.05rem;border-radius:1.1rem;border:1px solid rgba(255,255,255,.12);background:#ffffff0d;color:#fff;outline:none;font-size:1rem}.chat-input input::placeholder{color:#ffffff6b}.chat-input input:focus{border-color:#3f7cffcc;box-shadow:0 0 0 3px #3f7cff2e}.chat-input button{min-width:96px;padding:.95rem 1.3rem;border:0;border-radius:1rem;color:#fff;background:linear-gradient(135deg,#4c87ff,#2454d8);font-size:1rem;font-weight:700;cursor:pointer;transition:transform .18s ease,box-shadow .18s ease,opacity .18s ease}.chat-input button:hover{transform:translateY(-1px);box-shadow:0 10px 22px #3f7cff47}.chat-input button:disabled,.chat-input input:disabled{cursor:not-allowed;opacity:.7}.simple-view-panel,.goal-breakdown-container,.habit-logger-container{width:min(100%,900px);margin:0 auto}.simple-view-panel{margin-top:5rem;padding:1.5rem;border-radius:1.25rem;border:1px solid rgba(255,255,255,.1);background:#ffffff0a;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px)}@media (max-width: 1100px){.app-container{grid-template-columns:minmax(280px,44vw) minmax(0,1fr)}.message{max-width:86%}}@media (max-width: 900px){.app-container{grid-template-columns:1fr}.sidebar{position:relative;height:auto;min-height:52vh;border-right:0;border-bottom:1px solid rgba(96,165,250,.2)}.main-content{min-height:auto}.navigation-bar{position:static;align-items:stretch;margin-bottom:1rem}.nav-row{justify-content:center}.chatbot-interface{padding-top:0}.chat-input{width:calc(100% - 1rem);bottom:.85rem}.initial-text{top:36%}}@media (max-width: 640px){.sidebar{min-height:46vh;padding-inline:.75rem}.brand-name{letter-spacing:.08em}.chatbot-interface{padding-bottom:7rem}.chat-input{flex-direction:column;gap:.65rem;border-radius:1.2rem}.chat-input button{width:100%}.structured-response{grid-template-columns:1fr}.message{max-width:92%}.initial-text-main{font-size:2rem}}.state-detail-modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:40;display:flex;align-items:center;justify-content:center;padding:1rem;background:#02061794;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.state-detail-modal{width:min(1040px,96vw);height:min(720px,92vh);border-radius:1rem;overflow:hidden;box-shadow:0 28px 80px #00000073}.goal-breakdown-container{min-height:100vh;padding:20px;width:100%;max-width:100vw;box-sizing:border-box;overflow-x:hidden}.goal-breakdown-header{display:flex;align-items:center;margin-bottom:30px;color:#fff}.back-button:hover{background:#3b82f640;transform:translateY(-1px);box-shadow:0 4px 12px #3b82f64d}.goal-breakdown-title{font-size:32px;font-weight:700;margin:0;text-shadow:0 2px 4px rgba(0,0,0,.3);background:linear-gradient(135deg,#3b82f6,#1d4ed8);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.goal-input-section{background:#3b82f61a;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);border:1px solid rgba(255,255,255,.2);border-radius:20px;padding:25px;margin-bottom:30px;box-shadow:0 8px 32px #0000001a;width:100%;max-width:calc(100vw - 40px);box-sizing:border-box}.goal-input-title{margin:0 0 20px;font-size:20px;color:#fff;font-weight:600}.goal-input-container{display:flex;gap:15px;align-items:center}.goal-input{flex:1;padding:14px 18px;border:1px solid rgba(59,130,246,.3);border-radius:12px;font-size:16px;background:#3b82f61a;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);color:#fff;transition:all .2s ease}.goal-input:focus{outline:none;border-color:#3b82f699;box-shadow:0 0 0 3px #3b82f633}.goal-input::placeholder{color:#fff9}.breakdown-button{padding:14px 24px;color:#fff;border:none;border-radius:12px;cursor:pointer;font-size:16px;font-weight:600;transition:all .2s ease}.breakdown-button:enabled{background:linear-gradient(135deg,#3b82f6,#1d4ed8)}.breakdown-button:disabled{background:#ccc;cursor:not-allowed}.breakdown-button:enabled:hover{transform:translateY(-2px);box-shadow:0 4px 15px #3b82f666}.tasks-section{background:#3b82f61a;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);border:1px solid rgba(59,130,246,.2);border-radius:20px;padding:25px;margin-bottom:30px;box-shadow:0 8px 32px #0000001a;width:100%;max-width:calc(100vw - 40px);box-sizing:border-box}.tasks-title{color:#fff;margin-bottom:20px;font-size:22px;font-weight:600}.progress-section{margin-bottom:25px}.progress-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:8px}.progress-label{font-size:14px;color:#fffc;font-weight:500}.progress-percentage{font-size:14px;color:#fff;font-weight:600}.progress-bar-background{width:100%;height:10px;background-color:#3b82f633;border-radius:5px;overflow:hidden}.progress-bar-fill{height:100%;background:linear-gradient(90deg,#28a745,#20c997);transition:width .3s ease;border-radius:5px}.tasks-container{display:flex;flex-direction:column;gap:15px}.task-card{border-radius:16px;overflow:hidden;transition:all .2s ease;background:#3b82f61a;-webkit-backdrop-filter:blur(15px);backdrop-filter:blur(15px);width:100%;box-sizing:border-box;margin:0}.task-card:hover{border-color:#3b82f680;transform:translateY(-2px);box-shadow:0 8px 25px #3b82f633}.task-card.completed{border:2px solid rgba(40,167,69,.6);box-sizing:border-box}.task-card.incomplete{border:2px solid rgba(59,130,246,.3);box-sizing:border-box}.task-header{display:flex;align-items:center;padding:20px;cursor:pointer;transition:all .2s ease;width:100%;box-sizing:border-box}.task-header.completed{background-color:#28a74533}.task-header.incomplete{background-color:#3b82f61a}.task-checkbox{margin-right:15px;width:20px;height:20px}.task-text{font-size:18px;font-weight:600;flex:1}.task-text.completed{color:#ffffffb3;text-decoration:line-through}.task-text.incomplete{color:#fff;text-decoration:none}.task-subtask-count{font-size:14px;color:#fffc;margin-right:10px}.task-expand-icon{font-size:18px;color:#fff;transition:transform .2s ease}.task-expand-icon.expanded{transform:rotate(180deg)}.task-expand-icon.collapsed{transform:rotate(0)}.subtasks-container{padding:15px 20px 20px 55px;background-color:#3b82f60d;border-top:1px solid rgba(59,130,246,.2);width:100%;box-sizing:border-box}.subtasks-list{display:flex;flex-direction:column;gap:10px}.subtask-item{display:flex;align-items:center;padding:12px 15px;border-radius:10px;cursor:pointer;transition:all .2s ease;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);width:100%;box-sizing:border-box}.subtask-item:hover{border-color:#3b82f680;transform:translateY(-1px);box-shadow:0 4px 15px #3b82f633}.subtask-item.completed{background-color:#28a74533;border:1px solid rgba(40,167,69,.5);box-sizing:border-box}.subtask-item.incomplete{background-color:#3b82f61a;border:1px solid rgba(59,130,246,.3);box-sizing:border-box}.subtask-checkbox{margin-right:12px;width:16px;height:16px}.subtask-text{font-size:15px}.subtask-text.completed{color:#ffffffb3;text-decoration:line-through}.subtask-text.incomplete{color:#fff;text-decoration:none}.subtask-check-mark{margin-left:auto;font-size:16px;color:#28a745}.completion-celebration{text-align:center;padding:30px;background:linear-gradient(135deg,#ffeaa7,#fab1a0);border-radius:12px;margin:20px 0}.celebration-emoji{font-size:48px;margin-bottom:15px}.celebration-text{font-size:20px;color:#2d3436;margin:0}@media (max-width: 768px){.goal-breakdown-container{padding:15px;max-width:100vw}.goal-breakdown-title{font-size:24px}.goal-input-container{flex-direction:column;gap:10px}.goal-input,.breakdown-button{width:100%;box-sizing:border-box}.goal-input-section,.tasks-section{max-width:calc(100vw - 30px);padding:20px}.subtasks-container{padding:15px 20px 20px 40px}.task-text{font-size:16px}.subtask-text{font-size:14px}.task-header{padding:15px}.subtask-item{padding:10px 12px}}.habit-logger-container{min-height:100vh;padding:20px;width:100%;max-width:100vw;box-sizing:border-box;overflow-x:hidden}.habit-logger-header{display:flex;align-items:center;margin-bottom:30px;color:#fff}.back-button{background:#3b82f626;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid rgba(59,130,246,.3);color:#fff;padding:10px 15px;border-radius:12px;cursor:pointer;font-size:16px;margin-right:15px;transition:all .2s ease}.back-button:hover{background:#3b82f640;transform:translateY(-1px)}.habit-logger-title{font-size:32px;font-weight:700;margin:0;text-shadow:0 2px 4px rgba(0,0,0,.3);background:linear-gradient(135deg,#3b82f6,#1d4ed8);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.habit-input-section{background:#3b82f61a;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);border:1px solid rgba(255,255,255,.2);border-radius:20px;padding:25px;margin-bottom:30px;box-shadow:0 8px 32px #0000001a;width:100%;max-width:calc(100vw - 40px);box-sizing:border-box}.habit-input-title{margin:0 0 20px;font-size:20px;color:#fff;font-weight:600}.habit-input-container{display:flex;gap:15px;align-items:center}.habit-input{flex:1;padding:14px 18px;border:1px solid rgba(59,130,246,.3);border-radius:12px;font-size:16px;background:#3b82f61a;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);color:#fff;transition:all .2s ease}.habit-input:focus{outline:none;border-color:#3b82f699;box-shadow:0 0 0 3px #3b82f633}.habit-input::placeholder{color:#fff9}.add-habit-button{padding:14px 24px;color:#fff;border:none;border-radius:12px;cursor:pointer;font-size:16px;font-weight:600;transition:all .2s ease}.add-habit-button:enabled{background:linear-gradient(135deg,#3b82f6,#1d4ed8)}.add-habit-button:disabled{background:#ccc;cursor:not-allowed}.add-habit-button:enabled:hover{transform:translateY(-2px);box-shadow:0 4px 15px #3b82f666}.habits-section{background:#3b82f61a;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);border:1px solid rgba(59,130,246,.2);border-radius:20px;padding:25px;margin-bottom:30px;box-shadow:0 8px 32px #0000001a;width:100%;max-width:calc(100vw - 40px);box-sizing:border-box}.habits-title{color:#fff;margin-bottom:20px;font-size:22px;font-weight:600}.habits-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:20px}.habit-card{background:#3b82f61a;-webkit-backdrop-filter:blur(15px);backdrop-filter:blur(15px);border:2px solid rgba(59,130,246,.3);border-radius:16px;padding:20px;transition:all .2s ease;box-sizing:border-box}.habit-card:hover{border-color:#3b82f680;transform:translateY(-2px);box-shadow:0 8px 25px #3b82f633}.habit-card-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:15px}.habit-name{font-size:18px;font-weight:600;color:#fff;margin:0;text-transform:capitalize}.log-habit-button{border:none;padding:8px 16px;border-radius:8px;cursor:pointer;font-size:14px;font-weight:600;transition:all .2s ease}.log-habit-button:enabled{background:linear-gradient(135deg,#3b82f6,#1d4ed8);color:#fff}.log-habit-button:enabled:hover{transform:translateY(-1px);box-shadow:0 4px 12px #3b82f666}.log-habit-button.completed{background:#28a745;color:#fff}.log-habit-button:disabled{cursor:not-allowed}.habit-stats{display:flex;flex-direction:column;gap:15px}.habit-stat-row{display:flex;justify-content:space-between}.habit-stat-label{font-size:14px;color:#ffffffb3}.habit-streak{font-size:18px;font-weight:700;color:#3b82f6}.habit-last-logged{font-size:14px;font-weight:600;color:#fff}.no-habits-placeholder{text-align:center;padding:50px;background:#3b82f61a;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);border:1px solid rgba(59,130,246,.2);border-radius:16px;margin-bottom:30px;box-shadow:0 8px 32px #0000001a;width:100%;max-width:calc(100vw - 40px);box-sizing:border-box}.placeholder-emoji{font-size:64px;margin-bottom:20px}.placeholder-title{font-size:24px;color:#fff;margin-bottom:10px}.placeholder-text{font-size:16px;color:#fff9;margin:0}@media (max-width: 768px){.habit-logger-container{padding:15px;max-width:100vw}.habit-logger-title{font-size:24px}.habit-input-container{flex-direction:column;gap:10px}.habit-input,.add-habit-button{width:100%;box-sizing:border-box}.habit-input-section,.habits-section{max-width:calc(100vw - 30px);padding:20px}.no-habits-placeholder{max-width:calc(100vw - 30px);padding:30px 20px}.habits-grid{grid-template-columns:1fr;gap:15px}.habit-card{padding:15px}.habit-name{font-size:16px}.placeholder-emoji{font-size:48px}.placeholder-title{font-size:20px}.placeholder-text{font-size:14px}}@media (max-width: 480px){.habit-card-header{flex-direction:column;gap:10px;align-items:flex-start}.log-habit-button{align-self:stretch;text-align:center}}
