.messages-center{display:grid;gap:16px;min-width:0}.messages-center__header{display:flex;align-items:flex-end;justify-content:space-between;gap:16px}.messages-center__header>div{min-width:0}.messages-center__title{display:flex;align-items:center;gap:14px}.messages-center__title>div{min-width:0}.message-symbol{flex:none;width:58px;height:52px;overflow:visible}.message-symbol__back{fill:none;stroke:var(--graphite-800, #1b1f24);stroke-width:3.5;stroke-linejoin:round;stroke-dasharray:170;stroke-dashoffset:0}.message-symbol__front{fill:var(--orange, #f57c00);transform-origin:46px 42px}.message-symbol__dot{fill:#fff;transform-box:fill-box;transform-origin:center}.messages-center__unread{display:inline-block;margin-left:10px;padding:3px 10px;border-radius:999px;background:var(--orange, #f57c00);color:#fff;font-family:var(--font, inherit);font-size:12.5px;font-weight:800;letter-spacing:0;vertical-align:middle}@keyframes viesti-piirto{0%{stroke-dashoffset:170}to{stroke-dashoffset:0}}@keyframes viesti-ponnahdus{0%{transform:scale(0)}to{transform:scale(1)}}@keyframes viesti-nousu{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}@keyframes viesti-ruksi{0%{stroke-dashoffset:40}to{stroke-dashoffset:0}}@media(prefers-reduced-motion:no-preference){.message-symbol__back{animation:viesti-piirto .55s cubic-bezier(.22,1,.36,1) backwards}.message-symbol__front{animation:viesti-ponnahdus .45s .3s cubic-bezier(.34,1.56,.64,1) backwards}.message-symbol__dot{animation:viesti-ponnahdus .3s cubic-bezier(.34,1.56,.64,1) backwards}.message-symbol__dot:nth-of-type(1){animation-delay:.62s}.message-symbol__dot:nth-of-type(2){animation-delay:.72s}.message-symbol__dot:nth-of-type(3){animation-delay:.82s}.messages-clear__bubble{animation:viesti-nousu .5s cubic-bezier(.22,1,.36,1) backwards}.messages-clear__bubble--ok{animation-delay:.12s}.messages-clear__check{animation:viesti-ruksi .35s .5s cubic-bezier(.22,1,.36,1) backwards}}.messages-clear{display:grid;justify-items:center;align-content:center;gap:8px;min-height:320px;padding:28px 18px;text-align:center}.messages-clear__art{width:128px;height:102px;overflow:visible}.messages-clear__bubble{fill:var(--gray-100, #f1f3f5);stroke:var(--gray-300, #cdd3da);stroke-width:2}.messages-clear__bubble--ok{fill:var(--green-light, #e7f6ed);stroke:var(--green, #2e9e5b);stroke-width:2.5}.messages-clear__check{fill:none;stroke:var(--green, #2e9e5b);stroke-width:5;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:40;stroke-dashoffset:0}.messages-clear strong{font-family:var(--font-display, inherit);font-size:19px;color:var(--graphite-800, #1b1f24)}.messages-clear>span{max-width:360px;color:var(--gray-500, #6b7280);font-size:14px}.messages-clear__actions{display:flex;flex-wrap:wrap;justify-content:center;gap:8px;margin-top:10px}@keyframes viesti-korostus{0%{box-shadow:0 0 #f57c008c}to{box-shadow:0 0 0 12px #f57c0000}}.work-situation.is-highlighted{border-color:var(--orange, #f57c00)}@media(prefers-reduced-motion:no-preference){.work-situation.is-highlighted{animation:viesti-korostus .9s ease-out 2}}.messages-center__header h2{margin:2px 0 4px;font-size:25px}.messages-center__header p{margin:0;color:var(--gray-500, #68727d);font-size:13px}.message-retention{display:flex;align-items:center;gap:9px;padding:10px 12px;border:1px solid #d9e2de;border-radius:8px;background:#f4f8f6;color:#355248;font-size:13px}.message-retention svg{flex:none}.receipt-strip{display:grid;grid-template-columns:170px minmax(0,1fr);gap:12px;padding:12px;border-left:3px solid var(--orange, #ef7d00);background:#fff8ef}.receipt-strip__title{display:flex;align-items:center;gap:8px;color:var(--graphite-800, #1f252b)}.receipt-strip__list{display:grid;gap:7px;min-width:0}.receipt-notice{display:flex;align-items:center;justify-content:space-between;gap:10px;min-width:0;font-size:13px}.receipt-notice>span{min-width:0;overflow-wrap:anywhere}.messages-center__layout{display:grid;grid-template-columns:minmax(250px,320px) minmax(0,1fr);min-height:220px;max-height:690px;overflow:hidden;border:1px solid var(--gray-200, #dde3e8);border-radius:8px;background:var(--white, #fff)}.locked-title{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:9px 12px;border:1px solid var(--orange, #ef7d00);border-radius:8px;background:#fff6ec}.locked-title__value{min-width:0;overflow-wrap:anywhere;font-weight:700}.locked-title .link-btn{flex:none}.messages-center__layout--single{grid-template-columns:minmax(0,1fr)}.thread-list{min-width:0;overflow-y:auto;border-right:1px solid var(--gray-200, #dde3e8);background:#f7f8f9}.thread-list__item{display:grid;gap:5px;width:100%;min-width:0;padding:14px;border:0;border-bottom:1px solid var(--gray-200, #dde3e8);border-left:3px solid transparent;background:transparent;color:inherit;font:inherit;text-align:left;cursor:pointer}.thread-list__item:hover{background:#fff}.thread-list__item.is-active{border-left-color:var(--graphite-800, #1b1f24);background:#fff}.thread-list__item-head{display:flex;align-items:center;justify-content:space-between;gap:8px;min-width:0}.thread-list__item-head strong{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:14px}.thread-list__badge{display:inline-grid;place-items:center;flex:none;min-width:22px;height:22px;padding:0 6px;border-radius:11px;background:var(--orange, #ef7d00);color:#fff;font-size:12px;font-weight:800}.thread-list__preview{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--gray-600, #55606a);font-size:12.5px}.thread-list__item small{color:var(--gray-500, #7a838c);font-size:11px}.thread-view__empty{display:grid;justify-items:center;align-content:center;gap:6px;min-height:180px;padding:24px;color:var(--gray-500, #75808a);text-align:center}.thread-view__empty strong{color:var(--graphite-800, #1f252b)}.thread-view__empty span{font-size:13px}.thread-view{display:grid;grid-template-rows:auto minmax(0,1fr) auto;min-width:0;min-height:0}.thread-view__header{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;padding:14px 16px;border-bottom:1px solid var(--gray-200, #dde3e8)}.thread-view__back{display:none}.thread-view__header>div{min-width:0}.thread-view__header h3{margin:0 0 3px;font-size:17px}.thread-view__header p,.inbox-thread__members{margin:0;color:var(--gray-500, #727c86);font-size:12px;line-height:1.45;overflow-wrap:anywhere}.thread-view__header .thread-view__expiry{margin-top:3px;font-style:italic}.thread-view__messages{display:flex;flex-direction:column;gap:9px;min-width:0;min-height:0;padding:16px;overflow-y:auto;background:#f5f7f8}.thread-view__empty-message{margin:auto;padding:20px;color:var(--gray-500, #75808a);font-size:13px;text-align:center}.thread-message{display:grid;gap:6px;align-self:flex-start;width:fit-content;max-width:78%;padding:10px 12px;border:1px solid var(--gray-200, #dde3e8);border-radius:8px;background:#fff;box-shadow:0 1px 2px #141a1f0a}.thread-message--own{align-self:flex-end;border-color:#efbf80;background:#fff8ef}.thread-message__meta{display:flex;align-items:baseline;justify-content:space-between;gap:16px;font-size:11px}.thread-message__meta time,.thread-message>small{color:var(--gray-500, #78818a)}.thread-message p{margin:0;line-height:1.45;overflow-wrap:anywhere;white-space:pre-wrap}.thread-message>small{justify-self:end;font-size:10.5px}.ack-row{display:flex;flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:4px 12px;margin-top:4px;padding-top:6px;border-top:1px dashed rgba(21,24,29,.14);font-size:12px;color:var(--gray-600, #55606a)}.ack-row__group{display:inline-flex;align-items:center;gap:4px;min-width:0}.ack-row__label{font-weight:700;text-transform:lowercase;color:var(--gray-500, #6b7280)}.ack-row__names{font-weight:700;color:#8a4b08;overflow-wrap:anywhere}.ack-row__more{font-weight:700;color:var(--gray-500, #6b7280)}.ack-row__all{font-weight:700;color:#1d6b3a}.ack-chip{position:relative;display:inline-grid;place-items:center;width:24px;height:24px;border-radius:50%;background:var(--graphite-800, #1b1f24);color:#fff;font-size:9.5px;font-weight:800;letter-spacing:0}.ack-chip svg{position:absolute;right:-4px;bottom:-3px;width:13px;height:13px;padding:2px;border-radius:50%;background:var(--green, #2e9e5b);color:#fff;box-shadow:0 0 0 1.5px #fff}.thread-reply{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:10px;padding:12px 14px;border-top:1px solid var(--gray-200, #dde3e8);background:#fff}.thread-reply label{display:grid;gap:5px;min-width:0;color:var(--gray-600, #55606a);font-size:12px;font-weight:700}.thread-reply textarea{min-width:0;width:100%;min-height:64px;padding:11px 14px;border:1px solid var(--border, #e5e8ec);border-radius:12px;background:var(--surface, #fff);color:var(--text, #15181d);font:inherit;font-size:15px;font-weight:400;line-height:1.45;resize:vertical}.thread-reply textarea::placeholder{color:var(--gray-400, #9aa3ad)}.thread-reply textarea:focus{outline:none;border-color:var(--orange, #f57c00);box-shadow:0 0 0 3px var(--orange-light, #fff3e6)}.new-thread-form{display:grid;gap:16px}.new-thread-form__head{display:flex;align-items:flex-end;justify-content:space-between;gap:12px}.new-thread-form__head>div:first-child{display:grid;gap:2px}.new-thread-form__head span{color:var(--gray-500, #75808a);font-size:12px}.new-thread-form__quick{display:flex;gap:7px}.recipient-picker{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;max-height:290px;overflow-y:auto}.recipient-picker__group-title{grid-column:1 / -1;margin-top:2px;font-size:11px;font-weight:800;text-transform:uppercase;letter-spacing:.4px;color:var(--gray-500, #737c87)}.recipient-picker__group-title:not(:first-child){margin-top:8px}.recipient-option{display:flex;align-items:center;gap:10px;min-width:0;padding:11px;border:1px solid var(--gray-200, #dde3e8);border-radius:8px;background:#fff;cursor:pointer}.recipient-option:hover{border-color:var(--gray-400, #9aa3ac)}.recipient-option.is-selected{border-color:var(--graphite-800, #1f252b);box-shadow:inset 0 0 0 1px var(--graphite-800, #1f252b)}.recipient-option input{flex:none;width:18px;height:18px;accent-color:var(--orange, #ef7d00)}.recipient-option>span{display:grid;min-width:0}.recipient-option strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:13px}.recipient-option small{color:var(--gray-500, #75808a);font-size:11px}.recipient-picker__count{display:flex;align-items:center;gap:6px;margin:-6px 0 0;color:var(--gray-600, #55606a);font-size:12px}.recipient-picker__empty{grid-column:1 / -1;margin:0;padding:20px;color:var(--gray-600, #55606a);text-align:center}.message-inbox__body small{display:block;margin-top:4px;color:var(--gray-500, #75808a);font-size:10.5px}.message-inbox__item--receipt{border-color:#4b8b73;background:#f1f8f5}.message-inbox__item--receipt .message-inbox__icon{color:#32725b}.inbox-thread{display:grid;gap:14px;min-width:0}.inbox-thread .thread-view__messages{max-height:340px;border:1px solid var(--gray-200, #dde3e8);border-radius:8px}@media(max-width:760px){.messages-center__header,.thread-view__header,.new-thread-form__head{align-items:stretch;flex-direction:column}.messages-center__header .btn{width:100%}.receipt-strip{grid-template-columns:1fr}.receipt-notice{align-items:flex-start}.messages-center__layout{grid-template-columns:1fr;max-height:none}.thread-list{max-height:235px;border-right:0;border-bottom:1px solid var(--gray-200, #dde3e8)}.thread-view{min-height:470px}.thread-view__messages{max-height:340px}.thread-message{max-width:94%}.thread-reply{grid-template-columns:1fr}.thread-reply .btn{width:100%}.recipient-picker{grid-template-columns:1fr}.new-thread-form__quick{width:100%}.new-thread-form__quick .btn{flex:1 1 0}.recipient-picker__empty{grid-column:1 / -1;margin:0;padding:20px;color:var(--gray-600, #55606a);text-align:center}}.work-situation{padding:12px 14px;border:1px solid var(--gray-200, #e2e7ec);border-left:3px solid var(--orange, #ef7d00);border-radius:10px;background:var(--gray-50, #f7f8f9)}.work-situation__lead{margin:0 0 10px;font-size:12.5px;color:var(--gray-600, #4b5560)}.work-situation__groups{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:12px}.work-situation__title{display:block;margin-bottom:6px;font-size:11px;font-weight:800;text-transform:uppercase;letter-spacing:.4px;color:var(--gray-500, #737c87)}.work-situation__list{display:grid;gap:6px;margin:0;padding:0;list-style:none}.work-situation__item{display:flex;align-items:center;justify-content:space-between;gap:10px;min-width:0;padding:8px 10px;border:1px solid var(--gray-200, #dde3e8);border-radius:8px;background:var(--white, #fff)}.work-situation__info{display:grid;gap:2px;min-width:0}.work-situation__info strong{font-size:13px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.work-situation__info small{color:var(--gray-500, #75808a);font-size:11.5px;overflow-wrap:anywhere}.work-situation__item .btn{flex:none}.work-situation__item.is-applied{border-color:var(--orange, #ef7d00);background:#fff6ec}@media(max-width:760px){.work-situation__groups{grid-template-columns:1fr}}.work-quickpick{display:grid;gap:10px;margin-bottom:14px;padding:12px;border:1px solid var(--gray-200, #e2e7ec);border-radius:12px;background:var(--gray-50, #f4f6f8)}.work-quickpick__lead{margin:0;font-size:12.5px;color:var(--gray-600, #4b5560);line-height:1.4}.work-quickpick__group{display:grid;gap:6px}.work-quickpick__title{font-size:11px;font-weight:800;text-transform:uppercase;letter-spacing:.4px;color:var(--gray-500, #737c87)}.work-quickpick__chips{display:flex;flex-wrap:wrap;gap:6px}.work-chip{display:inline-flex;align-items:center;gap:6px;max-width:100%;padding:7px 10px;border:1px solid var(--gray-300, #c3cbd3);border-radius:999px;background:#fff;font:inherit;font-size:13px;color:inherit;cursor:pointer;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.work-chip:hover{border-color:var(--graphite-800, #1f2a30)}.work-chip__count{flex:none;display:inline-grid;place-items:center;min-width:18px;height:18px;padding:0 5px;border-radius:999px;background:var(--graphite-800, #1f2a30);color:#fff;font-size:11px;font-weight:700}@media(max-width:760px){.thread-list{max-height:none;border-bottom:0}.messages-center__layout:not(.messages-center__layout--single):not(.is-thread-open) .thread-view{display:none}.messages-center__layout.is-thread-open .thread-list{display:none}.messages-center__layout:not(.is-thread-open) .thread-list__item.is-active{border-left-color:transparent;background:transparent}.thread-view__back{display:inline-flex;align-items:center;gap:2px;align-self:flex-start;min-height:44px;padding:0 10px 0 2px;border:0;background:none;color:var(--orange-dark, #e06b00);font:inherit;font-size:14.5px;font-weight:800;cursor:pointer}.message-symbol{width:46px;height:41px}.messages-center__title{gap:10px}.messages-clear{min-height:280px;padding:22px 12px}.messages-clear__actions{width:100%}.messages-clear__actions .btn{flex:1 1 100%}.ack-row{justify-content:flex-start}}.visually-hidden{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}.company-branding{display:grid;gap:16px}.company-branding__preview{min-height:190px;display:grid;place-items:center;padding:20px;overflow:hidden;background:#f2f4f6;border:1px solid #dfe3e8;border-radius:8px}.company-branding__preview img{width:min(100%,560px);max-height:220px;object-fit:contain;background:#fff}.company-branding__preview strong{color:#1b2027;font-size:40px;letter-spacing:0}.company-branding__copy h3{margin:0 0 5px;font-size:17px}.company-branding__copy p,.company-branding__hint{margin:0;color:#626b76;font-size:13px;line-height:1.5}.company-branding__choose{justify-self:start}.company-branding__install{min-width:0;display:grid;grid-template-columns:auto minmax(0,1fr) 40px;align-items:center;gap:10px;padding:10px 12px;background:#f7f8f9;border:1px solid #dfe3e8;border-radius:8px}.company-branding__install>span{color:#626b76;font-size:12px;font-weight:700;text-transform:uppercase}.company-branding__install code{min-width:0;overflow:hidden;color:#252b32;font-size:12px;text-overflow:ellipsis;white-space:nowrap}.company-branding__install .icon-btn{color:#252b32;background:#fff;border:1px solid #dfe3e8}.company-branding__actions{border-top:1px solid #e4e7eb;padding-top:15px}.company-branding__actions .btn--danger-ghost{margin-right:auto}@media(max-width:560px){.company-branding__preview{min-height:150px;padding:12px}.company-branding__install{grid-template-columns:minmax(0,1fr) 40px}.company-branding__install>span{grid-column:1 / -1}.company-branding__actions{display:grid;grid-template-columns:1fr 1fr}.company-branding__actions .btn{width:100%}.company-branding__actions .btn--danger-ghost{grid-column:1 / -1;margin:0}}.platform-shell{min-height:100vh;background:#f4f6f8}.platform-topbar{position:sticky;z-index:20;top:0;height:68px;padding:0 max(22px,calc((100vw - 1480px)/2));display:flex;align-items:center;justify-content:space-between;gap:24px;background:#fff;border-bottom:1px solid #dfe3e8}.platform-topbar__brand,.platform-topbar__account,.platform-topbar__brand>div{display:flex;align-items:center}.platform-topbar__brand{gap:12px}.platform-topbar__brand>div{align-items:flex-start;flex-direction:column;line-height:1.15}.platform-topbar__brand img{width:44px;height:44px;object-fit:contain}.platform-topbar__brand strong{font-size:16px}.platform-topbar__brand span{margin-top:3px;color:#6b7280;font-size:12px}.platform-topbar__account{gap:12px;color:#4b5563;font-size:13px}.platform-main{width:min(1480px,calc(100% - 44px));margin:0 auto;padding:30px 0 56px}.platform-titlebar,.company-detail__header,.section-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:24px}.platform-titlebar{margin-bottom:22px}.platform-titlebar h1{margin:4px 0 5px;font-size:30px;letter-spacing:0}.platform-titlebar p,.section-heading p{margin:0;color:#69717c}.section-heading__eyebrow{display:inline-flex;align-items:center;gap:6px;color:#69717c;font-size:11px;font-weight:700;letter-spacing:0;text-transform:uppercase}.btn svg{flex:0 0 auto}.capacity-band{min-height:112px;display:grid;grid-template-columns:minmax(300px,1.6fr) repeat(3,minmax(150px,.7fr));background:#fff;border:1px solid #dfe3e8;border-radius:8px;overflow:hidden}.capacity-band__main,.capacity-stat{padding:20px 24px;border-right:1px solid #e5e8ec}.capacity-band>:last-child{border-right:0}.capacity-band__label{display:flex;align-items:baseline;justify-content:space-between;gap:16px}.capacity-band__label span{color:#5d6672;font-size:13px;font-weight:600}.capacity-band__label strong{font-size:24px}.capacity-track{height:8px;margin:14px 0 8px;overflow:hidden;background:#e8ebef;border-radius:4px}.capacity-track span{display:block;height:100%;background:#f3ad18;border-radius:inherit;transition:width .3s ease}.capacity-band__main small{color:#757e89}.capacity-stat{display:flex;align-items:center;gap:13px;color:#56606c}.capacity-stat svg{color:#303741}.capacity-stat span{display:flex;flex-direction:column;font-size:12px}.capacity-stat strong{margin-top:3px;color:#15181d;font-size:24px;line-height:1}.platform-workspace{margin-top:20px;display:grid;grid-template-columns:minmax(310px,.74fr) minmax(580px,1.55fr);min-height:600px;background:#fff;border:1px solid #dfe3e8;border-radius:8px;overflow:hidden}.company-browser{border-right:1px solid #dfe3e8}.company-browser__header{padding:20px;border-bottom:1px solid #e6e9ed}.company-browser__header>div{display:flex;justify-content:space-between;align-items:baseline;margin-bottom:13px}.company-browser__header h2{font-size:18px}.company-browser__header span{color:#737b86;font-size:12px}.compact-search{height:40px;display:flex;align-items:center;gap:9px;padding:0 11px;color:#7a828c;background:#f6f7f9;border:1px solid #e0e4e8;border-radius:6px}.compact-search:focus-within{border-color:#f3ad18;box-shadow:0 0 0 3px #f3ad181f}.compact-search input{width:100%;border:0;outline:0;background:transparent;font:inherit}.company-list{max-height:660px;overflow-y:auto}.company-list__empty{padding:28px 20px;color:#737b86;text-align:center}.company-row{width:100%;min-height:76px;display:grid;grid-template-columns:38px minmax(0,1fr) auto 18px;align-items:center;gap:11px;padding:12px 16px;color:inherit;text-align:left;background:#fff;border:0;border-bottom:1px solid #eceef1;cursor:pointer}.company-row:hover{background:#fafbfc}.company-row.is-selected{background:#fff9ec;box-shadow:inset 3px 0 #f3ad18}.company-row__mark{width:38px;height:38px;display:grid;place-items:center;background:#242a31;color:#fff;border-radius:6px;font-weight:800}.company-row__body{min-width:0;display:flex;flex-direction:column}.company-row__body strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:14px}.company-row__body small{margin-top:4px;color:#747d88}.state-dot{display:inline-flex;align-items:center;gap:6px;color:#59616c;font-size:12px;white-space:nowrap}.state-dot:before{width:7px;height:7px;content:"";background:#a8afb7;border-radius:50%}.state-dot.is-active:before{background:#2e9e5b}.state-dot.is-inactive:before{background:#d64545}.company-detail{min-width:0;padding:26px}.company-detail__header{padding-bottom:24px;border-bottom:1px solid #e5e8ec}.company-detail__header h2{margin:5px 0 8px;font-size:24px}.company-detail__actions{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:8px}.company-detail__empty{min-height:440px;display:grid;place-content:center;justify-items:center;gap:8px;color:#7c858f}.team-admin{padding-top:26px}.section-heading{align-items:center}.section-heading h2{margin:4px 0 3px;font-size:19px}.team-admin__loading{min-height:180px;display:grid;place-items:center}.team-empty{margin-top:20px;padding:38px 20px;display:flex;flex-direction:column;align-items:center;gap:7px;color:#737b86;background:#f8f9fa;border:1px dashed #ccd2d8;border-radius:7px}.team-empty strong{color:#343b44}.admin-table-wrap{margin-top:18px;overflow-x:auto;border:1px solid #e1e5e9;border-radius:7px}.admin-table{width:100%;border-collapse:collapse;font-size:13px}.admin-table th{padding:10px 12px;color:#68717c;font-size:11px;text-align:left;text-transform:uppercase;background:#f7f8f9;border-bottom:1px solid #e1e5e9}.admin-table td{padding:13px 12px;vertical-align:middle;border-bottom:1px solid #eceef1}.admin-table tr:last-child td{border-bottom:0}.admin-table tr.is-muted{opacity:.62}.table-subline{display:block;margin-top:3px;color:#737c87;font-size:12px}.role-chip{display:inline-flex;padding:3px 7px;color:#3f4751;font-size:11px;font-weight:650;background:#eceff2;border-radius:4px}.table-actions{text-align:right;white-space:nowrap}.view-chip-row{display:flex;flex-wrap:wrap;gap:5px;margin-top:6px}.view-chip{display:inline-flex;align-items:center;gap:4px;padding:3px 8px;color:#3f4751;font-size:11.5px;font-weight:600;background:#eef1ee;border:1px solid #d8dfda;border-radius:999px;cursor:pointer}.view-chip:hover{background:#e2e8e2}.view-chip--preview{color:#2b5c46;background:#e9f3ec;border-color:#c4dccb}.view-chip--preview:hover{background:#dcecdf}.icon-action{width:36px;height:36px;display:inline-grid;place-items:center;padding:0;color:#4b5561;background:#fff;border:1px solid #dfe3e8;border-radius:6px;cursor:pointer}.icon-action+.icon-action{margin-left:6px}.icon-action:hover:not(:disabled){color:#15181d;background:#f4f6f8}.icon-action--danger:hover:not(:disabled){color:#bd2f2f;background:#fff2f2;border-color:#efbaba}.icon-action--success:hover:not(:disabled){color:#247d49;background:#eefaf2;border-color:#b7dec6}.icon-action:disabled{opacity:.45;cursor:not-allowed}.admin-form{display:grid;gap:16px}.admin-form__intro{display:flex;align-items:flex-start;gap:11px;padding:12px;background:#f6f7f9;border-radius:6px}.admin-form__intro svg{margin-top:2px;flex:0 0 auto;color:#58616c}.admin-form__intro p{margin:0;color:#5f6873;font-size:13px}.company-data-form{display:grid;gap:18px}.company-data-form__company{display:flex;align-items:center;gap:10px;padding-bottom:14px;border-bottom:1px solid #e5e8ec}.company-data-form__company>span{display:flex;min-width:0;flex-direction:column}.company-data-form__company small{margin-top:2px;color:#727b86}.company-data-tabs{width:100%}.company-data-tabs .segmented__btn{flex:1 1 0}.company-data-form__section{min-width:0;margin:0;padding:0;border:0}.company-data-form__section legend,.company-data-form__section h3{margin:0 0 10px;color:#22272e;font-size:15px;font-weight:750}.company-data-form__section p{margin:0 0 14px;color:#626b76;font-size:13px;line-height:1.5}.company-data-form__section--danger{padding:14px;background:#fff5f5;border:1px solid #edc9c9;border-radius:7px}.company-data-form__section--danger h3{color:#a72e2e}.company-data-form__section--danger p{margin-bottom:0}.company-data-options{display:grid;grid-template-columns:1fr 1fr;gap:8px}.company-data-option{min-width:0;display:flex;align-items:flex-start;gap:10px;padding:12px;background:#fff;border:1px solid #dde2e7;border-radius:7px;cursor:pointer}.company-data-option:has(input:checked){background:#fff9eb;border-color:#dfa619}.company-data-option input{width:17px;height:17px;margin:1px 0 0;accent-color:#d89300}.company-data-option span{display:flex;min-width:0;flex-direction:column}.company-data-option strong{color:#282e35;font-size:13px}.company-data-option small{margin-top:3px;color:#717a85;font-size:11px;line-height:1.35}.company-data-confirm{padding-top:15px;border-top:1px solid #e5e8ec}.platform-loading{min-height:400px;display:grid;place-items:center}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}@media(max-width:1080px){.capacity-band{grid-template-columns:1.4fr repeat(3,.7fr)}.capacity-band__main,.capacity-stat{padding:18px}.platform-workspace{grid-template-columns:minmax(280px,.72fr) minmax(0,1.3fr)}.company-detail{padding:22px}.admin-table th:nth-last-child(2),.admin-table td:nth-last-child(2){display:none}}@media(max-width:800px){.platform-workspace{grid-template-columns:1fr}.platform-workspace>section{min-width:0}.company-browser{border-right:none;border-bottom:1px solid #e3e8ee}.company-detail{padding:16px}}@media(max-width:800px){.platform-topbar{padding:0 16px}.platform-main{width:min(100% - 28px,720px);padding-top:22px}.platform-titlebar h1{font-size:25px}.capacity-band{grid-template-columns:1fr 1fr}.capacity-band__main{grid-column:1 / -1;border-right:0;border-bottom:1px solid #e5e8ec}.capacity-stat{border-bottom:1px solid #e5e8ec}.capacity-stat:last-child{grid-column:1 / -1;border-bottom:0}.platform-workspace{display:block}.company-browser{border-right:0;border-bottom:1px solid #dfe3e8}.company-list{max-height:320px}.company-detail{min-height:480px}}@media(max-width:560px){.platform-topbar__account>span{display:none}.platform-topbar__brand span{display:none}.platform-titlebar,.section-heading,.company-detail__header{align-items:stretch;flex-direction:column;gap:14px}.platform-titlebar .btn,.section-heading .btn{width:100%}.capacity-band{grid-template-columns:1fr}.capacity-stat,.capacity-stat:last-child{grid-column:auto;border-right:0}.company-detail{padding:18px 14px}.company-detail__actions{justify-content:stretch}.company-detail__actions .btn{flex:1 1 auto}.company-data-tabs{display:grid;grid-template-columns:1fr}.company-data-options{grid-template-columns:1fr}.admin-table-wrap{border:0;overflow:visible}.admin-table,.admin-table tbody{display:block}.admin-table thead{display:none}.admin-table tr{margin-bottom:10px;display:grid;grid-template-columns:1fr auto;gap:10px;padding:14px;border:1px solid #e1e5e9;border-radius:7px}.admin-table td{display:block;padding:0;border:0}.admin-table td:nth-child(1){grid-column:1 / -1}.admin-table td:nth-last-child(2){display:none}.admin-table .table-actions{grid-column:2;grid-row:2 / 4;align-self:center}}@media(prefers-reduced-motion:reduce){.capacity-track span{transition:none}.is-spinning{animation:none}}.metrics-band{margin-top:16px;padding:18px;background:#fff;border:1px solid #e3e7ec;border-radius:12px}.metrics-band__head{display:flex;align-items:center;justify-content:space-between;margin-bottom:14px}.metrics-band__head h2{display:flex;align-items:center;gap:8px;margin:0;font-size:16px;color:#1b2027}.metrics-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:12px}.metric-card{padding:14px;background:#f7f8fa;border:1px solid #e6e9ee;border-radius:10px}.metric-card__top{display:flex;align-items:center;gap:7px;color:#58616c;font-size:12.5px;font-weight:600;text-transform:uppercase;letter-spacing:.4px;margin-bottom:8px}.metric-card__top svg{color:#33755b}.metric-card strong{display:block;font-size:21px;color:#171d1f;line-height:1.1}.metric-card strong small{font-size:13px;color:#97a0aa;font-weight:600}.metric-card small{display:block;margin-top:5px;color:#6b747e;font-size:12px}.meter{height:7px;margin:9px 0 3px;border-radius:999px;background:#e6e9ee;overflow:hidden}.meter span{display:block;height:100%;border-radius:999px;transition:width .5s ease}.meter.is-ok span{background:#33755b}.meter.is-warn span{background:#d9982a}.meter.is-danger span{background:#c1392b}.metrics-band__foot{display:block;margin-top:12px;color:#8a929b;font-size:11.5px}.is-spinning{animation:merp-spin .9s linear infinite}@keyframes merp-spin{to{transform:rotate(360deg)}}.segmented{display:flex;gap:4px;padding:4px;background:#eef0f3;border-radius:9px;margin-bottom:4px}.segmented__btn{flex:1;display:inline-flex;align-items:center;justify-content:center;gap:6px;padding:8px 10px;border:0;border-radius:6px;background:transparent;color:#5f6873;font:inherit;font-size:13px;font-weight:600;cursor:pointer;transition:background .15s,color .15s}.segmented__btn.is-active{background:#fff;color:#1b2027;box-shadow:0 1px 3px #14181d1f}.admin-form__hint{margin:0;color:#5f6873;font-size:13px}.input-with-btn{display:flex;gap:8px;align-items:stretch}.input-with-btn input{flex:1;min-width:0}.input-with-btn .btn{flex:0 0 auto;white-space:nowrap}.company-detail{scroll-margin-top:82px}.company-detail:focus{outline:none}.company-row:focus-visible{outline:3px solid rgba(243,173,24,.35);outline-offset:-3px}@media(max-width:560px){.capacity-band{grid-template-columns:repeat(3,minmax(0,1fr))}.capacity-band__main{grid-column:1 / -1;padding:16px;border-bottom:1px solid #e5e8ec}.capacity-band__main small{display:none}.capacity-track{margin:10px 0 0}.capacity-stat,.capacity-stat:last-child{min-width:0;padding:13px 6px;flex-direction:column;justify-content:center;gap:5px;text-align:center;border-right:1px solid #e5e8ec;border-bottom:0}.capacity-stat:last-child{border-right:0}.capacity-stat svg{width:17px;height:17px}.capacity-stat span{min-width:0;align-items:center;font-size:12px;line-height:1.25}.capacity-stat strong{font-size:20px}.company-list{max-height:230px}.company-detail{min-height:0}}.manage-btn{display:inline-flex;align-items:center;gap:6px;white-space:nowrap}.manage-btn svg{flex:none}.table-actions__removed{color:#737c87;font-size:12px;font-style:italic}.action-sheet{display:grid;gap:8px}.action-sheet__item{display:flex;align-items:center;gap:13px;width:100%;min-width:0;padding:13px 14px;text-align:left;background:var(--surface, #fff);border:1px solid var(--border, #dfe3e8);border-radius:9px;font:inherit;color:inherit;cursor:pointer}.action-sheet__item:hover:not(:disabled){background:#f4f6f8;border-color:#b7bec6}.action-sheet__item:disabled{opacity:.5;cursor:not-allowed}.action-sheet__item>svg{flex:none;color:#4b5561}.action-sheet__item>span{min-width:0;display:grid;gap:1px}.action-sheet__item strong{font-size:14.5px;overflow-wrap:anywhere}.action-sheet__item small{color:var(--text-muted, #737c87);font-size:12px;line-height:1.35;overflow-wrap:anywhere}.action-sheet__item--danger>svg{color:var(--red, #c1392b)}.action-sheet__item--danger:hover:not(:disabled){background:#fff2f2;border-color:#efbaba}.maintenance-band{display:grid;gap:14px}.maintenance-block{display:grid;gap:8px}.maintenance-block h3{margin:0;display:flex;align-items:center;gap:7px;font-size:13px;font-weight:700;color:#3c4550}.maintenance-empty{margin:0;color:#717a85;font-size:13px}.table-scroll{overflow-x:auto}.maintenance-table{width:100%;border-collapse:collapse;font-size:13px}.maintenance-table th{text-align:left;padding:7px 10px;font-size:11px;text-transform:uppercase;letter-spacing:.4px;color:#79828d;border-bottom:1px solid #e3e8ee;white-space:nowrap}.maintenance-table td{padding:9px 10px;border-bottom:1px solid #eef1f5;vertical-align:top;white-space:nowrap}.maintenance-table td strong{display:block;font-size:13px;color:#282e35}.maintenance-table td small{display:block;margin-top:2px;color:#79828d;font-size:11.5px;white-space:normal}.maintenance-runs,.maintenance-log{margin:0;padding:0;list-style:none;display:grid;gap:4px}.maintenance-runs li,.maintenance-log li{display:flex;align-items:baseline;gap:10px;padding:6px 10px;background:#fbfcfd;border:1px solid #eef1f5;border-radius:7px;font-size:12.5px;min-width:0;flex-wrap:wrap}.maintenance-runs li>span,.maintenance-log li>span{color:#79828d;font-variant-numeric:tabular-nums;white-space:nowrap}.maintenance-runs li>strong,.maintenance-log li>strong{color:#282e35}.maintenance-runs li>em,.maintenance-log li>em{font-style:normal;color:#5c646e}.maintenance-log li>small{margin-left:auto;color:#8a929c;overflow-wrap:anywhere}.company-notes{display:grid;gap:6px;margin:14px 0 4px}.company-notes textarea{width:100%;padding:10px 12px;border:1px solid #dde2e7;border-radius:7px;font:inherit;font-size:13.5px;line-height:1.5;resize:vertical;background:#fffdf6}.company-notes textarea:focus{outline:none;border-color:#d89300;background:#fff}.nayta-lisaa{display:flex;align-items:center;justify-content:center;gap:6px;width:100%;margin-top:6px;padding:8px 12px;border:1px dashed var(--border, #d8dfda);border-radius:8px;background:var(--gray-50, #f4f6f8);color:var(--gray-600, #4b5560);font:inherit;font-size:13px;font-weight:600;cursor:pointer}.nayta-lisaa:hover{border-style:solid;border-color:var(--gray-400, #9ba5ae);color:var(--graphite-800, #1f2a30)}.maintenance-block__maara{margin-left:8px;color:var(--gray-500, #737c87);font-size:12px;font-weight:500}.kiintio small{display:block;color:var(--gray-500, #737c87);font-size:11.5px}.kiintio--varoitus{color:#8f5a08;font-weight:600}.kiintio--varoitus small{color:#8f5a08}.kiintio--taynna{color:#a52c20;font-weight:700}.kiintio--taynna small{color:#a52c20}.field__hint{display:block;margin-top:4px;color:var(--gray-500, #737c87);font-size:12px}:root{--graphite-900: #15181d;--graphite-800: #1b1f24;--graphite-700: #262b31;--graphite-600: #353b43;--gray-500: #6b7280;--gray-400: #9aa3ad;--gray-300: #cdd3da;--gray-200: #e5e8ec;--gray-100: #f1f3f5;--gray-50: #f7f8fa;--white: #ffffff;--orange: #f57c00;--orange-dark: #e06b00;--orange-light: #fff3e6;--amber: #ffb300;--green: #2e9e5b;--green-light: #e7f6ed;--blue: #2563eb;--blue-light: #e8f0fe;--choice-border: var(--orange);--choice-bg: var(--orange-light);--choice-ring: inset 0 0 0 1.5px var(--orange);--red: #d64545;--red-light: #fdeaea;--purple: #7c4dff;--bg: var(--gray-50);--surface: var(--white);--border: var(--gray-200);--text: var(--graphite-900);--text-muted: var(--gray-500);--radius: 12px;--radius-sm: 8px;--shadow-sm: 0 1px 2px rgba(21, 24, 29, .06), 0 1px 3px rgba(21, 24, 29, .08);--shadow-md: 0 4px 12px rgba(21, 24, 29, .1);--shadow-lg: 0 12px 32px rgba(21, 24, 29, .18);--topbar-h: 64px;--font: "Segoe UI", system-ui, -apple-system, Roboto, Helvetica, Arial, sans-serif;--font-display: "Bahnschrift", "Segoe UI Semibold", "Segoe UI", system-ui, sans-serif}*{box-sizing:border-box}html,body{margin:0;padding:0}html{scroll-behavior:smooth}*{scrollbar-width:thin;scrollbar-color:var(--gray-300) transparent}::-webkit-scrollbar{width:10px;height:10px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:var(--gray-300);border-radius:999px;border:2px solid var(--bg)}::-webkit-scrollbar-thumb:hover{background:var(--orange)}body{font-family:var(--font);background:var(--bg);color:var(--text);-webkit-font-smoothing:antialiased;line-height:1.45;overflow-x:clip}h1,h2,h3{margin:0;line-height:1.15;font-family:var(--font-display);letter-spacing:.2px}a{color:var(--blue)}.page-center{min-height:60vh;display:grid;place-items:center;padding:24px}.btn{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:1px solid transparent;border-radius:var(--radius-sm);padding:10px 16px;font-size:15px;font-weight:600;font-family:inherit;cursor:pointer;transition:background .15s,border-color .15s,transform .05s,box-shadow .15s;display:inline-flex;align-items:center;justify-content:center;gap:8px;white-space:nowrap;line-height:1.2}.btn:disabled{opacity:.6;cursor:not-allowed}.btn--primary{background:var(--orange);color:var(--white)}.btn--primary:hover:not(:disabled){background:var(--orange-dark)}.btn--accent{background:var(--blue);color:var(--white)}.btn--accent:hover:not(:disabled){background:#1d4fd0}.btn--success{background:var(--green);color:var(--white)}.btn--success:hover:not(:disabled){background:#257e49}.btn--ghost{background:var(--surface);border-color:var(--border);color:var(--text)}.btn--ghost:hover:not(:disabled){background:var(--gray-100)}.btn--danger{background:var(--red);color:var(--white)}.btn--danger:hover:not(:disabled){background:#c23a3a}.btn--danger-ghost{background:var(--surface);border-color:var(--border);color:var(--red)}.btn--danger-ghost:hover:not(:disabled){background:var(--red-light);border-color:var(--red)}.btn--sm{padding:7px 12px;font-size:14px}.btn--lg{padding:14px 20px;font-size:16px}.btn--block{width:100%}.app-shell{min-height:100vh;display:flex;flex-direction:column}.topbar{position:sticky;top:0;z-index:30;background:var(--graphite-800);color:var(--white);box-shadow:var(--shadow-md);border-bottom:3px solid var(--orange);transition:box-shadow .25s ease}.topbar--scrolled{box-shadow:0 6px 24px #15181d73}.topbar__inner{max-width:1200px;margin:0 auto;min-height:var(--topbar-h);padding:0 16px;display:flex;align-items:center;justify-content:space-between;gap:12px}.brand{display:flex;align-items:center;gap:12px;min-width:0;flex:0 1 auto;overflow:hidden}.brand__mark{color:var(--orange);display:inline-flex}.brand__logo{height:40px;width:auto;max-width:180px;object-fit:contain;display:block;flex:0 1 auto;min-width:0}.brand__mark--lg{color:var(--orange)}.brand__text{display:flex;flex-direction:column;min-width:0}.brand__name{font-family:var(--font-display);font-weight:600;font-size:23px;letter-spacing:1.5px;text-transform:uppercase;line-height:1;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.brand__sub{font-size:12px;color:var(--gray-400);text-transform:uppercase;letter-spacing:1px}.topbar__right{display:flex;align-items:center;gap:10px}.icon-btn{background:transparent;border:1px solid rgba(255,255,255,.18);color:var(--white);width:38px;height:38px;border-radius:8px;font-size:18px;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;flex:none;transition:background .15s}.icon-btn:hover{background:#ffffff1f}.page-actions{display:flex;gap:10px;flex-wrap:wrap;margin-bottom:16px}.report__toolbar{display:flex;align-items:flex-end;justify-content:space-between;gap:12px;flex-wrap:wrap;margin-bottom:18px}.report__month{margin-bottom:0;min-width:180px}.report__downloads{display:flex;gap:8px;flex-wrap:wrap}.report__tiles{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-bottom:18px}.tile{background:var(--gray-50);border:1px solid var(--border);border-radius:var(--radius);padding:16px;text-align:center}.tile--price{background:var(--green-light);border-color:var(--green)}.tile__value{display:block;font-size:24px;font-weight:800;color:var(--text)}.tile--price .tile__value{color:var(--green)}.tile__label{display:block;font-size:13px;color:var(--text-muted);margin-top:2px}.report__section{margin-bottom:18px}.report__section h3{font-size:15px;margin-bottom:8px;padding-bottom:6px;border-bottom:2px solid var(--border)}.report__chips{display:flex;flex-wrap:wrap;gap:8px}.report__table{width:100%;border-collapse:collapse;font-size:14px}.report__table th,.report__table td{text-align:left;padding:8px 10px;border-bottom:1px solid var(--border)}.report__table th{font-size:12px;text-transform:uppercase;letter-spacing:.5px;color:var(--text-muted)}.report__table .num{text-align:right;font-variant-numeric:tabular-nums;font-weight:600}.report__empty{color:var(--text-muted);font-size:14px;margin:4px 0}.job-card__actions-row{display:flex;align-items:center;justify-content:space-between;gap:8px;width:100%}.job-card__footer{border-top:1px dashed var(--border);padding-top:10px;margin-top:2px}.billing-toggle{display:flex;align-items:center;gap:10px;font-size:14px;font-weight:600;color:var(--text);cursor:pointer;background:#fff8ec;border:1px solid var(--amber);border-radius:var(--radius-sm);padding:9px 11px}.billing-toggle input[type=checkbox]{width:20px;height:20px;min-width:20px;padding:0;margin:0;flex:none;cursor:pointer;accent-color:var(--orange)}.billing-toggle span{min-width:0;overflow-wrap:anywhere}.user-chip{display:flex;align-items:center;gap:8px;background:transparent;border:1px solid transparent;color:inherit;font:inherit;cursor:pointer;padding:4px 6px;border-radius:10px;transition:background .15s,border-color .15s}.user-chip:hover,.user-chip:focus-visible{background:#ffffff1a;border-color:#ffffff38;outline:none}.user-chip__avatar{width:36px;height:36px;border-radius:50%;background:var(--orange);color:var(--white);display:grid;place-items:center;font-weight:700;flex:none}.user-chip__meta{display:flex;flex-direction:column;line-height:1.2}.user-chip__name{font-size:14px;font-weight:600;max-width:160px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.user-chip__role{font-size:11px;color:var(--gray-400);text-transform:uppercase;letter-spacing:.5px}.content{flex:1;width:100%;max-width:1200px;margin:0 auto;padding:20px 16px 80px}.alert-banner{display:flex;align-items:center;gap:12px;background:var(--green-light);border:1px solid var(--green);border-left-width:5px;border-radius:var(--radius-sm);padding:12px 16px;margin-bottom:16px;animation:slide-down .3s ease}.alert-banner__icon{font-size:20px}.alert-banner__text{flex:1;font-weight:600}.notice{border-radius:var(--radius);padding:20px;background:var(--surface);box-shadow:var(--shadow-sm)}.notice--inline{padding:12px 14px;box-shadow:none;margin-bottom:8px}.notice--error{border:1px solid var(--red);background:var(--red-light);color:#8a2b2b}.notice--warning{border:1px solid #d9a441;background:#fff8e6;color:#6b4a08}.notice h2{margin-bottom:8px;font-size:18px}.toolbar{display:flex;flex-wrap:wrap;gap:12px;align-items:center;justify-content:space-between;margin-bottom:18px;position:sticky;top:calc(var(--topbar-h) + 3px);z-index:20;background:var(--bg);padding:10px 0}.filter-pills{display:flex;flex-wrap:wrap;gap:8px}.pill{border:1px solid var(--border);background:var(--surface);border-radius:999px;padding:7px 14px;font-size:14px;font-weight:600;cursor:pointer;color:var(--text-muted);display:inline-flex;align-items:center;gap:6px;transition:all .15s}.pill:hover{border-color:var(--gray-400)}.pill--active{background:var(--graphite-800);color:var(--white);border-color:var(--graphite-800)}.pill__count{background:#00000014;border-radius:999px;padding:0 8px;font-size:12px;min-width:20px;text-align:center}.pill--active .pill__count{background:#fff3}.toolbar__filters{display:flex;gap:10px;align-items:center;flex:1;justify-content:flex-end;flex-wrap:wrap}.month-select{position:relative;display:flex;align-items:center}.month-select__icon{position:absolute;left:12px;pointer-events:none;opacity:.7}.month-select select{padding:10px 12px 10px 36px;border:1px solid var(--border);border-radius:var(--radius-sm);font-size:15px;font-family:inherit;background:var(--surface);cursor:pointer}.month-select select:focus{outline:none;border-color:var(--orange);box-shadow:0 0 0 3px var(--orange-light)}.result-count{margin:0 0 12px;color:var(--text-muted);font-size:14px}.show-more{display:flex;justify-content:center;margin-top:16px}.search{position:relative;flex:1;min-width:220px;max-width:420px}.search__icon{position:absolute;left:12px;top:50%;transform:translateY(-50%);opacity:.6}.search input{width:100%;padding:10px 12px 10px 38px;border:1px solid var(--border);border-radius:var(--radius-sm);font-size:15px;font-family:inherit;background:var(--surface)}.search input:focus{outline:none;border-color:var(--orange);box-shadow:0 0 0 3px var(--orange-light)}.tabs{display:flex;gap:6px;background:var(--gray-200);padding:5px;border-radius:var(--radius);margin-bottom:18px;position:sticky;top:calc(var(--topbar-h) + 11px);z-index:20;box-shadow:0 -8px 0 8px var(--bg)}.tab{flex:1;border:none;background:transparent;padding:11px 10px;border-radius:var(--radius-sm);font-size:15px;font-weight:600;color:var(--text-muted);cursor:pointer;display:inline-flex;align-items:center;justify-content:center;gap:7px;transition:all .15s}.tab--active{background:var(--surface);color:var(--text);box-shadow:var(--shadow-sm)}.tab__count{background:var(--orange);color:var(--white);border-radius:999px;padding:0 7px;font-size:12px;min-width:20px;text-align:center}.tab__count--muted{background:var(--gray-400)}.toolbar--admin{flex-direction:column;align-items:stretch;gap:10px}.tabs--flat{position:static;margin-bottom:0;box-shadow:none;overflow-x:auto}.tabs--flat .tab{white-space:nowrap}.toolbar--admin .toolbar__filters{justify-content:flex-start}.toolbar--admin .search{max-width:none}.fleet-strip{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin-bottom:14px;padding:10px 12px;border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface)}.fleet-strip__title{display:inline-flex;align-items:center;gap:6px;font-size:12px;font-weight:800;text-transform:uppercase;letter-spacing:.4px;color:var(--text-muted)}.fleet-strip__chip{display:inline-flex;align-items:center;gap:7px;max-width:100%;min-width:0;padding:6px 11px;border:1px solid var(--border);border-radius:999px;background:var(--green-light);font:inherit;font-size:13px;color:inherit;cursor:pointer}.fleet-strip__chip:hover{border-color:var(--gray-400)}.fleet-strip__chip strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.fleet-strip__state{color:var(--text-muted);font-size:12px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.fleet-strip__dot{flex:none;width:9px;height:9px;border-radius:50%;background:var(--green)}.fleet-strip__chip.is-busy{background:var(--orange-light)}.fleet-strip__chip.is-busy .fleet-strip__dot{background:var(--orange)}.job-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:16px}.job-card{position:relative;background:var(--surface);border:1px solid var(--border);border-left:5px solid var(--gray-300);border-radius:var(--radius);padding:16px;box-shadow:var(--shadow-sm);display:flex;flex-direction:column;gap:12px;animation:card-in .35s ease backwards}@keyframes card-in{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.job-card--new{border-left-color:var(--blue)}.job-card--accepted{border-left-color:var(--amber)}.job-card--completed{border-left-color:var(--green)}.job-card--approved{border-left-color:var(--purple)}.job-card--invoiced{border-left-color:#0f8a72}.job-card--cancelled{border-left-color:var(--gray-400);opacity:.75}.job-card--prio-critical{box-shadow:0 0 0 2px var(--red) inset,var(--shadow-sm)}.job-card--prio-urgent{box-shadow:0 0 0 2px var(--amber) inset,var(--shadow-sm)}.job-card--highlight{animation:highlight-pulse 1.2s ease 4;box-shadow:0 0 0 3px var(--orange),var(--shadow-md)}@keyframes highlight-pulse{0%,to{box-shadow:0 0 0 3px var(--orange),var(--shadow-md)}50%{box-shadow:0 0 0 8px #f57c004d,var(--shadow-md)}}.job-card__new-flag{position:absolute;top:-10px;right:14px;background:var(--orange);color:var(--white);font-size:11px;font-weight:800;letter-spacing:1px;padding:3px 10px;border-radius:999px;box-shadow:var(--shadow-sm)}.job-card__header{display:flex;justify-content:space-between;align-items:flex-start;gap:10px}.job-card__title{display:flex;flex-direction:column;gap:2px}.job-card__title h3{font-size:19px;font-weight:800}.job-card__qty{font-size:14px;color:var(--text-muted);font-weight:600}.job-card__badges{display:flex;flex-direction:column;align-items:flex-end;gap:6px}.job-card__details{margin:0;display:flex;flex-direction:column;gap:8px}.job-card__row{display:grid;grid-template-columns:110px 1fr;gap:8px;font-size:14px}.job-card__row dt{color:var(--text-muted);font-weight:600}.job-card__row dd{margin:0;font-weight:500;word-break:break-word}.job-card__row--primary dd{font-weight:700;font-size:15px}.job-card__row--price dd{font-weight:800;font-size:15px;color:var(--green)}.price-notes{font-weight:500;font-size:13px;color:var(--text-muted)}.worktime-grid{display:grid;grid-template-columns:1fr 1fr;gap:0 12px}.photo-picker{display:flex;flex-wrap:wrap;gap:8px}.photo-thumb{position:relative;width:72px;height:72px;border-radius:var(--radius-sm);overflow:hidden;border:1px solid var(--border)}.photo-thumb img{width:100%;height:100%;object-fit:cover;display:block}.photo-thumb__remove{position:absolute;top:2px;right:2px;width:22px;height:22px;border:none;border-radius:50%;background:#15181dbf;color:var(--white);font-size:14px;line-height:1;cursor:pointer}.photo-add{width:72px;height:72px;border:2px dashed var(--gray-300);border-radius:var(--radius-sm);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;cursor:pointer;color:var(--text-muted);font-size:20px;transition:border-color .15s,color .15s}.photo-add:hover{border-color:var(--orange);color:var(--orange-dark)}.photo-add__text{font-size:10px;font-weight:600}.archive-group{margin-bottom:26px}.archive-group__title{display:flex;align-items:baseline;gap:10px;font-size:17px;margin-bottom:12px;padding-bottom:8px;border-bottom:2px solid var(--border);color:var(--text)}.archive-group__count{font-family:var(--font);font-size:13px;font-weight:600;color:var(--text-muted)}.owner-pills{display:flex;gap:8px;margin-bottom:12px}.batch-intro{margin:0 0 14px;font-size:14px;color:var(--text-muted)}.batch-list{display:flex;flex-direction:column;gap:6px;max-height:340px;overflow-y:auto;margin-bottom:16px}.batch-item{display:flex;align-items:flex-start;gap:10px;padding:10px 12px;border:1px solid var(--border);border-radius:var(--radius-sm);cursor:pointer;transition:background .1s,border-color .1s}.batch-item:hover{background:var(--gray-50)}.batch-item:has(input:checked){border-color:var(--orange);background:var(--orange-light)}.batch-item input{width:18px;height:18px;margin-top:2px;flex:none;accent-color:var(--orange);cursor:pointer}.batch-item__text{font-size:14px;line-height:1.35}.batch-item__meta{display:block;font-size:12.5px;color:var(--text-muted)}.job-card__photos{display:flex;flex-wrap:wrap;gap:6px}.job-card__photos img{width:64px;height:64px;object-fit:cover;border-radius:var(--radius-sm);border:1px solid var(--border);display:block;transition:transform .15s,box-shadow .15s}.job-card__photos a:hover img{transform:scale(1.05);box-shadow:var(--shadow-md)}.job-card__row--notes dd,.job-card__row--comment dd{background:var(--gray-50);border-radius:var(--radius-sm);padding:8px 10px}.job-card__row--comment dd{background:var(--blue-light)}.job-card__phone{text-decoration:none;font-weight:700}.address-text{display:block}.map-link{display:inline-flex;align-items:center;gap:5px;margin-top:4px;font-size:13px;font-weight:700;color:var(--orange-dark);text-decoration:none;background:var(--orange-light);border:1px solid var(--orange);border-radius:999px;padding:3px 10px}.map-link:hover{background:var(--orange);color:var(--white)}.job-card__actions{display:flex;gap:8px;flex-wrap:wrap;margin-top:4px}.job-card__actions .btn{flex:1}.job-card__done-note{display:flex;justify-content:flex-end;width:100%}.badge{display:inline-flex;align-items:center;gap:6px;font-size:12px;font-weight:700;padding:4px 10px;border-radius:999px;white-space:nowrap}.badge__dot{width:8px;height:8px;border-radius:50%;background:currentColor}.badge--new{background:var(--blue-light);color:var(--blue)}.badge--accepted{background:#fff6df;color:#9a6b00}.badge--in_progress{background:var(--orange-light);color:var(--orange-dark)}.badge--completed{background:var(--green-light);color:var(--green)}.badge--approved{background:#efe9ff;color:#5b32d6}.badge--invoiced{background:#e2f5f0;color:#0f8a72}.badge--cancelled{background:var(--gray-200);color:var(--gray-500)}.badge--priority{font-size:11px}.badge--waste{background:var(--graphite-800);color:var(--white);font-size:11px}.accept-lock{width:100%;text-align:center;padding:12px 14px;border-radius:var(--radius-sm);background:var(--gray-50);border:1px dashed var(--gray-200);color:var(--gray-500);font-weight:600;font-size:14px}.badge--priority-urgent{background:#fff6df;color:#9a6b00}.badge--priority-critical{background:var(--red-light);color:var(--red)}.empty-state{text-align:center;padding:60px 24px;background:var(--surface);border:1px dashed var(--border);border-radius:var(--radius)}.empty-state__icon{font-size:48px;margin-bottom:12px}.empty-state__title{font-size:20px;margin-bottom:6px}.empty-state__desc{color:var(--text-muted);margin:0 auto 16px;max-width:420px}.skeleton-card{background:var(--surface);border:1px solid var(--border);border-left:5px solid var(--gray-200);border-radius:var(--radius);padding:16px;display:flex;flex-direction:column;gap:12px;animation:card-in .35s ease backwards}.skeleton-line{height:14px;border-radius:6px;background:linear-gradient(90deg,var(--gray-100) 25%,var(--gray-200) 50%,var(--gray-100) 75%);background-size:200% 100%;animation:shimmer 1.4s ease-in-out infinite;width:85%}.skeleton-line--title{height:20px;width:55%}.skeleton-line--sub{width:30%}.skeleton-line--short{width:45%}.skeleton-line--btn{height:38px;width:100%;border-radius:var(--radius-sm);margin-top:6px}@keyframes shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}.scroll-top{position:fixed;right:16px;bottom:16px;z-index:40;width:46px;height:46px;border:none;border-radius:50%;background:var(--graphite-800);color:var(--white);font-size:20px;cursor:pointer;box-shadow:var(--shadow-lg);display:grid;place-items:center;animation:fade-in .2s ease;transition:background .15s,transform .15s}.scroll-top:hover{background:var(--orange);transform:translateY(-2px)}.spinner{display:flex;flex-direction:column;align-items:center;gap:12px;color:var(--text-muted)}.spinner__circle{width:40px;height:40px;border:4px solid var(--gray-200);border-top-color:var(--orange);border-radius:50%;animation:spin .8s linear infinite}.field{display:flex;flex-direction:column;gap:6px;margin-bottom:14px}.field__label{font-size:13px;font-weight:600;color:var(--text-muted)}.req{color:var(--red)}.field input,.field select,.field textarea{width:100%;padding:11px 12px;border:1px solid var(--border);border-radius:var(--radius-sm);font-size:15px;font-family:inherit;background:var(--surface);color:var(--text)}.field input:focus,.field select:focus,.field textarea:focus{outline:none;border-color:var(--orange);box-shadow:0 0 0 3px var(--orange-light)}.field input[aria-invalid=true],.field textarea[aria-invalid=true]{border-color:var(--red)}.field textarea{resize:vertical}.field__error{font-size:13px;color:var(--red);font-weight:600}.combobox{position:relative}.combobox__list{position:absolute;top:calc(100% + 4px);left:0;right:0;z-index:25;max-height:260px;overflow-y:auto;margin:0;padding:4px;list-style:none;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-sm);box-shadow:var(--shadow-md)}.combobox__option{padding:9px 12px;border-radius:6px;cursor:pointer;font-size:15px;color:var(--text)}.combobox__option.is-active{background:var(--orange-light)}.combobox__option.is-selected{font-weight:700}.combobox__option strong{color:var(--orange-dark)}.form-section{border:1px solid var(--border);border-radius:var(--radius);padding:14px 16px 2px;margin:0 0 16px}.form-section legend{padding:0 8px;font-family:var(--font-display);font-size:14px;font-weight:600;text-transform:uppercase;letter-spacing:1px;color:var(--orange-dark)}.form-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:0 14px}.field--wide{grid-column:span 3}.form-actions{display:flex;justify-content:flex-end;gap:10px;margin-top:8px;position:sticky;bottom:0;background:var(--surface);padding-top:8px}.modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#15181d8c;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);display:flex;align-items:flex-start;justify-content:center;padding:24px 16px;z-index:50;overflow-y:auto;animation:fade-in .15s ease}.modal{background:var(--surface);border-radius:var(--radius);box-shadow:var(--shadow-lg);width:100%;max-width:460px;margin:auto;animation:pop .2s ease}.modal--large{max-width:720px}.modal__header{display:flex;align-items:center;justify-content:space-between;padding:16px 20px;border-bottom:1px solid var(--border);position:sticky;top:0;background:var(--surface);border-radius:var(--radius) var(--radius) 0 0}.modal__title{font-size:18px;font-weight:800}.modal__close{border:none;background:transparent;font-size:26px;line-height:1;cursor:pointer;color:var(--text-muted);padding:0 4px}.modal__close:hover{color:var(--text)}.modal__content{padding:20px}.modal:focus{outline:none}.modal__guard{position:sticky;top:58px;z-index:2;margin:0;padding:12px 20px;background:var(--orange-light);border-bottom:1px solid var(--border)}.modal__guard p{margin:0 0 10px;font-weight:700}.modal__guard-actions{display:flex;flex-wrap:wrap;gap:8px}.confirm__message{margin:0 0 20px;font-size:15px;white-space:pre-line}.confirm__actions{display:flex;justify-content:flex-end;gap:10px}.toast-container{position:fixed;top:16px;right:16px;left:16px;z-index:100;display:flex;flex-direction:column;gap:10px;pointer-events:none;align-items:flex-end}.toast{pointer-events:auto;width:100%;max-width:380px;background:var(--graphite-800);color:var(--white);border-radius:var(--radius-sm);padding:14px 14px 14px 16px;box-shadow:var(--shadow-lg);display:flex;gap:12px;align-items:flex-start;border-left:5px solid var(--gray-500);animation:slide-in .25s ease}.toast--success{border-left-color:var(--green)}.toast--info{border-left-color:var(--blue)}.toast--warning{border-left-color:var(--amber)}.toast--error{border-left-color:var(--red)}.toast__icon{font-size:18px;line-height:1.4}.toast__body{flex:1;display:flex;flex-direction:column;gap:2px}.toast__title{font-size:15px}.toast__message{font-size:13px;color:var(--gray-300)}.toast__close{background:transparent;border:none;color:var(--gray-400);font-size:20px;cursor:pointer;line-height:1}.toast__close:hover{color:var(--white)}.login{min-height:100vh;display:grid;place-items:center;padding:24px 16px;background:linear-gradient(160deg,var(--graphite-900) 0%,var(--graphite-700) 100%)}.topbar-menu__version{display:block;padding:8px 14px 6px;border-top:1px solid var(--border, #e3e6ea);font-size:11px;color:var(--gray-500, #7a828c);-webkit-user-select:all;user-select:all}.login__card{width:100%;max-width:400px;background:var(--surface);border-radius:16px;box-shadow:var(--shadow-lg);padding:32px 28px}.login__brand{text-align:center;margin-bottom:24px}.login__logo{display:block;width:100%;max-width:240px;height:auto;margin:0 auto 12px}.login__brand h1{font-size:34px;font-weight:700;letter-spacing:2px;text-transform:uppercase;margin:10px 0 2px}.login__brand p{color:var(--text-muted);margin:0;font-size:14px}.login__hint{text-align:center;font-size:13px;color:var(--text-muted);margin:18px 0 0}@keyframes spin{to{transform:rotate(360deg)}}@keyframes pop{0%{transform:scale(.96);opacity:0}to{transform:scale(1);opacity:1}}@keyframes fade-in{0%{opacity:0}to{opacity:1}}@keyframes slide-in{0%{transform:translate(20px);opacity:0}to{transform:translate(0);opacity:1}}@keyframes slide-down{0%{transform:translateY(-8px);opacity:0}to{transform:translateY(0);opacity:1}}@media(max-width:700px){.form-grid{grid-template-columns:1fr 1fr}.field--wide{grid-column:span 2}.toolbar{flex-direction:column;align-items:stretch;position:static}.search{max-width:none}.user-chip__meta,.brand__sub{display:none}.brand__logo{height:30px;max-width:132px}.job-grid{grid-template-columns:1fr}.topbar__right{gap:6px;flex:none}.page-actions{display:grid;grid-template-columns:1fr 1fr;gap:8px}.tabs--flat{display:grid;grid-template-columns:1fr 1fr;gap:5px;overflow:visible}.tabs--flat .tab{justify-content:center}.toolbar__filters{flex-direction:column;align-items:stretch}.month-select select{width:100%}.owner-pills{display:grid;grid-template-columns:1fr 1fr}.owner-pills .pill{justify-content:center}.page-actions .btn{width:100%;padding:11px 8px;font-size:14px}.page-actions .btn--primary{grid-column:1 / -1;padding:13px 8px;font-size:16px}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}html{scroll-behavior:auto}}@media(max-width:460px){.form-grid{grid-template-columns:1fr}.field--wide{grid-column:span 1}.topbar__inner{padding:0 12px}.content{padding:14px 12px 80px}.job-card__row{display:block}.job-card__row dt{font-size:12px;margin-bottom:1px}.toast-container{top:10px}.tabs--flat{gap:4px;padding:4px}.tabs--flat .tab{font-size:12.5px;padding:9px 6px;gap:4px}.tabs--flat .tab__count{font-size:11px;padding:0 6px;min-width:18px}.owner-pills{margin-bottom:10px}.owner-pills .pill{font-size:13px;padding:6px 11px}.toolbar--admin{gap:8px;padding:8px 0}.result-count{font-size:13px}.brand__text{display:none}.brand__logo{height:30px;max-width:120px}.icon-btn{width:34px;height:34px;font-size:16px}.topbar .btn--ghost.btn--sm{padding:6px 9px;font-size:13px}.report__tiles{grid-template-columns:1fr}.job-card__header{flex-direction:column;align-items:flex-start;gap:8px}.job-card__badges{flex-direction:row;align-items:center;flex-wrap:wrap}}.field__hint{color:var(--text-muted);font-size:12px}.alert-banner--warning{background:#fff4d6;border-color:#d89a00;color:#6b4700}.alert-banner--warning .alert-banner__icon{background:#d89a00;color:var(--white);border-radius:50%;width:26px;height:26px;display:grid;place-items:center;font-weight:800}.mode-banner{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:14px;padding:10px 12px;background:var(--blue-light);border:1px solid #9ab8f4;border-radius:var(--radius-sm)}.mode-banner>div{display:flex;flex-direction:column;gap:2px}.mode-banner span{color:var(--text-muted);font-size:13px}@media(max-width:560px){.mode-banner{align-items:stretch;flex-direction:column}.mode-banner .btn{width:100%}}.profile-panel__facts{display:grid;grid-template-columns:1fr 1fr;gap:12px 18px;margin:0 0 20px;padding:14px 16px;background:var(--gray-100, #f4f5f7);border-radius:var(--radius-sm, 8px)}.profile-panel__facts dt{font-size:11px;text-transform:uppercase;letter-spacing:.6px;color:var(--gray-500, #6b7280);margin-bottom:2px}.profile-panel__facts dd{margin:0;font-weight:600;word-break:break-word}.profile-panel__form-head{display:flex;align-items:center;gap:8px;margin-bottom:12px}.profile-panel__form-head h3{margin:0;font-size:16px}@media(max-width:460px){.profile-panel__facts{grid-template-columns:1fr}}.admin-nav{display:flex;gap:6px;flex-wrap:wrap;margin:0 0 18px;padding:6px;background:var(--white);border:1px solid var(--gray-200);border-radius:12px;position:sticky;top:calc(var(--topbar-h) + 8px);z-index:8}.admin-nav__tab{display:inline-flex;align-items:center;justify-content:center;gap:7px;padding:11px 12px;border:0;border-radius:8px;background:transparent;color:var(--gray-600, #4b5560);font:inherit;font-size:15px;font-weight:600;cursor:pointer;transition:background .15s,color .15s;flex:1 1 0;white-space:nowrap;min-width:0}.admin-nav__tab:hover{background:var(--gray-100)}.admin-nav__tab.is-active{background:var(--graphite-800);color:var(--white)}.admin-nav__badge{display:inline-flex;align-items:center;justify-content:center;min-width:20px;height:20px;padding:0 6px;border-radius:999px;background:var(--orange);color:var(--white);font-size:12px;font-weight:700}@media(max-width:900px){.admin-nav__tab{flex:1 1 30%;padding:11px 8px;font-size:14px}}@media(max-width:560px){.admin-nav{position:static}.admin-nav__tab{flex:1 1 44%;padding:11px 6px;font-size:13.5px}}.admin-area-grid{display:grid;grid-template-columns:repeat(8,minmax(0,1fr));gap:8px;margin:0 0 14px}.admin-area-grid__btn{position:relative;display:flex;align-items:center;justify-content:center;gap:8px;min-width:0;min-height:56px;padding:10px 8px;border:1px solid var(--gray-200);border-radius:8px;background:var(--white);color:var(--gray-600, #4b5560);font:inherit;font-size:14px;font-weight:800;cursor:pointer;transition:border-color .15s,background .15s,color .15s}.admin-area-grid__btn svg{flex:none}.admin-area-grid__btn span:not(.admin-nav__badge){min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.admin-area-grid__btn:hover{border-color:var(--gray-400)}.admin-area-grid__btn.is-active{border-color:var(--graphite-800);background:var(--graphite-800);color:var(--white)}.admin-area-grid__btn:focus-visible{outline:3px solid var(--orange);outline-offset:2px}.admin-area-grid__btn .admin-nav__badge{position:absolute;top:5px;right:5px}@media(max-width:1100px){.admin-area-grid{grid-template-columns:repeat(4,minmax(0,1fr))}}@media(max-width:640px){.admin-area-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:7px}.admin-area-grid__btn{min-height:52px;padding:9px 7px;font-size:13.5px}}.side-switch{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin:0 0 12px}.side-switch--3{grid-template-columns:repeat(3,1fr);gap:6px}.side-switch--3 .side-switch__btn{padding:10px;gap:8px}.people-btn{display:flex;align-items:center;justify-content:center;gap:8px;width:100%;padding:10px 14px;margin:-4px 0 12px;border:2px solid var(--gray-200, #e2e7ec);border-radius:12px;background:var(--white, #fff);color:var(--gray-600, #4b5560);font:inherit;font-size:14.5px;cursor:pointer;transition:border-color .15s,background .15s,color .15s}.people-btn:hover{border-color:var(--gray-300, #c3cbd3)}.people-btn.is-active{border-color:var(--graphite-800);background:var(--graphite-800);color:var(--white)}.people-btn:focus-visible{outline:3px solid var(--orange);outline-offset:2px}.people-btn strong{font-weight:800}.people-btn small{font-size:12px;opacity:.75;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}@media(max-width:560px){.people-btn small{display:none}}.people-btn-row{display:flex;flex-wrap:wrap;gap:10px;margin:-4px 0 12px}.people-btn-row .people-btn{margin:0;flex:1 1 130px;min-width:0}.people-btn-row .people-btn strong{flex:0 0 auto;white-space:nowrap}.people-btn-row .people-btn small{min-width:0}@media(max-width:400px){.people-btn-row .people-btn{flex-basis:calc(50% - 5px);padding-inline:8px}}.settings-hub{display:grid;gap:22px}.settings-hub__lead{margin:0;color:var(--gray-600, #4b5560);font-size:14.5px;line-height:1.5}.settings-hub__install{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:10px 14px;padding:12px 14px;border:1px solid #d8dfda;border-radius:10px;background:#fbfcfa}.settings-hub__install>div{display:grid;gap:2px;min-width:0}.settings-hub__install small{color:var(--gray-600, #4b5560)}.settings-hub__install .btn{flex-shrink:0}.settings-hub__group{display:grid;gap:10px}.settings-hub__group-head{display:grid;gap:2px}.settings-hub__group-head h3{margin:0;font-size:15px;font-weight:800;color:var(--graphite-800, #1f2a30)}.settings-hub__group-head span{font-size:12.5px;color:var(--gray-500, #737c87)}.settings-hub__grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:10px}.settings-hub__item{display:flex;align-items:center;gap:12px;padding:14px;text-align:left;border:1px solid var(--gray-200, #e2e7ec);border-radius:12px;background:var(--white, #fff);color:inherit;font:inherit;cursor:pointer;transition:border-color .15s,box-shadow .15s,transform .05s}.settings-hub__item:hover{border-color:var(--graphite-800, #1f2a30);box-shadow:0 2px 10px #14181d0f}.settings-hub__item.is-active{border-color:var(--graphite-800, #1f2a30);box-shadow:inset 0 0 0 1px var(--graphite-800, #1f2a30)}.settings-hub__content{min-width:0}.settings-stack{display:grid;gap:22px}.settings-embed .ops-forms-grid{margin-top:0}.message-inbox{display:grid;gap:8px;margin-bottom:14px}.message-inbox__item{display:flex;flex-wrap:wrap;align-items:flex-start;gap:12px;padding:12px 14px;border:1px solid var(--orange, #e8850c);border-left-width:4px;border-radius:10px;background:#fff7ec}.message-inbox__icon{flex:none;color:var(--orange, #e8850c);margin-top:2px}.message-inbox__body{flex:1 1 180px;min-width:0}.message-inbox__body strong{display:block;font-size:13px}.message-inbox__body p{margin:2px 0 0;font-size:14px;overflow-wrap:anywhere;white-space:pre-wrap}.message-inbox__actions{display:flex;flex-wrap:wrap;align-items:center;gap:7px;margin-left:auto}.message-inbox__actions .btn{flex:0 1 auto;white-space:nowrap}@media(max-width:560px){.message-inbox__actions{width:100%;margin-left:0}.message-inbox__actions .btn{flex:1 1 0;min-width:0;width:auto;justify-content:center}}.ops-form-card{border:1px solid var(--gray-200, #e2e7ec);border-radius:12px;padding:16px;background:var(--white, #fff)}.subcontractor-costs__head{display:grid;gap:8px;margin-bottom:12px}.subcontractor-costs__head .wage-card__title,.subcontractor-costs__head .ops-hint{margin:0}.subcontractor-costs__head .ops-hint{line-height:1.45}.settings-hub__icon{flex:none;display:grid;place-items:center;width:40px;height:40px;border-radius:10px;background:var(--gray-50, #f4f6f8);color:var(--graphite-800, #1f2a30)}.settings-hub__text{display:grid;gap:2px;min-width:0}.settings-hub__text strong{font-size:14.5px;font-weight:700}.settings-hub__text small{font-size:12.5px;color:var(--gray-500, #737c87);line-height:1.4}.side-switch__btn{display:flex;align-items:center;gap:12px;padding:12px 14px;min-height:62px;border:2px solid var(--gray-200);border-radius:14px;background:var(--white);color:var(--gray-600, #4b5560);font:inherit;text-align:left;cursor:pointer;transition:border-color .15s,background .15s,color .15s,box-shadow .15s}.side-switch__btn:hover{border-color:var(--gray-300, #c3cbd3)}.side-switch__btn.is-active{border-color:var(--graphite-800);background:var(--graphite-800);color:var(--white);box-shadow:0 6px 16px #141a2038}.side-switch__btn:focus-visible{outline:3px solid var(--orange);outline-offset:2px}.side-switch__icon{display:inline-flex;align-items:center;justify-content:center;line-height:1}.side-switch__icon svg{width:26px;height:26px}.side-switch__text{display:flex;flex-direction:column;gap:2px;min-width:0}.side-switch__text strong{font-size:15.5px;font-weight:800;letter-spacing:.01em}.side-switch__text small{font-size:12px;opacity:.75;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.side-switch__btn .admin-nav__badge{margin-left:auto}@media(max-width:560px){.side-switch__btn{flex-direction:column;align-items:center;gap:4px;text-align:center;padding:10px 8px}.side-switch__text{align-items:center}.side-switch__text strong{font-size:14px}.side-switch__text small{white-space:normal;font-size:11px}.side-switch__icon{font-size:22px}.side-switch__btn .admin-nav__badge{margin-left:0}.side-switch--3 .side-switch__btn{padding:8px 4px}}.report-tabs{display:flex;flex-wrap:wrap;gap:6px;margin:4px 0 18px;border-bottom:1px solid var(--border, #d8dfda);padding-bottom:2px}.report-tab{border:0;background:transparent;padding:9px 14px;border-radius:8px 8px 0 0;font:inherit;font-weight:600;font-size:14px;color:var(--gray-500, #6b747e);cursor:pointer;border-bottom:3px solid transparent;margin-bottom:-3px;transition:color .15s,border-color .15s,background .15s}.report-tab:hover{color:var(--ink, #171d1f);background:#00000008}.report-tab.is-active{color:var(--ink, #171d1f);border-bottom-color:var(--graphite-800)}.tile--warn .tile__value{color:#c1392b}.data-table tr.row--low{background:#c1392b0f}.dir-toggle{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.dir-toggle__btn{border:1.5px solid var(--border, #d8dfda);background:var(--white, #fff);border-radius:10px;padding:12px 8px;font:inherit;font-weight:600;font-size:14px;cursor:pointer;color:var(--gray-600, #4d565e);transition:border-color .15s,background .15s,color .15s;min-height:48px}.dir-toggle__btn.is-active{border-color:var(--choice-border);background:var(--choice-bg);box-shadow:var(--choice-ring);color:var(--ink, #171d1f)}.dir-toggle__btn.is-active.is-in{border-color:#2e8b57;background:#2e8b571a}.dir-toggle__btn.is-active.is-out{border-color:#c1392b;background:#c1392b1a}@media(max-width:560px){.dir-toggle{grid-template-columns:1fr}}.trash-btn{border:0;background:transparent;cursor:pointer;font-size:15px;line-height:1;padding:8px;border-radius:8px;opacity:.55;transition:opacity .15s,background .15s}.trash-btn:hover{opacity:1;background:#c1392b1f}.trash-btn:disabled{opacity:.25;cursor:default}.operator-panel__quick{display:flex;gap:8px;flex-wrap:wrap;margin-top:10px}.my-entries{margin:10px 0 16px;border:1px solid var(--border, #d8dfda);border-radius:12px;background:var(--white, #fff)}.my-entries>summary{cursor:pointer;padding:12px 14px;font-weight:600;font-size:14px;color:var(--gray-600, #4d565e)}.my-entries__list{list-style:none;margin:0;padding:0 8px 8px}.my-entries__list li{display:flex;align-items:center;gap:10px;padding:8px 6px;border-top:1px solid var(--border, #e5eae6);font-size:14px}.my-entries__label{font-weight:600;white-space:nowrap}.my-entries__detail{flex:1 1 auto;color:var(--gray-500, #6b747e);min-width:0;overflow:hidden;text-overflow:ellipsis}.security-panel{margin-top:26px}.security-tiles{display:grid;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:10px;margin:12px 0 6px}.security-tile{border:1px solid var(--border, #d8dfda);border-radius:12px;background:var(--white, #fff);padding:14px;display:flex;flex-direction:column;gap:4px}.security-tile strong{font-size:24px;line-height:1}.security-tile span{font-size:12.5px;color:var(--gray-500, #6b747e)}.security-ok{border-color:#2e8b57;background:#2e8b5714}.security-ua{max-width:340px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:12px;color:var(--gray-500, #6b747e)}.security-note{font-size:12.5px;color:var(--gray-500, #6b747e);margin-top:12px}.vehicle-panel{margin:4px 0 18px;border:1px solid var(--border, #d8dfda);border-radius:14px;background:var(--white, #fff);padding:14px}.vehicle-panel__head{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:10px}.vehicle-panel__head h3{margin:0;font-size:16px}.vehicle-list{display:flex;flex-direction:column;gap:8px}.vehicle-row{display:flex;align-items:center;justify-content:space-between;gap:10px;border:1px solid var(--border, #e3e8e4);border-radius:10px;padding:10px 12px;flex-wrap:wrap}.vehicle-row--mine{border-color:var(--orange, #f3b52f);background:#f3b52f12}.vehicle-row__info{display:flex;flex-direction:column;gap:2px;min-width:0}.vehicle-row__state{font-size:12.5px;color:var(--gray-500, #6b747e)}.vehicle-row__state.is-free{color:#2e7d4f}.vehicle-row__state.is-busy{color:#b3541e}.vehicle-row__actions{display:flex;gap:6px;flex-wrap:wrap}.vehicle-suggestion{border-color:var(--orange, #f3b52f);background:#f3b52f1a}.hours-panel{margin:4px 0 20px}.hours-head{display:flex;flex-direction:column;align-items:center;gap:10px;margin-bottom:12px}.hours-nav{display:flex;align-items:center;justify-content:center;gap:8px}.hours-nav__btn{border:1px solid var(--border, #d8dfda);background:var(--white, #fff);border-radius:10px;width:40px;height:40px;font-size:20px;cursor:pointer;line-height:1}.hours-nav__btn:hover{border-color:var(--orange, #f3b52f)}.hours-nav__label{display:flex;flex-direction:column;align-items:center;min-width:180px}.hours-nav__label strong{font-size:15.5px;text-transform:capitalize}.hours-nav__today{margin-top:3px;padding:3px 10px;border:1px solid var(--orange, #f3b52f);border-radius:999px;background:#fff7e6;color:var(--orange-700, #b3541e);font:inherit;font-size:12px;font-weight:600;line-height:1.4;cursor:pointer;white-space:nowrap}.hours-nav__today:hover{background:#fec}.hours-nav__istoday{margin-top:3px;font-size:12px;font-weight:600;color:var(--gray-500, #6b747e);line-height:1.4}.segmented--sm button{padding:8px 12px;font-size:13px}.hours-card{border:1px solid var(--border, #d8dfda);border-radius:14px;background:var(--white, #fff);padding:16px;display:flex;flex-direction:column;gap:12px}.hours-normal-btn{font-size:17px;display:flex;flex-direction:column;align-items:center;gap:2px;line-height:1.25}.hours-normal-btn small{font-size:12.5px;font-weight:600;opacity:.85}.hours-custom{display:flex;flex-direction:column;gap:10px}.hours-custom__sum{margin:0;font-size:14px}.hours-custom__ot{color:#b3541e;font-weight:600}.hours-entries{list-style:none;margin:0 0 12px;padding:0;display:flex;flex-direction:column;gap:8px}.hours-entries li{display:flex;align-items:center;justify-content:space-between;gap:10px;border:1px solid #bfe3cc;background:#2e8b5712;border-radius:12px;padding:10px 14px}.hours-entries__main{display:flex;flex-direction:column;gap:2px}.hours-entries__main strong{font-size:17px}.hours-entries__main span{font-size:13px;color:var(--gray-600, #4d565e)}.hours-entries__main small{font-size:12px;color:var(--gray-500, #6b747e)}.hours-week{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:6px}.hours-week__day{width:100%;display:flex;align-items:center;gap:10px;border:1px solid var(--border, #d8dfda);background:var(--white, #fff);border-radius:10px;padding:12px 14px;font:inherit;cursor:pointer;text-align:left}.hours-week__day.has-entry{border-color:#bfe3cc;background:#2e8b570f}.hours-week__day.is-today{outline:2px solid var(--orange, #f3b52f);outline-offset:-2px}.hours-week__name{width:80px;font-weight:600}.hours-week__hours{flex:1;color:var(--gray-600, #4d565e)}.hours-month{display:grid;grid-template-columns:repeat(7,1fr);gap:6px}.hours-month__wd{text-align:center;font-size:12px;font-weight:700;color:var(--gray-500, #6b747e);padding:4px 0}.hours-month__cell{aspect-ratio:1 / .85;border:1px solid var(--border, #e0e5e1);background:var(--white, #fff);border-radius:10px;font:inherit;font-size:14px;cursor:pointer;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;padding:2px}.hours-month__cell.is-empty{border:0;background:transparent;cursor:default}.hours-month__cell.has-entry{border-color:#bfe3cc;background:#2e8b5714}.hours-month__cell.is-today{outline:2px solid var(--orange, #f3b52f);outline-offset:-2px}.hours-month__cell.is-future{opacity:.5}.hours-month__summary{margin:12px 0 0;font-size:14px;color:var(--gray-600, #4d565e)}.hours-dot{width:7px;height:7px;border-radius:50%;background:var(--border, #d8dfda)}.hours-dot.is-ok{background:#2e8b57}.hours-week__day.tila-logged,.hours-month__cell.tila-logged{border-color:#bfe3cc;background:var(--green-light, #e6f4ea)}.hours-week__day.tila-absence,.hours-month__cell.tila-absence{border-color:#c9d2f5;background:#eef2ff}.hours-week__day.tila-missing,.hours-month__cell.tila-missing{border-color:#f1bdb6;background:var(--red-light, #fdecea)}.hours-week__day.tila-missing .hours-week__hours{color:#9a2b22;font-weight:700}.hours-week__day.tila-absence .hours-week__hours{color:#3b4a9a}.hours-month__cell.tila-missing>span:first-child{color:#9a2b22;font-weight:700}.hours-dot.tila-missing{background:#d4462f}.hours-dot.tila-absence{background:#5b6bd6}.hours-month__hours{font-size:11px;font-weight:800;line-height:1;color:#1d6b3a;font-variant-numeric:tabular-nums}.hours-month__cell.tila-absence .hours-month__hours{color:#3b4a9a;font-weight:700}.maint-panel{margin:4px 0 20px}.maint-panel__head{display:flex;align-items:center;justify-content:space-between;gap:10px;flex-wrap:wrap;margin-bottom:12px}.maint-panel__head h3{margin:0;font-size:17px}.maint-panel__head select{font:inherit;padding:10px 12px;border:1px solid var(--border, #d8dfda);border-radius:10px;background:var(--white, #fff);max-width:100%}.maint-upcoming{display:flex;flex-direction:column;gap:6px;margin-bottom:12px}.maint-upcoming__item{border:1px solid var(--border, #d8dfda);border-radius:10px;padding:10px 12px;font-size:14px;background:var(--white, #fff)}.maint-upcoming__item.is-overdue{border-color:#c1392b;background:#c1392b12}.incident-box{margin:12px 0;display:flex;flex-direction:column;gap:10px}.incident-box__actions{display:flex;gap:8px;flex-wrap:wrap}.incident-guide{border:1px solid var(--border, #d8dfda);border-radius:10px;background:var(--white, #fff)}.incident-guide>summary{cursor:pointer;padding:10px 14px;font-weight:600;font-size:14px}.incident-guide>*:not(summary){padding:0 14px 12px}.incident-guide ol{margin:0;padding:0 14px 14px 32px;font-size:14px;display:flex;flex-direction:column;gap:8px}.security-band .notice{margin:8px 0}.ops-hint{margin:-6px 0 8px;font-size:12.5px;color:var(--gray-500, #6b747e)}.hours-month+.ops-hint,.project-cal+.ops-hint,.data-table-wrap+.ops-hint,.supply-chips+.ops-hint,.machine-hours+.ops-hint,.hours-entries+.ops-hint,.wage-summary+.ops-hint,table+.ops-hint,ul+.ops-hint{margin-top:12px}.entry-corrected{display:block;margin-top:2px;font-size:11.5px;font-weight:500;color:var(--orange-700, #b3541e)}.entry-daycount{display:block;margin-top:2px;font-size:11.5px;color:var(--gray-600, #4b5560)}.entry-duplicate{display:block;margin-top:2px;font-size:11.5px;font-weight:700;color:#a3301c}.entry-bank{display:block;margin-top:2px;font-size:11.5px;font-weight:600;color:var(--teal-700, #0f6b62);white-space:nowrap}.data-table tr.is-duplicate>td{background:#fdf1ee;box-shadow:inset 3px 0 #d4573a}.ops-hint--warn{margin:4px 0 10px;padding:10px 12px;border-radius:10px;border:1px solid #f5c78a;background:#fff7ec;color:#8a5a12;line-height:1.5}.hours-adjuster{display:flex;flex-direction:column;gap:10px;border-top:1px dashed var(--border, #d8dfda);padding-top:12px}.hours-adjuster__label{font-size:12.5px;font-weight:700;color:var(--gray-500, #6b747e);text-transform:uppercase;letter-spacing:.4px;text-align:center}.hours-chips{display:grid;grid-template-columns:repeat(5,1fr);gap:6px}.hours-chip{border:1.5px solid var(--border, #d8dfda);background:var(--white, #fff);border-radius:10px;padding:10px 4px;font:inherit;font-weight:700;font-size:14px;cursor:pointer;min-height:44px}.hours-chip.is-active{border-color:var(--choice-border);background:var(--choice-bg);box-shadow:var(--choice-ring);color:var(--ink, #171d1f)}.hours-adjuster__row{display:flex;align-items:center;justify-content:center;gap:18px}.hours-step{width:54px;height:54px;border-radius:50%;border:1.5px solid var(--border, #d8dfda);background:var(--white, #fff);font-size:28px;line-height:1;cursor:pointer;color:var(--text, #171d1f)}.hours-step:active{background:var(--gray-100, #f1f3f5)}.hours-adjuster__value{display:flex;flex-direction:column;align-items:center;min-width:110px}.hours-adjuster__value strong{font-size:40px;line-height:1;font-family:var(--font-display)}.hours-adjuster__value span{font-size:12.5px;color:var(--gray-500, #6b747e)}.hours-slider{width:100%;accent-color:var(--blue, #2563eb);height:34px;cursor:pointer}.report__downloads--groups{display:flex;gap:18px;flex-wrap:wrap;align-items:flex-end}.dl-group{display:flex;gap:6px;align-items:center;flex-wrap:wrap;border:1px solid var(--border, #d8dfda);border-radius:10px;padding:8px 10px;background:var(--white, #fff)}.dl-group__label{font-size:11.5px;font-weight:700;color:var(--gray-500, #6b747e);text-transform:uppercase;letter-spacing:.4px;margin-right:4px}.projects-panel,.driver-inventory{margin:4px 0 20px}.project-chips{grid-template-columns:repeat(auto-fit,minmax(120px,1fr));margin-bottom:10px}.wh-pick{grid-template-columns:repeat(auto-fit,minmax(130px,1fr));margin-bottom:8px}.supply-log{border:1px solid var(--border, #d8dfda);border-radius:14px;background:var(--white, #fff);padding:14px;margin:10px 0 14px;display:flex;flex-direction:column;gap:10px}.supply-chips{display:grid;grid-template-columns:repeat(auto-fill,minmax(130px,1fr));gap:8px}.supply-chip{border:1.5px solid var(--border, #d8dfda);background:var(--gray-50, #f7f8fa);border-radius:10px;padding:12px 8px;font:inherit;font-weight:600;font-size:14px;cursor:pointer;min-height:48px}.supply-chip:hover{border-color:var(--orange, #f3b52f)}.supply-chip.is-active{border-color:var(--choice-border);background:var(--choice-bg);box-shadow:var(--choice-ring);font-weight:700}.supply-chip.is-active .supply-chip__price{color:#8a6d1d}.supply-chip--manual{border-style:dashed;color:var(--gray-500, #6b747e)}.hours-card__title{margin:0 0 12px;font-size:17px}.bank-card{display:flex;align-items:center;gap:12px;padding:12px 14px;margin:0 0 14px;border:1px solid var(--gray-200, #e3e6ea);border-radius:12px;background:var(--gray-50, #f7f8f9)}.bank-card--has-balance{border-color:#1b8a5a59;background:linear-gradient(135deg,#1b8a5a14,#1b8a5a05)}.bank-card--blocked{border-color:#b8750066;background:linear-gradient(135deg,#b8750014,#b8750005)}.bank-card--negative{border-color:#a3301c66;background:linear-gradient(135deg,#a3301c14,#a3301c05)}.bank-card--negative .bank-card__balance{color:#a3301c}.bank-card--negative .bank-card__icon{color:#a3301c;border-color:#a3301c66}.bank-card--blocked .bank-card__icon{color:#b87500;border-color:#b8750066}.bank-card__icon{flex:0 0 auto;width:40px;height:40px;display:grid;place-items:center;border-radius:50%;background:#fff;border:1px solid var(--gray-200, #e3e6ea);color:var(--graphite-600, #3d434b)}.bank-card--has-balance .bank-card__icon{color:#1b8a5a;border-color:#1b8a5a59}.bank-card__text{display:flex;flex-direction:column;gap:2px;min-width:0}.bank-card__text strong{font-size:15px}.bank-card__text small{color:var(--gray-600, #5b6470);line-height:1.35}.bank-chip{display:inline-flex;align-items:center;gap:4px;font-weight:600}.bank-chip--in{color:#1b8a5a}.bank-chip--out{color:#b87500}.bank-card--hero{padding:18px 16px;margin-bottom:10px}.bank-card--hero .bank-card__icon{width:52px;height:52px}.bank-card__balance{font-size:30px;line-height:1.1}.saldo-panel__list strong{min-width:74px}.bank-choice{display:grid;gap:10px;margin:12px 0}.bank-choice__btn{display:flex;align-items:center;gap:12px;width:100%;text-align:left;padding:12px 14px;border:2px solid var(--gray-200, #e3e6ea);border-radius:12px;background:#fff;cursor:pointer;font:inherit;transition:border-color .15s ease,background .15s ease,transform .05s ease}.bank-choice__btn.is-active{border-color:var(--choice-border);background:var(--choice-bg);box-shadow:var(--choice-ring)}.bank-choice__icon{flex:0 0 auto;width:38px;height:38px;display:grid;place-items:center;border-radius:50%;background:var(--gray-50, #f7f8f9);border:1px solid var(--gray-200, #e3e6ea);font-size:17px;font-weight:700;color:var(--graphite-600, #3d434b)}.bank-choice__btn.is-active .bank-choice__icon{color:var(--orange, #e8630a);border-color:#e8630a66;background:#fff}.bank-choice__text{display:flex;flex-direction:column;gap:2px;min-width:0}.bank-choice__text small{color:var(--gray-600, #5b6470);line-height:1.35}.machine-add{display:flex;gap:8px;margin:8px 0}.machine-add input{flex:1;min-width:0}.machine-add .btn{flex-shrink:0}.machine-hours{list-style:none;margin:8px 0 4px;padding:0;display:flex;flex-direction:column;gap:6px}.machine-hours li{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:8px 10px;padding:10px;border:1px solid rgba(245,124,0,.45);background:#f57c000f;border-radius:10px}.machine-hours__name{grid-column:1 / -1;min-width:0;font-weight:700;font-size:14px;line-height:1.35;overflow-wrap:anywhere}.machine-hours__stepper{grid-column:1;justify-self:start;display:flex;align-items:center;gap:8px}.machine-hours__dup{grid-column:1 / -1;justify-self:start}.machine-hours__project{grid-column:1 / -1;min-width:0;min-height:40px;padding:0 8px;border:1px solid var(--border, #d8dfda);border-radius:9px;background:var(--white, #fff);font:inherit}.machine-hours li>.trash-btn{grid-column:2;justify-self:end}.machine-hours__stepper strong{min-width:52px;text-align:center;font-size:15px;white-space:nowrap}.machine-hours__stepper button{width:40px;height:40px;border:1px solid var(--border, #d8dfda);border-radius:10px;background:var(--white, #fff);font-size:20px;line-height:1;cursor:pointer}.machine-hours__stepper button:hover{border-color:var(--orange, #f3b52f)}.exception-stepper{margin:4px 0 6px;justify-content:flex-start}.exception-stepper strong{min-width:64px}.btn{min-height:44px;border-radius:10px;font-weight:650;letter-spacing:.1px;transition:background .16s,border-color .16s,transform .08s,box-shadow .16s}.btn--sm{min-height:40px}.btn--xs{min-height:34px}.btn--lg{min-height:52px;border-radius:12px}.btn--primary{box-shadow:0 2px 6px #f57c0047,inset 0 1px #ffffff2e}.btn--primary:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 4px 12px #f57c0057}.btn--accent{box-shadow:0 2px 6px #2563eb42,inset 0 1px #ffffff2e}.btn--accent:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 4px 12px #2563eb52}.btn--success{box-shadow:0 2px 6px #2e9e5b42,inset 0 1px #ffffff2e}.btn--success:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 4px 12px #2e9e5b52}.btn--danger{box-shadow:0 2px 6px #d6454542}.btn:active:not(:disabled){box-shadow:none}.btn:focus-visible,.icon-btn:focus-visible,.icon-action:focus-visible,.hours-chip:focus-visible,.supply-chip:focus-visible,.dir-toggle__btn:focus-visible,.hours-step:focus-visible,.admin-nav__tab:focus-visible,.tab:focus-visible,.report-tab:focus-visible,.trash-btn:focus-visible{outline:3px solid rgba(245,124,0,.45);outline-offset:2px}.icon-action{min-width:40px;min-height:40px}.trash-btn{min-width:40px;min-height:40px;font-size:16px}.segmented button,.tab{min-height:44px}.admin-nav__tab{min-height:46px}@media(max-width:560px){.confirm__actions{flex-direction:column-reverse}.confirm__actions .btn{width:100%}.form-actions{flex-direction:column-reverse}.form-actions .btn{width:100%}}.project-tiles{margin:4px 0 10px}.auto-cost{display:flex;flex-direction:column;gap:2px;padding:10px 12px;border:1px solid var(--orange, #f3b52f);border-radius:10px;background:#fff7e6;margin-bottom:8px}.auto-cost strong{font-size:21px;line-height:1.1;color:var(--orange-700, #b3541e)}.auto-cost small{font-size:12px;color:var(--gray-500, #6b747e)}.field__note{display:block;margin-top:4px;font-size:12px;color:var(--gray-500, #6b747e);line-height:1.4}.supply-chip__price{display:block;margin-top:2px;font-size:11px;font-weight:500;color:var(--gray-500, #6b747e)}.cell-edit-btn{display:inline-flex;align-items:center;gap:6px;padding:4px 8px;border:1px dashed var(--border, #d8dfda);border-radius:8px;background:transparent;font:inherit;font-size:13px;color:inherit;cursor:pointer;text-align:left}.cell-edit-btn:hover{border-color:var(--orange, #f3b52f);background:#fff7e6}.cell-edit-btn svg{color:var(--gray-500, #6b747e);flex:0 0 auto}.cell-edit-btn:disabled{opacity:.5;cursor:default}.icon-btn.is-unlocked{color:var(--orange-700, #b3541e);background:#fff7e6}.thread-list__foot{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin-top:2px}.thread-list__receipt{display:inline-flex;align-items:center;gap:3px;color:#2e8b57;font-weight:600}.thread-list__expiry{color:var(--gray-500, #6b747e);font-style:italic}.receipt-inline{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin:0 0 10px;padding:8px 12px;border-radius:10px;background:var(--gray-50, #f7f8fa);font-size:13px;color:var(--gray-500, #6b747e)}.receipt-inline svg{color:#2e8b57;flex:0 0 auto}.new-thread-form .work-situation{margin:0}.fuel-explainer{margin:10px 0 0;padding:12px 14px;border-left:3px solid var(--orange, #f3b52f);border-radius:0 10px 10px 0;background:var(--gray-50, #f7f8fa);font-size:13px;line-height:1.55;color:var(--gray-600, #4b535c)}.fuel-explainer strong{color:inherit}.work-brief{margin:8px 0 0;padding:10px 12px;border-left:3px solid var(--orange, #f3b52f);border-radius:0 8px 8px 0;background:var(--gray-50, #f7f8fa);font-size:13.5px;line-height:1.5;white-space:pre-line}.machine-picker{display:flex;flex-direction:column;gap:6px}.machine-picker__row{padding:8px;border:1px solid var(--border, #d8dfda);border-radius:10px}.machine-picker__row.is-picked{border-color:var(--orange, #f3b52f);background:#fff7e6}.machine-picker__accessories{display:flex;flex-wrap:wrap;gap:6px;margin:8px 0 0 22px}.accessory-chip--sub{font-size:12.5px}.machine-picker__empty{display:block;margin:6px 0 0 22px;font-size:12px;color:var(--gray-500, #6b747e)}.machine-row__accessories{display:block;margin-top:2px;color:var(--gray-500, #6b747e)}.hours-chip.is-mine{border-left:5px solid var(--orange, #ef7d00);font-weight:800}.hours-chip.is-mine.is-active{border-color:var(--choice-border);background:var(--choice-bg);box-shadow:var(--choice-ring)}.unlock-bulk{margin:10px 0 4px;padding:12px;border:1px solid var(--border, #d8dfda);border-radius:12px;background:var(--gray-50, #f7f8fa)}.unlock-bulk .hours-chips{margin:8px 0}.unlock-bulk .ops-hint{margin:6px 0 0}.link-btn{border:0;background:none;padding:0;font:inherit;font-weight:700;color:inherit;text-decoration:underline;cursor:pointer}.day-unlocked-note{margin:8px 0;padding:10px 12px;border-radius:10px;border:1px solid #f5c78a;background:#fff7ec;color:#8a5a12;font-size:13px;line-height:1.5}.stock-picks{margin-bottom:10px}.stock-picks__label{display:block;margin-bottom:6px;font-size:12px;font-weight:700;color:var(--gray-500, #6b747e)}.supply-chip.is-active{border-color:var(--choice-border);background:var(--choice-bg)}.supply-chip.is-empty{opacity:.55}.supply-chip.is-empty .supply-chip__price{color:#c1392b}.work-preview-card__cost{display:flex;flex-direction:column;gap:1px;margin:6px 0 0}.work-preview-card__cost strong{font-size:18px;color:var(--orange-700, #b3541e)}.work-preview-card__cost span{font-size:12px;color:var(--gray-500, #6b747e);line-height:1.4}@media(max-width:620px){.project-tiles{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.project-tiles .security-tile{padding:10px}.project-tiles .security-tile strong{font-size:17px;overflow-wrap:anywhere}.project-tiles .security-tile span{font-size:11px;line-height:1.35}.projects-panel .data-table-wrap{overflow-x:visible}.projects-panel .data-table thead{display:none}.projects-panel .data-table,.projects-panel .data-table tbody,.projects-panel .data-table tr,.projects-panel .data-table td{display:block;width:100%}.projects-panel .data-table tr{border:1px solid var(--border, #d8dfda);border-radius:12px;background:var(--white, #fff);padding:8px 10px;margin-bottom:8px}.projects-panel .data-table td{border:0;padding:3px 0;text-align:left;display:flex;justify-content:space-between;gap:10px;overflow-wrap:anywhere}.projects-panel .data-table td[data-label]:before{content:attr(data-label);font-size:11.5px;font-weight:600;color:var(--gray-500, #6b747e);flex:0 0 auto}.projects-panel .data-table td:empty{display:none}.project-cal .hours-month__cell{aspect-ratio:1 / 1}.supply-chips{grid-template-columns:repeat(auto-fill,minmax(108px,1fr))}}.project-cal{margin-top:4px}.project-cal__nav{justify-content:center;margin-top:10px}.hours-month__cell.has-extra{border-color:var(--orange, #f3b52f);background:#f57c001a}.hours-dot.is-extra{background:var(--orange, #f57c00)}.hours-entries--extra li{border-color:#f57c0080;background:#f57c0012}.wage-card{border:1px solid var(--border, #d8dfda);border-radius:14px;background:var(--white, #fff);padding:14px;margin:4px 0 16px;display:flex;flex-direction:column;gap:10px}.wage-card__head{display:flex;align-items:center;justify-content:space-between;gap:10px;flex-wrap:wrap}.wage-card__head h3{margin:0;font-size:16px}.wage-quick{grid-template-columns:repeat(auto-fit,minmax(140px,1fr))}.wage-employees{grid-template-columns:repeat(auto-fit,minmax(130px,1fr))}.wage-summary{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:10px}.hours-split{margin-top:10px;display:grid;gap:8px;justify-items:start}.hours-split__editor{width:100%;padding:12px;display:grid;gap:10px;justify-items:start;border:1.5px dashed #c3cdc5;border-radius:12px;background:#fbfcfa}.hours-split__lead{margin:0;font-size:13.5px;line-height:1.5}.hours-split__row{width:100%;display:flex;flex-wrap:wrap;align-items:center;gap:8px}.hours-split__row select{min-width:0;min-height:42px;padding:0 8px;border:1px solid var(--border, #d8dfda);border-radius:9px;background:var(--white, #fff);font:inherit}.hours-split__clocks{display:inline-flex;align-items:center;gap:6px}.hours-split__clocks select{width:84px}.hours-split__project{flex:1 1 150px}.hours-split__hours{min-width:52px;text-align:right}.hours-split__editor .btn--block{width:100%}.hours-split__machines{flex-basis:100%;color:var(--gray-600, #4b5560);font-size:12.5px;line-height:1.4;overflow-wrap:anywhere}.hours-split__machines.is-empty{font-style:italic;opacity:.75}.hours-split__next{margin:0;font-size:13px;line-height:1.5;color:#2b5c46}.hours-split-save{margin-top:14px;padding:12px;display:grid;gap:10px;border:1.5px dashed #c3cdc5;border-radius:12px;background:#fbfcfa}.hours-split-save .hours-custom__sum{margin:0}.wage-math{display:flex;flex-wrap:wrap;align-items:stretch;gap:8px}.wage-math .security-tile{flex:1 1 185px;min-width:0}.wage-math .security-tile small strong{font-size:12px}.wage-math__op{align-self:center;flex:0 0 auto;color:var(--gray-600, #4b5560);font-size:26px;font-weight:800;line-height:1}.wage-math__op--eq{color:var(--graphite-800, #1f252b)}@media(max-width:760px){.wage-math{flex-direction:column;align-items:stretch}.wage-math .security-tile{flex-basis:auto}.wage-math__op{align-self:center}}.wage-subwork-card{margin-top:12px;padding:12px 16px;display:flex;flex-wrap:wrap;align-items:center;gap:6px 18px;border:1.5px dashed #b9c6bc;border-radius:12px;background:#fbfcfa}.wage-subwork-card>div{display:grid;gap:1px}.wage-subwork-card strong{font-size:20px}.wage-subwork-card span{color:var(--gray-600, #4b5560);font-size:12.5px;font-weight:650}.wage-subwork-card small{flex:1 1 260px;color:var(--gray-600, #4b5560);line-height:1.45}.fill-nav{margin-bottom:4px}.fill-summary{margin:0;text-align:center;font-size:14.5px;color:#b3541e}.fill-summary.is-ok{color:#2e7d4f}.fill-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:6px}.fill-row{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:4px 12px;padding:10px 12px;border:1px solid var(--gray-200, #e2e7ec);border-radius:10px;background:var(--white, #fff)}.fill-row.is-missing{border-color:#c63c3c8c;background:#c63c3c0f}.fill-row.is-ok{border-color:#2e7d4f66;background:#2e7d4f0d}.fill-row.is-pending{border-color:#f3b52f99;background:#f3b52f14}.fill-row__name{grid-column:1;font-weight:700;min-width:0;overflow-wrap:anywhere}.fill-row__detail{grid-column:1;font-size:13px;color:var(--gray-500, #6b747e)}.fill-row>.fill-badge{grid-column:2;grid-row:1 / span 2;justify-self:end}.fill-badge{font-size:13px;font-weight:700;padding:4px 10px;border-radius:999px;white-space:nowrap}.fill-badge--ok{background:#2e7d4f24;color:#2e7d4f}.fill-badge--missing{background:#c63c3c24;color:#b03434}.fill-badge--pending{background:#f3b52f33;color:#8a5a10}.fill-badge--off{background:var(--gray-100, #f1f3f5);color:var(--gray-500, #6b747e)}.fill-table th:first-child,.fill-table td:first-child{text-align:left;white-space:nowrap}.fill-th{font-size:12px;line-height:1.25}.fill-th.is-today,.fill-cell.is-today{background:#f3b52f1a}.fill-cell{font-weight:700}.fill-cell.is-ok{color:#2e7d4f}.fill-cell.is-missing{color:#b03434}.fill-cell.is-pending{color:#8a5a10}.fill-cell.is-off{color:var(--gray-300, #c3cbd3);font-weight:400}.rate-edit{display:inline-flex;gap:6px;align-items:center}.rate-edit input{width:92px;padding:8px 10px;border:1px solid var(--border, #d8dfda);border-radius:8px;font:inherit}.brand__logo--mark{display:none}.brand__logo--company{width:min(210px,24vw);height:44px;padding:4px 7px;background:#fff;border-radius:4px}.brand__logo--company-mark{padding:2px;background:#fff;border-radius:5px}@media(min-width:701px){.brand__name--company-logo{display:none}}.topbar-menu{position:relative}.topbar-menu>summary{list-style:none}.topbar-menu>summary::-webkit-details-marker{display:none}.topbar-menu[open]>summary{background:#ffffff1f}.topbar-menu__panel{position:absolute;top:calc(100% + 10px);right:0;z-index:50;width:min(280px,calc(100vw - 24px));padding:6px;color:var(--text);background:var(--surface);border:1px solid var(--border);border-radius:8px;box-shadow:0 16px 38px #15181d33}.topbar-menu__item{width:100%;min-height:44px;display:flex;align-items:center;gap:10px;padding:9px 11px;color:var(--text);background:transparent;border:0;border-radius:6px;font:inherit;font-size:14px;text-align:left;cursor:pointer}.topbar-menu__item:hover{background:var(--gray-100)}.topbar-menu__item--danger{color:var(--red);border-top:1px solid var(--gray-200);border-radius:0 0 6px 6px}.workspace-nav{margin-bottom:16px;padding:5px;background:var(--surface);border:1px solid var(--border);border-radius:8px;box-shadow:var(--shadow-sm)}.workspace-nav__desktop{display:flex;align-items:stretch;gap:3px;overflow-x:auto;scrollbar-width:none}.workspace-nav__desktop::-webkit-scrollbar{display:none}.workspace-nav__item{min-height:44px;display:inline-flex;align-items:center;justify-content:center;gap:7px;flex:1 0 auto;padding:8px 10px;color:var(--gray-500);background:transparent;border:0;border-radius:6px;font:inherit;font-size:13px;font-weight:650;white-space:nowrap;cursor:pointer}.workspace-nav__item:hover{color:var(--text);background:var(--gray-100)}.workspace-nav__item.is-active{color:var(--white);background:var(--graphite-800)}.workspace-nav__item:focus-visible{outline:3px solid rgba(245,124,0,.4);outline-offset:1px}.workspace-nav__mobile{display:none}.compact-filter{min-width:138px;display:flex;align-items:center;gap:8px;padding-left:10px;color:var(--text-muted);background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-sm);font-size:12px;font-weight:700}.compact-filter select{min-height:40px;flex:1;padding:0 26px 0 0;color:var(--text);background:transparent;border:0;outline:0;font:inherit;font-size:14px;cursor:pointer}.tab__label,.job-card__row dt{display:inline-flex;align-items:center;gap:6px}.job-card__row dt svg{flex:0 0 auto;color:#68717b}.map-link{display:inline-flex;align-items:center;gap:5px}.empty-state__icon{min-height:48px;display:grid;place-items:center;color:var(--gray-400)}.empty-state__icon svg{width:42px;height:42px;stroke-width:1.5}.empty-state__mark{width:36px;height:2px;display:block;background:var(--gray-300)}.ops-subtitle{display:flex;align-items:center;gap:7px}.ops-form>summary{display:flex;align-items:center;gap:7px}.inventory-month-bar{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap}.inventory-month-bar .ops-subtitle{margin:0}.inventory-month-bar__picker{display:inline-flex;align-items:center;gap:8px;font-size:.85rem;color:var(--gray-600, #5b6470)}.inventory-month-bar__picker input[type=month]{padding:6px 10px;border:1px solid var(--gray-300, #d4d8dd);border-radius:8px;font:inherit;background:#fff}.job-card--new{border-left-color:var(--graphite-600)}.job-card--accepted{border-left-color:#b87500}.job-card--in_progress{border-left-color:var(--orange)}.job-card--completed,.job-card--approved{border-left-color:var(--green)}.job-card--invoiced{border-left-color:var(--gray-400)}.job-card--cancelled{border-left-color:var(--red)}.badge--new{color:var(--graphite-600);background:var(--gray-100)}.badge--accepted{color:#7a5200;background:#fff4d5}.badge--in_progress{color:var(--orange-dark);background:var(--orange-light)}.badge--completed,.badge--approved{color:#247a47;background:var(--green-light)}.badge--invoiced{color:var(--gray-500);background:var(--gray-100)}.badge--cancelled{color:#a93232;background:var(--red-light)}.badge--priority .badge__dot{width:7px;height:7px}@media(max-width:700px){.brand__logo--wide{display:none}.brand__logo--mark{display:block;width:36px;height:36px;object-fit:contain;flex:none}.brand__text{display:flex;max-width:min(38vw,150px)}.brand__logo--company-mark{padding:2px}.brand__name{font-size:15px;letter-spacing:0}.brand__sub{display:none}.topbar__right{gap:4px}.user-chip{padding:2px}.user-chip__avatar{width:34px;height:34px}.workspace-nav{padding:0;border:0;box-shadow:none;background:transparent}.workspace-nav__desktop{display:none}.workspace-nav__mobile{display:flex;align-items:center;gap:10px;padding:8px 11px;background:var(--surface);border:1px solid var(--border);border-radius:8px;box-shadow:var(--shadow-sm)}.workspace-nav__mobile>span{color:var(--text-muted);font-size:12px;font-weight:700;text-transform:uppercase}.workspace-nav__mobile select{min-width:0;min-height:38px;flex:1;padding:0 30px 0 6px;color:var(--text);background:transparent;border:0;outline:0;font:inherit;font-weight:700}.toolbar__filters{display:grid;grid-template-columns:1fr 1fr}.compact-filter{min-width:0}.search{grid-column:1 / -1}}@media(max-width:460px){.brand__text{display:flex}.topbar__inner{gap:8px}.topbar__right{flex:none}.workspace-nav__mobile{position:sticky;top:calc(var(--topbar-h) + 6px);z-index:12}.toolbar__filters{grid-template-columns:1fr}.search{grid-column:auto}}.report-filter-card{gap:14px}.report-filter-card__range{display:inline-flex;align-items:center;gap:6px;margin-top:5px;padding:4px 12px;border-radius:999px;background:#f3b52f29;color:#8a5a10;font-weight:700;font-size:13px}.report-filter-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.report-filter-grid--wide{grid-template-columns:repeat(4,minmax(0,1fr))}.report-filter-grid .field{min-width:0;margin-bottom:0}.report-filter-grid input,.report-filter-grid select{width:100%;min-width:0}.report-filter-card .dl-group{max-width:100%}.report-filter-card .dl-group__label{white-space:normal}.project-report-summary{display:flex;flex-wrap:wrap;gap:8px}.project-report-summary span{padding:7px 10px;border:1px solid var(--gray-200, #e2e7ec);border-radius:6px;background:var(--gray-50, #f7f8f9);color:var(--gray-600, #4b5560);font-size:13px;font-weight:700}.security-tile--attention{border-color:#c1392b73;background:#c1392b0f}.security-tile--attention strong{color:#b03434}.security-tile small{font-size:11px;line-height:1.35;color:var(--gray-500, #8a939c)}.security-tile--sum{border-color:var(--orange, #ef7d00);background:#fff7ec}.security-tile--sum strong{color:#b35f00}.security-tile--total{border-color:var(--graphite-800, #1f252b);background:var(--gray-50, #f6f7f8)}.wage-overview{margin-top:14px}.overtime-review{margin-top:0}.overtime-table td:last-child{min-width:180px}@media(max-width:900px){.report-filter-grid--wide{grid-template-columns:repeat(2,minmax(0,1fr))}.report-filter-card .wage-card__head{align-items:flex-start}.report-filter-card .report__downloads--groups{width:100%;gap:8px}.report-filter-card .dl-group{flex:1 1 260px}}@media(max-width:560px){.report-filter-grid,.report-filter-grid--wide{grid-template-columns:1fr}.report-filter-card{padding:12px}.report-filter-card .report__downloads--groups{flex-direction:column;align-items:stretch}.report-filter-card .dl-group{flex:none;width:100%}.report-filter-card .dl-group__label{flex:1 1 100%;margin:0}.fill-row{grid-template-columns:minmax(0,1fr);gap:5px}.fill-row__name,.fill-row__detail,.fill-row>.fill-badge{grid-column:1;grid-row:auto;justify-self:start}.fill-row>.fill-badge{max-width:100%;white-space:normal;line-height:1.25;text-align:left}.wage-summary--live{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:380px){.wage-summary--live{grid-template-columns:1fr}}.btn--dark{background:var(--graphite-800);color:var(--white);border-color:var(--graphite-800)}.btn--dark:hover:not(:disabled){background:var(--graphite-700)}.work-create-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:4px 0 18px}.work-create-actions .btn{min-height:58px}.work-board{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;margin-bottom:14px}.work-lane{min-width:0;padding-top:12px;border-top:3px solid var(--graphite-800)}.work-lane:nth-child(2){border-top-color:var(--orange)}.work-lane__head,.billing-history__head,.report-project-head{display:flex;align-items:center;gap:9px;margin-bottom:10px}.work-lane__head h4,.billing-history__head h4{margin:0;font-size:15px}.work-lane__icon{display:inline-flex;color:var(--gray-500)}.work-lane__count{min-width:25px;height:25px;margin-left:auto;display:inline-grid;place-items:center;border-radius:50%;background:var(--gray-100);color:var(--text-muted);font-size:12px;font-weight:800}.work-list{display:grid;gap:7px}.work-item{width:100%;min-height:62px;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 12px;text-align:left;color:var(--text);background:var(--surface);border:1px solid var(--border);border-radius:7px;cursor:pointer}.work-item:hover{border-color:var(--gray-400);background:var(--gray-50)}.work-item.is-selected{border-color:var(--graphite-700);box-shadow:inset 4px 0 0 var(--graphite-800)}.work-item__main{min-width:0;display:grid;gap:3px}.work-item__main strong,.work-item__main small{overflow-wrap:anywhere}.work-item__main small{color:var(--text-muted)}.work-item__status{flex:none;color:var(--orange-dark);font-size:12px;font-weight:800}.work-item--completed{color:var(--gray-500)}.work-lane__empty{margin:4px 0;color:var(--text-muted);font-size:13px}.completed-work-list{margin-bottom:16px}.work-detail-head{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;padding:16px 0 12px;border-top:1px solid var(--border)}.work-detail-head h3{margin:3px 0 2px;font-size:22px}.work-detail-head p{margin:0;color:var(--text-muted)}.work-detail-actions{display:flex;gap:8px;flex-wrap:wrap;justify-content:flex-end}.billing-history{margin:8px 0 14px;padding:12px 0;border-top:1px solid var(--border);border-bottom:1px solid var(--border)}.billing-history__head{justify-content:space-between}.billing-history__head span{color:var(--text-muted);font-size:12px;font-weight:700}.report__tiles--four{grid-template-columns:repeat(4,minmax(0,1fr))}.report-project-head{justify-content:space-between;align-items:flex-start}.report-project-head h3{margin-top:3px}.badge--ready{color:#247a47;background:var(--green-light)}.report-download-btn{box-shadow:none}@media(max-width:760px){.work-create-actions,.work-board{grid-template-columns:1fr}.work-detail-head{flex-direction:column}.work-detail-actions{width:100%;justify-content:stretch}.work-detail-actions .btn{flex:1 1 180px}.report__tiles--four{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:460px){.work-create-actions .btn{width:100%}.work-detail-actions{display:grid}.report__tiles--four{grid-template-columns:1fr 1fr}}.shortcut-admin__intro{margin:0 0 18px}.shortcut-admin__grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px}.shortcut-admin__section{min-width:0;padding-top:14px;border-top:3px solid var(--graphite-800)}.shortcut-admin__section:nth-child(2){border-top-color:var(--orange)}.shortcut-admin__head{min-height:44px;display:flex;align-items:flex-start;gap:10px;margin-bottom:14px}.shortcut-admin__head>span{width:36px;height:36px;display:inline-grid;place-items:center;flex:none;color:var(--graphite-700);background:var(--gray-100);border-radius:7px}.shortcut-admin__head h4{margin:0 0 2px;font-size:17px}.shortcut-admin__head small{color:var(--text-muted);font-size:12px}.shortcut-add{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:9px;margin-bottom:16px}.shortcut-add--supply{grid-template-columns:minmax(0,1fr) 92px auto}.shortcut-add .field{min-width:0;margin:0}.shortcut-add input,.shortcut-add select{width:100%;min-width:0}.shortcut-add .btn{min-height:44px}.shortcut-list{border-top:1px solid var(--border)}.shortcut-row{min-height:58px;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:9px 2px;border-bottom:1px solid var(--border)}.shortcut-row>span{min-width:0;display:grid;gap:2px}.shortcut-row strong{overflow-wrap:anywhere;font-size:14px}.shortcut-row small{color:var(--text-muted);font-size:12px}.shortcut-row.is-inactive{color:var(--gray-500);background:var(--gray-50)}.shortcut-list__empty{margin:14px 2px;color:var(--text-muted);font-size:13px}.shortcut-add--priced{grid-template-columns:minmax(0,1fr) 128px auto}.shortcut-add--priced.shortcut-add--supply{grid-template-columns:minmax(0,1fr) 84px 118px auto}.shortcut-row__actions{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:6px;flex:none}.shortcut-row--edit{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));align-items:end;gap:9px;padding:10px 2px;border-bottom:1px solid var(--border);background:var(--gray-50)}.shortcut-row--edit .field{margin:0;min-width:0}.shortcut-row--edit input,.shortcut-row--edit select{width:100%;min-width:0}.shortcut-row--edit .shortcut-row__actions{align-self:end}@media(max-width:820px){.shortcut-admin__grid{grid-template-columns:1fr}}@media(max-width:520px){.shortcut-add,.shortcut-add--supply{grid-template-columns:minmax(0,1fr) 92px}.shortcut-add:not(.shortcut-add--supply) .shortcut-add__name{grid-column:1 / -1}.shortcut-add:not(.shortcut-add--supply) .btn{grid-column:1 / -1}.shortcut-add--supply .shortcut-add__name,.shortcut-add--supply .btn{grid-column:1 / -1}.shortcut-add--priced{grid-template-columns:minmax(0,1fr) 1fr}.shortcut-add--priced.shortcut-add--supply{grid-template-columns:84px minmax(0,1fr)}.shortcut-add--priced .shortcut-add__name,.shortcut-add--priced .btn{grid-column:1 / -1}.shortcut-row{align-items:flex-start;flex-wrap:wrap}.shortcut-row__actions{justify-content:flex-start;width:100%}}.accessory-picker{display:flex;flex-wrap:wrap;gap:7px;margin-top:4px}.accessory-chip{display:inline-flex;align-items:center;gap:7px;padding:8px 12px;border:1px solid var(--border);border-radius:999px;background:var(--surface);font-size:13.5px;cursor:pointer}.accessory-chip:hover{border-color:var(--gray-400)}.accessory-chip.is-selected{border-color:var(--graphite-800);box-shadow:inset 0 0 0 1px var(--graphite-800);background:var(--gray-50)}.accessory-chip input{width:16px;height:16px;accent-color:var(--orange)}.hours-accessories{margin:8px 0 0;padding:9px 12px;border:1px solid #efbf80;border-radius:8px;background:#fff8ef}.fill-row__btn{width:100%;min-height:44px;display:flex;align-items:center;gap:10px;padding:0;border:0;background:none;font:inherit;text-align:left;cursor:pointer}.fill-row__btn:disabled{cursor:default}.fill-row__btn .fill-row__name{flex:1;min-width:0}.fill-row__open{color:var(--text-muted);font-size:16px}.fill-row.has-deviation{background:var(--orange-light, #fff7ed)}.fill-badge--warn{color:#92400e;background:#fef3c7}.fill-badge--absence{color:#1d4ed8;background:#dbeafe}.fill-cell__btn{width:100%;min-height:34px;padding:0;border:0;background:none;font:inherit;cursor:pointer}.fill-cell.is-short{background:#fef3c7}.fill-cell.is-long{background:#ffedd5}.fill-cell.is-absence{background:#dbeafe}.deviation-list{margin-top:14px;border-top:1px solid var(--border);padding-top:10px}.deviation-list h4{margin:0 0 8px;font-size:13.5px}.deviation-list summary{margin:0 0 8px;font-size:13.5px;font-weight:750;cursor:pointer}.deviation-list__hint{color:var(--text-muted, #64706b);font-weight:500}.deviation-list ul{margin:0;padding:0;list-style:none}.deviation-row{width:100%;min-height:48px;display:flex;align-items:center;gap:10px;padding:6px 4px;border:0;border-bottom:1px solid var(--border);background:none;font:inherit;text-align:left;cursor:pointer}.deviation-row:hover{background:var(--gray-50)}.deviation-row__who{flex:1;min-width:0;overflow-wrap:anywhere}.deviation-row__open{color:var(--orange);font-size:13px;font-weight:700;white-space:nowrap}.inspect-list{display:grid;gap:10px}.inspect-flag{margin:0;padding:8px 10px;background:#fef3c7;color:#92400e;border-radius:7px;font-size:13px}.inspect-entry{padding:10px 12px;border:1px solid var(--border);border-radius:8px;background:var(--surface)}.inspect-entry__head{display:flex;align-items:baseline;justify-content:space-between;gap:10px;margin-bottom:6px}.inspect-entry__head strong{font-size:17px}.inspect-entry__head span{color:var(--text-muted);font-size:12.5px}.inspect-entry__line{display:flex;gap:10px;margin:3px 0;font-size:13px}.inspect-entry__line>span{flex:none;width:84px;color:var(--text-muted)}.inspect-entry__line>strong{min-width:0;font-weight:600;overflow-wrap:anywhere}.payroll-export__controls{display:flex;flex-wrap:wrap;align-items:end;gap:10px;margin:10px 0 14px}.payroll-export__controls .field{margin:0}.payroll-export__subtitle,.wage-subwork__title{margin:16px 0 8px;font-size:14px;font-weight:750}.payroll-export__actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:14px}.payroll-export__actions .btn{display:inline-flex;align-items:center;gap:7px}.payroll-export .wage-card__head h3{display:inline-flex;align-items:center;gap:8px}@media(max-width:560px){.payroll-export__actions .btn{flex:1;justify-content:center}}.side-switch--1{grid-template-columns:1fr}.manage-user__title{margin:16px 0 4px;font-size:14.5px}.manage-user__title:first-child{margin-top:0}.card-list{margin:0 0 12px;padding:0;list-style:none}.card-list__row{min-height:52px;display:flex;align-items:center;gap:10px;padding:8px 2px;border-bottom:1px solid var(--border)}.card-list__row>span:first-child{flex:1;min-width:0;display:grid;gap:2px}.card-list__row strong{overflow-wrap:anywhere;font-size:14px}.card-list__row small{color:var(--text-muted);font-size:12px}.card-quick-picks{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:10px}.card-quick-picks .hours-chip{flex:1 1 150px;min-width:0;max-width:100%;padding:10px;font-size:13.5px;line-height:1.25;overflow-wrap:anywhere}.card-add{display:grid;grid-template-columns:minmax(0,1fr) 150px auto;align-items:end;gap:9px;margin-bottom:6px}.card-add .field{margin:0;min-width:0}.card-add .btn{min-height:44px}@media(max-width:560px){.card-add{grid-template-columns:1fr 1fr}.card-add .field:first-child,.card-add .btn{grid-column:1 / -1}}.view-settings-form{display:grid;gap:16px}.view-settings-form .ops-hint{margin:0}.view-settings-options{display:grid;gap:10px}.view-settings-options .billing-toggle{align-items:flex-start;padding:13px;background:var(--surface, #fff);border-color:var(--border)}.view-settings-options .billing-toggle:has(input:checked){background:#fff8ec;border-color:var(--amber)}.view-settings-options .billing-toggle>span{min-width:0;display:grid;gap:2px}.view-settings-options .billing-toggle small{color:var(--text-muted);font-size:12.5px;font-weight:400;line-height:1.35}.view-settings-options .billing-toggle input:disabled{cursor:wait}html,body,#root{width:100%;max-width:100%}#root,.app-shell,.content,.report,.ops,.projects-panel,.driver-inventory,.wage-card,.report__section,.data-table-wrap,.modal,.modal__content{min-width:0;max-width:100%;overflow-wrap:break-word}.btn{min-width:0;max-width:100%}.data-table-wrap{overscroll-behavior-x:contain;-webkit-overflow-scrolling:touch}.project-extra-btn{max-width:100%;white-space:normal;text-align:center}.hours-month{grid-template-columns:repeat(7,minmax(0,1fr));width:100%;min-width:0}.hours-month__cell{width:100%;min-width:0}@media(max-width:560px){.btn:not(.hours-nav__btn){height:auto;white-space:normal;overflow-wrap:break-word;text-align:center}.project-extra-btn{width:100%}.data-table th,.data-table td,.report__table th,.report__table td{padding:9px 7px}.data-table{font-size:13px;width:max-content;min-width:100%;max-width:none}.data-table th,.data-table td{min-width:84px;max-width:220px;word-break:normal;overflow-wrap:break-word}.data-table th:first-child,.data-table td:first-child{min-width:100px}.data-table th:last-child,.data-table td:last-child{min-width:44px}.data-table th,.report__table th{white-space:normal;overflow-wrap:break-word}.data-table td,.report__table td{overflow-wrap:break-word}.data-table .num,.report__table .num{white-space:nowrap}}.side-switch--many{grid-template-columns:repeat(auto-fit,minmax(155px,1fr))}.side-switch--many .side-switch__btn{min-width:0;padding-inline:11px}@media(max-width:560px){.side-switch--many{grid-template-columns:repeat(2,minmax(0,1fr))}}.maint-assets{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:8px;margin:0 0 16px}.maint-asset{display:grid;grid-template-columns:38px minmax(0,1fr);align-items:center;gap:2px 10px;min-height:76px;padding:10px 12px;border:1px solid var(--border, #d8dfda);border-radius:8px;background:var(--white, #fff);color:var(--graphite-800, #1f2a30);font:inherit;text-align:left;cursor:pointer}.maint-asset:hover{border-color:var(--gray-400, #9ba5ae)}.maint-asset.is-active{border-color:var(--graphite-800, #1f2a30);box-shadow:inset 0 0 0 1px var(--graphite-800, #1f2a30)}.maint-asset__icon{grid-row:1 / span 2;display:grid;place-items:center;width:36px;height:36px;border-radius:8px;background:var(--gray-50, #f4f6f8)}.maint-asset__copy{display:grid;min-width:0}.maint-asset__copy strong,.maint-asset__copy small,.maint-asset__status{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.maint-asset__copy small{color:var(--gray-500, #737c87);font-size:12px}.maint-asset__status{grid-column:2;color:var(--gray-600, #4b5560);font-size:12px}.maint-panel__head>div{display:grid;gap:2px}.maint-panel__head>div>span{color:var(--gray-500, #737c87);font-size:12.5px}.maint-upcoming__item{display:flex;align-items:center;gap:7px;flex-wrap:wrap}@media(max-width:560px){.maint-assets{grid-template-columns:1fr}.maint-panel__head{align-items:stretch}.maint-panel__head select{width:100%}}.work-preview-groups{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px}.work-preview-group{min-width:0}.work-preview-group__title{display:flex;align-items:center;gap:8px;margin:0 0 9px}.work-preview-group__title h3{margin:0;font-size:16px}.work-preview-group__title span{display:inline-grid;place-items:center;min-width:25px;height:25px;padding:0 7px;border-radius:999px;background:var(--gray-100, #edf0f2);font-size:12px;font-weight:800}.work-preview-list{display:grid;gap:9px}.work-preview-card{padding:14px;border:1px solid var(--border, #d8dfda);border-radius:8px;background:var(--white, #fff)}.work-preview-card__head{display:grid;grid-template-columns:36px minmax(0,1fr) auto;align-items:start;gap:10px}.work-preview-card__icon{display:grid;place-items:center;width:36px;height:36px;border-radius:8px;background:var(--gray-50, #f4f6f8)}.work-preview-card__head h3{margin:0;font-size:15.5px}.work-preview-card__head p{display:flex;align-items:center;gap:4px;margin:3px 0 0;color:var(--gray-600, #4b5560);font-size:12.5px}.work-preview-card__foreman{margin:11px 0 0;font-size:13px}.work-preview-card__equipment{display:flex;align-items:flex-start;gap:9px;margin-top:12px;padding:10px 11px;border-left:3px solid var(--orange, #f3b52f);background:var(--orange-soft, #fff7e8);font-size:13px}.work-preview-card__equipment>div{display:grid;gap:3px}.work-preview-card__equipment ul{display:flex;flex-wrap:wrap;gap:5px 13px;margin:0;padding-left:18px}.work-preview-card__equipment.is-empty{border-left-color:var(--gray-300, #c3cbd3);background:var(--gray-50, #f4f6f8)}.work-preview-card__equipment.is-empty span{color:var(--gray-600, #4b5560)}@media(max-width:760px){.work-preview-groups{grid-template-columns:1fr;gap:18px}.work-preview-card__head{grid-template-columns:36px minmax(0,1fr)}.work-preview-card__head .badge{grid-column:2;justify-self:start}}.work-summary{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:10px;margin:12px 0}.work-summary__item{display:grid;gap:2px;padding:12px 14px;border:1px solid var(--border, #d8dfda);border-radius:10px;background:var(--surface, #fff)}.work-summary__item strong{font-size:20px;line-height:1.2}.work-summary__item span{font-size:12px;color:var(--gray-500, #6b747e)}.work-summary__item small{font-size:11.5px;line-height:1.35;color:var(--gray-500, #6b747e)}.work-summary__item.is-over{border-color:#d4562f;background:#fff5f1}.work-summary__item.is-over strong{color:#b8431f}.work-tabs{display:flex;flex-wrap:wrap;gap:6px;margin:14px 0 12px;border-bottom:1px solid var(--border, #d8dfda);padding-bottom:8px}.work-tab{display:inline-flex;align-items:center;gap:6px;padding:8px 14px;border:1px solid var(--border, #d8dfda);border-radius:999px;background:var(--surface, #fff);color:var(--gray-600, #4b5560);font:inherit;font-size:13px;font-weight:600;cursor:pointer}.work-tab:hover{border-color:var(--gray-400, #9aa3ac)}.work-tab.is-active{border-color:var(--graphite-800);background:var(--graphite-800);color:#fff}.work-tab__flag{display:inline-flex;align-items:center;justify-content:center;min-width:20px;height:20px;padding:0 6px;border-radius:999px;background:#d4562f;color:#fff;font-size:11px;font-weight:800}.work-pane{display:grid;gap:12px;min-width:0}.work-facts{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:10px;margin:0}.work-facts>div{display:grid;gap:2px;padding:10px 12px;border:1px solid var(--border, #d8dfda);border-radius:10px;background:var(--gray-50, #f7f8f9);min-width:0}.work-facts dt{font-size:11px;font-weight:800;text-transform:uppercase;letter-spacing:.4px;color:var(--gray-500, #737c87)}.work-facts dd{margin:0;font-size:14px;overflow-wrap:anywhere}.anomaly-list{display:grid;gap:8px;padding:12px 14px;border:1px solid var(--border, #d8dfda);border-left:3px solid #d4562f;border-radius:10px;background:#fffaf7}.anomaly-list>strong{font-size:13px}.anomaly-list ul{display:grid;gap:6px;margin:0;padding:0;list-style:none}.anomaly{display:flex;flex-wrap:wrap;align-items:baseline;justify-content:space-between;gap:8px;padding:7px 10px;border-radius:8px;background:var(--surface, #fff);font-size:13px}.anomaly small{color:var(--gray-500, #75808a);font-size:11.5px}.anomaly--long{box-shadow:inset 3px 0 #d4562f}.anomaly--short{box-shadow:inset 3px 0 #c79200}.charge-rate{display:block;color:var(--gray-500, #75808a);font-size:11px;font-weight:400}@media(max-width:760px){.work-tabs{gap:5px}.work-tab{padding:7px 11px;font-size:12.5px}.work-summary{grid-template-columns:1fr}.anomaly{flex-direction:column;align-items:flex-start;gap:2px}}.machine-kit{display:grid;gap:6px;margin:4px 0 0;padding:0;list-style:none}.machine-kit li{display:grid;gap:1px;padding:6px 9px;border-left:3px solid var(--orange, #ef7d00);border-radius:6px;background:var(--gray-50, #f7f8f9)}.machine-kit li strong{font-size:13px}.machine-kit li span{font-size:12px;color:var(--gray-500, #75808a);overflow-wrap:anywhere}.work-facts__wide{grid-column:1 / -1}.hours-group-label{display:block;margin:10px 0 4px;font-size:11px;font-weight:800;text-transform:uppercase;letter-spacing:.4px;color:var(--gray-500, #737c87)}.plans-panel{display:grid;gap:16px;min-width:0}.plan-head{display:flex;flex-wrap:wrap;align-items:flex-start;justify-content:space-between;gap:14px}.plan-head h4{margin:0 0 2px;font-size:21px;letter-spacing:-.2px}.plan-progress{display:flex;flex-wrap:wrap;align-items:center;gap:14px;padding:16px 20px;border:1px solid var(--border, #e3e8ee);border-radius:14px;background:linear-gradient(180deg,#ffffffe6,#fafbfce6);box-shadow:0 1px 2px #1018280a,0 8px 24px -18px #10182880}.plan-progress__bar{flex:1 1 240px;height:10px;border-radius:999px;background:var(--gray-100, #eceff3);overflow:hidden;box-shadow:inset 0 1px 2px #1018280f}.plan-progress__bar span{display:block;height:100%;border-radius:999px;background:linear-gradient(90deg,#f59e0b,var(--orange, #ef7d00));transition:width .45s cubic-bezier(.22,1,.36,1)}.plan-progress strong{font-size:26px;letter-spacing:-.5px;font-variant-numeric:tabular-nums}.plan-progress>span{font-size:12.5px;color:var(--gray-500, #6b747e)}.plan-board{display:grid;gap:16px;min-width:0}.plan-phase{display:grid;grid-template-columns:86px minmax(0,1fr);min-width:0;border:1px solid var(--border, #e3e8ee);border-radius:16px;background:var(--surface, #fff);box-shadow:0 1px 2px #1018280a,0 12px 30px -22px #1018288c;overflow:hidden;transition:box-shadow .25s ease,border-color .25s ease}.plan-phase:hover{border-color:#d4dbe4;box-shadow:0 1px 2px #1018280d,0 18px 40px -24px #10182899}.plan-phase__rail{display:grid;align-content:start;justify-items:center;gap:3px;padding:20px 10px;background:linear-gradient(180deg,#f8fafc,#f1f4f8);border-right:1px solid var(--border, #e3e8ee);text-align:center}.plan-phase__number{font-size:30px;font-weight:800;line-height:1;letter-spacing:-1px;color:#aab4c0;font-variant-numeric:tabular-nums}.plan-phase__share{font-size:12px;font-weight:800;color:var(--orange, #ef7d00);font-variant-numeric:tabular-nums}.plan-phase__state{margin-top:4px;padding:2px 9px;border-radius:999px;background:#e7ebf0;color:#5b6672;font-size:10.5px;font-weight:800;text-transform:uppercase;letter-spacing:.5px}.plan-phase.is-done{border-color:#bfe0cd}.plan-phase.is-done .plan-phase__rail{background:linear-gradient(180deg,#f2fbf5,#e8f6ee);border-right-color:#cfe7d9}.plan-phase.is-done .plan-phase__number{color:#6aab86}.plan-phase.is-done .plan-phase__share{color:#2e8b57}.plan-phase.is-done .plan-phase__state{background:#2e8b57;color:#fff}.plan-phase__body{display:grid;gap:14px;min-width:0;padding:18px 20px 20px}.plan-phase__head{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:12px}.plan-phase__title,.plan-phase__title-read{flex:1 1 240px;min-width:0;margin:0;font-size:19px;font-weight:700;letter-spacing:-.2px}.plan-phase__title{padding:6px 10px;border:1px solid transparent;border-radius:9px;background:transparent;transition:border-color .18s ease,background .18s ease}.plan-phase__title:hover{border-color:var(--border, #e3e8ee);background:#fafbfc}.plan-phase__title:focus{border-color:var(--orange, #ef7d00);background:#fff;outline:none}.plan-check{position:relative;display:inline-flex;align-items:center;gap:9px;padding:8px 14px 8px 10px;border:1px solid var(--border, #e3e8ee);border-radius:999px;background:#fff;font-size:13px;font-weight:700;color:var(--gray-600, #4b5560);cursor:pointer;transition:border-color .18s ease,background .18s ease,color .18s ease}.plan-check input{position:absolute;opacity:0;width:0;height:0}.plan-check__box{display:inline-flex;align-items:center;justify-content:center;width:26px;height:26px;border-radius:999px;background:#eef1f5;color:#9aa5b1;transition:background .18s ease,color .18s ease,transform .18s ease}.plan-check:hover:not(.is-locked){border-color:var(--orange, #ef7d00);color:var(--orange, #ef7d00)}.plan-check:hover:not(.is-locked) .plan-check__box{background:#fff1e2;color:var(--orange, #ef7d00)}.plan-check.is-done{border-color:#2e8b57;background:#f2fbf5;color:#24704a}.plan-check.is-done .plan-check__box{background:#2e8b57;color:#fff;transform:scale(1.04)}.plan-check.is-locked{cursor:not-allowed;opacity:.65}.plan-check input:focus-visible+.plan-check__box{outline:2px solid var(--orange, #ef7d00);outline-offset:2px}.plan-phase__meta{display:flex;flex-wrap:wrap;align-items:center;gap:10px;font-size:13px;color:var(--gray-500, #6b747e)}.plan-dates{display:inline-flex;align-items:center;gap:8px;flex-wrap:wrap}.plan-dates input{padding:7px 10px;border:1px solid var(--border, #e3e8ee);border-radius:9px;font-size:13px}.plan-dates em{font-style:normal;color:var(--gray-400, #97a1ac)}.plan-phase__range{font-weight:600}.plan-phase__done-by{padding:3px 10px;border-radius:999px;background:#eaf6ef;color:#24704a;font-size:12px;font-weight:600}.plan-phase__grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(200px,260px);gap:16px;align-items:start}.plan-phase__notes{display:grid;gap:9px;min-width:0}.plan-phase__empty{margin:0;padding:14px;border:1px dashed var(--border, #e3e8ee);border-radius:11px;color:var(--gray-500, #8b95a1);font-size:13px;text-align:center}.plan-note{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:start;gap:11px;padding:12px 14px;border:1px solid var(--border, #e9edf2);border-left:3px solid var(--gray-300, #c7ced6);border-radius:11px;background:#fbfcfd}.plan-note__author{display:inline-flex;align-items:center;justify-content:center;width:30px;height:30px;border-radius:999px;color:#fff;font-size:11.5px;font-weight:800;letter-spacing:.4px;box-shadow:0 2px 6px -2px #10182866}.plan-note__body{display:grid;gap:3px;min-width:0}.plan-note__name{font-size:11px;font-weight:800;text-transform:uppercase;letter-spacing:.4px;color:var(--gray-500, #8b95a1)}.plan-note__body p{margin:0;font-size:14px;line-height:1.55;overflow-wrap:anywhere;white-space:pre-line}.plan-note-add{display:grid;gap:8px;justify-items:start}.plan-note-add textarea{width:100%;min-height:104px;padding:12px 14px;border:1px solid var(--border, #e3e8ee);border-radius:11px;font-size:14px;line-height:1.55;resize:vertical;transition:border-color .18s ease,box-shadow .18s ease}.plan-note-add textarea:focus{border-color:var(--orange, #ef7d00);box-shadow:0 0 0 3px #ef7d001f;outline:none}.plan-phase__kit{display:grid;gap:9px;align-content:start;min-width:0}.plan-kit-group{display:grid;gap:5px;padding:11px 13px;border:1px solid var(--border, #e9edf2);border-radius:11px;background:#fbfcfd}.plan-kit-group__title{font-size:10.5px;font-weight:800;text-transform:uppercase;letter-spacing:.5px;color:var(--gray-500, #8b95a1)}.plan-kit-group ul{display:grid;gap:4px;margin:0;padding:0;list-style:none}.plan-kit-group li{display:flex;align-items:center;justify-content:space-between;gap:8px;font-size:13px}.plan-kit-group li span{min-width:0;overflow-wrap:anywhere}.plan-kit-group__empty{font-size:12.5px;color:var(--gray-400, #a3adb8)}.plan-kit-group__add{display:inline-flex;align-items:center;gap:4px;justify-self:start;margin-top:2px;padding:0;border:0;background:none;color:var(--orange, #ef7d00);font:inherit;font-size:12.5px;font-weight:700;cursor:pointer}.plan-kit-group__add:hover{text-decoration:underline}.plan-phase__remove{justify-self:start}.plan-phase-add{display:flex;align-items:center;gap:14px;width:100%;padding:20px 22px;border:1px dashed #cdd6e0;border-radius:16px;background:#fbfcfd;color:var(--gray-600, #4b5560);font:inherit;text-align:left;cursor:pointer;transition:border-color .2s ease,background .2s ease,color .2s ease}.plan-phase-add:hover{border-color:var(--orange, #ef7d00);background:#fffaf4;color:var(--orange, #ef7d00)}.plan-phase-add__icon{display:inline-flex;align-items:center;justify-content:center;width:42px;height:42px;border-radius:12px;background:#eef1f5;color:inherit;flex:none}.plan-phase-add:hover .plan-phase-add__icon{background:#fff1e2}.plan-phase-add strong{display:block;font-size:15px}.plan-phase-add small{display:block;font-size:12.5px;color:var(--gray-500, #8b95a1)}.plan-access-list{display:grid;gap:8px}.plan-access-row{display:flex;flex-wrap:wrap;align-items:center;gap:8px;padding:11px 13px;border:1px solid var(--border, #e3e8ee);border-radius:11px}.plan-access-row>strong{flex:1 1 150px;min-width:0}.plan-report,.plan-photos{display:grid;gap:8px;padding:14px 16px;border:1px solid var(--border, #e9edf2);border-radius:12px;background:#fbfcfd}.plan-report__title{margin:0;font-size:11px;font-weight:800;text-transform:uppercase;letter-spacing:.6px;color:var(--gray-500, #8b95a1)}.plan-report__entry{display:grid;gap:6px;padding:11px 13px;border:1px solid var(--border, #e9edf2);border-left:3px solid var(--gray-300, #c7ced6);border-radius:10px;background:#fff}.plan-report__meta{display:flex;align-items:center;gap:9px}.plan-report__who{display:grid;gap:1px;flex:1 1 auto;min-width:0}.plan-report__who strong{font-size:13px}.plan-report__who small{font-size:11.5px;color:var(--gray-500, #8b95a1)}.plan-report__entry p{margin:0;font-size:14px;line-height:1.55;overflow-wrap:anywhere;white-space:pre-line}.plan-photos__head{display:flex;align-items:center;justify-content:space-between;gap:10px;flex-wrap:wrap}.plan-photo-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:10px;margin:0;padding:0;list-style:none}.plan-photo{display:grid;gap:0;border:1px solid var(--border, #e3e8ee);border-radius:10px;background:#fff;overflow:hidden;box-shadow:0 1px 2px #1018280a}.plan-photo img{display:block;width:100%;aspect-ratio:4 / 3;object-fit:cover;background:#eef1f5}.plan-photo__missing{display:grid;place-items:center;aspect-ratio:4 / 3;background:#f4f6f8;color:var(--gray-500, #8b95a1);font-size:12px;text-align:center;padding:8px}.plan-photo__foot{display:flex;align-items:center;gap:4px;padding:7px 8px;border-top:1px solid var(--border, #eef1f5)}.plan-photo__caption,.plan-photo__caption-read{flex:1 1 auto;min-width:0;font-size:12.5px;font-weight:600;overflow-wrap:anywhere}.plan-photo__caption{padding:4px 6px;border:1px solid transparent;border-radius:7px;background:transparent}.plan-photo__caption:hover{border-color:var(--border, #e3e8ee);background:#fafbfc}.plan-photo__caption:focus{border-color:var(--orange, #ef7d00);background:#fff;outline:none}.plan-phase__foot{display:flex;flex-wrap:wrap;gap:8px;padding-top:2px}@media(max-width:900px){.plan-phase__grid{grid-template-columns:minmax(0,1fr)}}@media(max-width:760px){.plan-phase{grid-template-columns:60px minmax(0,1fr)}.plan-phase__rail{padding:14px 6px}.plan-phase__number{font-size:24px}.plan-phase__body{padding:14px 15px 16px}.plan-phase__title,.plan-phase__title-read{font-size:17px}.plan-check{justify-content:center}.plan-progress strong{font-size:22px}.plan-access-row{flex-direction:column;align-items:stretch}}.plan-attachments{display:grid;gap:8px;padding:14px 16px;border:1px solid var(--border, #e9edf2);border-radius:12px;background:#fbfcfd}.plan-attachment-list{margin:0;padding:0;list-style:none;display:grid;gap:4px}.plan-attachment-list li{display:flex;align-items:center;gap:8px;padding:8px 10px;background:#fff;border:1px solid var(--border, #e3e8ee);border-radius:8px;font-size:13.5px;min-width:0}.plan-attachment-list li>svg{flex:none;color:var(--gray-500, #8b95a1)}.plan-attachment-list a{min-width:0;overflow-wrap:anywhere;color:var(--text, #22272e);font-weight:600;text-decoration:underline;text-decoration-color:#d9c07a;text-underline-offset:2px}.plan-attachment-list a:hover{color:var(--orange, #d89300)}.plan-attachment-list li>small{color:var(--gray-500, #8b95a1);white-space:nowrap}.plan-attachment-list li .trash-btn{margin-left:auto}.kieli-kytkin{display:inline-flex;gap:2px;padding:3px;background:#ffffff1f;border:1px solid rgba(255,255,255,.18);border-radius:10px;flex:none}.kieli-kytkin button{border:0;background:transparent;padding:4px 9px;border-radius:7px;font:inherit;font-size:12px;font-weight:700;letter-spacing:.03em;color:#ffffffbf;cursor:pointer;transition:background .15s,color .15s}.kieli-kytkin button:hover{color:#fff}.kieli-kytkin button.is-active{background:var(--white, #fff);color:var(--text, #22272e);box-shadow:0 1px 3px #00000040}@media(max-width:480px){.kieli-kytkin button{padding:3px 7px;font-size:11px}}.tunnit-kuittaus{position:fixed;top:0;right:0;bottom:0;left:0;z-index:120;display:grid;place-items:center;padding:20px;background:#15181d8c;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);animation:kuittaus-tausta .2s ease-out}@keyframes kuittaus-tausta{0%{opacity:0}to{opacity:1}}.tunnit-kuittaus__kortti{background:var(--white, #fff);border-radius:18px;padding:28px 24px 20px;width:min(360px,100%);display:flex;flex-direction:column;align-items:center;gap:8px;text-align:center;box-shadow:0 18px 50px #0000004d;animation:kuittaus-kortti .28s cubic-bezier(.2,.9,.3,1.15)}@keyframes kuittaus-kortti{0%{opacity:0;transform:scale(.82)}to{opacity:1;transform:scale(1)}}.tunnit-kuittaus__merkki{width:88px;height:88px;margin-bottom:4px}.tunnit-kuittaus__ympyra{fill:var(--green-light, #e7f6ed);stroke:var(--green, #2e9e5b);stroke-width:4;stroke-dasharray:202;stroke-dashoffset:202;animation:kuittaus-piirto .5s ease-out forwards}.tunnit-kuittaus__viiva{fill:none;stroke:var(--green, #2e9e5b);stroke-width:6;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:44;stroke-dashoffset:44;animation:kuittaus-piirto .35s ease-out .4s forwards}@keyframes kuittaus-piirto{to{stroke-dashoffset:0}}.tunnit-kuittaus__kortti strong{font-size:22px;line-height:1.25;color:var(--text, #22272e)}.tunnit-kuittaus__kortti span{color:var(--gray-600, #5b6570);font-size:15px;line-height:1.4}.tunnit-kuittaus__kortti .btn{margin-top:12px}@media(prefers-reduced-motion:reduce){.tunnit-kuittaus,.tunnit-kuittaus__kortti,.tunnit-kuittaus__ympyra,.tunnit-kuittaus__viiva{animation:none}.tunnit-kuittaus__ympyra,.tunnit-kuittaus__viiva{stroke-dashoffset:0}}.katsastus-lista{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:8px;margin:0 0 16px}.katsastus-kortti{display:grid;grid-template-columns:minmax(0,1.2fr) auto auto;align-items:center;gap:10px;padding:11px 13px;border:1px solid var(--border, #d8dfda);border-left:4px solid var(--gray-400, #9ba5ae);border-radius:8px;background:var(--white, #fff);color:var(--graphite-800, #1f2a30);font:inherit;text-align:left;cursor:pointer}.katsastus-kortti:hover{border-color:var(--gray-400, #9ba5ae)}.katsastus-kortti__nimi{display:grid;grid-template-columns:20px minmax(0,1fr);align-items:center;gap:0 8px;min-width:0}.katsastus-kortti__nimi svg{grid-row:1 / span 2;color:var(--gray-500, #737c87)}.katsastus-kortti__nimi strong,.katsastus-kortti__nimi small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.katsastus-kortti__nimi small{color:var(--gray-500, #737c87);font-size:12px}.katsastus-kortti__luku{display:grid;justify-items:end;gap:1px;text-align:right}.katsastus-kortti__otsikko{color:var(--gray-500, #737c87);font-size:10.5px;font-weight:700;letter-spacing:.05em;text-transform:uppercase}.katsastus-kortti__luku b{font-size:15px}.katsastus-kortti__luku small{color:var(--gray-500, #737c87);font-size:11.5px}.katsastus-kortti__luku--huolto b{font-size:13.5px;font-weight:600}.katsastus-kortti--ok{border-left-color:#2f7d4f}.katsastus-kortti--ok .katsastus-kortti__luku b{color:#2f7d4f}.katsastus-kortti--pian{border-left-color:#b5730f;background:#b5730f0d}.katsastus-kortti--pian .katsastus-kortti__luku b{color:#8f5a08}.katsastus-kortti--myohassa{border-left-color:#c1392b;background:#c1392b12}.katsastus-kortti--myohassa .katsastus-kortti__luku b{color:#a52c20}.katsastus-kortti--ei .katsastus-kortti__luku b{color:var(--gray-500, #737c87);font-weight:600}.katsastus-tiedot{display:flex;flex-wrap:wrap;gap:6px 18px;margin:0 0 12px;padding:9px 12px;border:1px solid var(--border, #d8dfda);border-radius:8px;background:var(--gray-50, #f4f6f8);color:var(--gray-600, #4b5560);font-size:13px}.katsastus-tiedot span{display:inline-flex;align-items:center;gap:6px}.katsastus-tiedot b{color:var(--graphite-800, #1f2a30)}@media(max-width:560px){.katsastus-lista{grid-template-columns:1fr}.katsastus-kortti{grid-template-columns:minmax(0,1fr) auto}.katsastus-kortti__luku--huolto{grid-column:2}}.lisatyo-panel__lead{margin:0 0 14px;max-width:78ch;font-size:13.5px;line-height:1.5}.lisatyo-panel__foot{margin:14px 0 0}.lisatyo-toolbar{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:10px 16px;margin-bottom:12px}.lisatyo-toolbar .owner-pills,.lisatyo-viewbar .owner-pills{margin:0}.lisatyo-filters{display:flex;flex-wrap:wrap;gap:8px;align-items:center}.lisatyo-filters select,.lisatyo-sort select{min-height:40px;padding:0 12px;border:1px solid var(--border, #e5e8ec);border-radius:var(--radius-sm, 8px);background:var(--surface, #fff);font:inherit;font-size:14px;color:var(--text, #15181d);max-width:100%}.lisatyo-search{display:inline-flex;align-items:center;gap:8px;min-height:40px;padding:0 12px;border:1px solid var(--border, #e5e8ec);border-radius:var(--radius-sm, 8px);background:var(--surface, #fff);color:var(--gray-500, #6b7280)}.lisatyo-search input{border:0;outline:none;background:transparent;font:inherit;font-size:14px;color:var(--text, #15181d);width:220px;max-width:100%}.lisatyo-search:focus-within{border-color:var(--orange, #f57c00);box-shadow:0 0 0 3px #f57c0029}.lisatyo-tiles{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:10px;margin:0 0 14px}.lisatyo-tile{display:flex;flex-direction:column;gap:4px;padding:14px 16px;border:1px solid var(--border, #e5e8ec);border-radius:var(--radius, 12px);background:var(--surface, #fff)}.lisatyo-tile strong{font-family:var(--font-display, inherit);font-size:26px;line-height:1;font-variant-numeric:tabular-nums}.lisatyo-tile span{font-size:12.5px;color:var(--gray-500, #6b7280)}.lisatyo-tile--main{border-color:#f57c0080;background:var(--orange-light, #fff3e6)}.lisatyo-tile--main strong{font-size:32px;color:var(--orange-dark, #e06b00)}.lisatyo-viewbar{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:10px;margin-bottom:10px}.lisatyo-sort{display:inline-flex;align-items:center;gap:8px;font-size:13px;color:var(--gray-500, #6b7280)}.lisatyo-groups{display:flex;flex-direction:column;gap:12px}.lisatyo-group{border:1px solid var(--border, #e5e8ec);border-radius:var(--radius, 12px);background:var(--surface, #fff);box-shadow:var(--shadow-sm);overflow:hidden}.lisatyo-group__head{display:grid;grid-template-columns:minmax(0,1fr) auto auto;align-items:center;gap:14px;width:100%;padding:14px 16px;border:0;background:transparent;font:inherit;color:inherit;text-align:left;cursor:pointer}.lisatyo-group__head:hover{background:var(--gray-50, #f7f8fa)}.lisatyo-group__head:focus-visible{outline:2px solid var(--orange, #f57c00);outline-offset:-2px}.lisatyo-group__title{display:flex;flex-direction:column;gap:4px;min-width:0}.lisatyo-group__title>strong{font-family:var(--font-display, inherit);font-size:18px;line-height:1.2;overflow-wrap:anywhere}.lisatyo-group__title>small{font-size:12.5px;color:var(--gray-500, #6b7280)}.lisatyo-group__badges{display:flex;flex-wrap:wrap;align-items:center;gap:6px}.lisatyo-group__site{font-size:12.5px;color:var(--gray-500, #6b7280)}.lisatyo-group__name{display:inline-flex;align-items:center;gap:10px}.lisatyo-person__avatar--lg{width:34px;height:34px;font-size:13px}.lisatyo-parts{display:flex;flex-wrap:wrap;gap:6px;margin-top:4px}.lisatyo-part{display:inline-flex;align-items:center;gap:7px;max-width:100%;padding:3px 10px 3px 4px;border:1px solid var(--gray-200, #e5e8ec);border-radius:999px;background:var(--gray-50, #f7f8fa);font-size:12.5px;color:var(--graphite-700, #262b31)}.lisatyo-part:not(:has(.lisatyo-person__avatar)){padding-left:10px}.lisatyo-part__label{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.lisatyo-part strong{font-variant-numeric:tabular-nums;color:var(--orange-dark, #e06b00);white-space:nowrap}.lisatyo-part--more{padding-left:10px;color:var(--gray-500, #6b7280)}.lisatyo-row__supplies{display:flex;flex-wrap:wrap;align-items:center;gap:6px;margin:0;font-size:12.5px;color:var(--gray-500, #6b7280)}.lisatyo-row__supplies svg{flex:none}.lisatyo-chip--supply{background:#fdf3e3;color:#7a4a00;font-weight:500;white-space:normal}.lisatyo-chip--supply strong{font-weight:700;font-variant-numeric:tabular-nums}.lisatyo-report__site{color:var(--gray-500, #6b7280);font-weight:400}.lisatyo-report__check{display:flex;align-items:center;gap:10px;min-height:44px;font-size:14px}.lisatyo-report__check input{width:20px;height:20px;accent-color:var(--orange, #f57c00)}.lisatyo-chip--project{background:var(--blue-light, #e8f0fe);color:#1d4ed8;white-space:normal}.lisatyo-group__sum{display:flex;flex-direction:column;align-items:flex-end;gap:2px;white-space:nowrap}.lisatyo-group__sum strong{font-family:var(--font-display, inherit);font-size:24px;line-height:1;color:var(--orange-dark, #e06b00);font-variant-numeric:tabular-nums}.lisatyo-group__sum small{font-size:12px;color:var(--gray-500, #6b7280);font-variant-numeric:tabular-nums}.lisatyo-group__chevron{color:var(--gray-400, #9aa3ad);transition:transform .18s ease}.lisatyo-group__chevron.is-open{transform:rotate(180deg)}.lisatyo-group__bar{height:4px;background:var(--gray-100, #f1f3f5)}.lisatyo-group__bar span{display:block;height:100%;background:var(--orange, #f57c00);border-radius:0 2px 2px 0}.lisatyo-rows{list-style:none;margin:0;padding:0}.lisatyo-row{display:grid;grid-template-columns:56px minmax(0,1fr) auto;align-items:center;gap:14px;padding:12px 16px;border-top:1px solid var(--gray-100, #f1f3f5)}.lisatyo-date{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:1px;padding:6px 4px;border-radius:10px;background:var(--gray-50, #f7f8fa);border:1px solid var(--gray-200, #e5e8ec);line-height:1.05}.lisatyo-date strong{font-family:var(--font-display, inherit);font-size:20px;font-variant-numeric:tabular-nums}.lisatyo-date span{font-size:11.5px;text-transform:uppercase;letter-spacing:.04em;color:var(--gray-500, #6b7280)}.lisatyo-date small{font-size:11px;color:var(--gray-400, #9aa3ad)}.lisatyo-row__body{min-width:0;display:flex;flex-direction:column;gap:6px}.lisatyo-row__text{margin:0;font-size:15px;line-height:1.4;overflow-wrap:anywhere}.lisatyo-row__meta{display:flex;flex-wrap:wrap;align-items:center;gap:6px 8px}.lisatyo-person{display:inline-flex;align-items:center;gap:7px;font-size:13px;font-weight:600;color:var(--graphite-700, #262b31)}.lisatyo-person__avatar{display:inline-grid;place-items:center;width:24px;height:24px;border-radius:50%;background:var(--graphite-800, #1b1f24);color:#fff;font-size:10.5px;font-weight:700;letter-spacing:.02em}.lisatyo-chip{display:inline-flex;align-items:center;gap:4px;padding:2px 8px;border-radius:999px;background:var(--gray-100, #f1f3f5);color:var(--graphite-600, #353b43);font-size:11.5px;font-weight:600;white-space:nowrap}.lisatyo-chip--contract{background:var(--blue-light, #e8f0fe);color:#1d4ed8}.lisatyo-chip--job{background:var(--green-light, #e7f6ed);color:#247a47}.lisatyo-chip--legacy{background:#ede9fe;color:#5b3fc4}.lisatyo-row__hours{display:flex;flex-direction:column;align-items:flex-end;gap:2px;white-space:nowrap}.lisatyo-row__hours strong{padding:5px 11px;border-radius:999px;background:var(--orange-light, #fff3e6);color:var(--orange-dark, #e06b00);font-size:15px;font-variant-numeric:tabular-nums}.lisatyo-row__hours small{font-size:11.5px;color:var(--gray-500, #6b7280);font-variant-numeric:tabular-nums}.lisatyo-empty{display:flex;flex-direction:column;align-items:center;gap:8px;padding:38px 20px;border:1px dashed var(--gray-300, #cdd3da);border-radius:var(--radius, 12px);text-align:center;color:var(--gray-500, #6b7280)}.lisatyo-empty strong{color:var(--text, #15181d);font-size:16px}.lisatyo-empty p{margin:0;max-width:56ch;font-size:13.5px;line-height:1.5}.hours-card--lisatyo{margin-top:14px;border-style:dashed}.hours-card--lisatyo .hours-card__title{display:flex;align-items:center;gap:8px}.hours-card--lisatyo .ops-hint{margin:0 0 10px}.lisatyo-stepper{margin:4px 0 12px}.lisatyo-supplies{display:flex;flex-direction:column;gap:8px;margin:2px 0 14px;padding:12px;border:1px solid var(--gray-200, #e5e8ec);border-radius:var(--radius-sm, 8px);background:var(--gray-50, #f7f8fa)}.lisatyo-supplies .machine-hours,.lisatyo-supplies .field__hint{margin:0}.hours-entries__supplies{display:block;margin-top:3px;color:var(--graphite-600, #353b43)}.hours-entries--lisatyo li{border-color:#2563eb59;background:#2563eb0d}.lisatyo-saved{display:flex;align-items:center;gap:8px;margin:0 0 12px;padding:9px 12px;border:1px solid rgba(36,122,71,.35);border-radius:var(--radius-sm, 8px);background:var(--green-light, #e7f6ed);color:#1d6b3d;font-size:13.5px;font-weight:600;line-height:1.35}.lisatyo-saved svg{flex:none}.lisatyo-error{margin:0 0 10px}.hours-entries__tag{display:inline-block;margin-left:8px;padding:1px 8px;border-radius:999px;background:#2563eb1f;color:#1d4ed8;font-size:11.5px;font-style:normal;font-weight:600;vertical-align:middle;white-space:nowrap}@media(max-width:640px){.lisatyo-toolbar,.lisatyo-filters{flex-direction:column;align-items:stretch}.lisatyo-search input{width:100%}.lisatyo-tiles{grid-template-columns:repeat(2,minmax(0,1fr))}.lisatyo-tile--main{grid-column:1 / -1}.lisatyo-group__head{grid-template-columns:minmax(0,1fr) auto}.lisatyo-group__chevron{display:none}.lisatyo-row{grid-template-columns:48px minmax(0,1fr)}.lisatyo-row__hours{grid-column:2;flex-direction:row;align-items:center;gap:8px;justify-content:flex-start}}.fleet-card__driver .link-btn{margin-left:4px}.fleet-strip__chip.is-long{border-color:#d9a441;background:#fff8e6}.fleet-strip__chip.is-long .fleet-strip__dot{background:#d9a441}@media(max-width:820px),(pointer:coarse){input:not([type=checkbox]):not([type=radio]):not([type=range]):not([type=file]),select,textarea{font-size:16px!important}}@media(max-width:820px),(pointer:coarse){.kieli-kytkin button{min-width:44px!important;min-height:44px!important;padding:4px 10px;font-size:13px}.icon-btn,.icon-action,.trash-btn,.hours-nav__btn,.user-chip,.topbar-menu>summary,.machine-hours__stepper button,.hours-step{min-width:44px!important;min-height:44px!important}.btn--sm,.hours-chip,.tab,.pill,.work-tab,.dir-toggle__btn,.segmented button,.link-btn{min-height:44px!important}.link-btn{display:inline-flex;align-items:center}}.view-loading{display:flex;align-items:center;justify-content:center;gap:10px;min-height:120px;color:var(--gray-500, #6b747e);font-size:15px}.view-loading__spinner{width:20px;height:20px;border:3px solid var(--gray-200, #e3e8ee);border-top-color:var(--orange, #f57c00);border-radius:50%;animation:view-loading-spin .8s linear infinite}@keyframes view-loading-spin{to{transform:rotate(360deg)}}@media(prefers-reduced-motion:reduce){.view-loading__spinner{animation-duration:2.4s}}.hours-save-anchor{scroll-margin-top:84px}.hours-jump{display:none}@media(max-width:640px){.hours-jump{display:inline-flex;align-items:center;gap:6px;position:fixed;left:50%;bottom:calc(14px + env(safe-area-inset-bottom,0px));transform:translate(-50%);z-index:40;min-height:46px;padding:10px 18px;border:0;border-radius:999px;background:var(--graphite-800, #22272e);color:#fff;font:inherit;font-size:15px;font-weight:700;box-shadow:0 6px 18px #00000047;cursor:pointer}.hours-jump:focus-visible{outline:3px solid var(--orange, #f57c00);outline-offset:2px}}.week-strip{margin:0 0 14px;padding:12px;border:1px solid var(--gray-200, #e3e8ee);border-radius:12px;background:var(--white, #fff)}.week-strip__days{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:6px}.week-strip__day{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;min-height:52px;padding:6px 2px;border:2px solid transparent;border-radius:10px;background:var(--gray-100, #f1f4f7);color:var(--gray-500, #6b747e);font:inherit;cursor:pointer}.week-strip__name{font-size:12px;font-weight:700;text-transform:lowercase}.week-strip__value{font-size:15px;line-height:1.1}.week-strip__day.is-logged{background:var(--green-light, #e6f4ea);color:#1d6b3a}.week-strip__day.is-absence{background:#eef2ff;color:#3b4a9a}.week-strip__day.is-missing{background:var(--red-light, #fdecea);color:#9a2b22}.week-strip__day.is-today{background:#fff8e6;color:#8a4b08}.week-strip__day.is-selected{border-color:var(--graphite-800, #22272e)}.week-strip__day:focus-visible{outline:3px solid var(--orange, #f57c00);outline-offset:2px}.week-strip__total{display:flex;justify-content:space-between;gap:10px;margin-top:10px;font-size:13.5px;color:var(--gray-600, #4b5560)}.week-strip__missing{color:#9a2b22;font-weight:700}.week-strip__bar{height:8px;margin-top:6px;border-radius:4px;background:var(--gray-100, #f1f4f7);overflow:hidden}.week-strip__bar span{display:block;height:100%;border-radius:4px;background:#2e9e5b}@keyframes palkki-kasvu{0%{transform:scaleX(0)}to{transform:scaleX(1)}}@keyframes verho-sivuun{0%{transform:scaleX(1)}to{transform:scaleX(0)}}@keyframes verho-ylos{0%{transform:scaleY(1)}to{transform:scaleY(0)}}.week-strip__bar span,.saldopalkki__taytto,.aikapalkki>span{transform-origin:left center;animation:palkki-kasvu .45s ease-out both;transition:width .4s ease-out}.budget-bar:after,.week-bars__col:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none}.budget-bar:after{background:var(--gray-100, #f1f4f7);transform:scaleX(0);transform-origin:right center;animation:verho-sivuun .45s ease-out backwards}.week-bars__col{position:relative;overflow:hidden}.week-bars__col:after{background:var(--white, #fff);transform:scaleY(0);transform-origin:center top;animation:verho-ylos .45s ease-out backwards}.budget-bar__labor,.budget-bar__other{transition:width .4s ease-out}.week-bars__labor,.week-bars__other{transition:height .4s ease-out}@keyframes skeleton-hohde{0%{background-position:200% 0}to{background-position:-200% 0}}.skeleton{display:inline-block;min-width:4.5em;height:.85em;border-radius:6px;vertical-align:middle;background:linear-gradient(90deg,var(--gray-200, #e3e8ee) 25%,var(--gray-100, #f1f4f7) 50%,var(--gray-200, #e3e8ee) 75%);background-size:200% 100%;animation:skeleton-hohde 1.4s linear infinite}.skeleton--row{display:block;width:100%;height:46px;border-radius:10px}.skeleton--bar{display:block;width:100%;height:8px;border-radius:4px}.skeleton-rows{display:grid;gap:8px;margin:8px 0 16px}@media(prefers-reduced-motion:reduce){.week-strip__bar span,.saldopalkki__taytto,.aikapalkki>span{animation:none;transition:none}.budget-bar:after,.week-bars__col:after{animation:none}.budget-bar__labor,.budget-bar__other,.week-bars__labor,.week-bars__other{transition:none}.skeleton{animation:none}}.saldopalkki{position:relative;height:10px;margin:8px 0 4px;border-radius:5px;background:var(--gray-100, #f1f4f7)}.saldopalkki__taytto{display:block;height:100%;border-radius:5px;background:#2e9e5b}.saldopalkki--near .saldopalkki__taytto{background:#e0a021}.saldopalkki--low .saldopalkki__taytto{background:#d4462f}.saldopalkki__raja{position:absolute;top:-4px;width:2px;height:18px;margin-left:-1px;background:var(--graphite-800, #22272e);border-radius:1px}.aikapalkki{display:block;width:100%;height:6px;margin-top:6px;border-radius:3px;background:#22272e1a;overflow:hidden}.aikapalkki>span{display:block;height:100%;border-radius:3px;background:#2e9e5b}.aikapalkki--pian>span{background:#e0a021}.aikapalkki--myohassa>span{background:#d4462f}.budget-bar{position:relative;display:flex;height:14px;border-radius:7px;background:var(--gray-100, #f1f4f7);overflow:hidden}.budget-bar--compact{height:8px;border-radius:4px}.budget-bar__labor{background:#2f6fdb}.budget-bar__other{background:var(--orange, #f57c00)}.budget-bar.is-unpriced .budget-bar__labor{background:#8aa9e6}.budget-bar.is-unpriced .budget-bar__other{background:#f7b56b}.budget-bar.is-over{box-shadow:0 0 0 2px #d4462f}.budget-bar__limit{position:absolute;top:0;bottom:0;width:2px;margin-left:-1px;background:#22272e}.work-item__meter{display:flex;flex-direction:column;gap:3px;flex:0 0 250px;min-width:0;text-align:right}.work-item__meter-text{font-size:12.5px;color:var(--gray-600, #4b5560)}.work-item__meter-text strong{color:var(--text, #22272e)}.work-item__meter small{font-size:11.5px;color:var(--gray-500, #6b747e)}.work-item__meter.is-over .work-item__meter-text strong{color:#b8431f}.work-item__meter-warn{color:#8a4b08;font-weight:700;white-space:nowrap}@media(max-width:640px){.work-item{flex-wrap:wrap}.work-item__meter{flex:1 1 100%;text-align:left;margin-top:6px}}.budget-panel{display:grid;grid-template-columns:minmax(0,1.6fr) minmax(0,1fr);gap:18px 28px;align-items:start;margin:0 0 12px;padding:14px 16px;border:1px solid var(--gray-200, #e3e8ee);border-radius:12px;background:var(--white, #fff)}.budget-panel__legend{display:flex;flex-wrap:wrap;gap:6px 16px;margin:8px 0 0;font-size:13px;color:var(--gray-600, #4b5560)}.budget-panel__legend strong{margin-left:auto;color:var(--text, #22272e)}.budget-dot{display:inline-block;width:10px;height:10px;margin-right:6px;border-radius:3px}.budget-dot--labor{background:#2f6fdb}.budget-dot--other{background:var(--orange, #f57c00)}.budget-panel__caption,.budget-panel__range{display:block;font-size:12px;color:var(--gray-500, #6b747e)}.budget-panel__main .budget-panel__caption{margin-bottom:8px}.week-bars{display:flex;align-items:flex-end;justify-content:flex-start;gap:4px;height:48px;margin:6px 0 4px}.week-bars__col{flex:0 1 28px;display:flex;flex-direction:column;justify-content:flex-end;height:100%;min-width:0;border-bottom:2px solid var(--gray-200, #e3e8ee)}.week-bars__labor{background:#2f6fdb;border-radius:0}.week-bars__other{background:var(--orange, #f57c00);border-radius:2px 2px 0 0}@media(max-width:720px){.budget-panel{grid-template-columns:minmax(0,1fr)}}.profile-panel__mfa{margin-top:22px;padding-top:18px;border-top:1px solid var(--border, #e3e6ea)}.profile-panel__version{display:block;margin-top:18px;font-size:11px;color:var(--gray-500, #7a828c);-webkit-user-select:all;user-select:all}.mfa-setup{display:grid;gap:12px}.mfa-setup .profile-panel__form-head{margin-bottom:0;flex-wrap:wrap}.mfa-setup__tila{margin-left:auto;padding:2px 10px;border-radius:999px;font-size:12px;font-weight:700;background:var(--gray-100, #f4f5f7);color:var(--gray-600, #4b5560)}.mfa-setup__tila.is-on{background:#e3f4e8;color:#1f6b3a}.mfa-setup__intro{display:grid;gap:12px;margin:0}.mfa-setup__intro p{margin:0;color:var(--text-muted);font-size:14px;line-height:1.45}.mfa-setup__intro .btn{justify-self:start}.mfa-setup__enroll,.mfa-setup__disable{display:grid;gap:14px}.mfa-setup__steps{margin:0;padding-left:20px;font-size:14px;line-height:1.5}.mfa-setup__qr{display:block;width:180px;height:180px;margin:0 auto;padding:8px;background:#fff;border:1px solid var(--border, #e3e6ea);border-radius:10px}.mfa-setup__secret summary{cursor:pointer;font-size:13px;color:var(--text-muted)}.mfa-setup__secret code{display:block;margin-top:6px;padding:8px 10px;background:var(--gray-100, #f4f5f7);border-radius:6px;font-size:14px;letter-spacing:1px;word-break:break-all;-webkit-user-select:all;user-select:all}.login__footer--stack{flex-direction:column;align-items:stretch}.privacy-settings{display:grid;gap:22px}.privacy-settings__toggle{display:flex;align-items:flex-start;gap:12px;padding:12px 14px;border:1px solid #d8dfda;border-radius:10px;background:#fbfcfa}.privacy-settings__toggle input{margin-top:3px;width:20px;height:20px;flex-shrink:0}.privacy-settings__toggle strong{display:block}.privacy-settings__toggle small{color:var(--gray-600, #4b5560)}.privacy-settings__form{display:grid;gap:12px;max-width:640px}.privacy-settings__list{margin:0;padding:0;list-style:none;display:grid;gap:8px}.privacy-settings__list li{display:grid;gap:2px;padding:10px 12px;border:1px solid var(--border, #e3e6ea);border-radius:8px;font-size:14px}.privacy-settings__list small{color:var(--gray-600, #4b5560)}.privacy-settings__ohje{margin:0;padding-left:20px;font-size:14px;line-height:1.5;color:var(--text-muted)}.section-kicker{display:block;margin-bottom:5px;color:var(--orange-dark);font-size:12px;font-weight:800;text-transform:uppercase}.operator-panel{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:18px;padding:14px 16px;border:1px solid var(--border);border-left:4px solid var(--orange);border-radius:8px;background:var(--surface);box-shadow:var(--shadow-sm)}.operator-panel--active{border-left-color:var(--green)}.operator-panel__vehicle,.operator-panel__intro{display:flex;align-items:center;gap:12px;min-width:0}.operator-panel__intro{display:grid;gap:2px}.operator-panel small{color:var(--text-muted);font-size:12px;font-weight:700;text-transform:uppercase}.operator-panel strong{display:block;font-family:var(--font-display);font-size:18px}.operator-panel__signal{width:12px;height:12px;border-radius:50%;background:var(--green);box-shadow:0 0 0 5px var(--green-light)}.operator-panel__select,.operator-panel__actions{display:flex;align-items:center;gap:8px}.operator-panel__select select,.operator-panel__select input{min-height:42px;border:1px solid var(--border);border-radius:8px;padding:8px 10px;font:inherit;background:#fff}.operator-panel__select input{width:130px}.operator-guide{max-width:720px;margin:40px auto;text-align:center;padding:28px}.operator-guide span{color:var(--orange-dark);font-size:12px;font-weight:800;text-transform:uppercase}.operator-guide h2{margin:8px 0 10px}.operator-guide p{color:var(--text-muted)}.ops{margin-top:42px;padding-top:30px;border-top:1px solid var(--border)}.admin-area-grid+.ops,.admin-nav+.ops,.people-btn-row+.ops,.side-switch+.ops{margin-top:0;padding-top:0;border-top:0}.ops__header{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:end;gap:12px 18px;margin-bottom:18px}.ops__header>div{min-width:0}.ops__header .btn{flex:0 0 auto;white-space:nowrap}.ops__header h2{font-size:25px}.ops__lead{margin:6px 0 0;color:var(--text-muted);font-size:14px}.ops__empty{color:var(--text-muted);padding:22px 0}.segmented{display:inline-flex;padding:3px;gap:2px;border:1px solid var(--border);border-radius:8px;background:var(--gray-100);margin-bottom:18px}.segmented button{min-width:90px;min-height:36px;padding:6px 14px;border:0;border-radius:6px;background:transparent;color:var(--text-muted);font:inherit;font-weight:700;cursor:pointer}.segmented button[aria-selected=true]{background:var(--surface);color:var(--text);box-shadow:var(--shadow-sm)}.fleet-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.fleet-card{padding:18px;border:1px solid var(--border);border-radius:8px;background:var(--surface);box-shadow:var(--shadow-sm)}.fleet-card__top{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:12px}.fleet-card h3{font-size:18px}.fleet-card p{margin:3px 0 0;color:var(--text-muted);font-size:13px}.vehicle-mark{display:grid;place-items:center;width:52px;height:38px;border:2px solid var(--graphite-700);border-radius:5px;color:var(--graphite-900);font-family:var(--font-display);font-weight:800;background:#fff}.status-dot{padding:5px 8px;border-radius:999px;background:var(--gray-100);color:var(--text-muted);font-size:12px;font-weight:800}.status-dot--active{color:var(--green);background:var(--green-light)}.fleet-card__driver{padding:10px 12px;margin:14px 0 0!important;border-radius:6px;background:var(--green-light);color:var(--green)!important}.fleet-card__driver.is-long{background:#fff8e6;color:#8a4b08!important;border:1px solid #d9a441}.fleet-card__driver.is-long .link-btn{color:#8a4b08}.metrics{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));margin:16px 0 10px;padding:12px 0;border-block:1px solid var(--border)}.metrics div{padding:0 8px;border-right:1px solid var(--border)}.metrics div:last-child{border-right:0}.metrics dt{color:var(--text-muted);font-size:11px}.metrics dd{margin:3px 0 0;font-weight:800;font-size:14px}.fleet-card__history{display:grid;gap:4px;color:var(--text-muted);font-size:12px}.inventory-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:12px}.stock-card{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:start;gap:8px 14px;padding:18px;border:1px solid var(--border);border-left:4px solid var(--green);border-radius:8px;background:var(--surface)}.stock-card--low{border-left-color:var(--red);background:var(--red-light)}.stock-card h3{font-size:16px;overflow-wrap:anywhere}.stock-card p,.stock-card span{margin:3px 0 0;color:var(--text-muted);font-size:12px;overflow-wrap:anywhere}.stock-card strong{font-family:var(--font-display);font-size:24px;text-align:right;white-space:nowrap;font-variant-numeric:tabular-nums}.stock-card small{font-size:13px}.stock-card>span{grid-column:1 / -1}.stock-card .saldopalkki{grid-column:1 / -1}.stock-card .saldopalkki span{margin:0}.stock-card .saldopalkki .saldopalkki__raja{margin-left:-1px}.ops-forms-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.ops-forms-grid>*:only-child{grid-column:1 / -1}.transport-fuel-setting{display:grid;grid-template-columns:minmax(0,1fr) auto auto;gap:14px;align-items:center;margin-bottom:14px;padding:16px;border:1px solid var(--border);border-left:4px solid var(--orange);border-radius:8px;background:var(--surface)}.transport-fuel-setting__copy{display:grid;gap:3px;min-width:0}.transport-fuel-setting__copy strong{font-size:15px}.transport-fuel-setting__copy span{color:var(--text-muted);font-size:13px;line-height:1.4}.transport-fuel-setting .billing-toggle{margin:0;white-space:nowrap}.transport-fuel-setting .btn{white-space:nowrap}.ops-form{margin-top:14px;border:1px solid var(--border);border-radius:8px;background:var(--surface)}.ops-form summary{cursor:pointer;padding:14px 16px;font-weight:800}.ops-form[open] summary{border-bottom:1px solid var(--border)}.compact-form{display:grid;grid-template-columns:repeat(4,minmax(0,1fr)) auto;gap:10px;align-items:end;padding:14px}.compact-form label{display:grid;gap:5px;min-width:0}.compact-form label span{font-size:12px;font-weight:700;color:var(--text-muted)}.compact-form input,.compact-form select{width:100%;min-height:42px;padding:8px 10px;border:1px solid var(--border);border-radius:7px;background:#fff;font:inherit}.compact-form.payroll-settings-form{grid-template-columns:repeat(3,minmax(0,1fr));align-items:start}.payroll-settings-fields{display:grid;grid-column:1 / -1;gap:10px;align-items:end;min-width:0}.payroll-settings-fields--overtime{grid-template-columns:repeat(3,minmax(0,1fr))}.payroll-settings-fields--compensation{grid-template-columns:repeat(4,minmax(0,1fr))}.payroll-settings-form .billing-toggle{display:flex;align-items:center;min-height:46px}.payroll-settings-form .billing-toggle input{width:20px;height:20px;min-height:20px;padding:0}.workday-setting-summary{display:flex;align-items:center;justify-content:space-between;gap:12px;min-width:0;padding:12px 14px;border-left:4px solid var(--orange);border-radius:7px;background:var(--orange-light)}.workday-setting-summary strong{font-size:18px;white-space:nowrap}.workday-setting-summary span{min-width:0;color:var(--text-muted);font-size:13px;text-align:right}.compact-form .workday-calculated output{display:flex;align-items:center;min-height:42px;padding:8px 10px;border:1px solid var(--border);border-radius:7px;background:var(--gray-100);font-weight:800}.data-table-wrap{overflow-x:auto;border:1px solid var(--border);border-radius:8px;background:var(--surface)}.data-table{width:100%;border-collapse:collapse;font-size:14px}.data-table th,.data-table td{padding:12px 14px;border-bottom:1px solid var(--border);text-align:left}.data-table th{color:var(--text-muted);font-size:11px;text-transform:uppercase}.fill-table th,.fill-table td{text-align:center}.fill-table th:first-child,.fill-table td:first-child{text-align:left}.fill-name__sum{display:none}.fill-sum-col{white-space:nowrap;border-left:1px solid var(--border)}td.fill-sum-col{color:var(--text);font-weight:700}@media(max-width:640px){.fill-table{table-layout:fixed;width:100%;min-width:0;max-width:100%}.fill-table th,.fill-table td{padding:6px 1px;min-width:0;max-width:none}.fill-table th:first-child,.fill-table td:first-child{width:29%;min-width:0;padding:6px 4px 6px 8px;white-space:normal;overflow-wrap:anywhere;font-size:12.5px;line-height:1.25}.fill-th{font-size:10px;letter-spacing:0}.fill-cell{font-size:12.5px}.fill-cell__btn{min-height:44px}.fill-sum-col{display:none}.fill-name__sum{display:block;margin-top:2px;color:var(--text-muted);font-size:11.5px;font-weight:700}.data-table--stack,.data-table--stack tbody,.data-table--stack tr,.data-table--stack td{display:block;width:100%}.data-table--stack{min-width:0;max-width:100%}.data-table--stack td,.data-table--stack td:first-child,.data-table--stack td:last-child{min-width:0;max-width:none}.data-table--stack thead{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}.data-table--stack tr{padding:10px 12px;border-bottom:1px solid var(--border)}.data-table--stack tr:last-child{border-bottom:0}.data-table--stack td{display:flex;justify-content:space-between;align-items:baseline;gap:12px;padding:3px 0;border:0;text-align:right}.data-table--stack td:before{content:attr(data-label);flex:0 1 auto;color:var(--text-muted);font-size:12.5px;text-align:left}.data-table--stack td:first-child{padding-bottom:6px;font-size:15px;text-align:left}.data-table--stack td:first-child:before{content:none}.data-table--stack tr.wage-total-row{background:var(--gray-50, #f7f8f9)}}.live-label{display:inline-block;margin-left:8px;padding:3px 6px;border-radius:4px;color:var(--green);background:var(--green-light);font-size:10px;font-weight:800}.stack-form{display:grid;gap:12px}.waybill-prompt{text-align:center}.waybill-prompt__mark{display:grid;place-items:center;width:58px;height:68px;margin:0 auto 16px;border-radius:6px;background:var(--red-light);color:var(--red);font-weight:900}.waybill-prompt h3{margin-bottom:8px}.waybill-prompt p{color:var(--text-muted)}.waybill-prompt .btn+.btn{margin-top:8px}@media(max-width:860px){.operator-panel{align-items:stretch;flex-direction:column}.operator-panel__select,.operator-panel__actions{width:100%}.operator-panel__select select{flex:1;min-width:0}.fleet-grid,.ops-forms-grid{grid-template-columns:1fr}.compact-form,.compact-form.payroll-settings-form,.payroll-settings-fields--overtime,.payroll-settings-fields--compensation{grid-template-columns:repeat(2,minmax(0,1fr))}.compact-form .btn{grid-column:1 / -1}.transport-fuel-setting{grid-template-columns:minmax(0,1fr) auto}.transport-fuel-setting .btn{grid-column:1 / -1}}@media(max-width:560px){.operator-panel__select{display:grid;grid-template-columns:1fr 105px}.operator-panel__select .btn{grid-column:1 / -1}.operator-panel__select input{width:100%}.operator-panel__actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}.operator-panel__actions .btn:last-child{grid-column:1 / -1}.metrics{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px 0}.metrics div:nth-child(2){border-right:0}.compact-form,.transport-fuel-setting{grid-template-columns:1fr}.transport-fuel-setting .billing-toggle{justify-content:flex-start}.transport-fuel-setting .btn{width:100%}.transport-fuel-setting__copy span{overflow-wrap:anywhere}.compact-form.payroll-settings-form,.payroll-settings-fields--overtime,.payroll-settings-fields--compensation{grid-template-columns:1fr}.workday-setting-summary{align-items:flex-start;flex-direction:column;gap:3px}.workday-setting-summary span{text-align:left}.fleet-card__top{grid-template-columns:auto minmax(0,1fr)}.fleet-card__top .status-dot{grid-column:1 / -1;justify-self:start}}@media(prefers-reduced-motion:reduce){.operator-panel__signal{box-shadow:none}}.login{min-height:100vh;display:grid;place-items:center;padding:28px;background:#eef1ed}.login:before{content:"";position:fixed;inset:0 0 auto;height:4px;background:var(--orange)}.login__shell{width:min(860px,100%);min-height:530px;display:grid;grid-template-columns:minmax(250px,.82fr) minmax(420px,1.28fr);overflow:hidden;background:var(--surface);border:1px solid #d9dfda;border-radius:8px;box-shadow:0 22px 60px #19221e1f;animation:merp-login-in .38s cubic-bezier(.2,.8,.2,1) both}.login__brand-panel{display:flex;flex-direction:column;justify-content:space-between;padding:44px 34px;color:var(--white);background:#1b211f;border-right:4px solid var(--orange)}.login__brand-panel img{width:100%;max-width:235px;height:auto}.login__brand-panel .login__company-logo{width:100%;max-width:270px;max-height:132px;padding:8px;background:#fff;border-radius:5px;object-fit:contain}.login__brand-panel p{max-width:210px;margin:0;color:#cad1ce;font-size:17px;font-weight:600;line-height:1.35}.login__card{width:auto;max-width:none;min-width:0;display:flex;flex-direction:column;justify-content:center;padding:52px 58px;background:var(--surface);border:0;border-radius:0;box-shadow:none;animation:none}.login__logo{animation:none;transform:none}.login__logo--mobile{display:none}.login__heading{margin-bottom:28px}.login__eyebrow{display:block;margin-bottom:9px;color:var(--orange-dark);font-size:12px;font-weight:800;text-transform:uppercase}.login__heading h1{margin:0 0 8px;font-size:32px;letter-spacing:0}.login__heading p{margin:0;color:var(--text-muted);font-size:15px}.login__form{display:grid;gap:17px}.login__form .btn{margin-top:3px}.login__footer{margin-top:26px;padding-top:18px;display:flex;align-items:center;justify-content:space-between;gap:16px;color:var(--text-muted);border-top:1px solid var(--border);font-size:12.5px}.login__footer a{display:inline-flex;align-items:center;gap:5px;color:var(--text);font-weight:650;text-decoration:none;white-space:nowrap}.login__footer a:hover{color:var(--orange-dark)}@keyframes merp-login-in{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@media(max-width:700px){.login{padding:18px}.login__shell{min-height:0;display:block}.login__brand-panel{display:none}.login__card{padding:34px 28px 30px}.login__logo--mobile{display:block;width:190px;max-width:72%;margin:0 auto 30px}.login__heading{margin-bottom:24px;text-align:left}.login__company-logo--mobile{width:min(300px,100%);max-width:none;height:auto;max-height:132px;padding:0;object-fit:contain;background:transparent}.login__heading h1{font-size:28px}.login__footer{align-items:flex-start;flex-direction:column;gap:10px}}@media(max-width:380px){.login{padding:12px}.login__card{padding:28px 22px 24px}}@media(prefers-reduced-motion:reduce){.login__shell{animation:none}}.stock-alert{display:flex;flex-direction:column;gap:2px;padding:12px 16px;margin-bottom:14px;border:1px solid var(--red);border-left:4px solid var(--red);border-radius:8px;background:var(--red-light)}.stock-alert strong{color:var(--red);font-size:14px}.stock-alert span{font-size:13px;color:var(--text-muted)}.stock-card__head{min-width:0}.threshold-btn{grid-column:1 / -1;justify-self:start;margin-top:4px;padding:2px 0;border:0;background:none;color:var(--text-muted);font:inherit;font-size:12px;cursor:pointer;text-align:left}.threshold-btn:hover{color:var(--green);text-decoration:underline}.threshold-edit{grid-column:1 / -1;display:flex;flex-wrap:wrap;gap:6px;align-items:center;margin-top:6px}.threshold-edit input{width:100px;padding:6px 8px;border:1px solid var(--border);border-radius:6px;font:inherit}.btn--xs{min-height:0;padding:5px 10px;font-size:12px}.ops-subtitle{margin:24px 0 10px;font-size:15px;font-weight:700}.delta-in{color:var(--green)}.delta-out{color:var(--red)}.fleet-card__maint{margin:4px 0 0;font-size:12px;color:var(--text-muted)}.compact-form .span-2{grid-column:1 / -1}.ops-forms-grid--inventory{grid-template-columns:minmax(0,1fr)}.ops-form--inventory-movement{width:100%}.inventory-movement-form{grid-template-columns:repeat(12,minmax(0,1fr));gap:12px;padding:16px}.inventory-movement-form .span-2{grid-column:auto}.inventory-movement-form__material{grid-column:1 / span 5!important}.inventory-movement-form__direction{grid-column:6 / -1!important}.inventory-movement-form__quantity{grid-column:1 / span 5!important}.inventory-movement-form__notes{grid-column:6 / span 4}.inventory-movement-form__submit{grid-column:10 / -1;width:100%;min-height:44px}@media(max-width:1040px){.inventory-movement-form{grid-template-columns:repeat(2,minmax(0,1fr))}.inventory-movement-form__material,.inventory-movement-form__direction{grid-column:1 / -1!important}.inventory-movement-form__quantity{grid-column:1!important}.inventory-movement-form__notes{grid-column:2}.inventory-movement-form__submit{grid-column:1 / -1}}@media(max-width:560px){.inventory-movement-form{grid-template-columns:minmax(0,1fr);padding:12px}.inventory-movement-form__material,.inventory-movement-form__direction,.inventory-movement-form__quantity,.inventory-movement-form__notes,.inventory-movement-form__submit{grid-column:1!important}}.title-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.title-card{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:14px 16px;border:1px solid var(--border);border-left:4px solid var(--orange);border-radius:8px;background:var(--surface)}.title-card.is-muted{opacity:.55;border-left-color:var(--gray-400)}.title-card h4{margin:0;font-size:15px}.title-card span{color:var(--text-muted);font-size:12px}@media(max-width:860px){.title-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:560px){.title-grid{grid-template-columns:1fr}}.setup-guide{margin-bottom:22px;padding:18px 20px;border:1px solid var(--border);border-left:4px solid var(--orange);border-radius:12px;background:linear-gradient(180deg,var(--orange-light),var(--surface));box-shadow:var(--shadow-sm)}.setup-guide__head{display:flex;align-items:flex-start;justify-content:space-between;gap:18px}.setup-guide__eyebrow{display:block;color:var(--orange-dark);font-size:12px;font-weight:800;text-transform:uppercase}.setup-guide__head h2{margin:4px 0 6px;font-size:22px}.setup-guide__head p{margin:0;color:var(--text-muted);max-width:640px}.setup-guide__progress{flex:none;text-align:center;padding:10px 16px;background:var(--surface);border:1px solid var(--border);border-radius:10px}.setup-guide__progress strong{display:block;font-family:var(--font-display);font-size:24px;color:var(--orange-dark)}.setup-guide__progress span{font-size:11px;color:var(--text-muted);text-transform:uppercase}.setup-steps{list-style:none;margin:16px 0 8px;padding:0;display:grid;gap:8px}.setup-steps li{display:flex;align-items:center;gap:12px;padding:12px 14px;background:var(--surface);border:1px solid var(--border);border-radius:8px}.setup-steps li.is-done{opacity:.72}.setup-steps__check{flex:none;width:26px;height:26px;border-radius:50%;display:grid;place-items:center;border:2px solid var(--border);color:var(--white);font-weight:900}.setup-steps li.is-done .setup-steps__check{background:var(--green);border-color:var(--green)}.setup-steps__body{flex:1;min-width:0;display:grid;gap:2px}.setup-steps__body strong{font-size:15px}.setup-steps__body small{color:var(--text-muted);font-size:12px}.setup-guide__footer{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-top:12px;padding-top:14px;border-top:1px solid var(--border)}.setup-guide__footer p{margin:0;color:var(--text-muted);font-size:13px}@media(max-width:640px){.setup-guide__head{flex-direction:column}.setup-steps li{flex-wrap:wrap}.setup-guide__footer{align-items:stretch;flex-direction:column}.setup-guide__footer .btn{width:100%}}.stock-card__remove{grid-column:1 / -1;width:fit-content;display:inline-flex;align-items:center;gap:6px;margin-top:3px;padding:5px 0;color:var(--red);background:transparent;border:0;font:inherit;font-size:12px;font-weight:700;cursor:pointer}.stock-card__remove:hover:not(:disabled){text-decoration:underline}.stock-card__remove:disabled{opacity:.55;cursor:not-allowed}.archived-materials{margin:14px 0}.archived-materials>.ops-hint{padding:0 16px}.archived-materials__list{padding:0 16px 8px}.archived-materials__row{min-height:56px;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:9px 0;border-bottom:1px solid var(--border)}.archived-materials__row:last-child{border-bottom:0}.archived-materials__row>span{min-width:0;display:grid;gap:2px}.archived-materials__row strong{overflow-wrap:anywhere;font-size:14px}.archived-materials__row small{color:var(--text-muted);font-size:12px}.archived-materials__actions{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:8px;flex-shrink:0}.vehicle-manage>.ops-hint{padding:10px 16px 0}.vehicle-manage__archived{margin:4px 0 0;border-top:1px solid var(--border)}@media(max-width:560px){.archived-materials__row{align-items:flex-start;flex-direction:column}.archived-materials__row .btn,.archived-materials__actions{width:100%}}.inventory-group{margin:0 0 8px}.inventory-group__head{display:flex;align-items:baseline;flex-wrap:wrap;gap:4px 10px;margin:18px 0 10px;padding-bottom:6px;border-bottom:2px solid var(--border)}.inventory-group__head h3{margin:0;font-size:16px}.inventory-group__head span{color:var(--text-muted);font-size:12px}.stock-card__move{grid-column:1 / -1;display:flex;align-items:center;gap:8px;margin-top:2px}.stock-card__move>span{flex:none}.stock-card__move select{flex:1;min-width:0;padding:8px 10px;border:1px solid var(--border);border-radius:6px;background:var(--surface);font:inherit;font-size:13px}.qty-stepper{display:grid;grid-template-columns:46px minmax(0,1fr) 46px;gap:6px}.qty-stepper button{min-height:44px;border:1px solid var(--border);border-radius:8px;background:var(--surface);font-size:20px;font-weight:700;line-height:1;cursor:pointer}.qty-stepper button:hover:not(:disabled){border-color:var(--green);color:var(--green)}.qty-stepper button:disabled{opacity:.5;cursor:not-allowed}.qty-stepper input{width:100%;min-width:0;text-align:center}.seulonta-catalog__add{margin:8px 0 12px}.seulonta-catalog__list{display:flex;flex-direction:column;gap:6px;margin-top:8px}.seulonta-catalog__row{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:8px 12px;border:1px solid var(--border);border-radius:10px;background:var(--surface)}.seulonta-catalog__row small{color:var(--text-muted);margin-left:6px}.seulonta-catalog__archived{margin-top:12px}.seulonta-fields{display:flex;flex-direction:column;gap:14px;margin-top:12px}.seulonta-fields>.field{display:flex;flex-direction:column;gap:6px}.seulonta-fields select{min-height:46px;font-size:16px}.seulonta-hint{color:var(--text-muted);font-size:14px;margin:0 0 4px}.seulonta-varieties{display:flex;flex-direction:column;gap:10px}.seulonta-variety{border:1px solid var(--border);border-radius:14px;background:var(--surface);padding:12px 14px;display:flex;flex-direction:column;gap:12px;transition:border-color .12s,box-shadow .12s}.seulonta-variety.is-active{border-color:var(--green);box-shadow:0 0 0 2px var(--green-light) inset}.seulonta-variety__name{font-weight:700;font-size:16px;line-height:1.2}.seulonta-stepper{display:grid;grid-template-columns:60px minmax(0,1fr) 60px;gap:10px;align-items:stretch}.seulonta-stepper__btn{height:60px;border:1px solid var(--border);border-radius:14px;background:var(--surface);font-size:30px;font-weight:400;line-height:1;color:var(--text);cursor:pointer;display:flex;align-items:center;justify-content:center;transition:background .12s,border-color .12s,color .12s,transform .05s;-webkit-tap-highlight-color:transparent}.seulonta-stepper__btn:hover:not(:disabled){border-color:var(--green);color:var(--green);background:var(--green-light)}.seulonta-stepper__btn:disabled{opacity:.3;cursor:not-allowed}.seulonta-stepper__value{display:flex;align-items:center;justify-content:center;gap:4px;border:1px solid var(--border);border-radius:14px;background:var(--surface);min-width:0;transition:border-color .12s,background .12s}.seulonta-variety.is-active .seulonta-stepper__value{border-color:var(--green);background:var(--green-light)}.seulonta-stepper__value input{width:3em;min-width:0;border:none;background:transparent;text-align:right;font-size:26px;font-weight:700;color:var(--text);padding:0;letter-spacing:-.01em}.seulonta-stepper__value input:focus{outline:none}.seulonta-stepper__value input::placeholder{color:var(--text-muted);font-weight:700;opacity:.55}.seulonta-stepper__unit{font-size:15px;font-weight:600;color:var(--text-muted)}.seulonta-total{display:flex;flex-direction:column;gap:2px;margin-top:4px;padding:10px 14px;border-radius:12px;background:var(--green-light)}.seulonta-total strong{font-size:17px}.seulonta-total small{color:var(--text-muted);font-size:13px}.seulonta-total.is-over{background:var(--red-light)}.seulonta-warn{color:var(--danger);font-weight:600}.stock-card__unlimited{color:var(--green);font-size:19px;font-weight:700}.stock-card__note{color:var(--text-muted);font-size:12.5px;margin:2px 0 0}.unlimited-source-toggle{margin:2px 0}:root{--press: .97;--ease-spring: cubic-bezier(.34, 1.4, .64, 1)}:is(.btn,.hours-chip,.supply-chip,.dir-toggle__btn,.bank-choice__btn,.work-tab,.pill,.tab,.report-tab,.admin-nav__tab,.people-btn,.segmented button,.kieli-kytkin button,.week-strip__day,.fleet-strip__chip,.work-chip,.user-chip,.photo-add,.plan-phase-add,.plan-kit-group__add,.admin-area-grid__btn,.side-switch__btn,.settings-hub__item,.maint-asset,.workspace-nav__item,.hours-week__day,.hours-month__cell,.hours-step,.hours-nav__btn,.machine-hours__stepper button,.qty-stepper button,.seulonta-stepper__btn,.icon-btn,.icon-action,.trash-btn,.modal__close,.toast__close,.cell-edit-btn,.hours-jump,.scroll-top,.photo-thumb__remove){transition:background-color .15s,border-color .15s,color .15s,box-shadow .15s,opacity .15s,transform .15s,scale .34s var(--ease-spring)}@media(prefers-reduced-motion:no-preference){:is(.admin-area-grid__btn,.side-switch__btn,.settings-hub__item,.maint-asset,.workspace-nav__item,.hours-week__day,.btn--block,.btn--lg,.dir-toggle__btn,.bank-choice__btn){--press: .98}:is(.hours-step,.hours-nav__btn,.machine-hours__stepper button,.qty-stepper button,.seulonta-stepper__btn,.icon-btn,.icon-action,.trash-btn,.modal__close,.toast__close,.photo-thumb__remove,.scroll-top,.cell-edit-btn,.hours-month__cell){--press: .92}:is(.btn,.hours-chip,.supply-chip,.dir-toggle__btn,.bank-choice__btn,.work-tab,.pill,.tab,.report-tab,.admin-nav__tab,.people-btn,.segmented button,.kieli-kytkin button,.week-strip__day,.fleet-strip__chip,.work-chip,.user-chip,.photo-add,.plan-phase-add,.plan-kit-group__add,.admin-area-grid__btn,.side-switch__btn,.settings-hub__item,.maint-asset,.workspace-nav__item,.hours-week__day,.hours-month__cell,.hours-step,.hours-nav__btn,.machine-hours__stepper button,.qty-stepper button,.seulonta-stepper__btn,.icon-btn,.icon-action,.trash-btn,.modal__close,.toast__close,.cell-edit-btn,.hours-jump,.scroll-top,.photo-thumb__remove){-webkit-tap-highlight-color:transparent}.hours-jump{transform-origin:left center}:is(.btn,.hours-chip,.supply-chip,.dir-toggle__btn,.bank-choice__btn,.work-tab,.pill,.tab,.report-tab,.admin-nav__tab,.people-btn,.segmented button,.kieli-kytkin button,.week-strip__day,.fleet-strip__chip,.work-chip,.user-chip,.photo-add,.plan-phase-add,.plan-kit-group__add,.admin-area-grid__btn,.side-switch__btn,.settings-hub__item,.maint-asset,.workspace-nav__item,.hours-week__day,.hours-month__cell,.hours-step,.hours-nav__btn,.machine-hours__stepper button,.qty-stepper button,.seulonta-stepper__btn,.icon-btn,.icon-action,.trash-btn,.modal__close,.toast__close,.cell-edit-btn,.hours-jump,.scroll-top,.photo-thumb__remove):active:not(:disabled):not([aria-disabled=true]){scale:var(--press);transition-duration:.07s}:is(.btn,.hours-chip,.supply-chip,.dir-toggle__btn,.bank-choice__btn,.work-tab,.pill,.tab,.report-tab,.admin-nav__tab,.people-btn,.segmented button,.kieli-kytkin button,.week-strip__day,.fleet-strip__chip,.work-chip,.user-chip,.photo-add,.plan-phase-add,.plan-kit-group__add,.admin-area-grid__btn,.side-switch__btn,.settings-hub__item,.maint-asset,.workspace-nav__item,.hours-week__day,.hours-month__cell,.hours-step,.hours-nav__btn,.machine-hours__stepper button,.qty-stepper button,.seulonta-stepper__btn,.icon-btn,.icon-action,.trash-btn,.modal__close,.toast__close,.cell-edit-btn):active:not(:disabled){position:relative}:is(.btn,.hours-chip,.supply-chip,.dir-toggle__btn,.bank-choice__btn,.work-tab,.pill,.tab,.report-tab,.admin-nav__tab,.people-btn,.segmented button,.kieli-kytkin button,.week-strip__day,.fleet-strip__chip,.work-chip,.user-chip,.photo-add,.plan-phase-add,.plan-kit-group__add,.admin-area-grid__btn,.side-switch__btn,.settings-hub__item,.maint-asset,.workspace-nav__item,.hours-week__day,.hours-month__cell,.hours-step,.hours-nav__btn,.machine-hours__stepper button,.qty-stepper button,.seulonta-stepper__btn,.icon-btn,.icon-action,.trash-btn,.modal__close,.toast__close,.cell-edit-btn,.hours-jump,.scroll-top,.photo-thumb__remove):active:not(:disabled):after{content:"";position:absolute;top:-5%;right:-5%;bottom:-5%;left:-5%}}
