/* A quiet shell. Colour carries status; motion clarifies an interaction. */
html{min-width:0}
.app-shell{background:#fff}
.app-header{height:80px;padding:0 34px;grid-template-columns:minmax(0,1fr) auto;border-color:#edf0ed;background:rgba(255,255,255,.92)}
.header-mode{font-size:9px;letter-spacing:1.1px;color:#788079}
.header-actions{gap:12px}
.tech-search-launch{display:flex;align-items:center;gap:12px;padding:10px 12px 10px 16px;min-height:42px;border:1px solid #e9ede9;border-radius:13px;background:#fafbfa;color:#707970;font-size:11px;transition:background .2s,border-color .2s}
.tech-search-launch:hover{background:#f4f7f4;border-color:#cddacf}
.tech-search-launch kbd{margin-left:30px;background:#fff;border-color:#e3e8e3;font-size:9px;padding:3px 6px}
.tech-create-button{background:#121a14;color:#fff;border-radius:50%;width:39px;height:39px}
.tech-create-button:hover{background:#247443;color:#fff}
.profile-button{background:#f1f4f0;color:#4f5f50;border-color:#e6eae4}
.side-nav{width:224px;padding:34px 20px 22px;border-color:#edf0ed;background:#fdfefd}
.side-nav .side-link{font-size:11px;min-height:46px;color:#6c756e;gap:12px;padding:13px 15px}
.side-nav .side-link.active{background:#edf5ee;color:#1d6539}
.side-nav .side-link:hover{background:#f0f4ef;color:#244e32}
.side-nav .eyebrow{font-size:9px;color:#818a81;letter-spacing:1.4px}
.app-shell .page-content{max-width:1180px;padding:40px 48px 24px}
.app-shell .page-content.is-home{max-width:1120px}
.tech-connection{display:flex;align-items:center;gap:8px;text-align:left;font-size:10px;line-height:1.6;padding:12px 15px;color:#6e776f;min-height:42px;border:1px solid #e8ede7;border-radius:12px;margin-top:10px;background:#fff}
.connection-dot{width:6px;height:6px;flex-shrink:0;border-radius:50%;background:#909a90}
.tech-connection[data-state=ready] .connection-dot{background:#2d8950}
.tech-connection[data-state=offline] .connection-dot{background:#b07b15}
.tech-connection[data-state=error] .connection-dot{background:#bb4545}
.tech-connection[data-state=loading] .connection-dot{width:10px;height:10px;border:1px solid #d3dfd4;border-top-color:#347546;background:none;animation:tech-spin .8s linear infinite}
.mobile-nav{box-shadow:0 8px 35px #172c160c;border-color:#e5ebe4;background:rgba(255,255,255,.95);border-radius:24px}
.mobile-nav .nav-indicator{background:#edf5eb}
.mobile-nav .nav-link{color:#738071}
.mobile-nav .nav-link.active{color:#1f6538}
.app-footer{color:#90978e}
.module-page .page-heading h1,.page-heading h1{letter-spacing:-1.4px}
.filter-tabs button.active{background:#142019;color:#fff}
.search-field:focus-within{border-color:#79a07f;box-shadow:0 0 0 3px #f0f5ed}
.mod-property-mark{background:#f3f6f0;border-color:#e7ece3;color:#65775d}
.mod-property-row:hover,.mod-reservation-row:hover{background:#fcfdfb}
.module-status{padding-top:0;font-size:10px;letter-spacing:.1px}
.module-status .btn{font-size:11px}
.tech-status-intro{margin:12px 0 26px;line-height:1.8;color:#737b74;font-size:12px}
.tech-status-list>div{padding:19px 0;border-bottom:1px solid #e9ede8;display:flex;flex-direction:column;gap:7px}
.tech-status-list strong{font-size:13px}.tech-status-list span,.tech-status-list p{font-size:11px;color:#737b74;line-height:1.8}
.tech-status-list .tech-status-error{color:#ad3838}
.tech-create-list{display:grid;gap:5px}
.tech-create-list .search-result{border:1px solid transparent;border-radius:15px;gap:15px;padding:15px 10px}
.tech-create-list .search-result:hover{border-color:#e6ede3;background:#f7faf5}
.tech-create-icon{width:43px;height:43px;flex:0 0 43px!important;background:#f2f6ee;border-radius:13px;display:grid;place-items:center;color:#427344}
.tech-create-list .search-result strong{font-size:13px}
.tech-create-list .search-result small{font-size:10px;line-height:1.7}
.tech-search-coverage{margin:15px 6px 0;font-size:10px;color:#7b827b;line-height:1.7}
button:focus-visible,a:focus-visible{outline-color:#388551}
@keyframes tech-spin{to{transform:rotate(360deg)}}
@media(min-width:1450px){.app-header{padding-left:34px;padding-right:40px}}
@media(max-width:1000px){.side-nav{width:185px;padding:30px 12px 20px}.app-shell .page-content{padding-left:30px;padding-right:30px}.header-mode{display:none}.tech-search-launch kbd{margin-left:8px}}
@media(max-width:760px){.app-header{height:72px;padding:0 22px;gap:16px}.app-header .brand-image{width:135px}.header-actions{gap:9px}.tech-search-launch{width:36px;height:40px;min-height:40px;justify-content:center;padding:0;background:none;border:0}.tech-search-launch span,.tech-search-launch kbd{display:none}.tech-search-launch svg{width:20px;height:20px}.tech-create-button{width:34px;height:34px}.profile-button{width:34px;height:34px;font-size:10px}.side-nav{display:none}.app-shell .page-content,.app-shell .page-content.is-home{width:100%;padding:26px 22px 18px}.app-shell .app-footer{padding-top:24px}.mobile-nav{border-radius:23px}.mobile-nav .nav-link{min-height:55px}.module-status{padding:0 0 14px}.tech-create-list .search-result{padding:14px 4px}.tech-search-coverage{font-size:9px}}
@media(max-width:360px){.app-header{padding-left:18px;padding-right:18px}.app-header .brand-image{width:120px}.header-actions{gap:5px}.app-shell .page-content,.app-shell .page-content.is-home{padding-left:18px;padding-right:18px}}
@media(prefers-reduced-motion:reduce){.tech-connection[data-state=loading] .connection-dot{animation:none}.tech-search-launch,.tech-create-button{transition:none}}

/* Contextual help is always available, including inside a form. */
.help-launch{color:#276a42;background:#f1f6f0;border:1px solid #e4ece2;border-radius:50%;width:36px;height:36px;flex-shrink:0}
.help-launch:hover{background:#e6f0e4;color:#19562e}
.drawer-tools{display:flex;align-items:center;gap:8px;flex-shrink:0}
@media(max-width:400px){.app-header{padding-left:16px;padding-right:16px;gap:8px}.app-header .brand-image{width:116px}.header-actions{gap:5px}.header-actions .help-launch{width:32px;height:32px}}

.notification-launch{position:relative;width:36px;height:36px;border:1px solid #e7ece6;border-radius:50%;color:#314d39;background:#fff;flex-shrink:0}.notification-launch:hover{background:#f1f6ef}.notification-count{display:inline-grid;place-items:center;min-width:16px;height:16px;padding:0 4px;border-radius:20px;background:#277344;color:#fff;font-size:8px;line-height:1;font-weight:600;position:absolute;top:-3px;right:-4px;border:2px solid #fff}.notification-count[hidden]{display:none}.nav-count{position:static;margin-left:auto;border:0;min-width:18px;height:18px;font-size:9px}.side-nav{overflow-y:auto}
@media(max-width:760px){.header-actions .tech-create-button{display:none}.notification-launch{width:34px;height:34px}}
@media(max-width:400px){.notification-launch{width:32px;height:32px}}

.commission-invoice-tools{display:flex;flex-wrap:wrap;gap:9px;margin:5px 0 22px}.commission-invoice-tools .btn{font-size:11px;min-height:42px}
