body{margin:0;background:#f6f3ed;color:#202b29;font:17px/1.5 system-ui}main{max-width:760px;margin:auto;padding:32px 20px}.brand{letter-spacing:.15em;color:#30584c}h1{font:2.3rem Georgia,serif}section{margin:24px 0;padding:24px;background:white;border:1px solid #d9dfdc;border-radius:12px}label{display:block;margin:14px 0}input,textarea{display:block;box-sizing:border-box;width:100%;padding:12px;margin-top:5px;font:inherit;border:1px solid #71847e;border-radius:6px}button{padding:11px 16px;margin:5px 5px 5px 0;background:#264f43;color:white;border:0;border-radius:6px;font:inherit;cursor:pointer}button:disabled{opacity:.5;cursor:default}:focus-visible{outline:3px solid #926720;outline-offset:3px}#status{min-height:1.5em;font-weight:600}textarea{min-height:85px}

#save-status:not(:empty){padding:12px;border-left:4px solid #30584c;background:#edf4f0;font-weight:600}

.signin-notice{padding:1rem;border:2px solid currentColor;border-radius:.5rem;font-weight:600}.signin-notice[data-state=error]{background:#fff0f0;color:#8b1d1d}.signin-notice[data-state=success]{background:#eaf8ef;color:#155c35}.signin-notice:focus{outline:3px solid currentColor;outline-offset:3px}
#google-revocation-ack{display:inline-block;width:auto;margin-right:8px}#google-revocation-status:empty{display:none}

/* Connection screens share the communications workspace palette without changing other setup pages. */
.connections-page{background:#faf7f0;color:#302738;font-size:16px;line-height:1.65}
.connections-page main{max-width:980px;padding:42px 28px 72px}
.connections-page .brand{color:#593777;font-size:12px;font-weight:700;letter-spacing:.2em}
.connection-header{border-bottom:1px solid #d6ccd9;padding-bottom:22px;margin-bottom:24px}
.connections-page h1{font:clamp(2.2rem,5vw,3.4rem)/1.15 Georgia,serif;margin:14px 0}
.connections-page h2{font:1.6rem/1.25 Georgia,serif;margin:0 0 14px}
.connection-intro{max-width:650px;color:#675a70;font-size:18px}
.connection-eyebrow{font-size:11px;font-weight:700;letter-spacing:.15em;color:#775d2c;margin:12px 0}
.connections-page a{color:#593777;text-underline-offset:4px}
.connections-page form{background:#fffefa;border:1px solid #d6ccd9;border-radius:18px;padding:26px;margin:22px 0;box-shadow:0 4px 16px #2b183808;scroll-margin-top:20px}
.connection-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px}
.connection-grid form{margin:16px 0}
.connections-page label{font-size:14px;font-weight:600;margin:18px 0}
.connections-page input,.connections-page select{display:block;box-sizing:border-box;width:100%;max-width:100%;font:inherit;color:#302738;background:#fffefa;border:1px solid #a99aad;border-radius:9px;min-height:46px;padding:10px 12px;margin-top:6px}
.connections-page input[type=checkbox]{display:inline-block;width:18px;min-height:18px;height:18px;margin:0 9px 0 0;vertical-align:middle}
.connections-page button{background:#593777;border:1px solid #593777;border-radius:9px;min-height:44px;font-size:14px;padding:11px 17px}
.connections-page button:hover:not(:disabled){background:#43265c}
.connections-page button:disabled{opacity:.55}
.connections-page #refresh,.connections-page #google-read-revoke,.connections-page #google-disable,.connections-page #google-revocation-review,.connections-page #google-revocation-check{background:transparent;color:#593777}
.connections-page :focus-visible{outline:3px solid #ae873e;outline-offset:4px}
.connections-page #status,.connections-page #google-status,.connections-page #google-permission{padding:12px 16px;background:#f0eaf4;border-radius:10px;font-size:14px}
.connections-page #grants>div{padding:12px 16px;border-bottom:1px solid #d6ccd9}
.connection-steps{list-style:none;display:grid;grid-template-columns:repeat(3,1fr);gap:12px;padding:0;margin:24px 0}
.connection-steps li{padding:14px;background:#f3eef5;border-radius:10px}
.connection-steps strong,.connection-steps span{display:block}
.connection-steps strong{font-size:14px;color:#593777}.connection-steps span{font-size:13px;margin-top:5px}
.connection-removal{margin-top:26px;border-top:1px solid #d6ccd9;padding-top:18px}
.connection-removal summary{cursor:pointer;color:#593777;font-weight:600}
.connection-removal section{box-shadow:none;margin-bottom:0}
.connection-result main{max-width:720px;padding-top:70px}
.connection-result section{padding:32px;border-color:#d6ccd9;border-radius:20px;background:#fffefa}
.connection-result h1{font-size:2.5rem}.connection-note{color:#675a70;font-size:14px}
.connection-link{font-weight:700}.connection-skip{position:absolute;left:20px;top:-100px;padding:12px;background:white;z-index:10}.connection-skip:focus{top:10px}
@media(max-width:640px){.connections-page main{padding:24px 16px 48px}.connection-grid,.connection-steps{grid-template-columns:1fr}.connections-page form{padding:20px}.connection-grid{gap:0}.connection-result main{padding-top:24px}.connection-result section{padding:24px}.connection-result h1{font-size:2rem}}
