
.google-login{margin:25px 0}.google-button{display:flex;align-items:center;justify-content:center;gap:14px;border:1px solid #dfe3da;border-radius:12px;background:#fff;padding:15px;font-size:14px;font-weight:600;color:#2b322a;width:100%;text-decoration:none}.google-button b{font:700 22px Arial;color:#4285f4}.google-button:disabled{opacity:.55;cursor:default}.google-login p{font-size:11px!important;line-height:1.6!important;margin-top:10px!important}.share-panel{display:flex;justify-content:space-between;align-items:center;gap:22px;background:#eaf0e5;border:1px solid #dde6d5;padding:22px 25px;margin-bottom:24px;border-radius:18px}.share-panel h3{margin:0 0 6px;font-size:16px}.share-panel p{margin:0;color:#7d8873;font-size:12px}.share-panel .primary{flex-shrink:0}.sidebar-housing{display:flex;align-items:center;gap:14px;margin:12px 20px;padding:15px;color:#7d8575;font-size:12px;border-top:1px solid #eceee7;text-decoration:none}.sidebar-housing span{flex:1}.top-housing{margin-left:auto;font-size:11px;text-decoration:none;color:#6d7862;display:flex;align-items:center;gap:7px;padding:10px 12px;border-radius:10px;background:#eef2e8}.topbar{gap:15px}.housing-card{display:flex;align-items:center;gap:18px;padding:23px 26px;background:white;border:1px solid #e4e7df;border-radius:18px;margin:25px 0;color:inherit;text-decoration:none;transition:transform .2s,border-color .2s}.housing-card:hover{transform:translateY(-2px);border-color:#c7d3ba}.housing-card>svg{color:#83956d}.housing-card>div{flex:1}.housing-card strong{font-size:15px}.housing-card p{margin:5px 0 0;font-size:12px;color:#8c9384}.housing-card>span{font-size:12px;color:#6b7d59}.calendar-panel{margin:25px 0}.calendar-hint{font-size:12px;max-width:620px;line-height:1.7}.calendar-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:8px;margin-top:24px}.weekday{font-size:10px;color:#a2aa99;text-transform:uppercase;letter-spacing:.08em;padding:5px}.calendar-day{background:#f8f9f6;border:1px solid #eceee7;min-height:80px;border-radius:11px;display:flex;flex-direction:column;align-items:flex-start;gap:12px;padding:12px;color:#939d87;transition:background .15s,transform .15s;text-align:left;cursor:pointer}.calendar-day b{font-size:13px;font-weight:600;color:#58654d}.calendar-day span{font-size:9px;line-height:1.3}.calendar-day:not(:disabled):hover{transform:translateY(-2px);border-color:#e6ac80}.calendar-day.filled{background:#fff1e6;border-color:#f4d9c4;color:#c77436}.calendar-day.accepted{background:#ebf1e5;border-color:#d9e4ce;color:#6d8557}.calendar-day.today{outline:2px solid #ed6c25;outline-offset:-2px}.calendar-day.chosen{box-shadow:0 0 0 2px #283126}.calendar-day:disabled{opacity:.4;cursor:default}.calendar-legend{display:flex;gap:22px;flex-wrap:wrap;margin-top:18px;font-size:10px;color:#8c9580}.calendar-legend>span{display:flex;align-items:center;gap:6px}.calendar-legend i{width:7px;height:7px;border-radius:50%;background:#e77c38}.calendar-legend .green-dot{background:#859d6c}.calendar-rule{display:flex;align-items:flex-start;gap:10px;color:#8a947f;font-size:11px;line-height:1.7;margin:25px 0 0;padding-top:20px;border-top:1px solid #eceee5}.calendar-rule svg{flex-shrink:0;margin-top:2px}.selected-day{margin-top:25px;border-top:1px solid #eceee5;padding-top:16px}.selected-day>.secondary{margin-top:15px}.change-log{padding:18px 0;border-top:1px solid #eceee6;margin-top:22px}.change-log summary{cursor:pointer;font-weight:600}.change-log>div{margin:20px 0;padding:18px;background:#f8f9f4;border-radius:12px;font-size:12px}.change-log p{line-height:1.7;white-space:pre-wrap;overflow-wrap:anywhere}.change-log p span{color:#939c86}
@media(max-width:700px){.share-panel{align-items:flex-start;flex-direction:column;padding:20px}.share-panel p{line-height:1.6}.topbar>div:first-child{max-width:140px;overflow:hidden;white-space:nowrap}.top-housing{margin-left:auto;padding:9px 10px}.top-housing span{display:none}.topbar{gap:10px}.housing-card{padding:20px;gap:13px}.housing-card>span{font-size:0}.housing-card>span:after{content:'↗';font-size:18px}.housing-card p{font-size:11px;line-height:1.5}.calendar-panel{padding:20px 16px}.calendar-grid{gap:5px;margin-top:18px}.calendar-day{min-height:65px;padding:8px 4px;border-radius:8px;gap:10px}.calendar-day b{font-size:12px}.calendar-day span{font-size:8px}.weekday{font-size:9px;padding:3px}.calendar-legend{gap:13px;font-size:9px;line-height:1.5}.calendar-panel .section-head{align-items:center;gap:10px}.calendar-panel .month-picker{max-width:155px}.calendar-panel .month-picker input{min-width:0;font-size:12px;width:100%}.calendar-rule{font-size:10px}.calendar-panel .report-row{padding:13px 0}.calendar-panel .report-time{font-size:11px}.calendar-panel .report-main strong{font-size:12px}}
@media(prefers-reduced-motion:reduce){.housing-card,.calendar-day{transition:none}.housing-card:hover,.calendar-day:not(:disabled):hover{transform:none}}

/* Self-registration and shared work sites */
.auth-switch {margin:22px 0;display:flex;gap:8px;align-items:center;flex-wrap:wrap}
.auth-switch .text-button {font-weight:700;text-decoration:underline;text-underline-offset:4px}
.registration-trap {position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}
.place-results {display:grid;gap:4px;margin-top:6px}
.place-result {padding:14px 16px;text-align:left;background:#fff;border:1px solid #e1ded7;border-radius:10px;font:inherit;color:inherit;cursor:pointer}
.place-result:hover,.place-result:focus-visible {border-color:#ed6c25;background:#fff5ed;outline:2px solid #ed6c2540}
#address-wrap p {font-size:13px;line-height:1.6}
.maps-attribution {display:flex;gap:12px;flex-wrap:wrap;align-items:center;margin:8px 0 16px;font:12px Arial,sans-serif;color:#555}
.maps-attribution strong {font-size:15px;font-weight:500}
.maps-attribution a {color:inherit}
.google-connect {display:flex;justify-content:space-between;align-items:center;gap:20px;padding:20px 24px;background:#fff;border:1px solid #e8e3da;border-radius:18px;margin-bottom:20px}
.google-connect p {font-size:13px;color:#68655e;margin:6px 0 0}
@media(max-width:650px){.google-connect{align-items:flex-start;flex-direction:column}.place-result{min-height:48px}.auth-inner{padding-top:28px}}

.redirect-uri{display:block;overflow-wrap:anywhere;padding:14px;background:#f4f2ed;border-radius:10px;margin:12px 0 22px}#integrationsform h2:not(:first-child){margin-top:30px}
