:root { --dtic-cyan:#36c5c3; --dtic-navy:#102a43; --dtic-ink:#20354f; --dtic-muted:#72859a; --dtic-line:#e2ebef; --dtic-bg:#f5f9fa; --dtic-orange:#f5a65b; }
body.dtic-app, body.dtic-login { background:var(--dtic-bg); color:var(--dtic-ink); }
.dtic-login { min-height:100vh; display:grid; place-items:center; padding:24px; background:linear-gradient(135deg,#f8fbfd,#edf8f7)!important; }
.login-wrap { width:min(100%,448px); }.dtic-brand { display:inline-flex; align-items:center; gap:11px; color:var(--dtic-navy); }.dtic-brand img { width:43px; height:43px; border-radius:13px; object-fit:cover; background:#fff; }.dtic-brand b,.dtic-brand small { display:block; }.dtic-brand b { font:700 18px/1 'Space Grotesk',sans-serif; letter-spacing:.08em; }.dtic-brand small { margin-top:4px; color:var(--dtic-muted); font-size:10px; letter-spacing:.12em; text-transform:uppercase; }.login-wrap>.dtic-brand { margin:0 0 25px 8px; }.login-card { padding:34px 39px; border:1px solid var(--dtic-line); border-radius:20px; background:#fff; box-shadow:0 22px 55px rgba(16,42,67,.1); }.login-intro { margin-bottom:24px; }.mini-label,.panel-label { display:block; color:#159ca3; font-size:10px; font-weight:700; letter-spacing:.14em; text-transform:uppercase; }.login-intro h1 { margin:9px 0 8px; color:var(--dtic-navy); font:600 29px/1.1 'Space Grotesk',sans-serif; letter-spacing:-.04em; }.login-intro p,.dtic-topbar p,.page-heading p,.content-panel p { margin:0; color:var(--dtic-muted); font-size:13px; line-height:1.55; }.form-stack { display:grid; gap:14px; }.form-stack label,.detail-form label { display:grid; gap:7px; color:var(--dtic-ink); font-size:12px; font-weight:700; }.form-stack input,.form-stack select,.detail-form input,.detail-form select,.detail-form textarea,.search-form input { width:100%; border:1px solid #d6e2e8; border-radius:8px; outline:0; padding:11px 12px; color:var(--dtic-ink); background:#fbfdfe; font-size:13px; transition:border .2s,box-shadow .2s; }.form-stack input,.form-stack select { height:44px; }.form-stack input:focus,.form-stack select:focus,.detail-form input:focus,.detail-form select:focus,.detail-form textarea:focus,.search-form input:focus { border-color:var(--dtic-cyan); box-shadow:0 0 0 3px rgba(54,197,195,.13); }.dtic-button { display:inline-flex; align-items:center; justify-content:center; gap:12px; min-height:42px; padding:0 16px; border:0; border-radius:8px; font-size:12px; font-weight:700; text-decoration:none; cursor:pointer; transition:.2s; }.dtic-button:hover { transform:translateY(-2px); }.dtic-button.primary { color:#062d3c; background:var(--dtic-cyan); box-shadow:0 8px 15px rgba(18,157,168,.15); }.dtic-button.outline { border:1px solid #cddde4; color:var(--dtic-navy); background:#fff; }.dtic-button.small { min-height:35px; padding:0 11px; }.switch-text { margin:23px 0 0; color:var(--dtic-muted); font-size:12px; text-align:center; }.switch-text a,.text-link,.row-actions a { color:#119da5; font-weight:700; }.back-portal { display:block; margin:19px 0 0; color:var(--dtic-muted); font-size:12px; text-align:center; }.notice { margin:0 0 17px; padding:11px 13px; border-radius:8px; font-size:12px; }.notice.success { color:#176b59; background:#e2f7ee; }.notice.error { color:#9e423d; background:#ffebe9; }
.dtic-layout { display:flex; min-height:100vh; }.dtic-sidebar { position:fixed; inset:0 auto 0 0; display:flex; width:244px; flex-direction:column; padding:28px 20px 23px; color:#adc0ce; background:var(--dtic-navy); }.dtic-sidebar .dtic-brand { color:#fff; }.dtic-sidebar .dtic-brand img { width:42px; height:42px; }.dtic-sidebar .dtic-brand small { color:#91aabb; }.sidebar-context { display:flex; gap:10px; margin:58px 5px 27px; padding:13px 10px; border:1px solid rgba(255,255,255,.1); border-radius:9px; background:rgba(255,255,255,.05); }.context-dot { width:7px; height:7px; margin-top:4px; border-radius:50%; background:var(--dtic-cyan); box-shadow:0 0 0 4px rgba(54,197,195,.12); }.sidebar-context small,.sidebar-context strong { display:block; }.sidebar-context small { color:#7894a7; font-size:9px; }.sidebar-context strong { max-height:32px; margin-top:4px; overflow:hidden; color:#d9e6ed; font-size:11px; line-height:1.35; }.dtic-nav { display:grid; gap:5px; }.dtic-nav a { display:flex; align-items:center; gap:12px; padding:11px 12px; border-radius:8px; color:#9eb4c3; font-size:12px; }.dtic-nav a span { width:18px; color:var(--dtic-cyan); font-size:17px; text-align:center; }.dtic-nav a.active,.dtic-nav a:hover { color:#fff; background:rgba(255,255,255,.1); }.sidebar-footer { display:grid; gap:13px; margin-top:auto; padding:16px 6px 0; border-top:1px solid rgba(255,255,255,.12); }.sidebar-footer a { display:flex; justify-content:space-between; color:#8fa8b8; font-size:11px; }.sidebar-footer a:hover { color:var(--dtic-cyan); }.dtic-main { width:min(100% - 244px,1180px); margin-left:244px; padding:50px clamp(27px,6vw,82px); }.dtic-topbar { display:flex; align-items:start; justify-content:space-between; gap:25px; margin-bottom:34px; }.dtic-topbar h1,.page-heading h2,.welcome-panel h2,.needs-panel h2 { margin:8px 0 8px; color:var(--dtic-navy); font:600 32px/1.1 'Space Grotesk',sans-serif; letter-spacing:-.05em; }.user-chip { display:flex; align-items:center; gap:10px; padding:6px 9px 6px 6px; border:1px solid var(--dtic-line); border-radius:10px; background:#fff; white-space:nowrap; }.user-chip>span { display:grid; width:32px; height:32px; place-items:center; border-radius:9px; color:var(--dtic-navy); background:#dff6f3; font-weight:700; }.user-chip strong,.user-chip small { display:block; }.user-chip strong { color:var(--dtic-navy); font-size:11px; }.user-chip small { margin-top:2px; color:var(--dtic-muted); font-size:9px; }.metric-grid { display:grid; grid-template-columns:repeat(4,1fr); gap:14px; margin-bottom:25px; }.metric-card { min-height:133px; padding:20px; border:1px solid var(--dtic-line); border-radius:14px; background:#fff; }.metric-card.accent { border-color:rgba(54,197,195,.35); background:linear-gradient(140deg,#fff,#effbf9); }.metric-card span,.metric-card small { display:block; }.metric-card span { color:var(--dtic-muted); font-size:11px; }.metric-card strong { display:block; margin:14px 0 5px; color:var(--dtic-navy); font:600 30px/1 'Space Grotesk',sans-serif; }.metric-card small { color:#99a9b5; font-size:10px; }.content-panel { margin-bottom:22px; padding:27px; border:1px solid var(--dtic-line); border-radius:15px; background:#fff; box-shadow:0 6px 21px rgba(16,42,67,.025); }.needs-panel { display:grid; grid-template-columns:1.05fr 1.5fr; align-items:center; gap:30px; }.needs-panel h2 { font-size:22px; }.needs-form { display:grid; grid-template-columns:repeat(3,1fr); align-items:end; gap:10px; }.needs-form label span { display:block; margin-bottom:7px; color:var(--dtic-muted); font-size:10px; }.needs-form input { width:100%; height:39px; padding:0 9px; border:1px solid #d6e2e8; border-radius:7px; color:var(--dtic-navy); outline:0; font-weight:700; }.needs-form .dtic-button { grid-column:1/-1; margin-top:6px; }.panel-title,.page-heading { display:flex; align-items:end; justify-content:space-between; gap:20px; }.panel-title { margin-bottom:21px; }.panel-title h2 { margin:6px 0 0; color:var(--dtic-navy); font:600 19px 'Space Grotesk',sans-serif; }.asset-list { display:grid; }.asset-row { display:flex; align-items:center; gap:12px; padding:13px 0; border-top:1px solid #eef3f5; }.asset-symbol,.asset-icon { display:grid; place-items:center; border-radius:10px; color:#127e8b; background:#e5f7f4; font:700 15px 'Space Grotesk',sans-serif; }.asset-symbol { width:38px; height:38px; }.asset-info { display:flex; min-width:0; flex:1; flex-direction:column; gap:3px; }.asset-info b { color:var(--dtic-navy); font:600 12px 'Space Grotesk',sans-serif; }.asset-info small { overflow:hidden; color:var(--dtic-muted); font-size:10px; text-overflow:ellipsis; white-space:nowrap; }.row-arrow { color:#9fb1bd; }.status-pill { display:inline-flex; width:max-content; align-items:center; padding:5px 8px; border-radius:6px; color:#6d7f8e; background:#eef3f5; font-size:10px; font-weight:700; }.status-pill.em_uso { color:#177565; background:#e1f7ee; }.status-pill.defeito { color:#a26927; background:#fff1dd; }.status-pill.inservivel,.status-pill.nao_localizado { color:#a0443d; background:#ffebea; }.page-heading { margin-bottom:26px; }.page-heading h2 { margin-top:8px; margin-bottom:7px; font-size:34px; }.quantity-badge { padding:7px 10px; border-radius:7px; color:#168b94; background:#e2f7f5; font-size:11px; font-weight:700; }.split-panel { display:grid; grid-template-columns:1.2fr 1fr; gap:50px; }.split-panel h3,.detail-form h3,.asset-summary h3,.manual-box h3 { margin:7px 0 19px; color:var(--dtic-navy); font:600 19px 'Space Grotesk',sans-serif; }.form-stack.compact { max-width:370px; }.form-stack.compact small { color:var(--dtic-muted); font-size:10px; font-weight:400; }.text-link { display:inline-block; margin-top:16px; font-size:11px; }.info-callout { align-self:center; padding:17px; border-radius:10px; background:#f0faf9; }.info-callout span { display:grid; width:24px; height:24px; margin-bottom:10px; place-items:center; border-radius:50%; color:#137d86; background:#d8f2ef; font-weight:700; }.info-callout p { font-size:12px; }.data-table,.report-table { overflow:auto; }.table-row { display:grid; grid-template-columns:2fr 1fr 1.3fr 1fr; align-items:center; min-width:650px; gap:14px; padding:13px 0; border-top:1px solid #edf2f4; font-size:11px; }.table-row.table-head { padding-top:0; border-top:0; color:#9aabb7; font-size:9px; font-weight:700; letter-spacing:.1em; text-transform:uppercase; }.unit-cell { display:flex; min-width:0; flex-direction:column; gap:3px; }.unit-cell b { overflow:hidden; color:var(--dtic-navy); font:600 12px 'Space Grotesk',sans-serif; text-overflow:ellipsis; white-space:nowrap; }.unit-cell small { overflow:hidden; color:var(--dtic-muted); text-overflow:ellipsis; white-space:nowrap; }.row-actions { display:flex; gap:10px; }.row-actions form { display:inline; }.row-actions button { padding:0; border:0; color:#ad6862; background:none; font-size:11px; cursor:pointer; }.report-row { display:grid; grid-template-columns:2.2fr 1fr 1fr 1fr 1fr; align-items:center; min-width:750px; gap:12px; padding:14px 0; border-top:1px solid #edf2f4; font-size:11px; }.report-row.report-head { padding-top:0; border-top:0; color:#9aabb7; font-size:9px; font-weight:700; letter-spacing:.07em; text-transform:uppercase; }.report-row i { font-size:8px; font-style:normal; font-weight:400; letter-spacing:0; text-transform:none; }.report-row em { color:#97a8b4; font-style:normal; font-size:10px; }.status-dot { display:inline-block; width:7px; height:7px; margin-right:5px; border-radius:50%; background:#dce6eb; }.status-dot.warning { background:var(--dtic-orange); box-shadow:0 0 0 4px #fff0dc; }.status-dot.ok { background:var(--dtic-cyan); }.welcome-panel { display:flex; min-height:240px; align-items:center; justify-content:space-between; overflow:hidden; }.welcome-panel h2 { font-size:24px; }.welcome-panel p { max-width:510px; }.quick-actions { display:flex; gap:10px; margin-top:22px; }.welcome-shape { display:grid; width:175px; height:175px; place-items:center; margin-right:35px; border:1px solid rgba(54,197,195,.4); border-radius:50%; color:#35c2c1; background:#edfafa; font:600 27px 'Space Grotesk',sans-serif; transform:rotate(-12deg); }.search-form { display:flex; gap:8px; margin-bottom:20px; }.search-form input { max-width:380px; height:40px; }.scanner-panel { display:grid; grid-template-columns:1.2fr 1fr; gap:30px; }.scanner-box { position:relative; display:grid; min-height:350px; place-items:center; overflow:hidden; border-radius:12px; background:#0c2437; }.scanner-box video { width:100%; height:100%; min-height:350px; object-fit:cover; }.scanner-box p { position:absolute; bottom:12px; max-width:90%; margin:0; padding:7px 10px; border-radius:6px; color:#e7f1f5; background:rgba(7,27,46,.75); font-size:10px; text-align:center; }.scanner-frame { position:absolute; width:55%; height:35%; border:2px solid var(--dtic-cyan); border-radius:11px; box-shadow:0 0 0 999px rgba(7,27,46,.25); }.manual-box { align-self:center; }.manual-box p { margin-top:13px; font-size:11px; }.detail-layout { display:grid; grid-template-columns:.82fr 1.35fr; gap:45px; }.asset-summary { padding-right:20px; border-right:1px solid #edf2f4; }.asset-icon { width:58px; height:58px; margin-bottom:26px; font-size:22px; }.asset-summary h3 { margin-bottom:8px; }.asset-summary>p { font-size:12px; }.asset-summary dl { display:grid; gap:14px; margin:25px 0 0; }.asset-summary dt { margin-bottom:4px; color:#95a6b2; font-size:9px; text-transform:uppercase; }.asset-summary dd { margin:0; color:var(--dtic-ink); font-size:11px; }.detail-fields { display:grid; grid-template-columns:1fr 1fr; gap:14px; margin:20px 0 15px; }.detail-form textarea { resize:vertical; }.detail-form>.dtic-button { margin-top:17px; }.last-check { display:block; margin-top:12px; color:#8b9ca8; font-size:10px; }.not-found { padding:70px 20px; text-align:center; }.not-found>span { display:grid; width:48px; height:48px; margin:0 auto 15px; place-items:center; border-radius:50%; color:#af7d34; background:#fff2de; font-size:24px; }.not-found h2 { color:var(--dtic-navy); font:600 22px 'Space Grotesk',sans-serif; }.not-found p { margin-bottom:20px; }.empty-small { padding:20px 0; color:var(--dtic-muted); font-size:12px; }
@media(max-width:1000px){.metric-grid{grid-template-columns:repeat(2,1fr)}.needs-panel,.split-panel,.scanner-panel,.detail-layout{grid-template-columns:1fr}.asset-summary{padding:0 0 25px;border:0;border-bottom:1px solid #edf2f4}.dtic-main{padding-right:30px;padding-left:30px}.welcome-shape{margin-right:0}}
@media(max-width:650px){.dtic-sidebar{position:static;width:100%;padding:19px 17px}.dtic-layout{display:block}.sidebar-context{margin:22px 0 15px}.dtic-nav{display:flex;overflow:auto}.dtic-nav a{white-space:nowrap}.sidebar-footer{display:none}.dtic-main{width:100%;margin:0;padding:31px 17px}.dtic-topbar{flex-direction:column;margin-bottom:26px}.dtic-topbar h1{font-size:29px}.user-chip{order:-1}.metric-grid{gap:9px}.metric-card{min-height:116px;padding:15px}.metric-card strong{font-size:25px}.metric-card span{font-size:10px}.content-panel{padding:20px 17px}.needs-form{grid-template-columns:repeat(3,1fr);gap:7px}.needs-form .dtic-button{font-size:11px}.page-heading{align-items:start;flex-direction:column}.page-heading h2{font-size:29px}.login-card{padding:27px 22px}.split-panel{gap:27px}.quick-actions{flex-direction:column}.welcome-shape{display:none}.scanner-box,.scanner-box video{min-height:270px}.detail-fields{grid-template-columns:1fr}.report-table,.data-table{margin-right:-17px;margin-left:-17px;padding:0 17px}.asset-row .status-pill{display:none}}
.status-pill.fora_da_secao { color:#a0443d; background:#ffebea; }
.multi-select { min-height:170px; height:auto!important; padding:8px!important; }
.forgot-link { margin:15px 0 0; text-align:right; font-size:11px; }
.forgot-link a { color:#119da5; font-weight:700; }
.check-line { display:flex!important; grid-template-columns:none!important; align-items:center; gap:7px!important; }
.check-line input { width:auto!important; }
.heading-actions { display:flex; align-items:center; gap:9px; }
.heading-actions .quantity-badge { white-space:nowrap; }
.spec-grid { display:grid; grid-template-columns:repeat(2,1fr); gap:18px; }
.spec-list { display:grid; }
.spec-row { display:flex; align-items:center; justify-content:space-between; gap:14px; padding:12px 0; border-top:1px solid #edf2f4; color:var(--dtic-ink); font-size:12px; }
.spec-row strong { display:grid; min-width:31px; height:27px; place-items:center; border-radius:8px; color:#127e8b; background:#e5f7f4; font:700 12px 'Space Grotesk',sans-serif; }
@media(max-width:650px){.spec-grid{grid-template-columns:1fr}.heading-actions{align-items:flex-start;flex-direction:column}}
.profile-grid { display:grid; grid-template-columns:1.15fr .85fr; gap:18px; }
.profile-grid .content-panel { margin-bottom:0; }
.select-scroll { max-width:100%; overflow-x:auto; padding-bottom:4px; }
.select-scroll .multi-select { min-width:720px; white-space:nowrap; }
.select-filter { margin-bottom:8px; }
.unit-picker { display:grid; gap:8px; }
.unit-picker select { min-height:210px; height:auto!important; padding:7px!important; overflow-x:auto; }
.unit-picker input { height:40px!important; }
.dtic-main, .content-panel, .asset-info, .page-heading { min-width:0; }
body.dtic-app { overflow-x:hidden; }
.asset-row { min-width:0; }
.asset-info small { white-space:normal; overflow-wrap:anywhere; }
.pdf-link { display:inline-flex; align-items:center; gap:5px; color:#119da5; font-size:11px; font-weight:700; }
@media(max-width:1000px){.profile-grid{grid-template-columns:1fr}.profile-grid .form-stack.compact{max-width:none}}
@media(max-width:650px){.page-heading,.panel-title{align-items:flex-start;flex-wrap:wrap}.heading-actions{width:100%}.heading-actions .dtic-button{width:100%}.asset-row{align-items:flex-start;gap:9px}.asset-symbol{flex:0 0 38px}.asset-info{padding-top:2px}.asset-row .status-pill{display:inline-flex;flex:0 0 auto;max-width:110px;white-space:normal;line-height:1.2}.row-arrow{padding-top:8px}.content-panel{overflow:hidden}.search-form{flex-wrap:wrap}.search-form input{max-width:none;flex:1 1 100%}.search-form .dtic-button{width:100%}.login-wrap{width:100%}.unit-picker select{font-size:12px}.profile-grid .content-panel{padding:19px 15px}.select-scroll .multi-select{min-width:680px}}
.deficit-panel { overflow:hidden; }
.deficit-table { display:grid; }
.deficit-row { display:grid; grid-template-columns:2fr 1fr 1fr 1fr; align-items:center; gap:14px; padding:14px 0; border-top:1px solid #edf2f4; color:var(--dtic-ink); font-size:12px; }
.deficit-row.deficit-head { padding-top:0; border-top:0; color:#9aabb7; font-size:9px; font-weight:700; letter-spacing:.08em; text-transform:uppercase; }
.deficit-value { width:max-content; min-width:30px; padding:5px 8px; border-radius:6px; font-weight:700; text-align:center; }
.deficit-value.has-deficit { color:#a0443d; background:#ffebea; }
.deficit-value.no-deficit { color:#177565; background:#e1f7ee; }
@media(max-width:650px){.deficit-row{grid-template-columns:1.7fr .75fr .75fr .9fr;gap:8px;font-size:11px}.deficit-row.deficit-head{font-size:8px}.deficit-panel{padding:20px 14px}}
.asset-result-meta { display:flex; align-items:baseline; flex-wrap:wrap; gap:8px 13px; margin:-7px 0 19px; color:var(--dtic-navy); }
.asset-result-meta strong { font:600 18px 'Space Grotesk',sans-serif; letter-spacing:.03em; }
.asset-result-meta small { color:var(--dtic-muted); font-size:11px; }
.asset-location-warning { margin-bottom:18px; padding:18px; border:1px solid #f4dcae; border-radius:11px; background:#fff9ed; }
.asset-location-warning h3 { margin:7px 0 8px; color:var(--dtic-navy); font:600 19px 'Space Grotesk',sans-serif; }
.asset-location-warning p { margin:0; color:var(--dtic-muted); font-size:12px; line-height:1.55; }
.move-asset-form { display:grid; gap:10px; max-width:390px; margin-bottom:14px; }
.move-asset-form label { display:grid; gap:7px; color:var(--dtic-ink); font-size:12px; font-weight:700; }
.move-asset-form select { width:100%; height:44px; border:1px solid #d6e2e8; border-radius:8px; outline:0; padding:0 12px; color:var(--dtic-ink); background:#fbfdfe; font-size:13px; }
.move-asset-form select:focus { border-color:var(--dtic-cyan); box-shadow:0 0 0 3px rgba(54,197,195,.13); }
.asset-register-form { max-width:none; grid-template-columns:repeat(2,minmax(0,1fr)); align-items:start; }
.asset-register-form .full { grid-column:1/-1; }
.asset-register-form textarea { width:100%; resize:vertical; border:1px solid #d6e2e8; border-radius:8px; outline:0; padding:11px 12px; color:var(--dtic-ink); background:#fbfdfe; font-size:13px; font-family:inherit; }
.asset-register-form textarea:focus { border-color:var(--dtic-cyan); box-shadow:0 0 0 3px rgba(54,197,195,.13); }
.asset-register-form label { display:grid; gap:7px; color:var(--dtic-ink); font-size:12px; font-weight:700; }
.asset-register-form .field-help { display:block; margin-top:6px; color:var(--dtic-muted); font-size:10px; }
.asset-register-actions { display:flex; flex-wrap:wrap; gap:9px; margin-top:5px; }
.choice-actions { display:flex; flex-wrap:wrap; justify-content:center; gap:10px; margin-top:22px; }
.asset-not-found { padding:58px 20px; }
@media(max-width:650px){.asset-register-form{grid-template-columns:1fr}.asset-register-form .full{grid-column:auto}.asset-register-actions .dtic-button,.choice-actions .dtic-button{width:100%}.asset-result-meta{margin-top:0}}
