.chat{flex:1;min-height:0;display:flex}.chat-sidebar{border-right:1px solid #eee;flex-direction:column;flex-shrink:0;gap:.5rem;width:200px;padding:.75rem;display:flex;overflow-y:auto}.chat-sidebar .new-chat-btn{color:#222;background:#f5f5f5;border-radius:6px;padding:.4rem .6rem;font-size:.875rem;font-weight:500;text-decoration:none;display:block}.chat-sidebar .new-chat-btn:hover{background:#ebe8e4}.session-list{flex-direction:column;gap:.125rem;margin:0;padding:0;list-style:none;display:flex}.session-item{border-radius:4px;align-items:center;display:flex;position:relative}.session-item:hover{background:#f5f5f5}.session-item>a{color:#555;white-space:nowrap;text-overflow:ellipsis;flex:1;min-width:0;padding:.35rem .6rem;font-size:.8125rem;text-decoration:none;overflow:hidden}.session-item>a:hover{color:#222}.session-item>a.active{color:#9e5628}.session-item:has(>a.active){background:#faf3ee}.session-menu-wrap{flex-shrink:0;position:relative}.session-menu-btn{cursor:pointer;color:#888;background:0 0;border:none;border-radius:3px;width:1.5rem;height:1.5rem;margin-right:.25rem;padding:0;font-size:1rem;line-height:1;display:none}.session-menu-btn:hover{color:#222;background:#e8e8e8}.session-item:hover .session-menu-btn{justify-content:center;align-items:center;display:flex}.session-item:has(>a.active) .session-menu-btn{justify-content:center;align-items:center;display:flex}.session-menu{z-index:10;background:#fff;border:1px solid #e5e5e5;border-radius:6px;min-width:100px;padding:.25rem;position:absolute;top:calc(100% + 2px);right:0;box-shadow:0 4px 12px #0000001a}.session-menu button{cursor:pointer;width:100%;font:inherit;text-align:left;color:#c00;background:0 0;border:none;border-radius:4px;padding:.35rem .6rem;font-size:.8125rem;display:block}.session-menu button:hover{background:#fff0f0}.chat-main{flex-direction:column;flex:1;min-width:0;min-height:0;padding:1rem;display:flex}.chat-main .messages{flex-direction:column;flex:1;gap:.75rem;padding-bottom:1rem;display:flex;overflow-y:auto}.chat-main .empty-hint{color:#999;text-align:center;margin-top:2rem;font-size:.875rem}.chat-main .composer{border-top:1px solid #eee;align-items:flex-end;gap:.5rem;padding-top:.5rem;display:flex}.chat-main .composer textarea{resize:none;field-sizing:content;min-height:2.25rem;max-height:8rem;font:inherit;flex:1;padding:.5rem;line-height:1.4;overflow-y:auto}.chat-message.role-user{background:#eee;border-radius:.5rem;align-self:flex-end;max-width:80%;padding:.5rem .75rem}.chat-message.role-assistant{border-radius:.5rem;align-self:flex-start;max-width:80%;padding:.5rem .75rem}.chat-message.streaming{opacity:.7}.chat-message .block.text{white-space:pre-wrap;word-break:break-word;margin:0}.chat-message .block.md{word-break:break-word}.chat-message .block.md>:first-child{margin-top:0}.chat-message .block.md>:last-child{margin-bottom:0}.chat-message .block.md p{margin:.4em 0}.chat-message .block.md h1,.chat-message .block.md h2,.chat-message .block.md h3{margin:.75em 0 .25em;font-size:1em;font-weight:600}.chat-message .block.md ul,.chat-message .block.md ol{margin:.4em 0;padding-left:1.4em}.chat-message .block.md li{margin:.15em 0}.chat-message .block.md code{background:#f0f0f0;border-radius:3px;padding:.1em .3em;font-family:ui-monospace,monospace;font-size:.875em}.chat-message .block.md pre{background:#f5f5f5;border-radius:4px;margin:.4em 0;padding:.6em .75em;overflow-x:auto}.chat-message .block.md pre code{background:0 0;padding:0}.chat-message .block.md hr{border:none;border-top:1px solid #ddd;margin:.75em 0}.chat-message .block.tool-use{color:#888;font-size:.85rem}.chat-message .block.tool-use code{background:#f5f5f5;padding:.1rem .25rem}.chat-message .block.tool-result{background:#f9f9f9;border-left:3px solid #ddd;padding:.5rem;font-family:ui-monospace,monospace;font-size:.85rem}.chat-message .block.tool-result.error{border-left-color:#c00}.proposal-actions{gap:.5rem;margin-top:.5rem;display:flex}.proposal-status{color:#666;font-size:.85rem}.dev-bot{max-width:860px;padding:1.5rem}.dev-bot h1{margin:0 0 .25rem}.dev-bot-intro{color:#666;margin:0 0 1.5rem;font-size:.9rem}.dev-bot-forbidden{color:#888;margin-top:1rem}.dev-bot-template-label{flex-direction:column;gap:.35rem;margin-bottom:1.25rem;font-size:.875rem;font-weight:500;display:flex}.dev-bot-template-select{font:inherit;border:1px solid #ccc;border-radius:4px;max-width:460px;padding:.4rem .5rem}.dev-bot-mode-tabs{border-bottom:2px solid #e5e5e5;gap:0;margin-bottom:1rem;display:flex}.dev-bot-mode-tabs button{cursor:pointer;font:inherit;color:#666;background:0 0;border:none;border-bottom:2px solid #0000;margin-bottom:-2px;padding:.4rem 1rem;font-size:.875rem}.dev-bot-mode-tabs button.active{color:#9e5628;border-bottom-color:#9e5628;font-weight:500}.dev-bot-loading{color:#999;font-size:.875rem}.dev-bot-empty{color:#666;font-size:.875rem}.dev-bot-link-btn{color:#9e5628;cursor:pointer;font:inherit;font-size:inherit;background:0 0;border:none;padding:0;text-decoration:underline}.dev-bot-no-access{background:#faf3ee;border-radius:6px;align-items:center;gap:1rem;margin-bottom:1rem;padding:.75rem 1rem;display:flex}.dev-bot-no-access p{color:#666;margin:0;font-size:.875rem}.dev-bot-no-access button{color:#9e5628;cursor:pointer;font:inherit;white-space:nowrap;background:#fff;border:1px solid #9e5628;border-radius:4px;padding:.4rem .8rem;font-size:.875rem}.dev-bot-no-access button:hover{background:#faf3ee}.dev-bot-data-panel h2{color:#444;margin:0 0 .75rem;font-size:.9rem;font-weight:600}.dev-bot-fields-table{border-collapse:collapse;width:100%;margin-bottom:1rem;font-size:.85rem}.dev-bot-fields-table th{text-align:left;color:#555;border-bottom:2px solid #e5e5e5;padding:.35rem .5rem;font-size:.8rem;font-weight:600}.dev-bot-fields-table td{vertical-align:middle;border-bottom:1px solid #f0f0f0;padding:.35rem .5rem}.dev-bot-fields-table td code{background:#f5f5f5;border-radius:3px;padding:.1em .3em;font-family:ui-monospace,monospace;font-size:.8rem}.dev-bot-value-input{font:inherit;border:1px solid #ddd;border-radius:3px;width:100%;min-width:160px;padding:.25rem .4rem;font-size:.85rem}.dev-bot-value-input:disabled{color:#bbb;background:#f9f9f9}.dev-bot-propose-btn{color:#fff;cursor:pointer;font:inherit;background:#9e5628;border:none;border-radius:4px;padding:.45rem 1rem;font-size:.875rem}.dev-bot-propose-btn:hover:not(:disabled){background:#7e431f}.dev-bot-propose-btn:disabled{opacity:.5;cursor:not-allowed}.dev-bot-proposal-link{color:#444;margin-top:.75rem;font-size:.875rem}.dev-bot-proposal-link a{color:#9e5628}main.error-page{color:#222;text-align:center;max-width:40rem;margin:6rem auto;padding:0 1rem;font-family:system-ui,sans-serif}main.error-page h1{margin:0 0 1rem;font-size:2rem}main.error-page .error-message{color:#c0392b;margin:0 0 1.5rem;font-size:1.1rem}main.error-page a{color:#9e5628;font-size:1rem;text-decoration:none}main.error-page a:hover{text-decoration:underline}.grants{max-width:50rem;margin:2rem auto;padding:0 1rem;font-family:system-ui,sans-serif}.grants h1{margin-bottom:1rem}.grant-card{border:1px solid #ddd;border-radius:8px;margin:1rem 0;padding:1rem}.grant-card header{color:#555;flex-wrap:wrap;justify-content:space-between;gap:1rem;margin-bottom:.75rem;font-size:.85rem;display:flex}.grant-card .grant-ref code{font-family:ui-monospace,monospace}.grant-card .template-pill{color:#335;background:#eef;border-radius:3px;margin-left:.25rem;padding:.05rem .4rem;font-size:.75rem;display:inline-block}.grant-card .paths{margin:0 0 .75rem;padding:0;font-size:.9rem;list-style:none}.grant-card .paths li{padding:.15rem 0}.grant-card .paths code{font-family:ui-monospace,monospace}.grant-card footer{justify-content:flex-end;display:flex}.grant-card .revoke{color:#b00;cursor:pointer;background:#fff;border:1px solid #b00;border-radius:4px;padding:.4rem 1rem;font-family:inherit}.grants .error{color:#b00}.consent-modal{background:#fff;border:1px solid #ddd;border-radius:10px;max-width:32rem;margin:1.5rem auto;padding:1.25rem;font-family:system-ui,sans-serif}.consent-modal h1{margin:0 0 .5rem;font-size:1.4rem}.consent-modal .purpose{color:#333;margin:0 0 .75rem}.consent-modal .meta{color:#666;margin:0 0 1rem;font-size:.85rem}.consent-modal fieldset{border:1px solid #eee;border-radius:6px;margin:.75rem 0;padding:.75rem 1rem}.consent-modal legend{color:#555;padding:0 .4rem;font-size:.85rem}.consent-modal .path-row{align-items:center;gap:.5rem;padding:.25rem 0;display:flex}.consent-modal .path-row code{overflow-wrap:anywhere;font-family:ui-monospace,monospace;font-size:.9rem}.consent-modal .expiry{flex-wrap:wrap;align-items:center;gap:1rem;display:flex}.consent-modal .expiry select{font:inherit;background:#fff;border:1px solid #ccc;border-radius:4px;padding:.3rem .5rem}.consent-modal .error{color:#b00;margin:.5rem 0}.consent-modal .use-limit-toggle{align-items:center;gap:.5rem;display:flex}.consent-modal .use-limit-input{align-items:center;gap:.5rem;margin-top:.5rem;display:inline-flex}.consent-modal .use-limit-input input[type=number]{font:inherit;border:1px solid #ccc;border-radius:4px;width:5rem;padding:.3rem .5rem}.consent-modal .field-error{color:#b00;margin-left:.5rem;font-size:.85rem}.consent-modal footer{gap:.75rem;margin-top:1rem;display:flex}.consent-modal button{font:inherit;cursor:pointer;border:none;border-radius:6px;flex:1;padding:.7rem 1rem}.consent-modal button:disabled{opacity:.55;cursor:not-allowed}.consent-modal .accept{color:#fff;background:#2a7}.consent-modal .reject{color:#333;background:#eee}@media (width<=480px){.consent-modal{border:none;border-radius:0;min-height:100vh;margin:0}}main{color:#222;max-width:40rem;margin:2rem auto;padding:0 1rem;font-family:system-ui,sans-serif}header{align-items:center;gap:.75rem;margin-bottom:2rem;display:flex}.badge{color:#1a4fa0;background:#e6f0ff;border-radius:999px;padding:.125rem .5rem;font-size:.75rem}.logo-frame{justify-content:center;margin:2rem 0;display:flex}.logo-frame svg{width:200px;height:200px}h1{margin:0 0 .5rem;font-size:1.75rem}.hero .tagline{color:#444;font-size:1.05rem}.about{border-top:1px solid #eee;margin-top:2.5rem;padding-top:1.5rem;line-height:1.55}.etymology{color:#555;font-size:.95rem}.ipa{color:#777;font-style:italic}.audiences{border-top:1px solid #eee;grid-template-columns:1fr 1fr;gap:2rem;margin-top:2rem;padding-top:1.5rem;display:grid}.audiences h2{text-transform:uppercase;letter-spacing:.05em;color:#666;margin:0 0 .75rem;font-size:1rem}.audiences ul{margin:0;padding-left:1.1rem;line-height:1.7}.audiences a{color:#9e5628}@media (width<=30rem){.audiences{grid-template-columns:1fr;gap:1.5rem}}.app-header{border-bottom:1px solid #eee;align-items:center;gap:1.5rem;padding:.75rem 1rem;font-family:system-ui,sans-serif;display:flex}.app-header .wordmark{color:#222;font-weight:600;text-decoration:none}.app-header nav{gap:1rem;display:flex}.app-header nav a{color:#555;border-radius:4px;padding:.25rem .5rem;text-decoration:none}.app-header nav a.active{color:#9e5628;background:#faf3ee}.app-header .account{margin-left:auto;position:relative}.app-header .account-trigger{cursor:pointer;background:0 0;border:none;border-radius:50%;padding:0;line-height:0}.app-header .account-trigger:focus-visible{outline-offset:2px;outline:2px solid #9e5628}.app-header .avatar{object-fit:cover;background:#ddd;border-radius:50%;width:32px;height:32px;display:inline-block}.app-header .avatar-fallback{background:radial-gradient(circle at 50% 35%,#c8a48a 0 35%,#0000 36%),radial-gradient(circle at 50% 95%,#c8a48a 0 55%,#eee 56%)}.app-header .account-menu{z-index:20;background:#fff;border:1px solid #e5e5e5;border-radius:6px;min-width:160px;padding:.25rem;position:absolute;top:calc(100% + 6px);right:0;box-shadow:0 4px 16px #00000014}.app-header .account-name{color:#555;white-space:nowrap;text-overflow:ellipsis;border-bottom:1px solid #eee;margin-bottom:.25rem;padding:.4rem .6rem;font-size:.85rem;overflow:hidden}.app-header .account-menu button,.app-header .account-menu a{text-align:left;cursor:pointer;width:100%;font:inherit;color:#222;background:0 0;border:none;border-radius:4px;padding:.4rem .6rem;text-decoration:none;display:block}.app-header .account-menu button:hover,.app-header .account-menu button:focus-visible,.app-header .account-menu a:hover,.app-header .account-menu a:focus-visible{color:#9e5628;background:#faf3ee;outline:none}main.not-found{color:#222;text-align:center;max-width:40rem;margin:6rem auto;padding:0 1rem;font-family:system-ui,sans-serif}main.not-found h1{color:#9e5628;margin:0 0 .25rem;font-size:6rem;font-weight:700}main.not-found p{color:#555;margin:0 0 1.5rem;font-size:1.25rem}main.not-found a{color:#9e5628;font-size:1rem;text-decoration:none}main.not-found a:hover{text-decoration:underline}.profile{max-width:60rem;margin:2rem auto;padding:0 1rem;font-family:system-ui,sans-serif}.profile h1{margin-bottom:1rem}.profile table{border-collapse:collapse;width:100%;margin:1rem 0}.profile th,.profile td{text-align:left;border-bottom:1px solid #eee;padding:.5rem .75rem;font-size:.9rem}.profile th{background:#fafafa;font-weight:600}.profile td.value{overflow-wrap:anywhere;max-width:20rem;font-family:ui-monospace,monospace}.profile .error{color:#b00}.profile .add-form{border-top:1px solid #eee;gap:.75rem;max-width:30rem;margin-top:2rem;padding-top:1rem;display:grid}.profile .add-form label{color:#555;flex-direction:column;gap:.25rem;font-size:.85rem;display:flex}.profile .add-form input,.profile .add-form select{border:1px solid #ccc;border-radius:4px;padding:.4rem .5rem;font-family:inherit}.profile .add-form button{color:#fff;cursor:pointer;background:#9e5628;border:none;border-radius:4px;justify-self:start;padding:.5rem 1rem}.proposals{max-width:50rem;margin:2rem auto;padding:0 1rem;font-family:system-ui,sans-serif}.proposals h1{margin-bottom:1rem}.proposal-card{border:1px solid #ddd;border-radius:8px;margin:1rem 0;padding:1rem}.proposal-card header{color:#555;justify-content:space-between;margin-bottom:.75rem;font-size:.85rem;display:flex}.proposal-card table{border-collapse:collapse;width:100%;font-size:.9rem}.proposal-card th,.proposal-card td{text-align:left;border-bottom:1px solid #eee;padding:.4rem .6rem}.proposal-card td.value{overflow-wrap:anywhere;font-family:ui-monospace,monospace}.proposal-card footer{gap:.75rem;margin-top:.75rem;display:flex}.proposal-card button{cursor:pointer;border:none;border-radius:4px;padding:.4rem 1rem;font-family:inherit}.proposal-card .confirm{color:#fff;background:#2a7}.proposal-card .reject{color:#555;background:#eee}.proposals .error{color:#b00}.proposal-card .action-error{color:#b00;margin:.75rem 0 0;font-size:.9rem}.proposal-card .action-error.grant-exhausted{color:#6b1f1f;background:#fff5f5;border:1px solid #f5c2c2;border-radius:6px;padding:.75rem}.proposal-card .action-error.grant-exhausted p{margin:0 0 .5rem}.proposal-card .action-error.grant-exhausted button{color:#fff;background:#b00}.threads{max-width:60rem;margin:2rem auto;padding:0 1rem;font-family:system-ui,sans-serif}.threads h1{margin-bottom:1rem}.threads .create-form{background:#fafafa;border-radius:8px;grid-template-columns:1fr 1fr 2fr auto;align-items:end;gap:.75rem;margin-bottom:2rem;padding:1rem;display:grid}.threads .create-form h2{color:#666;grid-column:1/-1;margin:0 0 .5rem;font-size:1rem}.threads .create-form label{color:#555;flex-direction:column;gap:.25rem;font-size:.85rem;display:flex}.threads .create-form input{border:1px solid #ccc;border-radius:4px;padding:.4rem .5rem;font-family:inherit}.threads .create-form button{color:#fff;cursor:pointer;background:#9e5628;border:none;border-radius:4px;padding:.5rem 1rem}.thread-list{margin:0;padding:0;list-style:none}.thread-row{border-bottom:1px solid #eee;grid-template-columns:auto 1fr 1fr auto auto;align-items:center;gap:1rem;padding:.75rem .5rem;display:grid}.thread-row .badge{text-transform:uppercase;letter-spacing:.05em;border-radius:999px;padding:.15rem .5rem;font-size:.7rem}.thread-row .badge.open{color:#1a7340;background:#e6f7ec}.thread-row .badge.closed{color:#888;background:#f4f4f4}.thread-row .display-name{font-weight:600}.thread-row .prefix{color:#555;font-size:.85rem}.thread-row .last{color:#999;font-size:.8rem}.thread-row .actions{gap:.5rem;display:flex}.thread-row .actions button{cursor:pointer;background:#fff;border:1px solid #ccc;border-radius:4px;padding:.3rem .7rem;font-size:.85rem}.threads .error{color:#b00}*,:before,:after{box-sizing:border-box}body{margin:0;font-family:system-ui,sans-serif}
