/* Shared controls and grouped navigation. Print documents retain their own layout. */
@media screen {
 .side__nav{scroll-padding-block:16px}
 .side__nav .nav-group{margin-block:6px;border:1px solid var(--line);border-radius:12px;background:#fff;overflow:hidden}
 .side__nav .nav-group>summary{display:flex;align-items:center;justify-content:flex-start;gap:8px;min-block-size:46px;padding:10px 12px;font-weight:700;line-height:1.55;cursor:pointer;list-style:none;color:var(--ink)}
 .side__nav .nav-group>summary::-webkit-details-marker{display:none}
 .side__nav .nav-group>summary::after{content:none}
 .side__nav .nav-group__indicator{display:grid;place-items:center;inline-size:26px;block-size:26px;flex:0 0 26px;border:1px solid #dce5d5;border-radius:8px;background:#f5f8f1;color:#526747}
 .side__nav .nav-group__chevron{display:block;inline-size:17px;block-size:17px;transform:rotate(0deg);transform-origin:center}
 html[dir=rtl] .side__nav .nav-group__chevron{transform:rotate(180deg)}
 .side__nav .nav-group[open]>summary .nav-group__chevron{transform:rotate(90deg)}
 .side__nav .nav-group__label{min-inline-size:0;padding-block-start:2px}
 .side__nav .nav-group[open]{border-color:#b6cba4}
 .side__nav .nav-group[open]>summary,.side__nav .nav-group[data-current-group]>summary{background:var(--wash);color:#365323}
 .side__nav .nav-group[open]>summary .nav-group__indicator{border-color:#a6bf91;background:#dce9cf;color:#365323}
 .side__nav .nav-group>summary:is(:hover,:focus-visible){background:#edf3e6}
 .side__nav .nav-group__items{display:grid;padding:4px 6px 8px;gap:3px}
 .side__nav .nav-group__items>a{min-block-size:44px;margin:0;padding:9px 10px;gap:9px}
 .side__nav a>span:not(.tag),.signout-button>span{line-height:1.45;padding-block-start:3px;min-inline-size:0}
 .side__nav a>.domain-icon{inline-size:23px;block-size:23px;flex:0 0 23px}
 .side__foot{font-size:12px;line-height:1.7}
 .top .page-location{min-inline-size:0;flex:1}
 .top .page-location>h1{margin:0;line-height:1.5}
 .page-breadcrumb{display:block;margin-block-start:3px;color:var(--muted);font-size:12px;line-height:1.6;overflow-wrap:anywhere}
 .shell .body :is(input:not([type=hidden]):not([type=checkbox]):not([type=radio]):not([type=range]):not([type=color]):not([type=submit]):not([type=button]),select,textarea){min-inline-size:0;max-inline-size:100%;min-block-size:46px;border:1px solid #bbc9b1;border-radius:10px;background-color:#fff;padding:11px 14px;color:var(--ink);font:inherit;line-height:1.65;box-shadow:none}
 .shell .body input[type=file]{padding:7px 10px}
 .shell .body input::file-selector-button{font:inherit;padding:7px 12px;margin-inline-end:12px;border:1px solid #bac9ad;border-radius:7px;background:#edf3e7;color:#365323;cursor:pointer}
 html[dir=rtl] .shell .body input,html[dir=rtl] .shell .body select,html[dir=rtl] .shell .body textarea,html[dir=rtl] .login input,html[dir=rtl] .login select,html[dir=rtl] .login textarea{direction:rtl!important;text-align:right!important;unicode-bidi:plaintext}
 .shell .body :is(.toolbar,.document-toolbar){gap:12px;margin-block-end:20px}
 .shell .body .toolbar>input[type=search]{flex:1 1 340px;inline-size:min(100%,640px);min-inline-size:min(100%,260px);background:#f5f8f1;border:2px solid #a8bf95;font-size:16px}
 .shell .body :is(input[type=search],.request-search-controls input):focus{background:#fff;border-color:var(--brand)}
 .shell .body .table-search-label{display:flex;align-items:center;gap:8px;margin-block:18px 10px;font-size:15px;font-weight:700}
 .shell .body .btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;line-height:1.5}
 .shell .body .btn>span:not(.num){line-height:1.5;padding-block-start:2px}
 .shell :is(.btn,button,dt,.domain-task,.domain-service)>.domain-icon{flex-shrink:0;vertical-align:middle}
 .shell .body :is(dt,.domain-service,.domain-task){align-items:center;gap:8px;line-height:1.6}
 .shell .body dt:has(>.domain-icon){display:flex}
 .shell .body details>summary{display:flex;align-items:center;justify-content:flex-start;gap:9px;min-block-size:46px;padding:11px 14px;border:1px solid #c2d0b8;border-radius:10px;background:#f1f6eb;color:#365323;font-weight:700;line-height:1.6;cursor:pointer;list-style:none}
 .shell .body .requests-intake>summary::before{content:none}
 .shell .body details>summary::-webkit-details-marker{display:none}
 html[dir=rtl]{--disclosure-turn:90deg}
 .shell .body details>summary::after,.shell .body .request-detail details:not(.request-help)>summary::after,.shell .body .operational-team>summary::after{content:'';display:block;inline-size:18px;block-size:18px;width:18px;height:18px;flex:0 0 18px;order:-1;border:0!important;background:currentColor;-webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='m6 9 6 6 6-6' fill='none' stroke='black' stroke-width='2.4' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center/contain no-repeat;mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='m6 9 6 6 6-6' fill='none' stroke='black' stroke-width='2.4' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center/contain no-repeat;transform:rotate(var(--disclosure-turn,-90deg));margin:0;position:static;align-self:center}
 .shell .body details[open]>summary{--disclosure-turn:0deg}
 .shell .body details>summary:is(:hover,:focus-visible){background:#e4edda;color:#2d471c}
 .shell .body details[open]>summary{margin-block-end:16px}
 .shell .body :is(.btn,.toolbar,form,details,.sectionhint)+details{margin-block-start:18px}
 .shell .body details+details{margin-block-start:16px}
 .shell .body form>.btn{margin-block-start:12px}
 .shell .body .request-quick-search{margin-block:24px 20px;border:2px solid #b7cda4;background:#f5f8f0;box-shadow:none}
 .shell .body .request-quick-search>form>label{display:flex;align-items:center;gap:9px;font-size:17px;margin-block-end:12px}
 .shell .body .request-search-results{grid-template-columns:minmax(0,1fr)}
 .shell .body .request-search-results a>b{white-space:normal;overflow:visible;text-overflow:clip;line-height:1.8}
 .shell .body .request-record-service{display:flex;align-items:flex-start;gap:9px;min-inline-size:0}
 .shell .body .request-record-service>.domain-icon{margin-block-start:3px}
 .shell .body .request-service-title{display:grid;gap:6px;min-inline-size:0;line-height:1.7}
 .shell .body .request-service-scope{display:block;justify-self:start;max-inline-size:100%;padding:2px 8px;border:1px solid #d8e2cf;border-radius:7px;font-size:12px;font-weight:500;line-height:1.6;background:#fff;color:#526747;white-space:normal}
 .shell .body .selected-customer-name{display:block;margin-block:8px 0;font-size:14px;line-height:1.8;color:#365323;white-space:normal;overflow-wrap:anywhere}
 .shell .body .field:has(>select[name=customer_id]),.shell .body .field:has(>label>select[name=customer_id]){grid-column:1/-1;inline-size:100%}
 .shell .body .contract-open-actions{display:flex;flex-wrap:wrap;gap:12px;margin-block:16px 22px}
 :is(.nav-group>summary,.body details>summary):focus-visible{outline:2px solid var(--brand);outline-offset:2px}
}
@media screen and (max-width:600px){.shell .body .toolbar>input[type=search]{flex-basis:100%;inline-size:100%}.top .page-location>h1{font-size:18px}.page-breadcrumb{font-size:11px}.shell .body .request-search-controls{flex-wrap:wrap}.shell .body .request-search-controls input{flex-basis:100%}.shell .body .request-search-controls>.btn{inline-size:100%}}

/* Native menus inherit the document direction without bidi plaintext overrides. */
html[dir=rtl] .shell .body select{unicode-bidi:normal!important;text-align:start!important;direction:rtl!important;inline-size:100%}
.shell .body select option{unicode-bidi:normal;white-space:normal;max-inline-size:100%}
.request-last-update{padding:10px 14px;margin:0 0 14px;border-radius:8px;background:var(--wash);font-size:13px;line-height:1.8;overflow-wrap:anywhere}
.request-record-actions .request-last-update{margin:0;min-inline-size:0;line-height:1.9}
.request-last-update time{display:inline-block;unicode-bidi:isolate}
.shell .body .request-customer-row{display:grid;grid-template-columns:minmax(180px,1fr) minmax(0,2fr);gap:20px;margin-block-end:20px;align-items:start}
.shell .body .requests-intake .request-customer-row>.field{grid-column:auto;min-inline-size:0;inline-size:100%}
.request-customer-row .inline-select{margin-block:8px 0}
.shell .body .inline-select button[role=option]{display:block;inline-size:100%;min-inline-size:0;min-block-size:44px;block-size:auto;text-align:start;white-space:normal;overflow-wrap:anywhere;background:var(--paper,#fff);color:var(--ink);border:0;border-radius:6px;box-shadow:none}
.shell .body .inline-select button[role=option]:is(:hover,[data-active],[aria-selected=true]){background:var(--brand-tint);color:#355420}
.inline-select [role=listbox]{box-sizing:border-box;max-inline-size:100%}
@media(max-width:700px){.shell .body .request-customer-row{grid-template-columns:minmax(0,1fr);gap:16px}}

.request-commercial-columns{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}.request-commercial-columns>section{min-inline-size:0;border:1px solid var(--line);border-radius:12px;padding:16px}.request-commercial-columns h3{margin-block:0 16px}.request-simple-progress li>a{display:flex;align-items:center;gap:10px;inline-size:100%;min-block-size:44px;text-decoration:none;color:inherit}.request-simple-progress li>a>span{display:grid;place-items:center;flex:0 0 30px;inline-size:30px;block-size:30px;line-height:1}.inline-select{position:relative;inline-size:100%;margin-block:6px 20px}.inline-select [role=listbox]{max-block-size:300px;overflow:auto;border:1px solid var(--line);border-radius:10px;margin-block-start:8px;padding:6px;background:#fff}.inline-select [role=option]{display:block;text-align:start;inline-size:100%;padding:12px;border:0;border-radius:6px;background:white;color:var(--ink);font:inherit;cursor:pointer;white-space:normal;overflow-wrap:anywhere;min-block-size:44px}.inline-select [role=option]:hover,.inline-select [role=option][aria-selected=true]{background:var(--brand-tint);color:#355420}.inline-select input{inline-size:100%;box-sizing:border-box}.inline-select [hidden]{display:none!important}@media(max-width:950px){.request-commercial-columns{grid-template-columns:minmax(0,1fr)}}
