@font-face{font-family:system;src:local('Segoe UI')}*{box-sizing:border-box}body{margin:0;font-family:system,'Segoe UI',Arial,sans-serif;font-size:16px;line-height:1.5;color:#17243c;background:#f3f5f9}button,input,select,textarea{font:inherit}button,a,input,select,textarea{-webkit-tap-highlight-color:transparent}button{cursor:pointer}button:disabled{opacity:.55;cursor:wait}button:focus-visible,a:focus-visible{outline:3px solid #719bff;outline-offset:3px}input,select,textarea{width:100%;border:1px solid #cad2e0;border-radius:9px;padding:11px 12px;color:#17243c;background:#fff;min-width:0}input:focus,select:focus,textarea:focus{outline:2px solid #7494f4;outline-offset:1px}textarea{resize:vertical}h1,h2,h3,p{margin-top:0}h1{font-size:34px;letter-spacing:-1px;line-height:1.18;margin-bottom:12px}h2{font-size:22px;letter-spacing:-.4px}h3{font-size:18px}label{display:block;font-size:14px;font-weight:600}label input,label select,label textarea{margin-top:7px}label small{display:block;margin-top:6px;font-weight:400;color:#64728a}small,.small{font-size:13px}button{border:0;background:none;color:inherit}a{color:#183fca}strong{font-weight:600}.muted{color:#67748a}.eyebrow{font-size:12px;font-weight:700;letter-spacing:1.7px;margin-bottom:12px;color:#64748b}.primary,.secondary{display:inline-flex;align-items:center;justify-content:center;gap:12px;padding:12px 18px;min-height:45px;border-radius:9px;font-weight:600;font-size:14px;white-space:normal}.primary{background:#183fca;color:white;border:1px solid #183fca}.primary:hover{background:#1537b1}.secondary{background:#fff;border:1px solid #ced7e5}.secondary:hover{background:#f0f4ff}.text-button{color:#274bc0;font-size:14px;font-weight:600;min-height:42px;padding:8px}.danger{color:#af3044}.form-error{color:#b1223e;font-size:14px;margin:12px 0;white-space:pre-wrap}.login{display:grid;grid-template-columns:1.1fr 1fr;min-height:100vh;background:#fff}.login-intro{background:#10214a;color:white;padding:48px 10%;display:flex;flex-direction:column;justify-content:space-between;min-height:100vh}.wordmark{display:flex;align-items:center;gap:14px;font-size:27px;font-weight:700}.wordmark img{width:42px}.wordmark span{font-size:12px;letter-spacing:2px;font-weight:400;max-width:100px}.login-intro .eyebrow{color:#9eb5f2}.login-intro h1{font-size:clamp(38px,4vw,62px);letter-spacing:-2px;line-height:1.13;margin:24px 0}.login-intro p{color:#bdc9e3;max-width:420px;font-size:17px;line-height:1.8}.intro-bottom{display:flex;flex-wrap:wrap;gap:24px;color:#9eb3dc;font-size:13px;border-top:1px solid #324367;padding-top:24px}.login-form{display:flex;align-items:center;justify-content:center;padding:40px}.login-form form{width:min(100%,360px)}.login-form h2{font-size:29px;margin-bottom:10px}.login-form label{margin-top:24px}.login-form .primary{width:100%;justify-content:space-between;margin-bottom:16px}.password-page{text-align:center;padding:12vh 20px}.workspace{display:grid;grid-template-columns:245px minmax(0,1fr);min-height:100vh}.sidebar{background:#111e38;color:#d8e0f0;padding:28px 18px;position:sticky;top:0;height:100vh;display:flex;flex-direction:column}.brand{display:grid;grid-template-columns:42px 1fr;column-gap:12px;text-decoration:none;color:white;margin:2px 12px 36px}.brand img{grid-row:1/3;width:42px}.brand b{font-size:23px;line-height:1.15}.brand span{font-size:12px;color:#92a4c5}.sidebar-caption{font-size:12px;letter-spacing:1.4px;color:#92a4c5;padding:0 12px;margin-bottom:14px}nav{display:grid;gap:6px}nav button{text-align:left;border-radius:8px;padding:12px;font-size:14px;display:flex;align-items:center;gap:12px}nav button span{font-size:20px;width:20px}nav button em{font-style:normal;margin-left:auto;font-size:12px;color:#b5c4e3}nav button.selected{background:#263959;color:#fff}nav button:hover{background:#263959}.sidebar-bottom{margin-top:auto;padding-top:30px}.sidebar-bottom>p{font-size:12px;color:#93a3bf;padding:0 12px;line-height:1.7}.profile{display:flex;gap:10px;text-align:left;width:100%;border-top:1px solid #2b3852;padding:18px 5px 8px}.avatar{width:36px;height:36px;border-radius:11px;background:#e7edfc;color:#29458b;display:inline-flex;align-items:center;justify-content:center;flex-shrink:0}.profile strong{font-size:13px;display:block}.profile small{font-size:12px;color:#9babc7;display:block;margin-top:3px}.logout{font-size:12px;color:#adbbd3;padding:10px 5px}.subtle{font-size:13px;color:#fff;padding:12px}.main{min-width:0}.topbar{height:69px;background:#fff;border-bottom:1px solid #e1e6ef;padding:0 36px;display:flex;align-items:center;justify-content:space-between;font-size:13px;color:#6d7890}.separator{margin:0 12px;color:#afb8c7}.connection{color:#486751;background:#eff7f1;border-radius:20px;padding:5px 12px;font-size:12px}#content{max-width:1540px;margin:0 auto;padding:32px 36px 60px}.page-heading{display:flex;justify-content:space-between;align-items:center;gap:22px;margin-bottom:26px}.page-heading h1{font-size:32px}.page-heading p{font-size:14px;margin-bottom:0}.page-heading .eyebrow{font-size:12px}.stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin-bottom:30px}.stats button{text-align:left;background:#fff;border:1px solid #dde4ef;border-radius:12px;padding:19px 20px;display:flex;flex-direction:column;align-items:flex-start}.stats span{font-size:13px;color:#54627a}.stats strong{font-size:35px;line-height:1.4;color:#1b3059;font-weight:600}.stats small{font-size:12px;color:#79869a}.stats .attention strong{color:#c13648}.worklist{background:white;border:1px solid #e0e6f0;border-radius:12px;overflow:hidden}.list-heading{display:flex;justify-content:space-between;align-items:center;padding:19px 22px 10px}.list-heading h2{font-size:19px;margin:0}.tabs{display:flex;gap:18px;padding:0 22px;overflow:auto;border-bottom:1px solid #e5eaf2}.tabs button{white-space:nowrap;font-size:13px;padding:13px 0;border-bottom:2px solid transparent;color:#6a7891}.tabs button.active{color:#183fca;border-bottom-color:#183fca;font-weight:600}.filters{padding:18px 22px;display:grid;grid-template-columns:1.5fr 1.15fr 1fr;gap:10px;background:#fafbfe}.filters input,.filters select{font-size:13px;padding:10px;border-color:#dfe5ef}.request{border-top:1px solid #e2e7f0}.request>header{padding:20px 22px 12px;display:flex;align-items:center;justify-content:space-between;gap:20px}.request-number{font-size:12px;letter-spacing:1.4px;color:#7a89a0;font-weight:700}.request h3{margin:3px 0;font-size:18px}.request header p{font-size:13px;color:#738097;margin:0}.request-progress{min-width:150px;text-align:right;display:flex;flex-direction:column;gap:5px;font-size:12px;color:#5d6b82}.request-progress small{font-size:12px}.request-progress progress{width:130px;align-self:flex-end;height:5px;accent-color:#3158cf}.item-row{display:grid;grid-template-columns:4px minmax(130px,1fr) 145px 83px 116px 10px;gap:16px;align-items:center;width:100%;padding:17px 22px;border-top:1px solid #f0f3f8;text-align:left}.item-row:hover{background:#f6f8ff}.priority-mark{width:4px;height:29px;background:#c8d2e5;border-radius:3px}.priority-mark.critical{background:#df4a53}.priority-mark.high{background:#eea640}.priority-mark.planned{background:#8a9fc9}.item-description strong{display:block;font-size:14px;line-height:1.5;overflow-wrap:anywhere}.item-description small{font-size:12px;color:#76849a;display:block;margin-top:4px}.item-assignee,.item-due{font-size:12px;color:#6b7990}.late{color:#bc3046!important}.badge{display:inline-block;width:fit-content;border-radius:6px;font-size:12px;padding:5px 9px;white-space:nowrap;color:#54627a;background:#edf1f7}.badge.working,.badge.assigned{color:#244ab5;background:#eaf0ff}.badge.waiting{color:#89551a;background:#fff3d9}.badge.done{color:#6b42a3;background:#f1eafd}.badge.closed{color:#23784c;background:#e9f6ed}.badge.cancelled{color:#738099;background:#eef0f4}.chevron{font-size:24px;color:#8a98ac}.request>footer{padding:5px 20px;border-top:1px solid #eff2f7;text-align:right}.empty{padding:54px 22px;text-align:center;color:#738197}.empty h3{color:#253959;font-size:19px;margin-bottom:10px}.empty p{font-size:14px}.empty-icon{display:inline-flex;width:54px;height:54px;align-items:center;justify-content:center;border-radius:16px;background:#edf2ff;color:#3557bd;font-size:25px;margin-bottom:18px}.object-search{max-width:530px;margin-bottom:23px}.object-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.object-card{background:#fff;border:1px solid #dfe6f0;border-radius:12px;padding:22px;display:flex;flex-direction:column}.object-label{font-size:12px;letter-spacing:1.2px;color:#6d7f9b;text-transform:uppercase;margin-bottom:12px}.object-card h2{font-size:20px;margin-bottom:8px}.address{color:#69778e;font-size:14px;min-height:42px}.object-card dl{display:grid;grid-template-columns:95px 1fr;gap:9px;margin:5px 0 22px;font-size:12px}.object-card dt{color:#79869a}.object-card dd{margin:0;overflow-wrap:anywhere}.object-card footer{margin-top:auto;border-top:1px solid #edf0f6;padding-top:14px;display:flex;align-items:center;justify-content:space-between;gap:8px}.object-card footer button{font-size:12px;padding:8px}.team-list,.notifications{background:#fff;border:1px solid #dfe6f0;border-radius:12px;overflow:hidden}.team-row{display:flex;align-items:center;gap:16px;padding:20px;border-bottom:1px solid #e9edf4}.team-row strong{font-size:14px}.team-row p{font-size:12px;color:#77859b;margin:4px 0 0}.team-actions{display:flex;flex-wrap:wrap;gap:8px;margin-left:auto}.notification{display:flex;gap:15px;align-items:center;text-align:left;width:100%;padding:22px;border-bottom:1px solid #edf0f6}.notification>span:nth-child(2){flex:1}.notification strong{font-size:14px;display:block}.notification small{color:#79879c;display:block;margin-top:5px}.notification-dot{width:7px;height:7px;background:transparent;border-radius:50%;flex-shrink:0}.unread{background:#f5f8ff}.unread .notification-dot{background:#3158cf}dialog{border:1px solid #dce3ef;border-radius:17px;box-shadow:0 24px 90px #0c1d4350;padding:0;width:min(520px,calc(100% - 28px));max-height:90dvh;background:#fff;color:#17243c}dialog.wide{width:min(790px,calc(100% - 28px))}dialog::backdrop{background:#0d1b3d80;backdrop-filter:blur(3px)}.modal-head{padding:22px 26px;border-bottom:1px solid #e6ebf3;display:flex;justify-content:space-between;align-items:flex-start;gap:12px;position:sticky;top:0;background:white;z-index:2}.modal-head h2{margin:0;font-size:22px}.modal-head p{margin:5px 0 0;font-size:13px;color:#6c7c94}.icon-button{border-radius:8px;background:#f0f3f8;font-size:25px;width:35px;height:35px;line-height:1;flex-shrink:0}.form-body{padding:24px 26px}.form-body>label{margin-bottom:20px}.form-columns{display:grid;grid-template-columns:1fr 1fr;gap:15px;margin-top:16px}.draft-item{border:1px solid #dce4ef;border-radius:12px;padding:20px;margin:20px 0;position:relative;background:#fcfdff;min-width:0}.draft-item legend{padding:0 8px;font-size:12px;font-weight:700;color:#64789c;letter-spacing:1px}.remove-item{position:absolute;right:8px;top:-20px;background:#fff;font-size:25px;color:#8694aa}.upload-label{display:flex;align-items:center;gap:10px;position:relative;width:fit-content;margin-top:18px;color:#3155b8;font-size:13px;cursor:pointer;min-height:38px}.upload-label span{color:#7a899f;font-size:12px}.upload-label input{position:absolute;opacity:0;width:100%;height:100%;cursor:pointer;left:0;top:0;margin:0}.upload-label:focus-within{outline:2px solid #719bff}.photo-names{font-size:12px;color:#677c92;overflow-wrap:anywhere}.add-actions{display:flex;gap:12px;flex-wrap:wrap;margin-bottom:18px}.submit-row{display:flex;justify-content:space-between;gap:12px;border-top:1px solid #e4eaf3;padding-top:20px}.existing{background:#fff8e9;color:#79541a;font-size:13px;padding:13px 16px;border-radius:9px;margin:14px 0}.existing p{margin-bottom:0}.detail-badges{display:flex;gap:12px;align-items:center;margin-bottom:18px}.priority-text{font-size:12px;color:#66778e}.priority-text.critical{color:#b73246}.problem-title{font-size:25px;line-height:1.4;white-space:pre-wrap;overflow-wrap:anywhere}.detail-meta{display:grid;grid-template-columns:2fr 1fr 1fr;gap:16px;background:#f4f6fa;border-radius:10px;padding:16px}.detail-meta small{display:block;color:#7b88a0;font-size:12px;margin-bottom:5px}.detail-meta strong{font-size:13px}.task-actions{display:flex;flex-wrap:wrap;align-items:center;gap:9px;margin:22px 0}.assign-control{display:flex;gap:6px;min-width:0;width:100%}.assign-control select{font-size:14px;flex:1}.notice{margin-top:16px;background:#fff5df;border-radius:9px;padding:16px;font-size:14px}.notice p{margin:7px 0;white-space:pre-wrap;overflow-wrap:anywhere}.notice.success{background:#edf7f0}.detail-section{border-top:1px solid #e5ebf4;margin-top:24px;padding-top:22px}.detail-section h3{font-size:16px}.detail-section h3 span{font-size:13px;color:#8290a6;margin-left:5px}.photo-grid{display:flex;gap:10px;flex-wrap:wrap}.photo-grid img{width:110px;height:90px;object-fit:cover;border-radius:8px}.comment{background:#f5f7fb;border-radius:9px;padding:14px;margin-bottom:12px}.comment header{display:flex;justify-content:space-between;gap:10px;font-size:12px}.comment header small{color:#8190a6;font-size:12px}.comment p{font-size:14px;margin:8px 0 0;white-space:pre-wrap;overflow-wrap:anywhere}.history{margin-top:24px;border-top:1px solid #e4eaf3;padding-top:20px;font-size:14px}.history>div{border-left:2px solid #dce4f3;padding-left:15px;margin:18px 0}.history small{color:#74839c;font-size:12px}.history p{font-size:13px;margin:6px 0;white-space:pre-wrap}.inline-form{background:#f3f6fc;padding:18px;border-radius:10px}.inline-form label{margin-bottom:14px}.check-list{max-height:45vh;overflow:auto}.check-list label{display:flex;align-items:center;gap:12px;margin:12px 0;font-size:14px}.check-list input{width:18px;height:18px;margin:0}.check-list small{margin:0;font-size:12px}.password-output{display:block;background:#eef2fb;padding:14px;font-size:17px;overflow-wrap:anywhere}#toast{position:fixed;bottom:24px;left:50%;transform:translateX(-50%) translateY(100px);opacity:0;background:#152644;color:#fff;border-radius:10px;padding:14px 22px;max-width:90vw;box-shadow:0 6px 25px #10234133;z-index:10000;pointer-events:none;transition:transform .2s,opacity .2s;font-size:14px}#toast.show{opacity:1;transform:translateX(-50%) translateY(0)}#toast.error{background:#9c263c}.boot{padding:60px;text-align:center}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0)}[hidden]{display:none!important}
@media(min-width:1600px){.item-row{grid-template-columns:4px minmax(160px,1fr) 175px 90px 120px 12px}}@media(max-width:1200px){.workspace{grid-template-columns:215px minmax(0,1fr)}#content{padding:28px 22px}.sidebar{padding:24px 12px}.item-row{grid-template-columns:4px minmax(120px,1fr) 100px 102px;gap:12px}.item-due{grid-column:2;grid-row:2}.item-assignee{grid-column:3}.item-row .badge{grid-column:4;grid-row:1}.chevron{display:none}.object-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.stats button{padding:16px 14px}.stats span{font-size:12px}.team-row{flex-wrap:wrap}.team-actions{margin-left:50px}}
@media(max-width:760px){.login{display:block}.login-intro{min-height:auto;padding:26px}.login-intro h1{font-size:33px;letter-spacing:-1px;margin:25px 0 12px}.login-intro p,.intro-bottom,.login-intro .eyebrow{display:none}.wordmark img{width:33px}.wordmark{font-size:24px}.login-form{padding:32px 24px}.login-form h2{font-size:25px}.workspace{display:block;padding-bottom:70px}.sidebar{position:static;height:auto;padding:0;background:#111e38}.brand{margin:0;padding:17px 20px;display:flex;align-items:center;gap:10px}.brand img{width:31px}.brand b{font-size:21px}.brand span{font-size:12px;margin-left:auto}.sidebar-caption,.sidebar-bottom{display:none}.sidebar nav{position:fixed;bottom:0;left:0;right:0;z-index:20;display:flex;justify-content:space-around;background:#fff;color:#60728f;border-top:1px solid #dce4f0;padding:5px 3px calc(5px + env(safe-area-inset-bottom))}.sidebar nav button{flex:1;flex-direction:column;gap:1px;padding:4px 2px;font-size:12px;border-radius:7px;position:relative;max-width:130px}.sidebar nav button span{font-size:21px;line-height:1.25;text-align:center}.sidebar nav button.selected{background:#edf2ff;color:#2145b9}.sidebar nav button em{position:absolute;right:13px;top:0;background:#e8edfa;color:#3454a2;font-size:12px;border-radius:10px;padding:0 4px}.topbar{height:42px;padding:0 18px;font-size:12px}.connection{font-size:12px;padding:3px 8px}#content{padding:23px 15px 30px}.page-heading{display:block;margin-bottom:22px}.page-heading h1{font-size:27px;letter-spacing:-.8px}.page-heading p{font-size:13px}.page-heading>.primary,.page-heading>.secondary{width:100%;margin-top:17px}.stats{grid-template-columns:repeat(2,1fr);gap:9px;margin-bottom:21px}.stats button{padding:14px}.stats strong{font-size:29px}.stats span{font-size:12px}.stats small{font-size:12px}.list-heading{padding:13px 13px 4px}.list-heading h2{font-size:17px}.tabs{padding:0 13px;gap:17px}.tabs button{font-size:12px}.filters{padding:12px;grid-template-columns:1fr 1fr;gap:8px}.filters input{grid-column:1/-1}.filters input,.filters select{font-size:12px}.request>header{padding:15px 13px;align-items:flex-start;gap:12px}.request h3{font-size:17px}.request header p{font-size:12px}.request-progress{min-width:95px;font-size:12px;max-width:115px}.request-progress small{font-size:12px}.request-progress progress{width:85px}.request-number{font-size:12px}.item-row{padding:14px 13px;grid-template-columns:3px 1fr auto;gap:8px 10px}.item-description{grid-column:2/4;grid-row:1}.item-description strong{font-size:14px}.item-description small{font-size:12px}.item-row .priority-mark{grid-column:1;grid-row:1/3}.item-assignee{grid-column:2;grid-row:2;font-size:12px}.item-due{grid-column:2;grid-row:3;font-size:12px}.item-row .badge{grid-column:3;grid-row:2/4;font-size:12px}.request>footer{padding:3px 9px}.request>footer button{font-size:12px}.object-grid{grid-template-columns:1fr;gap:12px}.object-card{padding:18px}.address{min-height:0}.team-row{padding:15px;gap:10px}.team-row>div:nth-child(2){flex:1}.team-actions{margin-left:0;width:100%}.team-actions button{font-size:12px}.notification{padding:15px}.notification strong{font-size:13px}dialog,dialog.wide{width:calc(100% - 16px);max-height:94dvh;border-radius:12px}.modal-head{padding:18px 16px}.modal-head h2{font-size:19px}.modal-head p{font-size:12px}.form-body{padding:18px 16px}.form-columns{grid-template-columns:1fr}.draft-item{padding:16px 12px}.problem-title{font-size:21px}.detail-meta{grid-template-columns:1fr 1fr}.detail-meta>div:first-child{grid-column:1/-1}.task-actions .primary,.task-actions .secondary{font-size:12px;padding:10px 12px}.submit-row{flex-wrap:wrap}.submit-row .primary{flex:1}.empty{padding:38px 17px}.empty p{font-size:13px}#toast{bottom:90px;width:max-content;max-width:calc(100% - 30px)}.password-page h1{font-size:25px}.sidebar nav:has(button[data-view="team"]){gap:0}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important}}

/* Readability for frequently used controls. */
.item-description strong{font-size:16px}.item-assignee,.item-due,.badge,.tabs button,.filters input,.filters select,.stats span,.detail-meta strong,.priority-text{font-size:14px}
.account-menu{display:grid;gap:16px}.account-menu p{margin:0}.object-card footer{flex-wrap:wrap}
#mobile-account{margin-left:auto;margin-right:18px}
@media(max-width:760px){.item-description strong{font-size:16px}.item-assignee,.item-due,.item-row .badge,.tabs button,.filters input,.filters select,.stats span,.sidebar nav button,.task-actions .primary,.task-actions .secondary{font-size:14px}.sidebar nav button{font-size:12px}.item-row{grid-template-columns:3px minmax(0,1fr) auto}.request-progress{min-width:95px}.request header p{font-size:12px}.request-progress small{font-size:12px}.request-progress{font-size:12px}.request-progress progress{width:85px}.topbar #mobile-account{font-size:12px;margin-right:8px}.team-actions button{font-size:14px}}

@media(max-width:760px){.stats button{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px;align-items:center;padding:14px 12px}.stats small{display:none}.stats strong{font-size:28px}.tabs{scrollbar-width:thin}}
