:root{--navy:#103f63;--blue:#246b94;--ink:#16212b;--muted:#687684;--line:#dbe2e8;--bg:#f3f5f7;--green:#13795b;--orange:#d5682c;--red:#b42318}*{box-sizing:border-box}body{background:var(--bg);color:var(--ink);margin:0;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}button,input,textarea{font:inherit}button{cursor:pointer}.spin{animation:1s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.loading{text-align:center;min-height:100vh;color:var(--navy);place-content:center;gap:12px;display:grid}.brand{grid-template-columns:auto 1fr;align-items:center;column-gap:10px;display:grid}.brand>span{background:var(--navy);color:#fff;letter-spacing:.12em;grid-row:1/3;padding:10px 9px;font-weight:900}.brand>b{align-self:end}.brand>small{color:var(--muted)}.login{background:linear-gradient(145deg,#edf1f4,#fff);place-items:center;min-height:100vh;padding:24px;display:grid}.login section{border:1px solid var(--line);background:#fff;border-radius:24px;gap:28px;width:min(100%,410px);padding:28px;display:grid;box-shadow:0 24px 70px #103f6317}.kicker{text-transform:uppercase;letter-spacing:.14em;color:var(--blue);margin:0 0 8px;font-size:12px;font-weight:800}.login h1,.home h1{margin:0 0 8px;font-size:32px}.login p{color:var(--muted);margin:0}.login form{gap:16px;display:grid}.login label,.notes{gap:7px;font-size:14px;font-weight:700;display:grid}.login input,.notes textarea{border:1px solid var(--line);background:#fbfcfd;border-radius:12px;padding:13px}.login button,.submit{background:var(--navy);color:#fff;border:0;border-radius:12px;padding:14px;font-weight:800}.error{color:var(--red)}.app-header,.mobile-header{border-bottom:1px solid var(--line);z-index:4;background:#fff;justify-content:space-between;align-items:center;height:74px;padding:0 18px;display:flex;position:sticky;top:0}.header-actions{align-items:center;gap:8px;display:flex}.language-toggle{border:1px solid var(--line);color:var(--navy);background:#fff;border-radius:10px;min-height:42px;padding:0 12px;font-weight:800}[dir=rtl] .assignment-list>button{text-align:right}[dir=rtl] .assignment-list>button>svg,[dir=rtl] .mobile-header .icon svg{transform:rotate(180deg)}.icon{border:1px solid var(--line);background:#fff;border-radius:11px;place-items:center;width:42px;height:42px;display:grid}.icon svg{width:19px}.home,.site-detail{max-width:680px;margin:auto;padding:24px 18px 100px}.home>p{color:var(--muted);margin:0}.summary{grid-template-columns:repeat(3,1fr);gap:10px;margin:24px 0;display:grid}.summary div{border:1px solid var(--line);text-align:center;background:#fff;border-radius:14px;padding:16px 10px;display:grid}.summary b{color:var(--navy);font-size:24px}.summary span{color:var(--muted);font-size:12px}.assignment-list{gap:10px;display:grid}.assignment-list>button{text-align:left;border:1px solid var(--line);background:#fff;border-radius:16px;grid-template-columns:auto 1fr auto;align-items:center;gap:12px;padding:15px;display:grid}.assignment-list>button>span:nth-child(2){gap:4px;display:grid}.assignment-list small{color:var(--muted)}.assignment-list em,.status{text-transform:uppercase;border-radius:999px;width:max-content;padding:4px 8px;font-size:11px;font-style:normal;font-weight:800}.assigned{color:var(--blue);background:#e7f0f7}.in_progress{color:#6941c6;background:#eee8fa}.under_review{color:#9a5a09;background:#fff3d6}.verified{color:var(--green);background:#e6f5ef}.revisit_required{color:var(--orange);background:#fff0e7}.flagged_exception{color:var(--red);background:#feeceb}.pin{border-radius:12px;place-items:center;width:42px;height:42px;display:grid}.pin svg{width:20px}.refresh{color:var(--blue);background:0 0;border:0;align-items:center;gap:7px;margin-top:20px;font-weight:700;display:flex}.mobile-header{justify-content:flex-start;gap:13px}.mobile-header>div{display:grid}.mobile-header span{color:var(--muted);font-size:12px}.detail-hero{background:linear-gradient(145deg, var(--navy), #1e5c83);color:#fff;border-radius:22px;margin-bottom:16px;padding:24px}.detail-hero h1{margin:16px 0 10px;font-size:28px}.detail-hero p,.detail-hero a{align-items:center;gap:7px;display:flex}.detail-hero p{opacity:.78}.detail-hero p svg,.detail-hero a svg{width:17px}.detail-hero a{color:#fff;margin-top:20px;font-weight:700;text-decoration:none}.status{color:#fff;background:#fff2}.revisit{color:#913c12;background:#fff2e8;border:1px solid #f6c6a4;border-radius:16px;gap:12px;margin-bottom:16px;padding:16px;display:flex}.revisit p{margin:4px 0 0}.workflow-card{border:1px solid var(--line);background:#fff;border-radius:20px;gap:18px;padding:18px;display:grid}.step{grid-template-columns:34px 1fr auto;align-items:center;gap:10px;display:grid}.step>span{width:30px;height:30px;color:var(--navy);background:#e8eff4;border-radius:50%;place-items:center;font-weight:900;display:grid}.step>div{display:grid}.step small{color:var(--muted)}.step button,.step-link{color:var(--navy);background:#e7f0f7;border:0;border-radius:10px;align-items:center;gap:6px;padding:10px;font-weight:800;text-decoration:none;display:flex}.step button svg,.step-link svg{width:18px}.ok{color:var(--green)}.gps{color:var(--green);background:#eef8f4;border-radius:10px;justify-content:space-between;padding:11px;font-size:12px;display:flex}.photos{grid-template-columns:34px 1fr}.photo-inputs{grid-template-columns:1fr 1fr;gap:10px;display:grid}.photo-inputs label{text-align:center;min-height:124px;color:var(--blue);border:1.5px dashed #aab8c3;border-radius:14px;place-content:center;gap:4px;padding:12px;display:grid}.photo-inputs label.ready{color:var(--green);background:#eef8f4;border-style:solid}.photo-inputs input{opacity:0;pointer-events:none;position:absolute}.photo-inputs svg{margin:auto}.photo-inputs small{color:var(--muted);white-space:nowrap;text-overflow:ellipsis;max-width:130px;overflow:hidden}.notes textarea{resize:vertical;min-height:86px}.message{border-radius:11px;align-items:flex-start;gap:8px;padding:12px;font-size:13px;display:flex}.message svg{flex:none;width:18px}.message.error{background:#fff0ef}.message.success{color:var(--green);background:#eef8f4}.submit,.unable{justify-content:center;align-items:center;gap:8px;display:flex}.submit:disabled{opacity:.48}.unable{color:var(--red);background:#fff;border:1px solid #f0b6af;border-radius:12px;padding:13px;font-weight:800}.empty{text-align:center;color:var(--muted);padding:40px 20px}.empty svg{color:var(--green);width:40px}.empty h2{color:var(--ink)}@media (min-width:760px){body{background:#e9eef2}.app-header{padding-inline:calc(50vw - 340px)}.site-detail,.home{padding-top:36px}.workflow-card{padding:26px}}
