.towa-dialog{margin:auto;inset:0;padding:0;border:0;background:transparent;width:min(710px,94vw);max-width:94vw;max-height:92dvh;overflow:visible;color:#293e3b}.towa-dialog::backdrop{background:rgba(20,45,37,.2);backdrop-filter:blur(2px)}.towa-window{font-family:inherit;display:flex;flex-direction:column;background:#fcfcf9;border:1px solid #ffffffd9;border-radius:24px;box-shadow:0 24px 90px #123b3540;height:min(810px,89dvh);overflow:hidden;color:#293e3b;text-align:left;position:relative}.towa-window button,.towa-window textarea{font:inherit}.towa-window button{cursor:pointer}.towa-window button:disabled{opacity:.45;cursor:default}.towa-window a:focus-visible,.towa-window button:focus-visible{outline:3px solid var(--focus-ring);outline-offset:3px}.towa-header{justify-content:space-between;padding:14px 22px;border-bottom:1px solid #e8ede8;flex-shrink:0}.towa-header,.towa-identity{display:flex;align-items:center}.towa-identity{gap:6px}.towa-identity h1{font-size:19px;letter-spacing:.08em;margin:0}.towa-identity small{font-size:11px;color:#73847b}.towa-header nav{display:flex;gap:6px}.towa-header nav a,.towa-header nav button{border:0;background:transparent;color:#64776f;font-size:24px;width:36px;height:36px;border-radius:50%;display:grid;place-items:center;text-decoration:none}.towa-header nav button:hover{background:#edf2ec}.towa-spirit{display:inline-block;width:58px;height:58px;flex-shrink:0;background-image:url(/island/towa/spirits.webp);background-size:300% 200%;background-repeat:no-repeat}.towa-panel{padding:25px 30px;overflow:auto;flex:1;min-height:0}.towa-panel h2{font-size:20px;margin:0 0 10px}.towa-panel p{font-size:14px;line-height:1.8}.towa-spirits{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin:24px 0}.towa-spirits button{display:flex;flex-direction:column;align-items:center;background:#f5f6ef;border:1px solid transparent;border-radius:18px;padding:5px 5px 13px;color:#526c5e;font-size:13px}.towa-spirits button[aria-pressed=true]{border-color:#648c70;background:#edf3e6;box-shadow:0 0 0 2px #8eae7820}.towa-spirits .towa-spirit{width:112px;height:112px;max-width:100%}.towa-primary{background:#355c50;color:white;border:0;padding:12px 24px;border-radius:20px;font-size:14px}.towa-text-button{border:0;background:transparent;color:#57756a;padding:12px 18px;font-size:13px}.towa-field{display:block;font-size:14px;margin:18px 0 8px}.towa-field textarea{display:block;width:100%;box-sizing:border-box;border:1px solid #dce4da;border-radius:12px;padding:12px;margin-top:10px;resize:vertical;background:white;color:#293e3b}.towa-check{display:flex;align-items:flex-start;gap:10px;font-size:13px;line-height:1.7}.towa-check input{margin-top:5px}.towa-muted{color:#748176;font-size:12px!important}.towa-connections{background:#f2f4ee;border-radius:14px;padding:12px 16px;margin:20px 0}.towa-connections h3{font-size:14px;margin:0}.towa-connections span{font-size:11px;border:1px solid #d2dcd0;border-radius:10px;padding:3px 8px;margin-left:8px;white-space:nowrap}.towa-connections small{font-size:12px;color:#758174}.towa-log{flex:1;overflow:auto;min-height:0;padding:24px 25px;overscroll-behavior:contain}.towa-welcome{text-align:center;max-width:450px;margin:12px auto 20px}.towa-welcome>.towa-spirit{width:125px;height:125px}.towa-welcome h2{font-size:21px;font-weight:500;margin:8px 0 16px}.towa-welcome p{font-size:14px;line-height:1.9;color:#708075;white-space:pre-line}.towa-starters{display:flex;flex-wrap:wrap;justify-content:center;gap:8px;margin-top:23px}.towa-starters button{background:#f2f5ed;border:1px solid #dfe6d9;padding:9px 13px;border-radius:17px;color:#55705c;font-size:12px}.towa-bubble{display:flex;align-items:flex-start;gap:6px;margin:0 0 24px;font-size:14px;line-height:1.9;overflow-wrap:anywhere}.towa-bubble p{margin:0;white-space:pre-wrap}.towa-bubble>.towa-spirit{width:36px;height:36px;margin-left:-10px}.towa-bubble.assistant>div{padding:6px 0}.towa-bubble.user{display:block;width:fit-content;max-width:85%;background:#eaf0e4;border-radius:19px 19px 5px 19px;padding:12px 17px;margin-left:auto}.towa-thinking{font-size:12px;color:#809080;padding-left:30px}.towa-compose{padding:12px 22px 16px;border-top:1px solid #edf0e8;flex-shrink:0}.towa-compose form{display:flex;align-items:flex-end;border:1px solid #dce3d9;border-radius:20px;padding:10px;background:white;gap:8px}.towa-compose textarea{border:0;background:transparent;resize:none;flex:1;min-width:0;color:#293e3b;font-size:14px;line-height:1.7;padding:3px 6px}.towa-compose form button{border:0;background:#365f50;color:white;border-radius:50%;width:35px;height:35px;font-size:24px}.towa-compose>small{display:block;color:#829080;font-size:10px;text-align:center;margin-top:8px}.towa-error{background:#fff1e8;color:#844d32;padding:12px 22px;font-size:12px;flex-shrink:0}.towa-error button{border:0;background:transparent;text-decoration:underline;color:inherit;margin-left:8px}.towa-history{margin:20px 0}.towa-history button{display:flex;width:100%;flex-direction:column;text-align:left;border:0;border-bottom:1px solid #e4e9df;padding:15px 0;background:transparent;gap:5px;color:#456153}.towa-history strong{font-weight:500;font-size:14px;overflow:hidden;text-overflow:ellipsis;max-width:100%;white-space:nowrap}.towa-history small{color:#8a9588;font-size:11px}.towa-sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0)}.towa-launcher{position:fixed;right:18px;bottom:80px;z-index:12;border:0;background:#fffffff0;border-radius:50%;box-shadow:0 4px 20px #29483d33;width:78px;height:78px;display:flex;align-items:center;justify-content:center;cursor:pointer}.towa-launcher .towa-spirit{width:76px;height:76px}.towa-local-frame{min-height:100dvh;display:grid;place-items:center;background:#b6cbd0 url(/island/growth-landscape-harbor-restored-v4.webp) 50%/cover}.towa-local-frame>.towa-window{width:min(710px,94vw)}@media(max-width:600px){.towa-dialog{max-height:96dvh;width:96vw;max-width:96vw}.towa-window{height:93dvh;border-radius:20px}.towa-panel{padding:20px}.towa-header{padding:10px 14px}.towa-log{padding:18px}.towa-spirits{gap:8px}.towa-spirits .towa-spirit{width:88px;height:88px}.towa-compose{padding:10px 13px 12px}.towa-identity small{font-size:10px}.towa-launcher{width:62px;height:62px;right:10px}.towa-launcher .towa-spirit{width:60px;height:60px}}.island-app .towa-dialog .towa-field textarea{background:#fff;line-height:1.7;padding:12px;border:1px solid #dce4da;border-radius:12px;font-size:14px;box-shadow:none}.towa-calendar{padding:16px 18px;margin-bottom:18px;border:1px solid #dce6df;border-radius:16px;background:#f0f5f0;font-size:14px}.towa-calendar h3{font-size:14px;margin:0 0 8px}.towa-calendar p{white-space:pre-wrap;line-height:1.7;margin:8px 0}.towa-calendar small{display:block;color:#62776b;font-size:11px}.towa-calendar article+article{border-top:1px solid #dce6df;margin-top:12px;padding-top:8px}.towa-calendar a.towa-primary{display:inline-block;text-decoration:none}.towa-calendar details{margin-top:12px}.towa-calendar-badge{position:absolute;right:0;top:0;background:#47755d;color:white;border-radius:50%;min-width:22px;height:22px;font-size:12px;display:grid;place-items:center}.towa-calendar .towa-text-button{padding:6px 10px}.towa-calendar .towa-primary{margin-top:8px}.towa-calendar-top{padding:12px 20px 0;max-height:40dvh;overflow:auto;flex-shrink:0}.towa-calendar-top .towa-calendar{margin-bottom:0}.towa-calendar-top+.towa-log{min-height:80px}.towa-calendar-services{display:flex;flex-wrap:wrap;gap:8px;align-items:center}.towa-calendar-services span{padding:10px;color:#68776e;font-size:12px}.towa-calendar-account{overflow-wrap:anywhere;margin-top:12px!important}.towa-calendar-choices{border:0;padding:0;display:grid;gap:8px;margin:12px 0}.towa-calendar-choices label{display:flex;align-items:flex-start;gap:10px;padding:10px;background:#fff;border-radius:10px;cursor:pointer}.towa-calendar-choices input{margin-top:5px;accent-color:#47755d}.towa-calendar-choices span{overflow-wrap:anywhere;min-width:0}.towa-calendar-choices small{overflow-wrap:anywhere}.towa-calendar a.towa-text-button{display:inline-block;color:inherit}.towa-calendar-services{display:grid;grid-template-columns:1fr 1fr}.towa-calendar-services button{padding:12px;text-align:left;border:1px solid #cedbd2;border-radius:12px;background:#fff;color:inherit}.towa-calendar-services button[aria-pressed=true]{border:2px solid #47755d}.towa-calendar-services button:disabled{opacity:.65}.towa-calendar-services strong{font-size:12px;display:block}.towa-calendar-services small{margin-top:5px}.towa-calendar-top:has([data-setup=true]){flex:1 1 0;min-height:0;max-height:none;padding-bottom:12px}.towa-calendar-top:has([data-setup=true])+.towa-log{display:none}.towa-agent-card{background:#f3f6f1;border:1px solid #dbe4dc;border-radius:14px;padding:14px;margin:14px 0}.towa-agent-card p{white-space:pre-wrap;overflow-wrap:anywhere}.towa-agent small{display:block;color:#63786d}.towa-agent label{display:block;margin:10px 0}.towa-agent input[type=datetime-local],.towa-agent select,.towa-agent textarea{display:block;width:100%;max-width:100%;padding:9px;border:1px solid #a9beb1;border-radius:8px;background:white;color:#263f34}.towa-agent textarea{min-height:90px}.towa-bubble-content{min-width:0;flex:1}.towa-message-body p{white-space:pre-wrap;overflow-wrap:anywhere;margin:.4em 0 1em}.towa-message-body h3{font-size:1em;margin:1em 0 .4em}.towa-reply{border:0;background:none;color:#607f75;font:inherit;font-size:.78rem;cursor:pointer;padding:.35rem 0}.towa-reply:hover{text-decoration:underline}.towa-bubble blockquote{margin:0 0 .7rem;border-left:3px solid #8ba99c;padding:.35rem .65rem;opacity:.8}.towa-bubble blockquote p{display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden;margin:.25rem 0;font-size:.85rem}.towa-reply-target{display:flex;align-items:flex-start;gap:.7rem;border-left:3px solid #7c9d8d;background:#f0f5ee;padding:.65rem;margin-bottom:.5rem}.towa-reply-target div{flex:1;min-width:0}.towa-reply-target p{margin:.2rem 0;max-height:3em;overflow:hidden;font-size:.85rem}.towa-reply-target button{border:0;background:none;font-size:1.2rem}.towa-notice-label{display:block;color:#6f8379;font-size:.7rem;margin-bottom:.5rem}.towa-connectors h4{margin:0}.towa-auth label,.towa-connectors label{display:block;margin:.6rem 0}.towa-connectors input:not([type=checkbox]),.towa-connectors select{display:block;width:100%;box-sizing:border-box;border:1px solid #cedbd2;border-radius:.5rem;padding:.6rem;font:inherit}.towa-connectors .towa-check{display:flex;overflow-wrap:anywhere}.towa-connectors button{margin:.4rem .6rem .4rem 0;border:1px solid #bdcfc1;border-radius:.6rem;background:#f4f7f0;padding:.5rem .7rem;color:#436354;font:inherit}.towa-auth{padding:.8rem;background:#f3f6f0;border:1px solid #cbd9ce;border-radius:.8rem}.towa-auth strong{overflow-wrap:anywhere}.towa-delete,.towa-handled{margin-left:1rem}.towa-delete:disabled,.towa-handled:disabled{opacity:.5}.towa-log{background:#f3f5ef;scroll-padding-bottom:20px}.towa-bubble{gap:8px;max-width:94%;line-height:1.75}.towa-bubble.assistant{margin-right:auto}.towa-bubble.assistant>.towa-bubble-content{background:#fff;border:1px solid #dce4d8;border-radius:5px 20px 20px 20px;padding:13px 16px;box-shadow:0 2px 8px #29483d08}.towa-bubble.user{background:#355d50;color:#fff;border:1px solid #294e41;margin-right:0}.towa-author{display:block;font-size:12px;font-weight:700;margin-bottom:6px;color:#516c5d}.towa-bubble.user .towa-author{color:#dcebdd;text-align:right}.towa-bubble.user .towa-reply{color:#e3efe7}.towa-bubble>.towa-spirit{margin-left:0}.towa-message-body ol,.towa-message-body ul{padding-left:1.3em;margin:.7em 0}.towa-message-body li{margin:.45em 0;white-space:pre-wrap}.towa-message-body>:first-child{margin-top:0}.towa-message-body>:last-child{margin-bottom:0}.towa-notice-label{font-size:11px}.towa-compose{background:#fcfcf9;z-index:2;box-shadow:0 -5px 18px #29483d0a;padding-bottom:max(12px,env(safe-area-inset-bottom))}.towa-compose form{background:#eef2eb;border:1px solid #a8bcae;border-radius:25px;box-shadow:0 2px 8px #29483d12;min-height:48px;box-sizing:border-box}.towa-compose textarea{font-size:16px;max-height:180px;overflow-y:auto;min-height:30px}.towa-compose textarea::placeholder{color:#607469;opacity:1}.towa-compose form button{flex-shrink:0;width:40px;height:40px}.towa-field input,.towa-setup-fields input[type=time],.towa-setup-fields select{display:block;box-sizing:border-box;width:100%;padding:12px;margin-top:8px;background:white;color:#293e3b;border:1px solid #a8bcae;border-radius:12px;font:inherit;font-size:16px}.towa-setup-fields{border:1px solid #d4dfcf;border-radius:16px;padding:16px;margin:20px 0}.towa-setup-fields legend{font-weight:600;padding:0 6px}.towa-schedule-row{display:grid;grid-template-columns:1fr 1.5fr;gap:12px;margin-top:12px}.towa-schedule-row label{min-width:0;font-size:13px}@media(max-width:600px){.towa-dialog{position:fixed;inset:auto;top:var(--towa-visible-top,0);left:0;margin:0;width:100vw;max-width:100vw;height:var(--towa-visible-height,100dvh);max-height:var(--towa-visible-height,100dvh)}.towa-dialog>.towa-window{height:100%;max-height:100%;border-radius:0;border:0}.towa-local-frame>.towa-window{position:fixed;top:var(--towa-visible-top,0);left:0;width:100vw;height:var(--towa-visible-height,100dvh);border-radius:0}.towa-header{padding-top:max(8px,env(safe-area-inset-top));flex-shrink:0}.towa-log{padding:16px 10px}.towa-bubble{max-width:96%;font-size:16px}.towa-bubble.user{max-width:86%}.towa-bubble>.towa-spirit{width:28px;height:28px}.towa-bubble.assistant>.towa-bubble-content{padding:12px}.towa-compose{padding:8px 10px max(8px,env(safe-area-inset-bottom));flex-shrink:0}.towa-compose>small{display:none}.towa-compose form{padding:6px 7px 6px 10px}.towa-identity small{display:none}.towa-header .towa-spirit{width:45px;height:45px}.towa-panel{padding:18px}.towa-spirits .towa-spirit{width:80px;height:80px}}.towa-message-body ul{list-style:disc}.towa-message-body ol{list-style:decimal}.towa-message-body li{display:list-item}.towa-window .towa-compose{border-top:0;box-shadow:none;background:transparent}.towa-window .towa-compose form{display:grid;grid-template-columns:minmax(0,1fr) 40px;align-items:end;gap:4px 8px;border-radius:28px;padding:8px;background:#edf2eeed;backdrop-filter:blur(16px)}.towa-window .towa-compose textarea{display:block;box-sizing:border-box;width:100%;min-height:32px;max-height:180px;padding:4px 10px;margin:0;border:0;border-radius:0;background:transparent;font-size:16px;line-height:24px;resize:none;box-shadow:none;outline:0}.towa-window .towa-compose form[data-multiline=true] textarea{grid-column:1/-1}.towa-window .towa-compose form[data-multiline=true] button{grid-column:2}.towa-window .towa-compose form button{width:40px;height:40px;min-height:40px;border-radius:50%;padding:0}.towa-window .towa-compose form:has(textarea:focus-visible){outline:2px solid var(--focus-ring);outline-offset:-2px}@media(max-width:600px){.towa-dialog .towa-window,.towa-local-frame .towa-window{box-sizing:border-box}.towa-window .towa-compose{padding:6px 10px max(6px,env(safe-area-inset-bottom))}.towa-window[data-keyboard-open=true] .towa-compose,[data-keyboard-open=true] .towa-compose{padding-bottom:0}.towa-window[data-keyboard-open=true] .towa-header,[data-keyboard-open=true] .towa-header{padding-top:8px}.towa-window[data-input-accessory=true] .towa-compose,[data-input-accessory=true] .towa-compose{padding-bottom:var(--towa-accessory-inset,0)}}.towa-mac-page{max-width:620px;margin:6vh auto;padding:28px;font-family:system-ui,sans-serif;color:#243c38;line-height:1.7}.towa-mac-page h1{font-size:1.7rem;line-height:1.4}.towa-mac-page ol,.towa-mac-setup ol{padding-left:1.5rem}.towa-mac-primary{display:inline-block;border:0;border-radius:14px;padding:12px 22px;background:#315c51;color:#fff;font:inherit;text-decoration:none;cursor:pointer}.towa-mac-primary:disabled{opacity:.6;cursor:wait}.towa-mac-page a:focus-visible,.towa-mac-primary:focus-visible{outline:3px solid var(--focus-ring);outline-offset:3px}.towa-mac-setup{border:1px solid #cfddd5;border-radius:16px;padding:16px;margin:12px 0;background:#f6faf7}.towa-mac-setup h4{margin-top:0}.towa-mac-legacy{margin:18px 0;font-size:.9rem}.towa-mac-legacy summary{cursor:pointer}.towa-mac-page .towa-muted{color:#586b64;font-size:.9rem}@media(max-width:640px){.towa-mac-page{margin:20px auto;padding:20px}}