:root{
  --bg:#f5f7f8;--card:#fff;--text:#243746;--muted:#70818e;--line:#e1e8ec;
  --navy:#183a57;--blue:#3275a6;--blue-soft:#edf6fc;--green:#287a58;--green-soft:#eaf7f1;
  --red:#b44940;--red-soft:#fdf0ee;--purple:#70539a;--purple-soft:#f3eff9;--amber:#9a691f;--amber-soft:#fff6e5;
  --shadow:0 12px 36px rgba(35,57,73,.07)
}
*{box-sizing:border-box}html,body{max-width:100%;overflow-x:hidden}body{margin:0;background:var(--bg);color:var(--text);font-family:"Microsoft YaHei","PingFang SC","Noto Sans CJK SC",sans-serif;font-size:15px}
button,input,textarea,select{font:inherit}.hidden{display:none!important}
.app-header{max-width:1240px;margin:0 auto;padding:28px 24px 12px;display:flex;align-items:center;gap:14px}.brand-mark{width:48px;height:48px;border-radius:15px;background:linear-gradient(145deg,#183a57,#3c7aa5);color:#fff;display:grid;place-items:center;font-weight:800;font-size:23px;box-shadow:0 8px 22px rgba(24,58,87,.2)}.brand-copy h1{margin:0;color:var(--navy);font-size:27px;letter-spacing:.02em}.brand-copy p{margin:5px 0 0;color:var(--muted);font-size:14px}.flow-hint{margin-left:auto;display:flex;align-items:center;gap:9px;color:#7a8b97;font-size:13px}.flow-hint span{display:flex;align-items:center;gap:6px;white-space:nowrap}.flow-hint b{width:24px;height:24px;border-radius:50%;display:grid;place-items:center;background:#e7eef3;color:var(--navy)}.flow-hint i{width:24px;height:1px;background:#d7e1e7}
.app-shell{max-width:1240px;margin:0 auto;padding:12px 24px 60px;display:grid;gap:16px}.workspace{background:var(--card);border:1px solid var(--line);border-radius:20px;box-shadow:var(--shadow);padding:24px}.section-head{display:flex;align-items:flex-start;gap:13px;margin-bottom:18px}.section-number{flex:0 0 auto;width:32px;height:32px;border-radius:50%;display:grid;place-items:center;background:var(--navy);color:#fff;font-weight:800}.section-head h2{margin:1px 0 5px;color:var(--navy);font-size:21px}.section-head p{margin:0;color:var(--muted);line-height:1.55;font-size:13px}.grow{flex:1;min-width:0}
.address-input{width:100%;min-height:178px;border:1px solid #cfdbe2;border-radius:14px;padding:15px 16px;resize:vertical;color:var(--text);background:#fcfdfd;line-height:1.75;font-size:16px}.address-input:focus,input:focus,select:focus,textarea:focus{outline:3px solid rgba(50,117,166,.12);border-color:#8bb4d0}.input-actions,.export-actions{display:flex;gap:10px;align-items:center;flex-wrap:wrap;margin-top:13px}.btn{appearance:none;border:1px solid #ccd8df;background:#fff;color:#405766;border-radius:11px;padding:10px 15px;font-weight:700;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;transition:.16s}.btn:hover{transform:translateY(-1px);box-shadow:0 6px 16px rgba(35,57,73,.08)}.btn:disabled{opacity:.45;cursor:not-allowed;transform:none}.btn.primary{background:var(--blue);border-color:var(--blue);color:#fff}.btn.large{min-height:44px;padding:11px 20px;font-size:15px}.btn.small{padding:8px 11px;font-size:13px}.btn.quiet{background:#f7f9fa}.text-btn{border:0;background:transparent;color:var(--blue);padding:8px 5px;font-weight:700;cursor:pointer}.match-summary{margin-top:13px;border-radius:11px;padding:11px 13px;font-size:14px}.match-summary.neutral{background:#f7f9fa;color:var(--muted)}.match-summary.good{background:var(--green-soft);color:var(--green)}.match-summary.warn{background:var(--amber-soft);color:var(--amber)}
.result-title-row{align-items:center}.help-chip{border:0;background:#f3f6f8;color:#617584;border-radius:999px;padding:7px 11px;font-size:12px;cursor:help}.quality{margin:-3px 0 13px;padding:12px 14px;border-radius:12px;background:var(--amber-soft);color:var(--amber);font-weight:700}.simple-batchbar{display:flex;gap:8px;align-items:center;flex-wrap:wrap;padding:11px 12px;border-radius:13px;background:#f7f9fa;border:1px solid var(--line);margin-bottom:11px}.simple-batchbar strong{color:var(--navy);min-width:76px}.batch-divider{width:1px;height:26px;background:#dce5ea;margin:0 2px}.review-good{background:var(--green-soft);border-color:#b7ddca;color:var(--green)}.review-bad{background:var(--red-soft);border-color:#edc2bd;color:var(--red)}.review-exempt{background:var(--purple-soft);border-color:#d2c3e4;color:var(--purple)}.clear-review{margin-left:auto;color:#738590}
.table-wrap{width:100%;overflow:auto;border:1px solid var(--line);border-radius:14px;max-height:620px}.simple-table-wrap table{width:100%;border-collapse:collapse;min-width:820px}th,td{padding:13px 12px;border-bottom:1px solid #e8eef2;text-align:left;vertical-align:middle}th{position:sticky;top:0;z-index:2;background:#f5f8fa;color:#607585;font-size:13px}tbody tr{transition:.12s;cursor:pointer}tbody tr:hover{background:#f8fbfd}tbody tr.selected{background:#edf6fc;box-shadow:inset 4px 0 0 var(--blue)}tbody tr:focus{outline:3px solid rgba(50,117,166,.18);outline-offset:-3px}.checkcol{width:44px;text-align:center}.review-col{width:330px}.raw-address{font-weight:700;color:#2b4252}.qty-chip{display:inline-block;margin-left:7px;padding:2px 7px;border-radius:999px;background:#eef3f6;color:#607585;font-size:11px}.object-line{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.object-main{font-weight:700;color:#2d4658}.location-detail{margin-top:4px;color:#71838f;font-size:13px}.match-details{margin-top:7px}.match-details summary{display:inline;cursor:pointer;color:#718899;font-size:12px}.match-detail-grid{margin-top:7px;padding:9px 11px;border-radius:10px;background:#f7f9fa;color:#637785;font-size:12px;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:5px 14px}.detail-empty{color:#9ba8b1}.object-suggest{margin-bottom:6px;color:var(--amber);font-size:12px}.candidate-select{width:100%;max-width:440px;padding:8px 9px;border:1px solid #ccd8df;border-radius:9px;background:#fff}.pill{display:inline-flex;align-items:center;padding:4px 8px;border-radius:999px;font-size:11px;font-weight:800}.pill.exact,.pill.detail{background:var(--green-soft);color:var(--green)}.pill.site{background:var(--blue-soft);color:var(--blue)}.pill.review,.pill.choice{background:var(--amber-soft);color:var(--amber)}.pill.bad{background:var(--red-soft);color:var(--red)}.confidence-sub{display:none}.review-switch{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:5px}.review-choice{border:1px solid #d5dfe5;background:#fff;color:#6b7d89;border-radius:9px;padding:8px 6px;font-size:12px;font-weight:700;cursor:pointer;white-space:nowrap}.review-choice[data-value="已复查"].active{background:var(--green-soft);border-color:#a9d4be;color:var(--green)}.review-choice[data-value="未复查"].active{background:var(--red-soft);border-color:#e7b5b0;color:var(--red)}.review-choice[data-value="无需复查"].active{background:var(--purple-soft);border-color:#c8b5df;color:var(--purple)}.review-clear{display:block;margin:5px auto 0;border:0;background:transparent;color:#8a99a3;font-size:11px;cursor:pointer}.empty-row{cursor:default}.empty-row td{text-align:center;color:#8d9ba5;padding:38px}
.advanced-tools,.export-options,.more-info{margin-top:12px;border:1px solid var(--line);border-radius:12px;background:#fafcfd}.advanced-tools summary,.export-options summary,.more-info summary{cursor:pointer;padding:11px 13px;color:#607585;font-weight:700;font-size:13px}.filterbar{display:flex;align-items:center;gap:7px;flex-wrap:wrap;padding:0 13px 13px}.filter{border:1px solid var(--line);background:#fff;color:#617684;border-radius:999px;padding:7px 10px;font-weight:700;font-size:12px;cursor:pointer}.filter.active{background:var(--blue);border-color:var(--blue);color:#fff}.table-search{margin-left:auto;display:flex;align-items:center;gap:7px;color:#6e808d;font-size:12px}.table-search input{width:225px;border:1px solid #ccd8df;border-radius:9px;padding:8px 9px}.pager{display:flex;align-items:center;justify-content:flex-end;gap:9px;margin-top:11px;color:#6e808d;font-size:13px}.pager select{padding:6px;border:1px solid #ccd8df;border-radius:8px}.page-only.hidden{display:none!important}
.export-panel .section-head{align-items:center}.export-options{margin:0 0 0 auto;min-width:112px}.export-options[open]{min-width:min(580px,100%)}.export-settings{display:grid;grid-template-columns:2fr 1.4fr 1.1fr;gap:10px;padding:0 13px 13px}.export-settings label{display:grid;gap:5px;color:#687b88;font-size:12px}.export-settings input,.export-settings select{min-width:0;width:100%;padding:9px 10px;border:1px solid #ccd8df;border-radius:9px;background:#fff}.preview{background:#eef2f4;border-radius:15px;padding:10px;overflow:hidden}.preview canvas{display:block;width:100%;height:auto;border-radius:10px;background:#fff}.export-actions{justify-content:center}.export-actions .btn{min-width:150px}.more-info-grid{display:grid;grid-template-columns:1.4fr 1fr;gap:14px;padding:0 13px 13px}.more-info-grid h3{margin:0 0 8px;color:var(--navy);font-size:14px}.more-info-grid textarea{width:100%;min-height:135px;border:1px solid #d4dfe5;border-radius:10px;padding:10px;resize:vertical;line-height:1.6}.version-info{line-height:1.75;color:#687b88;font-size:13px}
.modal{position:fixed;inset:0;background:rgba(25,42,55,.45);display:grid;place-items:center;padding:20px;z-index:20}.modal-card{width:min(460px,100%);background:#fff;border-radius:18px;padding:25px;text-align:center;box-shadow:0 20px 70px rgba(20,38,52,.25)}.modal-icon{width:45px;height:45px;border-radius:50%;display:grid;place-items:center;margin:0 auto 12px;background:var(--amber-soft);color:var(--amber);font-weight:900}.modal-card h3{margin:0;color:var(--navy)}.modal-card p{color:#6e808d;line-height:1.6}.modal-actions{display:flex;justify-content:center;gap:10px}.toast{position:fixed;left:50%;bottom:25px;transform:translate(-50%,20px);background:#263f51;color:#fff;padding:10px 16px;border-radius:10px;opacity:0;pointer-events:none;transition:.2s;z-index:30}.toast.show{opacity:1;transform:translate(-50%,0)}
@media(max-width:900px){.flow-hint{display:none}.review-col{width:290px}.export-panel .section-head{align-items:flex-start;flex-wrap:wrap}.export-options{margin-left:45px}.export-settings{grid-template-columns:1fr}.more-info-grid{grid-template-columns:1fr}}
@media(max-width:600px){.app-header{padding:18px 12px 8px}.brand-mark{width:42px;height:42px}.brand-copy h1{font-size:22px}.brand-copy p{font-size:12px}.app-shell{padding:8px 10px 36px;gap:11px}.workspace{padding:14px;border-radius:15px}.section-head{gap:9px;margin-bottom:13px}.section-number{width:29px;height:29px}.section-head h2{font-size:18px}.section-head p{font-size:12px}.address-input{min-height:150px;font-size:15px;padding:11px}.input-actions{display:grid;grid-template-columns:1fr 1fr}.input-actions .btn,.input-actions .text-btn{width:100%}.input-actions .primary{grid-column:1/-1}.help-chip{display:none}.simple-batchbar{display:grid;grid-template-columns:1fr 1fr}.simple-batchbar strong{grid-column:1/-1}.batch-divider{display:none}.simple-batchbar .btn,.simple-batchbar .text-btn{width:100%}.clear-review{margin:0}.table-wrap{-webkit-overflow-scrolling:touch}.simple-table-wrap table{min-width:760px}.review-col{width:300px}.advanced-tools{overflow:hidden}.filterbar{display:grid;grid-template-columns:1fr 1fr}.filter{width:100%}.table-search{grid-column:1/-1;margin:0;display:grid;grid-template-columns:auto 1fr}.table-search input{min-width:0;width:100%}.pager{justify-content:space-between;flex-wrap:wrap}.pager label{width:100%}.export-options{margin:0 0 0 38px;width:calc(100% - 38px)}.export-options[open]{min-width:0}.preview{padding:5px}.export-actions{display:grid;grid-template-columns:1fr 1fr}.export-actions .btn{min-width:0;width:100%}.modal-actions{display:grid;grid-template-columns:1fr}.match-detail-grid{grid-template-columns:1fr}.toast{left:12px;right:12px;bottom:12px;transform:translateY(20px);text-align:center}.toast.show{transform:translateY(0)}}

.has-results .address-input{min-height:112px;max-height:150px}.has-results .input-panel{padding-bottom:19px}


.quick-resolve{display:flex;align-items:center;justify-content:space-between;gap:14px;margin:0 0 14px;padding:14px 16px;border:1px solid #efd2a2;border-radius:14px;background:#fff8eb;color:#76501a}.quick-resolve div{display:grid;gap:3px}.quick-resolve strong{font-size:15px;color:#68420d}.quick-resolve span{font-size:13px;line-height:1.6}.preview-status{margin:0 0 10px;padding:10px 14px;border-radius:12px;background:#eef5fa;color:#35566d;font-size:14px;font-weight:700}.preview-status.warn{background:#fff4df;color:#805314}.preview{overflow:auto;background:#eaf0f4;padding:12px;border-radius:16px}.preview canvas{display:block;width:100%;min-width:980px;height:auto;background:#fff;border-radius:12px;box-shadow:0 6px 20px rgba(35,57,73,.08)}
.preview-dialog{width:min(96vw,1700px);max-width:none;height:94vh;border:0;border-radius:18px;padding:0;box-shadow:0 30px 90px rgba(15,35,50,.3)}.preview-dialog::backdrop{background:rgba(20,35,48,.72)}.preview-dialog-head{height:64px;display:flex;align-items:center;justify-content:space-between;padding:0 20px;border-bottom:1px solid var(--line);background:#fff;color:var(--navy);font-size:18px;position:sticky;top:0;z-index:2}.preview-dialog-body{height:calc(94vh - 64px);overflow:auto;background:#dfe7ec;padding:18px}.preview-dialog-body canvas{display:block;width:auto;max-width:none;height:auto;background:#fff;box-shadow:0 10px 30px rgba(30,50,65,.15)}
.object-suggest{font-weight:700;color:#795016;margin:5px 0}.candidate-select{font-size:15px;min-height:44px}.quality{font-size:15px;line-height:1.65}.raw-address{font-size:16px}.object-main{font-size:16px}.location-detail{font-size:14px}.review-choice{font-size:14px;min-height:42px}.export-actions{justify-content:flex-start}
@media(max-width:760px){.preview canvas{min-width:850px}.quick-resolve{align-items:flex-start;flex-direction:column}.preview-dialog{width:100vw;height:100vh;border-radius:0}.preview-dialog-body{height:calc(100vh - 64px)}}


.simple-table-wrap tbody tr,.simple-batchbar,.advanced-tools .filterbar{-webkit-user-select:none;user-select:none}
.simple-table-wrap input,.simple-table-wrap select,.simple-table-wrap button,.simple-table-wrap summary,.simple-table-wrap details{-webkit-user-select:auto;user-select:auto}


.date-range-card{margin-top:12px;display:flex;align-items:center;gap:10px;flex-wrap:wrap;padding:12px 14px;border:1px solid #d8e3e9;border-radius:13px;background:#f8fbfc}.date-range-card>strong{color:var(--navy);margin-right:2px}.date-range-card label{display:flex;align-items:center;gap:7px;color:#667b89;font-size:13px}.date-range-card input{min-height:40px;padding:8px 10px;border:1px solid #c8d6de;border-radius:9px;background:#fff;color:var(--text)}.date-range-card small{color:#738694;margin-left:auto}.date-separator{color:#84939d}
@media(max-width:700px){.date-range-card{display:grid;grid-template-columns:auto 1fr auto 1fr}.date-range-card>strong{grid-column:1/-1}.date-range-card label{display:grid;grid-template-columns:auto 1fr}.date-range-card input{min-width:0;width:100%}.date-range-card small{grid-column:1/-1;margin:0}.date-separator{text-align:center}}


.heat-note{color:#617d8e;font-size:13px}



:root{
  --bg:#f2f5f4;--card:rgba(255,255,255,.97);--text:#273842;--muted:#74848d;--line:#dfe7e5;
  --navy:#17384d;--blue:#2f6f73;--blue-soft:#edf6f5;--green:#2f7b62;--green-soft:#edf7f2;
  --red:#b0524a;--red-soft:#fbefed;--purple:#6f5a91;--purple-soft:#f3eff8;--amber:#9b702f;--amber-soft:#fbf4e8;
  --teal:#2f6f73;--teal-deep:#235b60;--surface:#f7f9f8;--shadow:0 10px 30px rgba(30,52,61,.055)
}
body{
  min-height:100vh;
  background:
    radial-gradient(circle at 12% 0%,rgba(90,151,144,.10),transparent 32rem),
    radial-gradient(circle at 100% 12%,rgba(49,91,119,.055),transparent 30rem),
    linear-gradient(180deg,#f7f9f8 0%,#eef3f2 100%);
  color:var(--text);font-size:15px;letter-spacing:.002em
}
body::before{content:"";position:fixed;inset:0;pointer-events:none;z-index:-1;background:linear-gradient(90deg,rgba(255,255,255,.24),transparent 24%,transparent 76%,rgba(255,255,255,.2))}
.app-header{max-width:1320px;padding:30px 28px 16px;align-items:center;justify-content:space-between;gap:20px}
.brand-group{display:flex;align-items:center;gap:14px;min-width:0}.brand-mark{width:46px;height:46px;border-radius:14px;background:linear-gradient(145deg,#1d4358,#357b78);box-shadow:0 8px 22px rgba(27,67,79,.17);font-size:21px}.brand-copy{min-width:0}.brand-kicker{display:block;margin-bottom:3px;color:#6d8787;font-size:11px;font-weight:700;letter-spacing:.16em}.brand-copy h1{font-size:28px;font-weight:720;letter-spacing:-.025em}.brand-copy p{margin-top:4px;color:#7a898f;font-size:13px}.header-side{margin-left:auto;display:flex;align-items:center;gap:12px}.presentation-toggle{appearance:none;border:1px solid rgba(47,111,115,.22);background:rgba(255,255,255,.82);color:var(--teal-deep);border-radius:999px;padding:9px 15px;font-weight:700;cursor:pointer;box-shadow:0 4px 14px rgba(32,70,75,.055);transition:.18s}.presentation-toggle:hover:not(:disabled){transform:translateY(-1px);border-color:rgba(47,111,115,.42);box-shadow:0 7px 18px rgba(32,70,75,.09)}.presentation-toggle:disabled{opacity:.42;cursor:not-allowed}.flow-hint{margin:0;padding:7px 10px;border:1px solid rgba(42,77,91,.08);border-radius:999px;background:rgba(255,255,255,.62);gap:7px;color:#7b898f}.flow-hint b{width:22px;height:22px;background:#e8f0ee;color:#315e62}.flow-hint i{width:18px;background:#d7e2df}
.app-shell{max-width:1320px;padding:12px 28px 68px;gap:20px}.workspace{position:relative;overflow:visible;padding:26px;border:1px solid rgba(46,78,88,.09);border-radius:22px;background:var(--card);box-shadow:var(--shadow);backdrop-filter:blur(8px)}.workspace::after{content:"";position:absolute;left:24px;right:24px;top:0;height:1px;background:linear-gradient(90deg,transparent,rgba(68,126,125,.22),transparent)}
.section-head{gap:12px;margin-bottom:19px}.section-number{width:34px;height:34px;background:#e7f0ee;color:#2e686a;box-shadow:inset 0 0 0 1px rgba(47,111,115,.08);font-weight:800}.section-head h2{margin-top:0;color:#1d3b4c;font-size:22px;font-weight:720;letter-spacing:-.015em}.section-head p{color:#7b8a90;font-size:13px}.help-chip{background:#f5f8f7;color:#72848b;border:1px solid #e4ebe9;padding:7px 11px}
.input-panel{background:linear-gradient(145deg,rgba(255,255,255,.985),rgba(249,252,251,.98))}.address-input{min-height:164px;border-color:#d7e1df;border-radius:15px;background:#fff;padding:16px 17px;box-shadow:inset 0 1px 2px rgba(30,57,67,.025);line-height:1.72}.address-input:hover{border-color:#c7d6d3}.address-input:focus,input:focus,select:focus,textarea:focus{outline:3px solid rgba(47,111,115,.10);border-color:#83aaa7}.date-range-card{border:0;border-radius:14px;background:#f4f8f7;box-shadow:inset 0 0 0 1px rgba(49,91,96,.075);padding:13px 15px}.date-range-card>strong{color:#31565e}.date-range-card input{border-color:#d6e1de;border-radius:10px}.date-range-card small{color:#7c8c91}.input-actions,.export-actions{gap:9px;margin-top:14px}.btn{border-color:#d6e0de;border-radius:12px;background:rgba(255,255,255,.94);color:#425960;padding:10px 15px;font-weight:650;box-shadow:none}.btn:hover:not(:disabled){transform:translateY(-1px);border-color:#bfcfcb;box-shadow:0 6px 16px rgba(34,61,68,.07)}.btn.primary{border-color:transparent;background:linear-gradient(135deg,#2f7274,#285f65);color:#fff;box-shadow:0 8px 20px rgba(39,101,104,.19)}.btn.primary:hover:not(:disabled){box-shadow:0 11px 24px rgba(39,101,104,.24)}.btn.quiet{background:#f6f8f7}.text-btn{color:#47777a;font-weight:650}.match-summary{border-radius:12px;padding:11px 14px}.match-summary.neutral{background:#f5f7f6}.match-summary.good{background:#edf7f2}.match-summary.warn{background:#fbf4e8}
.result-panel{padding-bottom:25px}.quality{border:1px solid rgba(155,112,47,.12);background:#fcf6ec;color:#8c6326;font-weight:650}.quick-resolve{border-color:rgba(159,112,37,.17);background:#fcf7ed}.simple-batchbar{position:sticky;top:10px;z-index:6;margin-bottom:12px;padding:10px 11px;border:1px solid rgba(54,82,90,.08);border-radius:14px;background:rgba(248,250,249,.92);box-shadow:0 8px 20px rgba(31,55,64,.045);backdrop-filter:blur(13px)}.simple-batchbar strong{color:#2d4a57}.batch-divider{background:#dce5e2}.review-good{background:#edf7f2;border-color:#c9e3d6}.review-bad{background:#fbefed;border-color:#ecd0cc}.review-exempt{background:#f3eff8;border-color:#ddd3e8}.table-wrap{border-color:#e0e8e6;border-radius:16px;background:#fff;box-shadow:inset 0 1px 0 rgba(255,255,255,.8)}.simple-table-wrap table{background:#fff}th,td{border-bottom-color:#e8eeec}th{background:rgba(247,249,248,.96);color:#687c83;font-weight:700;backdrop-filter:blur(10px)}tbody tr{cursor:pointer}tbody tr:hover{background:#f8fbfa}tbody tr.selected{background:#eef7f5;box-shadow:inset 3px 0 0 #4b8985}tbody tr:focus{outline:2px solid rgba(47,111,115,.16);outline-offset:-2px}.raw-address{color:#263f4b;font-weight:680}.object-main{color:#2b4653;font-weight:680}.location-detail{color:#7b8b90}.match-details summary{color:#678285}.match-detail-grid{border:1px solid #e7eceb;background:#f8faf9}.candidate-select{border-color:#d4dfdc;border-radius:10px}.pill{font-weight:750;letter-spacing:.01em}.pill.exact,.pill.detail{background:#edf7f2}.pill.site{background:#edf5f7}.pill.review,.pill.choice{background:#fbf4e8}.review-switch{gap:6px}.review-choice{min-height:40px;border-color:#dce4e2;border-radius:10px;color:#667b82;font-weight:650}.review-choice:hover{background:#f7f9f8}.review-choice[data-value="已复查"].active{background:#e9f5ef;border-color:#abd2bf}.review-choice[data-value="未复查"].active{background:#faecea;border-color:#e4b8b3}.review-choice[data-value="无需复查"].active{background:#f1edf7;border-color:#cdbde0}.advanced-tools,.export-options,.more-info{border-color:#e2e9e7;background:#fafcfb}.advanced-tools summary,.export-options summary,.more-info summary{color:#667d83}.filter{border-color:#e0e7e5;color:#687d84}.filter.active{background:#397a7b;border-color:#397a7b}.table-search input{border-color:#d7e1df}
.export-panel{background:linear-gradient(145deg,rgba(255,255,255,.99),rgba(248,251,250,.98));box-shadow:0 14px 38px rgba(29,55,64,.065)}.preview-status{border:1px solid rgba(55,102,113,.07);background:#f1f7f7;color:#47656f;font-weight:650}.preview-status.warn{border-color:rgba(155,112,47,.12);background:#fcf5e9;color:#805b27}.preview{padding:12px;border:1px solid rgba(52,82,91,.075);border-radius:18px;background:linear-gradient(145deg,#e9efee,#f2f5f4);box-shadow:inset 0 1px 0 rgba(255,255,255,.9)}.preview canvas{border-radius:13px;box-shadow:0 10px 28px rgba(26,48,57,.09)}.export-actions{justify-content:center;padding-top:2px}.export-actions .btn{min-width:148px}.export-options{background:#f8faf9}.more-info{margin-top:14px}.more-info-grid textarea{border-color:#dce5e2;background:#fff}.version-info{color:#74858b}.modal-card{border:1px solid rgba(50,82,91,.08);box-shadow:0 24px 80px rgba(21,44,54,.22)}

/* Presentation mode: a clean, public-facing page without workbench controls. */
body.presentation-view{background:#f4f7f6}.presentation-view .app-header{position:sticky;top:0;z-index:20;max-width:none;padding:14px 24px;border-bottom:1px solid rgba(45,77,86,.08);background:rgba(255,255,255,.91);box-shadow:0 6px 22px rgba(27,50,58,.055);backdrop-filter:blur(16px)}.presentation-view .brand-mark{width:40px;height:40px;border-radius:12px;font-size:19px}.presentation-view .brand-kicker,.presentation-view .brand-copy p,.presentation-view .flow-hint{display:none}.presentation-view .brand-copy h1{font-size:22px}.presentation-view .presentation-toggle{background:#285f65;color:#fff;border-color:#285f65}.presentation-view .app-shell{max-width:none;padding:18px 20px 28px;display:block}.presentation-view .input-panel,.presentation-view .result-panel,.presentation-view .export-panel>.section-head,.presentation-view .preview-status,.presentation-view .export-actions,.presentation-view .more-info{display:none!important}.presentation-view .export-panel{padding:0;border:0;border-radius:0;background:transparent;box-shadow:none}.presentation-view .export-panel::after{display:none}.presentation-view .preview{padding:0;border:0;border-radius:0;background:transparent;box-shadow:none}.presentation-view .preview canvas{width:100%;min-width:1180px;border-radius:17px;box-shadow:0 16px 44px rgba(25,48,57,.10)}

@media(max-width:980px){.header-side{gap:8px}.flow-hint{display:none}.app-header{padding-left:20px;padding-right:20px}.app-shell{padding-left:20px;padding-right:20px}.simple-batchbar{position:static}.presentation-view .app-shell{padding:12px}}
@media(max-width:600px){body{background:#f3f6f5}.app-header{padding:17px 12px 9px}.brand-group{gap:10px}.brand-kicker{font-size:9px;letter-spacing:.11em}.brand-copy h1{font-size:21px}.header-side{margin-left:auto}.presentation-toggle{padding:8px 11px;font-size:12px}.app-shell{padding:8px 10px 38px}.workspace{padding:15px;border-radius:17px}.workspace::after{left:16px;right:16px}.section-head h2{font-size:19px}.address-input{min-height:145px}.date-range-card{border-radius:12px}.preview{border-radius:14px}.presentation-view .app-header{padding:10px 12px}.presentation-view .brand-mark{width:36px;height:36px}.presentation-view .brand-copy h1{font-size:18px}.presentation-view .app-shell{padding:8px}.presentation-view .preview canvas{min-width:920px;border-radius:12px}}



:root{--canvas:#f4f6f4;--card:#fffdfa;--line:#e1e8e5;--text:#263f47;--muted:#73848a;--teal:#356f70;--teal-deep:#285b60;--shadow:0 7px 24px rgba(31,55,62,.045)}
body{background:linear-gradient(180deg,#f8f9f7 0%,#f1f4f2 52%,#edf2f0 100%);font-size:15px}
body::before{background:radial-gradient(circle at 14% -8%,rgba(68,125,119,.075),transparent 32rem),radial-gradient(circle at 100% 10%,rgba(71,104,119,.045),transparent 30rem)}
.app-header{max-width:1380px;padding:25px 30px 14px}.brand-mark{background:linear-gradient(145deg,#2a5b68,#3d7976);box-shadow:0 6px 18px rgba(34,78,85,.13)}.brand-copy h1{font-size:27px}.brand-copy p{color:#78878b}.brand-kicker{color:#748b88}.flow-hint{background:rgba(255,255,255,.76);border-color:rgba(49,88,91,.07)}
.app-shell{max-width:1380px;gap:18px;padding-top:10px}.workspace{padding:27px 29px;border:1px solid rgba(54,82,86,.075);border-radius:19px;background:rgba(255,255,255,.96);box-shadow:var(--shadow)}.workspace::after{display:none}
.section-head{margin-bottom:18px}.section-number{width:32px;height:32px;background:#edf4f2;color:#356f70;box-shadow:none}.section-head h2{font-size:21px}.section-head p{color:#7b898d}
.address-input{border-color:#dce4e1;background:#fffefd;box-shadow:inset 0 1px 2px rgba(31,56,62,.02)}.date-range-card{background:#f5f8f6;box-shadow:none;border:1px solid #e5ebe8}.input-actions{padding-top:2px}.btn{border-color:#dbe3e0;background:#fff;color:#476066}.btn.primary{background:#326c6e;box-shadow:0 6px 16px rgba(42,102,104,.16)}.btn.primary:hover:not(:disabled){background:#2c6265;box-shadow:0 8px 18px rgba(42,102,104,.19)}
.simple-batchbar{top:8px;border-color:#e4eae8;background:rgba(250,251,250,.94);box-shadow:0 5px 16px rgba(31,55,62,.035)}.table-wrap{border-color:#e4eae8;box-shadow:none}th{background:#f7f9f7;color:#657980}tbody tr:hover{background:#fafcfa}tbody tr.selected{background:#eff7f4;box-shadow:inset 3px 0 0 #5b8f88}.review-choice{background:#fff}.advanced-tools,.export-options,.more-info{background:#fafbf9;border-color:#e5ebe8}
.export-panel{box-shadow:0 9px 28px rgba(29,55,62,.05)}.preview-status{background:#f3f7f6}.preview{background:#eef2f0;border-color:#e2e8e5;box-shadow:none}.preview canvas{box-shadow:0 8px 25px rgba(27,50,57,.075)}.export-actions{margin-top:16px;padding:13px;border-radius:15px;background:#f7f9f7;border:1px solid #e7ecea}.export-actions .btn{min-width:168px}
.presentation-toggle{background:#fff;border-color:#dbe5e2;color:#396d6d}.presentation-toggle:hover:not(:disabled){border-color:#a9c5c0}.presentation-view .presentation-toggle{background:#326c6e;border-color:#326c6e}
.match-summary{font-weight:650}.quality,.quick-resolve{border-radius:13px}.pill{border-radius:999px}.object-main,.raw-address{font-weight:670}
@media(max-width:600px){.workspace{padding:15px 14px}.export-actions{padding:9px}.export-actions .btn{min-width:0}.brand-copy p{display:none}}



:root{--surface:#fff;--surface-warm:#fffefa;--surface-soft:#f6f8f7;--hairline:rgba(40,65,72,.10);--ink:#233c45;--subtle:#728287;--accent:#2e6d70;--accent-pressed:#245b60;--ease-spring:cubic-bezier(.2,.82,.2,1)}
html{scroll-behavior:smooth}body{font-family:-apple-system,BlinkMacSystemFont,"Segoe UI","Microsoft YaHei",sans-serif;background:linear-gradient(180deg,#fbfcfb 0%,#f4f6f4 42%,#eef2f0 100%);color:var(--ink)}
.app-header{position:sticky;top:0;z-index:18;max-width:none;padding:18px max(22px,calc((100vw - 1380px)/2 + 28px));border-bottom:1px solid rgba(38,68,74,.075);background:rgba(251,252,251,.84);backdrop-filter:saturate(150%) blur(22px);box-shadow:0 7px 28px rgba(25,48,55,.035)}
.brand-mark{border:1px solid rgba(255,255,255,.52);background:linear-gradient(145deg,#346e78,#2d7770);box-shadow:inset 0 1px 0 rgba(255,255,255,.30),0 8px 22px rgba(40,91,95,.16)}.brand-copy h1{font-size:25px;letter-spacing:-.025em}.brand-copy p{font-size:13px}.brand-kicker{letter-spacing:.13em}
.app-shell{padding-top:22px;gap:20px}.workspace{border-radius:24px;border:1px solid var(--hairline);background:linear-gradient(180deg,rgba(255,255,255,.99),rgba(255,254,250,.97));box-shadow:0 1px 0 rgba(255,255,255,.9) inset,0 14px 44px rgba(31,55,62,.045);transition:box-shadow .28s ease,transform .28s var(--ease-spring)}
.workspace:hover{box-shadow:0 1px 0 rgba(255,255,255,.95) inset,0 18px 48px rgba(31,55,62,.058)}
.analysis-context{display:grid;grid-template-columns:minmax(360px,.9fr) minmax(520px,1.25fr);gap:12px;margin-bottom:14px}.topic-card,.date-range-card{min-height:78px;border:1px solid rgba(44,75,80,.08);border-radius:17px;background:rgba(246,249,247,.86);box-shadow:inset 0 1px 0 rgba(255,255,255,.85)}
.topic-card{display:flex;align-items:center;gap:18px;padding:13px 15px}.context-copy{min-width:142px;display:flex;flex-direction:column;gap:3px}.context-copy strong{font-size:14px;color:#35535b}.context-copy small{font-size:11px;line-height:1.45;color:#819095}.topic-controls{display:grid;grid-template-columns:145px minmax(160px,1fr);gap:8px;flex:1}.topic-controls select,.topic-controls input{width:100%;min-height:43px;border:1px solid #d8e1df;border-radius:12px;background:rgba(255,255,255,.96);padding:0 12px;color:#304b52;font-weight:650;transition:border-color .18s ease,box-shadow .18s ease,transform .18s var(--ease-spring)}
.topic-controls select:hover,.topic-controls input:hover{border-color:#b9ceca}.topic-controls select:focus,.topic-controls input:focus{border-color:#74a8a2;box-shadow:0 0 0 4px rgba(53,125,119,.09)}
.btn,.text-btn,.review-choice,.filter,.presentation-toggle{transition:transform .18s var(--ease-spring),box-shadow .18s ease,border-color .18s ease,background-color .18s ease,opacity .18s ease;touch-action:manipulation}.btn:hover:not(:disabled),.presentation-toggle:hover:not(:disabled){transform:translateY(-1px)}.btn:active:not(:disabled),.presentation-toggle:active:not(:disabled),.review-choice:active,.filter:active{transform:scale(.975)}
.btn.primary{background:linear-gradient(180deg,#397c7d,#2e696d);box-shadow:inset 0 1px 0 rgba(255,255,255,.20),0 8px 19px rgba(38,101,103,.18)}.btn.primary:active:not(:disabled){background:var(--accent-pressed);box-shadow:inset 0 2px 4px rgba(13,55,59,.17),0 3px 9px rgba(38,101,103,.14)}
.address-input{border-radius:17px;transition:border-color .2s ease,box-shadow .2s ease,background-color .2s ease}.address-input:focus{background:#fff;box-shadow:0 0 0 4px rgba(54,124,119,.075),inset 0 1px 2px rgba(31,56,62,.02)}
.simple-batchbar{border-radius:17px;background:rgba(249,251,250,.84);backdrop-filter:saturate(135%) blur(18px)}.table-wrap{border-radius:18px}.export-panel{border-radius:26px}.preview{border-radius:21px}.preview canvas{border-radius:16px}.export-actions{border-radius:18px;background:rgba(248,250,249,.82);backdrop-filter:blur(12px)}
.help-chip,.pill{transition:transform .18s var(--ease-spring),background-color .18s ease}.help-chip:active,.pill:active{transform:scale(.98)}
@media(max-width:1050px){.analysis-context{grid-template-columns:1fr}.topic-card{min-height:auto}.date-range-card{min-height:auto}}
@media(max-width:600px){.app-header{position:relative;padding:17px 13px 10px}.brand-copy h1{font-size:19px}.analysis-context{gap:9px}.topic-card{display:block;padding:12px}.context-copy{margin-bottom:9px;min-width:0}.topic-controls{grid-template-columns:1fr}.workspace{border-radius:20px}.workspace:hover{box-shadow:0 1px 0 rgba(255,255,255,.95) inset,0 12px 35px rgba(31,55,62,.04)}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.workspace,.btn,.text-btn,.review-choice,.filter,.presentation-toggle,.topic-controls select,.topic-controls input,.help-chip,.pill{transition:none!important}.btn:hover:not(:disabled),.presentation-toggle:hover:not(:disabled){transform:none}}



:root{--focus:#146c72;--smart-good:#2d735d;--smart-warn:#9a681f;--smart-bad:#aa463d;--smart-neutral:#60777d}
.header-side{flex-wrap:wrap}.header-ready{display:inline-flex;align-items:center;gap:8px;min-height:36px;padding:7px 12px;border-radius:999px;border:1px solid rgba(49,88,91,.10);background:rgba(255,255,255,.72);color:#5e747a;font-size:12px;font-weight:720;backdrop-filter:blur(16px);transition:color .2s ease,border-color .2s ease,background .2s ease}.ready-dot{width:8px;height:8px;border-radius:50%;background:#9aabad;box-shadow:0 0 0 4px rgba(145,164,166,.12)}.header-ready.good{color:#2d735d;border-color:rgba(45,115,93,.16);background:rgba(239,248,243,.87)}.header-ready.good .ready-dot{background:#2d735d;box-shadow:0 0 0 4px rgba(45,115,93,.12)}.header-ready.warn{color:#91631f;border-color:rgba(154,104,31,.16);background:rgba(255,248,234,.90)}.header-ready.warn .ready-dot{background:#b07a28;box-shadow:0 0 0 4px rgba(176,122,40,.12)}.header-ready.bad{color:#a3463e;border-color:rgba(170,70,61,.16);background:rgba(254,242,240,.90)}.header-ready.bad .ready-dot{background:#b94d43;box-shadow:0 0 0 4px rgba(185,77,67,.12)}
.smart-panel{margin-top:14px;display:grid;grid-template-columns:minmax(330px,1.25fr) auto auto;gap:16px;align-items:center;padding:16px 17px;border:1px solid rgba(42,73,77,.09);border-radius:18px;background:linear-gradient(135deg,rgba(248,251,249,.97),rgba(243,248,246,.91));box-shadow:inset 0 1px 0 rgba(255,255,255,.85);animation:smartReveal .28s cubic-bezier(.2,.82,.2,1)}.smart-leading{display:flex;align-items:center;gap:13px;min-width:0}.smart-orb{width:42px;height:42px;flex:0 0 auto;display:grid;place-items:center;border-radius:14px;background:#e8f1ef;color:#356f70;font-size:20px;font-weight:850;box-shadow:inset 0 1px 0 #fff}.smart-copy{min-width:0}.smart-kicker{display:block;color:#7f9194;font-size:10px;font-weight:800;letter-spacing:.14em;margin-bottom:2px}.smart-copy strong{display:block;color:#294850;font-size:16px;letter-spacing:-.01em}.smart-copy p{margin:4px 0 0;color:#74868a;font-size:12px;line-height:1.55}.smart-panel[data-tone="good"] .smart-orb{background:#e4f4eb;color:#2d735d}.smart-panel[data-tone="warn"] .smart-orb{background:#fff0d7;color:#996718}.smart-panel[data-tone="bad"] .smart-orb{background:#fde7e4;color:#aa463d}.smart-checks{display:flex;gap:7px;flex-wrap:wrap;justify-content:flex-end}.smart-check{display:inline-flex;align-items:center;min-height:30px;padding:5px 10px;border-radius:999px;font-size:11px;font-weight:720;border:1px solid transparent}.smart-check.good{background:#eaf7f0;color:#2d735d;border-color:rgba(45,115,93,.10)}.smart-check.warn{background:#fff4df;color:#94631e;border-color:rgba(148,99,30,.10)}.smart-check.neutral{background:#eef2f1;color:#657a7f}.smart-actions{display:flex;gap:8px;justify-content:flex-end;flex-wrap:wrap}.smart-actions .btn{white-space:nowrap}.insight-summary{display:inline-flex;margin-top:5px;padding:4px 9px;border-radius:999px;background:#eef5f3;color:#567277;font-size:11px;font-weight:700}
.workspace{position:relative}.workspace.is-complete>.section-head .section-number{background:#e4f4eb;color:#2d735d}.workspace.is-complete>.section-head .section-number::after{content:'✓';font-size:13px}.workspace.is-complete>.section-head .section-number{font-size:0}.is-processing .input-panel{cursor:progress}.is-processing #matchBtn{position:relative;padding-left:42px}.is-processing #matchBtn::before{content:'';position:absolute;left:18px;width:14px;height:14px;border:2px solid rgba(255,255,255,.45);border-top-color:#fff;border-radius:50%;animation:spin .7s linear infinite}
button:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible,summary:focus-visible,[tabindex]:focus-visible{outline:2px solid var(--focus)!important;outline-offset:3px;box-shadow:0 0 0 3px rgba(20,108,114,.10)!important}.btn,.presentation-toggle,.review-choice,.filter,.text-btn{min-height:42px}.review-choice{min-height:44px}.topic-controls select,.topic-controls input,.date-range-card input{min-height:44px}
@keyframes smartReveal{from{opacity:0;transform:translateY(5px)}to{opacity:1;transform:none}}@keyframes spin{to{transform:rotate(360deg)}}
@media(max-width:1100px){.smart-panel{grid-template-columns:1fr}.smart-checks,.smart-actions{justify-content:flex-start}}
@media(max-width:600px){.header-ready{display:none}.smart-panel{padding:14px;border-radius:16px;gap:12px}.smart-copy strong{font-size:15px}.smart-checks{display:grid;grid-template-columns:repeat(3,1fr);width:100%}.smart-check{justify-content:center;padding:5px 5px}.smart-actions{display:grid;grid-template-columns:1fr}.smart-actions .btn{width:100%}}
@media(prefers-reduced-motion:reduce){.smart-panel{animation:none}.is-processing #matchBtn::before{animation-duration:1.4s}}



:root{--v14-accent:#176b72;--v14-accent-2:#2f7f79;--v14-line:rgba(43,70,76,.085);--v14-shadow:0 18px 55px rgba(34,55,61,.055);--v14-ease:cubic-bezier(.2,.78,.2,1)}
body{background:radial-gradient(circle at 18% -10%,rgba(100,159,150,.10),transparent 34%),radial-gradient(circle at 95% 8%,rgba(117,146,184,.075),transparent 28%),linear-gradient(180deg,#fbfcfb 0%,#f5f7f5 48%,#eef2f0 100%)}
.app-header{background:rgba(251,252,251,.88);box-shadow:0 1px 0 rgba(255,255,255,.9) inset,0 10px 35px rgba(35,55,61,.035)}
.autosave-status{display:inline-flex;align-items:center;gap:7px;min-height:34px;padding:6px 10px;border-radius:999px;color:#718387;font-size:11px;font-weight:690;background:rgba(255,255,255,.66);border:1px solid rgba(44,74,78,.08)}
.autosave-dot{width:7px;height:7px;border-radius:50%;background:#7aa49c;box-shadow:0 0 0 4px rgba(122,164,156,.12)}.autosave-status.saving .autosave-dot{animation:autosavePulse 1s ease infinite}.autosave-status.saved{color:#4e746d}.autosave-status.error{color:#a14b43}
.workspace{box-shadow:0 1px 0 rgba(255,255,255,.96) inset,var(--v14-shadow);border-color:var(--v14-line)}
.workspace::before{content:'';position:absolute;inset:0;border-radius:inherit;pointer-events:none;background:linear-gradient(135deg,rgba(255,255,255,.32),transparent 28%)}
.section-head{position:relative;z-index:1}.section-number{box-shadow:inset 0 1px 0 rgba(255,255,255,.28),0 8px 20px rgba(41,103,104,.12)}
.date-range-card{flex-wrap:wrap}.date-presets{width:100%;display:flex;flex-wrap:wrap;gap:6px;padding-top:2px}.date-preset{border:0;background:transparent;color:#668087;padding:5px 9px;border-radius:999px;font:700 11px inherit;cursor:pointer;transition:background .18s ease,color .18s ease,transform .18s var(--v14-ease)}.date-preset:hover{background:#e8f1ef;color:#276c6c}.date-preset:active{transform:scale(.96)}
.smart-clean{color:#2d6b6d;border-color:rgba(45,107,109,.18);background:linear-gradient(180deg,#fbfefe,#f0f7f5)}
.readiness-ring{position:relative;width:48px;height:48px;border-radius:50%;display:flex!important;flex-direction:column;align-items:center;justify-content:center;background:conic-gradient(var(--v14-accent) calc(var(--score,0)*1%),#dfe9e6 0)!important;color:#285c61!important;box-shadow:0 0 0 5px rgba(255,255,255,.92) inset,0 8px 20px rgba(43,95,96,.10)!important}.readiness-ring::after{content:'';position:absolute;inset:6px;border-radius:50%;background:#fbfdfc;z-index:0}.readiness-ring span,.readiness-ring small{position:relative;z-index:1}.readiness-ring span{font-size:15px;font-weight:850;line-height:1}.readiness-ring small{font-size:8px;margin-top:1px;color:#769093}
.analysis-head{display:flex;align-items:center;justify-content:space-between;gap:12px}.analysis-head label{display:flex;align-items:center;gap:7px;color:#75878b;font-size:11px}.analysis-head select{min-height:34px;border:1px solid #d9e2df;border-radius:10px;background:#fff;padding:0 9px;color:#405b61}
.action-dock{position:fixed;z-index:40;left:50%;bottom:18px;transform:translateX(-50%);width:min(880px,calc(100vw - 28px));display:flex;align-items:center;justify-content:space-between;gap:16px;padding:10px 12px 10px 15px;border:1px solid rgba(48,76,81,.12);border-radius:22px;background:rgba(251,252,251,.90);backdrop-filter:saturate(145%) blur(22px);box-shadow:0 18px 60px rgba(28,51,58,.16),inset 0 1px 0 rgba(255,255,255,.9);animation:dockIn .28s var(--v14-ease)}.dock-status{display:flex;align-items:center;gap:10px;min-width:0}.dock-status>span{display:grid;place-items:center;width:38px;height:38px;border-radius:13px;background:#e9f3f0;color:#2f706b;font-size:13px;font-weight:850}.dock-status div{min-width:0}.dock-status strong,.dock-status small{display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.dock-status strong{font-size:13px;color:#304d54}.dock-status small{font-size:10px;color:#819094;margin-top:2px}.dock-actions{display:flex;gap:7px}.action-dock.hidden{display:none}.presentation-view .action-dock{display:none!important}
.toast{display:flex;align-items:center;gap:12px}.toast-action{border:0;border-left:1px solid rgba(255,255,255,.24);background:transparent;color:#c7f4e8;font-weight:800;padding-left:12px;cursor:pointer}.toast-action.hidden{display:none}
.btn,.presentation-toggle,.review-choice,.filter,.date-preset{will-change:transform}.btn:hover:not(:disabled),.presentation-toggle:hover:not(:disabled){box-shadow:0 9px 24px rgba(35,75,79,.10);transform:translateY(-1px)}.btn:active:not(:disabled),.presentation-toggle:active:not(:disabled){transform:translateY(0) scale(.975)}
.match-details[open],.more-info[open],.export-options[open],.advanced-tools[open]{animation:softOpen .22s var(--v14-ease)}
@keyframes autosavePulse{50%{opacity:.35;transform:scale(.72)}}@keyframes dockIn{from{opacity:0;transform:translate(-50%,8px)}to{opacity:1;transform:translate(-50%,0)}}@keyframes softOpen{from{opacity:.55;transform:translateY(-3px)}to{opacity:1;transform:none}}
@media(max-width:760px){.autosave-status{display:none}.date-presets{display:grid;grid-template-columns:repeat(4,1fr)}.date-preset{background:#f2f6f4}.action-dock{bottom:9px;padding:9px;border-radius:18px}.dock-status{display:none}.dock-actions{width:100%;display:grid;grid-template-columns:1.15fr 1fr 1fr}.dock-actions .btn{padding:0 7px;font-size:11px}.analysis-head{align-items:flex-start;flex-direction:column}.analysis-head label{width:100%;justify-content:space-between}.analysis-head select{flex:1}}
@media(prefers-reduced-motion:reduce){.autosave-status.saving .autosave-dot,.action-dock,.match-details[open],.more-info[open],.export-options[open],.advanced-tools[open]{animation:none!important}}

body.has-results{padding-bottom:96px}
@media(max-width:760px){body.has-results{padding-bottom:78px}}



:root{
  --warm-bg:#f8f1e8;--warm-surface:#fffdf8;--warm-soft:#fbf4ea;--warm-line:rgba(105,65,39,.105);
  --warm-ink:#4a3024;--warm-muted:#8b7466;--warm-accent:#d6742c;--warm-accent-deep:#b95b20;
  --warm-gold:#e9a13c;--warm-shadow:0 18px 54px rgba(103,61,32,.075);--warm-ease:cubic-bezier(.2,.82,.2,1)
}
body{background:radial-gradient(circle at 12% -8%,rgba(245,177,88,.16),transparent 32rem),radial-gradient(circle at 94% 5%,rgba(224,114,52,.09),transparent 29rem),linear-gradient(180deg,#fffaf3 0%,#f8f1e8 52%,#f2e9df 100%);color:var(--warm-ink)}
.app-header{background:rgba(255,250,243,.86);border-bottom-color:rgba(112,70,43,.09);box-shadow:0 10px 34px rgba(105,63,37,.05)}
.brand-group{gap:14px}.brand-logo{padding:0;overflow:hidden;background:#fff6e9;border:1px solid rgba(255,255,255,.9);box-shadow:0 10px 28px rgba(213,111,38,.18),inset 0 1px 0 rgba(255,255,255,.9)}.brand-logo img{display:block;width:100%;height:100%;object-fit:cover}.brand-copy h1{color:#4b3022}.brand-kicker{color:#a46c45}.brand-copy p{color:#8f7769}
.workspace{background:linear-gradient(180deg,rgba(255,253,248,.985),rgba(255,250,243,.965));border-color:var(--warm-line);box-shadow:0 1px 0 rgba(255,255,255,.95) inset,var(--warm-shadow)}.workspace:hover{box-shadow:0 1px 0 rgba(255,255,255,.96) inset,0 22px 60px rgba(103,61,32,.095)}
.section-number{background:linear-gradient(145deg,#f3a34d,#d86f2d);color:#fff;box-shadow:0 8px 20px rgba(214,111,45,.20)}.section-head h2,.more-info-grid h3{color:#4a3024}.section-head p,.context-copy small{color:#917a6c}
.topic-card,.date-range-card,.simple-batchbar,.advanced-tools,.export-options,.more-info,.export-actions{background:rgba(255,249,241,.84);border-color:rgba(113,71,44,.09)}
.address-input,.topic-controls select,.topic-controls input,.date-range-card input,.analysis-head select,.more-info-grid textarea{background:#fffdf9;border-color:#e6d7c9;color:#57392a}.address-input:focus,input:focus,textarea:focus,select:focus{border-color:#e1a064!important;outline-color:rgba(218,119,46,.13)!important;box-shadow:0 0 0 4px rgba(218,119,46,.09)!important}
.btn{border-color:#e6d7c9;background:#fffdfa;color:#6b4c3a}.btn.primary{background:linear-gradient(180deg,#e88b3d,#cf6727);border-color:#cf6727;color:#fff;box-shadow:inset 0 1px 0 rgba(255,255,255,.25),0 9px 22px rgba(200,91,30,.22)}.btn.primary:hover:not(:disabled){background:linear-gradient(180deg,#ee9848,#d66e29);box-shadow:0 11px 26px rgba(200,91,30,.27)}.btn:active:not(:disabled),.presentation-toggle:active:not(:disabled){transform:translateY(0) scale(.97)}.text-btn{color:#b75e28}
.presentation-toggle{color:#a45a2a;border-color:#ead2bd;background:rgba(255,253,248,.84)}.presentation-view .presentation-toggle{background:#d8732d;border-color:#d8732d;color:#fff}
.header-ready,.autosave-status,.flow-hint{background:rgba(255,253,248,.72);border-color:rgba(121,75,46,.09)}
.smart-panel{background:linear-gradient(135deg,rgba(255,249,239,.97),rgba(252,241,226,.93));border-color:rgba(128,78,47,.10)}.readiness-ring{background:conic-gradient(#dd7a31 calc(var(--score,0)*1%),#f0dfce 0)!important;color:#9f4f21!important}.readiness-ring::after{background:#fffaf3}.smart-clean{color:#a35d2e;border-color:rgba(183,92,38,.18);background:linear-gradient(180deg,#fffdfa,#fbefe3)}
.preview{background:linear-gradient(145deg,#f2e7dc,#fbf5ee);border-color:rgba(122,77,48,.10)}.preview canvas{background:#fffdf8;box-shadow:0 14px 36px rgba(103,61,32,.11)}
.table-wrap{border-color:#eaded3}th{background:#fbf5ee;color:#765c4d}tbody tr:hover{background:#fffaf4}tbody tr.selected{background:#fff1df;box-shadow:inset 3px 0 0 #dc7a32}.raw-address,.object-main{color:#54372a}
.analysis-sync-status{display:block;margin-top:3px;color:#9b806f;font-size:10px;font-weight:650}.analysis-sync-status.manual{color:#bd642b}.analysis-actions{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-top:8px}.more-info-grid textarea{min-height:150px;transition:border-color .18s ease,box-shadow .18s ease;background:#fffdf9}
.action-dock{background:rgba(255,249,241,.92);border-color:rgba(121,75,46,.12);box-shadow:0 20px 64px rgba(93,53,28,.18),inset 0 1px 0 rgba(255,255,255,.95)}.dock-status>span{background:#fff0dc;color:#b85e27}.dock-status strong{color:#5c3d2e}.dock-status small{color:#9a8274}
.toast{background:#5a3828}.toast-action{color:#ffd8b0}.modal{background:rgba(73,42,25,.40)}.modal-card{background:#fffaf3;border-color:rgba(112,69,42,.10)}
@media(prefers-reduced-motion:no-preference){.brand-logo img{transition:transform .35s var(--warm-ease),filter .35s ease}.brand-logo:hover img{transform:scale(1.045);filter:saturate(1.06) brightness(1.02)}}
@media(max-width:600px){.brand-logo{width:43px;height:43px;border-radius:14px}.brand-copy h1{font-size:20px}}



:root{
  --v16-bg:#f3ece4;--v16-surface:#fffdf9;--v16-surface-soft:#fbf5ee;
  --v16-ink:#34251f;--v16-secondary:#6a5448;--v16-muted:#745e52;
  --v16-line:rgba(92,60,41,.16);--v16-accent:#c76026;--v16-accent-dark:#a9481c;
  --v16-shadow:0 18px 54px rgba(72,42,25,.09);--v16-ease:cubic-bezier(.22,.8,.2,1)
}
body{background:radial-gradient(circle at 10% -8%,rgba(238,170,92,.17),transparent 34rem),radial-gradient(circle at 96% 4%,rgba(190,103,51,.09),transparent 30rem),linear-gradient(180deg,#fcf8f2 0%,#f5eee6 52%,#eee5dc 100%);color:var(--v16-ink)}
.app-header{background:rgba(252,248,242,.94);border-bottom:1px solid rgba(91,59,39,.12);box-shadow:0 10px 30px rgba(65,39,25,.055);backdrop-filter:saturate(125%) blur(18px)}
.workspace{background:linear-gradient(180deg,rgba(255,253,249,.995),rgba(252,247,240,.99));border-color:var(--v16-line);box-shadow:0 1px 0 rgba(255,255,255,.98) inset,var(--v16-shadow)}
.workspace:hover{box-shadow:0 1px 0 rgba(255,255,255,.98) inset,0 22px 58px rgba(72,42,25,.11)}
.brand-copy h1,.section-head h2,.more-info-grid h3,.smart-copy strong,.dock-status strong{color:var(--v16-ink)}
.brand-kicker{color:#8b5639}.brand-copy p,.section-head p,.context-copy small,.date-range-card small,.smart-copy p,.smart-kicker,.analysis-head label,.analysis-sync-status,.version-info,.location-detail,.object-suggest,.match-details summary,.preview-status,.flow-hint,.autosave-status,.dock-status small,.pager,.table-search span,.advanced-tools summary,.export-options summary,.more-info summary{color:var(--v16-secondary)}
.address-input::placeholder,input::placeholder,textarea::placeholder{color:#897267;opacity:1}
.topic-card,.date-range-card,.simple-batchbar,.advanced-tools,.export-options,.more-info,.export-actions,.match-detail-grid{background:rgba(255,250,244,.96);border-color:rgba(96,62,42,.14)}
.address-input,.topic-controls select,.topic-controls input,.date-range-card input,.analysis-head select,.more-info-grid textarea,.candidate-select,.table-search input{background:#fffefb;border-color:#d9c8ba;color:var(--v16-ink)}
.address-input:hover,.topic-controls select:hover,.topic-controls input:hover,.date-range-card input:hover,.more-info-grid textarea:hover{border-color:#c9ad98}
.address-input:focus,input:focus,textarea:focus,select:focus{border-color:#c96b35!important;outline-color:rgba(201,107,53,.20)!important;box-shadow:0 0 0 4px rgba(201,107,53,.12)!important}
.btn{background:#fffdfa;border-color:#d9c8ba;color:#543c31;box-shadow:0 1px 0 rgba(255,255,255,.9) inset}.btn:hover:not(:disabled){border-color:#c6a78f;box-shadow:0 8px 20px rgba(76,43,24,.11);transform:translateY(-1px)}.btn.primary{background:linear-gradient(180deg,#d87937,#b95121);border-color:#b95121;color:#fff;box-shadow:inset 0 1px 0 rgba(255,255,255,.27),0 10px 24px rgba(167,70,25,.25)}.btn.primary:hover:not(:disabled){background:linear-gradient(180deg,#e0863f,#c15a24);box-shadow:0 12px 28px rgba(167,70,25,.29)}.text-btn{color:#a64d22}
.match-summary.neutral{background:#f5efe9;color:#604c42}.match-summary.good{background:#ecf5ef;color:#315f4e}.match-summary.warn,.quality{background:#fff2dd;color:#754c16;border-color:rgba(145,92,25,.20)}
th{background:#f7f0e9;color:#59483f;border-bottom-color:#ded0c5}.raw-address,.object-main{color:#362820}.location-detail{color:#66534a}.pill{color:#49362c}.pill.review,.pill.choice{color:#704812}.pill.bad{color:#842f28}.review-choice{color:#5b4940;border-color:#d9ccc2;background:#fffdfb}.review-choice:hover{background:#fbf3eb}
.preview-status{background:#f8efe6;color:#5e493e;border-color:rgba(98,62,41,.13)}.preview-status.warn{background:#fff0d9;color:#754b14;border-color:rgba(145,91,22,.20)}
.preview{background:linear-gradient(145deg,#ece2d8,#f7f0e9);border-color:rgba(94,60,40,.14)}.preview canvas{background:#fffdf9;box-shadow:0 14px 38px rgba(70,40,23,.13)}
.smart-panel{background:linear-gradient(135deg,rgba(255,249,241,.99),rgba(249,239,227,.97));border-color:rgba(101,63,39,.14)}.smart-copy p{font-weight:520}.smart-check.neutral{background:#efe9e3;color:#66534a}.smart-check.warn{background:#fff0da;color:#784d16}.insight-summary{background:#f4e9dd;color:#60483b}
.modal{background:rgba(49,31,21,.50);backdrop-filter:blur(8px)}.modal-card{background:#fffdf8;border:1px solid rgba(91,57,37,.16);box-shadow:0 28px 90px rgba(42,24,14,.28)}.modal-card h3{color:#34251f}.modal-card p{color:#624f45;line-height:1.75}.modal-icon{background:#fff0da;color:#a54c1d}
.toast{background:#493128;color:#fff}.toast-action{color:#ffd6ad}
/* Guided return: focus the exact incomplete row without disorienting the user. */
tbody tr.needs-attention{position:relative;background:#fff0dc!important;box-shadow:inset 4px 0 0 #c75f25,0 0 0 3px rgba(199,95,37,.13);animation:v16Attention 1.65s var(--v16-ease)}
tbody tr.needs-attention .review-choice{border-color:#c86c38;box-shadow:0 0 0 3px rgba(200,108,56,.13)}
@keyframes v16Attention{0%{transform:translateY(3px);filter:saturate(.8)}35%{transform:none;filter:saturate(1.08)}100%{transform:none;filter:none}}
@media(prefers-reduced-motion:reduce){tbody tr.needs-attention{animation:none}}
@media(max-width:600px){.workspace{border-radius:20px}.app-header{background:rgba(252,248,242,.97)}.modal-card{margin:14px}.brand-copy p{color:#655249}}



.export-settings{grid-template-columns:minmax(230px,1.45fr) minmax(180px,.75fr) minmax(210px,.85fr)}
.export-settings label{min-width:0}
#pointDisplaySelect{background-image:linear-gradient(180deg,#fffefb,#fff8f0);font-weight:700;color:#704426}
.preview-status{font-weight:650}
@media(max-width:850px){.export-settings{grid-template-columns:1fr}.export-settings label{width:100%}}



.date-range-card label{min-width:min(100%,285px)}
.date-input-shell{position:relative;display:inline-flex;align-items:center;min-width:240px;max-width:100%}
.date-input-shell .date-text-input{width:100%;padding-right:48px;font-variant-numeric:tabular-nums;letter-spacing:.02em}
.date-calendar-icon{position:absolute;right:1px;top:1px;width:42px;height:42px;display:grid;place-items:center;border-left:1px solid rgba(112,73,48,.12);border-radius:0 9px 9px 0;color:#9b5b32;background:linear-gradient(180deg,rgba(255,252,247,.98),rgba(249,237,224,.94));pointer-events:none}
.date-calendar-icon svg{width:19px;height:19px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.native-date-picker{position:absolute!important;right:0;top:0;width:44px!important;height:44px!important;min-height:44px!important;padding:0!important;margin:0!important;opacity:0;cursor:pointer;z-index:2}
.date-text-input.date-invalid{border-color:#b84b43!important;background:#fff7f5!important;box-shadow:0 0 0 3px rgba(184,75,67,.11)!important}
.date-text-input.date-invalid+.date-calendar-icon{color:#a4423b;background:#fff0ed}
@media(max-width:700px){.date-range-card label{min-width:0}.date-input-shell{min-width:0;width:100%}.date-range-card{grid-template-columns:1fr}.date-separator{display:none}.date-range-card label{grid-template-columns:44px minmax(0,1fr)}}



.date-range-card{align-items:center}
.date-field{display:flex;align-items:center;gap:8px;min-width:min(100%,286px);color:var(--v16-secondary);font-size:13px}
.date-field-label{flex:0 0 auto;min-width:30px;font-weight:650;color:#665044}
.date-input-shell{position:relative;display:grid;grid-template-columns:minmax(0,1fr) 48px;align-items:stretch;min-width:240px;max-width:100%;height:46px;border:1px solid #d9c8ba;border-radius:12px;background:#fffefb;overflow:visible;transition:border-color .16s ease,box-shadow .16s ease,background .16s ease}
.date-input-shell:hover{border-color:#c5a78f;background:#fffdfa}
.date-input-shell:focus-within{border-color:#c96b35;box-shadow:0 0 0 4px rgba(201,107,53,.12)}
.date-input-shell .date-text-input{min-width:0!important;width:100%!important;height:44px!important;min-height:44px!important;padding:0 13px!important;border:0!important;border-radius:11px 0 0 11px!important;background:transparent!important;color:var(--v16-ink)!important;font-variant-numeric:tabular-nums;letter-spacing:.035em;cursor:text;box-shadow:none!important;outline:0!important}
.date-calendar-button{display:grid;place-items:center;width:48px;height:44px;margin:0;border:0;border-left:1px solid rgba(112,73,48,.15);border-radius:0 11px 11px 0;background:linear-gradient(180deg,#fffaf4,#f8eadc);color:#a95629;cursor:pointer;transition:background .16s ease,color .16s ease,transform .12s ease,box-shadow .16s ease;touch-action:manipulation}
.date-calendar-button:hover{background:linear-gradient(180deg,#fff7ed,#f4dfcb);color:#8e411d}
.date-calendar-button:active{transform:scale(.96)}
.date-calendar-button:focus-visible{outline:2px solid #c96b35!important;outline-offset:2px;box-shadow:0 0 0 3px rgba(201,107,53,.13)!important}
.date-calendar-button svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round;pointer-events:none}
.native-date-picker{position:absolute!important;right:22px!important;top:22px!important;width:1px!important;height:1px!important;min-height:1px!important;padding:0!important;margin:0!important;border:0!important;opacity:.001!important;pointer-events:none!important;clip-path:inset(50%)!important}
.date-calendar-icon{display:none!important}
.date-input-shell.date-invalid,.date-input-shell.date-order-invalid{border-color:#b84b43!important;background:#fff8f6!important;box-shadow:0 0 0 3px rgba(184,75,67,.11)!important}
.date-input-shell.date-invalid .date-calendar-button,.date-input-shell.date-order-invalid .date-calendar-button{color:#a4423b;background:#fff0ed}
.date-text-input.date-invalid{border:0!important;background:transparent!important;box-shadow:none!important}
@media(max-width:700px){.date-field{min-width:0;width:100%;display:grid;grid-template-columns:44px minmax(0,1fr)}.date-input-shell{min-width:0;width:100%}.date-range-card{grid-template-columns:1fr}.date-separator{display:none}}



.app-header{position:relative;min-height:92px}
.mode-switch{position:absolute;left:50%;top:22px;transform:translateX(-50%);display:grid;grid-template-columns:1fr 1fr;width:270px;padding:3px;border-radius:999px;background:rgba(109,89,76,.07);box-shadow:inset 0 1px 2px rgba(70,47,33,.04);z-index:5}
.mode-switch-btn{height:44px;border:0;border-radius:999px;background:transparent;color:#75675f;font-weight:720;font-size:15px;cursor:pointer;transition:background .18s ease,color .18s ease,box-shadow .18s ease,transform .12s ease}
.mode-switch-btn:hover{color:#493a32}.mode-switch-btn:active{transform:scale(.98)}
.mode-switch-btn.active{background:rgba(255,255,255,.97);color:#30251f;box-shadow:0 2px 8px rgba(53,37,28,.12),inset 0 1px 0 rgba(255,255,255,.9)}
.address-mode{--address-green:#2d8e68;--address-green-dark:#1f6f51;--address-soft:#eaf7ef;--address-soft-2:#f5fbf7;--address-line:rgba(66,132,101,.18);background:radial-gradient(circle at 10% -8%,rgba(91,184,132,.17),transparent 34rem),radial-gradient(circle at 96% 4%,rgba(119,195,152,.11),transparent 30rem),linear-gradient(180deg,#f7fcf8 0%,#edf7f0 52%,#e7f1ea 100%)}
.address-mode .app-header{background:rgba(248,253,249,.94);border-bottom-color:rgba(52,113,84,.12);box-shadow:0 10px 30px rgba(39,91,65,.06)}
.address-mode .mode-switch{background:rgba(50,116,84,.08)}
.address-mode .mode-switch-btn{color:#557363}.address-mode .mode-switch-btn.active{color:#174f39;background:#fff;box-shadow:0 2px 9px rgba(40,94,67,.13)}
.address-mode .brand-kicker{color:#4b8068}.address-mode .brand-copy h1{color:#264b3b}.address-mode .brand-copy p{color:#668173}
.address-mode .header-side{visibility:hidden;pointer-events:none}
.address-mode #actionDock{display:none!important}
.address-page{padding-top:16px}.address-page .workspace{background:linear-gradient(180deg,rgba(252,255,253,.995),rgba(246,252,248,.985));border-color:var(--address-line);box-shadow:0 1px 0 rgba(255,255,255,.98) inset,0 18px 54px rgba(40,91,67,.08)}
.address-page .workspace:hover{box-shadow:0 1px 0 rgba(255,255,255,.98) inset,0 22px 58px rgba(40,91,67,.105)}
.address-page .section-number{background:linear-gradient(145deg,#75c69d,#318c68);box-shadow:0 8px 20px rgba(48,140,104,.19)}
.address-page .section-head h2{color:#214f3b}.address-page .section-head p{color:#6c8678}
.address-private-badge{flex:0 0 auto;display:inline-flex;align-items:center;min-height:34px;padding:7px 11px;border-radius:999px;background:#e7f5ec;color:#357258;border:1px solid rgba(54,126,91,.16);font-size:12px;font-weight:750}
.address-green-input{background:#fbfffc!important;border-color:#c9dfd2!important;color:#294a3d!important}
.address-green-input:focus,.address-page input:focus,.address-page textarea:focus{border-color:#55a881!important;outline-color:rgba(45,142,104,.16)!important;box-shadow:0 0 0 4px rgba(45,142,104,.11)!important}
.address-page .btn{border-color:#cfe0d6;background:#fff;color:#456558}.address-page .btn:hover:not(:disabled){border-color:#9fc7b2;box-shadow:0 9px 23px rgba(45,105,77,.11)}
.address-page .btn.address-primary{background:linear-gradient(180deg,#48a77e,#27835f);border-color:#27835f;color:#fff;box-shadow:inset 0 1px 0 rgba(255,255,255,.26),0 10px 24px rgba(35,126,89,.23)}
.address-page .btn.address-primary:hover:not(:disabled){background:linear-gradient(180deg,#54b38a,#2c8d67);box-shadow:0 12px 28px rgba(35,126,89,.28)}
.address-clean{color:#2e7358!important;background:linear-gradient(180deg,#fbfffc,#edf8f1)!important}.address-text-btn{color:#2c825f}
.address-page .match-summary.neutral{background:#f0f6f2;color:#658074}.address-page .match-summary.good{background:#e4f6eb;color:#246a4d}.address-page .match-summary.warn{background:#fff5df;color:#825b1e}
.address-map-head,.address-result-head{align-items:center}.address-map-tools{display:flex;gap:5px;padding:4px;border-radius:999px;background:#edf6f0;border:1px solid rgba(64,129,98,.12)}
.map-view-btn{border:0;border-radius:999px;background:transparent;color:#648073;padding:8px 13px;font-size:12px;font-weight:750;cursor:pointer}.map-view-btn.active{background:#fff;color:#226548;box-shadow:0 2px 8px rgba(45,96,71,.10)}
.address-stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:10px;margin:-2px 0 14px}
.address-stats span{display:flex;align-items:baseline;justify-content:center;gap:7px;padding:11px 12px;border-radius:14px;background:#f1f8f3;border:1px solid rgba(62,130,97,.10)}
.address-stats b{font-size:22px;color:#267453;font-variant-numeric:tabular-nums}.address-stats small{color:#6b8577;font-weight:650}
.address-map-preview{padding:10px;border-radius:17px;background:linear-gradient(145deg,#dceee3,#edf7f0);border:1px solid rgba(54,123,91,.13);overflow:hidden}
.address-map-preview canvas{display:block;width:100%;height:auto;border-radius:12px;background:#f8fcf9;box-shadow:0 14px 38px rgba(37,91,65,.12)}
.address-map-actions{display:flex;justify-content:center;margin-top:13px}
.address-search{display:flex;align-items:center;gap:8px;color:#678174;font-size:12px}.address-search input{width:270px;max-width:34vw;border:1px solid #cbded3;border-radius:10px;background:#fff;padding:9px 11px;color:#365c4c}
.address-result-wrap{max-height:650px;border-color:#d6e6dc}.address-result-table{width:100%;min-width:920px;border-collapse:collapse}
.address-result-table th{background:#edf7f1;color:#4a6b5c;border-bottom-color:#cfdfd6}.address-result-table tbody tr:hover{background:#f3fbf6;cursor:pointer}.address-result-table tbody tr.address-row-selected{background:#e4f6eb;box-shadow:inset 4px 0 0 #2e946c}
.address-result-table th:first-child,.address-result-table td:first-child{width:74px;text-align:center}.address-result-table th:nth-child(2){min-width:270px}.address-result-table th:nth-child(3){width:190px}.address-result-table th:nth-child(4){width:230px}.address-result-table th:nth-child(5){width:280px}
.address-seq{font-weight:800;color:#438069}.address-result-address{display:block;color:#294b3d}.address-result-sub{display:block;margin-top:5px;color:#6d887a;font-size:11px;font-weight:600}.address-result-sub.pending{color:#966b27}.contact-cell{font-variant-numeric:tabular-nums;word-break:break-all}
.address-export-bar{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-top:14px;padding:14px 15px;border-radius:15px;background:#eff8f2;border:1px solid rgba(60,128,95,.12)}
.address-export-bar strong,.address-export-bar small{display:block}.address-export-bar strong{color:#315c49;font-size:13px}.address-export-bar small{margin-top:4px;color:#758b80;font-size:11px}
.address-preview-dialog .preview-dialog-head{background:#eef8f2;color:#285d46}.address-preview-dialog .preview-dialog-body{background:#e2f0e7}
@media(max-width:1080px){.mode-switch{position:static;transform:none;margin-left:auto}.app-header{flex-wrap:wrap}.header-side{width:100%;margin-left:62px}.address-mode .header-side{display:none}}
@media(max-width:760px){.app-header{padding-top:18px}.mode-switch{order:3;width:100%;margin:10px 0 0}.mode-switch-btn{height:42px}.address-page{padding-top:10px}.address-private-badge{display:none}.address-map-head,.address-result-head{align-items:flex-start;flex-wrap:wrap}.address-map-tools{margin-left:45px}.address-stats{grid-template-columns:1fr}.address-search{width:100%;margin-left:45px}.address-search input{width:100%;max-width:none}.address-export-bar{align-items:stretch;flex-direction:column}.address-export-bar .btn{width:100%}}

.address-page{grid-template-columns:minmax(0,1fr);width:100%;min-width:0}
.address-page .workspace,.address-page .section-head,.address-page .grow,.address-result-wrap,.address-map-preview{min-width:0;max-width:100%}
@media(max-width:760px){.address-page{width:100%;overflow:hidden}.address-result-wrap{overflow-x:auto}.address-map-preview{overflow:hidden}.address-map-preview canvas{min-width:0!important}.address-page .input-actions{min-width:0}.address-page .input-actions>*{min-width:0;max-width:100%}}

@media(min-width:1081px){.app-header .header-side{max-width:390px;justify-content:flex-end}.app-header .flow-hint{display:none}}
@media(max-width:760px){.address-map-head .grow{flex:1 1 calc(100% - 44px)}.address-map-head h2{white-space:nowrap}.address-map-head .address-map-tools{flex:1 0 100%;width:100%;margin-left:0;justify-content:center}.address-result-head .address-search{flex:1 0 calc(100% - 44px);margin-left:44px}}



.address-mode{
  --address-green:#6ea43f;
  --address-green-dark:#4f7d2e;
  --address-green-deep:#355f22;
  --address-soft:#eef8df;
  --address-soft-2:#f8fcec;
  --address-line:rgba(103,145,62,.21);
  background:
    radial-gradient(circle at 8% -8%,rgba(158,205,102,.25),transparent 35rem),
    radial-gradient(circle at 95% 5%,rgba(202,226,145,.20),transparent 31rem),
    linear-gradient(180deg,#f8fced 0%,#f0f8e3 52%,#eaf4dc 100%);
}
.address-mode .app-header{background:rgba(249,253,239,.95);border-bottom-color:rgba(93,133,53,.14);box-shadow:0 10px 30px rgba(73,111,38,.07)}
.address-mode .mode-switch{background:rgba(104,145,60,.10)}
.address-mode .mode-switch-btn{color:#68785b}.address-mode .mode-switch-btn.active{color:#355a24;background:#fff;box-shadow:0 2px 9px rgba(73,110,39,.15)}
.address-mode .brand-kicker{color:#718d54}.address-mode .brand-copy h1{color:#3b572d}.address-mode .brand-copy p{color:#788d69}
.address-page .workspace{background:linear-gradient(180deg,rgba(254,255,250,.995),rgba(248,252,240,.985));border-color:var(--address-line);box-shadow:0 1px 0 rgba(255,255,255,.98) inset,0 18px 54px rgba(74,108,41,.075)}
.address-page .workspace:hover{box-shadow:0 1px 0 rgba(255,255,255,.98) inset,0 22px 58px rgba(74,108,41,.10)}
.address-page .section-number{background:linear-gradient(145deg,#a7cf72,#6fa442);box-shadow:0 8px 20px rgba(100,151,54,.20)}
.address-page .section-head h2{color:#3c5c2b}.address-page .section-head p{color:#7a8b6b}
.address-private-badge{background:#eef7df;color:#58773c;border-color:rgba(95,137,52,.18)}
.address-green-input{background:#fdfff9!important;border-color:#d4e5bd!important;color:#3f532f!important}
.address-green-input:focus,.address-page input:focus,.address-page textarea:focus{border-color:#82ae54!important;outline-color:rgba(116,163,66,.17)!important;box-shadow:0 0 0 4px rgba(116,163,66,.12)!important}
.address-page .btn{border-color:#d7e5c6;background:#fff;color:#596c49}.address-page .btn:hover:not(:disabled){border-color:#b6d092;box-shadow:0 9px 23px rgba(88,127,47,.11)}
.address-page .btn.address-primary{background:linear-gradient(180deg,#91bf60,#6a9e3e);border-color:#67983b;color:#fff;box-shadow:inset 0 1px 0 rgba(255,255,255,.28),0 10px 24px rgba(91,142,48,.24)}
.address-page .btn.address-primary:hover:not(:disabled){background:linear-gradient(180deg,#9ac96a,#71a746);box-shadow:0 12px 28px rgba(91,142,48,.29)}
.address-clean{color:#5c7a3e!important;background:linear-gradient(180deg,#fefff9,#f1f8e5)!important}.address-text-btn{color:#628c3c}
.address-page .match-summary.neutral{background:#f3f7eb;color:#78886b}.address-page .match-summary.good{background:#edf8df;color:#557633}.address-page .match-summary.warn{background:#fff5df;color:#825b1e}
.address-map-tools{background:#f0f7e7;border-color:rgba(99,141,57,.14)}
.map-view-btn{color:#748865}.map-view-btn.active{color:#4f752f;box-shadow:0 2px 8px rgba(78,113,42,.12)}
.address-stats{grid-template-columns:repeat(4,minmax(0,1fr))}
.address-stats span{background:#f3f9ea;border-color:rgba(97,139,55,.12)}
.address-stats b{color:#67943f}.address-stats small{color:#7b8d6c}
.address-map-preview{background:linear-gradient(145deg,#e6f1d5,#f2f8e8);border-color:rgba(96,136,56,.15)}
.address-map-preview canvas{background:#fbfdf6;box-shadow:0 14px 38px rgba(75,108,42,.12)}
.address-result-actions{display:flex;align-items:center;justify-content:flex-end;gap:9px;min-width:0}
.address-help-chip{flex:0 0 auto;background:#f2f7e8;color:#6e805e;border-color:#dce8cc}
.address-search{color:#78896a}.address-search input{border-color:#d4e2c1;color:#506440}
.address-batchbar{position:sticky;top:8px;z-index:6;border-color:rgba(100,140,60,.14);background:rgba(248,252,241,.93);box-shadow:0 8px 22px rgba(72,105,40,.055);backdrop-filter:blur(15px)}
.address-batchbar strong{color:#4b6338}.address-batchbar .batch-divider{background:#dce7cc}
.address-label-action.show{background:#edf7df;border-color:#c7dda9;color:#567a35}.address-label-action.hide{background:#fffaf0;border-color:#ebddbd;color:#826628}
.address-label-all{color:#648841}.address-label-all:last-child{color:#7b795f}
.address-result-wrap{max-height:680px;border-color:#dce8cc}
.address-result-table{min-width:1160px}
.address-result-table th{background:#f0f7e7;color:#627653;border-bottom-color:#d6e3c5}
.address-result-table tbody tr:hover{background:#f7fbea}
.address-result-table tbody tr.address-row-selected{background:#edf8df;box-shadow:inset 4px 0 0 #72a445}
.address-result-table tbody tr.address-row-map-focus:not(.address-row-selected){background:#f8fbeF;box-shadow:inset 3px 0 0 #b2cb8e}
.address-result-table tbody tr:focus{outline:2px solid rgba(103,151,59,.22);outline-offset:-2px}
.address-result-table th:first-child,.address-result-table td:first-child{width:46px;text-align:center}
.address-result-table th:nth-child(2),.address-result-table td:nth-child(2){width:70px;text-align:center}
.address-result-table th:nth-child(3){min-width:270px}
.address-result-table th:nth-child(4){width:180px}
.address-result-table th:nth-child(5){width:220px}
.address-result-table th:nth-child(6){width:270px}
.address-result-table th:nth-child(7){width:128px;text-align:center}
.address-label-col{text-align:center}
.address-label-toggle{min-width:76px;border:1px solid #d4e1c2;border-radius:999px;padding:7px 10px;background:#fff;color:#738163;font-size:12px;font-weight:750;cursor:pointer;transition:transform .15s ease,background .15s ease,border-color .15s ease,color .15s ease}
.address-label-toggle:hover:not(:disabled){transform:translateY(-1px);border-color:#aac982}
.address-label-toggle.on{background:#eaf6da;border-color:#bcd99a;color:#4e782e}
.address-label-toggle.off{background:#fffdf6;border-color:#e3dfce;color:#7b7b6b}
.address-label-toggle:disabled{cursor:not-allowed;background:#f4f5f0;border-color:#e2e5db;color:#a0a697}
.address-export-bar{background:#f2f8e8;border-color:rgba(98,139,56,.14)}
.address-export-bar strong{color:#52693f}.address-export-bar small{color:#7d8c70}
.address-preview-dialog .preview-dialog-head{background:#f0f7e7;color:#4a6d31}.address-preview-dialog .preview-dialog-body{background:#e7f0d8}
@media(max-width:980px){.address-result-actions{flex:1 0 100%;margin-left:45px;justify-content:space-between}.address-search{flex:1}.address-search input{width:100%;max-width:none}}
@media(max-width:760px){
  .address-stats{grid-template-columns:repeat(2,minmax(0,1fr))}
  .address-result-actions{margin-left:0;align-items:stretch;flex-direction:column}
  .address-help-chip{display:block;align-self:flex-start}
  .address-search{width:100%}
  .address-batchbar{display:grid;grid-template-columns:1fr 1fr;position:static}
  .address-batchbar strong{grid-column:1/-1}
  .address-batchbar .batch-divider{display:none}
  .address-batchbar .btn,.address-batchbar .text-btn{width:100%;margin:0}
}


@media(max-width:760px){
  .address-result-head .address-result-actions{flex:1 0 100%;width:100%;margin-left:0!important;min-width:0;align-items:stretch}
  .address-result-head .address-search{display:grid;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:8px;flex:0 0 auto;width:100%;margin-left:0!important;min-width:0}
  .address-result-head .address-search span{white-space:nowrap}
  .address-result-head .address-search input{width:100%;max-width:none;min-width:0}
}



.address-mode{
  --address-green:#789d55;
  --address-green-dark:#5e813f;
  --address-green-deep:#445f32;
  --address-soft:#f1f7e8;
  --address-soft-2:#fbfdf6;
  --address-line:rgba(102,130,75,.17);
  background:
    radial-gradient(circle at 8% -10%,rgba(188,214,148,.22),transparent 36rem),
    radial-gradient(circle at 96% 2%,rgba(219,232,184,.20),transparent 31rem),
    linear-gradient(180deg,#fbfdf6 0%,#f4f8ec 52%,#eef4e6 100%);
}
.address-mode .app-header{background:rgba(252,253,247,.96);border-bottom-color:rgba(94,120,69,.11);box-shadow:0 9px 28px rgba(68,91,48,.055)}
.address-mode .mode-switch{background:rgba(102,130,76,.075)}
.address-mode .mode-switch-btn{color:#718066}.address-mode .mode-switch-btn.active{color:#455f33;background:#fff;box-shadow:0 2px 8px rgba(68,92,47,.10)}
.address-mode .brand-kicker{color:#748b60}.address-mode .brand-copy h1{color:#43583a}.address-mode .brand-copy p{color:#7b8872}
.address-page .workspace{background:rgba(255,255,252,.965);border-color:var(--address-line);box-shadow:0 1px 0 rgba(255,255,255,.98) inset,0 16px 46px rgba(66,88,45,.06)}
.address-page .workspace:hover{box-shadow:0 1px 0 rgba(255,255,255,.98) inset,0 19px 50px rgba(66,88,45,.078)}
.address-page .section-number{background:linear-gradient(145deg,#adc98b,#7f9f5b);box-shadow:0 7px 18px rgba(92,122,59,.16)}
.address-page .section-head h2{color:#465d38}.address-page .section-head p{color:#7a8772}
.address-page .btn.address-primary{background:linear-gradient(180deg,#8eae68,#718f50);border-color:#6b884a;box-shadow:inset 0 1px 0 rgba(255,255,255,.30),0 9px 20px rgba(82,111,52,.18)}
.address-page .btn.address-primary:hover:not(:disabled){background:linear-gradient(180deg,#98b774,#789758);box-shadow:0 11px 24px rgba(82,111,52,.22)}
.address-page .match-summary.good{background:#eef6e6;color:#506f38}.address-page .match-summary.warn{background:#fff7e7;color:#7c6029}
.address-stats span{background:#f7faF2;border-color:rgba(98,127,71,.10)}
.address-stats b{color:#668849}.address-stats small{color:#7a8871}
.address-map-preview{background:linear-gradient(145deg,#edf4e4,#f7faf1);border-color:rgba(97,124,70,.12);padding:12px}
.address-map-preview canvas{background:#fcfdf9;box-shadow:0 12px 32px rgba(64,84,44,.085)}
.address-map-legend{display:grid;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:10px;margin-top:12px}
.address-map-legend>span{display:grid;grid-template-columns:auto 1fr;grid-template-rows:auto auto;column-gap:10px;align-items:center;min-width:0;padding:11px 12px;border:1px solid rgba(98,126,70,.11);border-radius:13px;background:rgba(249,251,245,.94)}
.address-map-legend i{grid-row:1/3;display:inline-flex;align-items:center;justify-content:center;font-style:normal;white-space:nowrap}
.address-map-legend b{color:#536747;font-size:12px}.address-map-legend small{color:#7a8673;font-size:11px;line-height:1.45}
.legend-seq{width:29px;height:29px;border-radius:50%;background:#789e58;color:#fff;font-size:11px;font-weight:800;border:4px solid #fff;box-shadow:0 0 0 1px rgba(94,122,66,.18)}
.legend-total{width:24px;height:24px;border:2px solid rgba(80,116,53,.42);border-radius:50%;background:#fffdf8;color:#466b31;font-size:12px;font-weight:850;box-shadow:0 2px 5px rgba(62,88,43,.10)}
.legend-callout{width:38px;height:26px;border:1px solid rgba(105,132,78,.30);border-radius:8px;background:#fff;box-shadow:0 5px 13px rgba(68,88,47,.08)}
.address-batchbar{background:rgba(252,253,248,.94);border-color:rgba(99,126,72,.12);box-shadow:0 7px 19px rgba(63,84,43,.045)}
.address-result-table th{background:#f4f8ee;color:#627256;border-bottom-color:#dce5d2}
.address-result-table tbody tr:hover{background:#fafcf6}
.address-result-table tbody tr.address-row-selected{background:#eff6e7;box-shadow:inset 4px 0 0 #789e58}
.address-result-table tbody tr.address-row-map-focus:not(.address-row-selected){background:#f7faF2;box-shadow:inset 3px 0 0 #b4c99c}
.address-label-toggle.on{background:#eff7e6;border-color:#c7d9b2;color:#58753f}
.address-export-bar{background:#f7faf2;border-color:rgba(97,124,70,.11)}
@media(max-width:760px){
  .address-map-legend{grid-template-columns:1fr}
  .address-map-legend>span{padding:10px 11px}
}


:root{
  --v33-common-bg:#f3f4f0;--v33-surface:#fffefb;--v33-surface-soft:#f8f7f2;
  --v33-ink:#24221f;--v33-secondary:#514b45;--v33-muted:#625b54;--v33-line:rgba(57,51,45,.18);
  --v33-analysis:#bd5723;--v33-analysis-deep:#8f3d19;--v33-address:#477e37;--v33-address-deep:#285b2b;
}
html{font-size:16px}body{font-size:16px;line-height:1.62;color:var(--v33-ink);background:radial-gradient(circle at 12% -8%,rgba(205,139,72,.12),transparent 32rem),radial-gradient(circle at 92% 2%,rgba(104,145,75,.08),transparent 31rem),linear-gradient(180deg,#f8f7f3 0%,var(--v33-common-bg) 58%,#eceee9 100%)}
.app-header{background:rgba(250,249,246,.96);border-bottom:1px solid rgba(57,51,45,.13);box-shadow:0 9px 28px rgba(49,42,36,.07)}
.brand-copy h1{font-size:28px;color:#28231f;letter-spacing:.012em}.brand-copy p{font-size:15px;line-height:1.55;color:#585149;font-weight:560}.brand-kicker{font-size:13px;color:#845332;font-weight:780}
.mode-switch{background:rgba(57,51,45,.085);border:1px solid rgba(57,51,45,.07)}.mode-switch-btn{font-size:16px;color:#5b554f}.mode-switch-btn.active{color:#211e1b}
.workspace{background:linear-gradient(180deg,rgba(255,254,251,.995),rgba(251,249,244,.99));border-color:var(--v33-line);box-shadow:0 1px 0 rgba(255,255,255,.98) inset,0 16px 46px rgba(49,42,36,.085)}
.section-head h2{font-size:23px;color:#28231f}.section-head p{font-size:15px;line-height:1.65;color:#5b544d;font-weight:520}.section-number{font-size:16px}
.context-copy strong,.date-range-card>strong{font-size:15px;color:#342d28}.context-copy small,#dateRangePreview{font-size:14px!important;line-height:1.55;color:#5e564f!important;font-weight:520}.date-field,.date-field-label{font-size:14px}.date-text-input{font-size:16px!important}.date-preset{font-size:14px!important;color:#644f42!important}
.address-input{font-size:17px;line-height:1.78;color:#29241f;background:#fffefb}.address-input::placeholder,textarea::placeholder,input::placeholder{color:#777069;opacity:1}
.btn{font-size:15px;min-height:42px;color:#423a34}.btn.small{font-size:14px;padding:8px 12px}.btn.large{font-size:16px}.text-btn{font-size:14px;color:#9d421c}.help-chip{font-size:13px;color:#534b44;background:#f0eee8}
.match-summary{font-size:15px;line-height:1.62;font-weight:560}.match-summary.neutral{color:#59534d;background:#f1f0ec}.match-summary.good{color:#245c42}.match-summary.warn{color:#704711}
.smart-copy .smart-kicker{font-size:12px}.smart-copy strong{font-size:17px}.smart-copy p{font-size:14px!important;line-height:1.6;color:#514a44!important}.smart-check{font-size:13px}.insight-summary{font-size:13px;color:#513f34}
.simple-batchbar{background:#f7f5f0;border-color:rgba(57,51,45,.15)}.simple-batchbar strong{font-size:15px;color:#342d28}
th{font-size:14px;color:#4f4741;background:#f3f1ec;font-weight:780}td{font-size:15px;color:#302b27;line-height:1.55}.raw-address,.object-main{font-size:16px;color:#29231f}.location-detail{font-size:14px;color:#554d46}.match-details summary,.match-detail-grid,.object-suggest{font-size:13px}.match-detail-grid{color:#514a44}.pill{font-size:12px}.qty-chip{font-size:12px}.review-choice{font-size:13px}.review-clear{font-size:12px}.empty-row td{color:#645e58}
.advanced-tools summary,.export-options summary,.more-info summary{font-size:14px;color:#4e4741}.filter,.table-search,.pager,.export-settings label{font-size:13px}.table-search input,.export-settings input,.export-settings select,.analysis-head select{font-size:15px;color:#302a26}.preview-status{font-size:14px;line-height:1.55;color:#50473f}.analysis-head label{font-size:13px;color:#554e47}.analysis-sync-status{font-size:12px;color:#62594f}.more-info-grid h3{font-size:16px}.more-info-grid textarea{font-size:15px;color:#2f2925}.version-info{font-size:14px;color:#534c45}

/* Keep both modules in one calm visual family; use accent color, not low-contrast backgrounds, to distinguish them. */
.address-mode{--address-green:#477e37;--address-green-dark:#285b2b;--address-soft:#edf5e8;--address-soft-2:#f8fbf5;--address-line:rgba(48,86,45,.19);background:radial-gradient(circle at 10% -7%,rgba(116,160,82,.12),transparent 33rem),radial-gradient(circle at 96% 3%,rgba(159,187,123,.09),transparent 30rem),linear-gradient(180deg,#f8faf5 0%,#f1f4ed 55%,#ebeee7 100%)}
.address-mode .app-header{background:rgba(249,250,246,.96);border-bottom-color:rgba(48,86,45,.15)}.address-mode .brand-copy h1{color:#233525}.address-mode .brand-copy p{font-size:15px;color:#4d604e}.address-mode .brand-kicker{color:#3f6b36}.address-mode .mode-switch-btn{color:#50604f}.address-mode .mode-switch-btn.active{color:#1f4324}
.address-page .workspace{background:linear-gradient(180deg,rgba(255,255,252,.998),rgba(249,251,246,.995));border-color:rgba(48,86,45,.17)}.address-page .section-head h2{color:#233b27}.address-page .section-head p{font-size:15px;color:#4e6250}.address-page .section-number{background:linear-gradient(145deg,#6f9f52,#477e37)}
.address-private-badge{font-size:13px;color:#365c31;background:#edf5e7;border-color:rgba(57,100,50,.2)}.address-green-input{font-size:17px!important;color:#263b2a!important;background:#fff!important;border-color:#bfcdbc!important}.address-green-input::placeholder{color:#687668!important}
.address-stats span{background:#f4f7f0;border-color:rgba(48,86,45,.14);padding:13px}.address-stats b{font-size:24px;color:#3f7334}.address-stats small{font-size:14px;color:#4f614f;font-weight:650}
.address-map-head h3,.address-result-head h3{font-size:18px;color:#263b29}.address-map-head p,.address-result-head p,#addressMapStatus{font-size:14px;line-height:1.6;color:#4d604e}
.address-map-tools .btn,.address-result-tools .btn{font-size:14px}.address-map-legend b{font-size:14px;color:#314a32}.address-map-legend small{font-size:13px;line-height:1.55;color:#536453}.address-map-legend>span{background:#fafcf8;border-color:rgba(48,86,45,.16)}
.address-table-wrap th{font-size:14px;color:#3b4d3b;background:#f1f5ee}.address-table-wrap td{font-size:15px;color:#29372b}.address-seq{font-size:16px;color:#386b34}.address-result-address{font-size:16px;color:#243a29}.address-result-sub{font-size:13px;line-height:1.55;color:#506452}.address-result-sub.pending{color:#795115}.contact-cell{font-size:14px}.address-label-toggle{font-size:13px;min-width:82px;color:#52624e}.address-selected-count{font-size:14px;color:#334a34}.address-search{font-size:14px;color:#465846}.address-search input{font-size:15px;color:#29372b}
.address-export-bar p{font-size:14px;line-height:1.6;color:#4c5d4d}

@media(max-width:760px){
  html{font-size:16px}body{font-size:16px}.app-header{padding-left:17px;padding-right:17px}.brand-copy h1{font-size:22px}.brand-copy p{font-size:14px}.app-shell{padding-left:14px;padding-right:14px}.workspace{padding:18px 15px;border-radius:18px}.section-head h2{font-size:21px}.section-head p{font-size:14px}.mode-switch-btn{font-size:15px}.btn.small{font-size:14px}.address-input,.address-green-input{font-size:16px!important}.address-stats small{font-size:13px}.address-map-legend b{font-size:14px}.address-map-legend small{font-size:13px}.address-result-sub{font-size:13px}
}



.address-density-hint{margin-left:auto;display:inline-flex;align-items:center;min-height:32px;padding:6px 10px;border:1px solid rgba(67,104,55,.14);border-radius:999px;background:#f4f8ef;color:#53664b;font-size:13px;font-weight:650;white-space:nowrap}
.address-map-preview{position:relative}
.address-map-preview canvas{cursor:default;transition:filter .15s ease}
.address-label-toggle.on{background:#e9f4df;border-color:#aecb94;color:#456a31;box-shadow:inset 0 0 0 1px rgba(82,119,54,.04)}
.address-label-toggle.off{background:#fff;color:#657161}
.address-batchbar .address-label-all{font-weight:650}
@media(max-width:760px){.address-density-hint{grid-column:1/-1;margin-left:0;justify-content:center;white-space:normal;text-align:center}.address-batchbar{grid-template-columns:1fr 1fr}}


.count-badge-toggle.active{background:#eaf4df!important;color:#486c32!important;box-shadow:inset 0 0 0 1px rgba(75,111,47,.10),0 2px 8px rgba(78,113,42,.10)!important}
.count-badge-toggle[aria-pressed="false"]{color:#697967}


.address-map-legend .legend-callout{position:relative;width:34px;height:25px;border:0;background:transparent}
.address-map-legend .legend-callout::before{content:"";position:absolute;left:4px;top:18px;width:24px;border-top:1.5px solid rgba(74,103,55,.52);transform:rotate(-22deg);transform-origin:left center}
.address-map-legend .legend-callout::after{content:"";position:absolute;right:1px;top:2px;width:18px;height:18px;border-radius:50%;background:#719b50;border:3px solid #fff;box-shadow:0 0 0 1px rgba(70,102,48,.16)}



.address-mode{background:linear-gradient(180deg,#f3f5f1 0,#eef2ed 100%);--address-accent:#4d8668;--address-accent-dark:#35694f;--address-ink:#263a31;--address-muted:#607168;--address-line:rgba(52,91,70,.17)}
.address-mode .app-header{background:rgba(252,252,249,.965);border-bottom-color:rgba(52,91,70,.13);box-shadow:0 10px 30px rgba(50,74,61,.055)}
.address-mode .brand-kicker{color:#607a6a}.address-mode .brand-copy h1{color:#293a32}.address-mode .brand-copy p{color:#65736d}
.address-mode .mode-switch{background:rgba(62,99,78,.08);border:1px solid rgba(62,99,78,.08)}
.address-mode .mode-switch-btn{color:#65736c}.address-mode .mode-switch-btn.active{color:#294c3b;background:#fff;box-shadow:0 2px 10px rgba(49,80,63,.12)}
.address-page .workspace{background:rgba(253,253,250,.985);border-color:rgba(65,96,78,.15);box-shadow:0 1px 0 rgba(255,255,255,.98) inset,0 18px 48px rgba(55,76,64,.065)}
.address-page .workspace:hover{box-shadow:0 1px 0 rgba(255,255,255,.98) inset,0 20px 52px rgba(55,76,64,.085)}
.address-page .section-number{background:linear-gradient(145deg,#72a58b,#4d8066);box-shadow:0 8px 18px rgba(62,112,83,.18)}
.address-page .section-head h2{color:#263a31}.address-page .section-head p{color:#617269}
.address-private-badge{background:#edf4ef;color:#466555;border-color:rgba(67,101,82,.15)}
.address-green-input{background:#fff!important;border-color:#cfdad3!important;color:#293a32!important}
.address-green-input:focus,.address-page input:focus,.address-page textarea:focus{border-color:#64977d!important;outline-color:rgba(75,134,104,.14)!important;box-shadow:0 0 0 4px rgba(75,134,104,.105)!important}
.address-page .btn{border-color:#d1dcd5;background:#fff;color:#425d50}.address-page .btn:hover:not(:disabled){border-color:#aac5b6;box-shadow:0 8px 20px rgba(55,91,71,.09)}
.address-page .btn.address-primary{background:linear-gradient(180deg,#5d9678,#41775b);border-color:#41775b;color:#fff;box-shadow:inset 0 1px 0 rgba(255,255,255,.24),0 9px 22px rgba(54,112,80,.20)}
.address-page .btn.address-primary:hover:not(:disabled){background:linear-gradient(180deg,#68a184,#477e62);box-shadow:0 11px 25px rgba(54,112,80,.24)}
.address-clean{color:#3f6753!important;background:linear-gradient(180deg,#fff,#f1f6f3)!important}.address-dedupe{color:#6a6048!important;background:linear-gradient(180deg,#fffdf8,#f7f2e8)!important;border-color:#e2d8c7!important}
.address-clean-hint{margin-top:10px;padding:10px 13px;border-radius:12px;background:#f3f6f4;border:1px solid rgba(62,91,75,.11);color:#5e6d65;font-size:13px;line-height:1.65}.address-clean-hint strong{color:#355b48}
.address-page .match-summary.neutral{background:#f1f4f2;color:#5e7066}.address-page .match-summary.good{background:#e9f3ed;color:#34694f}.address-page .match-summary.warn{background:#fbf2df;color:#765b2b}
.address-map-tools{background:#eef3ef;border-color:rgba(61,95,76,.11)}.map-view-btn.active{background:#fff;color:#315b46;box-shadow:0 3px 11px rgba(51,83,65,.11)}
.address-stats span{background:#f1f5f2;border-color:rgba(58,89,72,.10)}.address-stats b{color:#3d7458}.address-stats small{color:#596b62}
.address-map-preview{background:linear-gradient(145deg,#e4ebe6,#f0f4f1);border-color:rgba(54,87,68,.12)}
.address-map-preview canvas{background:#fafbf9;box-shadow:0 12px 32px rgba(45,68,55,.10)}
.address-result-table{min-width:1180px}.address-result-table th{background:#edf2ee;color:#405b4d;border-bottom-color:#d3ddd7}.address-result-table tbody tr:hover{background:#f4f8f5}.address-result-table tbody tr.address-row-selected{background:#e7f1eb;box-shadow:inset 4px 0 0 #4c8768}
.address-result-table th:nth-child(2),.address-result-table td:nth-child(2){width:70px;text-align:center}.address-result-table th:nth-child(3){min-width:280px}.address-result-table th:nth-child(4){width:150px}.address-result-table th:nth-child(5){width:180px}.address-result-table th:nth-child(6){width:240px}.address-result-table th:nth-child(7){width:210px}.address-result-table th:nth-child(8){width:130px;text-align:center}
.comprehensive-grid-cell{font-weight:650;color:#3d6652}.address-density-hint{background:#eef3f0;color:#4e6258;border-color:rgba(57,88,70,.13)}
.address-batchbar{background:rgba(251,252,250,.96);border-color:rgba(57,88,70,.12);box-shadow:0 7px 18px rgba(53,73,61,.04)}
.address-export-bar{background:#eef4f0;border-color:rgba(58,91,72,.11)}.address-export-bar strong{color:#345746}.address-export-bar small{color:#62736a}
@media(max-width:760px){.address-clean-hint{font-size:13px}.address-result-table{min-width:1120px}}



.analysis-callout-toolbar{position:static;display:flex;align-items:center;gap:8px;margin:0 0 11px;padding:10px 12px;background:rgba(255,250,244,.96);border:1px solid rgba(96,62,42,.14);box-shadow:none}
.analysis-callout-toolbar strong{min-width:auto;color:#3d332c}
.analysis-callout-count{display:inline-flex;align-items:baseline;gap:4px;color:#66574c;font-size:13px;white-space:nowrap}
.analysis-callout-count b{font-size:16px;color:#a95627}
.analysis-callout-hint{margin-left:auto;color:#6f6258;font-size:13px;line-height:1.45}
.analysis-callout-toolbar .btn,.analysis-callout-toolbar .text-btn{white-space:nowrap}
.analysis-callout-toolbar .btn:disabled,.analysis-callout-toolbar .text-btn:disabled{opacity:.46;cursor:not-allowed}
.preview canvas.analysis-map-hover{cursor:pointer}
.presentation-view .analysis-callout-toolbar{display:none!important}
@media(max-width:760px){
  .analysis-callout-toolbar{display:grid;grid-template-columns:1fr 1fr}
  .analysis-callout-toolbar strong,.analysis-callout-count,.analysis-callout-hint{grid-column:1/-1}
  .analysis-callout-toolbar .batch-divider{display:none}
  .analysis-callout-toolbar .btn,.analysis-callout-toolbar .text-btn{width:100%;margin:0}
  .analysis-callout-hint{margin-left:0;text-align:center}
}







:where(canvas[role="region"]):focus-visible{outline:3px solid rgba(62,113,88,.36);outline-offset:4px;border-radius:14px}
.action-dock.dock-occluded{opacity:0;pointer-events:none;transform:translate(-50%,18px)}
.toast{left:auto!important;right:20px!important;bottom:auto!important;top:86px!important;transform:translateY(-10px)!important;max-width:min(430px,calc(100vw - 28px));box-shadow:0 14px 38px rgba(39,49,43,.2)}
.toast.show{transform:translateY(0)!important}
.address-mode{background:linear-gradient(180deg,#f5f6f3 0%,#eef1ed 100%)!important}
.address-map-preview{background:#e9eeea!important;border-color:rgba(55,84,68,.13)!important;padding:10px!important}
.address-map-preview canvas{background:#fcfcfa!important;box-shadow:0 10px 26px rgba(43,63,52,.085)!important}
.address-map-tools .btn,.map-view-btn{min-height:42px;padding-left:13px;padding-right:13px}
.address-map-tools .btn:focus-visible,.map-view-btn:focus-visible{outline:3px solid rgba(62,113,88,.28);outline-offset:2px}
@media(max-width:600px){
  .toast{top:auto!important;right:14px!important;left:14px!important;bottom:14px!important;max-width:none;transform:translateY(12px)!important}.toast.show{transform:translateY(0)!important}
  .presentation-view .app-header{padding:8px 10px!important}.presentation-view .brand-kicker,.presentation-view .brand-copy p,.presentation-view .mode-switch{display:none!important}.presentation-view .brand-copy h1{font-size:17px!important}.presentation-view .brand-mark,.presentation-view .brand-logo{width:34px!important;height:34px!important}.presentation-view .app-shell{padding:6px!important}.presentation-view .preview{overflow:hidden!important}.presentation-view .preview canvas{width:100%!important;min-width:0!important;max-width:100%!important;border-radius:10px!important;box-shadow:0 8px 24px rgba(25,48,57,.08)!important}
}

@media(max-width:600px){
  .presentation-view .app-header{flex-wrap:nowrap!important;align-items:center!important;min-height:54px!important}
  .presentation-view .brand-group{min-width:0!important;flex:1 1 auto!important}
  .presentation-view .header-side{display:flex!important;width:auto!important;margin:0 0 0 auto!important;flex:0 0 auto!important}
  .presentation-view .presentation-toggle{padding:8px 10px!important;font-size:12px!important;white-space:nowrap!important}
}






:root{
  --premium-navy:#102a43;
  --premium-navy-2:#173b5f;
  --premium-ink:#18324a;
  --premium-muted:#66788a;
  --premium-line:#dbe5ec;
  --premium-surface:#ffffff;
  --premium-canvas:#f1f5f8;
  --analysis-accent:#e96f35;
  --analysis-accent-soft:#fff0e7;
  --address-accent:#23836d;
  --address-accent-soft:#e8f6f1;
  --premium-shadow:0 18px 52px rgba(16,42,67,.10),0 2px 8px rgba(16,42,67,.05);
}
html{background:#edf2f5}
body{
  color:var(--premium-ink);
  background:
    linear-gradient(rgba(16,42,67,.025) 1px,transparent 1px),
    linear-gradient(90deg,rgba(16,42,67,.025) 1px,transparent 1px),
    radial-gradient(circle at 12% 0%,rgba(53,129,143,.12),transparent 33%),
    radial-gradient(circle at 92% 4%,rgba(233,111,53,.10),transparent 28%),
    #edf2f5;
  background-size:32px 32px,32px 32px,auto,auto,auto;
}
.app-header{
  position:relative;
  min-height:118px;
  padding:22px max(34px,calc((100vw - 1420px)/2));
  color:#fff;
  background:
    linear-gradient(118deg,rgba(19,55,88,.98),rgba(12,41,66,.98) 58%,rgba(24,77,87,.97));
  border-bottom:1px solid rgba(255,255,255,.12);
  box-shadow:0 16px 42px rgba(7,31,53,.18);
  overflow:hidden;
}
.app-header::before{
  content:"";
  position:absolute;inset:0;pointer-events:none;
  background:
    linear-gradient(90deg,transparent 0 72%,rgba(255,255,255,.035) 72% 72.2%,transparent 72.2%),
    radial-gradient(circle at 86% -40%,rgba(92,196,188,.24),transparent 38%);
}
.app-header::after{
  content:"";position:absolute;left:0;right:0;bottom:0;height:3px;
  background:linear-gradient(90deg,var(--analysis-accent) 0 49.8%,rgba(255,255,255,.25) 49.8% 50.2%,var(--address-accent) 50.2% 100%);
}
.brand-group,.mode-switch,.header-side{position:relative;z-index:1}
.brand-group{gap:15px}.brand-mark{width:58px;height:58px;border-radius:17px;background:rgba(255,255,255,.94);box-shadow:0 12px 28px rgba(0,0,0,.18);padding:5px}
.brand-copy{min-width:340px}.brand-copy h1{color:#fff;font-size:28px;letter-spacing:.02em;margin:3px 0 4px}.brand-kicker{color:#9dd9d2;font-size:12px;letter-spacing:.16em}.brand-copy p{color:rgba(232,244,249,.78);font-size:13px}
.product-edition{display:inline-flex;align-items:center;gap:8px;margin-left:10px;padding:5px 9px;border:1px solid rgba(255,255,255,.18);border-radius:999px;background:rgba(255,255,255,.08);font-size:11px;font-weight:700;color:#e9f7f4;vertical-align:middle;letter-spacing:.04em}
.mode-switch{padding:5px;background:rgba(255,255,255,.09);border:1px solid rgba(255,255,255,.13);box-shadow:inset 0 1px rgba(255,255,255,.08);border-radius:16px;backdrop-filter:blur(12px)}
.mode-switch-btn{min-width:112px;color:rgba(235,245,249,.78);border-radius:12px;font-weight:700;letter-spacing:.02em}
.mode-switch-btn.active{color:var(--premium-navy);background:#fff;box-shadow:0 8px 22px rgba(0,0,0,.18)}
body.address-mode .mode-switch-btn.active{color:#176550}
.header-side{gap:9px}.header-ready,.autosave-status{border:1px solid rgba(255,255,255,.13);background:rgba(255,255,255,.08);color:#e7f3f6;backdrop-filter:blur(10px)}
.header-ready.good,.autosave-status.saved{background:rgba(58,181,149,.14);color:#b8f0df;border-color:rgba(104,220,190,.24)}
.presentation-toggle{color:#fff;border-color:rgba(255,255,255,.23);background:rgba(255,255,255,.08)}
.presentation-toggle:not(:disabled):hover{background:rgba(255,255,255,.15)}
.flow-hint{color:rgba(236,245,248,.7)}.flow-hint span b{background:rgba(255,255,255,.15);color:#fff}.flow-hint i{background:rgba(255,255,255,.18)}
.system-ribbon{
  width:min(1420px,calc(100% - 48px));margin:18px auto -2px;padding:12px 16px;
  display:flex;align-items:center;justify-content:space-between;gap:16px;
  border:1px solid rgba(16,42,67,.08);border-radius:16px;background:rgba(255,255,255,.76);
  box-shadow:0 8px 24px rgba(16,42,67,.055);backdrop-filter:blur(14px);color:#51677a;font-size:12px;
}
.system-ribbon strong{color:var(--premium-navy);font-size:13px}.system-ribbon .ribbon-left,.system-ribbon .ribbon-badges{display:flex;align-items:center;gap:10px;flex-wrap:wrap}
.system-ribbon .ribbon-dot{width:8px;height:8px;border-radius:50%;background:#34a890;box-shadow:0 0 0 5px rgba(52,168,144,.10)}
.system-ribbon .ribbon-badges span{padding:6px 9px;border-radius:999px;background:#edf4f7;color:#3e5a70;font-weight:700}
.app-shell{width:min(1420px,calc(100% - 48px));gap:18px;padding-top:22px}
.workspace{border:1px solid rgba(16,42,67,.095);border-radius:22px;background:rgba(255,255,255,.93);box-shadow:var(--premium-shadow);overflow:hidden}
.workspace::before{content:"";display:block;height:3px;background:linear-gradient(90deg,var(--analysis-accent),rgba(233,111,53,.20) 55%,transparent)}
.address-page .workspace::before{background:linear-gradient(90deg,var(--address-accent),rgba(35,131,109,.20) 55%,transparent)}
.section-head{padding-top:2px}.section-number{width:36px;height:36px;box-shadow:0 8px 20px rgba(233,111,53,.22);background:linear-gradient(145deg,#f49158,#df5f2a);font-size:14px}
.address-page .section-number{background:linear-gradient(145deg,#44a78e,#1f755f);box-shadow:0 8px 20px rgba(35,131,109,.22)}
.section-head h2{font-size:22px;color:#15314a;letter-spacing:.015em}.section-head p{color:#718293;margin-top:5px}
.analysis-context,.date-range-card,.topic-card,.address-clean-hint,.preview-status,.simple-batchbar,.export-actions,.address-export-bar{border-color:var(--premium-line);background:#f8fafb}
.topic-card,.date-range-card{box-shadow:inset 0 1px #fff}
.address-input{border-color:#cad8e2;background:#fff;box-shadow:inset 0 1px 3px rgba(16,42,67,.04);font-size:15px;line-height:1.72}
.address-input:focus{border-color:#6f9db7;box-shadow:0 0 0 4px rgba(61,126,153,.10)}
.address-page .address-input:focus{border-color:#5eaa94;box-shadow:0 0 0 4px rgba(35,131,109,.10)}
.btn{border-color:#cedae3;background:#fff;color:#29435a;border-radius:10px;box-shadow:0 2px 5px rgba(16,42,67,.035)}
.btn:hover{border-color:#9db2c1;background:#f8fbfc;transform:translateY(-1px)}
.btn.primary{border-color:transparent;background:linear-gradient(135deg,#f18448,#dc5f2a);box-shadow:0 10px 24px rgba(220,95,42,.22);color:#fff}
.btn.primary:hover{background:linear-gradient(135deg,#f38b51,#d95520)}
.btn.address-primary,.address-page .btn.primary{background:linear-gradient(135deg,#3b9b80,#1e725d);box-shadow:0 10px 24px rgba(30,114,93,.22)}
.text-btn{color:#b4572e}.address-page .text-btn{color:#24745f}
.match-summary{border-radius:10px;border:1px solid transparent}.match-summary.good{background:#eaf6f2;border-color:#c9e8df;color:#1e6d59}.match-summary.warn{background:#fff5e9;border-color:#f2d5ad;color:#8a5a20}
.smart-panel{border-color:#e1e9ef;background:linear-gradient(125deg,#f8fbfd,#fff8f3)}
.smart-orb{background:#fff;border-color:#f1b18f;box-shadow:0 8px 20px rgba(233,111,53,.13)}
.table-wrap{border-color:#dce6ed;border-radius:16px;box-shadow:inset 0 1px rgba(255,255,255,.8)}
thead{background:#eef3f6;color:#385267}tbody tr:hover{background:#f5f9fb}.result-row.selected,.address-result-table tr.address-row-selected{background:#fff6ef}
.address-result-table tr:hover{background:#f2f8f6}.address-result-table tr.address-row-selected{background:#eaf6f1}
.preview,.address-map-preview{border:1px solid #dce6ed;background:linear-gradient(145deg,#e8eef2,#f7f9fb);border-radius:18px;padding:10px;box-shadow:inset 0 1px 3px rgba(16,42,67,.07)}
.address-map-preview{background:linear-gradient(145deg,#e5efed,#f5faf8)}
.preview canvas,.address-map-preview canvas{border-radius:13px;box-shadow:0 9px 28px rgba(16,42,67,.10)}
.address-stats span{border-color:#d7e5e1;background:linear-gradient(180deg,#f9fcfb,#eef6f3);box-shadow:0 7px 18px rgba(35,131,109,.06)}
.address-stats b{color:#1c775f}.address-map-legend span{border-color:#d7e3e0;background:#fbfdfc}.address-result-table thead{background:#e9f3f0}
.map-view-btn{border-color:#d2dfdc;color:#4a675f}.map-view-btn.active{background:#fff;color:#1d725d;box-shadow:0 6px 14px rgba(35,131,109,.12)}
.export-options,.advanced-tools,.more-info{border-color:#dce6ed;background:#fbfcfd;border-radius:12px}
.action-dock{border-color:rgba(16,42,67,.14);background:rgba(255,255,255,.93);box-shadow:0 20px 50px rgba(16,42,67,.20);backdrop-filter:blur(18px)}
.preview-dialog{border:1px solid rgba(255,255,255,.25);background:#eaf0f3;box-shadow:0 30px 90px rgba(0,0,0,.35)}
.preview-dialog-head{background:linear-gradient(118deg,#153756,#0e2b45);color:#fff}.preview-dialog-head .btn{background:rgba(255,255,255,.10);color:#fff;border-color:rgba(255,255,255,.20)}
.toast{background:#102a43;color:#fff;border-color:rgba(255,255,255,.10);box-shadow:0 16px 38px rgba(16,42,67,.30)}
body.address-mode .toast{background:#174b40}
@media (max-width:1100px){
  .app-header{padding:18px 22px}.brand-copy{min-width:0}.header-side{width:100%;justify-content:flex-start}.system-ribbon,.app-shell{width:calc(100% - 28px)}
  .system-ribbon{margin-top:14px}.flow-hint{display:none}
}
@media (max-width:720px){
  .app-header{min-height:auto}.brand-mark{width:48px;height:48px}.brand-copy h1{font-size:21px}.brand-kicker{font-size:10px}.brand-copy p{font-size:12px}
  .product-edition{display:none}.mode-switch{width:100%;order:3}.mode-switch-btn{flex:1}.header-side{order:4;gap:6px}.header-ready,.autosave-status,.presentation-toggle{font-size:11px}
  .system-ribbon{align-items:flex-start;flex-direction:column;padding:10px 12px}.system-ribbon .ribbon-badges{gap:6px}
  .app-shell{padding-top:14px}.workspace{border-radius:17px}.section-head h2{font-size:19px}.section-number{width:32px;height:32px}
}


.app-header{
  display:grid;
  grid-template-columns:minmax(450px,1fr) auto minmax(330px,1fr);
  align-items:center;
  gap:20px;
}
.brand-group{grid-column:1;justify-self:start}
.mode-switch{grid-column:2;justify-self:center}
.header-side{grid-column:3;justify-self:end;max-width:390px;justify-content:flex-end;flex-wrap:wrap}
body.address-mode .app-header{
  color:#fff;
  background:linear-gradient(118deg,rgba(16,42,67,.99),rgba(15,65,70,.98) 58%,rgba(20,101,82,.97));
  border-bottom-color:rgba(255,255,255,.12);
  box-shadow:0 16px 42px rgba(7,31,53,.18);
}
body.address-mode .brand-kicker{color:#9edbcf}
body.address-mode .brand-copy h1{color:#fff}
body.address-mode .brand-copy p{color:rgba(232,246,243,.78)}
body.address-mode .mode-switch{background:rgba(255,255,255,.09);border-color:rgba(255,255,255,.13)}
body.address-mode .mode-switch-btn{color:rgba(235,247,244,.78)}
body.address-mode .mode-switch-btn.active{color:#176550;background:#fff;box-shadow:0 8px 22px rgba(0,0,0,.18)}
@media (max-width:1100px){
  .app-header{display:flex;flex-wrap:wrap;gap:12px 16px}
  .brand-group{flex:1 1 420px}.mode-switch{order:3;flex:0 0 auto}.header-side{order:2;max-width:none;margin-left:auto}
}
@media (max-width:720px){
  .brand-group{flex:1 1 100%}.mode-switch{order:3;flex:1 1 100%}.header-side{order:4;flex:1 1 100%;margin-left:0;justify-content:flex-start}
}


.mode-switch{left:auto;top:auto;transform:none}

/* ========================================================================== */

/* ========================================================================== */
:root{
  --flagship-ink:#071725;
  --flagship-navy:#0b2235;
  --flagship-navy-2:#102f47;
  --flagship-teal:#0e756f;
  --flagship-teal-2:#20a69a;
  --flagship-cyan:#8ddbd4;
  --flagship-amber:#e6a24a;
  --flagship-paper:#f4f7f9;
  --flagship-line:rgba(13,57,78,.13);
  --flagship-glass:rgba(255,255,255,.82);
  --flagship-shadow:0 22px 60px rgba(5,31,48,.11);
  --flagship-shadow-soft:0 12px 34px rgba(5,31,48,.08);
  --flagship-radius-xl:24px;
  --flagship-radius-lg:18px;
  --flagship-radius-md:14px;
}
html{scroll-behavior:smooth}
body{
  color:#122a3b;
  background:
    radial-gradient(circle at 7% -8%,rgba(32,166,154,.12),transparent 31%),
    radial-gradient(circle at 94% 3%,rgba(230,162,74,.10),transparent 24%),
    linear-gradient(180deg,#eef3f6 0,#f7f9fa 380px,#f2f5f7 100%);
}
body::before{
  content:"";position:fixed;inset:0;pointer-events:none;z-index:-1;opacity:.36;
  background-image:linear-gradient(rgba(11,34,53,.025) 1px,transparent 1px),linear-gradient(90deg,rgba(11,34,53,.025) 1px,transparent 1px);
  background-size:32px 32px;
}
.skip-link{
  position:fixed;left:18px;top:14px;z-index:9999;padding:10px 16px;border-radius:12px;
  color:#071725;background:#fff;border:2px solid var(--flagship-teal);box-shadow:var(--flagship-shadow-soft);
  transform:translateY(-160%);transition:transform .18s ease;font-weight:800;text-decoration:none;
}
.skip-link:focus{transform:translateY(0)}
.app-header{
  min-height:104px;padding:18px clamp(22px,4vw,62px);
  background:
    linear-gradient(115deg,rgba(6,24,39,.99),rgba(11,47,67,.985) 47%,rgba(13,91,85,.97));
  border-bottom:1px solid rgba(255,255,255,.13);
  box-shadow:0 22px 54px rgba(4,23,37,.20);
  isolation:isolate;position:relative;overflow:hidden;
}
.app-header::before{
  content:"";position:absolute;inset:0;pointer-events:none;z-index:-1;
  background:
    radial-gradient(circle at 18% 18%,rgba(65,207,193,.18),transparent 34%),
    linear-gradient(90deg,transparent,rgba(255,255,255,.035),transparent 68%);
}
.app-header::after{
  content:"";position:absolute;width:420px;height:420px;right:-190px;top:-260px;border-radius:50%;
  border:1px solid rgba(255,255,255,.11);box-shadow:0 0 0 38px rgba(255,255,255,.025),0 0 0 78px rgba(255,255,255,.018);z-index:-1;
}
.brand-logo{
  width:58px;height:58px;border-radius:17px;padding:8px;background:rgba(255,255,255,.96);
  border:1px solid rgba(255,255,255,.55);box-shadow:0 13px 32px rgba(0,0,0,.22),inset 0 0 0 1px rgba(10,54,71,.07);
}
.brand-kicker{letter-spacing:.18em;color:#91ddd4;font-weight:800}
.brand-copy h1{font-size:clamp(23px,2.1vw,32px);letter-spacing:-.025em;text-shadow:0 2px 18px rgba(0,0,0,.18)}
.brand-copy p{font-size:13px;letter-spacing:.08em;color:rgba(232,247,245,.76)}
.product-edition{
  margin-left:9px;padding:5px 9px;border-radius:999px;vertical-align:middle;
  font-size:11px;letter-spacing:.08em;color:#102a43;background:linear-gradient(135deg,#f8ddb0,#f0b866);box-shadow:0 7px 18px rgba(230,162,74,.23);
}
.mode-switch{padding:5px;border-radius:15px;background:rgba(255,255,255,.085);border:1px solid rgba(255,255,255,.14);backdrop-filter:blur(14px)}
.mode-switch-btn{min-width:112px;border-radius:11px;font-weight:800;letter-spacing:.04em}
.mode-switch-btn.active{box-shadow:0 10px 26px rgba(0,0,0,.20)}
.header-ready,.autosave-status,.presentation-toggle{
  min-height:34px;border-color:rgba(255,255,255,.14);background:rgba(255,255,255,.075);backdrop-filter:blur(12px)
}
.flow-hint{opacity:.88}
.system-ribbon{
  padding:10px clamp(22px,4vw,62px);background:#071c2b;border-bottom:1px solid rgba(255,255,255,.07);color:rgba(229,245,243,.82)
}
.ribbon-left strong{letter-spacing:.12em;color:#a6e1da}
.ribbon-badges span{border-color:rgba(143,219,212,.20);background:rgba(143,219,212,.055);color:#b9e9e3}
.governance-deck{
  max-width:1480px;margin:18px auto 0;padding:0 24px;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;
}
.governance-deck article{
  min-width:0;display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:11px;padding:13px 15px;
  border:1px solid rgba(9,56,76,.11);border-radius:15px;background:rgba(255,255,255,.72);box-shadow:0 10px 28px rgba(5,31,48,.055);backdrop-filter:blur(16px);
  position:relative;overflow:hidden;
}
.governance-deck article::after{content:"";position:absolute;left:0;bottom:0;width:42%;height:2px;background:linear-gradient(90deg,var(--flagship-teal-2),transparent)}
.deck-code{font:800 11px/1 ui-monospace,SFMono-Regular,Consolas,monospace;color:#0e756f;letter-spacing:.12em}
.governance-deck b{display:block;color:#102f47;font-size:13px;line-height:1.25}
.governance-deck small{display:block;margin-top:3px;color:#647989;font-size:11px;line-height:1.35;white-space:normal}
.deck-signal{width:8px;height:8px;border-radius:50%;background:#20a69a;box-shadow:0 0 0 5px rgba(32,166,154,.11)}
.app-shell{max-width:1480px;padding:20px 24px 56px}
.workspace{
  border:1px solid rgba(9,56,76,.11);border-radius:var(--flagship-radius-xl);background:var(--flagship-glass);
  box-shadow:var(--flagship-shadow);backdrop-filter:blur(18px);overflow:hidden;
}
.workspace::before{height:3px;background:linear-gradient(90deg,var(--flagship-teal),var(--flagship-teal-2) 48%,rgba(230,162,74,.72))}
.section-head{padding-bottom:18px;border-bottom:1px solid rgba(9,56,76,.09)}
.section-number{
  width:38px;height:38px;border-radius:12px;background:linear-gradient(145deg,#0b3046,#0e756f);box-shadow:0 9px 22px rgba(14,117,111,.23);font-size:14px
}
.section-head h2{font-size:21px;letter-spacing:-.02em;color:#102f47}
.section-head p{color:#6a7f8e}
.topic-card,.date-range-card,.address-clean-hint,.smart-panel,.quality,.quick-resolve{
  border-color:rgba(9,56,76,.10);box-shadow:0 9px 26px rgba(5,31,48,.045)
}
.address-input{
  border:1px solid rgba(9,56,76,.15);border-radius:16px;background:rgba(255,255,255,.88);box-shadow:inset 0 1px 0 rgba(255,255,255,.7),0 10px 28px rgba(5,31,48,.045)
}
.address-input:focus{border-color:rgba(14,117,111,.54);box-shadow:0 0 0 4px rgba(32,166,154,.11),0 14px 34px rgba(5,31,48,.07)}
.btn{border-radius:12px;font-weight:780;transition:transform .16s ease,box-shadow .16s ease,background .16s ease,border-color .16s ease}
.btn:not(:disabled):hover{transform:translateY(-1px)}
.btn.primary{background:linear-gradient(135deg,#0c5e67,#118d82);box-shadow:0 10px 24px rgba(14,117,111,.20)}
.btn.primary:not(:disabled):hover{box-shadow:0 14px 30px rgba(14,117,111,.27)}
.preview,.address-map-preview{border-color:rgba(8,49,68,.13);background:#e9eef1;box-shadow:inset 0 0 0 1px rgba(255,255,255,.7),0 13px 34px rgba(5,31,48,.07)}
.preview canvas,.address-map-preview canvas{border-radius:16px}
.output-protocol{
  display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin:14px 0 12px;
}
.output-protocol span{
  min-height:51px;padding:10px 12px;border-radius:13px;background:linear-gradient(145deg,rgba(8,38,56,.97),rgba(12,64,74,.95));
  color:rgba(232,247,245,.78);font-size:11px;line-height:1.45;border:1px solid rgba(129,221,211,.12);box-shadow:0 9px 24px rgba(5,31,48,.11)
}
.output-protocol b{display:block;margin-bottom:2px;color:#91ddd4;font:800 10px/1.2 ui-monospace,SFMono-Regular,Consolas,monospace;letter-spacing:.11em}
.export-options summary{border-radius:11px}
.export-settings{min-width:min(620px,85vw);grid-template-columns:repeat(2,minmax(220px,1fr))}
.export-settings label:last-child select{border-color:rgba(14,117,111,.24);background:#f0faf8;font-weight:760;color:#0c5e67}
.preview-status{border-left:3px solid var(--flagship-teal);background:linear-gradient(90deg,rgba(32,166,154,.09),rgba(255,255,255,.62));color:#425e6e}
.analysis-callout-toolbar,.address-batchbar{border:1px solid rgba(9,56,76,.09);background:rgba(245,249,250,.78)}
.address-stats{
  display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:9px;padding:0;background:none;border:0;
}
.address-stats>span{
  min-height:78px;padding:13px 12px;border:1px solid rgba(9,56,76,.10);border-radius:14px;background:linear-gradient(145deg,rgba(255,255,255,.96),rgba(239,247,247,.88));
  box-shadow:0 8px 23px rgba(5,31,48,.05);align-items:flex-start;justify-content:center
}
.address-stats b{font-size:24px;color:#0b5962;font-variant-numeric:tabular-nums}
.address-stats small{color:#667d8c;font-weight:650}
.address-completeness{position:relative;overflow:hidden}
.address-completeness::after{content:"";position:absolute;left:0;bottom:0;width:100%;height:3px;background:linear-gradient(90deg,var(--flagship-teal-2),var(--flagship-amber))}
.address-map-actions,.address-export-actions{display:flex;justify-content:flex-end;gap:9px;flex-wrap:wrap}
.address-map-actions{margin-top:12px}
.address-export-actions{margin-left:auto}
.address-result-actions{gap:10px}
.address-map-legend{border-color:rgba(9,56,76,.09);background:rgba(247,250,251,.78)}
.version-info{font-family:ui-monospace,SFMono-Regular,Consolas,monospace}
.more-info{border-color:rgba(9,56,76,.10);background:rgba(249,251,252,.74)}

@media (max-width:1180px){
  .governance-deck{grid-template-columns:repeat(2,minmax(0,1fr))}
  .output-protocol{grid-template-columns:1fr}
  .address-stats{grid-template-columns:repeat(3,minmax(0,1fr))}
}
@media (max-width:760px){
  .app-header{padding:14px 16px}.system-ribbon{padding:9px 16px}
  .governance-deck{grid-template-columns:1fr;padding:0 14px;margin-top:12px}.governance-deck article:nth-child(n+3){display:none}
  .app-shell{padding:14px 12px 40px}.workspace{border-radius:18px}
  .brand-logo{width:50px;height:50px}.brand-copy h1{font-size:21px}.product-edition{display:inline-block;margin-left:4px;padding:3px 7px;font-size:9px}
  .address-stats{grid-template-columns:repeat(2,minmax(0,1fr))}.address-stats>span{min-height:68px}.address-stats b{font-size:21px}
  .address-completeness{grid-column:1/-1}
  .export-settings{min-width:min(88vw,520px);grid-template-columns:1fr}
  .output-protocol span{min-height:auto}
  .address-map-actions,.address-export-actions{width:100%;justify-content:stretch}.address-map-actions .btn,.address-export-actions .btn{flex:1 1 180px}
}
@media (prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}*,*::before,*::after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}
}
@media (forced-colors:active){
  .workspace,.governance-deck article,.output-protocol span{border:1px solid CanvasText}
  .deck-signal{forced-color-adjust:auto}
}



.executive-takeaway{position:relative;display:grid;grid-template-columns:180px minmax(0,1fr);gap:3px 20px;margin:12px 0 14px;padding:18px 22px 18px 26px;border:1px solid rgba(42,92,111,.24);border-radius:18px;background:linear-gradient(120deg,#0a2535 0%,#0c3e4c 58%,#0c6658 100%);box-shadow:0 16px 34px rgba(12,42,56,.12);overflow:hidden;color:#fff}.executive-takeaway:before{content:"";position:absolute;left:0;top:0;bottom:0;width:6px;background:linear-gradient(#f38a4d,#53cdb0)}.executive-takeaway:after{content:"";position:absolute;right:-42px;top:-72px;width:260px;height:180px;border:1px solid rgba(116,221,204,.18);border-radius:50%;transform:rotate(-18deg)}.executive-takeaway span{grid-row:1/3;align-self:center;font-size:11px;font-weight:800;letter-spacing:.14em;color:#78d4c3}.executive-takeaway strong{position:relative;z-index:1;font-size:18px;line-height:1.45;letter-spacing:.01em}.executive-takeaway small{position:relative;z-index:1;font-size:12px;line-height:1.5;color:rgba(226,244,243,.72)}
.export-settings{grid-template-columns:repeat(3,minmax(180px,1fr))}.export-settings label:has(#visualThemeSelect),.export-settings label:has(#exportResolutionSelect){background:linear-gradient(180deg,#f9fcfd,#f1f7f8);border:1px solid #dce8eb;border-radius:12px;padding:8px 10px}.evidence-export{border-color:#3b7885;color:#1d5b69;background:linear-gradient(180deg,#f8fcfd,#edf6f7)}.evidence-export:hover{box-shadow:0 10px 20px rgba(32,95,109,.12);transform:translateY(-1px)}
.map-tool-select{display:flex;align-items:center;gap:7px;padding:6px 9px;border:1px solid #d5e4df;border-radius:12px;background:#f8fbfa;font-size:12px;font-weight:700;color:#45685c}.map-tool-select select{min-width:92px;border:0;background:transparent;color:#244b42;font:inherit;outline:none}.command-visual-selected .preview,.command-visual-selected .address-map-preview{background:#06151f;border-color:#28586b;box-shadow:0 18px 44px rgba(4,26,38,.22),inset 0 0 0 1px rgba(90,205,190,.08)}.command-visual-selected #board,.command-visual-selected #addressMapBoard{filter:drop-shadow(0 12px 28px rgba(0,25,38,.28))}.command-visual-selected .executive-takeaway{box-shadow:0 18px 42px rgba(3,25,37,.24)}
.output-protocol span{transition:transform .2s ease,box-shadow .2s ease}.output-protocol span:hover{transform:translateY(-1px);box-shadow:0 8px 18px rgba(20,63,79,.08)}
@media(max-width:900px){.export-settings{grid-template-columns:1fr 1fr}.executive-takeaway{grid-template-columns:1fr;padding-left:22px}.executive-takeaway span{grid-row:auto}.map-tool-select{width:100%;justify-content:space-between}}
@media(max-width:540px){.export-settings{grid-template-columns:1fr}.executive-takeaway strong{font-size:16px}.address-map-tools{gap:6px}.map-tool-select select{min-width:0;max-width:130px}.evidence-export{width:100%}}
@media(prefers-reduced-motion:reduce){.evidence-export,.output-protocol span{transition:none}.evidence-export:hover,.output-protocol span:hover{transform:none}}



.baseline-verify-panel{margin:12px 0 14px;border:1px solid #d3e1e6;border-radius:18px;background:linear-gradient(150deg,rgba(255,255,255,.98),rgba(244,249,250,.96));box-shadow:0 13px 30px rgba(23,59,73,.07);overflow:hidden}.baseline-verify-panel>summary{display:grid;grid-template-columns:178px minmax(0,1fr);gap:2px 18px;align-items:center;list-style:none;cursor:pointer;padding:15px 19px 15px 22px;position:relative}.baseline-verify-panel>summary::-webkit-details-marker{display:none}.baseline-verify-panel>summary:after{content:"＋";position:absolute;right:18px;top:18px;width:28px;height:28px;border:1px solid #cbdce2;border-radius:50%;display:grid;place-items:center;color:#315f6e;font-weight:800;background:#fff}.baseline-verify-panel[open]>summary:after{content:"−"}.baseline-kicker{grid-row:1/3;font-size:10px;letter-spacing:.15em;font-weight:900;color:#227968}.baseline-verify-panel>summary strong{font-size:16px;color:#173d51}.baseline-verify-panel>summary small{font-size:12px;color:#6d828e;line-height:1.5;padding-right:40px}.baseline-panel-body{padding:0 18px 18px;border-top:1px solid #e2ebee}.baseline-actions{display:flex;flex-wrap:wrap;gap:9px;padding:14px 0 10px}.baseline-primary{background:linear-gradient(135deg,#0d7568,#0f9180);border-color:#0b776b;color:#fff}.baseline-status{display:grid;grid-template-columns:230px minmax(0,1fr);gap:8px 16px;align-items:center;padding:13px 15px;border-radius:13px;border:1px solid #dce7eb;background:#f7fafb}.baseline-status b{font-size:14px;color:#24475a}.baseline-status span{font-size:12px;color:#6b7f89;line-height:1.45}.baseline-status.verified{border-color:#b6dfd3;background:#edf8f4}.baseline-status.verified b{color:#176655}.baseline-status.compatible{border-color:#e3d39c;background:#fff9e9}.baseline-status.compatible b{color:#8d6822}.baseline-status.rejected{border-color:#ebc5c0;background:#fff2f0}.baseline-status.rejected b{color:#a7473c}.comparison-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin-top:11px}.comparison-grid>span{display:grid;grid-template-columns:36px minmax(0,1fr);grid-template-rows:auto auto;column-gap:10px;align-items:center;padding:12px 13px;border:1px solid #dce7ea;border-radius:13px;background:#fff}.comparison-grid b{font-size:20px;color:#153b4e}.comparison-grid small{font-size:11px;color:#6d808a}.compare-symbol{grid-row:1/3;width:34px;height:34px;border-radius:10px;display:grid;place-items:center;font-style:normal;font-size:17px;font-weight:900;border:2px solid currentColor;background:#fff}.compare-symbol.plus{color:#d66f35}.compare-symbol.minus{color:#657b89}.compare-symbol.check{color:#1d8a6c}.compare-symbol.swap{color:#765aa4}.compare-symbol.delta{color:#2d6f94}.address-baseline-panel{margin-top:0;margin-bottom:12px}.command-visual-selected .baseline-verify-panel{background:linear-gradient(145deg,rgba(8,31,44,.96),rgba(9,46,55,.94));border-color:#275b68}.command-visual-selected .baseline-verify-panel>summary strong,.command-visual-selected .baseline-status b,.command-visual-selected .comparison-grid b{color:#eaf7f6}.command-visual-selected .baseline-verify-panel>summary small,.command-visual-selected .baseline-status span,.command-visual-selected .comparison-grid small{color:#9db9bd}.command-visual-selected .baseline-panel-body{border-color:#245260}.command-visual-selected .baseline-status,.command-visual-selected .comparison-grid>span{background:rgba(4,25,35,.7);border-color:#2b5c68}.command-visual-selected .baseline-verify-panel>summary:after{background:#0c2f3d;border-color:#397180;color:#8ed9ce}.command-visual-selected .compare-symbol{background:#0a2735}
@media(max-width:900px){.baseline-verify-panel>summary{grid-template-columns:1fr}.baseline-kicker{grid-row:auto}.baseline-status{grid-template-columns:1fr}.comparison-grid{grid-template-columns:1fr 1fr}}
@media(max-width:540px){.baseline-verify-panel>summary{padding:14px 48px 14px 16px}.baseline-panel-body{padding:0 12px 14px}.baseline-actions .btn{width:100%}.comparison-grid{grid-template-columns:1fr}.comparison-grid>span{min-height:58px}}



.app-header{
  min-height:100px;
  padding:16px clamp(22px,4vw,62px);
  background:linear-gradient(112deg,#071d2d 0%,#0a3448 48%,#0b665b 100%);
  box-shadow:0 16px 42px rgba(4,25,39,.18);
}
.app-header::before{background:linear-gradient(90deg,transparent,rgba(255,255,255,.035),transparent 70%),radial-gradient(circle at 88% 0%,rgba(73,199,177,.18),transparent 32%)}
.app-header::after{width:360px;height:360px;right:-205px;top:-250px;box-shadow:0 0 0 34px rgba(255,255,255,.022),0 0 0 70px rgba(255,255,255,.014)}
.brand-logo{width:62px;height:62px;padding:0;border-radius:19px;background:transparent;border:0;box-shadow:0 12px 30px rgba(0,0,0,.22)}
.brand-logo img{width:100%;height:100%;object-fit:contain;display:block;filter:drop-shadow(0 4px 10px rgba(0,0,0,.14))}
.brand-kicker{color:#9edfd5;letter-spacing:.14em}.brand-copy h1{letter-spacing:-.02em}.brand-copy p{letter-spacing:.035em;color:rgba(232,247,245,.74)}
.product-edition{color:#083646;background:linear-gradient(135deg,#dff6f1,#9fe2d3);box-shadow:0 7px 18px rgba(61,184,158,.18)}
.system-ribbon{background:#071b29;padding-top:9px;padding-bottom:9px}.ribbon-left strong{letter-spacing:.08em;color:#b5ebe3}.ribbon-badges span{font-size:11px;letter-spacing:.02em}
.governance-deck article{background:rgba(255,255,255,.86);border-color:rgba(9,56,76,.10)}
.governance-deck b{font-size:14px}.governance-deck small{font-size:11.5px}.deck-code{font-family:inherit;letter-spacing:.05em}
.output-protocol span{background:linear-gradient(145deg,#f4f8f9,#fff);color:#536b78;border-color:#dbe7eb;box-shadow:0 7px 18px rgba(5,31,48,.045)}
.output-protocol b{color:#126f67;font:800 11px/1.2 inherit;letter-spacing:.03em}
.output-protocol span:hover{box-shadow:0 9px 22px rgba(20,63,79,.07)}
.executive-takeaway span{font-family:inherit;letter-spacing:.08em;color:#90ddd0}
.baseline-kicker{font-size:11px;letter-spacing:.04em;color:#23766a}
.archive-export{border-color:#7194a0;color:#315d69;background:linear-gradient(180deg,#fbfdfd,#f1f6f7)}
.archive-export:hover{border-color:#4c7d89;box-shadow:0 9px 20px rgba(32,95,109,.10);transform:translateY(-1px)}
.baseline-verify-panel>summary{grid-template-columns:150px minmax(0,1fr)}
.baseline-verify-panel>summary strong{font-size:17px}.baseline-verify-panel>summary small{max-width:820px}
.version-info{font-family:inherit}
@media(max-width:760px){.brand-logo{width:52px;height:52px}.baseline-verify-panel>summary{grid-template-columns:1fr}.governance-deck article:nth-child(n+3){display:none}}



#presentationModeSelect,#addressPresentationSelect{font-weight:800;color:#133f4d}
body.command-theme #presentationModeSelect,body.command-theme #addressPresentationSelect{color:#dff6f2;background:#0d3444;border-color:#38606d}
.export-settings label:first-child{min-width:250px}
.presentation-scene-note{display:inline-flex;align-items:center;gap:7px;padding:7px 11px;border-radius:999px;background:#eaf5f2;color:#236c62;font-size:12px;font-weight:800}
.presentation-scene-note::before{content:"";width:7px;height:7px;border-radius:50%;background:#e8793c;box-shadow:0 0 0 4px rgba(232,121,60,.12)}
@media(max-width:720px){.export-settings{grid-template-columns:1fr}.address-map-tools .map-tool-select{width:100%;justify-content:space-between}.address-map-tools select{max-width:180px}}



.natural-output-note{grid-template-columns:repeat(3,minmax(0,1fr));background:linear-gradient(180deg,#f8fbfc,#f3f8f8);border-color:#d9e5e7}
.natural-output-note span b{color:#1d6c61}
#presentationModeSelect{color:#174b55}
@media(max-width:760px){.natural-output-note{grid-template-columns:1fr}}



:root{
  --bg:#f3f8f5;--card:#ffffff;--text:#29423f;--muted:#71837e;--line:#dce8e2;
  --navy:#294f4b;--blue:#4b8f84;--blue-soft:#edf7f4;--green:#3e8a6b;--green-soft:#edf8f2;
  --shadow:0 14px 40px rgba(40,82,68,.075)
}
html{background:#f3f8f5}body,body.address-mode{background:radial-gradient(circle at 12% -8%,rgba(120,196,158,.13),transparent 35rem),radial-gradient(circle at 94% 1%,rgba(244,176,112,.09),transparent 30rem),linear-gradient(180deg,#fbfdfb 0%,#f2f8f4 48%,#edf5ef 100%)!important;color:var(--text)}
body::before{background:linear-gradient(90deg,rgba(255,255,255,.58),transparent 24%,transparent 76%,rgba(255,255,255,.42))}
.app-header,.address-mode .app-header{position:relative;max-width:1240px;min-height:96px;margin:0 auto;padding:20px 24px 12px;background:transparent!important;border:0;box-shadow:none!important;backdrop-filter:none}
.app-header::before,.app-header::after{display:none!important}
.brand-group{display:flex;align-items:center;gap:14px}.brand-logo,.brand-mark{width:54px;height:54px;padding:0;border:0;border-radius:16px;background:#fff;box-shadow:0 9px 24px rgba(47,91,76,.13);overflow:hidden}.brand-logo img{width:100%;height:100%;display:block;object-fit:cover;filter:none}
.brand-kicker,.address-mode .brand-kicker{color:#64927e}.brand-copy h1,.address-mode .brand-copy h1{color:#284944}.brand-copy p,.address-mode .brand-copy p{color:#758780}.product-edition{color:#4b7669;background:#edf7f2;border:1px solid #d5e9df;box-shadow:none}
.mode-switch,.address-mode .mode-switch{background:#eaf3ee;border:1px solid #d9e9e0;box-shadow:inset 0 1px 2px rgba(45,84,70,.04)}.mode-switch-btn,.address-mode .mode-switch-btn{color:#6b8178}.mode-switch-btn.active,.address-mode .mode-switch-btn.active{background:#fff;color:#335f54;box-shadow:0 4px 13px rgba(51,95,84,.10)}
.header-ready,.autosave-status,.presentation-toggle{background:#fff;border-color:#dce9e3;color:#617970}.presentation-toggle{color:#44796c}.flow-hint{color:#768881}.flow-hint b{background:#eaf4ef;color:#3f7467}.flow-hint i{background:#d9e7df}
.system-ribbon{max-width:1192px;margin:4px auto 0;border-radius:16px;background:rgba(255,255,255,.74);border:1px solid #dce9e2;color:#607770;box-shadow:0 10px 28px rgba(46,85,71,.055)}.ribbon-left strong{color:#37695d}.ribbon-badges span{background:#eef7f3;border-color:#d7e9e1;color:#4b796d}
.governance-deck{max-width:1192px}.governance-deck article{background:rgba(255,255,255,.88);border:1px solid #dde9e3;box-shadow:0 10px 26px rgba(42,80,67,.055)}.governance-deck b{color:#315b51}.governance-deck small{color:#768780}.deck-code{background:#eef7f3;color:#4a796c}.deck-signal.active{background:#69ad8a;box-shadow:0 0 0 4px rgba(105,173,138,.12)}
.app-shell,.address-page{padding-top:14px}.workspace,.address-page .workspace{background:linear-gradient(180deg,rgba(255,255,255,.995),rgba(250,253,251,.99))!important;border-color:#dce8e2!important;box-shadow:0 1px 0 rgba(255,255,255,.98) inset,0 16px 44px rgba(40,82,68,.065)!important}.workspace:hover,.address-page .workspace:hover{box-shadow:0 1px 0 rgba(255,255,255,.98) inset,0 19px 48px rgba(40,82,68,.085)!important}.section-number,.address-page .section-number{background:linear-gradient(145deg,#79bea0,#4c9475);box-shadow:0 8px 20px rgba(66,137,105,.17)}.section-head h2,.address-page .section-head h2{color:#31584f}.section-head p,.address-page .section-head p{color:#74857f}
.address-input,.address-page textarea,.address-page input,.address-page select,input,select,textarea{background:#fff!important;border-color:#d5e3dc!important;color:#314b46}.btn{border-color:#d5e2dc;background:#fff;color:#46635b}.btn.primary{background:#4d9278;border-color:#4d9278;color:#fff}.btn.quiet{background:#f5f9f7}.text-btn{color:#4b8874}.simple-batchbar,.advanced-tools,.export-options,.more-info,.filterbar,.address-toolbar{background:#f7faf8!important;border-color:#dfe9e4!important}
th{background:#f1f7f4!important;color:#59726a!important;border-bottom-color:#dce7e2!important}tbody tr:hover{background:#f5faf7}tbody tr.selected,.address-row-selected{background:#edf7f2!important;box-shadow:inset 4px 0 0 #5a9b7f!important}
.preview,.address-map-preview,.preview-dialog-body{background:linear-gradient(145deg,#eaf2ee,#f4f8f6)!important;border-color:#dbe7e1!important}.preview canvas,.address-map-preview canvas{background:#fff!important;box-shadow:0 10px 28px rgba(40,75,63,.085)!important;cursor:pointer;touch-action:manipulation}.preview canvas.analysis-map-hover{cursor:pointer}.preview-dialog::backdrop{background:rgba(43,67,59,.48)}.preview-dialog-head{background:#fbfdfc;color:#365e54;border-bottom-color:#dce7e2}.preview-dialog-body{background:#edf4f0!important}
.map-tool-select{background:#f6faf8;border-color:#d8e7df;color:#4c6d63}.map-tool-select select{color:#315a50}.command-visual-selected .preview,.command-visual-selected .address-map-preview{background:linear-gradient(145deg,#eaf2ee,#f4f8f6)!important;border-color:#dbe7e1!important;box-shadow:none!important}.command-visual-selected #board,.command-visual-selected #addressMapBoard{filter:none!important}.command-visual-selected .executive-takeaway{box-shadow:none!important}
.address-mode .header-side{visibility:visible;pointer-events:auto}.address-mode #actionDock{display:none!important}
.toast{background:#365d52}.modal{background:rgba(40,66,58,.42)}.modal-card{background:#fff;border-color:#dce7e2}.modal-card h3{color:#31584f}.modal-card p{color:#6e817a}
canvas[role="region"]{touch-action:manipulation;user-select:none;-webkit-user-select:none}
@media(max-width:900px){.system-ribbon,.governance-deck{margin-left:12px;margin-right:12px}.mode-switch{position:static;transform:none;margin-left:auto}.app-header{flex-wrap:wrap}.header-side{width:100%;justify-content:flex-end}}
@media(max-width:600px){.app-header,.address-mode .app-header{padding:16px 12px 8px}.brand-logo,.brand-mark{width:46px;height:46px}.brand-copy h1{font-size:20px}.system-ribbon{display:none}.governance-deck{grid-template-columns:repeat(2,minmax(0,1fr));margin-top:8px}.header-side{display:none}.mode-switch{width:100%;order:3;margin-top:6px}.workspace{border-radius:17px}}
/* Fit enlarged previews to the dialog width so every marker and callout is directly reachable without horizontal hunting. */
.preview-dialog-body canvas{width:100%!important;max-width:100%!important;height:auto!important;min-width:0!important;touch-action:manipulation;cursor:pointer}




body.address-mode .app-header{background:transparent!important;border:0!important;box-shadow:none!important}
body.address-mode .brand-kicker{color:#3F705E!important;text-shadow:none!important;opacity:1!important}
body.address-mode .brand-copy h1,body.address-mode #brandTitleText{color:#203D34!important;text-shadow:none!important;opacity:1!important}
body.address-mode .brand-copy p,body.address-mode #brandModeText{color:#536F65!important;text-shadow:none!important;opacity:1!important}
body.address-mode .product-edition{color:#386A59!important;background:#E8F4EE!important;border-color:#CDE4D8!important;box-shadow:none!important;opacity:1!important}
body.address-mode .mode-switch{background:#E9F2ED!important;border-color:#D4E5DC!important}
body.address-mode .mode-switch-btn{color:#536B62!important;text-shadow:none!important;opacity:1!important}
body.address-mode .mode-switch-btn.active{color:#145C48!important;background:#FFFFFF!important;box-shadow:0 5px 16px rgba(35,83,65,.13)!important}
body.address-mode .autosave-status,body.address-mode .presentation-toggle{color:#41695B!important;background:#FFFFFF!important;border-color:#D5E5DD!important;opacity:1!important}
body.address-mode .brand-logo{opacity:1!important;filter:none!important}



.preview,.address-map-preview{overflow:auto!important}
.preview canvas,.address-map-preview canvas{display:block!important;width:100%!important;height:auto!important;max-width:100%!important;min-width:0!important;object-fit:contain!important;cursor:pointer!important;touch-action:manipulation!important}
.address-page .section-head h2,.address-page .brand-copy h1{color:#203d2b!important}
.address-page .section-head p,.address-page .brand-copy p,.address-clean-hint,.address-density-hint,.address-search,.address-export-bar small,.address-result-sub{color:#4f624f!important}
.address-page .match-summary.neutral{background:#e9f2df!important;color:#33472f!important}
.address-page .match-summary.good{background:#e2f3d4!important;color:#294c25!important}
.address-page .match-summary.warn{background:#fff0cf!important;color:#68450f!important}
.address-map-tools,.address-stats span,.address-export-bar{background:#edf5e4!important;border-color:#c3d7ad!important}
.map-view-btn{color:#405b36!important}.map-view-btn.active{background:#fff!important;color:#254b22!important;border-color:#92b674!important}
.map-tool-select{color:#334f3d!important;background:#fff!important;border-color:#b9cfb0!important}.map-tool-select select{color:#1f4636!important}
.address-result-table th{background:#e4efda!important;color:#304b32!important}
.address-result-address,.address-seq,.address-export-bar strong{color:#263f2c!important}
.address-label-toggle.off{color:#545d4e!important;background:#fff!important;border-color:#c7cfbd!important}
.address-private-badge{color:#355727!important;background:#e4f0d5!important}
.address-green-input{color:#273b27!important;background:#fff!important}
.address-green-input::placeholder{color:#65725f!important;opacity:1!important}
.address-map-preview canvas:focus{outline:4px solid rgba(48,101,65,.28)!important;outline-offset:3px}


.app-header{position:sticky!important;top:0!important;z-index:30!important}
.mode-switch,.mode-switch-btn{pointer-events:auto!important}
.modal{z-index:80!important}


@media(min-width:761px){.date-presets{row-gap:7px}.date-preset{white-space:nowrap}}


.patrol-mode{background:radial-gradient(circle at 10% -6%,rgba(86,152,135,.11),transparent 34rem),radial-gradient(circle at 94% 4%,rgba(210,164,98,.08),transparent 29rem),linear-gradient(180deg,#fbfdfc 0%,#f2f7f4 52%,#edf3ef 100%)!important}
.patrol-mode #actionDock{display:none!important}.patrol-mode .header-side{display:none!important}.patrol-mode .brand-kicker{color:#4e7b6e!important}.patrol-mode #brandTitleText{color:#213f37!important}.patrol-mode #brandModeText{color:#5e756c!important}.patrol-mode .product-edition{color:#416d60!important;background:#eef7f3!important;border-color:#d6e8df!important}
.patrol-mode .mode-switch{background:#eaf2ee!important;border-color:#d8e7df!important}.patrol-mode .mode-switch-btn{color:#60776f!important}.patrol-mode .mode-switch-btn.active{color:#275d4e!important;background:#fff!important;box-shadow:0 4px 13px rgba(51,95,84,.10)!important}
.patrol-page{padding-bottom:48px}.patrol-hero,.patrol-dashboard,.patrol-analysis-zone{border-color:rgba(63,111,92,.13)}.patrol-section-head{align-items:flex-start}.patrol-private-badge,.patrol-schema-badge{padding:7px 10px;border-radius:999px;background:#edf7f2;border:1px solid #d2e7dc;color:#477366;font-size:12px;white-space:nowrap}
.patrol-import-grid{display:grid;grid-template-columns:minmax(0,1.8fr) minmax(280px,.72fr);gap:16px}.patrol-input-card,.patrol-contract-card,.patrol-panel{background:#fff;border:1px solid rgba(64,104,89,.13);border-radius:18px;box-shadow:0 7px 24px rgba(52,79,67,.045)}.patrol-input-card{padding:16px}.patrol-contract-card{padding:18px;display:flex;flex-direction:column;gap:12px}.patrol-contract-card>strong{font-size:17px;color:#284c41}.patrol-contract-card>div{display:flex;flex-direction:column;gap:3px;padding:11px 12px;border-radius:13px;background:#f7faf8;border:1px solid #edf2ef}.patrol-contract-card span{color:#6b7c75;font-size:12px}.patrol-contract-card b{font-size:13px;color:#354f46}.patrol-contract-card small{line-height:1.6;color:#71817b}
.patrol-field-row{display:grid;grid-template-columns:1.4fr .6fr .8fr;gap:10px;margin-bottom:7px}.patrol-field-row label{display:flex;flex-direction:column;gap:6px;font-size:12px;color:#62766e}.patrol-field-row input,.patrol-field-row select{height:42px;border:1px solid #d8e6df;background:#fbfdfc;border-radius:11px;padding:0 11px;color:#2f4c42;font:inherit}.patrol-date-input.invalid{border-color:#c98272;background:#fff8f6;box-shadow:0 0 0 3px rgba(181,88,69,.08)}.patrol-date-hint{display:block;color:#71817b;margin-bottom:10px}.patrol-date-hint.bad{color:#a64e3b;font-weight:600}.patrol-input{width:100%;min-height:230px;resize:vertical;border:1px solid #d6e5dd;background:#fbfdfc;border-radius:14px;padding:14px;font:13px/1.55 ui-monospace,SFMono-Regular,Consolas,monospace;color:#2b4038}.patrol-input:focus{outline:none;border-color:#7caf9a;box-shadow:0 0 0 3px rgba(75,132,106,.09)}.patrol-actions{margin-top:10px}.patrol-import-status{margin-top:10px;border-radius:11px;padding:9px 11px;font-size:13px;background:#f4f8f6;color:#64756e}.patrol-import-status.good{background:#eef8f3;color:#2d6a50}.patrol-import-status.bad{background:#fff2ef;color:#9b4939}.patrol-import-status.warn{background:#fff8e9;color:#8a6428}
.patrol-kpis{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin:4px 0 16px}.patrol-kpis article{background:#fff;border:1px solid rgba(67,108,91,.13);border-radius:16px;padding:15px 16px;min-height:108px;box-shadow:0 7px 22px rgba(53,78,67,.04)}.patrol-kpis span{display:block;color:#6c7f76;font-size:12px;margin-bottom:7px}.patrol-kpis strong{display:block;color:#294a40;font-size:31px;letter-spacing:-.5px}.patrol-kpis small{display:block;color:#77877f;margin-top:5px}.patrol-kpis .reg-zero{border-left:4px solid #c87562}.patrol-kpis .reg-one{border-left:4px solid #d2a35a}.patrol-kpis .reg-good{border-left:4px solid #5c987d}
.patrol-columns{display:grid;grid-template-columns:1fr 1fr;gap:14px}.patrol-columns-balanced{margin-bottom:14px}.patrol-panel{padding:15px;min-width:0}.patrol-panel-head{display:flex;align-items:flex-start;justify-content:space-between;gap:10px;margin-bottom:12px}.patrol-panel-head h3{margin:0 0 3px;color:#2c4c42;font-size:16px}.patrol-panel-head small{color:#7b8983;line-height:1.45}.patrol-table{width:100%;border-collapse:collapse;font-size:12px}.patrol-table th{position:sticky;top:0;background:#f4f8f6;color:#60736a;text-align:left;font-weight:650;padding:9px 8px;border-bottom:1px solid #dfe9e4;white-space:nowrap}.patrol-table td{padding:9px 8px;border-bottom:1px solid #edf2ef;color:#344b43;vertical-align:top}.patrol-table tr:first-child td{background:#fbfdfc}.patrol-empty{color:#8a9892!important;text-align:center!important;padding:26px!important}.patrol-rank{display:inline-flex;align-items:center;justify-content:center;min-width:22px;height:22px;border-radius:999px;background:#eef6f2;color:#456c60;font-size:11px;margin-right:4px}.patrol-rate{font-weight:700;color:#386e5b}.patrol-danger{font-weight:700;color:#a35242}.patrol-warn{font-weight:700;color:#98702f}.patrol-ok{font-weight:700;color:#397259}
.patrol-watch-list,.patrol-quality-list{display:flex;flex-direction:column;gap:8px;max-height:420px;overflow:auto}.patrol-watch-item,.patrol-quality-item{display:grid;grid-template-columns:auto 1fr auto;gap:10px;align-items:start;padding:10px 11px;background:#f8faf9;border:1px solid #edf2ef;border-radius:12px}.patrol-watch-item b,.patrol-quality-item b{font-size:13px;color:#344e45}.patrol-watch-item small,.patrol-quality-item small{display:block;color:#75847e;margin-top:2px;line-height:1.45}.patrol-tag{padding:3px 7px;border-radius:999px;font-size:11px;background:#f3e9e5;color:#9a5747;white-space:nowrap}.patrol-tag.warn{background:#faf0d9;color:#8c6a2e}.patrol-tag.good{background:#eaf5ef;color:#3a715c}.patrol-empty-card{padding:28px;text-align:center;color:#899690;background:#f8faf9;border-radius:12px}
.patrol-map-panel{margin-top:14px}.patrol-map-panel canvas{display:block;width:100%;height:auto;max-height:680px;border-radius:15px;border:1px solid #dce8e2;background:#f5f8f6}.patrol-map-legend{display:flex;flex-wrap:wrap;gap:13px;margin-top:9px;color:#687971;font-size:12px}.patrol-map-legend span{display:inline-flex;align-items:center;gap:5px}.p-dot{width:9px;height:9px;border-radius:50%;display:inline-block}.p0{background:#c87562}.p1{background:#d2a35a}.p2{background:#5c987d}.pr{background:#826e9e}
.patrol-brief-panel{margin-top:14px}.patrol-brief{width:100%;min-height:190px;border:1px solid #dbe7e1;background:#fbfdfc;border-radius:14px;padding:14px;color:#30473f;font:14px/1.75 "Microsoft YaHei","PingFang SC",sans-serif;resize:vertical}
@media(max-width:1050px){.patrol-import-grid,.patrol-columns{grid-template-columns:1fr}.patrol-kpis{grid-template-columns:repeat(2,minmax(0,1fr))}.patrol-mode .mode-switch{width:100%;order:3;margin-top:6px}.patrol-mode .mode-switch-btn{flex:1}}
@media(max-width:620px){.patrol-field-row{grid-template-columns:1fr}.patrol-kpis{grid-template-columns:1fr 1fr}.patrol-private-badge{display:none}.patrol-panel{padding:11px}.patrol-kpis strong{font-size:26px}.patrol-input{min-height:190px}.patrol-table{font-size:11px}.patrol-page{padding-left:10px;padding-right:10px}}
@media(max-width:620px){
  .patrol-mode .mode-switch{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr));gap:4px!important}
  .patrol-mode .mode-switch-btn{width:auto!important;min-width:0!important;padding:10px 5px!important;font-size:12px!important;white-space:nowrap!important}
  .patrol-mode .governance-deck article:nth-child(n+3){display:flex!important}
}


.patrol-ai-guide{margin-top:16px;border:1px solid #d9e6df;border-radius:18px;background:linear-gradient(145deg,#fbfdfc,#f5faf7);overflow:hidden;box-shadow:0 7px 24px rgba(52,79,67,.04)}
.patrol-ai-guide>summary{list-style:none;display:grid;grid-template-columns:110px minmax(0,1fr);gap:3px 14px;align-items:center;cursor:pointer;padding:15px 18px;position:relative}.patrol-ai-guide>summary::-webkit-details-marker{display:none}.patrol-ai-guide>summary:after{content:"＋";position:absolute;right:17px;top:18px;width:27px;height:27px;border:1px solid #cfe0d7;border-radius:50%;display:grid;place-items:center;color:#376958;background:#fff;font-weight:800}.patrol-ai-guide[open]>summary:after{content:"−"}.patrol-ai-guide>summary span{grid-row:1/3;font-size:11px;letter-spacing:.08em;font-weight:900;color:#397b64}.patrol-ai-guide>summary strong{font-size:16px;color:#284c41}.patrol-ai-guide>summary small{font-size:12px;color:#71817b;padding-right:44px}.patrol-ai-guide-body{border-top:1px solid #e4ede8;padding:15px 18px 18px}.patrol-ai-guide-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.patrol-ai-guide-grid section{padding:12px 13px;border:1px solid #e3ece7;border-radius:13px;background:#fff}.patrol-ai-guide-grid b{display:block;margin-bottom:5px;color:#315b4d;font-size:13px}.patrol-ai-guide-grid p{margin:0;color:#667a72;font-size:12px;line-height:1.65}.patrol-ai-format{margin:12px 0;padding:13px 14px;border:1px solid #dbe8e1;border-radius:13px;background:#f5f9f7;overflow:auto;font:12px/1.6 ui-monospace,SFMono-Regular,Consolas,monospace;color:#29463b;white-space:pre}.patrol-ai-links{display:flex;flex-wrap:wrap;gap:9px;margin:0 0 9px}.patrol-ai-links a{display:inline-flex;align-items:center;min-height:34px;padding:7px 11px;border:1px solid #ccdfd5;border-radius:10px;background:#fff;color:#326c58;font-size:12px;font-weight:750;text-decoration:none}.patrol-ai-links a:hover{background:#f0f7f3}.patrol-ai-guide-body>small{color:#75867f;line-height:1.6}
@media(max-width:720px){.patrol-ai-guide>summary{grid-template-columns:1fr;padding-right:54px}.patrol-ai-guide>summary span{grid-row:auto}.patrol-ai-guide-grid{grid-template-columns:1fr}.patrol-ai-format{font-size:11px}.patrol-ai-links a{flex:1;justify-content:center}}



.patrol-compare-zone{border-color:rgba(63,111,92,.13);background:linear-gradient(180deg,rgba(255,255,255,.82),rgba(247,251,249,.9))}
.patrol-compare-input-grid{display:grid;grid-template-columns:minmax(0,1.65fr) minmax(300px,.75fr);gap:16px}.patrol-compare-input{min-height:250px}.patrol-compare-options{display:flex;gap:14px;align-items:end;margin-bottom:10px}.patrol-compare-options>label:first-child{display:flex;flex-direction:column;gap:6px;color:#62766e;font-size:12px}.patrol-compare-options select{height:40px;border:1px solid #d8e6df;background:#fbfdfc;border-radius:10px;padding:0 10px;color:#2f4c42}.patrol-check-option{display:flex!important;flex-direction:row!important;align-items:center!important;gap:7px!important;min-height:40px;color:#667a72!important}.patrol-check-option input{width:17px;height:17px;accent-color:#4f8c75}
.patrol-snapshot-strip{display:flex;gap:9px;overflow-x:auto;padding:4px 1px 12px;scroll-snap-type:x proximity}.patrol-snapshot-card{flex:0 0 158px;scroll-snap-align:start;padding:11px 12px;border:1px solid #dce8e2;border-radius:14px;background:#fff;box-shadow:0 5px 16px rgba(53,78,67,.04)}.patrol-snapshot-card.test{border-style:dashed;background:#f7f7f5;opacity:.78}.patrol-snapshot-card span{display:block;font-size:10px;color:#789087;text-transform:uppercase}.patrol-snapshot-card b{display:block;margin-top:3px;color:#305046;font-size:13px}.patrol-snapshot-card small{display:block;margin-top:3px;color:#7b8983;font-size:10px;white-space:nowrap}.patrol-snapshot-card em{display:block;margin-top:8px;color:#456e60;font-style:normal;font-size:11px}
.patrol-compare-kpis{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin:2px 0 14px}.patrol-compare-kpis article{background:#fff;border:1px solid rgba(67,108,91,.13);border-radius:16px;padding:14px 15px;min-height:104px;box-shadow:0 7px 22px rgba(53,78,67,.04)}.patrol-compare-kpis span{display:block;color:#6c7f76;font-size:12px;margin-bottom:6px}.patrol-compare-kpis strong{display:block;color:#294a40;font-size:28px}.patrol-compare-kpis small{display:block;color:#77877f;margin-top:5px}.patrol-compare-kpis .reg-zero{border-left:4px solid #c87562}.patrol-compare-kpis .reg-good{border-left:4px solid #5c987d}
.patrol-compare-charts{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.patrol-chart-panel{min-height:330px}.patrol-chart-panel.focus{outline:3px solid rgba(76,137,112,.12);box-shadow:0 10px 28px rgba(52,95,78,.10)}.patrol-chart-svg{width:100%;height:auto;display:block;min-height:260px}.cmp-grid{stroke:#e6eee9;stroke-width:1}.cmp-axis{fill:#7b8983;font:11px "Microsoft YaHei","PingFang SC",sans-serif}.cmp-x{font-size:10px}.cmp-line{fill:none;stroke:#4f8c75;stroke-width:3;stroke-linejoin:round;stroke-linecap:round}.cmp-point{fill:#4f8c75;stroke:#fff;stroke-width:2}.cmp-point.test{fill:#a7aaa6;stroke-dasharray:2 2}.cmp-value{fill:#355f50;font:700 11px "Microsoft YaHei","PingFang SC",sans-serif}.patrol-chart-fallback{display:flex;gap:14px;justify-content:center;flex-wrap:wrap;color:#6f8179;font-size:11px;margin-top:-4px}
.patrol-stack-chart{display:flex;flex-direction:column;gap:11px}.patrol-stack-row{display:grid;grid-template-columns:95px minmax(140px,1fr) 92px;gap:9px;align-items:center}.patrol-stack-row.test{opacity:.62}.patrol-stack-label b{display:block;color:#355147;font-size:12px}.patrol-stack-label small{display:block;color:#82918b;font-size:10px}.patrol-stack-track{height:22px;border-radius:7px;overflow:hidden;display:flex;background:#edf2ef}.patrol-stack-track i{display:block;height:100%}.stack-zero{background:#c87562}.stack-one{background:#d2a35a}.stack-two{background:#5c987d}.patrol-stack-values{display:grid;grid-template-columns:repeat(3,1fr);gap:4px;font-size:11px;color:#63766e;text-align:center}.patrol-compare-legend{display:flex;gap:12px;margin-top:12px;color:#6b7b75;font-size:11px}.patrol-compare-legend span{display:flex;align-items:center;gap:5px}
.patrol-change-bars{display:flex;flex-direction:column;gap:10px}.patrol-change-row{display:grid;grid-template-columns:70px 1fr 38px;gap:10px;align-items:center;color:#52685f;font-size:12px}.patrol-change-row>div{height:16px;border-radius:999px;background:#edf3f0;overflow:hidden}.patrol-change-row i{display:block;height:100%;min-width:2px;border-radius:999px;background:linear-gradient(90deg,#76a692,#4f8c75)}.patrol-change-row b{text-align:right;color:#35574b}.patrol-trend-pill{display:inline-flex;padding:3px 8px;border-radius:999px;font-size:11px;font-weight:700}.patrol-trend-pill.good{background:#e9f5ef;color:#397259}.patrol-trend-pill.bad{background:#fbebe7;color:#a35242}.patrol-trend-pill.flat{background:#f0f3f1;color:#6e7c76}
.patrol-insight-list{display:flex;flex-direction:column;gap:9px;max-height:430px;overflow:auto}.patrol-insight{padding:11px 12px;border:1px solid #e1eae5;border-radius:13px;background:#f9fbfa}.patrol-insight.warn{border-left:4px solid #d2a35a}.patrol-insight.critical{border-left:4px solid #c87562}.patrol-insight.info{border-left:4px solid #5c987d}.patrol-insight div{display:flex;gap:8px;align-items:center}.patrol-insight span{font-size:10px;padding:3px 6px;border-radius:999px;background:#edf4f1;color:#567268}.patrol-insight b{color:#344f45;font-size:13px}.patrol-insight p{margin:7px 0 0;color:#64776f;font-size:12px;line-height:1.6}.patrol-insight small{display:block;margin-top:6px;color:#87928e;font-size:10px;line-height:1.45}.patrol-compare-guide{margin-top:14px}.patrol-compare-bottom{margin-top:14px}
@media(max-width:1050px){.patrol-compare-input-grid,.patrol-compare-charts{grid-template-columns:1fr}.patrol-compare-kpis{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:620px){.patrol-compare-options{align-items:stretch;flex-direction:column;gap:7px}.patrol-compare-kpis{grid-template-columns:1fr 1fr}.patrol-stack-row{grid-template-columns:76px minmax(110px,1fr);}.patrol-stack-values{grid-column:2}.patrol-chart-panel{min-height:auto}.patrol-snapshot-card{flex-basis:145px}.patrol-change-row{grid-template-columns:62px 1fr 30px}}



.patrol-macro-columns{align-items:stretch}
.patrol-macro-panel{min-height:240px}
.patrol-macro-bars{display:grid;gap:16px;padding:8px 2px}
.patrol-macro-row{display:grid;grid-template-columns:58px 1fr 70px;gap:12px;align-items:center;font-size:13px}
.patrol-macro-row>div{height:14px;border-radius:999px;background:var(--soft,#eef3f5);overflow:hidden}
.patrol-macro-row i{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,#7ba79a,#86a6bd)}
.patrol-macro-row b{text-align:right;font-variant-numeric:tabular-nums}
.patrol-reg-stack{display:flex;height:24px;border-radius:14px;overflow:hidden;background:#edf1f2;margin:14px 0 20px}
.patrol-reg-stack i{display:block;height:100%}.patrol-reg-stack .p0{background:#d88378}.patrol-reg-stack .p1{background:#d8ad66}.patrol-reg-stack .p2{background:#78a38f}
.patrol-reg-summary{display:grid;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:10px}
.patrol-reg-summary span{display:grid;grid-template-columns:10px 1fr auto;gap:7px;align-items:center;padding:10px;border:1px solid var(--line,#e1e7e8);border-radius:12px;background:rgba(255,255,255,.62)}
.patrol-reg-summary em{width:9px;height:9px;border-radius:50%}.patrol-reg-summary em.p0{background:#d88378}.patrol-reg-summary em.p1{background:#d8ad66}.patrol-reg-summary em.p2{background:#78a38f}
.patrol-reg-summary strong{font-size:18px}.patrol-reg-summary small{grid-column:2/4;color:var(--muted,#6d7b80)}
.patrol-macro-narrative{margin-top:14px;padding:14px 16px;border:1px solid var(--line,#e1e7e8);border-radius:14px;background:linear-gradient(135deg,rgba(236,246,242,.86),rgba(242,246,250,.86));line-height:1.7;color:var(--text,#25353a)}
.patrol-person-zone{scroll-margin-top:16px}.patrol-person-table th,.patrol-person-table td{white-space:nowrap;vertical-align:middle}.patrol-person-table td:nth-child(2),.patrol-person-table td:nth-child(3){white-space:normal}
.patrol-management-pill{display:inline-flex;max-width:280px;white-space:normal;padding:4px 8px;border-radius:999px;font-size:12px;line-height:1.35;background:#eef3f1;color:#43645a}.patrol-management-pill.attention{background:#f8e7e4;color:#8f4c43}.patrol-management-pill.watch{background:#f7eddc;color:#826226}.patrol-management-pill.good{background:#e5f2eb;color:#44745e}
.patrol-compare-person-panel{margin-top:16px}.patrol-management-summary-body{padding:4px}.patrol-management-kpi{display:grid;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:10px}.patrol-management-kpi span{display:flex;flex-direction:column;gap:4px;padding:12px;border-radius:13px;background:#f5f8f8;border:1px solid var(--line,#e1e7e8);font-size:12px;color:var(--muted,#6d7b80)}.patrol-management-kpi b{font-size:20px;color:var(--text,#25353a)}.patrol-management-kpi b.good{color:#4e8068}.patrol-management-kpi b.bad{color:#b35f55}.patrol-management-summary-body p{margin:12px 2px 0;line-height:1.6}
@media (max-width:900px){.patrol-reg-summary,.patrol-management-kpi{grid-template-columns:1fr}.patrol-person-table{min-width:1180px}}




.patrol-one-paste-grid{align-items:stretch}
.patrol-one-paste-card{min-width:0}
.patrol-one-paste-head{display:flex;flex-direction:column;gap:6px;margin-bottom:10px}
.patrol-one-paste-head strong{font-size:18px;color:#1f4538}
.patrol-one-paste-head small{color:#63756d;line-height:1.7}
.patrol-one-paste-input{min-height:260px}
.patrol-compare-hidden-controls{display:none!important}
.patrol-compare-autoload{margin:8px 0 16px}


.patrol-dual-maps{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-top:16px;align-items:start}
.patrol-business-map{min-width:0}.patrol-business-map canvas{display:block;width:100%;height:auto;aspect-ratio:5/4;max-height:none;border-radius:17px;border:1px solid #d9e6df;background:#f4f8f5;box-shadow:inset 0 0 0 1px rgba(255,255,255,.7)}
.patrol-map-actions{display:flex;flex-wrap:wrap;gap:8px;margin-top:12px}.p-archived{background:#9aa39e}.store-covered{background:#5c987d}.store-uncovered{background:#c87562}
.patrol-output-zone{scroll-margin-top:16px}.patrol-copy-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.patrol-copy-card{border:1px solid #dce8e2;background:linear-gradient(180deg,#fbfdfc,#f5f9f7);border-radius:16px;padding:16px;display:flex;min-height:190px;flex-direction:column;align-items:flex-start}.patrol-copy-card>span{font-size:12px;color:#668076;background:#edf5f1;border-radius:999px;padding:4px 8px}.patrol-copy-card h3{font-size:18px;margin:10px 0 6px;color:#23483b}.patrol-copy-card p{font-size:13px;line-height:1.7;color:#687a72;margin:0 0 14px}.patrol-copy-card .btn{margin-top:auto;width:100%}
.patrol-writing-panel{margin-top:14px}.patrol-writing-actions{display:flex;flex-wrap:wrap;gap:9px}.patrol-writing-note{margin-top:12px;border-left:4px solid #83a796;background:#f6faf8;border-radius:8px;padding:11px 13px;color:#5f7369;font-size:13px;line-height:1.7}
.patrol-row-copy{display:flex;gap:5px}.patrol-mini-copy{border:1px solid #cdded5;background:#fff;color:#406653;border-radius:8px;padding:4px 7px;font:12px/1.2 "Microsoft YaHei",sans-serif;cursor:pointer}.patrol-mini-copy:hover{background:#eff6f2;border-color:#a9c4b7}
.patrol-map-preview-dialog .preview-dialog-body{background:#f1f6f3}.patrol-map-preview-dialog canvas{display:block;width:min(94vw,1500px);height:auto;max-height:84vh;margin:auto;background:#f4f8f5;border-radius:18px}
@media(max-width:1180px){.patrol-copy-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.patrol-dual-maps{grid-template-columns:1fr}}
@media(max-width:680px){.patrol-copy-grid{grid-template-columns:1fr}.patrol-writing-actions .btn,.patrol-map-actions .btn{flex:1 1 100%}.patrol-business-map canvas{aspect-ratio:1/1}}


.patrol-ranking-panel{margin-bottom:14px;border-top:4px solid #6f9b87}
.patrol-ranking-table th,.patrol-ranking-table td{white-space:nowrap;vertical-align:middle}
.patrol-ranking-table td:nth-child(3),.patrol-ranking-table td:nth-child(4){white-space:normal}
.patrol-ranking-table .patrol-rank{min-width:34px;padding:0 7px;font-weight:700}
@media(max-width:900px){.patrol-ranking-table{min-width:900px}}



.patrol-map-canvas-shell{position:relative;width:min(100%,980px);margin:0 auto;min-height:300px}
.patrol-business-map canvas{width:100%;height:auto;aspect-ratio:5/4;max-height:640px;object-fit:contain}
.patrol-building-popup{position:absolute;z-index:8;left:14px;right:14px;bottom:14px;max-height:min(58vh,520px);overflow:auto;border:1px solid #cdded5;border-radius:18px;background:rgba(255,255,253,.985);box-shadow:0 18px 52px rgba(31,55,47,.22);padding:0;color:#2c4037}
.patrol-building-popup[hidden]{display:none!important}.patrol-building-popup-head{position:sticky;top:0;z-index:1;display:flex;justify-content:space-between;gap:14px;align-items:center;padding:14px 16px;background:rgba(250,253,251,.98);border-bottom:1px solid #e0e9e4}.patrol-building-popup-head div{min-width:0}.patrol-building-popup-head small{display:block;color:#71837a;font-size:11px}.patrol-building-popup-head strong{display:block;font-size:16px;overflow-wrap:anywhere}.patrol-building-popup-close{border:0;background:#edf4f0;border-radius:999px;width:34px;height:34px;font-size:24px;line-height:1;cursor:pointer;color:#456456;flex:0 0 auto}
.patrol-building-object-list{display:grid;gap:10px;padding:12px}.patrol-building-object{border:1px solid #e0e9e4;border-radius:14px;padding:12px;background:#fff}.patrol-building-object-head{display:flex;justify-content:space-between;gap:12px;align-items:flex-start}.patrol-building-object-head b{overflow-wrap:anywhere}.patrol-building-object-head span{white-space:nowrap;font-size:12px;border-radius:999px;padding:3px 8px;background:#f1f5f3;color:#607169}.patrol-building-object dl{display:grid;grid-template-columns:1fr 1fr;gap:7px 14px;margin:10px 0 0}.patrol-building-object dl>div{min-width:0}.patrol-building-object dt{font-size:11px;color:#7a8982}.patrol-building-object dd{margin:2px 0 0;font-size:12px;line-height:1.5;overflow-wrap:anywhere;color:#34473e}
.patrol-identity-strip{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:8px;margin-top:12px;padding:12px;border:1px solid #dfe8e3;border-radius:14px;background:#f8fbf9}.patrol-identity-strip>div{padding:10px;border-radius:10px;background:#fff;text-align:center}.patrol-identity-strip span{display:block;font-size:11px;color:#73837b}.patrol-identity-strip b{display:block;margin-top:3px;font-size:20px;color:#315c49}.patrol-identity-strip .qa b{color:#a06455}.patrol-identity-strip .ok b{color:#3d735a}.patrol-identity-strip small{grid-column:1/-1;color:#6e7e76;line-height:1.55}.patrol-identity-empty{grid-column:1/-1;color:#6e7e76;text-align:left!important}
.patrol-card-export-panel{margin-top:14px}.patrol-card-export-controls{display:grid;grid-template-columns:minmax(220px,1.4fr) minmax(180px,1fr) auto;gap:10px;align-items:end}.patrol-card-export-controls label{display:grid;gap:5px;font-size:12px;color:#64766d}.patrol-card-export-controls select{width:100%;min-height:42px;border:1px solid #ccdcd4;border-radius:10px;padding:8px 10px;background:#fff;color:#2d4338}.patrol-card-export-controls .btn{min-height:42px}
.patrol-rank-row.is-qualified{background:linear-gradient(90deg,rgba(86,145,111,.08),transparent)}.patrol-rank-row.is-under{background:linear-gradient(90deg,rgba(208,164,91,.07),transparent)}.patrol-rank-row.is-unvisited{background:linear-gradient(90deg,rgba(194,111,94,.07),transparent)}.patrol-tie-note,.patrol-rank-state{display:block;margin-top:3px;font-size:10px;font-weight:500;color:#7b8982}.patrol-rank-state{color:#5e746a}
.patrol-map-preview-dialog{max-width:min(96vw,1240px);max-height:94vh}.patrol-map-preview-body{padding:12px;overflow:auto}.patrol-map-preview-dialog .patrol-map-canvas-shell{width:min(92vw,1120px);min-height:320px}.patrol-map-preview-dialog canvas{width:100%;max-height:72vh}.patrol-building-popup-zoom{max-height:min(48vh,480px)}
@media(max-width:1180px){.patrol-dual-maps{grid-template-columns:1fr}.patrol-map-canvas-shell{width:min(100%,900px)}.patrol-identity-strip{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:760px){.patrol-map-canvas-shell{min-height:240px}.patrol-business-map canvas{max-height:520px}.patrol-building-popup{left:8px;right:8px;bottom:8px;max-height:min(56vh,430px);border-radius:14px}.patrol-building-object dl{grid-template-columns:1fr}.patrol-card-export-controls{grid-template-columns:1fr}.patrol-card-export-controls .btn{width:100%}.patrol-identity-strip{grid-template-columns:repeat(2,minmax(0,1fr))}.patrol-map-preview-dialog{width:98vw;max-width:98vw}.patrol-map-preview-dialog .patrol-map-canvas-shell{width:94vw;min-height:240px}.patrol-map-preview-dialog canvas{max-height:62vh}}
@media(max-width:420px){.patrol-map-canvas-shell{min-height:220px}.patrol-building-popup-head strong{font-size:14px}.patrol-building-object{padding:10px}.patrol-identity-strip{grid-template-columns:1fr 1fr}.patrol-card-export-controls select{font-size:13px}.patrol-ranking-table{min-width:860px}}



.patrol-map-preview-dialog{
  width:min(97vw,1800px)!important;
  max-width:min(97vw,1800px)!important;
  height:96vh!important;
  max-height:96vh!important;
  padding:0!important;
  overflow:hidden!important;
  border-radius:18px!important;
}
.patrol-map-preview-dialog .preview-dialog-head{
  height:64px!important;
  min-height:64px!important;
  padding:0 18px 0 24px!important;
  background:#f5faF7!important;
  color:#315f49!important;
  border-bottom:1px solid #d8e7df!important;
  position:sticky!important;
  top:0!important;
  z-index:40!important;
}
#closePatrolMapPreviewBtn.patrol-map-preview-close{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  min-width:92px!important;
  min-height:42px!important;
  padding:9px 16px!important;
  border:1px solid #2d654d!important;
  border-radius:12px!important;
  background:#356f56!important;
  color:#fff!important;
  font-size:15px!important;
  font-weight:800!important;
  box-shadow:0 5px 14px rgba(34,86,61,.18)!important;
  opacity:1!important;
  cursor:pointer!important;
}
#closePatrolMapPreviewBtn.patrol-map-preview-close:hover,
#closePatrolMapPreviewBtn.patrol-map-preview-close:focus-visible{
  background:#285c45!important;
  outline:3px solid rgba(53,111,86,.20)!important;
  outline-offset:2px!important;
}
.patrol-map-preview-body{
  height:calc(96vh - 64px)!important;
  max-height:calc(96vh - 64px)!important;
  padding:14px!important;
  overflow:auto!important;
  background:#eaf2ee!important;
}
.patrol-map-preview-dialog .patrol-map-canvas-shell{
  width:min(100%,1740px)!important;
  min-width:1100px!important;
  min-height:760px!important;
  margin:0 auto!important;
  position:relative!important;
}
.patrol-map-preview-dialog canvas{
  display:block!important;
  width:100%!important;
  height:auto!important;
  max-width:none!important;
  max-height:none!important;
  margin:0 auto!important;
  border-radius:18px!important;
  background:#f4f8f5!important;
}
@media(max-width:1400px){
  .patrol-map-preview-dialog .patrol-map-canvas-shell{min-width:0!important;width:100%!important;min-height:620px!important}
}
@media(max-width:760px){
  .patrol-map-preview-dialog{width:100vw!important;max-width:100vw!important;height:100vh!important;max-height:100vh!important;border-radius:0!important}
  .patrol-map-preview-dialog .preview-dialog-head{height:60px!important;min-height:60px!important;padding:0 10px 0 14px!important;font-size:15px!important}
  #closePatrolMapPreviewBtn.patrol-map-preview-close{min-width:78px!important;min-height:40px!important;padding:8px 12px!important;font-size:14px!important}
  .patrol-map-preview-body{height:calc(100vh - 60px)!important;max-height:calc(100vh - 60px)!important;padding:8px!important}
  .patrol-map-preview-dialog .patrol-map-canvas-shell{width:100%!important;min-width:0!important;min-height:0!important}
  .patrol-map-preview-dialog canvas{width:100%!important;max-height:none!important}
}



body.address-mode .system-ribbon,body.address-mode .governance-deck,body.patrol-mode .system-ribbon,body.patrol-mode .governance-deck{display:none!important}
body.address-mode .app-header,body.patrol-mode .app-header{padding-bottom:22px}
body.address-mode #autosaveStatus,body.patrol-mode #autosaveStatus{display:none!important}
.patrol-ai-guide{display:none!important}
.patrol-data-section.hidden{display:none!important}


.patrol-map-preview-dialog{width:min(97vw,1840px)!important;max-width:min(97vw,1840px)!important;height:96vh!important;max-height:96vh!important;padding:0!important;overflow:hidden!important}
.patrol-map-preview-dialog .preview-dialog-head{display:grid;grid-template-columns:minmax(220px,1fr) auto auto;align-items:center;gap:14px;position:sticky;top:0;z-index:20;background:rgba(247,251,248,.985);padding:12px 14px;border-bottom:1px solid rgba(61,101,83,.14)}
.patrol-map-preview-toolbar{display:flex;align-items:center;gap:8px;flex-wrap:wrap;justify-content:flex-end}.patrol-map-preview-toolbar .btn{min-width:42px}.patrol-zoom-level{min-width:56px;text-align:center;font-weight:800;color:#315c49}.patrol-map-tool-hint{font-size:12px;color:#6d7c75;margin-left:4px;white-space:nowrap}
.patrol-map-preview-close{background:#2f7658!important;border-color:#2f7658!important;color:#fff!important;box-shadow:0 6px 18px rgba(28,87,60,.20)!important;min-width:86px!important}.patrol-map-preview-close:hover{background:#245f46!important}
.patrol-map-preview-body{height:calc(96vh - 62px)!important;max-height:none!important;padding:12px!important;overflow:hidden!important}.patrol-map-preview-body .patrol-map-canvas-shell{height:100%;min-height:0}#patrolZoomMapBoard{width:auto!important;height:auto!important;max-width:100%!important;max-height:100%!important;aspect-ratio:5/4!important;object-fit:contain!important;cursor:grab;touch-action:none}#patrolZoomMapBoard:active{cursor:grabbing}

/* Natural details drawer */
.patrol-map-canvas-shell{position:relative}.patrol-building-popup{position:absolute;right:14px;top:14px;bottom:14px;width:min(430px,38%);max-height:none;overflow:auto;margin:0!important;z-index:12;border:1px solid rgba(72,112,94,.28);border-radius:18px;background:rgba(255,255,253,.98);box-shadow:0 18px 44px rgba(37,66,52,.20);padding:14px}.patrol-building-popup[hidden]{display:none!important}.patrol-building-popup-head{position:sticky;top:-14px;z-index:2;background:rgba(255,255,253,.98);padding:14px 2px 10px;margin:-14px 0 8px;border-bottom:1px solid rgba(66,105,88,.12)}.patrol-building-popup-head small{display:block;color:#7a8982;margin-top:4px}.patrol-building-object{border:1px solid rgba(77,114,97,.14);border-radius:14px;padding:12px;margin:10px 0;background:#fbfdfb}.patrol-building-object dl{grid-template-columns:1fr!important;gap:7px!important}.patrol-building-object dl>div{display:grid;grid-template-columns:112px 1fr;gap:10px;align-items:start}.patrol-building-object dt{color:#718078}.patrol-building-object dd{margin:0;color:#31433a;word-break:break-word}
.patrol-page .patrol-hero{margin-bottom:0}.patrol-page .patrol-one-paste-card{min-height:0}
@media(max-width:900px){.patrol-map-preview-dialog{width:100vw!important;max-width:100vw!important;height:100vh!important;max-height:100vh!important;border-radius:0!important}.patrol-map-preview-dialog .preview-dialog-head{grid-template-columns:1fr auto;padding:10px}.patrol-map-preview-toolbar{grid-column:1/-1;justify-content:flex-start;order:3}.patrol-map-tool-hint{display:none}.patrol-map-preview-body{height:calc(100vh - 110px)!important;padding:6px!important}.patrol-building-popup,.patrol-building-popup-zoom{left:8px;right:8px;top:auto;bottom:8px;width:auto;max-height:48%;border-radius:16px}}



.patrol-building-popup-head{display:flex!important;align-items:flex-start!important;justify-content:space-between!important;gap:10px!important}
.patrol-building-popup-tools{display:flex;align-items:center;gap:7px;flex:0 0 auto}
.patrol-building-pin-btn{border:1px solid #b9d3c5;background:#eff8f3;color:#315f49;border-radius:10px;padding:7px 10px;font:700 12px "Microsoft YaHei",sans-serif;cursor:pointer;white-space:nowrap}
.patrol-building-pin-btn:hover{background:#e2f2e9;border-color:#86b49c}
.patrol-building-popup-close{width:32px;height:32px;display:grid;place-items:center;border:1px solid #d7e4dd;background:#fff;color:#50675d;border-radius:50%;cursor:pointer;font-size:18px;line-height:1}
.patrol-building-popup-close:hover{background:#edf5f1;color:#285d47}
.patrol-map-actions{display:flex;flex-wrap:wrap;gap:8px;align-items:center;margin-top:10px}
.patrol-map-actions .btn:disabled{cursor:not-allowed;opacity:.55;box-shadow:none}
@media(max-width:760px){.patrol-building-popup-head{align-items:flex-start!important}.patrol-building-popup-tools{flex-direction:row}.patrol-building-pin-btn{padding:6px 8px}}



body.patrol-mode #presentationToggleBtn{display:none!important}
.patrol-display-bar{display:flex;align-items:center;justify-content:space-between;gap:16px;margin:12px 0 16px;padding:13px 15px;border:1px solid #d8e7df;border-radius:15px;background:linear-gradient(135deg,#f8fcfa,#f1f8f4)}
.patrol-display-bar>div{display:grid;grid-template-columns:auto auto 1fr;gap:5px 10px;align-items:center;min-width:0}.patrol-display-eyebrow{font-size:10px;letter-spacing:.12em;color:#6f8278;font-weight:900}.patrol-display-bar strong{color:#285845;font-size:15px}.patrol-display-bar small{grid-column:1/-1;color:#687a71;line-height:1.55}.patrol-public-toggle{background:#2f7658!important;border-color:#2f7658!important;color:#fff!important;min-width:132px;white-space:nowrap}.patrol-public-view .patrol-public-toggle{background:#fff!important;color:#2f7658!important;border-color:#85af9b!important}

.patrol-progress-overview-panel{margin:14px 0}.patrol-progress-overview{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.patrol-progress-card{padding:14px;border:1px solid #dfe9e4;border-radius:15px;background:linear-gradient(180deg,#fff,#f8fbf9);min-width:0}.patrol-progress-card header{display:flex;align-items:flex-start;justify-content:space-between;gap:10px}.patrol-progress-card header span{color:#597067;font-size:12px;line-height:1.35}.patrol-progress-card header strong{font-size:22px;color:#294d40;font-variant-numeric:tabular-nums;white-space:nowrap}.patrol-progress-track{height:13px;border-radius:999px;background:#eaf0ed;overflow:hidden;margin:12px 0 8px;box-shadow:inset 0 1px 2px rgba(38,67,54,.07)}.patrol-progress-track>i{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,#7ca895,#4f8c75);transition:width .35s ease}.patrol-progress-card.mid .patrol-progress-track>i{background:linear-gradient(90deg,#d7b56f,#c99c49)}.patrol-progress-card.low .patrol-progress-track>i{background:linear-gradient(90deg,#d69384,#c87562)}.patrol-progress-card.na .patrol-progress-track>i{background:#b7c2bd}.patrol-progress-card footer{display:flex;justify-content:space-between;gap:10px;color:#73837b;font-size:11px;line-height:1.4}.patrol-progress-card footer b{color:#526b60;font-weight:700}.patrol-progress-card.na{opacity:.78}

.patrol-person-progress-panel{margin-bottom:14px}.patrol-person-progress-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.patrol-person-progress-card{border:1px solid #dfe9e4;border-radius:16px;background:#fff;padding:13px 14px;min-width:0}.patrol-person-progress-head{display:flex;justify-content:space-between;gap:10px;align-items:start;margin-bottom:9px}.patrol-person-progress-head b{display:block;color:#2d5445;font-size:14px}.patrol-person-progress-head small{display:block;color:#74857d;margin-top:2px}.patrol-person-progress-head em{font-style:normal;font-size:10px;color:#567165;background:#edf5f1;padding:4px 7px;border-radius:999px;white-space:nowrap}.patrol-mini-progress{display:grid;grid-template-columns:88px 1fr 48px;gap:8px;align-items:center;margin-top:8px;font-size:11px}.patrol-mini-progress>span{color:#61766c}.patrol-mini-progress>div{height:9px;background:#edf2ef;border-radius:999px;overflow:hidden}.patrol-mini-progress i{display:block;height:100%;border-radius:inherit;background:#6d9b86}.patrol-mini-progress.mid i{background:#d2a35a}.patrol-mini-progress.low i{background:#c87562}.patrol-mini-progress.na i{background:#bdc7c2}.patrol-mini-progress>b{text-align:right;color:#405e52;font-size:11px;font-variant-numeric:tabular-nums}.patrol-rate-meter{display:grid;gap:5px;min-width:105px}.patrol-rate-meter>div{height:7px;background:#e9efec;border-radius:999px;overflow:hidden}.patrol-rate-meter i{display:block;height:100%;background:#62937d;border-radius:999px}.patrol-rate-meter small{font-size:10px;color:#70827a}

.patrol-pin-toolbar{display:flex;align-items:center;justify-content:flex-end;gap:8px;flex-wrap:wrap;margin:16px 0 0;padding:11px 12px;border:1px solid #dbe8e1;border-radius:14px;background:#f8fbf9}.patrol-pin-toolbar>div{margin-right:auto;min-width:240px}.patrol-pin-toolbar strong{display:block;color:#315b4c}.patrol-pin-toolbar small{display:block;color:#718178;font-size:11px;margin-top:3px}.patrol-pin-count{display:inline-flex;align-items:center;min-height:34px;padding:6px 10px;border-radius:999px;background:#edf5f1;color:#3d6b58;font-size:11px;font-weight:800}

/* P0: preview canvas must keep its intrinsic 1600×1280 ratio instead of filling a wide body in both axes. */
.patrol-map-preview-body{display:flex!important;align-items:center!important;justify-content:center!important;overflow:hidden!important}
.patrol-map-preview-body .patrol-map-canvas-shell{width:100%!important;height:100%!important;min-width:0!important;min-height:0!important;display:flex!important;align-items:center!important;justify-content:center!important;margin:0 auto!important;overflow:hidden!important}
#patrolZoomMapBoard{display:block!important;width:auto!important;height:auto!important;max-width:100%!important;max-height:100%!important;aspect-ratio:5/4!important;object-fit:contain!important;flex:0 1 auto!important;cursor:grab;touch-action:none}
#patrolZoomMapBoard:active{cursor:grabbing}

/* Public presentation: hide editing, QA, contact details and internal-output workbench while retaining the readable dashboard, trends and map interaction. */
body.patrol-public-view .mode-switch,body.patrol-public-view .patrol-private-badge,body.patrol-public-view .patrol-one-paste-grid,body.patrol-public-view .patrol-quality-panel,body.patrol-public-view .patrol-output-zone,body.patrol-public-view .patrol-identity-strip,body.patrol-public-view .patrol-workbench-only,body.patrol-public-view .patrol-sensitive,body.patrol-public-view .patrol-internal-id,body.patrol-public-view .patrol-compare-bottom{display:none!important}
body.patrol-public-view .app-header{grid-template-columns:minmax(0,1fr) auto!important}body.patrol-public-view .header-side{justify-self:end}body.patrol-public-view .patrol-page{padding-top:8px}.patrol-public-view .patrol-hero{padding-bottom:10px}.patrol-public-view .patrol-display-bar{position:sticky;top:8px;z-index:28;box-shadow:0 9px 24px rgba(39,76,58,.12);background:rgba(248,252,250,.96);backdrop-filter:blur(8px)}
body.patrol-public-view .patrol-section-head p,body.patrol-public-view .patrol-panel-head small{color:#667970}.patrol-public-view .patrol-map-actions .quiet{display:inline-flex!important}

@media(max-width:1180px){.patrol-progress-overview{grid-template-columns:repeat(2,minmax(0,1fr))}.patrol-person-progress-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:720px){.patrol-display-bar{align-items:stretch;flex-direction:column}.patrol-public-toggle{width:100%}.patrol-progress-overview,.patrol-person-progress-grid{grid-template-columns:1fr}.patrol-pin-toolbar{align-items:stretch}.patrol-pin-toolbar>div{width:100%}.patrol-pin-toolbar .btn{flex:1 1 46%}.patrol-mini-progress{grid-template-columns:82px 1fr 46px}.patrol-map-preview-body{padding:6px!important}}

body.patrol-public-view .patrol-compare-autoload{display:none!important}



.patrol-rate-meter.strong{gap:6px;min-width:128px}
.patrol-rate-meter.strong>div{height:10px;background:#e7efea;box-shadow:inset 0 1px 2px rgba(36,64,50,.08)}
.patrol-rate-meter.strong i{background:linear-gradient(90deg,#79a58f,#4f8b74)}
.patrol-rate-meter.strong span{font-size:12px;font-weight:800;color:#284d3e}
.patrol-rate-meter.strong small{font-size:11px;color:#60746a;line-height:1.35}
.patrol-import-status.warn{background:#fff7e7;border-color:#ead4a2;color:#7b6130}
.patrol-one-paste-grid .patrol-import-status{line-height:1.6}
.patrol-map-preview-body{display:grid!important;grid-template-columns:minmax(300px,360px) minmax(0,1fr)!important;gap:12px;align-items:stretch!important;justify-content:stretch!important;overflow:hidden!important}
.patrol-map-preview-body .patrol-building-popup-zoom{position:relative!important;left:auto!important;right:auto!important;top:auto!important;bottom:auto!important;width:auto!important;max-height:none!important;height:100%;overflow:auto;margin:0!important;padding:14px!important;border-radius:18px;background:rgba(255,255,253,.98)!important;box-shadow:0 12px 32px rgba(37,66,52,.12)!important}
.patrol-map-preview-body .patrol-building-popup-zoom[hidden]{display:block!important;visibility:hidden!important}
.patrol-map-preview-body .patrol-map-canvas-shell{width:100%!important;height:100%!important;min-width:0!important;min-height:0!important;display:flex!important;align-items:center!important;justify-content:center!important;margin:0 auto!important;overflow:hidden!important;background:#eef4f0;border-radius:20px;padding:8px}
.patrol-map-preview-body #patrolZoomMapBoard{width:auto!important;height:auto!important;max-width:100%!important;max-height:100%!important;aspect-ratio:5/4!important;object-fit:contain!important}
@media(max-width:900px){.patrol-map-preview-body{grid-template-columns:1fr!important;grid-template-rows:auto minmax(0,1fr)}.patrol-map-preview-body .patrol-building-popup-zoom{max-height:240px}.patrol-map-preview-body .patrol-building-popup-zoom[hidden]{display:none!important;visibility:hidden!important}}


.patrol-page{font-size:16px;line-height:1.65;color:#243a31}
.patrol-page .workspace{max-width:1560px;padding:34px 32px;margin:0 auto 28px;background:#fbfdfc;border-radius:28px;box-shadow:0 10px 32px rgba(39,77,60,.08)}
.patrol-page .section-head h2{font-size:24px}
.patrol-page .section-head p,.patrol-page small,.patrol-page .patrol-writing-note{font-size:15px}
.patrol-page .patrol-panel{padding:22px;border-radius:24px}
.patrol-page .patrol-panel h3{font-size:18px}
.patrol-page .patrol-kpis article{padding:22px;border-radius:24px;min-height:132px}
.patrol-page .patrol-kpis article strong{font-size:42px;line-height:1.1}
.patrol-page .patrol-kpis article span{font-size:15px}
.patrol-page .patrol-kpis article small{font-size:14px}
.patrol-page .patrol-table th,.patrol-page .patrol-table td{padding:14px 12px;font-size:15px}
.patrol-page .patrol-ranking-table td:last-child,.patrol-page .patrol-person-table td:nth-child(7){font-weight:700;color:#274d3c}
.patrol-page .patrol-progress-overview,.patrol-page .patrol-person-progress-grid{gap:18px}
.patrol-page .patrol-person-progress-card,.patrol-page .patrol-progress-card{border-radius:24px;padding:18px 18px 16px}
.patrol-page .patrol-watch-item,.patrol-page .patrol-quality-item{padding:18px 18px;border-radius:20px;align-items:flex-start}
.patrol-page .patrol-watch-item b,.patrol-page .patrol-quality-item b{font-size:18px}
.patrol-page .patrol-watch-item small,.patrol-page .patrol-quality-item small{font-size:15px;line-height:1.6}
.patrol-page .patrol-internal-id{min-width:96px;text-align:right;font-size:20px;color:#24483a;background:#eef6f1;border-radius:16px;padding:10px 12px}
.patrol-page .patrol-tag{font-size:14px;padding:7px 12px;border-radius:999px}
.patrol-page .btn{border-radius:18px;padding:12px 18px;font-size:15px;font-weight:700;box-shadow:0 6px 16px rgba(55,104,91,.12);transition:transform .12s ease, box-shadow .12s ease, filter .12s ease}
.patrol-page .btn:hover{transform:translateY(-1px);box-shadow:0 10px 22px rgba(55,104,91,.16);filter:saturate(1.05)}
.patrol-page .btn.primary{background:linear-gradient(180deg,#63b18b 0%,#3f8f68 100%);border-color:#4b8d6c;color:#fff}
.patrol-page .btn.large{padding:14px 22px;font-size:17px}
.patrol-page .patrol-ranking-actions,.patrol-page .patrol-map-actions,.patrol-page .patrol-writing-actions,.patrol-page .patrol-card-export-controls,.patrol-page .patrol-command-export-grid{display:flex;flex-wrap:wrap;gap:12px;align-items:center}
.patrol-page .patrol-command-export-grid .btn{min-width:220px;justify-content:center}
.patrol-page .patrol-copy-grid{gap:18px}
.patrol-page .patrol-copy-card{padding:24px;border-radius:22px}
.patrol-page .patrol-copy-card h3{font-size:22px}
.patrol-page .patrol-brief{min-height:250px;font-size:15px;line-height:1.8}
.patrol-page .patrol-quality-panel{background:#fcfdfc}
.patrol-page .patrol-quality-item strong{font-size:28px;line-height:1}
.patrol-page .patrol-map-panel canvas{border-radius:22px}
.patrol-page .patrol-map-actions .btn{min-width:132px}
.patrol-page .patrol-private-badge{font-size:14px;padding:10px 14px}
.patrol-page .patrol-display-bar{padding:18px 20px;border-radius:22px;margin-bottom:20px}
.patrol-page .patrol-import-grid{gap:18px}
.patrol-page .patrol-input{font-size:15px;line-height:1.6}
.patrol-page .patrol-contract-card{padding:22px;border-radius:22px}
.patrol-page .patrol-contract-card strong{font-size:18px}
.patrol-page .patrol-one-paste-head strong{font-size:18px}
.patrol-page .patrol-macro-narrative{font-size:16px;line-height:1.8;padding:18px 20px;border-radius:20px}
.patrol-page .patrol-identity-strip{margin-top:14px}
.patrol-page .section-number{width:42px;height:42px;font-size:20px;border-radius:14px}
.patrol-page .patrol-schema-badge{font-size:14px}
.patrol-page .table-wrap{overflow:auto}
.patrol-page .patrol-person-progress-grid{grid-template-columns:repeat(auto-fit,minmax(300px,1fr))}
.patrol-page .patrol-columns-balanced{grid-template-columns:1.15fr 1fr;gap:18px}
.patrol-page .patrol-dual-maps{gap:18px}
.patrol-page .patrol-command-export-panel{background:linear-gradient(180deg,#ffffff 0%,#f5faf7 100%)}
.patrol-page .patrol-card-export-panel,.patrol-page .patrol-writing-panel{background:#fbfdfc}
.patrol-page .patrol-ranking-progress{display:flex;align-items:center;gap:10px;min-width:190px}
.patrol-page .patrol-ranking-progress .bar{flex:1;height:12px;background:#e7efeb;border-radius:999px;overflow:hidden}
.patrol-page .patrol-ranking-progress .bar i{display:block;height:100%;background:linear-gradient(90deg,#8fd2b0 0%,#468f6c 100%);border-radius:999px}
.patrol-page .patrol-ranking-progress strong{font-size:15px;min-width:58px;text-align:right}
.patrol-page .patrol-watch-item .id-note{display:block;font-size:13px;color:#6e7f77;margin-bottom:4px}
.patrol-page.public-view .patrol-private-badge,.patrol-page.public-view .patrol-contract-card,.patrol-page.public-view .patrol-copy-card span{display:none}
.patrol-page.public-view .patrol-workbench-only,.patrol-page.public-view .patrol-quality-panel{display:none!important}
.patrol-page.public-view .workspace{padding:40px 36px}
.patrol-page .patrol-public-toggle{min-width:160px}
@media (max-width:1100px){
  .patrol-page .workspace{padding:24px 20px}
  .patrol-page .patrol-columns-balanced,.patrol-page .patrol-dual-maps{grid-template-columns:1fr}
}


#patrolPage{--p-bg:#f3f6f4;--p-card:#fff;--p-text:#20372d;--p-sub:#65766e;--p-green:#3f8e69;--p-green2:#62ac87;--p-line:#dfe9e3;--p-warn:#b86645;--p-bad:#ba4e45;--p-good:#2e8058}
#patrolPage .patrol-display-bar,#patrolPage .patrol-private-badge,#patrolPage .patrol-internal-only,#patrolPage .patrol-hidden-utility,#patrolPage .patrol-legacy-output,#patrolPage .patrol-person-progress-panel,#patrolPage .patrol-pin-toolbar{display:none!important}
#patrolPage .patrol-sensitive{display:none!important}
#patrolPage .workspace{max-width:1560px!important;padding:38px 38px!important;margin:0 auto 30px!important;border-radius:30px!important;background:var(--p-card)!important;box-shadow:0 14px 40px rgba(37,70,55,.08)!important}
#patrolPage .section-head{gap:18px!important;align-items:flex-start!important;margin-bottom:22px!important}
#patrolPage .section-number{width:46px!important;height:46px!important;border-radius:16px!important;font-size:20px!important;box-shadow:0 8px 20px rgba(64,139,104,.18)!important}
#patrolPage .section-head h2{font-size:27px!important;line-height:1.25!important;color:#203a2f!important;margin-bottom:7px!important}
#patrolPage .section-head p{font-size:16px!important;line-height:1.7!important;color:#64766d!important;max-width:920px!important}
#patrolPage .patrol-module-head{display:grid!important;grid-template-columns:auto minmax(0,1fr) auto!important;align-items:center!important}
#patrolPage .patrol-module-head .patrol-module-actions{display:flex;gap:10px;flex-wrap:wrap;justify-content:flex-end;align-items:center}
#patrolPage .btn{min-height:44px!important;border-radius:16px!important;padding:11px 18px!important;font-size:15px!important;font-weight:750!important;border:1px solid #d5e1da!important;background:linear-gradient(180deg,#fff,#f7faf8)!important;color:#315647!important;box-shadow:0 4px 12px rgba(38,76,58,.08),0 1px 0 rgba(255,255,255,.9) inset!important;transition:transform .12s ease,box-shadow .12s ease,filter .12s ease!important}
#patrolPage .btn:hover{transform:translateY(-1px)!important;box-shadow:0 9px 22px rgba(38,76,58,.14)!important;filter:saturate(1.04)!important}
#patrolPage .btn:active{transform:translateY(0) scale(.985)!important;box-shadow:0 3px 8px rgba(38,76,58,.11)!important}
#patrolPage .btn.primary{background:linear-gradient(180deg,#6bb58f,#3d8e67)!important;color:#fff!important;border-color:#438765!important;box-shadow:0 8px 18px rgba(49,130,91,.23),0 1px 0 rgba(255,255,255,.25) inset!important}
#patrolPage .btn.large{min-height:52px!important;font-size:17px!important;padding:13px 22px!important}
#patrolPage .patrol-import-grid{grid-template-columns:minmax(0,1.7fr) minmax(330px,.8fr)!important;gap:24px!important}
#patrolPage .patrol-one-paste-card,#patrolPage .patrol-contract-card{border-radius:24px!important;padding:24px!important}
#patrolPage .patrol-input{font-size:15px!important;line-height:1.65!important;border-radius:18px!important;min-height:230px!important}
#patrolPage .patrol-data-ready-bar{display:flex;justify-content:space-between;align-items:center;gap:18px;padding:18px 22px;border:1px solid #d7e6de;border-radius:22px;background:linear-gradient(180deg,#f7fcf9,#f0f8f4);box-shadow:0 8px 22px rgba(48,94,72,.08)}
#patrolPage .patrol-data-ready-bar.hidden{display:none!important}
#patrolPage .patrol-data-ready-bar>div{display:grid;grid-template-columns:auto auto;gap:3px 10px;align-items:center}
#patrolPage .patrol-data-ready-bar span{font-size:12px;font-weight:800;letter-spacing:.08em;color:#74847c}
#patrolPage .patrol-data-ready-bar strong{font-size:18px;color:#285440}
#patrolPage .patrol-data-ready-bar small{grid-column:1/-1;font-size:14px;color:#687a71}
body.patrol-results-ready:not(.patrol-editing-data) #patrolPage .patrol-one-paste-grid{display:none!important}
body.patrol-results-ready #patrolPage .patrol-data-ready-bar{display:flex!important}
body.patrol-editing-data #patrolPage .patrol-data-ready-bar{display:none!important}
#patrolPage .patrol-kpis{grid-template-columns:repeat(4,minmax(0,1fr))!important;gap:16px!important}
#patrolPage .patrol-kpis article{min-height:142px!important;padding:22px 22px!important;border-radius:24px!important;border:1px solid #e0e9e4!important;background:linear-gradient(180deg,#fff,#f8fbf9)!important}
#patrolPage .patrol-kpis article strong{font-size:44px!important;line-height:1.05!important;color:#234638!important}
#patrolPage .patrol-kpis article span{font-size:15px!important;font-weight:700!important;color:#61746a!important}
#patrolPage .patrol-kpis article small{font-size:14px!important;color:#72827a!important}
#patrolPage .patrol-progress-overview{grid-template-columns:repeat(4,minmax(0,1fr))!important;gap:16px!important}
#patrolPage .patrol-progress-card{border-radius:22px!important;padding:18px!important}
#patrolPage .patrol-progress-card header strong{font-size:25px!important}
#patrolPage .patrol-progress-track{height:16px!important;margin:14px 0 10px!important}
#patrolPage .patrol-macro-columns{gap:18px!important}
#patrolPage .patrol-panel{border-radius:26px!important;padding:24px!important;border:1px solid #e1eae5!important;background:#fff!important}
#patrolPage .patrol-panel-head h3{font-size:20px!important;color:#24463a!important}
#patrolPage .patrol-panel-head small{font-size:14px!important;line-height:1.6!important;color:#6b7d74!important}
#patrolPage .patrol-ranking-hero-panel{padding:28px!important;background:linear-gradient(180deg,#fbfefc,#f5faf7)!important;border-color:#d7e7de!important}
#patrolPage .patrol-ranking-board{display:grid;gap:12px;margin-top:18px}
#patrolPage .patrol-ranking-row{display:grid;grid-template-columns:66px 280px minmax(360px,1fr) 170px;align-items:center;gap:20px;padding:18px 20px;border-radius:22px;border:1px solid #e1e9e4;background:#fff;box-shadow:0 4px 14px rgba(38,68,54,.045)}
#patrolPage .patrol-ranking-row:nth-child(-n+3){background:linear-gradient(90deg,#f3fbf7,#fff);border-color:#cfe5d8}
#patrolPage .patrol-ranking-row.critical{background:linear-gradient(90deg,#fff7f3,#fff);border-color:#efd8cf}
#patrolPage .patrol-ranking-place{width:54px;height:54px;display:grid;place-items:center;border-radius:18px;background:#e9f4ee;color:#2b7354;font-size:25px;font-weight:900;box-shadow:inset 0 0 0 1px #d6e9de}
#patrolPage .patrol-ranking-row:nth-child(1) .patrol-ranking-place{background:#dff3e8;color:#1d6947}
#patrolPage .patrol-ranking-row:nth-child(2) .patrol-ranking-place{background:#e9f4ee}
#patrolPage .patrol-ranking-row:nth-child(3) .patrol-ranking-place{background:#f1f5ef}
#patrolPage .patrol-ranking-row.critical .patrol-ranking-place{background:#f9e4dd;color:#a84e3c}
#patrolPage .patrol-ranking-person b{display:block;font-size:21px;color:#233e33;margin-bottom:2px}
#patrolPage .patrol-ranking-person span{display:inline-block;font-size:14px;font-weight:800;color:#4c7561;background:#eef6f2;padding:4px 9px;border-radius:999px;margin-bottom:6px}
#patrolPage .patrol-ranking-person small{display:block;font-size:13px;color:#708078;line-height:1.5}
#patrolPage .patrol-ranking-main{display:grid;grid-template-columns:minmax(0,1fr) 100px;gap:16px;align-items:center}
#patrolPage .patrol-ranking-bar{height:24px;border-radius:999px;background:#e7eeea;overflow:hidden;box-shadow:inset 0 1px 3px rgba(36,64,50,.08)}
#patrolPage .patrol-ranking-bar i{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,#8fd0ad 0%,#4d9871 70%,#2e8058 100%);box-shadow:0 0 18px rgba(57,143,99,.22);transition:width .35s ease}
#patrolPage .patrol-ranking-row.mid .patrol-ranking-bar i,#patrolPage .patrol-ranking-row.slow .patrol-ranking-bar i{background:linear-gradient(90deg,#e6be75,#c9913e)}
#patrolPage .patrol-ranking-row.critical .patrol-ranking-bar i{background:linear-gradient(90deg,#e49a86,#c85e50)}
#patrolPage .patrol-ranking-rate strong{display:block;font-size:27px;color:#234638;line-height:1}
#patrolPage .patrol-ranking-rate span{display:block;margin-top:5px;font-size:13px;color:#687a71;font-weight:700}
#patrolPage .patrol-ranking-trend{border-left:1px solid #e1eae5;padding-left:18px}
#patrolPage .patrol-ranking-trend span{display:block;font-size:12px;color:#7b8982;margin-bottom:4px}
#patrolPage .patrol-ranking-trend b{display:block;font-size:16px;color:#687a71}
#patrolPage .patrol-ranking-trend.up b{color:#2e8058}#patrolPage .patrol-ranking-trend.down b{color:#b04f43}
#patrolPage .patrol-ranking-trend-summary{margin-top:16px;padding:14px 16px;border-radius:18px;background:#f0f6f3;color:#64776d;font-size:14px}
#patrolPage .patrol-ranking-trend-summary b.up{color:#2e8058}#patrolPage .patrol-ranking-trend-summary b.down{color:#b04f43}
#patrolPage .patrol-detail-panel{margin-top:18px}
#patrolPage .patrol-table th,#patrolPage .patrol-table td{padding:14px 12px!important;font-size:15px!important;vertical-align:middle!important}
#patrolPage .patrol-ranking-table .patrol-rank{font-size:19px!important;font-weight:900!important;color:#2d6d52!important}
#patrolPage .patrol-ranking-progress{min-width:220px!important}
#patrolPage .patrol-ranking-progress .bar{height:12px!important}
#patrolPage .patrol-person-panel{margin-top:18px}
#patrolPage .patrol-columns-balanced{grid-template-columns:1fr!important}
#patrolPage .patrol-watch-list{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:12px!important;max-height:none!important;overflow:visible!important}
#patrolPage .patrol-watch-item{min-height:118px!important;padding:18px!important;border-radius:20px!important;display:grid!important;grid-template-columns:auto minmax(0,1fr) auto!important;gap:14px!important;align-items:start!important}
#patrolPage .patrol-watch-item b{font-size:18px!important;color:#293f35!important}
#patrolPage .patrol-watch-item small{font-size:14px!important;line-height:1.55!important}
#patrolPage .patrol-internal-id{font-size:15px!important;min-width:92px!important;padding:8px 10px!important;background:#f0f5f2!important;border-radius:14px!important;text-align:center!important;color:#566d62!important}
#patrolPage .patrol-internal-id .id-note{display:block!important;font-size:11px!important;font-weight:600!important;color:#849089!important;margin-bottom:2px!important}
#patrolPage .patrol-dual-maps{gap:20px!important}
#patrolPage .patrol-map-panel{padding:24px!important}
#patrolPage .patrol-map-actions{display:flex!important;gap:10px!important;flex-wrap:wrap!important;margin-top:14px!important}
#patrolPage .patrol-map-actions .btn{min-width:116px!important}
#patrolPage .patrol-map-canvas-shell{border-radius:24px!important;overflow:hidden!important;background:#eef4f0!important}
#patrolPage .patrol-map-legend{font-size:13px!important;gap:12px!important;flex-wrap:wrap!important}
#patrolPage .patrol-compare-zone{border-top:2px solid #dce8e1!important}
#patrolPage .patrol-compare-zone .patrol-ai-guide,#patrolPage .patrol-compare-autoload{display:none!important}
#patrolPage .patrol-schema-badge{font-size:13px!important;padding:7px 10px!important}
#patrolPage .patrol-macro-narrative{font-size:16px!important;line-height:1.8!important;padding:18px 20px!important;border-radius:18px!important}
#patrolPage .patrol-identity-strip{display:none!important}
@media(max-width:1200px){#patrolPage .patrol-ranking-row{grid-template-columns:60px 230px minmax(300px,1fr) 145px}#patrolPage .patrol-kpis,#patrolPage .patrol-progress-overview{grid-template-columns:repeat(2,minmax(0,1fr))!important}#patrolPage .patrol-watch-list{grid-template-columns:1fr!important}}
@media(max-width:820px){#patrolPage .workspace{padding:24px 18px!important;border-radius:22px!important}#patrolPage .patrol-module-head{grid-template-columns:auto 1fr!important}#patrolPage .patrol-module-actions{grid-column:1/-1!important;justify-content:flex-start!important}#patrolPage .patrol-ranking-row{grid-template-columns:52px 1fr!important;gap:12px!important}#patrolPage .patrol-ranking-main,#patrolPage .patrol-ranking-trend{grid-column:2!important}#patrolPage .patrol-ranking-trend{border-left:0!important;padding-left:0!important}#patrolPage .patrol-import-grid{grid-template-columns:1fr!important}#patrolPage .patrol-kpis,#patrolPage .patrol-progress-overview{grid-template-columns:1fr!important}}
#patrolPage .patrol-ranking-row:nth-last-child(-n+5){border-color:#eddcd3;background:linear-gradient(90deg,#fffaf7,#fff)}
#patrolPage .patrol-watch-more{grid-column:1/-1;padding:14px 16px;border-radius:16px;background:#f2f7f4;color:#687a71;font-size:14px;text-align:center;border:1px dashed #d6e3dc}




#patrolPage .patrol-dual-maps{display:grid;grid-template-columns:1fr;gap:20px}
#patrolPage .patrol-business-map .patrol-map-canvas-shell{width:100%!important;max-width:1280px!important}
#patrolPage .patrol-business-map canvas{max-height:760px!important}
#patrolPage .patrol-map-panel{padding:26px!important}
#patrolPage .patrol-map-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:14px}
#patrolPage .patrol-map-status-meta{margin-top:10px;display:flex;flex-wrap:wrap;gap:10px}
#patrolPage .patrol-map-status-chip{display:inline-flex;align-items:center;gap:6px;padding:8px 12px;border-radius:999px;background:#f1f6f3;color:#4f685d;font-size:13px;border:1px solid #dbe7e0}
#patrolPage .patrol-source-strip-panel{margin-top:14px}
#patrolPage .patrol-source-strip{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}
#patrolPage .patrol-source-card{padding:16px 16px 14px;border:1px solid #dfe9e4;border-radius:18px;background:linear-gradient(180deg,#fff,#f8fbf9)}
#patrolPage .patrol-source-card strong{display:block;font-size:15px;color:#294d40;margin-bottom:6px}
#patrolPage .patrol-source-card b{display:block;font-size:24px;color:#214536;margin-bottom:6px}
#patrolPage .patrol-source-card small{display:block;color:#718078;line-height:1.5;font-size:12px}
#patrolPage .patrol-source-card.ok b{color:#1e6b49}
#patrolPage .patrol-source-card.warn b{color:#b26a45}
#patrolPage .patrol-source-card.miss b{color:#b95549}
#patrolPage .patrol-inline-detail-card{margin-top:14px;border:1px solid #dce7e1;border-radius:18px;background:#fbfdfc;box-shadow:0 8px 24px rgba(38,68,54,.06)}
#patrolPage .patrol-inline-detail-card[hidden]{display:none!important}
#patrolPage .patrol-inline-detail-card .patrol-building-popup-head{position:static;top:auto;background:transparent;margin:0;padding:16px 16px 10px;border-bottom:1px solid rgba(66,105,88,.10)}
#patrolPage .patrol-inline-detail-card .patrol-building-object{margin:12px 16px;padding:12px;border-radius:14px}
#patrolPage .patrol-inline-detail-card .patrol-building-popup-close{display:none!important}
#patrolPage .patrol-inline-empty{margin-top:12px;padding:14px 16px;border-radius:16px;background:#f7faf8;color:#60746a;border:1px dashed #d7e4dd;font-size:13px;line-height:1.6}
#patrolPage .patrol-ranking-board{gap:14px!important}
#patrolPage .patrol-ranking-row{padding:20px 22px!important}
#patrolPage .patrol-ranking-person b{font-size:22px!important}
#patrolPage .patrol-ranking-person span{font-size:16px!important}
#patrolPage .patrol-ranking-person small{font-size:14px!important;line-height:1.55}
#patrolPage .patrol-ranking-rate strong{font-size:28px!important}
#patrolPage .patrol-watch-item{min-height:92px}
@media(max-width:1200px){#patrolPage .patrol-source-strip{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:820px){#patrolPage .patrol-source-strip{grid-template-columns:1fr}#patrolPage .patrol-business-map canvas{max-height:560px!important}}


#patrolPage .patrol-detail-panel,#patrolPage .patrol-person-panel{display:none}
#patrolPage .patrol-person-zone.show-details .patrol-detail-panel,#patrolPage .patrol-person-zone.show-details .patrol-person-panel{display:block}
#patrolPage .patrol-map-empty-card{display:none;padding:36px 28px;border-radius:22px;background:linear-gradient(180deg,#f8fbf9,#f2f7f4);border:1px dashed #cadbd2;text-align:center;color:#566e63;line-height:1.8}
#patrolPage .patrol-map-empty-card strong{display:block;font-size:24px;color:#284f3e;margin-bottom:8px}
#patrolPage .patrol-map-panel.is-empty .patrol-map-canvas-shell{display:none}
#patrolPage .patrol-map-panel.is-empty .patrol-map-legend{display:none}
#patrolPage .patrol-map-panel.is-empty .patrol-map-empty-card{display:block}
#patrolPage .patrol-map-panel.is-empty .patrol-map-actions button[data-requires-map="1"]{display:none}
#patrolPage .patrol-ranking-basis-alert{margin:10px 0 0;padding:12px 14px;border-radius:14px;background:#fff8ef;border:1px solid #ecdcc3;color:#80603d;font-size:13px;line-height:1.6}


#patrolPage .patrol-leadership-summary{margin:16px 0 18px;padding:18px 22px;border-radius:20px;border:1px solid #d9e7df;background:linear-gradient(90deg,#f4faf7,#fbfdfc);color:#315548;font-size:17px;line-height:1.75;font-weight:600}
#patrolPage .patrol-leadership-summary strong{font-size:20px;color:#214f3b}
#patrolPage .patrol-leadership-summary .danger{color:#b75546}
#patrolPage .patrol-leadership-summary .warn{color:#a66a35}
#patrolPage .patrol-kpis article.reg-zero{border-color:#efd4cc!important;background:linear-gradient(180deg,#fff7f3,#fff)!important}
#patrolPage .patrol-kpis article.reg-zero strong{color:#bd5546!important}
#patrolPage .patrol-kpis article.reg-one{border-color:#eadfc6!important;background:linear-gradient(180deg,#fffaf1,#fff)!important}
#patrolPage .patrol-kpis article.reg-one strong{color:#a47431!important}
#patrolPage .patrol-kpis article.reg-good{border-color:#d5eadf!important;background:linear-gradient(180deg,#f3fbf7,#fff)!important}
#patrolPage .patrol-progress-card.na{opacity:1!important;background:repeating-linear-gradient(135deg,#fafcfa,#fafcfa 10px,#f4f7f5 10px,#f4f7f5 20px)!important;border-style:dashed!important}
#patrolPage .patrol-progress-card.na .patrol-progress-track{background:transparent!important;border:1px dashed #b9c7c0!important;box-shadow:none!important}
#patrolPage .patrol-progress-card.na .patrol-progress-track>i{display:none!important}
#patrolPage .patrol-progress-card.na header strong{font-size:18px!important;color:#6e7f77!important}
#patrolPage .patrol-ranking-executive{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin:0 0 16px}
#patrolPage .patrol-ranking-executive-card{padding:15px 16px;border-radius:18px;border:1px solid #dfe9e4;background:#f9fcfa}
#patrolPage .patrol-ranking-executive-card span{display:block;font-size:12px;color:#718078;margin-bottom:5px}
#patrolPage .patrol-ranking-executive-card b{display:block;font-size:24px;color:#274f3d}
#patrolPage .patrol-ranking-executive-card small{display:block;margin-top:4px;color:#718078;font-size:12px}
#patrolPage .patrol-ranking-executive-card.warn{background:#fff9f1;border-color:#eadcc2}
#patrolPage .patrol-ranking-executive-card.warn b{color:#a86d34}
#patrolPage .patrol-ranking-executive-card.danger{background:#fff6f2;border-color:#efd7cf}
#patrolPage .patrol-ranking-executive-card.danger b{color:#b65446}
#patrolPage .patrol-watch-item .patrol-watch-action{display:block;margin-top:5px;color:#315b49;font-weight:700}
#patrolPage .patrol-watch-item .patrol-watch-gap{display:inline-block;margin-left:7px;color:#a66a35;font-weight:700}
#patrolPage .patrol-map-conclusion{margin-top:12px;padding:14px 16px;border-radius:16px;background:#f7faf8;border:1px solid #dce7e1;color:#51685d;font-size:14px;line-height:1.65}
#patrolPage .patrol-map-conclusion strong{color:#28513f}
#patrolPage .patrol-map-conclusion .warn{color:#a76a35}
#patrolPage .patrol-map-conclusion .danger{color:#b45447}
#patrolPage .patrol-module-actions .btn.primary{box-shadow:0 8px 20px rgba(61,137,99,.18)}
@media(max-width:1100px){#patrolPage .patrol-ranking-executive{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:700px){#patrolPage .patrol-ranking-executive{grid-template-columns:1fr}}


#patrolPage .patrol-ranking-expand{display:flex;margin:14px auto 0;min-width:180px;justify-content:center}
#patrolPage .patrol-trace-panel{margin-top:14px}
#patrolPage .patrol-trace-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}
#patrolPage .patrol-trace-grid article{padding:14px 16px;border:1px solid #dfe9e4;border-radius:16px;background:#fbfdfc}
#patrolPage .patrol-trace-grid span,#patrolPage .patrol-trace-grid small{display:block;color:#6b7d74}
#patrolPage .patrol-trace-grid b{display:block;font-size:26px;color:#27523f;margin:4px 0}
#patrolPage .patrol-trace-grid small{font-size:12px;line-height:1.5}
#patrolPage .patrol-trace-recent{margin-top:12px;display:grid;gap:8px}
#patrolPage .patrol-trace-recent-title{font-weight:700;color:#355c4a}
#patrolPage .patrol-trace-event{display:grid;grid-template-columns:86px minmax(160px,260px) 1fr;gap:12px;align-items:center;padding:10px 12px;border-radius:12px;background:#f7faf8;border:1px solid #e3ebe7}
#patrolPage .patrol-trace-event span{color:#5f776b;font-size:12px}.patrol-trace-event b{color:#294b3d}.patrol-trace-event small{color:#6e7d76;line-height:1.5}
#patrolPage .patrol-trace-empty{padding:13px 15px;border:1px dashed #d5e1da;border-radius:14px;color:#657970;background:#f8fbf9;line-height:1.65}
@media(max-width:1100px){#patrolPage .patrol-trace-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:720px){#patrolPage .patrol-trace-grid{grid-template-columns:1fr}#patrolPage .patrol-trace-event{grid-template-columns:1fr}}


#patrolProjectMapBoard,#patrolStoreMapBoard{touch-action:manipulation;user-select:none;-webkit-user-select:none}
#patrolProjectMapBoard:focus-visible,#patrolStoreMapBoard:focus-visible{outline:3px solid rgba(62,113,88,.38);outline-offset:4px}


body.patrol-public-view .mode-switch{display:flex!important;visibility:visible!important;opacity:1!important;pointer-events:auto!important;position:relative!important;z-index:45!important}
body.patrol-public-view .mode-switch-btn{display:inline-flex!important;align-items:center!important;justify-content:center!important;pointer-events:auto!important}
/* 巡查地图保持画布原始比例，不再被 max-height 强制压扁。 */
#patrolPage .patrol-map-panel canvas{width:100%!important;height:auto!important;max-height:none!important;object-fit:contain!important}
#patrolPage .patrol-map-canvas-shell{overflow:visible!important;background:#eef4f0!important}
#patrolProjectMapBoard,#patrolStoreMapBoard{touch-action:manipulation!important;user-select:none!important;-webkit-user-select:none!important}
@media(max-width:1050px){body.patrol-public-view .mode-switch{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;width:100%!important}}
@media(max-width:600px){body.patrol-public-view .mode-switch{display:grid!important;margin-top:6px!important}}



#patrolPage{--patrol-ink:#183e2f;--patrol-ink-2:#2e5141;--patrol-muted:#6c7d74;--patrol-line:#dce7e1;--patrol-surface:#ffffff;--patrol-soft:#f4f8f6;--patrol-green:#4e8b6d;--patrol-green-dark:#2e7654;--patrol-danger:#c87562;--patrol-warn:#d2a35a;--patrol-purple:#826e9e;font-family:"Microsoft YaHei","PingFang SC","Segoe UI",system-ui,sans-serif;color:var(--patrol-ink)!important;background:#f3f7f5!important;font-size:15px;line-height:1.65;letter-spacing:.01em}
#patrolPage .workspace{max-width:1480px!important;margin:22px auto!important;padding:34px 36px!important;border:1px solid rgba(63,104,84,.14)!important;border-radius:28px!important;background:rgba(255,255,255,.97)!important;box-shadow:0 14px 38px rgba(32,65,50,.065)!important}
#patrolPage .patrol-section-head{margin-bottom:24px!important;align-items:flex-start!important}
#patrolPage .patrol-section-head .section-number{width:38px!important;height:38px!important;min-width:38px!important;border-radius:13px!important;display:grid!important;place-items:center!important;background:#e5f1eb!important;color:#276b4c!important;font-size:16px!important;font-weight:900!important;box-shadow:inset 0 0 0 1px #d4e6dc!important}
#patrolPage .patrol-section-head h2{font-size:29px!important;line-height:1.25!important;letter-spacing:-.35px!important;font-weight:850!important;color:#173f2f!important;margin:0 0 6px!important}
#patrolPage .patrol-section-head p{font-size:15px!important;line-height:1.75!important;color:#667970!important;max-width:900px!important;margin:0!important}
#patrolPage .patrol-panel{border:1px solid var(--patrol-line)!important;border-radius:23px!important;background:#fff!important;box-shadow:0 5px 18px rgba(31,62,48,.045)!important}
#patrolPage .patrol-panel-head{gap:16px!important;align-items:flex-start!important;margin-bottom:18px!important}
#patrolPage .patrol-panel-head h3{font-size:22px!important;line-height:1.35!important;font-weight:820!important;letter-spacing:-.18px!important;color:#214838!important;margin:0 0 4px!important}
#patrolPage .patrol-panel-head small{font-size:14.5px!important;line-height:1.7!important;color:#718078!important;max-width:880px!important}
#patrolPage .patrol-schema-badge,#patrolPage #patrolProjectMapStatus,#patrolPage #patrolStoreMapStatus{font-size:13px!important;font-weight:750!important;color:#35624e!important;background:#eef6f2!important;border:1px solid #d6e7de!important;border-radius:999px!important;padding:7px 11px!important;white-space:nowrap}
#patrolPage .patrol-kpis{gap:14px!important}
#patrolPage .patrol-kpis article{padding:20px 21px!important;border-radius:20px!important;border:1px solid #dce8e2!important;box-shadow:none!important;background:linear-gradient(180deg,#fff,#f9fcfa)!important}
#patrolPage .patrol-kpis article span{font-size:13.5px!important;color:#697b72!important;font-weight:700!important}
#patrolPage .patrol-kpis article strong{font-size:36px!important;line-height:1.05!important;font-weight:850!important;letter-spacing:-.8px!important;color:#1e4a37!important;margin-top:7px!important}
#patrolPage .patrol-kpis article small{font-size:12.5px!important;color:#7a8982!important;line-height:1.55!important}
#patrolPage .btn{min-height:38px!important;border-radius:12px!important;font-weight:750!important;letter-spacing:.01em!important;box-shadow:none!important;transition:transform .16s ease,box-shadow .16s ease,background .16s ease!important}
#patrolPage .btn:hover{transform:translateY(-1px)!important;box-shadow:0 6px 16px rgba(35,75,56,.10)!important}
#patrolPage .btn.primary{background:#397d5c!important;border-color:#397d5c!important;color:#fff!important}
#patrolPage .patrol-macro-narrative,#patrolPage .patrol-map-conclusion{font-size:15px!important;line-height:1.82!important;color:#465f53!important}
#patrolPage table{font-size:13.5px!important}
#patrolPage th{font-weight:800!important;color:#2b5542!important;background:#f0f6f3!important}
#patrolPage td{color:#3e554a!important}
#patrolPage .patrol-watch-item b{font-size:18.5px!important;line-height:1.45!important;color:#233f33!important}
#patrolPage .patrol-watch-item small{font-size:14px!important;line-height:1.7!important;color:#62756b!important}
#patrolPage .patrol-ranking-person b{font-size:22px!important;line-height:1.35!important}
#patrolPage .patrol-ranking-rate strong{font-size:29px!important;font-weight:850!important}
#patrolPage .patrol-dual-maps{grid-template-columns:1fr!important;gap:20px!important}
#patrolPage .patrol-project-intelligence-map{grid-column:1/-1!important;padding:30px!important;background:linear-gradient(180deg,#fff,#fbfdfc)!important}
#patrolPage .patrol-map-intelligence-head{margin-bottom:22px!important}
#patrolPage .patrol-eyebrow{display:inline-block;margin-bottom:5px;color:#4f8068;font-size:12px;font-weight:850;letter-spacing:.16em;text-transform:uppercase}
#patrolPage .patrol-map-intelligence-layout{display:grid;grid-template-columns:minmax(0,1.72fr) minmax(360px,.82fr);gap:22px;align-items:stretch}
#patrolPage .patrol-map-visual-column{min-width:0;display:flex;flex-direction:column;gap:12px}
#patrolPage .patrol-project-intelligence-map .patrol-map-canvas-shell{max-width:none!important;width:100%!important;border:1px solid #d5e3dc!important;border-radius:22px!important;background:#f1f6f3!important;box-shadow:inset 0 0 0 1px rgba(255,255,255,.65)!important;overflow:hidden!important}
#patrolPage .patrol-project-intelligence-map canvas{display:block!important;width:100%!important;height:auto!important}
#patrolPage .patrol-map-reading-hint{display:flex;gap:7px;align-items:flex-start;padding:12px 14px;border-radius:14px;background:#f2f7f4;border:1px solid #dde9e3;color:#62766b;font-size:13.5px;line-height:1.65}
#patrolPage .patrol-map-reading-hint strong{color:#315945;white-space:nowrap}
#patrolPage .patrol-map-intelligence-panel{min-width:0;padding:22px;border-radius:22px;background:#f7faf8;border:1px solid #dbe7e1;display:flex;flex-direction:column;gap:17px}
#patrolPage .patrol-map-intelligence-title span{display:block;color:#204737;font-size:22px;line-height:1.3;font-weight:850;letter-spacing:-.2px}
#patrolPage .patrol-map-intelligence-title small{display:block;margin-top:5px;color:#74857c;font-size:13px;line-height:1.6}
#patrolPage .patrol-map-metric-strip{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
#patrolPage .patrol-map-metric-strip article{padding:14px 15px 13px;border-radius:16px;background:#fff;border:1px solid #dfe9e4;min-height:104px}
#patrolPage .patrol-map-metric-strip article span{display:block;color:#6d7f75;font-size:12.5px;font-weight:700}
#patrolPage .patrol-map-metric-strip article strong{display:block;margin:5px 0 3px;color:#234a39;font-size:29px;line-height:1;font-weight:850;letter-spacing:-.5px}
#patrolPage .patrol-map-metric-strip article small{display:block;color:#7b8a83;font-size:11.5px;line-height:1.5}
#patrolPage .patrol-map-metric-strip article.danger{background:#fff7f3;border-color:#edd7cf}#patrolPage .patrol-map-metric-strip article.danger strong{color:#b85244}
#patrolPage .patrol-map-metric-strip article.good{background:#f2f9f5;border-color:#d3e7dc}#patrolPage .patrol-map-metric-strip article.good strong{color:#2f7956}
#patrolPage .patrol-map-insight-section{padding-top:15px;border-top:1px solid #dde7e2}
#patrolPage .patrol-map-insight-section h4{margin:0 0 10px;color:#315445;font-size:15px;font-weight:850;letter-spacing:.02em}
#patrolPage .patrol-map-insight-section-head{display:flex;justify-content:space-between;gap:10px;align-items:baseline}
#patrolPage .patrol-map-insight-section-head small{color:#849089;font-size:11.5px}
#patrolPage .patrol-map-rich-legend{display:grid;gap:6px}
#patrolPage .patrol-map-rich-legend>div{display:grid;grid-template-columns:15px minmax(0,1fr) auto;gap:10px;align-items:center;padding:7px 9px;border-radius:11px;background:rgba(255,255,255,.74)}
#patrolPage .patrol-map-rich-legend .p-dot{width:12px;height:12px;margin:0!important}
#patrolPage .patrol-map-rich-legend span b{display:block;color:#3a5649;font-size:12.5px;line-height:1.35}
#patrolPage .patrol-map-rich-legend span small{display:block;color:#7c8a83;font-size:10.5px;line-height:1.45;margin-top:1px}
#patrolPage .patrol-map-rich-legend>div>strong{color:#345848;font-size:12.5px;font-weight:850}
#patrolPage .p-dot.p-unresolved{background:#9aa39e!important}
#patrolPage .patrol-map-priority-list{display:grid;gap:7px}
#patrolPage .patrol-map-priority-row{width:100%;display:grid;grid-template-columns:34px minmax(0,1fr) auto;gap:9px;align-items:center;padding:9px 9px;border:1px solid #e0e8e4;border-radius:13px;background:#fff;text-align:left;cursor:pointer;color:inherit;transition:border .16s ease,transform .16s ease,box-shadow .16s ease}
#patrolPage .patrol-map-priority-row:hover{transform:translateY(-1px);border-color:#bfd7ca;box-shadow:0 5px 14px rgba(37,77,58,.07)}
#patrolPage .patrol-map-priority-no{width:30px;height:30px;border-radius:50%;display:grid;place-items:center;background:#eaf3ee;color:#2f6b50;font-weight:850;font-size:12px}
#patrolPage .severity-rect .patrol-map-priority-no{background:#eee9f3;color:#695480}.severity-zero .patrol-map-priority-no{background:#fae9e3;color:#a74c3e}.severity-one .patrol-map-priority-no{background:#fbf1dd;color:#93682e}.severity-good .patrol-map-priority-no{background:#e6f2eb;color:#2f7655}
#patrolPage .patrol-map-priority-main{min-width:0}.patrol-map-priority-main b{display:block;color:#2a473a;font-size:13px;line-height:1.45;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.patrol-map-priority-main small{display:block;color:#7a8981;font-size:10.8px;line-height:1.45;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;margin-top:2px}
#patrolPage .patrol-map-priority-state{font-size:10.5px;font-weight:800;color:#65776e;background:#f2f6f4;border-radius:999px;padding:5px 7px;white-space:nowrap}
#patrolPage .patrol-map-narrative{padding:13px 14px;border-radius:14px;background:#edf5f1;color:#4b6458;font-size:12.5px;line-height:1.72;border:1px solid #d8e6df}
#patrolPage .patrol-map-conclusion-primary{margin-top:16px!important;padding:16px 18px!important;border-radius:16px!important;background:#f3f8f5!important;border:1px solid #dce9e2!important;color:#4a6257!important}
#patrolPage .patrol-project-intelligence-map .patrol-map-actions{padding-top:4px!important;border-top:0!important}
#patrolPage .patrol-pin-toolbar{border-radius:18px!important;background:#f7faf8!important;border-color:#dce7e1!important}
@media(max-width:1180px){#patrolPage .patrol-map-intelligence-layout{grid-template-columns:1fr!important}#patrolPage .patrol-map-intelligence-panel{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));align-items:start}#patrolPage .patrol-map-intelligence-title,#patrolPage .patrol-map-metric-strip,#patrolPage .patrol-map-narrative-section{grid-column:1/-1}}
@media(max-width:760px){#patrolPage .workspace{padding:23px 16px!important;border-radius:20px!important}#patrolPage .patrol-section-head h2{font-size:25px!important}#patrolPage .patrol-panel-head h3{font-size:20px!important}#patrolPage .patrol-project-intelligence-map{padding:18px!important}#patrolPage .patrol-map-intelligence-panel{display:flex!important;padding:16px!important}#patrolPage .patrol-map-metric-strip{grid-template-columns:repeat(2,minmax(0,1fr))}#patrolPage .patrol-map-priority-state{display:none}#patrolPage .patrol-map-priority-row{grid-template-columns:32px minmax(0,1fr)}#patrolPage .patrol-kpis article strong{font-size:32px!important}}


body.patrol-mode .app-header{max-width:1480px!important;padding:17px 26px 15px!important;margin:0 auto 14px!important;background:rgba(249,252,250,.965)!important;border:1px solid rgba(62,104,84,.13)!important;border-top:0!important;border-radius:0 0 22px 22px!important;box-shadow:0 9px 30px rgba(34,70,53,.075)!important;backdrop-filter:blur(18px)!important}
body.patrol-mode .brand-group{gap:13px!important}body.patrol-mode .brand-logo{width:50px!important;height:50px!important;border-radius:15px!important;box-shadow:0 7px 18px rgba(43,83,64,.11)!important}
body.patrol-mode .brand-kicker{font-size:11px!important;letter-spacing:.13em!important;color:#56816f!important;font-weight:750!important}
body.patrol-mode .brand-copy h1{font-size:24px!important;line-height:1.25!important;font-weight:850!important;letter-spacing:-.35px!important;color:#173e2f!important}
body.patrol-mode .brand-copy p{font-size:13px!important;line-height:1.5!important;color:#718078!important;margin-top:4px!important}
body.patrol-mode .product-edition{font-size:11px!important;font-weight:750!important;padding:4px 8px!important;border-radius:999px!important}
body.patrol-mode .mode-switch{display:flex!important;gap:4px!important;padding:4px!important;border-radius:15px!important;background:#e8f1ec!important;border:1px solid #d5e5dc!important;box-shadow:inset 0 1px 2px rgba(42,83,63,.04)!important}
body.patrol-mode .mode-switch-btn{min-height:39px!important;padding:9px 16px!important;border-radius:11px!important;font-size:13.5px!important;font-weight:800!important;letter-spacing:.01em!important;color:#5b7268!important;transition:background .15s ease,color .15s ease,box-shadow .15s ease!important}
body.patrol-mode .mode-switch-btn.active{background:#347a59!important;color:#fff!important;box-shadow:0 5px 14px rgba(42,111,78,.20)!important}
body.patrol-mode .mode-switch-btn:not(.active):hover{background:rgba(255,255,255,.72)!important;color:#285b46!important}
body.patrol-public-view .mode-switch{display:flex!important;visibility:visible!important;opacity:1!important;pointer-events:auto!important}
@media(max-width:1050px){body.patrol-mode .app-header{padding:14px 18px!important}body.patrol-mode .mode-switch{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;width:100%!important;order:3!important}body.patrol-mode .mode-switch-btn{padding:9px 6px!important;font-size:12.5px!important}}
body.patrol-mode .mode-switch-btn{white-space:nowrap!important;min-width:92px!important}
@media(max-width:1050px){body.patrol-mode .mode-switch-btn{min-width:0!important;white-space:nowrap!important}}


#patrolPage{--hf15-ink:#183c2f;--hf15-body:#445d52;--hf15-muted:#71827a;--hf15-line:#d9e6df;--hf15-soft:#f3f8f5;--hf15-accent:#347a59}
#patrolPage .patrol-section-nav{position:sticky;top:10px;z-index:18;display:flex;align-items:center;justify-content:center;gap:5px;width:max-content;max-width:calc(100% - 20px);margin:0 auto 20px;padding:5px;border:1px solid rgba(55,103,81,.16);border-radius:16px;background:rgba(248,252,249,.94);box-shadow:0 10px 26px rgba(38,72,56,.09);backdrop-filter:blur(16px);overflow-x:auto;scrollbar-width:none}
#patrolPage .patrol-section-nav::-webkit-scrollbar{display:none}
#patrolPage .patrol-section-nav.hidden{display:none!important}
#patrolPage .patrol-section-nav button{border:0;background:transparent;color:#63776d;border-radius:11px;padding:9px 14px;min-height:38px;white-space:nowrap;font:800 12.5px/1.2 "Microsoft YaHei",sans-serif;cursor:pointer;transition:.16s ease}
#patrolPage .patrol-section-nav button:hover{background:#edf5f1;color:#285b46}
#patrolPage .patrol-section-nav button.active{background:#347a59;color:#fff;box-shadow:0 5px 14px rgba(42,111,78,.19)}
#patrolPage .patrol-section-nav button[hidden]{display:none!important}

#patrolPage .patrol-leadership-summary{font-size:16px!important;line-height:1.85!important;color:#365447!important;padding:18px 20px!important;border-radius:16px!important;background:linear-gradient(180deg,#f5faf7,#f0f7f3)!important;border:1px solid #d8e7df!important;box-shadow:inset 4px 0 0 #4f9070!important}
#patrolPage .patrol-leadership-summary strong{color:#1d503a!important;font-weight:850!important}
#patrolPage .patrol-action-highlights{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:11px;margin:12px 0 2px}
#patrolPage .patrol-action-card{position:relative;min-height:110px;padding:15px 16px 14px;border:1px solid #dfe9e4;border-radius:16px;background:#fff;overflow:hidden}
#patrolPage .patrol-action-card:before{content:"";position:absolute;left:0;top:0;bottom:0;width:4px;background:#7f978a}
#patrolPage .patrol-action-card span{display:block;color:#697b72;font-size:12px;font-weight:800;letter-spacing:.02em}
#patrolPage .patrol-action-card strong{display:block;margin:7px 0 5px;color:#224b39;font-size:25px;line-height:1;font-weight:900;letter-spacing:-.4px}
#patrolPage .patrol-action-card small{display:block;color:#75867d;font-size:11.5px;line-height:1.55}
#patrolPage .patrol-action-card.tone-rect{background:#faf7fc;border-color:#e4ddeb}#patrolPage .patrol-action-card.tone-rect:before{background:#826e9e}#patrolPage .patrol-action-card.tone-rect strong{color:#66517f}
#patrolPage .patrol-action-card.tone-zero{background:#fff7f3;border-color:#efd9d1}#patrolPage .patrol-action-card.tone-zero:before{background:#c87562}#patrolPage .patrol-action-card.tone-zero strong{color:#aa4b3c}
#patrolPage .patrol-action-card.tone-one,#patrolPage .patrol-action-card.tone-warn{background:#fffbf2;border-color:#eadfc4}#patrolPage .patrol-action-card.tone-one:before,#patrolPage .patrol-action-card.tone-warn:before{background:#d2a35a}#patrolPage .patrol-action-card.tone-one strong,#patrolPage .patrol-action-card.tone-warn strong{color:#956827}
#patrolPage .patrol-action-card.tone-good{background:#f2f9f5;border-color:#d5e8dd}#patrolPage .patrol-action-card.tone-good:before{background:#5c987d}#patrolPage .patrol-action-card.tone-good strong{color:#2e7755}

#patrolPage .patrol-map-explore-bar{display:grid;grid-template-columns:minmax(0,1fr) minmax(260px,330px);gap:11px 16px;align-items:end;margin:2px 0 16px;padding:13px 14px 12px;border:1px solid #dce8e2;border-radius:17px;background:#f6faf8}
#patrolPage .patrol-map-filter-group{display:flex;flex-wrap:wrap;gap:7px;align-items:center}
#patrolPage .patrol-map-filter-group button{display:inline-flex;align-items:center;gap:6px;min-height:35px;padding:7px 10px;border:1px solid #d9e5df;border-radius:999px;background:#fff;color:#536d61;font:800 11.5px/1.2 "Microsoft YaHei",sans-serif;cursor:pointer;transition:.15s ease}
#patrolPage .patrol-map-filter-group button b{display:grid;place-items:center;min-width:21px;height:21px;padding:0 5px;border-radius:999px;background:#eef5f1;color:#3f6855;font-size:10.5px}
#patrolPage .patrol-map-filter-group button:hover{border-color:#b9d3c5;transform:translateY(-1px)}
#patrolPage .patrol-map-filter-group button.active{border-color:#347a59;background:#347a59;color:#fff;box-shadow:0 5px 12px rgba(48,115,82,.16)}
#patrolPage .patrol-map-filter-group button.active b{background:rgba(255,255,255,.18);color:#fff}
#patrolPage .patrol-map-search-wrap label{display:block;margin:0 0 6px 2px;color:#61756a;font-size:11.5px;font-weight:800}
#patrolPage .patrol-map-search-box{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:6px;padding:4px;border:1px solid #d7e4dd;border-radius:12px;background:#fff;transition:.16s ease}
#patrolPage .patrol-map-search-box:focus-within{border-color:#76a88f;box-shadow:0 0 0 3px rgba(74,137,104,.12)}
#patrolPage .patrol-map-search-box input{min-width:0;border:0;outline:0;background:transparent;padding:7px 8px;color:#254737;font:600 12.5px/1.4 "Microsoft YaHei",sans-serif}
#patrolPage .patrol-map-search-box input::placeholder{color:#9aa7a0}
#patrolPage .patrol-map-search-box button{border:0;border-radius:8px;background:#edf5f1;color:#4b705e;padding:6px 9px;font-size:11px;font-weight:800;cursor:pointer}
#patrolPage .patrol-map-filter-status{grid-column:1/-1;color:#64776d;font-size:11.8px;line-height:1.55;padding-left:2px}
#patrolPage .patrol-map-priority-row.is-unresolved{cursor:default;background:#f7f8f7;border-style:dashed}
#patrolPage .patrol-map-priority-row.is-unresolved .patrol-map-priority-no{background:#eef0ef;color:#7a827e}
#patrolPage .patrol-map-priority-row:focus-visible,#patrolPage .patrol-map-filter-group button:focus-visible,#patrolPage .patrol-section-nav button:focus-visible,#patrolPage .patrol-map-search-box button:focus-visible{outline:3px solid rgba(48,126,89,.24);outline-offset:2px}

#patrolPage .patrol-project-intelligence-map .patrol-panel-head h3,#patrolPage .patrol-project-intelligence-map .patrol-map-intelligence-title span{letter-spacing:-.32px!important}
#patrolPage .patrol-map-intelligence-panel{box-shadow:0 10px 28px rgba(42,75,59,.055)!important}
#patrolPage .patrol-map-priority-main b{font-size:13.5px!important;color:#244637!important}
#patrolPage .patrol-map-priority-main small{font-size:11.2px!important;color:#73827a!important}
#patrolPage .patrol-map-narrative{font-size:13px!important;line-height:1.78!important;color:#425e51!important}
#patrolPage .patrol-panel-head>div>small,#patrolPage .patrol-section-head>div>p{line-height:1.65!important}
#patrolPage .patrol-kpis article,#patrolPage .patrol-ranking-executive-card,#patrolPage .patrol-progress-card{box-shadow:0 6px 18px rgba(39,73,56,.035)!important}

@media(max-width:1180px){#patrolPage .patrol-action-highlights{grid-template-columns:repeat(2,minmax(0,1fr))}#patrolPage .patrol-map-explore-bar{grid-template-columns:1fr}#patrolPage .patrol-map-search-wrap{max-width:460px}#patrolPage .patrol-map-filter-status{grid-column:1}}
@media(max-width:760px){#patrolPage .patrol-section-nav{top:6px;justify-content:flex-start;width:auto;margin:0 2px 14px;padding:4px}#patrolPage .patrol-section-nav button{padding:8px 11px;font-size:11.5px}#patrolPage .patrol-action-highlights{grid-template-columns:1fr 1fr;gap:8px}#patrolPage .patrol-action-card{min-height:96px;padding:13px}#patrolPage .patrol-action-card strong{font-size:22px}#patrolPage .patrol-map-explore-bar{padding:11px;border-radius:14px}#patrolPage .patrol-map-filter-group{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}#patrolPage .patrol-map-filter-group button{justify-content:space-between;border-radius:11px}#patrolPage .patrol-map-search-wrap{max-width:none}}
#patrolPage .patrol-map-list-more{padding:8px 10px;border-radius:10px;background:#eef5f1;color:#677970;font-size:10.8px;line-height:1.5;text-align:center}



:root{--x16-ink:#173b2d;--x16-body:#3f574b;--x16-muted:#6d7d75;--x16-line:#d9e4de;--x16-surface:#ffffff;--x16-soft:#f3f7f5;--x16-green:#347a59;--x16-green-2:#5a9b78;--x16-amber:#b57b31;--x16-red:#ad4f42;--x16-purple:#765e8c}
body{background:#f3f6f4!important;color:var(--x16-body)!important}
.app-header,body.address-mode .app-header,body.patrol-mode .app-header{position:sticky!important;top:0!important;z-index:40!important;max-width:none!important;width:100%!important;margin:0!important;padding:16px max(22px,calc((100vw - 1500px)/2 + 30px))!important;border:0!important;border-bottom:1px solid rgba(50,83,67,.11)!important;border-radius:0!important;background:rgba(252,253,252,.96)!important;box-shadow:0 8px 30px rgba(26,56,42,.055)!important;backdrop-filter:saturate(140%) blur(18px)!important;display:grid!important;grid-template-columns:minmax(420px,1fr) auto!important;align-items:center!important;gap:18px!important;min-height:94px!important}
.brand-group,body.address-mode .brand-group,body.patrol-mode .brand-group{display:flex!important;align-items:center!important;gap:13px!important;min-width:0!important}
.brand-logo,body.address-mode .brand-logo,body.patrol-mode .brand-logo{width:52px!important;height:52px!important;min-width:52px!important;border-radius:15px!important;overflow:hidden!important;background:#fff!important;border:1px solid rgba(45,86,65,.10)!important;box-shadow:0 7px 20px rgba(44,80,61,.10)!important;filter:none!important;opacity:1!important}
.brand-kicker,body.address-mode .brand-kicker,body.patrol-mode .brand-kicker{display:block!important;margin-bottom:3px!important;color:#5d7e6d!important;font-size:11px!important;font-weight:800!important;letter-spacing:.13em!important;text-shadow:none!important}
.brand-copy h1,body.address-mode .brand-copy h1,body.address-mode #brandTitleText,body.patrol-mode .brand-copy h1{margin:0!important;color:var(--x16-ink)!important;font-size:26px!important;line-height:1.22!important;font-weight:900!important;letter-spacing:-.45px!important;text-shadow:none!important;white-space:nowrap!important}
.product-edition,body.address-mode .product-edition,body.patrol-mode .product-edition{display:inline-flex!important;vertical-align:middle!important;margin-left:8px!important;padding:4px 8px!important;border:1px solid #d5e4dc!important;border-radius:999px!important;background:#eef6f2!important;color:#3f6c56!important;font-size:11px!important;font-weight:800!important;letter-spacing:0!important}
.brand-copy p,body.address-mode .brand-copy p,body.address-mode #brandModeText,body.patrol-mode .brand-copy p{margin:4px 0 0!important;color:#718078!important;font-size:13px!important;line-height:1.45!important;font-weight:600!important;text-shadow:none!important;white-space:nowrap!important}
.mode-switch,body.address-mode .mode-switch,body.patrol-mode .mode-switch{display:flex!important;align-items:center!important;justify-content:flex-end!important;gap:4px!important;padding:5px!important;margin:0!important;border:1px solid #d8e5de!important;border-radius:16px!important;background:#edf4f0!important;box-shadow:inset 0 1px 2px rgba(35,69,53,.04)!important;visibility:visible!important;opacity:1!important;pointer-events:auto!important}
.mode-switch-btn,body.address-mode .mode-switch-btn,body.patrol-mode .mode-switch-btn{display:inline-flex!important;align-items:center!important;justify-content:center!important;min-width:108px!important;min-height:42px!important;padding:9px 16px!important;border:0!important;border-radius:12px!important;background:transparent!important;color:#586f63!important;font-size:14px!important;font-weight:850!important;white-space:nowrap!important;box-shadow:none!important}
.mode-switch-btn:hover,body.address-mode .mode-switch-btn:hover,body.patrol-mode .mode-switch-btn:hover{background:rgba(255,255,255,.72)!important;color:#285a44!important}
.mode-switch-btn.active,body.address-mode .mode-switch-btn.active,body.patrol-mode .mode-switch-btn.active{background:#fff!important;color:#1f583f!important;box-shadow:0 4px 12px rgba(35,77,56,.09)!important}
body.patrol-mode .mode-switch-btn.active{background:#347a59!important;color:#fff!important;box-shadow:0 5px 14px rgba(42,111,78,.20)!important}
.header-side{display:none!important}.system-ribbon,.governance-deck{display:none!important}
.app-shell,.address-page,#patrolPage{max-width:1500px!important}
@media(max-width:980px){.app-header,body.address-mode .app-header,body.patrol-mode .app-header{position:relative!important;grid-template-columns:1fr!important;padding:14px 18px!important;gap:12px!important}.mode-switch,body.address-mode .mode-switch,body.patrol-mode .mode-switch{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;width:100%!important}.mode-switch-btn,body.address-mode .mode-switch-btn,body.patrol-mode .mode-switch-btn{min-width:0!important}.brand-copy h1,body.address-mode .brand-copy h1,body.patrol-mode .brand-copy h1{font-size:23px!important}.brand-copy p,body.address-mode .brand-copy p,body.patrol-mode .brand-copy p{white-space:normal!important}}
@media(max-width:600px){.app-header,body.address-mode .app-header,body.patrol-mode .app-header{padding:12px!important}.brand-logo,body.address-mode .brand-logo,body.patrol-mode .brand-logo{width:45px!important;height:45px!important;min-width:45px!important}.brand-copy h1,body.address-mode .brand-copy h1,body.patrol-mode .brand-copy h1{font-size:19px!important;white-space:normal!important}.product-edition{margin-left:4px!important}.brand-copy p{font-size:12px!important}.mode-switch-btn{font-size:12px!important;padding:8px 5px!important}}

/* Patrol information hierarchy: tight title grouping, spacious executive cards */
#patrolPage{font-size:15.5px!important;line-height:1.65!important;color:var(--x16-body)!important}
#patrolPage .workspace{max-width:1500px!important;margin:24px auto!important;padding:36px 40px!important;border-radius:28px!important;border:1px solid rgba(56,93,73,.12)!important;background:rgba(255,255,255,.98)!important;box-shadow:0 14px 38px rgba(32,65,50,.055)!important;overflow:hidden!important}
#patrolPage .patrol-section-head{display:grid!important;grid-template-columns:36px minmax(0,1fr) auto!important;gap:8px 12px!important;align-items:start!important;margin-bottom:26px!important}
#patrolPage .patrol-section-head .section-number{grid-column:1!important;grid-row:1!important;width:34px!important;height:34px!important;min-width:34px!important;border-radius:11px!important;font-size:14px!important;margin-top:1px!important;background:#e6f1eb!important;color:#28684b!important;box-shadow:inset 0 0 0 1px #d4e5db!important}
#patrolPage .patrol-section-head>.grow,#patrolPage .patrol-section-head>div:not(.patrol-module-actions){grid-column:2!important;min-width:0!important}
#patrolPage .patrol-section-head h2{margin:0 0 6px!important;font-size:27px!important;line-height:1.25!important;font-weight:900!important;letter-spacing:-.45px!important;color:#163d2d!important}
#patrolPage .patrol-section-head p{margin:0!important;font-size:14.5px!important;line-height:1.7!important;color:#687970!important;max-width:980px!important}
#patrolPage .patrol-module-actions{grid-column:3!important;grid-row:1/3!important;display:flex!important;flex-wrap:wrap!important;justify-content:flex-end!important;align-content:flex-start!important;gap:8px!important;max-width:610px!important}
#patrolPage .patrol-section-head>.patrol-schema-badge{grid-column:2!important;grid-row:2!important;justify-self:start!important;margin-top:4px!important}
#patrolPage .patrol-hero .patrol-section-head{grid-template-columns:36px minmax(0,1fr)!important}
#patrolPage .patrol-hero .patrol-section-head>.grow{grid-column:2!important}
#patrolPage .patrol-panel{min-width:0!important;overflow:hidden!important}
#patrolPage .patrol-panel-head{display:flex!important;align-items:flex-start!important;justify-content:space-between!important;gap:16px!important;min-width:0!important}
#patrolPage .patrol-panel-head>div{min-width:0!important}
#patrolPage .patrol-panel-head h3{font-size:21px!important;line-height:1.35!important;color:#1d4936!important;font-weight:900!important}
#patrolPage .patrol-panel-head small{font-size:13.5px!important;line-height:1.65!important;color:#6c7d74!important}

#patrolPage .patrol-kpis{grid-template-columns:repeat(4,minmax(0,1fr))!important;gap:14px!important}
#patrolPage .patrol-kpis article{--kpi-progress:0;--kpi-color:#5a9b78;position:relative!important;display:block!important;min-width:0!important;min-height:154px!important;padding:22px 88px 20px 22px!important;border-radius:22px!important;border:1px solid #dce7e1!important;background:linear-gradient(180deg,#fff,#f9fcfa)!important;box-shadow:0 6px 18px rgba(34,68,52,.035)!important;overflow:hidden!important}
#patrolPage .patrol-kpis article:before{content:"";position:absolute;right:20px;top:34px;width:52px;height:52px;border-radius:50%;background:conic-gradient(var(--kpi-color) calc(var(--kpi-progress)*1turn),#e9f0ec 0);box-shadow:inset 0 0 0 1px rgba(52,87,69,.05)}
#patrolPage .patrol-kpis article:after{content:"";position:absolute;right:30px;top:44px;width:32px;height:32px;border-radius:50%;background:#fff;box-shadow:0 0 0 1px rgba(55,87,70,.035)}
#patrolPage .patrol-kpis article.kpi-no-viz:before,#patrolPage .patrol-kpis article.kpi-no-viz:after{display:none!important}
#patrolPage .patrol-kpis article.kpi-no-viz{padding-right:22px!important}
#patrolPage .patrol-kpis article span{display:block!important;color:#5f7368!important;font-size:14px!important;font-weight:800!important;line-height:1.4!important;white-space:normal!important}
#patrolPage .patrol-kpis article strong{display:block!important;margin:9px 0 7px!important;color:#1b4935!important;font-size:42px!important;line-height:1!important;font-weight:900!important;letter-spacing:-1px!important;white-space:nowrap!important}
#patrolPage .patrol-kpis article small{display:block!important;color:#708078!important;font-size:12.5px!important;line-height:1.55!important;max-width:100%!important}
#patrolPage .patrol-kpis article.reg-zero{--kpi-color:#c86d59!important}#patrolPage .patrol-kpis article.reg-one{--kpi-color:#d1a053!important}#patrolPage .patrol-kpis article.reg-good{--kpi-color:#4f9270!important}

#patrolPage .patrol-leadership-summary{font-size:16px!important;line-height:1.85!important;padding:19px 22px!important;border-radius:18px!important;background:#f4f8f6!important;border:1px solid #dbe8e1!important;box-shadow:inset 4px 0 0 #4e9170!important;color:#365447!important}
#patrolPage .patrol-action-highlights{grid-template-columns:repeat(4,minmax(0,1fr))!important;gap:12px!important;margin-top:14px!important}
#patrolPage .patrol-action-card{min-height:118px!important;padding:17px 18px!important;border-radius:18px!important}
#patrolPage .patrol-action-card span{font-size:12.5px!important;color:#60736a!important}#patrolPage .patrol-action-card strong{font-size:27px!important;margin:9px 0 7px!important}#patrolPage .patrol-action-card small{font-size:12px!important;line-height:1.6!important;color:#6d7e75!important}

/* Executive ranking: identity / four metrics / progress / trend each owns its space */
#patrolPage .patrol-ranking-board{gap:12px!important}
#patrolPage .patrol-ranking-row{display:grid!important;grid-template-columns:56px 190px minmax(360px,1fr) 250px 145px!important;gap:16px!important;align-items:center!important;padding:17px 19px!important;border-radius:20px!important;min-width:0!important}
#patrolPage .patrol-ranking-place{width:48px!important;height:48px!important;border-radius:15px!important;font-size:22px!important}
#patrolPage .patrol-ranking-person{min-width:0!important}#patrolPage .patrol-ranking-person b{font-size:20px!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important}#patrolPage .patrol-ranking-person span{font-size:13px!important;margin-top:4px!important}#patrolPage .patrol-ranking-person small{display:none!important}
#patrolPage .patrol-ranking-metrics{display:grid!important;grid-template-columns:repeat(4,minmax(72px,1fr))!important;gap:8px!important;min-width:0!important}
#patrolPage .patrol-ranking-metric{min-width:0!important;padding:10px 10px 9px!important;border:1px solid #e2eae6!important;border-radius:13px!important;background:#f7faf8!important;text-align:center!important}
#patrolPage .patrol-ranking-metric span{display:block!important;color:#74837b!important;font-size:10.8px!important;font-weight:750!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important}
#patrolPage .patrol-ranking-metric b{display:block!important;margin-top:4px!important;color:#254b39!important;font-size:19px!important;line-height:1!important;font-weight:900!important}
#patrolPage .patrol-ranking-metric.warn b{color:#a66f2d!important}#patrolPage .patrol-ranking-metric.danger b{color:#b44f42!important}#patrolPage .patrol-ranking-metric.good b{color:#2d7854!important}
#patrolPage .patrol-ranking-main{display:grid!important;grid-template-columns:minmax(0,1fr) 78px!important;gap:12px!important;align-items:center!important;min-width:0!important}
#patrolPage .patrol-ranking-bar{height:17px!important}.patrol-ranking-rate strong{font-size:23px!important}.patrol-ranking-rate span{font-size:11px!important}
#patrolPage .patrol-ranking-trend{padding-left:14px!important;min-width:0!important}#patrolPage .patrol-ranking-trend span{font-size:11px!important}#patrolPage .patrol-ranking-trend b{font-size:14px!important;white-space:normal!important;line-height:1.45!important}

/* Dense content: use whitespace and clear contrast; never let pale text disappear */
#patrolPage p,#patrolPage small,#patrolPage .patrol-writing-note,#patrolPage td{color:#586d62!important}
#patrolPage th{color:#214c38!important;background:#eef5f1!important}
#patrolPage .patrol-macro-narrative,#patrolPage .patrol-map-conclusion,#patrolPage .patrol-map-narrative{color:#3d594c!important;background:#f3f8f5!important}
#patrolPage .patrol-schema-badge{color:#315d49!important;background:#eef6f2!important;border-color:#d5e6dd!important}
#patrolPage .patrol-map-priority-main b{color:#1f4433!important}.patrol-map-priority-main small{color:#677a70!important}
#patrolPage .patrol-progress-overview,#patrolPage .patrol-columns,#patrolPage .patrol-macro-columns{min-width:0!important}
#patrolPage .patrol-progress-card{min-width:0!important;overflow:hidden!important}

@media(max-width:1280px){#patrolPage .patrol-kpis{grid-template-columns:repeat(2,minmax(0,1fr))!important}#patrolPage .patrol-ranking-row{grid-template-columns:52px 170px minmax(320px,1fr) 220px!important}#patrolPage .patrol-ranking-trend{grid-column:3/5!important;border-left:0!important;padding-left:0!important;display:flex!important;gap:8px!important;align-items:center!important}}
@media(max-width:980px){#patrolPage .workspace{padding:28px 24px!important}#patrolPage .patrol-section-head,#patrolPage .patrol-module-head{grid-template-columns:34px minmax(0,1fr)!important}.patrol-module-actions{grid-column:2!important;grid-row:auto!important;justify-content:flex-start!important;max-width:none!important}.patrol-section-head>.patrol-schema-badge{grid-column:2!important;grid-row:auto!important}#patrolPage .patrol-ranking-row{grid-template-columns:48px minmax(0,1fr)!important;align-items:start!important}#patrolPage .patrol-ranking-metrics,#patrolPage .patrol-ranking-main,#patrolPage .patrol-ranking-trend{grid-column:2!important}#patrolPage .patrol-ranking-metrics{grid-template-columns:repeat(4,minmax(64px,1fr))!important}#patrolPage .patrol-ranking-trend{display:flex!important;border-left:0!important;padding-left:0!important}}
@media(max-width:700px){#patrolPage .workspace{padding:22px 16px!important;border-radius:22px!important}#patrolPage .patrol-section-head h2{font-size:23px!important}#patrolPage .patrol-kpis{grid-template-columns:1fr!important}#patrolPage .patrol-kpis article{min-height:132px!important}#patrolPage .patrol-action-highlights{grid-template-columns:1fr 1fr!important}#patrolPage .patrol-ranking-metrics{grid-template-columns:repeat(2,minmax(0,1fr))!important}#patrolPage .patrol-ranking-row{padding:14px!important}}


#patrolPage .patrol-ranking-row,#patrolPage .patrol-ranking-row>*{box-sizing:border-box!important;min-width:0!important;max-width:100%!important}
#patrolPage .patrol-ranking-metrics,#patrolPage .patrol-ranking-main,#patrolPage .patrol-ranking-trend{width:100%!important;max-width:100%!important;min-width:0!important}
@media(max-width:1100px){
 #patrolPage .patrol-ranking-row{grid-template-columns:48px minmax(0,1fr)!important;gap:12px 14px!important}
 #patrolPage .patrol-ranking-place{grid-column:1!important;grid-row:1!important}
 #patrolPage .patrol-ranking-person{grid-column:2!important;grid-row:1!important}
 #patrolPage .patrol-ranking-metrics,#patrolPage .patrol-ranking-main,#patrolPage .patrol-ranking-trend{grid-column:1/-1!important}
 #patrolPage .patrol-ranking-metrics{grid-template-columns:repeat(4,minmax(0,1fr))!important}
 #patrolPage .patrol-ranking-trend{border-left:0!important;padding-left:0!important;display:flex!important;gap:8px!important;align-items:center!important}
}
@media(max-width:560px){
 #patrolPage .patrol-ranking-row{padding:14px 13px!important}
 #patrolPage .patrol-ranking-metrics{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:7px!important}
 #patrolPage .patrol-ranking-main{grid-template-columns:minmax(0,1fr) 68px!important;gap:9px!important}
 #patrolPage .patrol-ranking-metric{padding:9px 8px!important}
 #patrolPage .patrol-ranking-person b{font-size:18px!important}
 #patrolPage .patrol-ranking-rate strong{font-size:20px!important}
}
#patrolPage .patrol-ranking-main{grid-template-columns:minmax(0,1fr) max-content!important}
#patrolPage .patrol-ranking-rate{min-width:0!important;max-width:112px!important;text-align:right!important}
#patrolPage .patrol-ranking-rate strong{white-space:nowrap!important}
@media(max-width:560px){#patrolPage .patrol-ranking-main{grid-template-columns:minmax(0,1fr) max-content!important}}


#patrolPage{--patrol-muted:#607169!important}
#patrolPage p,#patrolPage small,#patrolPage .patrol-writing-note,#patrolPage td,#patrolPage .patrol-panel-head small,#patrolPage .patrol-kpis article small,#patrolPage .patrol-section-head p{color:#5f7068!important}
#patrolPage .patrol-ranking-metric span{color:#607169!important}
#patrolPage .patrol-ranking-metric.warn b,#patrolPage .patrol-action-card.warn strong,#patrolPage .patrol-action-card.one strong{color:#8b5720!important}


.app-header,body.address-mode .app-header,body.patrol-mode .app-header{grid-template-columns:minmax(360px,1fr) 392px!important;align-items:center!important;min-height:88px!important}
.mode-switch,body.address-mode .mode-switch,body.patrol-mode .mode-switch{justify-self:end!important;width:392px!important;max-width:100%!important;display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:6px!important;padding:6px!important;border-radius:18px!important;background:linear-gradient(180deg,#edf4f0 0%,#e9f1ed 100%)!important;border:1px solid #d7e4dd!important;box-shadow:inset 0 1px 0 rgba(255,255,255,.72),0 6px 18px rgba(33,66,51,.045)!important}
.mode-switch-btn,body.address-mode .mode-switch-btn,body.patrol-mode .mode-switch-btn{position:relative!important;width:100%!important;min-width:0!important;min-height:46px!important;padding:10px 12px!important;border-radius:14px!important;background:transparent!important;color:#5d746a!important;font-size:14px!important;font-weight:820!important;letter-spacing:.01em!important;box-shadow:none!important;text-shadow:none!important}
.mode-switch-btn:hover,body.address-mode .mode-switch-btn:hover,body.patrol-mode .mode-switch-btn:hover{background:rgba(255,255,255,.72)!important;color:#2c5f4a!important}
.mode-switch-btn.active,body.address-mode .mode-switch-btn.active,body.patrol-mode .mode-switch-btn.active{background:#fff!important;color:#1f5b45!important;box-shadow:0 6px 16px rgba(36,76,58,.10),inset 0 0 0 1px rgba(31,91,69,.06)!important}
.mode-switch-btn.active::after{content:"";display:block;width:22px;height:3px;border-radius:999px;background:#2f7a5d;position:absolute;left:50%;bottom:7px;transform:translateX(-50%)}
@media(max-width:980px){.app-header,body.address-mode .app-header,body.patrol-mode .app-header{grid-template-columns:1fr!important}.mode-switch,body.address-mode .mode-switch,body.patrol-mode .mode-switch{width:100%!important;justify-self:stretch!important}}
@media(max-width:600px){.mode-switch-btn,body.address-mode .mode-switch-btn,body.patrol-mode .mode-switch-btn{min-height:42px!important;padding:9px 4px!important;font-size:12px!important}}


.app-header,body.address-mode .app-header,body.patrol-mode .app-header{grid-template-columns:minmax(360px,1fr) 432px!important;}
.mode-switch,body.address-mode .mode-switch,body.patrol-mode .mode-switch{justify-self:end!important;width:432px!important;max-width:100%!important;display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:8px!important;padding:8px!important;border-radius:20px!important;background:linear-gradient(180deg,#edf4f0 0%,#e8f0ec 100%)!important;border:1px solid #d6e3dc!important;box-shadow:inset 0 1px 0 rgba(255,255,255,.78),0 7px 18px rgba(36,70,55,.04)!important;overflow:hidden!important;}
.mode-switch::before{content:none!important}
.mode-switch-btn,body.address-mode .mode-switch-btn,body.patrol-mode .mode-switch-btn{width:100%!important;min-width:0!important;min-height:48px!important;border-radius:14px!important;padding:10px 10px!important;display:flex!important;align-items:center!important;justify-content:center!important;text-align:center!important;position:relative!important;z-index:1!important;}
.mode-switch-btn.active,body.address-mode .mode-switch-btn.active,body.patrol-mode .mode-switch-btn.active{background:#fff!important;color:#1f5b45!important;box-shadow:0 6px 16px rgba(36,76,58,.10),inset 0 0 0 1px rgba(31,91,69,.06)!important;}
body.patrol-mode .mode-switch-btn.active{background:#347a59!important;color:#fff!important;box-shadow:0 8px 18px rgba(42,111,78,.18)!important;}
.mode-switch-btn.active::after{bottom:6px!important;}
.patrol-person-progress-note{display:block;margin-top:8px;color:#6c7f76;font-size:12px;line-height:1.5}
.patrol-map-priority-main small{line-height:1.55!important;word-break:break-word!important;display:block!important}
.patrol-building-popup-head small{display:block!important;max-width:480px!important;line-height:1.55!important}
@media(max-width:980px){.app-header,body.address-mode .app-header,body.patrol-mode .app-header{grid-template-columns:1fr!important}.mode-switch,body.address-mode .mode-switch,body.patrol-mode .mode-switch{width:100%!important;justify-self:stretch!important}}


.patrol-source-card,.patrol-action-card{position:relative}
.patrol-source-badge,.patrol-action-badge{position:absolute;left:12px;top:12px;width:24px;height:24px;border-radius:12px;background:#edf3ef;color:#2d5d48;display:grid;place-items:center;font-size:12px;font-weight:800} 
.patrol-source-card strong,.patrol-action-card span:first-of-type{display:block;padding-left:34px} 
.patrol-source-card b,.patrol-action-card strong,.patrol-source-card small,.patrol-action-card small{margin-left:34px} 


.patrol-kpis article span{line-height:1.35!important;min-height:2.7em;display:block}
.patrol-kpis article small{line-height:1.45!important;min-height:2.8em}
@media(max-width:760px){.patrol-kpis article span,.patrol-kpis article small{min-height:0}}


.patrol-file-import{display:inline-flex;align-items:center;justify-content:center;cursor:pointer}
.patrol-package-check{margin-top:10px;padding:10px 13px;border-radius:12px;border:1px solid #dfe8e3;background:#f7faf8;color:#65776e;font-size:12px;line-height:1.55;font-weight:650}
.patrol-package-check.good{background:#eff8f3;border-color:#cfe5d7;color:#2f6f52}
.patrol-package-check.bad{background:#fff3ef;border-color:#efd2c9;color:#a34f42}
@media(max-width:600px){.patrol-actions{grid-template-columns:1fr!important}.patrol-file-import{width:100%}}



.patrol-domain-overview{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(360px,.85fr);gap:18px;margin:4px 0 22px}
.patrol-domain-card{border:1px solid #dce8e1;border-radius:26px;background:#fbfdfc;padding:22px;box-shadow:0 10px 28px rgba(37,70,54,.045);min-width:0}
.patrol-domain-card.project-domain{background:linear-gradient(180deg,#fbfdfc 0%,#f5faf7 100%);border-color:#d4e6dc}
.patrol-domain-card.store-domain{background:linear-gradient(180deg,#fffdf9 0%,#fafcf9 100%);border-color:#e6e6dc}
.patrol-domain-head{display:grid;grid-template-columns:46px minmax(0,1fr) auto;gap:14px;align-items:center;padding-bottom:17px;border-bottom:1px solid #e3ece7}
.patrol-domain-code{width:46px;height:46px;border-radius:16px;display:grid;place-items:center;background:#e6f2eb;color:#2f7657;font-size:18px;font-weight:900}
.store-domain .patrol-domain-code{background:#f4efe2;color:#8a6b2e}
.patrol-domain-head small{display:block;font-size:11px;font-weight:760;color:#75867d;letter-spacing:.04em}
.patrol-domain-head h3{margin:2px 0 4px;font-size:24px;color:#1d4936;letter-spacing:-.02em}
.patrol-domain-head p{margin:0;color:#697b72;font-size:12.5px;line-height:1.55}
.patrol-domain-total{font-size:46px;line-height:1;color:#20543d;font-weight:900;text-align:right;white-space:nowrap}
.patrol-domain-total em{font-size:14px;font-style:normal;color:#6f8078;font-weight:700;margin-left:3px}
.patrol-domain-section-label{margin:17px 0 9px;font-size:12px;font-weight:850;color:#4f685c;letter-spacing:.05em}
.patrol-domain-section-label.daily-label{margin-top:14px}
.patrol-domain-metrics{display:grid;gap:10px}.patrol-domain-metrics.four{grid-template-columns:repeat(4,minmax(0,1fr))}
.patrol-domain-metrics article,.patrol-domain-daily article,.patrol-store-quick-grid article{border:1px solid #e0e9e4;border-radius:17px;background:#fff;padding:13px 14px;min-width:0}
.patrol-domain-metrics span,.patrol-domain-daily span,.patrol-store-quick-grid span{display:block;font-size:11px;font-weight:760;color:#64786d;margin-bottom:5px}
.patrol-domain-metrics strong,.patrol-domain-daily strong{display:block;font-size:28px;line-height:1.1;color:#214d38;font-weight:900}
.patrol-domain-metrics small,.patrol-domain-daily small,.patrol-store-quick-grid small{display:block;color:#74857c;font-size:10.5px;line-height:1.5;margin-top:4px}
.patrol-domain-metrics .reg-zero strong{color:#bd5c4a}.patrol-domain-metrics .reg-one strong{color:#ad7b2f}.patrol-domain-metrics .reg-good strong{color:#347b59}.patrol-domain-metrics .rect strong{color:#715d8e}
.patrol-domain-daily{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.patrol-store-state{margin:17px 0 12px;padding:14px 15px;border-radius:15px;background:#f3f6f3;border:1px solid #e2e8e4;color:#466054;font-size:13px;font-weight:720;line-height:1.65}
.patrol-store-quick-grid{display:grid;grid-template-columns:1fr;gap:10px}
.patrol-store-quick-grid strong{display:block;color:#244f3b;font-size:17px;line-height:1.5;font-weight:850;word-break:break-word}
.patrol-domain-explain{margin-top:12px;padding:12px 14px;border-radius:14px;background:#f5f8f6;color:#5f7469;font-size:11.5px;line-height:1.65}
.patrol-domain-explain b{color:#315a47}
@media(max-width:1100px){.patrol-domain-overview{grid-template-columns:1fr}.patrol-domain-metrics.four{grid-template-columns:repeat(4,minmax(120px,1fr))}}
@media(max-width:720px){.patrol-domain-card{padding:16px;border-radius:20px}.patrol-domain-head{grid-template-columns:40px minmax(0,1fr);align-items:start}.patrol-domain-total{grid-column:2;text-align:left;font-size:38px}.patrol-domain-metrics.four{grid-template-columns:1fr 1fr}.patrol-domain-daily{grid-template-columns:1fr}}

/* ======================================================================
   HF26 | Visual discipline / executive readability system
   Principle: one grid, one type ramp, one semantic palette, no decorative color.
   ====================================================================== */
#patrolPage{
  --p-bg:#f3f6f4;
  --p-surface:#ffffff;
  --p-surface-soft:#f7f9f8;
  --p-ink:#163a2c;
  --p-text:#344b40;
  --p-muted:#65776e;
  --p-line:#dce5e0;
  --p-primary:#2f7053;
  --p-primary-dark:#245c44;
  --p-primary-soft:#edf5f0;
  --p-danger:#ad5548;
  --p-danger-soft:#fff4f1;
  --p-warn:#a36f2b;
  --p-warn-soft:#fff8ea;
  --p-rect:#655e70;
  --p-neutral:#7f8b85;
  --p-r-sm:10px;
  --p-r-md:14px;
  --p-r-lg:18px;
  --p-shadow:0 3px 12px rgba(28,61,46,.055);
  color:var(--p-text)!important;
  font-size:15.5px!important;
  line-height:1.6!important;
  font-variant-numeric:tabular-nums;
}
#patrolPage .workspace{
  background:var(--p-surface)!important;
  border:1px solid var(--p-line)!important;
  border-radius:var(--p-r-lg)!important;
  box-shadow:var(--p-shadow)!important;
  padding:30px!important;
}
#patrolPage .workspace:hover{box-shadow:var(--p-shadow)!important}
#patrolPage .patrol-panel{
  background:var(--p-surface)!important;
  border:1px solid var(--p-line)!important;
  border-radius:var(--p-r-md)!important;
  box-shadow:none!important;
  padding:20px!important;
}
#patrolPage .patrol-section-head,#patrolPage .patrol-module-head{
  display:grid!important;
  grid-template-columns:34px minmax(0,1fr) auto!important;
  gap:10px 14px!important;
  align-items:start!important;
  margin-bottom:20px!important;
}
#patrolPage .section-number{
  width:34px!important;height:34px!important;border-radius:10px!important;
  background:var(--p-primary)!important;color:#fff!important;
  font-size:14px!important;font-weight:900!important;box-shadow:none!important;
}
#patrolPage .patrol-section-head h2{
  margin:1px 0 4px!important;color:var(--p-ink)!important;
  font-size:25px!important;line-height:1.25!important;font-weight:900!important;
  letter-spacing:-.35px!important;
}
#patrolPage .patrol-section-head p{
  margin:0!important;color:var(--p-muted)!important;
  font-size:14px!important;line-height:1.55!important;max-width:920px!important;
}
#patrolPage .patrol-panel-head{gap:14px!important;margin-bottom:14px!important}
#patrolPage .patrol-panel-head h3{
  margin:0 0 4px!important;color:var(--p-ink)!important;
  font-size:18px!important;line-height:1.35!important;font-weight:900!important;
  letter-spacing:-.18px!important;
}
#patrolPage .patrol-panel-head small,#patrolPage small{
  color:var(--p-muted)!important;font-size:13.5px!important;line-height:1.55!important;
}
#patrolPage p,#patrolPage td{color:var(--p-text)!important}
#patrolPage .patrol-schema-badge,#patrolPage .patrol-private-badge{
  border-radius:9px!important;background:var(--p-surface-soft)!important;
  border:1px solid var(--p-line)!important;color:#4d675a!important;
  font-size:12px!important;font-weight:800!important;padding:6px 9px!important;
  box-shadow:none!important;
}
#patrolPage .btn{
  min-height:38px!important;border-radius:10px!important;
  border:1px solid #cfdad4!important;background:#fff!important;color:#355247!important;
  box-shadow:none!important;font-size:13px!important;font-weight:800!important;
}
#patrolPage .btn:hover:not(:disabled){transform:none!important;background:#f7faf8!important;border-color:#b7c9bf!important;box-shadow:none!important}
#patrolPage .btn.primary{
  background:var(--p-primary)!important;border-color:var(--p-primary)!important;color:#fff!important;
  box-shadow:none!important;
}
#patrolPage .btn.primary:hover:not(:disabled){background:var(--p-primary-dark)!important;border-color:var(--p-primary-dark)!important}
#patrolPage .btn.large{min-height:44px!important;font-size:14px!important}
#patrolPage .patrol-module-actions{gap:7px!important;max-width:560px!important}

/* Navigation: three big modules and patrol sub-navigation share the same discipline. */
body.patrol-mode .mode-switch{background:#eef3f0!important;border-color:#d6e1db!important;box-shadow:none!important}
body.patrol-mode .mode-switch-btn{color:#526b60!important;background:transparent!important}
body.patrol-mode .mode-switch-btn.active{background:var(--p-primary)!important;color:#fff!important;box-shadow:none!important}
body.patrol-mode .mode-switch-btn.active::after{display:none!important}
#patrolPage .patrol-section-nav{
  background:#f6f9f7!important;border:1px solid var(--p-line)!important;
  border-radius:12px!important;padding:5px!important;box-shadow:none!important;
}
#patrolPage .patrol-section-nav button{border-radius:8px!important;font-size:12.5px!important;padding:9px 13px!important;color:#5a7166!important}
#patrolPage .patrol-section-nav button.active{background:var(--p-primary)!important;color:#fff!important;box-shadow:none!important}

/* Data ready and import area: operational, not decorative. */
#patrolPage .patrol-data-ready-bar{
  border-radius:14px!important;background:#f5f8f6!important;border:1px solid var(--p-line)!important;
  box-shadow:none!important;padding:15px 18px!important;
}
#patrolPage .patrol-data-ready-bar span{font-size:11px!important;color:#718078!important}
#patrolPage .patrol-data-ready-bar strong{font-size:17px!important;color:var(--p-ink)!important}
#patrolPage .patrol-data-ready-bar small{font-size:13px!important}
#patrolPage .patrol-input-card,#patrolPage .patrol-contract-card{
  border-radius:14px!important;border-color:var(--p-line)!important;box-shadow:none!important;background:#fff!important;
}
#patrolPage .patrol-one-paste-head strong{font-size:16px!important;color:var(--p-ink)!important}
#patrolPage .patrol-one-paste-head small{font-size:13px!important}
#patrolPage .patrol-package-check,#patrolPage .patrol-import-status{border-radius:10px!important;font-size:12.5px!important}

/* Dual-domain overview: strong separation, identical component language. */
#patrolPage .patrol-domain-overview{
  grid-template-columns:minmax(0,1.18fr) minmax(340px,.82fr)!important;
  gap:16px!important;margin:2px 0 18px!important;
}
#patrolPage .patrol-domain-card{
  position:relative!important;border-radius:16px!important;background:#fff!important;
  border:1px solid var(--p-line)!important;box-shadow:none!important;padding:20px!important;
  overflow:hidden!important;
}
#patrolPage .patrol-domain-card::before{content:"";position:absolute;left:0;top:0;bottom:0;width:4px;background:var(--p-primary)}
#patrolPage .patrol-domain-card.store-domain::before{background:#78877f}
#patrolPage .patrol-domain-card.project-domain,#patrolPage .patrol-domain-card.store-domain{background:#fff!important;border-color:var(--p-line)!important}
#patrolPage .patrol-domain-head{grid-template-columns:40px minmax(0,1fr) auto!important;gap:12px!important;padding-bottom:14px!important;border-color:#e4ebe7!important}
#patrolPage .patrol-domain-code{
  width:40px!important;height:40px!important;border-radius:10px!important;
  background:var(--p-primary-soft)!important;color:var(--p-primary-dark)!important;font-size:15px!important;
}
#patrolPage .store-domain .patrol-domain-code{background:#f0f2f1!important;color:#596c62!important}
#patrolPage .patrol-domain-head small{font-size:11.5px!important;letter-spacing:.02em!important;color:#718078!important}
#patrolPage .patrol-domain-head h3{font-size:21px!important;line-height:1.3!important;margin:1px 0 3px!important;color:var(--p-ink)!important}
#patrolPage .patrol-domain-head p{font-size:13px!important;line-height:1.5!important;color:var(--p-muted)!important}
#patrolPage .patrol-domain-total{font-size:40px!important;color:var(--p-primary-dark)!important}
#patrolPage .patrol-domain-total em{font-size:13px!important;color:#687a71!important}
#patrolPage .patrol-domain-section-label{font-size:12px!important;color:#536b5f!important;letter-spacing:.03em!important;margin:14px 0 8px!important}
#patrolPage .patrol-domain-metrics{gap:8px!important}
#patrolPage .patrol-domain-metrics article,#patrolPage .patrol-domain-daily article,#patrolPage .patrol-store-quick-grid article{
  border-radius:11px!important;background:#fafcfb!important;border:1px solid #e2e9e5!important;
  padding:12px!important;box-shadow:none!important;
}
#patrolPage .patrol-domain-metrics article{border-top:3px solid #dce5e0!important}
#patrolPage .patrol-domain-metrics article.rect{border-top-color:var(--p-rect)!important}
#patrolPage .patrol-domain-metrics article.reg-zero{border-top-color:var(--p-danger)!important}
#patrolPage .patrol-domain-metrics article.reg-one{border-top-color:var(--p-warn)!important}
#patrolPage .patrol-domain-metrics article.reg-good{border-top-color:var(--p-primary)!important}
#patrolPage .patrol-domain-metrics span,#patrolPage .patrol-domain-daily span,#patrolPage .patrol-store-quick-grid span{font-size:12px!important;color:#5e7267!important;margin-bottom:4px!important}
#patrolPage .patrol-domain-metrics strong,#patrolPage .patrol-domain-daily strong{font-size:27px!important;color:var(--p-ink)!important}
#patrolPage .patrol-domain-metrics small,#patrolPage .patrol-domain-daily small,#patrolPage .patrol-store-quick-grid small{font-size:12.5px!important;line-height:1.45!important}
#patrolPage .patrol-domain-metrics .reg-zero strong{color:var(--p-danger)!important}
#patrolPage .patrol-domain-metrics .reg-one strong{color:var(--p-warn)!important}
#patrolPage .patrol-domain-metrics .reg-good strong{color:var(--p-primary)!important}
#patrolPage .patrol-domain-metrics .rect strong{color:var(--p-rect)!important}
#patrolPage .patrol-store-state,#patrolPage .patrol-domain-explain{
  background:#f7f9f8!important;border:1px solid var(--p-line)!important;border-radius:10px!important;
  color:#4e655a!important;font-size:13px!important;line-height:1.55!important;
}
#patrolPage .patrol-domain-explain{margin-top:10px!important;padding:10px 12px!important}

/* Executive summary is a command strip, not a paragraph. */
#patrolPage .patrol-leadership-summary{
  display:grid!important;grid-template-columns:repeat(5,minmax(0,1fr))!important;
  gap:1px!important;margin:16px 0 12px!important;padding:0!important;
  border:1px solid var(--p-line)!important;border-radius:12px!important;overflow:hidden!important;
  background:var(--p-line)!important;color:var(--p-text)!important;
}
#patrolPage .patrol-command-summary-item{background:#fff;padding:13px 14px;min-width:0}
#patrolPage .patrol-command-summary-item span{display:block;font-size:11px;font-weight:800;color:#738079;letter-spacing:.02em;margin-bottom:4px}
#patrolPage .patrol-command-summary-item strong{display:block;color:var(--p-ink);font-size:19px;font-weight:900;line-height:1.25;white-space:normal}
#patrolPage .patrol-command-summary-item small{display:block;margin-top:3px;font-size:12px!important;line-height:1.4!important}
#patrolPage .patrol-command-summary-item.danger strong{color:var(--p-danger)!important}
#patrolPage .patrol-command-summary-item.warn strong{color:var(--p-warn)!important}
#patrolPage .patrol-command-summary-item.muted strong{color:#64756d!important;font-size:15px!important;line-height:1.35!important}

/* Action cards: one shape, status only on the left edge. */
#patrolPage .patrol-action-highlights{gap:8px!important;margin:10px 0 0!important}
#patrolPage .patrol-action-card{
  min-height:108px!important;border-radius:12px!important;background:#fff!important;
  border:1px solid var(--p-line)!important;border-left:4px solid var(--p-neutral)!important;
  padding:13px 13px 12px 46px!important;box-shadow:none!important;
}
#patrolPage .patrol-action-card.tone-zero{border-left-color:var(--p-danger)!important}
#patrolPage .patrol-action-card.tone-one,#patrolPage .patrol-action-card.tone-warn{border-left-color:var(--p-warn)!important}
#patrolPage .patrol-action-card.tone-rect{border-left-color:var(--p-rect)!important}
#patrolPage .patrol-action-card.tone-good{border-left-color:var(--p-primary)!important}
#patrolPage .patrol-action-badge{
  left:12px!important;top:13px!important;width:25px!important;height:25px!important;border-radius:7px!important;
  background:#f0f4f2!important;color:#405c50!important;font-size:12px!important;box-shadow:none!important;
}
#patrolPage .patrol-action-card span:first-of-type{font-size:12px!important;color:#62756b!important;padding-left:0!important}
#patrolPage .patrol-action-card strong{margin-left:0!important;font-size:27px!important;line-height:1.15!important;color:var(--p-ink)!important;margin-top:5px!important}
#patrolPage .patrol-action-card small{margin-left:0!important;font-size:12.5px!important;line-height:1.45!important;margin-top:4px!important}

/* Progress: all bars use one base color; risk communicated by label and edge state. */
#patrolPage .patrol-progress-overview{gap:10px!important}
#patrolPage .patrol-progress-card,#patrolPage .patrol-person-progress-card{
  border-radius:13px!important;background:#fff!important;border:1px solid var(--p-line)!important;
  padding:15px!important;box-shadow:none!important;
}
#patrolPage .patrol-progress-card header span{font-size:13px!important;font-weight:800!important;color:#425c50!important}
#patrolPage .patrol-progress-card header strong{font-size:22px!important;color:var(--p-ink)!important}
#patrolPage .patrol-progress-track{height:9px!important;background:#e8efeb!important}
#patrolPage .patrol-progress-track i{background:var(--p-primary)!important}
#patrolPage .patrol-progress-card.low .patrol-progress-track i{background:var(--p-danger)!important}
#patrolPage .patrol-progress-card.mid .patrol-progress-track i{background:var(--p-warn)!important}
#patrolPage .patrol-progress-card.na .patrol-progress-track i{background:#aeb9b3!important}
#patrolPage .patrol-progress-card footer{font-size:12.5px!important;line-height:1.4!important}
#patrolPage .patrol-person-progress-head b{font-size:15px!important;color:var(--p-ink)!important}
#patrolPage .patrol-person-progress-head em{border-radius:7px!important;background:#f1f5f3!important;color:#536c60!important;font-size:11px!important}
#patrolPage .patrol-mini-progress{grid-template-columns:108px minmax(90px,1fr) 58px!important;font-size:12px!important;gap:10px!important}
#patrolPage .patrol-mini-progress>b{font-size:12px!important}
#patrolPage .patrol-mini-progress>div{height:8px!important}
#patrolPage .patrol-mini-progress i{background:var(--p-primary)!important}
#patrolPage .patrol-mini-progress.mid i{background:var(--p-warn)!important}
#patrolPage .patrol-mini-progress.low i{background:var(--p-danger)!important}

/* Ranking: strict rows, no full-row color fills. */
#patrolPage .patrol-ranking-hero-panel{padding:20px!important;background:#fff!important;border-color:var(--p-line)!important}
#patrolPage .patrol-ranking-executive{gap:8px!important}
#patrolPage .patrol-ranking-executive-card{
  border-radius:11px!important;background:#fafcfb!important;border:1px solid #e2e9e5!important;
  min-height:94px!important;padding:13px!important;box-shadow:none!important;
}
#patrolPage .patrol-ranking-executive-card span{font-size:12px!important;color:#64766d!important}
#patrolPage .patrol-ranking-executive-card b{font-size:27px!important;color:var(--p-ink)!important}
#patrolPage .patrol-ranking-executive-card.warn b{color:var(--p-warn)!important}
#patrolPage .patrol-ranking-executive-card.danger b{color:var(--p-danger)!important}
#patrolPage .patrol-ranking-board{gap:8px!important;margin-top:14px!important}
#patrolPage .patrol-ranking-row,#patrolPage .patrol-ranking-row:nth-child(-n+3),#patrolPage .patrol-ranking-row:nth-last-child(-n+5),#patrolPage .patrol-ranking-row.critical{
  grid-template-columns:46px 180px minmax(300px,1fr) minmax(270px,.85fr) 112px!important;
  gap:12px!important;align-items:center!important;padding:12px 14px!important;
  border-radius:12px!important;background:#fff!important;border:1px solid var(--p-line)!important;
  box-shadow:none!important;border-left:4px solid #cad7d0!important;
}
#patrolPage .patrol-ranking-row.good{border-left-color:var(--p-primary)!important}
#patrolPage .patrol-ranking-row.near,#patrolPage .patrol-ranking-row.mid,#patrolPage .patrol-ranking-row.slow{border-left-color:var(--p-warn)!important}
#patrolPage .patrol-ranking-row.critical{border-left-color:var(--p-danger)!important}
#patrolPage .patrol-ranking-place,#patrolPage .patrol-ranking-row:nth-child(1) .patrol-ranking-place,#patrolPage .patrol-ranking-row:nth-child(2) .patrol-ranking-place,#patrolPage .patrol-ranking-row:nth-child(3) .patrol-ranking-place,#patrolPage .patrol-ranking-row.critical .patrol-ranking-place{
  width:38px!important;height:38px!important;border-radius:9px!important;background:#f0f4f2!important;color:#315b49!important;
  font-size:17px!important;box-shadow:none!important;
}
#patrolPage .patrol-ranking-row.critical .patrol-ranking-place{background:#fff2ee!important;color:var(--p-danger)!important}
#patrolPage .patrol-ranking-person b{font-size:16px!important;color:var(--p-ink)!important;margin:0!important}
#patrolPage .patrol-ranking-person span{font-size:12px!important;color:#5c7468!important;background:transparent!important;padding:0!important;margin:3px 0 0!important;border-radius:0!important}
#patrolPage .patrol-ranking-person small{font-size:12px!important}
#patrolPage .patrol-ranking-metrics{gap:7px!important}
#patrolPage .patrol-ranking-metric{
  border-radius:8px!important;background:#f8faf9!important;border:1px solid #e5ebe8!important;padding:8px 9px!important;
}
#patrolPage .patrol-ranking-metric span{font-size:11px!important;color:#697970!important}
#patrolPage .patrol-ranking-metric b{font-size:17px!important;color:var(--p-ink)!important}
#patrolPage .patrol-ranking-metric.good b{color:var(--p-primary)!important}
#patrolPage .patrol-ranking-metric.warn b{color:var(--p-warn)!important}
#patrolPage .patrol-ranking-metric.danger b{color:var(--p-danger)!important}
#patrolPage .patrol-ranking-main{grid-template-columns:minmax(0,1fr) 82px!important;gap:10px!important}
#patrolPage .patrol-ranking-bar{height:10px!important;background:#e7eeea!important;box-shadow:none!important}
#patrolPage .patrol-ranking-bar i,#patrolPage .patrol-ranking-row.mid .patrol-ranking-bar i,#patrolPage .patrol-ranking-row.slow .patrol-ranking-bar i,#patrolPage .patrol-ranking-row.critical .patrol-ranking-bar i{background:var(--p-primary)!important;box-shadow:none!important}
#patrolPage .patrol-ranking-row.critical .patrol-ranking-bar i{background:var(--p-danger)!important}
#patrolPage .patrol-ranking-rate strong{font-size:19px!important;color:var(--p-ink)!important}
#patrolPage .patrol-ranking-rate span{font-size:11px!important;margin-top:2px!important}
#patrolPage .patrol-ranking-trend{border-left:0!important;padding-left:0!important;text-align:right!important}
#patrolPage .patrol-ranking-trend span{font-size:10.5px!important}
#patrolPage .patrol-ranking-trend b{font-size:12px!important;color:#61736a!important}
#patrolPage .patrol-ranking-trend-summary{border-radius:10px!important;background:#f7f9f8!important;border:1px solid var(--p-line)!important;font-size:12.5px!important;padding:10px 12px!important}

/* Watch list: clear action rows, muted backgrounds, fewer colors. */
#patrolPage .patrol-watch-list{gap:8px!important}
#patrolPage .patrol-watch-item{
  min-height:96px!important;border-radius:12px!important;background:#fff!important;
  border:1px solid var(--p-line)!important;padding:13px!important;box-shadow:none!important;
}
#patrolPage .patrol-watch-item b{font-size:15px!important;color:var(--p-ink)!important}
#patrolPage .patrol-watch-item small{font-size:12.5px!important;line-height:1.45!important}
#patrolPage .patrol-internal-id{border-radius:8px!important;background:#f2f5f3!important;color:#53695e!important;font-size:12px!important;min-width:78px!important;padding:6px 8px!important}

/* Map workspace: map dominates; analysis rail follows one rhythm. */
#patrolPage .patrol-project-intelligence-map{padding:20px!important}
#patrolPage .patrol-map-intelligence-layout{grid-template-columns:minmax(0,1.8fr) minmax(350px,.78fr)!important;gap:16px!important}
#patrolPage .patrol-map-canvas-shell{border-radius:14px!important;background:#f2f5f3!important;border:1px solid var(--p-line)!important}
#patrolPage .patrol-map-intelligence-panel{
  padding:16px!important;border-radius:14px!important;background:#f8faf9!important;border:1px solid var(--p-line)!important;
  box-shadow:none!important;gap:13px!important;
}
#patrolPage .patrol-map-intelligence-title span{font-size:17px!important;color:var(--p-ink)!important;font-weight:900!important}
#patrolPage .patrol-map-intelligence-title small{font-size:12px!important}
#patrolPage .patrol-map-metric-strip{gap:7px!important}
#patrolPage .patrol-map-metric-strip article{border-radius:9px!important;background:#fff!important;border:1px solid #e2e9e5!important;padding:10px!important}
#patrolPage .patrol-map-metric-strip span{font-size:11px!important}
#patrolPage .patrol-map-metric-strip strong{font-size:22px!important;color:var(--p-ink)!important}
#patrolPage .patrol-map-insight-section{padding-top:11px!important;border-color:#e1e8e4!important}
#patrolPage .patrol-map-insight-section h4{font-size:13px!important;color:#425d50!important;margin:0 0 7px!important}
#patrolPage .patrol-map-rich-legend{gap:3px!important}
#patrolPage .patrol-map-rich-legend>div{background:transparent!important;border-bottom:1px solid #e4eae7!important;border-radius:0!important;padding:6px 1px!important}
#patrolPage .patrol-map-rich-legend>div:last-child{border-bottom:0!important}
#patrolPage .patrol-map-rich-legend span b{font-size:12.5px!important;color:#334f42!important}
#patrolPage .patrol-map-rich-legend span small{font-size:11.5px!important;color:#6d7e75!important;line-height:1.35!important}
#patrolPage .patrol-map-rich-legend>div>strong{font-size:12.5px!important;color:#345647!important}
#patrolPage .patrol-map-priority-list{gap:5px!important}
#patrolPage .patrol-map-priority-row{border-radius:9px!important;background:#fff!important;border:1px solid #e2e9e5!important;padding:8px!important}
#patrolPage .patrol-map-priority-no{border-radius:7px!important}
#patrolPage .patrol-map-priority-main b{font-size:13px!important;color:var(--p-ink)!important}
#patrolPage .patrol-map-priority-main small{font-size:11.5px!important;color:#6c7d74!important;line-height:1.4!important}
#patrolPage .patrol-map-narrative,#patrolPage .patrol-map-conclusion,#patrolPage .patrol-map-reading-hint{
  font-size:12.5px!important;line-height:1.55!important;color:#52695d!important;
  background:#f7f9f8!important;border:1px solid var(--p-line)!important;border-radius:10px!important;
}
#patrolPage .patrol-map-explore-bar{border-radius:12px!important;background:#f7f9f8!important;border-color:var(--p-line)!important;padding:10px!important}
#patrolPage .patrol-map-filter-group button{border-radius:8px!important;background:#fff!important;color:#526b60!important;border:1px solid #dce5e0!important;font-size:12px!important}
#patrolPage .patrol-map-filter-group button.active{background:var(--p-primary)!important;color:#fff!important;border-color:var(--p-primary)!important}
#patrolPage .patrol-map-search-box input{font-size:13px!important}

/* Output zone uses the same product grammar. */
#patrolPage .patrol-copy-grid{gap:9px!important}
#patrolPage .patrol-copy-card{
  min-height:170px!important;border-radius:13px!important;background:#fff!important;border:1px solid var(--p-line)!important;
  padding:17px!important;box-shadow:none!important;
}
#patrolPage .patrol-copy-card>span{border-radius:7px!important;background:#f1f5f3!important;color:#5b7166!important;font-size:11px!important}
#patrolPage .patrol-copy-card h3{font-size:18px!important;color:var(--p-ink)!important;margin:9px 0 5px!important}
#patrolPage .patrol-copy-card p{font-size:13px!important;line-height:1.55!important}
#patrolPage .patrol-writing-note{border-left:3px solid var(--p-primary)!important;background:#f7f9f8!important;border-radius:8px!important;font-size:12.5px!important;line-height:1.55!important}

/* Tables: productive density; no visual noise. */
#patrolPage .table-wrap{border-radius:11px!important;border-color:var(--p-line)!important}
#patrolPage .patrol-table th{background:#f3f6f4!important;color:#526a5f!important;font-size:12px!important;font-weight:850!important}
#patrolPage .patrol-table td{font-size:13px!important;padding:10px 9px!important;border-bottom-color:#e6ece8!important}
#patrolPage .patrol-table tbody tr:hover{background:#f8faf9!important}

/* Reduce animation and decorative effects in this decision-support surface. */
#patrolPage *{transition-duration:.12s!important}
#patrolPage .patrol-domain-card,#patrolPage .patrol-panel,#patrolPage .patrol-action-card,#patrolPage .patrol-ranking-row,#patrolPage .patrol-progress-card{transform:none!important}

@media(max-width:1180px){
  #patrolPage .patrol-domain-overview{grid-template-columns:1fr!important}
  #patrolPage .patrol-leadership-summary{grid-template-columns:repeat(3,minmax(0,1fr))!important}
  #patrolPage .patrol-ranking-row{grid-template-columns:44px 160px minmax(260px,1fr) minmax(230px,.8fr)!important}
  #patrolPage .patrol-ranking-trend{grid-column:2/-1!important;display:flex!important;gap:8px!important;justify-content:flex-end!important}
  #patrolPage .patrol-map-intelligence-layout{grid-template-columns:1fr!important}
}
@media(max-width:820px){
  #patrolPage .workspace{padding:22px 18px!important;border-radius:15px!important}
  #patrolPage .patrol-section-head,#patrolPage .patrol-module-head{grid-template-columns:32px minmax(0,1fr)!important}
  #patrolPage .section-number{width:32px!important;height:32px!important}
  #patrolPage .patrol-section-head h2{font-size:22px!important}
  #patrolPage .patrol-module-actions,#patrolPage .patrol-section-head>.patrol-schema-badge{grid-column:2!important;justify-content:flex-start!important;max-width:none!important}
  #patrolPage .patrol-leadership-summary{grid-template-columns:repeat(2,minmax(0,1fr))!important}
  #patrolPage .patrol-ranking-row{grid-template-columns:40px minmax(0,1fr)!important;align-items:start!important}
  #patrolPage .patrol-ranking-metrics,#patrolPage .patrol-ranking-main,#patrolPage .patrol-ranking-trend{grid-column:2!important}
  #patrolPage .patrol-ranking-metrics{grid-template-columns:repeat(4,minmax(58px,1fr))!important}
}
@media(max-width:560px){
  #patrolPage{font-size:15px!important}
  #patrolPage .workspace{padding:18px 13px!important;border-radius:14px!important}
  #patrolPage .patrol-section-head{gap:9px!important;margin-bottom:15px!important}
  #patrolPage .patrol-section-head h2{font-size:20px!important;letter-spacing:-.2px!important}
  #patrolPage .patrol-section-head p{font-size:13px!important}
  #patrolPage .patrol-leadership-summary{grid-template-columns:1fr!important}
  #patrolPage .patrol-action-highlights{grid-template-columns:1fr!important}
  #patrolPage .patrol-domain-metrics.four{grid-template-columns:1fr 1fr!important}
  #patrolPage .patrol-domain-head{grid-template-columns:36px minmax(0,1fr)!important}
  #patrolPage .patrol-domain-total{grid-column:2!important;text-align:left!important;font-size:34px!important}
  #patrolPage .patrol-ranking-metrics{grid-template-columns:1fr 1fr!important}
  #patrolPage .patrol-mini-progress{grid-template-columns:100px minmax(70px,1fr) 54px!important}
  #patrolPage .patrol-map-intelligence-panel{padding:13px!important}
  #patrolPage .patrol-map-filter-group{grid-template-columns:1fr 1fr!important}
}


/* HF26 final discipline gate: no micro-type and no mobile width drift. */
#patrolPage .workspace{width:100%!important;max-width:100%!important;box-sizing:border-box!important}
#patrolPage .patrol-command-summary-item span,
#patrolPage .patrol-ranking-metric span,
#patrolPage .patrol-ranking-trend span,
#patrolPage .patrol-data-ready-bar span,
#patrolPage .patrol-map-metric-strip span,
#patrolPage .patrol-copy-card>span{font-size:12.5px!important}
#patrolPage .patrol-command-summary-item small,
#patrolPage .patrol-ranking-rate span,
#patrolPage .patrol-map-rich-legend span small,
#patrolPage .patrol-map-priority-main small{font-size:12.5px!important}
@media(max-width:560px){#patrolPage{max-width:100%!important}#patrolPage .workspace{margin-left:0!important;margin-right:0!important}}

#patrolPage{font-family:"Noto Sans CJK SC","Microsoft YaHei UI","Microsoft YaHei","PingFang SC","Segoe UI",sans-serif!important}
#patrolPage .patrol-map-filter-group b,
#patrolPage .patrol-map-priority-state,
#patrolPage .patrol-map-list-more,
#patrolPage #patrolProjectMapSearchClear{font-size:12.5px!important}
#patrolPage .patrol-domain-head small{font-size:12.5px!important}

/* HF26 mobile shell gate: public view must never squeeze the brand into a vertical column. */
@media(max-width:600px){
  body.patrol-public-view .app-header,
  body.patrol-mode.patrol-public-view .app-header{
    grid-template-columns:minmax(0,1fr)!important;
    grid-template-rows:auto auto!important;
    align-items:center!important;
    gap:9px!important;
    padding:10px 12px 11px!important;
    min-height:auto!important;
  }
  body.patrol-public-view .brand-group{grid-column:1!important;grid-row:1!important;width:100%!important;min-width:0!important;gap:10px!important}
  body.patrol-public-view .brand-logo,body.patrol-public-view .brand-mark{width:42px!important;height:42px!important;min-width:42px!important;border-radius:12px!important}
  body.patrol-public-view .brand-copy{min-width:0!important;max-width:calc(100vw - 76px)!important}
  body.patrol-public-view .brand-kicker{font-size:10.5px!important;line-height:1.2!important;white-space:nowrap!important}
  body.patrol-public-view .brand-copy h1{font-size:18px!important;line-height:1.25!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important}
  body.patrol-public-view .brand-copy p{display:none!important}
  body.patrol-public-view .product-edition{font-size:9px!important;padding:2px 6px!important;vertical-align:2px!important}
  body.patrol-public-view .mode-switch,
  body.patrol-mode.patrol-public-view .mode-switch{
    grid-column:1!important;grid-row:2!important;width:100%!important;max-width:none!important;justify-self:stretch!important;margin:0!important;padding:5px!important;gap:4px!important;border-radius:14px!important
  }
  body.patrol-public-view .mode-switch-btn{min-height:40px!important;padding:8px 3px!important;font-size:12px!important;border-radius:10px!important}
}

/* HF26 mobile module order: number + title first, actions second, status third. */
@media(max-width:820px){
  #patrolPage .patrol-module-head>.grow,#patrolPage .patrol-section-head>.grow{grid-column:2!important;grid-row:1!important;min-width:0!important}
  #patrolPage .patrol-module-head>.patrol-module-actions,#patrolPage .patrol-section-head>.patrol-module-actions{grid-column:1/-1!important;grid-row:2!important;margin:2px 0 0 44px!important;max-width:calc(100% - 44px)!important}
  #patrolPage .patrol-module-head>.patrol-schema-badge,#patrolPage .patrol-section-head>.patrol-schema-badge{grid-column:2!important;grid-row:3!important;justify-self:start!important}
}
@media(max-width:560px){
  #patrolPage .patrol-module-head>.patrol-module-actions,#patrolPage .patrol-section-head>.patrol-module-actions{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:7px!important}
  #patrolPage .patrol-module-head>.patrol-module-actions>.btn,#patrolPage .patrol-section-head>.patrol-module-actions>.btn{width:100%!important;min-width:0!important}
  #patrolPage .patrol-module-head>.patrol-module-actions>.btn:last-child:nth-child(odd),#patrolPage .patrol-section-head>.patrol-module-actions>.btn:last-child:nth-child(odd){grid-column:1/-1!important}
}

/* HF26 final typography consolidation: eliminate sub-12.5px operational text. */
#patrolPage .patrol-map-search-box label,
#patrolPage .patrol-map-filter-status,
#patrolPage .patrol-schema-badge,
#patrolPage .patrol-domain-section-label,
#patrolPage .patrol-domain-metrics span,
#patrolPage .patrol-domain-daily span,
#patrolPage .patrol-table th{font-size:12.5px!important}

/* HF26 public microcopy floor: keep operational labels legible after browser/export scaling. */
#patrolPage .patrol-map-search-wrap label,
#patrolPage .patrol-section-nav button,
#patrolPage .patrol-domain-explain,
#patrolPage .patrol-action-card small,
#patrolPage .patrol-source-card small,
#patrolPage .patrol-ranking-executive-card span,
#patrolPage .patrol-ranking-executive-card small,
#patrolPage .patrol-ranking-person span,
#patrolPage .patrol-ranking-person small,
#patrolPage .patrol-ranking-trend b,
#patrolPage .patrol-map-metric-strip article small,
#patrolPage .patrol-map-insight-section-head small,
#patrolPage .patrol-map-rich-legend span small,
#patrolPage .patrol-map-priority-main small,
#patrolPage .patrol-map-filter-group button,
#patrolPage .patrol-progress-card footer,
#patrolPage .patrol-action-badge,
#patrolPage .patrol-mini-progress,
#patrolPage .patrol-mini-progress>b,
#patrolPage .patrol-store-quick-grid span{font-size:12.5px!important}

/* HF27 - top module navigation consistency
   Active patrol tab follows the same white-surface/dark-text language as the other two modules.
   Keep the green identity as a small underline rather than reversing the label to white. */
body.patrol-mode .mode-switch-btn.active,
body.patrol-mode.patrol-public-view .mode-switch-btn.active{
  background:#fff!important;
  color:#1f5b45!important;
  box-shadow:0 6px 16px rgba(36,76,58,.10),inset 0 0 0 1px rgba(31,91,69,.06)!important;
  text-shadow:none!important;
}
body.patrol-mode .mode-switch-btn.active::after,
body.patrol-mode.patrol-public-view .mode-switch-btn.active::after{
  content:""!important;
  display:block!important;
  width:22px!important;
  height:3px!important;
  border-radius:999px!important;
  background:#2f7a5d!important;
  position:absolute!important;
  left:50%!important;
  bottom:6px!important;
  transform:translateX(-50%)!important;
}


/* HF28 — external-presentation refinement
   No repeated "暂无上期" rows when there is no comparable history. */
#patrolPage .patrol-ranking-board.no-history .patrol-ranking-row{
  grid-template-columns:56px 190px minmax(360px,1fr) minmax(270px,.9fr)!important;
}
#patrolPage .patrol-ranking-board.no-history .patrol-ranking-trend{display:none!important}
#patrolPage .patrol-map-narrative{font-size:13px!important;line-height:1.68!important}
#patrolPage .patrol-map-intelligence-title p{max-width:860px!important}
/* Three product modes share one active-tab grammar. */
body.patrol-mode .mode-switch-btn.active,
body.patrol-mode.patrol-public-view .mode-switch-btn.active{
  background:#fff!important;color:#1f5b45!important;text-shadow:none!important;
  box-shadow:0 6px 16px rgba(36,76,58,.10),inset 0 0 0 1px rgba(31,91,69,.06)!important;
}
@media(max-width:1280px){
  #patrolPage .patrol-ranking-board.no-history .patrol-ranking-row{grid-template-columns:52px 170px minmax(320px,1fr) 220px!important}
}
@media(max-width:1100px){
  #patrolPage .patrol-ranking-board.no-history .patrol-ranking-row{grid-template-columns:48px minmax(0,1fr)!important}
  #patrolPage .patrol-ranking-board.no-history .patrol-ranking-metrics,#patrolPage .patrol-ranking-board.no-history .patrol-ranking-main{grid-column:1/-1!important}
}


/* ========================================================================
   HF29 — 双域权重重平衡：备案施工工程 / 门店巡查都是一级业务域
   ======================================================================== */
#patrolPage .patrol-domain-overview{grid-template-columns:repeat(2,minmax(0,1fr))!important;align-items:stretch!important}
#patrolPage .patrol-domain-card{height:100%!important}
#patrolPage .patrol-domain-card.store-domain::before{background:var(--p-primary)!important}
#patrolPage .store-domain .patrol-domain-code{background:var(--p-primary-soft)!important;color:var(--p-primary-dark)!important}
#patrolPage .patrol-store-domain-metrics article{border-top:3px solid #dce5e0!important}
#patrolPage .patrol-store-domain-metrics .store-covered{border-top-color:var(--p-primary)!important}
#patrolPage .patrol-store-domain-metrics .store-uncovered{border-top-color:var(--p-danger)!important}
#patrolPage .patrol-store-domain-metrics .store-rate{border-top-color:#567c6a!important}
#patrolPage .patrol-store-domain-metrics .store-types{border-top-color:#78877f!important}
#patrolPage .patrol-store-domain-metrics .store-covered strong,#patrolPage .patrol-store-domain-metrics .store-rate strong{color:var(--p-primary)!important}
#patrolPage .patrol-store-domain-metrics .store-uncovered strong{color:var(--p-danger)!important}
#patrolPage .patrol-store-type-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;min-height:120px}
#patrolPage .patrol-store-type-item{border:1px solid #e2e9e5;border-radius:10px;background:#fafcfb;padding:10px 11px;min-width:0}
#patrolPage .patrol-store-type-item span{display:block;font-size:12.5px;font-weight:800;color:#526a5e;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
#patrolPage .patrol-store-type-item b{display:block;margin-top:4px;font-size:22px;color:var(--p-ink);font-weight:900}
#patrolPage .patrol-store-type-item small{display:block;margin-top:2px;font-size:12px;color:#74857c}
#patrolPage .patrol-store-state{margin-top:10px!important;padding:10px 12px!important}
#patrolPage .patrol-store-coverage-line{display:flex;align-items:center;justify-content:space-between;gap:14px;margin-top:8px;padding:9px 12px;border-top:1px solid var(--p-line);color:#5a7065;font-size:12.5px}
#patrolPage .patrol-store-coverage-line strong{color:var(--p-ink);font-size:13px;text-align:right}
#patrolPage .patrol-domain-structure-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;align-items:stretch!important}
#patrolPage .patrol-domain-chip{display:inline-flex;align-items:center;justify-content:center;min-width:78px;padding:7px 10px;border-radius:8px;background:#f1f5f3;color:#51695d;font-size:12px;font-weight:850;border:1px solid #dce6e1}
#patrolPage .patrol-domain-chip.project,#patrolPage .patrol-domain-chip.store{color:var(--p-primary-dark);background:var(--p-primary-soft);border-color:#d2e5da}
#patrolPage .patrol-structure-subtitle{font-size:13px;color:#526a5e;margin:15px 0 8px;padding-top:12px;border-top:1px solid #e7edea}
#patrolPage .patrol-store-type-structure{display:grid;gap:7px}
#patrolPage .patrol-store-type-row{display:grid;grid-template-columns:minmax(90px,130px) minmax(120px,1fr) 58px;gap:9px;align-items:center;font-size:12.5px;color:#546c60}
#patrolPage .patrol-store-type-row>div{height:8px;border-radius:999px;background:#e7eeea;overflow:hidden}
#patrolPage .patrol-store-type-row i{display:block;height:100%;background:var(--p-primary);border-radius:inherit}
#patrolPage .patrol-store-type-row b{text-align:right;color:var(--p-ink)}
#patrolPage .patrol-store-ranking-panel{margin-top:14px!important;border-top:3px solid var(--p-primary)!important}
#patrolPage .patrol-store-ranking-actions{display:flex;gap:8px;justify-content:flex-end;flex-wrap:wrap;margin:-4px 0 12px}
#patrolPage .patrol-store-ranking-panel .patrol-ranking-row{grid-template-columns:60px 210px minmax(350px,1fr) 170px!important}
#patrolPage .patrol-store-person-panel{border-top:3px solid var(--p-primary)!important}
#patrolPage .patrol-store-intelligence-map{grid-column:1/-1!important;padding:30px!important;background:#fff!important}
#patrolPage .patrol-store-map-type-list{display:grid;gap:7px}
#patrolPage .patrol-store-map-type-row{display:grid;grid-template-columns:minmax(90px,1fr) 90px;gap:10px;align-items:center;padding:7px 0;border-bottom:1px solid #edf1ef}
#patrolPage .patrol-store-map-type-row:last-child{border-bottom:0}
#patrolPage .patrol-store-map-type-row span{font-size:13px;color:#52695e;font-weight:750}
#patrolPage .patrol-store-map-type-row b{text-align:right;color:var(--p-ink);font-size:14px}
#patrolPage .patrol-store-map-priority-state{font-size:12px;color:var(--p-danger);font-weight:800}
#patrolPage .patrol-progress-card[data-domain="project"],#patrolPage .patrol-progress-card[data-domain="store"]{position:relative;padding-top:28px!important}
#patrolPage .patrol-progress-card[data-domain]::before{position:absolute;top:9px;left:15px;font-size:10px;font-weight:900;letter-spacing:.05em;color:#688078}
#patrolPage .patrol-progress-card[data-domain="project"]::before{content:'A域 · 施工工程'}
#patrolPage .patrol-progress-card[data-domain="store"]::before{content:'B域 · 门店巡查'}
#patrolPage .patrol-progress-overview{grid-template-columns:repeat(4,minmax(0,1fr))!important}
#patrolPage .patrol-mini-progress.na>div{background:repeating-linear-gradient(90deg,#edf1ef 0 10px,#f8faf9 10px 18px)!important}
#patrolPage .patrol-store-domain-missing{grid-column:1/-1;display:flex;align-items:center;min-height:86px;border:1px dashed #b9c8c0;border-radius:10px;padding:14px;color:#5c7166;background:#fafcfb;font-size:13px;line-height:1.6}
@media(max-width:1180px){#patrolPage .patrol-domain-overview,#patrolPage .patrol-domain-structure-grid{grid-template-columns:1fr!important}#patrolPage .patrol-store-ranking-panel .patrol-ranking-row{grid-template-columns:52px 1fr!important}#patrolPage .patrol-store-ranking-panel .patrol-ranking-main{grid-column:2!important}}
@media(max-width:760px){#patrolPage .patrol-store-type-grid{grid-template-columns:1fr 1fr}#patrolPage .patrol-store-domain-metrics.four{grid-template-columns:1fr 1fr!important}#patrolPage .patrol-store-coverage-line{align-items:flex-start;flex-direction:column}#patrolPage .patrol-store-ranking-actions{justify-content:flex-start}}


/* HF30 一眼懂升级：数字必须带对象/状态/动作，图表替用户做第一层理解 */
.hf30-domain-visual{margin:12px 0 4px;padding:12px 14px;border:1px solid #dfe9e4;border-radius:14px;background:#fbfdfc;min-height:104px}
.hf30-visual-grid{display:grid;grid-template-columns:108px minmax(0,1fr);gap:16px;align-items:center}.hf30-ring{--p:0;--ring:#4f8b72;width:88px;height:88px;border-radius:50%;background:conic-gradient(var(--ring) calc(var(--p)*1%),#e8efeb 0);display:grid;place-items:center;position:relative}.hf30-ring:after{content:'';position:absolute;inset:10px;background:#fff;border-radius:50%}.hf30-ring>span,.hf30-ring>small{position:relative;z-index:1;text-align:center}.hf30-ring>span{font-size:20px;font-weight:900;color:#244f3d;line-height:1}.hf30-ring>small{font-size:12px;color:#64776e;margin-top:-22px}.hf30-ring.missing{background:repeating-conic-gradient(#d7e2dc 0 5deg,#eef3f0 5deg 12deg)}
.hf30-stack h4{margin:0 0 8px;font-size:13px;color:#345749}.hf30-stackbar{height:14px;border-radius:999px;background:#eaf0ed;overflow:hidden;display:flex}.hf30-stackbar i{height:100%;display:block}.hf30-stackbar .zero{background:#c87562}.hf30-stackbar .one{background:#d2a35a}.hf30-stackbar .good{background:#5c987d}.hf30-stack-legend{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px;margin-top:8px}.hf30-stack-legend span{display:flex;align-items:center;gap:5px;font-size:12px;color:#60736a;white-space:nowrap}.hf30-stack-legend i{width:8px;height:8px;border-radius:50%}.hf30-stack-note{margin-top:7px;font-size:12px;color:#65776f;line-height:1.45}.hf30-placeholder-bars{display:grid;gap:7px}.hf30-placeholder-bars i{height:8px;border-radius:999px;background:linear-gradient(90deg,#e7eeea 62%,transparent 62%);border:1px dashed #c5d2cb}.hf30-placeholder-bars small{color:#65786e;line-height:1.5}
#patrolPage .patrol-leadership-summary{display:block!important;grid-template-columns:none!important;gap:0!important;padding:0!important;background:none!important;border:0!important;box-shadow:none!important;overflow:visible!important;width:100%!important}.hf30-command-brief{border:1px solid #cfe0d7;border-left:5px solid #2f7757;border-radius:16px;background:linear-gradient(135deg,#f5faf7,#fbfdfc);padding:16px 18px;margin:14px 0}.hf30-command-brief-head{display:flex;gap:10px;align-items:center;margin-bottom:8px}.hf30-command-kicker{font-size:12px;font-weight:900;letter-spacing:.08em;color:#2f7757;background:#e9f4ee;border-radius:999px;padding:5px 9px}.hf30-command-brief strong{display:block;font-size:17px;line-height:1.65;color:#244c3b}.hf30-command-actions{display:flex;gap:8px;flex-wrap:wrap;margin-top:10px}.hf30-command-chip{display:inline-flex;gap:5px;align-items:center;padding:6px 9px;border-radius:9px;background:#fff;border:1px solid #dae6e0;font-size:12px;color:#536a60}.hf30-command-chip b{color:#244f3d}.hf30-command-chip.warn b{color:#a66c23}.hf30-command-chip.danger b{color:#b85444}
.patrol-action-highlights{grid-template-columns:repeat(auto-fit,minmax(220px,1fr))!important}.hf30-action-card{border:1px solid #dfe8e3;border-radius:14px;background:#fff;padding:13px 14px;display:grid;gap:7px;min-width:0;box-shadow:0 4px 14px rgba(40,73,57,.04);transition:transform .18s ease,box-shadow .18s ease}.hf30-action-card:hover{transform:translateY(-2px);box-shadow:0 8px 22px rgba(40,73,57,.09)}.hf30-action-top{display:flex;justify-content:space-between;align-items:center;gap:8px}.hf30-domain-badge{font-size:12px;font-weight:900;letter-spacing:.05em;color:#2f6d52;background:#edf6f1;border-radius:999px;padding:4px 7px}.hf30-action-state{font-size:12px;font-weight:800;color:#7a6a47}.hf30-action-card h4{margin:0;font-size:14px;color:#294f40}.hf30-action-card h4 strong{font-size:22px;margin-left:5px;color:#1f543e}.hf30-action-card p{margin:0;font-size:12.5px;line-height:1.5;color:#63766d}.hf30-action-card p b{color:#435f53}.hf30-action-card .next{padding-top:6px;border-top:1px dashed #dce6e1;color:#2e6049}
.hf30-ranking-distribution{margin:10px 0 14px;padding:12px 14px;border:1px solid #dfe8e3;border-radius:14px;background:#fbfdfc}.hf30-dist-head{display:flex;justify-content:space-between;gap:12px;align-items:flex-start}.hf30-dist-head b{font-size:13px;color:#315547}.hf30-dist-head small{font-size:12px;color:#6f8078;line-height:1.45;text-align:right}.hf30-dist-bar{display:flex;height:16px;border-radius:999px;overflow:hidden;background:#e9efec;margin:10px 0 8px}.hf30-dist-bar i{display:block;height:100%;min-width:0}.hf30-dist-bar .good{background:#4f8d70}.hf30-dist-bar .near{background:#84aa95}.hf30-dist-bar .mid{background:#d2a35a}.hf30-dist-bar .low{background:#c87562}.hf30-dist-legend{display:flex;gap:12px;flex-wrap:wrap}.hf30-dist-legend span{font-size:12px;color:#5e7168}.hf30-dist-legend b{color:#284f3f;margin-right:2px}
.hf30-watch-summary{margin:0 0 10px;padding:10px 12px;border-radius:12px;background:#f5f9f7;border:1px solid #dde8e2;color:#4e675c;font-size:12px;line-height:1.55}.patrol-watch-list{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:10px!important}.hf30-watch-card{border:1px solid #dfe8e3;border-radius:14px;background:#fff;padding:12px 13px;display:grid;gap:8px;min-width:0}.hf30-watch-head{display:grid;grid-template-columns:auto 1fr;gap:9px;align-items:start}.hf30-watch-no{width:30px;height:30px;border-radius:9px;background:#eef5f1;color:#315f4b;display:grid;place-items:center;font-weight:900;font-size:12px}.hf30-watch-title b{display:block;font-size:13px;color:#284d3e;line-height:1.4}.hf30-watch-title small{display:block;margin-top:3px;color:#718179;font-size:12px;line-height:1.4}.hf30-watch-domain{font-size:12px;font-weight:900;color:#2f6c52;background:#edf6f1;border-radius:999px;padding:3px 6px;margin-left:6px;vertical-align:1px}.hf30-watch-reason,.hf30-watch-next{display:grid;grid-template-columns:64px 1fr;gap:8px;padding:8px 9px;border-radius:10px;font-size:12px;line-height:1.45}.hf30-watch-reason{background:#fbf7ef}.hf30-watch-next{background:#f0f8f4}.hf30-watch-reason span{color:#946c31;font-weight:900}.hf30-watch-next span{color:#2f7457;font-weight:900}.hf30-watch-reason b,.hf30-watch-next b{color:#3c554a;font-weight:650}
.hf30-map-quickread{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px;margin:10px 0}.hf30-map-callout{border:1px solid #dee8e3;border-radius:11px;background:#fff;padding:9px 10px;display:flex;align-items:flex-start;gap:8px}.hf30-map-callout i{width:8px;height:8px;border-radius:50%;margin-top:5px;background:#5d967d;flex:none}.hf30-map-callout.danger i{background:#c87562}.hf30-map-callout.warn i{background:#d2a35a}.hf30-map-callout.slate i{background:#81738f}.hf30-map-callout div{min-width:0}.hf30-map-callout b{display:block;font-size:12px;color:#2f5445}.hf30-map-callout small{display:block;margin-top:2px;font-size:12px;line-height:1.4;color:#718179}.hf30-map-conclusion-list{display:grid;gap:7px}.hf30-map-conclusion-list div{padding:8px 9px;border-left:3px solid #86aa98;background:#f7faf8;border-radius:6px;font-size:12px;line-height:1.5;color:#536b61}.hf30-map-conclusion-list b{color:#2d5947}
body.patrol-results-ready .patrol-domain-card,body.patrol-results-ready .hf30-command-brief,body.patrol-results-ready .patrol-panel{animation:hf30FadeUp .34s ease both}@keyframes hf30FadeUp{from{opacity:.55;transform:translateY(5px)}to{opacity:1;transform:none}}@media(prefers-reduced-motion:reduce){body.patrol-results-ready .patrol-domain-card,body.patrol-results-ready .hf30-command-brief,body.patrol-results-ready .patrol-panel{animation:none}.hf30-action-card{transition:none}}
@media(max-width:900px){.hf30-visual-grid{grid-template-columns:92px minmax(0,1fr)}.hf30-ring{width:76px;height:76px}.patrol-watch-list{grid-template-columns:1fr!important}.hf30-map-quickread{grid-template-columns:1fr}.hf30-dist-head{display:block}.hf30-dist-head small{display:block;text-align:left;margin-top:4px}}
@media(max-width:520px){.hf30-command-brief strong{font-size:15px}.hf30-command-actions{display:grid;grid-template-columns:1fr}.hf30-stack-legend{grid-template-columns:1fr}.hf30-visual-grid{grid-template-columns:1fr}.hf30-ring{margin:auto}.hf30-watch-reason,.hf30-watch-next{grid-template-columns:1fr;gap:3px}}


/* HF31 精修收官：优先级、去伪0、排名总览、行动卡排版 */
.hf31-action-section-title{display:flex;justify-content:space-between;align-items:end;gap:14px;margin:18px 2px 9px;padding:0 2px}.hf31-action-section-title b{display:block;color:#244c3b;font-size:17px;font-weight:900}.hf31-action-section-title small{display:block;margin-top:3px;color:#6c7d75;font-size:12.5px;line-height:1.45}.hf31-action-section-title>span{font-size:12px;font-weight:800;color:#2f7457;background:#edf6f1;border:1px solid #d6e7de;border-radius:999px;padding:5px 9px;white-space:nowrap}
.hf31-action-card{border-top-width:3px!important}.hf31-action-card[data-priority="1"]{border-top-color:#b85444!important}.hf31-action-card[data-priority="2"]{border-top-color:#a56b2b!important}.hf31-action-card[data-priority="3"]{border-top-color:#6b897a!important}.hf31-action-card[data-priority="4"]{border-top-color:#4f8b72!important}.hf31-priority-no{font-size:12.5px;font-weight:900;color:#68796f;letter-spacing:.04em}.hf31-action-card p{line-height:1.62!important}.hf31-action-card .next{min-height:49px}
.hf31-dist-priority{display:flex;gap:10px;align-items:center;margin-top:9px;padding:8px 10px;border-radius:9px;background:#fff8ed;border:1px solid #eadbc1;font-size:12px;line-height:1.45}.hf31-dist-priority b{color:#926529;white-space:nowrap}.hf31-dist-priority span{color:#50675c;min-width:0}
#patrolPage .patrol-ranking-row.critical{border-left:4px solid #b95e4d!important}#patrolPage .patrol-ranking-row.slow,#patrolPage .patrol-ranking-row.mid{border-left:4px solid #c59146!important}#patrolPage .patrol-ranking-row.good{border-left:4px solid #4c896c!important}
.hf30-watch-reason,.hf30-watch-next{padding:9px 10px!important;line-height:1.58!important}.hf30-watch-next{margin-top:1px}.hf30-watch-card{gap:9px!important}
@media(max-width:700px){.hf31-action-section-title{display:block}.hf31-action-section-title>span{display:inline-block;margin-top:7px}.hf31-dist-priority{display:block}.hf31-dist-priority b{display:block;margin-bottom:3px}}


/* HF32 统一收束·领导挑刺版：克制、平直、分层。 */
#patrolPage{--hf32-ink:#173d2f;--hf32-text:#35574a;--hf32-muted:#6b7d74;--hf32-line:#dbe5df;--hf32-soft:#f5f8f6;--hf32-green:#347b5b;--hf32-amber:#a8732e;--hf32-red:#b65243;--hf32-slate:#74687f}
.patrol-page .workspace{border-radius:18px!important;box-shadow:0 4px 16px rgba(30,62,48,.045)!important;padding:28px 30px!important}
.patrol-page .patrol-panel{border-radius:16px!important;padding:18px!important;box-shadow:none!important;border-color:var(--hf32-line)!important}
.patrol-page .patrol-kpis article,.patrol-domain-card,.patrol-ranking-executive-card,.patrol-ranking-row,.patrol-empty-card{border-radius:12px!important;box-shadow:none!important}
.patrol-page .btn{border-radius:9px!important;box-shadow:none!important;transform:none!important;background:#fff}
.patrol-page .btn:hover{transform:none!important;box-shadow:none!important;background:#f5f8f6}
.patrol-page .btn.primary{background:#347b5b!important;border-color:#347b5b!important;color:#fff!important}
.patrol-page .section-number{width:34px!important;height:34px!important;border-radius:8px!important;font-size:15px!important}
.patrol-page .section-head h2{font-size:22px!important;letter-spacing:.01em}
.patrol-page .patrol-panel h3{font-size:17px!important}
.patrol-page .patrol-tag,.patrol-page .patrol-domain-chip,.patrol-page .patrol-schema-badge{border-radius:7px!important}
body.patrol-results-ready .patrol-domain-card,body.patrol-results-ready .hf30-command-brief,body.patrol-results-ready .patrol-panel{animation:none!important}

.hf32-command-brief{margin:12px 0 16px;padding:12px 14px 12px 16px;border-left:4px solid var(--hf32-green);border-top:1px solid var(--hf32-line);border-right:1px solid var(--hf32-line);border-bottom:1px solid var(--hf32-line);background:#fff;border-radius:10px;display:grid;grid-template-columns:auto 1fr;gap:14px;align-items:start}.hf32-command-brief>span{font-size:12px;font-weight:900;color:#2f6f54;white-space:nowrap;padding-top:2px}.hf32-command-brief strong{font-size:15px;line-height:1.65;color:var(--hf32-ink);font-weight:750}

.hf32-structure{padding:4px 0}.hf32-structure-head{display:flex;align-items:flex-end;justify-content:space-between;gap:16px;margin-bottom:11px}.hf32-structure-head>div:first-child{display:grid;gap:2px}.hf32-structure-head b{font-size:13px;color:var(--hf32-ink)}.hf32-structure-head small{font-size:12px;color:var(--hf32-muted)}.hf32-structure-result{text-align:right;display:grid;gap:1px}.hf32-structure-result span{font-size:12px;color:var(--hf32-muted)}.hf32-structure-result strong{font-size:22px;color:var(--hf32-green);line-height:1.1}.hf32-structure-result.muted strong{font-size:16px;color:var(--hf32-muted)}.hf32-stackbar{height:13px;border-radius:4px;overflow:hidden;background:#e9efeb;display:flex}.hf32-stackbar i{height:100%;display:block}.hf32-stackbar .zero{background:#c46c5a}.hf32-stackbar .one{background:#c99a4f}.hf32-stackbar .good{background:#5a9278}.hf32-structure-legend{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));margin-top:10px;border-top:1px solid #edf1ef}.hf32-structure-legend span{display:grid;grid-template-columns:1fr auto;gap:2px 8px;padding:9px 10px 4px;border-right:1px solid #edf1ef}.hf32-structure-legend span:last-child{border-right:0}.hf32-structure-legend b{font-size:12px;color:var(--hf32-text)}.hf32-structure-legend strong{font-size:15px}.hf32-structure-legend small{grid-column:1/-1;font-size:11.5px;color:var(--hf32-muted)}.hf32-structure-legend .zero strong{color:var(--hf32-red)}.hf32-structure-legend .one strong{color:var(--hf32-amber)}.hf32-structure-legend .good strong{color:var(--hf32-green)}
.hf32-domain-empty{min-height:104px;border:1px dashed #cbd8d1;background:#fafcfb;border-radius:10px;padding:14px 15px;display:grid;gap:7px;align-content:start}.hf32-domain-empty b{font-size:15px;color:var(--hf32-ink)}.hf32-domain-empty p{margin:0;font-size:12.5px;color:var(--hf32-muted);line-height:1.55}.hf32-domain-empty>div{display:flex;gap:7px;flex-wrap:wrap}.hf32-domain-empty>div span{font-size:11.5px;padding:4px 7px;border-radius:6px;background:#edf3ef;color:#62756b}.hf32-domain-empty small{font-size:11.5px;color:#73837b}.hf32-domain-empty.compact{min-height:0}.hf32-domain-note{font-size:12.5px;line-height:1.6;color:var(--hf32-muted);padding:10px 12px;background:#f7faf8;border-left:3px solid #a8b9b0}.hf32-store-types{display:grid;gap:6px;margin-top:10px}.hf32-store-types span{display:grid;grid-template-columns:70px 1fr 46px;gap:8px;align-items:center;font-size:12px}.hf32-store-types i{height:6px;background:#e9efeb;border-radius:3px;overflow:hidden}.hf32-store-types em{height:100%;display:block;background:#6c9c84}.hf32-store-types strong{text-align:right}

.patrol-action-highlights{display:block!important}.hf32-priority-list{border-top:1px solid var(--hf32-line);border-bottom:1px solid var(--hf32-line)}.hf32-priority-list article{display:grid;grid-template-columns:34px minmax(260px,1fr) minmax(300px,.9fr);align-items:center;gap:14px;padding:12px 8px;border-bottom:1px solid #e7ede9;background:#fff}.hf32-priority-list article:last-child{border-bottom:0}.hf32-priority-list article[data-priority="1"]{background:#fffaf8}.hf32-priority-no{width:26px;height:26px;display:grid;place-items:center;border-radius:50%;background:#eef3f0;color:#3b6351;font-size:12px;font-weight:900}.hf32-priority-list article[data-priority="1"] .hf32-priority-no{background:#f8e8e4;color:#a84e3f}.hf32-priority-main{min-width:0}.hf32-priority-main>div{display:flex;gap:10px;align-items:baseline;flex-wrap:wrap}.hf32-priority-main>div b{font-size:11.5px;color:#5f7469;font-weight:800}.hf32-priority-main>div strong{font-size:15px;color:var(--hf32-ink)}.hf32-priority-main small{display:block;margin-top:3px;font-size:12px;color:var(--hf32-muted);line-height:1.45}.hf32-priority-action{border-left:1px solid #e1e9e4;padding-left:14px;min-width:0}.hf32-priority-action span{display:block;font-size:11px;color:#71827a}.hf32-priority-action b{display:block;margin-top:2px;font-size:12.5px;color:#2d624b;line-height:1.45}

.hf30-ranking-distribution{border-radius:10px!important;background:#fff!important;border-color:var(--hf32-line)!important;padding:11px 12px!important}.hf30-dist-bar{height:11px!important;border-radius:4px!important}.hf31-dist-priority{border-radius:7px!important;margin-top:8px!important}.hf32-ranking-group{margin:0 0 14px;border:1px solid var(--hf32-line);border-radius:10px;overflow:hidden;background:#fff}.hf32-ranking-group>header{display:flex;justify-content:space-between;align-items:center;padding:8px 11px;background:#f5f8f6;border-bottom:1px solid var(--hf32-line)}.hf32-ranking-group>header b{font-size:12.5px;color:var(--hf32-ink)}.hf32-ranking-group>header span{font-size:11.5px;color:var(--hf32-muted)}.hf32-ranking-group.attention>header{background:#fbf6f1}.hf32-ranking-row{border:0!important;border-bottom:1px solid #edf1ef!important;border-radius:0!important;margin:0!important}.hf32-ranking-row:last-child{border-bottom:0!important}.patrol-ranking-row.critical,.patrol-ranking-row.slow,.patrol-ranking-row.mid,.patrol-ranking-row.good{border-left:0!important}.patrol-ranking-executive{gap:10px!important}.patrol-ranking-executive-card{padding:12px 13px!important;min-height:78px!important}.patrol-ranking-executive-card b{font-size:24px!important}

.hf30-watch-summary{background:#fff!important;border:0!important;border-left:4px solid var(--hf32-green)!important;border-radius:0!important;padding:6px 0 6px 12px!important}.hf30-watch-summary span{display:block;margin-top:3px;color:var(--hf32-muted)}.patrol-watch-list{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:10px!important}.hf32-watch-card{border:1px solid var(--hf32-line);border-radius:10px;background:#fff;padding:12px 13px;display:grid;gap:8px;min-width:0}.hf32-watch-card.primary{border-left:4px solid var(--hf32-red);background:#fffaf8}.hf32-watch-head{display:grid;grid-template-columns:28px 1fr;gap:9px;align-items:start}.hf32-watch-head>span{width:26px;height:26px;display:grid;place-items:center;border-radius:50%;background:#eef3f0;font-size:11px;font-weight:900;color:#3e6654}.hf32-watch-card.primary .hf32-watch-head>span{background:#f6e5e1;color:#a94e3f}.hf32-watch-head b{display:block;font-size:13.5px;color:var(--hf32-ink);line-height:1.45}.hf32-watch-head small{display:block;margin-top:2px;font-size:11.5px;color:var(--hf32-muted)}.hf32-watch-card p{margin:0;display:grid;grid-template-columns:50px 1fr;gap:7px;padding-top:7px;border-top:1px solid #edf1ef;font-size:12px;line-height:1.5}.hf32-watch-card p span{font-weight:900;color:#8b642f}.hf32-watch-card p.next span{color:#2f7356}.hf32-watch-card p b{font-weight:650;color:#40584d}

.hf30-map-quickread{display:block!important}.hf32-map-brief{border-top:1px solid var(--hf32-line);border-bottom:1px solid var(--hf32-line)}.hf32-map-brief>div{display:grid;grid-template-columns:64px 1fr;gap:9px;padding:9px 2px;border-bottom:1px solid #edf1ef;align-items:start}.hf32-map-brief>div:last-child{border-bottom:0}.hf32-map-brief span{font-size:11.5px;font-weight:900;color:#677a70}.hf32-map-brief b{font-size:12.5px;line-height:1.45;color:var(--hf32-text)}.hf32-map-brief .action b{color:#2f674e}.hf32-map-conclusion{padding:10px 12px;border-left:3px solid #6e9b84;background:#f7faf8;border-radius:0}.hf32-map-conclusion b{font-size:12px;color:var(--hf32-ink)}.hf32-map-conclusion p{margin:3px 0 0;font-size:12px;line-height:1.55;color:var(--hf32-muted)}

@media(max-width:900px){.hf32-command-brief{grid-template-columns:1fr;gap:4px}.hf32-priority-list article{grid-template-columns:30px 1fr}.hf32-priority-action{grid-column:2;border-left:0;border-top:1px dashed #dde6e1;padding:7px 0 0}.hf32-structure-legend{grid-template-columns:1fr}.hf32-structure-legend span{border-right:0;border-bottom:1px solid #edf1ef}.hf32-structure-legend span:last-child{border-bottom:0}.patrol-watch-list{grid-template-columns:1fr!important}}
@media(max-width:520px){.patrol-page .workspace{padding:20px 14px!important;border-radius:14px!important}.patrol-page .patrol-panel{padding:14px!important}.hf32-structure-head{display:block}.hf32-structure-result{text-align:left;margin-top:7px}.hf32-priority-list article{padding:11px 2px}.hf32-watch-card{padding:11px}}


/* HF32 final type gate: public patrol view has no micro-type. */
#patrolPage .patrol-data-ready-bar span,
#patrolPage .patrol-domain-head small,
#patrolPage .hf32-domain-empty>div span,
#patrolPage .hf32-domain-empty small,
#patrolPage .hf32-priority-main>div b,
#patrolPage .hf32-priority-action span,
#patrolPage .hf32-ranking-group>header span,
#patrolPage .patrol-ranking-row span,
#patrolPage .patrol-ranking-row small,
#patrolPage .hf32-watch-head small,
#patrolPage .hf32-watch-head>span,
#patrolPage .hf32-map-brief span,
#patrolPage .patrol-map-priority-no,
#patrolPage .patrol-map-priority-main small,
#patrolPage .patrol-map-metric-strip span,
#patrolPage .patrol-map-rich-legend small,
#patrolPage .patrol-copy-card>span{font-size:12.5px!important}
#patrolPage .hf32-structure-legend small{font-size:12px!important}
#patrolPage .patrol-domain-code{display:none!important}
#patrolPage .patrol-map-filter-group b,
#patrolPage .patrol-map-priority-state,
#patrolPage .patrol-map-list-more,
#patrolPage #patrolProjectMapSearchClear{font-size:12.5px!important}
#patrolPage .patrol-domain-head{grid-template-columns:minmax(0,1fr) auto!important;gap:14px!important}
@media(max-width:720px){#patrolPage .patrol-domain-head{grid-template-columns:1fr!important}#patrolPage .patrol-domain-total{grid-column:1!important}}
/* HF32 leadership polish: missing data stays neutral; internal domain codes never surface. */
#patrolPage .patrol-progress-card[data-domain="project"]::before{content:'施工工程'!important}
#patrolPage .patrol-progress-card[data-domain="store"]::before{content:'门店巡查'!important}
#patrolPage .store-domain.is-missing .patrol-domain-total,
#patrolPage .store-domain.is-missing .patrol-domain-metrics article strong{color:#52685d!important}
#patrolPage .store-domain.is-missing .patrol-domain-metrics article{border-top-color:#cbd6d0!important;background:#fafcfb!important}
#patrolPage .store-domain.is-missing .patrol-domain-metrics article small{color:#718179!important}

/* HF33 Windows real review: unique immutable asset URL. */

.patrol-internal-only,.patrol-trace-panel{display:none!important}


/* HF36 | public-result visual hierarchy */
.executive-takeaway{
  grid-template-columns:118px minmax(0,1fr)!important;
  padding:16px 20px 16px 22px!important;
  border:1px solid #dce9e3!important;
  border-radius:16px!important;
  background:#f7faf8!important;
  box-shadow:none!important;
  color:#234a40!important;
}
.executive-takeaway:before{width:4px!important;background:#3e947a!important;}
.executive-takeaway:after{display:none!important;}
.executive-takeaway span{color:#4f7d6e!important;letter-spacing:.06em!important;}
.executive-takeaway strong{color:#234a40!important;font-size:16px!important;}
.executive-takeaway small{color:#6d8179!important;}
#patrolPage .patrol-module-actions{max-width:760px!important;}
#patrolPage .patrol-module-actions .btn{white-space:nowrap;}
@media(max-width:980px){#patrolPage .patrol-module-actions{max-width:none!important;}}

/* HF36 public UI: readiness score remains internal logic only */
.readiness-ring{display:none!important;}


/* HF37 */
.app-shell,.address-page,#patrolPage{max-width:1640px!important;width:100%!important}
body.patrol-mode .app-header,body.address-mode .app-header{padding-left:max(22px,calc((100vw - 1640px)/2 + 28px))!important;padding-right:max(22px,calc((100vw - 1640px)/2 + 28px))!important}
#patrolPage{padding:16px 24px 72px!important}
#patrolPage .workspace{margin:18px auto!important;padding:30px 32px!important;max-width:100%!important}
#patrolPage .workspace>*,#patrolPage .patrol-panel>*,#patrolPage .patrol-domain-card>*{min-width:0;max-width:100%}
#patrolPage img,#patrolPage canvas,.address-page img,.address-page canvas{max-width:100%!important;height:auto}

#patrolPage .patrol-section-head,#patrolPage .patrol-module-head{grid-template-columns:34px minmax(0,1fr) auto!important;column-gap:14px!important;row-gap:11px!important;margin-bottom:20px!important}
#patrolPage .patrol-module-head>.grow,#patrolPage .patrol-section-head>.grow{grid-column:2!important;grid-row:1!important;align-self:start!important}
#patrolPage .patrol-module-head>.patrol-schema-badge,#patrolPage .patrol-section-head>.patrol-schema-badge{grid-column:3!important;grid-row:1!important;justify-self:end!important;align-self:start!important;margin:0!important}
#patrolPage .patrol-module-head>.patrol-module-actions,#patrolPage .patrol-section-head>.patrol-module-actions{grid-column:2/-1!important;grid-row:2!important;margin:0!important;max-width:none!important;width:100%!important;display:flex!important;justify-content:flex-start!important;align-items:center!important;flex-wrap:wrap!important;gap:8px!important}
#patrolPage .patrol-module-actions .btn,#patrolPage .patrol-map-actions .btn,#patrolPage .patrol-writing-actions .btn,#patrolPage .patrol-command-export-grid .btn{white-space:nowrap!important;max-width:100%!important}
#patrolPage .patrol-section-head h2{font-size:26px!important;line-height:1.28!important;text-wrap:balance;overflow-wrap:normal}
#patrolPage .patrol-section-head p,#patrolPage .patrol-panel-head small{max-width:none!important;text-wrap:pretty;overflow-wrap:break-word;word-break:normal}

#patrolPage .patrol-domain-overview{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:18px!important}
#patrolPage .patrol-domain-card{padding:18px 20px!important;overflow:hidden!important}
#patrolPage .patrol-domain-head{grid-template-columns:minmax(0,1fr) auto!important;gap:14px!important;align-items:start!important}
#patrolPage .patrol-domain-head>div{min-width:0!important}
#patrolPage .patrol-domain-head h3,#patrolPage .patrol-domain-total,#patrolPage .patrol-domain-section-label{white-space:nowrap!important}
#patrolPage .patrol-domain-head p{max-width:100%!important;text-wrap:pretty!important;overflow-wrap:break-word!important}
#patrolPage .patrol-domain-metrics.four{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:9px!important}
#patrolPage .patrol-domain-metrics article,#patrolPage .patrol-domain-daily article{min-height:86px!important;padding:11px 13px!important;overflow:hidden!important}
#patrolPage .patrol-domain-metrics span,#patrolPage .patrol-domain-metrics strong,#patrolPage .patrol-domain-daily span,#patrolPage .patrol-domain-daily strong{white-space:nowrap!important}
#patrolPage .patrol-domain-metrics small,#patrolPage .patrol-domain-daily small{overflow-wrap:break-word!important;word-break:normal!important;text-wrap:pretty!important}
#patrolPage .patrol-domain-daily{gap:9px!important}
#patrolPage .patrol-store-state{margin:12px 0 10px!important;padding:11px 13px!important;text-wrap:pretty!important}

#patrolPage .patrol-leadership-summary{margin:13px 0 15px!important}
#patrolPage .patrol-command-summary-item{padding:12px 13px!important}
#patrolPage .patrol-command-summary-item span,#patrolPage .patrol-command-summary-item strong{white-space:nowrap!important}
#patrolPage .patrol-command-summary-item small{text-wrap:pretty!important;overflow-wrap:break-word!important}
#patrolPage .hf31-action-section-title{margin-top:16px!important}
#patrolPage .hf31-action-section-title>div{min-width:0!important}
#patrolPage .hf31-action-section-title b,#patrolPage .hf31-action-section-title>span{white-space:nowrap!important}
#patrolPage .hf31-action-section-title small{text-wrap:pretty!important;overflow-wrap:break-word!important}
#patrolPage .hf32-priority-list article{grid-template-columns:34px minmax(360px,.9fr) minmax(460px,1.1fr)!important;gap:16px!important;padding:11px 9px!important}
#patrolPage .hf32-priority-main>div{flex-wrap:nowrap!important}
#patrolPage .hf32-priority-main>div b,#patrolPage .hf32-priority-main>div strong,#patrolPage .hf32-priority-action span{white-space:nowrap!important}
#patrolPage .hf32-priority-main small,#patrolPage .hf32-priority-action b{text-wrap:pretty!important;overflow-wrap:break-word!important;word-break:normal!important}

#patrolPage .patrol-progress-overview{grid-template-columns:repeat(4,minmax(0,1fr))!important;gap:10px!important}
#patrolPage .patrol-progress-card{padding:13px 14px!important;overflow:hidden!important}
#patrolPage .patrol-progress-card header span,#patrolPage .patrol-progress-card header strong{white-space:nowrap!important}
#patrolPage .patrol-progress-card footer{display:grid!important;grid-template-columns:minmax(0,1fr) auto!important;align-items:start!important}
#patrolPage .patrol-progress-card footer b{white-space:nowrap!important}
#patrolPage .patrol-domain-structure-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:14px!important}
#patrolPage .patrol-structure-subtitle{white-space:nowrap!important}

#patrolPage .patrol-ranking-hero-panel{padding:18px!important;overflow:hidden!important}
#patrolPage .patrol-ranking-executive{grid-template-columns:repeat(4,minmax(150px,1fr))!important;gap:9px!important}
#patrolPage .patrol-ranking-executive-card{min-height:80px!important;padding:11px 12px!important;overflow:hidden!important}
#patrolPage .patrol-ranking-executive-card span,#patrolPage .patrol-ranking-executive-card b{white-space:nowrap!important}
#patrolPage .patrol-ranking-executive-card small{text-wrap:pretty!important;overflow-wrap:break-word!important}
#patrolPage .hf32-ranking-group>header{gap:12px!important}
#patrolPage .hf32-ranking-group>header b,#patrolPage .hf32-ranking-group>header span{white-space:nowrap!important}
#patrolPage .patrol-ranking-board.no-history .patrol-ranking-row{grid-template-columns:54px 210px minmax(430px,1fr) minmax(390px,.95fr)!important;gap:14px!important;padding:14px 16px!important}
#patrolPage .patrol-ranking-row:not(.hf32-ranking-row){max-width:100%!important}
#patrolPage .patrol-ranking-person{min-width:0!important}
#patrolPage .patrol-ranking-person b,#patrolPage .patrol-ranking-person span,#patrolPage .patrol-ranking-metric span,#patrolPage .patrol-ranking-metric b,#patrolPage .patrol-ranking-rate strong,#patrolPage .patrol-ranking-rate span{white-space:nowrap!important}
#patrolPage .patrol-ranking-metrics{grid-template-columns:repeat(4,minmax(78px,1fr))!important;gap:7px!important}
#patrolPage .patrol-ranking-metric{padding:8px 9px!important;overflow:hidden!important}
#patrolPage .patrol-ranking-main{grid-template-columns:minmax(160px,1fr) 92px!important;gap:12px!important;min-width:0!important}
#patrolPage .patrol-ranking-basis-alert,#patrolPage .patrol-ranking-trend-summary{text-wrap:pretty!important;overflow-wrap:break-word!important}

#patrolPage .patrol-watch-list{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:12px!important}
#patrolPage .hf32-watch-card{padding:13px 14px!important;gap:9px!important;overflow:hidden!important}
#patrolPage .hf32-watch-head{grid-template-columns:30px minmax(0,1fr)!important}
#patrolPage .hf32-watch-head b{text-wrap:pretty!important;overflow-wrap:break-word!important;word-break:normal!important}
#patrolPage .hf32-watch-head small{text-wrap:pretty!important;overflow-wrap:break-word!important}
#patrolPage .hf32-watch-card p{grid-template-columns:58px minmax(0,1fr)!important;gap:9px!important}
#patrolPage .hf32-watch-card p span{white-space:nowrap!important}
#patrolPage .hf32-watch-card p b{text-wrap:pretty!important;overflow-wrap:break-word!important;word-break:normal!important}

#patrolPage .patrol-map-intelligence-layout{grid-template-columns:minmax(0,1.9fr) minmax(360px,.72fr)!important;gap:18px!important}
#patrolPage .patrol-map-visual-column,#patrolPage .patrol-map-intelligence-panel{min-width:0!important;max-width:100%!important}
#patrolPage .patrol-map-intelligence-panel{padding:17px 18px!important;gap:13px!important;overflow:hidden!important}
#patrolPage .patrol-map-intelligence-title span,#patrolPage .patrol-map-insight-section h4,#patrolPage .patrol-map-rich-legend span b,#patrolPage .patrol-map-rich-legend>div>strong,#patrolPage .patrol-map-metric-strip span,#patrolPage .patrol-map-metric-strip strong{white-space:nowrap!important}
#patrolPage .patrol-map-rich-legend small,#patrolPage .patrol-map-priority-main b,#patrolPage .patrol-map-priority-main small,#patrolPage .patrol-map-narrative,#patrolPage .hf32-map-conclusion p{text-wrap:pretty!important;overflow-wrap:break-word!important;word-break:normal!important}
#patrolPage .patrol-map-priority-row{grid-template-columns:36px minmax(0,1fr) auto!important;gap:9px!important}
#patrolPage .patrol-map-actions{display:flex!important;flex-wrap:wrap!important;gap:8px!important;align-items:center!important}

#patrolPage .patrol-copy-grid{grid-template-columns:repeat(4,minmax(0,1fr))!important;gap:10px!important}
#patrolPage .patrol-copy-card{min-height:158px!important;padding:15px 16px!important;overflow:hidden!important}
#patrolPage .patrol-copy-card>span,#patrolPage .patrol-copy-card h3,#patrolPage .patrol-copy-card .btn{white-space:nowrap!important}
#patrolPage .patrol-copy-card p{text-wrap:pretty!important;overflow-wrap:break-word!important}
#patrolPage .patrol-command-export-grid{grid-template-columns:repeat(4,minmax(0,1fr))!important;gap:9px!important}
#patrolPage .patrol-writing-actions{display:flex!important;flex-wrap:wrap!important;gap:8px!important}
#patrolPage .patrol-card-export-controls{display:flex!important;flex-wrap:wrap!important;align-items:end!important;gap:10px!important}
#patrolPage .patrol-card-export-controls label{min-width:220px!important;flex:1 1 260px!important}
#patrolPage .patrol-brief-panel .patrol-panel-head>div:last-child{display:flex!important;flex-wrap:wrap!important;gap:8px!important}

.address-page{max-width:1640px!important;padding-left:24px!important;padding-right:24px!important}
.address-page .workspace{padding:30px 32px!important;overflow:hidden!important}
.address-page .workspace>*{min-width:0;max-width:100%}
.address-page .section-head{display:grid!important;grid-template-columns:34px minmax(0,1fr) auto!important;gap:10px 14px!important}
.address-page .section-head h2{white-space:nowrap!important}
.address-page .section-head p{text-wrap:pretty!important;overflow-wrap:break-word!important}
.address-page .address-stats{grid-template-columns:repeat(4,minmax(0,1fr))!important;gap:9px!important}
.address-page .address-stats span{min-width:0!important;overflow:hidden!important}
.address-page .address-stats small,.address-page .address-stats b{white-space:nowrap!important}
.address-page .address-map-head,.address-page .address-result-head{align-items:start!important}
.address-page .address-map-tools,.address-page .address-result-tools,.address-page .address-export-actions{flex-wrap:wrap!important;max-width:100%!important}
.address-page .btn{white-space:nowrap!important}
.address-page .address-map-preview,.address-page .preview{max-width:100%!important;overflow:auto!important}
.address-page .address-result-wrap{max-width:100%!important;overflow:auto!important}

@media(max-width:1320px){
  #patrolPage{padding-left:18px!important;padding-right:18px!important}
  #patrolPage .workspace{padding:26px 26px!important}
  #patrolPage .patrol-domain-overview,#patrolPage .patrol-domain-structure-grid{grid-template-columns:1fr!important}
  #patrolPage .patrol-domain-metrics.four{grid-template-columns:repeat(4,minmax(130px,1fr))!important}
  #patrolPage .hf32-priority-list article{grid-template-columns:34px minmax(280px,.9fr) minmax(340px,1.1fr)!important}
  #patrolPage .patrol-ranking-board.no-history .patrol-ranking-row{grid-template-columns:52px 185px minmax(330px,1fr) minmax(300px,.9fr)!important}
  #patrolPage .patrol-map-intelligence-layout{grid-template-columns:1fr!important}
  #patrolPage .patrol-map-intelligence-panel{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;align-items:start!important}
  #patrolPage .patrol-map-intelligence-title,#patrolPage .patrol-map-metric-strip,#patrolPage .patrol-map-narrative-section{grid-column:1/-1!important}
  #patrolPage .patrol-copy-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}
  #patrolPage .patrol-command-export-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}
  .address-page .address-stats{grid-template-columns:repeat(2,minmax(0,1fr))!important}
}
@media(max-width:980px){
  #patrolPage .patrol-module-head>.patrol-schema-badge,#patrolPage .patrol-section-head>.patrol-schema-badge{grid-column:2!important;grid-row:2!important;justify-self:start!important}
  #patrolPage .patrol-module-head>.patrol-module-actions,#patrolPage .patrol-section-head>.patrol-module-actions{grid-column:1/-1!important;grid-row:3!important;margin-left:48px!important;width:calc(100% - 48px)!important}
  #patrolPage .patrol-domain-metrics.four{grid-template-columns:repeat(2,minmax(0,1fr))!important}
  #patrolPage .hf32-priority-list article{grid-template-columns:32px minmax(0,1fr)!important}
  #patrolPage .hf32-priority-action{grid-column:2!important;border-left:0!important;border-top:1px solid #e3eae6!important;padding:7px 0 0!important}
  #patrolPage .patrol-progress-overview{grid-template-columns:repeat(2,minmax(0,1fr))!important}
  #patrolPage .patrol-ranking-executive{grid-template-columns:repeat(2,minmax(0,1fr))!important}
  #patrolPage .patrol-ranking-board.no-history .patrol-ranking-row{grid-template-columns:46px minmax(0,1fr)!important;gap:10px 12px!important}
  #patrolPage .patrol-ranking-board.no-history .patrol-ranking-metrics,#patrolPage .patrol-ranking-board.no-history .patrol-ranking-main{grid-column:2!important}
  #patrolPage .patrol-ranking-metrics{grid-template-columns:repeat(4,minmax(64px,1fr))!important}
  #patrolPage .patrol-watch-list{grid-template-columns:1fr!important}
  #patrolPage .patrol-map-intelligence-panel{display:flex!important}
}
@media(max-width:620px){
  #patrolPage{padding-left:10px!important;padding-right:10px!important}
  #patrolPage .workspace{padding:18px 14px!important;margin:12px auto!important}
  #patrolPage .patrol-module-head>.patrol-module-actions,#patrolPage .patrol-section-head>.patrol-module-actions{margin-left:0!important;width:100%!important;display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important}
  #patrolPage .patrol-module-actions .btn{white-space:normal!important;min-width:0!important}
  #patrolPage .patrol-domain-head h3,#patrolPage .patrol-domain-section-label{white-space:normal!important}
  #patrolPage .patrol-progress-overview,#patrolPage .patrol-ranking-executive,#patrolPage .patrol-copy-grid,#patrolPage .patrol-command-export-grid{grid-template-columns:1fr!important}
  #patrolPage .patrol-ranking-metrics{grid-template-columns:repeat(2,minmax(0,1fr))!important}
  #patrolPage .patrol-map-filter-group{grid-template-columns:repeat(2,minmax(0,1fr))!important}
  #patrolPage .patrol-map-actions{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important}
  #patrolPage .patrol-map-actions .btn{white-space:normal!important;width:100%!important}
  .address-page{padding-left:10px!important;padding-right:10px!important}
  .address-page .workspace{padding:18px 14px!important}
  .address-page .section-head{grid-template-columns:32px minmax(0,1fr)!important}
  .address-page .section-head h2{white-space:normal!important}
  .address-page .address-stats{grid-template-columns:1fr 1fr!important}
}

/* HF37.1 — unified layout rhythm / short-line protection / anti-overflow */
:root{--hf37-content:1640px}
.app-shell{padding-left:22px!important;padding-right:22px!important}
.app-shell>.workspace{width:100%!important;max-width:100%!important;box-sizing:border-box!important;overflow:hidden!important}
.app-shell>.workspace>*{min-width:0;max-width:100%}
.app-shell>.workspace .section-head{display:grid!important;grid-template-columns:34px minmax(0,1fr) auto!important;column-gap:14px!important;row-gap:10px!important;align-items:start!important}
.app-shell>.workspace .section-head>.section-number{grid-column:1!important;grid-row:1!important}
.app-shell>.workspace .section-head>.grow,.app-shell>.workspace .section-head>div:not([class]){grid-column:2!important;grid-row:1!important;min-width:0!important}
.app-shell>.workspace .section-head>.help-chip{grid-column:3!important;grid-row:1!important;justify-self:end!important;white-space:nowrap!important}
.app-shell>.workspace .section-head>.export-options{grid-column:2/-1!important;grid-row:2!important;margin:0!important;width:100%!important;min-width:0!important}
.app-shell>.workspace .section-head h2{white-space:nowrap!important;max-width:100%!important}
.app-shell>.workspace .section-head p{max-width:none!important;line-height:1.55!important;word-break:normal!important;overflow-wrap:break-word!important;text-wrap:pretty!important}
.app-shell .input-actions,.app-shell .export-actions{display:flex!important;flex-wrap:wrap!important;gap:9px!important;align-items:center!important}
.app-shell .input-actions .btn,.app-shell .input-actions .text-btn,.app-shell .export-actions .btn{white-space:nowrap!important;max-width:100%!important}
.app-shell .simple-batchbar>*{min-width:0!important}
.app-shell .simple-batchbar .btn,.app-shell .simple-batchbar .text-btn{white-space:nowrap!important}
.app-shell .quality,.app-shell .quick-resolve,.app-shell .date-range-card,.app-shell .analysis-callout-toolbar{max-width:100%!important;overflow:hidden!important;box-sizing:border-box!important}
.app-shell .quality,.app-shell .quick-resolve{word-break:normal!important;overflow-wrap:break-word!important;text-wrap:pretty!important}
.app-shell .export-settings>*{min-width:0!important}
.app-shell .export-settings label,.app-shell .more-info-grid>*{min-width:0!important}

.address-page .section-head>.section-number{grid-column:1!important;grid-row:1!important}
.address-page .section-head>.grow{grid-column:2!important;grid-row:1!important;min-width:0!important}
.address-page .section-head>.address-private-badge{grid-column:3!important;grid-row:1!important;justify-self:end!important;white-space:nowrap!important}
.address-page .section-head>.address-map-tools,.address-page .section-head>.address-result-actions{grid-column:2/-1!important;grid-row:2!important;width:100%!important;margin:0!important;display:flex!important;flex-wrap:wrap!important;gap:8px!important;justify-content:flex-start!important;align-items:center!important}
.address-page .address-map-tools>*,.address-page .address-result-actions>*{min-width:0!important;max-width:100%!important}
.address-page .address-map-tools .btn,.address-page .address-result-actions .btn,.address-page .address-export-actions .btn{white-space:nowrap!important}
.address-page .address-map-panel,.address-page .address-result-panel{overflow:hidden!important}
.address-page .address-map-preview,.address-page .preview{overflow:hidden!important}
.address-page .address-summary,.address-page .address-clean-hint,.address-page .address-density-hint,.address-page .address-result-sub{word-break:normal!important;overflow-wrap:break-word!important;text-wrap:pretty!important}

#patrolPage .patrol-panel,#patrolPage .patrol-ranking-hero-panel,#patrolPage .patrol-project-intelligence-map,#patrolPage .patrol-store-intelligence-map{max-width:100%!important;box-sizing:border-box!important;overflow:hidden!important}
#patrolPage .patrol-panel-head{display:flex!important;flex-wrap:wrap!important;gap:8px 14px!important;align-items:flex-start!important}
#patrolPage .patrol-panel-head>div:first-child{min-width:min(100%,420px)!important;flex:1 1 520px!important}
#patrolPage .patrol-panel-head>div:last-child{min-width:0!important;max-width:100%!important}
#patrolPage .patrol-panel-head h3{line-height:1.35!important;margin-bottom:4px!important}
#patrolPage .patrol-panel-head small{line-height:1.55!important}
#patrolPage .patrol-domain-card p,#patrolPage .patrol-ranking-basis-alert,#patrolPage .patrol-ranking-trend-summary,#patrolPage .patrol-map-narrative,#patrolPage .hf32-map-conclusion p,#patrolPage .patrol-writing-note{line-height:1.55!important}
#patrolPage .hf32-priority-list article>*{min-width:0!important}
#patrolPage .hf32-priority-main small,#patrolPage .hf32-priority-action b{line-height:1.5!important}
#patrolPage .patrol-ranking-row>*{min-width:0!important;max-width:100%!important}
#patrolPage .patrol-ranking-person b{overflow:hidden!important;text-overflow:ellipsis!important;max-width:100%!important}
#patrolPage .patrol-ranking-metrics{min-width:0!important}
#patrolPage .patrol-ranking-rate{min-width:0!important;max-width:100%!important}
#patrolPage .patrol-ranking-rate>div{min-width:0!important;max-width:100%!important}
#patrolPage .hf32-watch-card>*{min-width:0!important;max-width:100%!important}
#patrolPage .hf32-watch-card p b{line-height:1.5!important}
#patrolPage .patrol-map-intelligence-layout>*{min-width:0!important;max-width:100%!important}
#patrolPage .patrol-map-canvas-wrap,#patrolPage .patrol-map-canvas-wrap canvas{max-width:100%!important}
#patrolPage .patrol-copy-grid>* ,#patrolPage .patrol-command-export-grid>*{min-width:0!important;max-width:100%!important}

@media(max-width:1500px){
  .app-shell,.address-page,#patrolPage{max-width:100%!important}
  .app-shell{padding-left:18px!important;padding-right:18px!important}
  #patrolPage{padding-left:18px!important;padding-right:18px!important}
  #patrolPage .workspace{padding:28px 28px!important}
}
@media(max-width:1180px){
  .app-shell>.workspace .section-head>.export-options{grid-column:1/-1!important}
  .address-page .section-head>.address-map-tools,.address-page .section-head>.address-result-actions{grid-column:1/-1!important;margin-left:48px!important;width:calc(100% - 48px)!important}
  #patrolPage .patrol-ranking-board.no-history .patrol-ranking-row{grid-template-columns:48px 180px minmax(0,1fr)!important}
  #patrolPage .patrol-ranking-board.no-history .patrol-ranking-main{grid-column:3!important;grid-row:1!important}
  #patrolPage .patrol-ranking-board.no-history .patrol-ranking-metrics{grid-column:2/4!important;grid-row:2!important}
}
@media(max-width:760px){
  .app-shell>.workspace .section-head{grid-template-columns:30px minmax(0,1fr)!important}
  .app-shell>.workspace .section-head>.help-chip{grid-column:2!important;grid-row:2!important;justify-self:start!important}
  .app-shell>.workspace .section-head>.export-options{grid-column:1/-1!important;grid-row:3!important}
  .app-shell>.workspace .section-head h2{white-space:normal!important}
  .address-page .section-head>.address-private-badge{grid-column:2!important;grid-row:2!important;justify-self:start!important}
  .address-page .section-head>.address-map-tools,.address-page .section-head>.address-result-actions{grid-column:1/-1!important;grid-row:3!important;margin-left:0!important;width:100%!important}
  #patrolPage .patrol-panel-head>div:first-child{min-width:0!important;flex-basis:100%!important}
}


/* Content-first visual language: weak containers and natural hierarchy */
:root{
  --hf38-bg:#f5f5f7;--hf38-surface:#ffffff;--hf38-group:#f7f7f8;--hf38-group-2:#f2f2f7;
  --hf38-text:#1d1d1f;--hf38-text-2:#3a3a3c;--hf38-muted:#6e6e73;--hf38-muted-2:#8e8e93;
  --hf38-line:rgba(60,60,67,.10);--hf38-line-soft:rgba(60,60,67,.07);--hf38-accent:#27745c;
  --hf38-accent-soft:#edf7f2;--hf38-danger:#b9554b;--hf38-warn:#9a681f;
  --hf38-shadow:0 1px 2px rgba(0,0,0,.025),0 10px 32px rgba(0,0,0,.035)
}
html,body{background:var(--hf38-bg)!important;color:var(--hf38-text)!important}
body{font-family:system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI","Microsoft YaHei UI","Microsoft YaHei","PingFang SC",sans-serif!important;letter-spacing:-.005em}
body::before{display:none!important}
.app-header{max-width:none!important;position:sticky;top:0;z-index:40;padding-top:15px!important;padding-bottom:15px!important;background:rgba(255,255,255,.82)!important;border-bottom:1px solid var(--hf38-line-soft)!important;box-shadow:none!important;backdrop-filter:blur(24px) saturate(155%);-webkit-backdrop-filter:blur(24px) saturate(155%)}
.brand-mark{border-radius:13px!important;box-shadow:none!important;background:linear-gradient(145deg,#2d755f,#225f52)!important}
.brand-copy h1{color:var(--hf38-text)!important;font-weight:760!important;letter-spacing:-.03em!important}.brand-copy p,.brand-kicker{color:var(--hf38-muted)!important}
.mode-switch,.flow-hint{background:rgba(118,118,128,.10)!important;border:0!important;box-shadow:none!important;border-radius:14px!important;padding:4px!important}
.mode-switch-btn{border:0!important;border-radius:11px!important;color:#5b5b60!important;background:transparent!important;box-shadow:none!important}.mode-switch-btn.active{background:#fff!important;color:var(--hf38-text)!important;box-shadow:0 1px 2px rgba(0,0,0,.08)!important}
.app-shell,.address-page,#patrolPage{background:transparent!important}
.workspace,#patrolPage .workspace,.address-page .workspace{border:1px solid var(--hf38-line-soft)!important;border-radius:24px!important;background:rgba(255,255,255,.96)!important;box-shadow:var(--hf38-shadow)!important}
.workspace::before,.workspace::after,#patrolPage .workspace::before,#patrolPage .workspace::after,.address-page .workspace::before,.address-page .workspace::after{display:none!important}
.section-number,#patrolPage .patrol-section-number,#patrolPage .patrol-module-number{background:var(--hf38-group-2)!important;color:#56565b!important;border:0!important;box-shadow:none!important;border-radius:10px!important}
.section-head h2,#patrolPage .patrol-section-head h2,#patrolPage .patrol-module-head h2,.address-page .section-head h2{color:var(--hf38-text)!important;font-weight:760!important;letter-spacing:-.025em!important}
.section-head p,#patrolPage .patrol-section-head p,#patrolPage .patrol-panel-head small,.address-page .section-head p{color:var(--hf38-muted)!important}
.help-chip,#patrolPage .patrol-schema-badge,#patrolPage .patrol-private-badge,.address-private-badge{background:var(--hf38-group-2)!important;color:#6e6e73!important;border:0!important;box-shadow:none!important;border-radius:999px!important;font-weight:650!important}
.btn,.filter,.review-choice{border:0!important;border-radius:12px!important;background:var(--hf38-group-2)!important;color:#343438!important;box-shadow:none!important;font-weight:650!important;transition:background .16s ease,transform .12s ease!important}
.btn:hover:not(:disabled),.filter:hover,.review-choice:hover{transform:none!important;background:#e9e9ee!important;box-shadow:none!important}.btn:active:not(:disabled),.filter:active,.review-choice:active{transform:scale(.985)!important}
.btn.primary,.filter.active{background:var(--hf38-accent)!important;color:#fff!important;border:0!important;box-shadow:none!important}.btn.primary:hover:not(:disabled),.filter.active:hover{background:#226650!important;box-shadow:none!important}
.btn.quiet{background:var(--hf38-group)!important;color:#515156!important}.text-btn{color:var(--hf38-accent)!important;font-weight:650!important}
input,textarea,select,.address-input,.address-green-input{border:1px solid transparent!important;background:var(--hf38-group)!important;color:var(--hf38-text)!important;border-radius:14px!important;box-shadow:none!important}
input:focus,textarea:focus,select:focus,.address-input:focus,.address-green-input:focus{outline:none!important;border-color:rgba(39,116,92,.35)!important;box-shadow:0 0 0 4px rgba(39,116,92,.09)!important;background:#fff!important}

/* grouped surfaces: fewer visible borders, more spacing */
#patrolPage .patrol-domain-card,#patrolPage .patrol-panel,#patrolPage .patrol-ranking-hero-panel,#patrolPage .patrol-project-intelligence-map,#patrolPage .patrol-store-intelligence-map,
.address-page .address-map-panel,.address-page .address-result-panel{border:0!important;background:var(--hf38-group)!important;box-shadow:none!important;border-radius:20px!important}
#patrolPage .patrol-domain-card::before,#patrolPage .patrol-domain-card::after,#patrolPage .patrol-panel::before,#patrolPage .patrol-panel::after{display:none!important}
#patrolPage .patrol-domain-card.project-domain,#patrolPage .patrol-domain-card.store-domain{background:var(--hf38-group)!important;border:0!important}
#patrolPage .patrol-domain-head h3,#patrolPage .patrol-panel-head h3,#patrolPage .patrol-domain-section-label{color:var(--hf38-text)!important;font-weight:740!important;letter-spacing:-.02em!important}
#patrolPage .patrol-domain-head p,#patrolPage .patrol-domain-card p{color:var(--hf38-muted)!important}
#patrolPage .patrol-domain-metrics article,#patrolPage .patrol-domain-daily article,#patrolPage .patrol-progress-card,#patrolPage .patrol-ranking-executive-card,
#patrolPage .patrol-command-summary-item,.address-page .address-stats span{border:0!important;background:#fff!important;box-shadow:0 1px 2px rgba(0,0,0,.025)!important;border-radius:16px!important}
#patrolPage .patrol-domain-metrics article::before,#patrolPage .patrol-domain-daily article::before,#patrolPage .patrol-progress-card::before,#patrolPage .patrol-ranking-executive-card::before{display:none!important}
#patrolPage .patrol-domain-metrics span,#patrolPage .patrol-domain-daily span,#patrolPage .patrol-progress-card header span,#patrolPage .patrol-ranking-executive-card span,.address-page .address-stats small{color:var(--hf38-muted)!important;font-weight:600!important}
#patrolPage .patrol-domain-metrics strong,#patrolPage .patrol-domain-daily strong,#patrolPage .patrol-progress-card header strong,#patrolPage .patrol-ranking-executive-card b,.address-page .address-stats b{font-variant-numeric:tabular-nums;color:var(--hf38-text)!important;letter-spacing:-.025em!important}
#patrolPage .patrol-store-state,#patrolPage .patrol-writing-note,#patrolPage .patrol-ranking-basis-alert,#patrolPage .patrol-ranking-trend-summary,#patrolPage .patrol-map-narrative,#patrolPage .hf32-map-conclusion{border:0!important;background:rgba(255,255,255,.72)!important;color:var(--hf38-text-2)!important;border-radius:15px!important;box-shadow:none!important}

/* Management summary and priorities: compact grouped-list rhythm */
#patrolPage .hf30-command-brief,#patrolPage .hf32-command-brief,#patrolPage .patrol-leadership-summary{border:0!important;background:var(--hf38-group)!important;border-radius:18px!important;box-shadow:none!important}
#patrolPage .hf30-command-chip,#patrolPage .patrol-tag,#patrolPage .patrol-domain-chip{border:0!important;background:#fff!important;border-radius:999px!important;box-shadow:none!important}
#patrolPage .hf32-priority-list{overflow:hidden!important;border-radius:18px!important;background:var(--hf38-group)!important;padding:0 14px!important}
#patrolPage .hf32-priority-list article{border:0!important;border-radius:0!important;background:transparent!important;box-shadow:none!important;margin:0!important;padding:15px 4px!important;border-bottom:1px solid var(--hf38-line-soft)!important}
#patrolPage .hf32-priority-list article:last-child{border-bottom:0!important}
#patrolPage .hf32-priority-list article::before,#patrolPage .hf32-priority-list article::after{display:none!important}
#patrolPage .hf32-priority-list .hf32-priority-index{background:#fff!important;border:0!important;border-radius:10px!important;box-shadow:0 1px 2px rgba(0,0,0,.025)!important}
#patrolPage .hf32-priority-action{border-left:0!important;padding-left:4px!important}

/* ranking: one grouped list instead of many dashboard cards */
#patrolPage .patrol-ranking-board{border-radius:20px!important;background:#fff!important;overflow:hidden!important;border:1px solid var(--hf38-line-soft)!important;box-shadow:none!important;padding:0!important;gap:0!important}
#patrolPage .hf32-ranking-group{background:transparent!important;border:0!important;box-shadow:none!important;border-radius:0!important;padding:0 14px!important;margin:0!important}
#patrolPage .hf32-ranking-group>header{padding:16px 2px 10px!important;border-bottom:1px solid var(--hf38-line-soft)!important}
#patrolPage .patrol-ranking-row{border:0!important;border-radius:0!important;background:transparent!important;box-shadow:none!important;margin:0!important;border-bottom:1px solid var(--hf38-line-soft)!important}
#patrolPage .patrol-ranking-row:last-child{border-bottom:0!important}
#patrolPage .patrol-ranking-row:nth-child(-n+3),#patrolPage .patrol-ranking-row.critical{background:transparent!important;border-color:var(--hf38-line-soft)!important}
#patrolPage .patrol-ranking-place{background:var(--hf38-group-2)!important;color:#5e5e63!important;border:0!important;box-shadow:none!important}
#patrolPage .patrol-ranking-row.critical .patrol-ranking-place{background:#fff0ee!important;color:var(--hf38-danger)!important}
#patrolPage .patrol-ranking-metric{border:0!important;background:var(--hf38-group)!important;border-radius:11px!important;box-shadow:none!important}
#patrolPage .patrol-ranking-bar,#patrolPage .patrol-progress-track{background:#e9e9ed!important;box-shadow:none!important;height:8px!important}
#patrolPage .patrol-ranking-bar i,#patrolPage .patrol-progress-track>i{background:var(--hf38-accent)!important;box-shadow:none!important}
#patrolPage .patrol-ranking-row.mid .patrol-ranking-bar i,#patrolPage .patrol-ranking-row.slow .patrol-ranking-bar i{background:#c58a35!important}
#patrolPage .patrol-ranking-row.critical .patrol-ranking-bar i{background:#c7675d!important}
#patrolPage .patrol-ranking-status{border:0!important;border-radius:999px!important;background:var(--hf38-group-2)!important;box-shadow:none!important}

/* focus cards: calm surface, severity comes from tiny accent only */
#patrolPage .hf32-watch-card{border:1px solid var(--hf38-line-soft)!important;background:#fff!important;border-radius:18px!important;box-shadow:none!important}
#patrolPage .hf32-watch-card::before{width:3px!important;border-radius:3px!important;opacity:.65!important}
#patrolPage .hf32-watch-card p{border:0!important;border-radius:12px!important;background:var(--hf38-group)!important}
#patrolPage .hf32-watch-head>span,#patrolPage .hf32-watch-seq{background:var(--hf38-group-2)!important;border:0!important;border-radius:10px!important;box-shadow:none!important}

/* map: map stays primary; analysis panel behaves like an inset grouped sheet */
#patrolPage .patrol-map-canvas-shell,#patrolPage .patrol-map-canvas-wrap{border:1px solid var(--hf38-line-soft)!important;border-radius:20px!important;background:#fff!important;box-shadow:none!important;overflow:hidden!important}
#patrolPage .patrol-map-intelligence-panel{border:0!important;background:var(--hf38-group)!important;border-radius:20px!important;box-shadow:none!important}
#patrolPage .patrol-map-metric-strip>div,#patrolPage .patrol-map-priority-row,#patrolPage .patrol-map-rich-legend>div{border:0!important;background:#fff!important;border-radius:14px!important;box-shadow:none!important}
#patrolPage .patrol-map-filter-group,#patrolPage .patrol-map-actions{background:transparent!important;border:0!important;box-shadow:none!important}

/* Address module: same visual language, no separate dashboard personality */
.address-page .address-stats{gap:10px!important}.address-page .address-stats span{padding:15px 16px!important}
.address-page .address-map-tools,.address-page .address-result-actions,.address-page .address-export-actions{background:transparent!important;border:0!important;box-shadow:none!important}
.address-page .address-map-preview,.address-page .preview,.address-page .address-result-wrap{border:1px solid var(--hf38-line-soft)!important;border-radius:20px!important;background:#fff!important;box-shadow:none!important}
.address-page .address-summary,.address-page .address-clean-hint,.address-page .address-density-hint{border:0!important;background:var(--hf38-group)!important;border-radius:14px!important;color:var(--hf38-text-2)!important}

/* export workbench */
.preview,.export-panel{border-color:var(--hf38-line-soft)!important}.preview{background:var(--hf38-group-2)!important}.preview canvas{box-shadow:0 8px 26px rgba(0,0,0,.055)!important}.export-actions{background:transparent!important;border:0!important;padding:0!important}

@media(max-width:760px){
  .workspace,#patrolPage .workspace,.address-page .workspace{border-radius:20px!important}
  #patrolPage .patrol-domain-card,#patrolPage .patrol-panel,#patrolPage .patrol-ranking-hero-panel,#patrolPage .patrol-map-intelligence-panel{border-radius:18px!important}
  #patrolPage .patrol-ranking-board{border-radius:17px!important}
}

/* HF39 — unified visual hierarchy: airy, content-first, public-facing */
:root{
  --hf39-canvas:#f3f7f6;
  --hf39-surface:#ffffff;
  --hf39-wash:#f1f6f4;
  --hf39-wash-2:#e7f1ee;
  --hf39-ink:#17372f;
  --hf39-text:#344a43;
  --hf39-muted:#788984;
  --hf39-line:rgba(43,77,67,.10);
  --hf39-line-strong:rgba(43,77,67,.16);
  --hf39-accent:#256b56;
  --hf39-accent-soft:#dfeee9;
  --hf39-danger:#b95a50;
  --hf39-amber:#a56e24;
  --hf39-slate:#756f80;
  --hf39-radius-xl:30px;
  --hf39-radius-lg:22px;
  --hf39-radius-md:16px;
  --hf39-shadow:0 18px 52px rgba(36,69,59,.055)
}
html,body{background:linear-gradient(180deg,#f8fbfa 0%,var(--hf39-canvas) 36%,#edf4f2 100%)!important;color:var(--hf39-text)!important}
body{font-family:"Microsoft YaHei","PingFang SC","Noto Sans CJK SC","Segoe UI",sans-serif!important;letter-spacing:0!important}
.app-header{max-width:none!important;padding:17px max(24px,calc((100vw - 1500px)/2))!important;background:rgba(255,255,255,.88)!important;border-bottom:1px solid var(--hf39-line)!important;box-shadow:0 1px 0 rgba(255,255,255,.8)!important}
.brand-copy h1{font-size:25px!important;color:var(--hf39-ink)!important;font-weight:780!important;letter-spacing:-.035em!important}.brand-kicker{font-size:12px!important;letter-spacing:.08em!important;color:#719188!important}.brand-copy p{font-size:13px!important;color:var(--hf39-muted)!important;margin-top:3px!important}.product-edition{font-size:11px!important;padding:3px 8px!important;background:var(--hf39-accent-soft)!important;color:var(--hf39-accent)!important;border:0!important}
.mode-switch{background:rgba(57,83,75,.065)!important;padding:4px!important}.mode-switch-btn{height:40px!important;font-size:14px!important;font-weight:690!important}.mode-switch-btn.active{box-shadow:0 1px 5px rgba(31,57,49,.10)!important}
.app-shell{max-width:1500px!important;padding:26px 28px 72px!important;gap:30px!important}
.workspace,#patrolPage .workspace,.address-page .workspace{position:relative;overflow:hidden!important;padding:34px 38px 38px!important;border:0!important;border-radius:var(--hf39-radius-xl)!important;background:radial-gradient(circle at 98% -12%,rgba(72,137,117,.07),transparent 360px),var(--hf39-surface)!important;box-shadow:var(--hf39-shadow)!important}
.workspace::after{content:"";position:absolute;right:-120px;top:-150px;width:310px;height:310px;border-radius:50%;background:radial-gradient(circle,rgba(55,130,108,.055),rgba(55,130,108,0) 68%);pointer-events:none}
.section-head,#patrolPage .patrol-section-head{position:relative;z-index:1;display:grid!important;grid-template-columns:54px minmax(0,1fr)!important;column-gap:15px!important;row-gap:6px!important;align-items:start!important;margin:0 0 28px!important;padding:0!important;min-width:0!important}
.section-head .grow,#patrolPage .section-head .grow{min-width:0!important}.section-number,#patrolPage .patrol-section-number,#patrolPage .patrol-module-number{width:auto!important;height:auto!important;min-width:0!important;display:block!important;padding:7px 0 0!important;background:transparent!important;color:#82a99e!important;border-radius:0!important;font-size:13px!important;line-height:1!important;font-weight:800!important;letter-spacing:.16em!important;text-align:left!important;box-shadow:none!important}
.section-head h2,#patrolPage .patrol-section-head h2,.address-page .section-head h2{margin:0!important;color:var(--hf39-ink)!important;font-size:30px!important;line-height:1.16!important;font-weight:820!important;letter-spacing:-.045em!important}.patrol-hero .section-head h2{font-size:34px!important}.section-head p,#patrolPage .patrol-section-head p,.address-page .section-head p{margin-top:7px!important;max-width:850px!important;color:var(--hf39-muted)!important;font-size:14px!important;line-height:1.7!important;font-weight:500!important;text-wrap:pretty!important}
.patrol-module-head .patrol-module-actions,.address-map-head .address-map-tools,.address-result-head .address-result-actions{grid-column:2!important;display:flex!important;gap:8px!important;align-items:center!important;justify-content:flex-start!important;flex-wrap:wrap!important;margin:10px 0 0!important;min-width:0!important}.patrol-module-head>.patrol-schema-badge{position:absolute!important;right:0!important;top:3px!important}.patrol-module-head>.patrol-hidden-utility{display:none!important}
.help-chip,.patrol-schema-badge,.address-private-badge,.patrol-domain-chip{background:transparent!important;border:1px solid var(--hf39-line-strong)!important;color:#71837d!important;font-weight:650!important;box-shadow:none!important}
.btn,.filter,.review-choice,.map-view-btn,.date-preset{min-height:38px!important;border:0!important;border-radius:11px!important;background:#eef3f1!important;color:#41534d!important;box-shadow:none!important;font-weight:680!important}.btn:hover:not(:disabled),.filter:hover,.map-view-btn:hover,.date-preset:hover{background:#e7efec!important;transform:none!important;box-shadow:none!important}.btn.primary,.filter.active,.map-view-btn.active{background:var(--hf39-accent)!important;color:#fff!important}.btn.primary:hover:not(:disabled),.filter.active:hover,.map-view-btn.active:hover{background:#205e4d!important}.text-btn{color:var(--hf39-accent)!important}
/* analysis / address: title hierarchy before controls */
.analysis-context,.address-stats,.address-export-bar{border:0!important;background:var(--hf39-wash)!important;border-radius:var(--hf39-radius-lg)!important;box-shadow:none!important}.topic-card,.date-range-card{background:transparent!important;border:0!important}.address-input,.patrol-input,input,textarea,select{border-color:transparent!important;background:#f2f5f4!important;box-shadow:none!important}.address-input:focus,.patrol-input:focus,input:focus,textarea:focus,select:focus{border-color:rgba(37,107,86,.28)!important;outline:0!important;box-shadow:0 0 0 4px rgba(37,107,86,.08)!important}
.smart-panel,.address-map-panel .address-map-preview,.preview{border:0!important;border-radius:var(--hf39-radius-lg)!important;background:var(--hf39-wash)!important;box-shadow:none!important}.smart-panel{padding:22px!important}.smart-kicker{color:#759087!important}.smart-copy strong{font-size:22px!important;color:var(--hf39-ink)!important}.smart-copy p{line-height:1.7!important}.smart-check{border:0!important;background:#fff!important}
/* dashboard domains: two calm content zones */
#patrolPage .patrol-domain-overview{gap:26px!important;align-items:stretch!important}
#patrolPage .patrol-domain-card{padding:26px 28px 28px!important;border:0!important;border-radius:26px!important;background:linear-gradient(180deg,#f5f9f7 0%,#eef5f2 100%)!important;box-shadow:none!important}
#patrolPage .patrol-domain-head{align-items:flex-end!important;margin-bottom:20px!important}.patrol-domain-head small{font-size:12px!important;letter-spacing:.035em!important}.patrol-domain-head h3{font-size:26px!important;line-height:1.15!important;margin:5px 0 5px!important;color:var(--hf39-ink)!important;font-weight:820!important;letter-spacing:-.04em!important}.patrol-domain-head p{max-width:600px!important;font-size:13px!important;line-height:1.65!important}.patrol-domain-total{font-size:54px!important;line-height:.95!important;color:var(--hf39-accent)!important;letter-spacing:-.06em!important}.patrol-domain-total em{font-size:16px!important;margin-left:5px!important;color:#83938e!important}
#patrolPage .patrol-domain-section-label{margin:24px 0 10px!important;color:#789089!important;font-size:12px!important;font-weight:720!important;letter-spacing:.055em!important;text-transform:none!important}
#patrolPage .patrol-domain-metrics,#patrolPage .patrol-domain-daily{background:#fff!important;border:0!important;border-radius:19px!important;overflow:hidden!important;gap:0!important;padding:0!important;box-shadow:0 1px 0 rgba(255,255,255,.7)!important}
#patrolPage .patrol-domain-metrics article,#patrolPage .patrol-domain-daily article{min-height:108px!important;padding:18px 20px!important;border:0!important;border-right:1px solid var(--hf39-line)!important;border-bottom:1px solid var(--hf39-line)!important;background:transparent!important;border-radius:0!important;box-shadow:none!important}.patrol-domain-metrics.four article:nth-child(2n){border-right:0!important}.patrol-domain-metrics.four article:nth-last-child(-n+2){border-bottom:0!important}.patrol-domain-daily article:last-child{border-right:0!important}.patrol-domain-metrics article span,.patrol-domain-daily article span{font-size:13px!important;color:#788984!important}.patrol-domain-metrics article strong,.patrol-domain-daily article strong{font-size:31px!important;line-height:1.15!important;margin:8px 0 4px!important}.patrol-domain-metrics article small,.patrol-domain-daily article small{font-size:12px!important;line-height:1.45!important;color:#8b9995!important}
/* management summary as a quiet headline, not a dashboard card */
#patrolPage .patrol-leadership-summary,#patrolPage .hf30-command-brief,#patrolPage .hf32-command-brief{margin:26px 0 28px!important;padding:22px 26px!important;border:0!important;border-radius:22px!important;background:linear-gradient(120deg,#eaf3f0,#f4f8f7 70%)!important;box-shadow:none!important}.hf30-command-brief>strong,.hf32-command-brief>strong{display:block!important;max-width:1120px!important;font-size:19px!important;line-height:1.75!important;color:var(--hf39-ink)!important;font-weight:760!important;letter-spacing:-.015em!important}.hf30-command-kicker{font-size:11px!important;letter-spacing:.08em!important;color:#76958b!important}.hf30-command-actions{margin-top:13px!important;gap:7px!important}.hf30-command-chip{border:0!important;background:rgba(255,255,255,.72)!important;border-radius:999px!important;padding:7px 11px!important;box-shadow:none!important}
/* priorities: large numbered editorial rhythm inspired by presentation spacing, no card matrix */
.hf31-action-section-title{margin:30px 0 12px!important;align-items:end!important}.hf31-action-section-title b{font-size:22px!important;color:var(--hf39-ink)!important;letter-spacing:-.03em!important}.hf31-action-section-title small{font-size:13px!important;color:var(--hf39-muted)!important;margin-top:5px!important}.hf31-action-section-title>span{display:none!important}
#patrolPage .hf32-priority-list{display:grid!important;grid-template-columns:repeat(4,minmax(0,1fr))!important;gap:0!important;padding:12px 0 6px!important;border:0!important;border-radius:0!important;background:transparent!important;overflow:visible!important}
#patrolPage .hf32-priority-list article{display:grid!important;grid-template-columns:1fr!important;align-content:start!important;gap:8px!important;min-height:190px!important;padding:20px 28px!important;border:0!important;border-right:1px solid var(--hf39-line)!important;background:transparent!important}.hf32-priority-list article:last-child{border-right:0!important}.hf32-priority-no{font-size:44px!important;line-height:1!important;font-weight:350!important;color:#8faaa2!important;letter-spacing:-.06em!important}.hf32-priority-main{display:block!important}.hf32-priority-main>div{display:flex!important;flex-direction:column!important;gap:4px!important}.hf32-priority-main b{font-size:11px!important;letter-spacing:.06em!important;color:#82938e!important;font-weight:700!important}.hf32-priority-main strong{font-size:20px!important;line-height:1.25!important;color:var(--hf39-ink)!important;font-weight:800!important;letter-spacing:-.03em!important}.hf32-priority-main small{display:block!important;margin-top:8px!important;font-size:13px!important;line-height:1.6!important;color:var(--hf39-muted)!important}.hf32-priority-action{margin-top:auto!important;padding-top:12px!important;border-top:1px solid var(--hf39-line)!important;min-width:0!important}.hf32-priority-action span{display:block!important;font-size:11px!important;color:#8a9994!important;margin-bottom:4px!important}.hf32-priority-action b{font-size:13px!important;line-height:1.55!important;color:#3d544c!important;font-weight:700!important}
/* secondary panels breathe; titles do the grouping */
#patrolPage .patrol-panel{padding:25px 28px!important;border:0!important;background:var(--hf39-wash)!important;border-radius:24px!important;box-shadow:none!important}.patrol-panel-head{margin-bottom:18px!important;gap:12px!important}.patrol-panel-head h3{font-size:21px!important;line-height:1.25!important;color:var(--hf39-ink)!important;font-weight:790!important;letter-spacing:-.03em!important}.patrol-panel-head small{font-size:13px!important;line-height:1.6!important;color:var(--hf39-muted)!important}.patrol-eyebrow{font-size:11px!important;letter-spacing:.075em!important;color:#79958b!important}.patrol-structure-subtitle{font-size:13px!important;color:#657a73!important;margin:18px 0 10px!important}
/* ranking: overview is editorial, rows are a restrained list */
#patrolPage .patrol-ranking-hero-panel{background:transparent!important;padding:0!important;border-radius:0!important}.patrol-ranking-hero-panel>.patrol-panel-head{padding:0 0 10px!important}.patrol-ranking-executive{display:grid!important;grid-template-columns:repeat(4,minmax(0,1fr))!important;gap:0!important;margin:12px 0 26px!important;padding:18px 0!important;border-top:1px solid var(--hf39-line)!important;border-bottom:1px solid var(--hf39-line)!important}.patrol-ranking-executive-card{min-height:104px!important;padding:13px 24px!important;border:0!important;border-right:1px solid var(--hf39-line)!important;border-radius:0!important;background:transparent!important}.patrol-ranking-executive-card:last-child{border-right:0!important}.patrol-ranking-executive-card span{font-size:12px!important;color:#7f918b!important}.patrol-ranking-executive-card b{font-size:36px!important;line-height:1.1!important;margin:8px 0 4px!important;color:var(--hf39-ink)!important}.patrol-ranking-executive-card small{font-size:12px!important;color:#8e9b97!important;line-height:1.45!important}
#patrolPage .patrol-ranking-board{border:0!important;border-radius:24px!important;background:#fff!important;box-shadow:0 8px 28px rgba(37,68,59,.04)!important}.hf32-ranking-group{padding:0 20px!important}.hf32-ranking-group>header{padding:20px 4px 12px!important;background:transparent!important;border-bottom:1px solid var(--hf39-line)!important}.hf32-ranking-group>header b{font-size:15px!important;color:var(--hf39-ink)!important}.hf32-ranking-group>header span{font-size:12px!important;color:#87958f!important}.patrol-ranking-row{min-height:94px!important;padding:16px 5px!important;border-bottom:1px solid var(--hf39-line)!important}.patrol-ranking-place{background:transparent!important;color:#82a096!important;font-size:22px!important;font-weight:520!important}.patrol-ranking-person b{font-size:16px!important;color:var(--hf39-ink)!important}.patrol-ranking-person span{font-size:12px!important;color:#82918c!important}.patrol-ranking-metrics{gap:13px!important}.patrol-ranking-metric{padding:0!important;border:0!important;background:transparent!important;border-radius:0!important}.patrol-ranking-metric span{font-size:11px!important;color:#8c9995!important}.patrol-ranking-metric b{font-size:17px!important;margin-top:3px!important}.patrol-ranking-main{align-items:center!important}.patrol-ranking-bar{height:6px!important;background:#e8efec!important}.patrol-ranking-status{background:transparent!important;border:1px solid var(--hf39-line-strong)!important;color:#667b73!important}
/* watch: one large group, rows instead of cards */
#patrolPage .patrol-watch-list{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:0 34px!important;padding:0 20px!important;border-radius:24px!important;background:#fff!important;box-shadow:0 8px 28px rgba(37,68,59,.04)!important}.hf32-watch-card{min-height:184px!important;padding:22px 4px!important;border:0!important;border-bottom:1px solid var(--hf39-line)!important;border-radius:0!important;background:transparent!important;box-shadow:none!important}.hf32-watch-head{align-items:flex-start!important}.hf32-watch-head>span,.hf32-watch-seq{width:34px!important;height:34px!important;background:var(--hf39-accent-soft)!important;color:var(--hf39-accent)!important;border-radius:50%!important}.hf32-watch-head b{font-size:16px!important;line-height:1.5!important;color:var(--hf39-ink)!important}.hf32-watch-head small{font-size:12px!important;color:#81918c!important;line-height:1.5!important}.hf32-watch-card p{margin:12px 0 0!important;padding:0 0 0 46px!important;border:0!important;background:transparent!important;display:grid!important;grid-template-columns:58px minmax(0,1fr)!important;gap:8px!important}.hf32-watch-card p+ p{margin-top:7px!important}.hf32-watch-card p span{font-size:11px!important;color:#8a9994!important}.hf32-watch-card p b{font-size:13px!important;line-height:1.55!important;color:#455a53!important;font-weight:680!important}
/* maps: one large visual, supporting information stays quiet */
#patrolPage .patrol-project-intelligence-map,#patrolPage .patrol-store-intelligence-map{padding:22px!important;border:0!important;border-radius:26px!important;background:linear-gradient(180deg,#f3f7f5,#edf4f1)!important;box-shadow:none!important}.patrol-map-intelligence-grid{grid-template-columns:minmax(0,1.85fr) minmax(300px,.72fr)!important;gap:22px!important}.patrol-map-canvas-shell,.patrol-map-canvas-wrap{border:0!important;border-radius:22px!important;background:#fff!important;box-shadow:0 8px 30px rgba(34,65,55,.05)!important}.patrol-map-intelligence-panel{padding:22px!important;border:0!important;border-radius:22px!important;background:rgba(255,255,255,.78)!important}.patrol-map-metric-strip{display:grid!important;grid-template-columns:1fr 1fr!important;gap:0!important;background:#fff!important;border-radius:17px!important;overflow:hidden!important}.patrol-map-metric-strip article{border:0!important;border-right:1px solid var(--hf39-line)!important;border-bottom:1px solid var(--hf39-line)!important;border-radius:0!important;background:transparent!important}.patrol-map-metric-strip article:nth-child(2n){border-right:0!important}.patrol-map-metric-strip article:nth-last-child(-n+2){border-bottom:0!important}.patrol-map-priority-row{border:0!important;border-bottom:1px solid var(--hf39-line)!important;border-radius:0!important;background:transparent!important}.patrol-map-priority-row:last-child{border-bottom:0!important}.hf32-map-conclusion,.patrol-map-narrative{background:transparent!important;border:0!important;padding:14px 0 0!important}
/* output / compare sections continue the same calm rhythm */
.patrol-output-zone .patrol-panel,.patrol-compare-zone .patrol-panel{background:var(--hf39-wash)!important}.patrol-writing-actions,.patrol-card-export-controls,.address-export-actions,.export-actions{gap:8px!important}.patrol-writing-note,.patrol-import-status,.patrol-package-check,.match-summary{border:0!important;background:var(--hf39-wash)!important;color:#687d75!important}
/* address mode follows the same product language */
.address-mode,.address-page{background:transparent!important}.address-page .workspace{background:radial-gradient(circle at 98% -12%,rgba(72,137,117,.065),transparent 360px),#fff!important}.address-page .address-stats{display:grid!important;grid-template-columns:repeat(5,minmax(0,1fr))!important;padding:0!important;overflow:hidden!important;background:#fff!important;border:1px solid var(--hf39-line)!important}.address-stats>span{padding:18px 20px!important;border-right:1px solid var(--hf39-line)!important}.address-stats>span:last-child{border-right:0!important}.address-stats b{font-size:28px!important;color:var(--hf39-ink)!important}.address-stats small{font-size:12px!important;color:#84948f!important}.address-map-preview{padding:12px!important}.address-map-legend{gap:0!important;border:0!important;background:transparent!important}.address-map-legend>span{padding:12px 18px!important;border-right:1px solid var(--hf39-line)!important}.address-map-legend>span:last-child{border-right:0!important}
/* responsive: preserve hierarchy, never squeeze content out */
@media(max-width:1180px){
  .app-shell{max-width:100%!important;padding-left:20px!important;padding-right:20px!important}.workspace,#patrolPage .workspace,.address-page .workspace{padding:30px 28px 34px!important}
  #patrolPage .hf32-priority-list{grid-template-columns:repeat(2,minmax(0,1fr))!important}.hf32-priority-list article:nth-child(2n){border-right:0!important}.hf32-priority-list article:nth-child(-n+2){border-bottom:1px solid var(--hf39-line)!important}
  .patrol-map-intelligence-grid{grid-template-columns:1fr!important}.patrol-map-intelligence-panel{min-width:0!important}
  .address-page .address-stats{grid-template-columns:repeat(3,minmax(0,1fr))!important}.address-stats>span{border-bottom:1px solid var(--hf39-line)!important}
}
@media(max-width:820px){
  .app-header{padding-left:16px!important;padding-right:16px!important}.app-shell{padding:18px 12px 48px!important;gap:18px!important}.workspace,#patrolPage .workspace,.address-page .workspace{padding:24px 18px 28px!important;border-radius:24px!important}
  .section-head,#patrolPage .patrol-section-head{grid-template-columns:40px minmax(0,1fr)!important;column-gap:8px!important}.section-head h2,#patrolPage .patrol-section-head h2,.address-page .section-head h2{font-size:25px!important}.patrol-hero .section-head h2{font-size:28px!important}
  .patrol-module-head .patrol-module-actions,.address-map-head .address-map-tools,.address-result-head .address-result-actions{grid-column:1/-1!important;margin-top:12px!important}.patrol-module-head>.patrol-schema-badge{position:static!important;grid-column:2!important;justify-self:start!important}
  #patrolPage .patrol-domain-overview{grid-template-columns:1fr!important}.patrol-domain-total{font-size:44px!important}
  #patrolPage .hf32-priority-list{grid-template-columns:1fr!important}.hf32-priority-list article{min-height:0!important;padding:18px 4px!important;border-right:0!important;border-bottom:1px solid var(--hf39-line)!important}.hf32-priority-no{font-size:34px!important}
  .patrol-ranking-executive{grid-template-columns:repeat(2,minmax(0,1fr))!important}.patrol-ranking-executive-card:nth-child(2n){border-right:0!important}.patrol-ranking-executive-card:nth-child(-n+2){border-bottom:1px solid var(--hf39-line)!important}
  #patrolPage .patrol-watch-list{grid-template-columns:1fr!important;padding:0 14px!important}.hf32-watch-card{padding:18px 2px!important}
  .address-page .address-stats{grid-template-columns:repeat(2,minmax(0,1fr))!important}
}
@media(max-width:520px){
  .section-head,#patrolPage .patrol-section-head{grid-template-columns:1fr!important}.section-number{padding-top:0!important}.section-head h2,#patrolPage .patrol-section-head h2,.address-page .section-head h2{font-size:23px!important}.patrol-module-head .patrol-module-actions{grid-column:1!important}
  #patrolPage .patrol-domain-metrics.four{grid-template-columns:1fr 1fr!important}.patrol-domain-metrics article{min-height:98px!important;padding:15px!important}.patrol-domain-metrics article strong{font-size:27px!important}
  .patrol-ranking-executive{grid-template-columns:1fr!important}.patrol-ranking-executive-card{border-right:0!important;border-bottom:1px solid var(--hf39-line)!important}.patrol-ranking-executive-card:last-child{border-bottom:0!important}
  .address-page .address-stats{grid-template-columns:1fr!important}.address-stats>span{border-right:0!important}
}


/* HF40 — three modules, one product shell */
:root{
  --hf40-shell-width:1500px;
  --hf40-header-h:92px;
  --hf40-surface:#fff;
  --hf40-canvas:#f3f7f6;
  --hf40-ink:#17372f;
  --hf40-muted:#768983;
  --hf40-line:rgba(43,77,67,.10);
  --hf40-accent:#256b56;
}
/* identical product header in all modes — overrides legacy mode-specific rules */
body .app-header,body.address-mode .app-header,body.patrol-mode .app-header{
  max-width:none!important;width:100%!important;min-height:var(--hf40-header-h)!important;
  padding:16px max(24px,calc((100vw - var(--hf40-shell-width))/2))!important;
  display:grid!important;grid-template-columns:minmax(420px,1fr) auto!important;align-items:center!important;gap:22px!important;
  background:rgba(255,255,255,.90)!important;border:0!important;border-bottom:1px solid var(--hf40-line)!important;border-radius:0!important;
  box-shadow:0 1px 0 rgba(255,255,255,.85)!important;backdrop-filter:saturate(135%) blur(20px)!important;
  view-transition-name:app-header;
}
body .brand-group,body.address-mode .brand-group,body.patrol-mode .brand-group{gap:13px!important;min-width:0!important}
body .brand-logo,body.address-mode .brand-logo,body.patrol-mode .brand-logo{width:50px!important;height:50px!important;min-width:50px!important;border-radius:15px!important;background:#fff!important;border:1px solid rgba(43,77,67,.08)!important;box-shadow:0 6px 18px rgba(31,61,50,.075)!important}
body .brand-kicker,body.address-mode .brand-kicker,body.patrol-mode .brand-kicker{display:block!important;margin-bottom:2px!important;color:#719188!important;font-size:11.5px!important;font-weight:760!important;letter-spacing:.08em!important;text-shadow:none!important}
body .brand-copy h1,body.address-mode .brand-copy h1,body.address-mode #brandTitleText,body.patrol-mode .brand-copy h1{margin:0!important;color:var(--hf40-ink)!important;font-size:25px!important;line-height:1.2!important;font-weight:790!important;letter-spacing:-.035em!important;text-shadow:none!important;white-space:nowrap!important}
body .product-edition,body.address-mode .product-edition,body.patrol-mode .product-edition{display:inline-flex!important;margin-left:8px!important;padding:3px 8px!important;border:0!important;border-radius:999px!important;background:#e5f0ec!important;color:#286b55!important;font-size:11px!important;font-weight:760!important;letter-spacing:0!important;vertical-align:middle!important}
body .brand-copy p,body.address-mode .brand-copy p,body.address-mode #brandModeText,body.patrol-mode .brand-copy p{margin:3px 0 0!important;color:var(--hf40-muted)!important;font-size:13px!important;line-height:1.45!important;font-weight:520!important;text-shadow:none!important;white-space:nowrap!important}
body .mode-switch,body.address-mode .mode-switch,body.patrol-mode .mode-switch{justify-self:end!important;width:390px!important;max-width:100%!important;display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:4px!important;padding:4px!important;border:0!important;border-radius:15px!important;background:rgba(57,83,75,.065)!important;box-shadow:inset 0 0 0 1px rgba(43,77,67,.055)!important;overflow:hidden!important}
body .mode-switch-btn,body.address-mode .mode-switch-btn,body.patrol-mode .mode-switch-btn{position:relative!important;width:100%!important;min-width:0!important;min-height:40px!important;height:40px!important;padding:8px 10px!important;border:0!important;border-radius:11px!important;background:transparent!important;color:#5b6f68!important;font-size:14px!important;font-weight:680!important;letter-spacing:0!important;box-shadow:none!important;text-shadow:none!important;transition:background .18s ease,color .18s ease,box-shadow .18s ease!important}
body .mode-switch-btn:hover,body.address-mode .mode-switch-btn:hover,body.patrol-mode .mode-switch-btn:hover{background:rgba(255,255,255,.62)!important;color:#315e4e!important}
body .mode-switch-btn.active,body.address-mode .mode-switch-btn.active,body.patrol-mode .mode-switch-btn.active,body.patrol-mode.patrol-public-view .mode-switch-btn.active{background:#fff!important;color:#1f5a45!important;box-shadow:0 1px 5px rgba(31,57,49,.10)!important}
body .mode-switch-btn.active::after,body.address-mode .mode-switch-btn.active::after,body.patrol-mode .mode-switch-btn.active::after{display:none!important}

/* identical page origin, rhythm and first-section hierarchy */
body .app-shell,body .address-page,body #patrolPage{max-width:var(--hf40-shell-width)!important;width:100%!important;margin:0 auto!important;padding:26px 28px 72px!important;gap:28px!important}
.mode-page:not(.hidden){view-transition-name:module-content}
.mode-page{transform-origin:50% 0}
.module-entry{min-height:0!important}
body .workspace,body .address-page .workspace,body #patrolPage .workspace{margin:0 auto!important;padding:34px 38px 38px!important;border:0!important;border-radius:30px!important;background:radial-gradient(circle at 98% -12%,rgba(72,137,117,.055),transparent 360px),#fff!important;box-shadow:0 16px 48px rgba(36,69,59,.05)!important}
body .section-head,body .address-page .section-head,body #patrolPage .patrol-section-head{display:grid!important;grid-template-columns:54px minmax(0,1fr)!important;column-gap:15px!important;row-gap:7px!important;align-items:start!important;margin:0 0 28px!important;padding:0!important}
body .section-head h2,body .address-page .section-head h2,body #patrolPage .patrol-section-head h2,body #patrolPage .patrol-hero .section-head h2{margin:0!important;color:var(--hf40-ink)!important;font-size:30px!important;line-height:1.16!important;font-weight:810!important;letter-spacing:-.045em!important}
body .section-head p,body .address-page .section-head p,body #patrolPage .patrol-section-head p{margin:7px 0 0!important;max-width:880px!important;color:var(--hf40-muted)!important;font-size:14px!important;line-height:1.68!important;font-weight:500!important}
body .section-number,body #patrolPage .section-number{display:block!important;width:auto!important;height:auto!important;min-width:0!important;padding:7px 0 0!important;border:0!important;border-radius:0!important;background:transparent!important;color:#82a99e!important;box-shadow:none!important;font-size:13px!important;line-height:1!important;font-weight:800!important;letter-spacing:.16em!important;text-align:left!important}
.address-private-badge{display:none!important}

/* entry panels share the same calm input grammar */
.module-entry .input-actions{margin-top:14px!important}
.module-entry textarea{border:0!important;border-radius:18px!important;background:#f2f5f4!important;box-shadow:inset 0 0 0 1px rgba(43,77,67,.055)!important}
.module-entry textarea:focus{box-shadow:0 0 0 4px rgba(37,107,86,.075),inset 0 0 0 1px rgba(37,107,86,.20)!important}
.address-clean-hint{margin:12px 0 0!important;padding:0!important;border:0!important;background:transparent!important;color:#82928d!important;font-size:12px!important;line-height:1.6!important}
/* patrol entry no longer behaves like a different landing page */
#patrolPage .patrol-import-grid{grid-template-columns:1fr!important;gap:14px!important}
#patrolPage .patrol-one-paste-card{padding:0!important;border:0!important;background:transparent!important;box-shadow:none!important}
#patrolPage .patrol-one-paste-head{margin-bottom:12px!important}
#patrolPage .patrol-one-paste-head strong{font-size:16px!important;color:var(--hf40-ink)!important}
#patrolPage .patrol-one-paste-head small{display:block!important;margin-top:4px!important;max-width:900px!important;color:#80908a!important;line-height:1.6!important}
#patrolPage .patrol-contract-card{display:grid!important;grid-template-columns:repeat(4,minmax(0,1fr))!important;gap:0!important;margin-top:4px!important;padding:0!important;border:0!important;border-radius:18px!important;background:#f2f6f4!important;overflow:hidden!important;box-shadow:none!important}
#patrolPage .patrol-contract-card>strong{display:none!important}
#patrolPage .patrol-contract-card>div{padding:15px 18px!important;border:0!important;border-right:1px solid var(--hf40-line)!important;background:transparent!important}
#patrolPage .patrol-contract-card>div:last-child{border-right:0!important}
#patrolPage .patrol-contract-card span{display:block!important;margin-bottom:5px!important;color:#82928d!important;font-size:11px!important;font-weight:700!important}
#patrolPage .patrol-contract-card b{display:block!important;color:#465b54!important;font-size:12px!important;line-height:1.55!important;font-weight:650!important}

/* operation rows live in the same secondary layer across modes */
body .patrol-module-head .patrol-module-actions,body .address-map-head .address-map-tools,body .address-result-head .address-result-actions{grid-column:2!important;margin:10px 0 0!important;display:flex!important;flex-wrap:wrap!important;gap:8px!important;align-items:center!important;justify-content:flex-start!important}
body .btn,body .filter,body .review-choice,body .map-view-btn,body .date-preset{min-height:38px!important;border:0!important;border-radius:11px!important;box-shadow:none!important;font-weight:670!important}
body .btn.primary,body .filter.active,body .map-view-btn.active{background:var(--hf40-accent)!important;color:#fff!important}

/* view-transition makes mode switching feel like changing views, not websites */
@supports(view-transition-name:none){
  ::view-transition-old(module-content){animation:hf40-out .16s cubic-bezier(.4,0,1,1) both}
  ::view-transition-new(module-content){animation:hf40-in .24s cubic-bezier(.2,.8,.2,1) both}
  ::view-transition-old(app-header),::view-transition-new(app-header){animation-duration:.12s}
}
@keyframes hf40-out{to{opacity:0;transform:translateY(-5px) scale(.997)}}
@keyframes hf40-in{from{opacity:0;transform:translateY(8px) scale(.997)}to{opacity:1;transform:none}}
html.mode-fallback-switch .mode-page:not(.hidden){animation:hf40-in .22s ease both}
@media(prefers-reduced-motion:reduce){.mode-switch-btn,.mode-page{transition:none!important;animation:none!important}}

@media(max-width:980px){
 body .app-header,body.address-mode .app-header,body.patrol-mode .app-header{position:relative!important;grid-template-columns:1fr!important;padding:14px 18px!important;gap:12px!important}
 body .mode-switch,body.address-mode .mode-switch,body.patrol-mode .mode-switch{width:100%!important;justify-self:stretch!important}
 body .brand-copy h1,body.address-mode .brand-copy h1,body.patrol-mode .brand-copy h1{font-size:23px!important}
 body .brand-copy p,body.address-mode .brand-copy p,body.patrol-mode .brand-copy p{white-space:normal!important}
 #patrolPage .patrol-contract-card{grid-template-columns:repeat(2,minmax(0,1fr))!important}
 #patrolPage .patrol-contract-card>div:nth-child(2){border-right:0!important}
 #patrolPage .patrol-contract-card>div:nth-child(-n+2){border-bottom:1px solid var(--hf40-line)!important}
}
@media(max-width:600px){
 body .app-header,body.address-mode .app-header,body.patrol-mode .app-header{padding:12px!important}
 body .brand-copy h1,body.address-mode .brand-copy h1,body.patrol-mode .brand-copy h1{font-size:19px!important;white-space:normal!important}
 body .mode-switch-btn,body.address-mode .mode-switch-btn,body.patrol-mode .mode-switch-btn{font-size:12px!important;padding:8px 5px!important}
 body .app-shell,body .address-page,body #patrolPage{padding:18px 12px 48px!important;gap:18px!important}
 body .workspace,body .address-page .workspace,body #patrolPage .workspace{padding:24px 18px 28px!important;border-radius:24px!important}
 body .section-head,body .address-page .section-head,body #patrolPage .patrol-section-head{grid-template-columns:1fr!important}
 body .section-head h2,body .address-page .section-head h2,body #patrolPage .patrol-section-head h2{font-size:24px!important}
 #patrolPage .patrol-contract-card{grid-template-columns:1fr!important}
 #patrolPage .patrol-contract-card>div{border-right:0!important;border-bottom:1px solid var(--hf40-line)!important}
 #patrolPage .patrol-contract-card>div:last-child{border-bottom:0!important}
}

/* Smooth interaction + natural hierarchy + ranking redesign */
:root{
  --hf41-surface:#fbfcfb;
  --hf41-surface-2:#f4f8f5;
  --hf41-line:#dde7e1;
  --hf41-line-soft:#e8eeea;
  --hf41-ink:#1f4034;
  --hf41-muted:#677972;
  --hf41-accent:#35795a;
  --hf41-accent-soft:#edf5f0;
  --hf41-warm:#f8f3ec;
  --hf41-shadow:0 10px 26px rgba(33,65,52,.05);
}

::selection{background:rgba(53,121,90,.12);color:inherit}
button,.btn,.text-btn,.mode-switch-btn,.filter,.review-choice,.review-clear,
.advanced-tools summary,.export-options summary,.more-info summary,.match-details summary,
#patrolPage .patrol-section-nav button,#patrolPage .patrol-map-filter-group button,
#patrolPage .patrol-map-search-box button,#patrolPage .patrol-map-actions button,
#patrolPage .patrol-store-ranking-actions button,#patrolPage .patrol-module-actions button{
  -webkit-user-select:none!important;user-select:none!important;-webkit-touch-callout:none;
  -webkit-tap-highlight-color:transparent!important;
}
button,.btn,.text-btn,.mode-switch-btn,.filter,.review-choice,.advanced-tools summary,.export-options summary,.more-info summary,
#patrolPage .patrol-section-nav button,#patrolPage .patrol-map-filter-group button,#patrolPage .patrol-map-search-box button{
  transition:transform .18s cubic-bezier(.22,1,.36,1),box-shadow .2s ease,background .18s ease,border-color .18s ease,color .18s ease!important;
  backface-visibility:hidden;
}
button:active,.btn:active,.text-btn:active,.mode-switch-btn:active,.filter:active,.review-choice:active,
.advanced-tools summary:active,.export-options summary:active,.more-info summary:active,
#patrolPage .patrol-section-nav button:active,#patrolPage .patrol-map-filter-group button:active,#patrolPage .patrol-map-search-box button:active{
  transform:scale(.985)!important;
}
.workspace,.patrol-panel,.export-options,.advanced-tools,.more-info,.preview,.table-wrap{overflow:hidden!important}
.section-head h2,.section-head p,.patrol-panel-head h3,.patrol-panel-head small,#patrolPage h2,#patrolPage h3{text-wrap:pretty;overflow-wrap:break-word}

/* Analysis/address export settings: calmer, no accidental blue selection */
.advanced-tools,.export-options,.more-info{
  border:1px solid var(--hf41-line)!important;
  border-radius:20px!important;
  background:linear-gradient(180deg,#fcfdfc,#f8fbf9)!important;
  box-shadow:0 6px 18px rgba(29,57,45,.03)!important;
}
.advanced-tools summary,.export-options summary,.more-info summary{
  position:relative;
  display:flex!important;align-items:center;gap:10px;
  min-height:52px;padding:14px 18px!important;
  color:#335248!important;font-size:14px!important;font-weight:800!important;
  background:rgba(248,251,249,.9)!important;
}
.advanced-tools summary::-webkit-details-marker,.export-options summary::-webkit-details-marker,.more-info summary::-webkit-details-marker{display:none}
.advanced-tools summary::before,.export-options summary::before,.more-info summary::before{
  content:'›';display:inline-grid;place-items:center;width:20px;height:20px;border-radius:10px;
  background:#edf4ef;color:#3b6d56;font-size:18px;line-height:1;transform:rotate(90deg);transition:transform .18s ease;
}
.advanced-tools[open] summary::before,.export-options[open] summary::before,.more-info[open] summary::before{transform:rotate(270deg)}
.export-settings{grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:14px!important;padding:4px 18px 18px!important}
.export-settings label{gap:8px!important;color:#6a7b74!important;font-size:13px!important;font-weight:700!important}
.export-settings input,.export-settings select{
  min-height:56px!important;border-radius:16px!important;border:1px solid var(--hf41-line)!important;background:#fff!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.9)!important;color:#28453a!important;font-weight:700!important;padding:12px 14px!important;
}
.preview{background:linear-gradient(180deg,#eef3f0,#edf4f1)!important;border-radius:20px!important;padding:14px!important}
.preview canvas{border-radius:16px!important}
@media(max-width:900px){.export-settings{grid-template-columns:1fr!important}}

/* Patrol page: more natural section rhythm */
#patrolPage{background:linear-gradient(180deg,#f5f8f6 0%,#f1f5f2 100%)!important}
#patrolPage .workspace{
  background:linear-gradient(180deg,rgba(255,255,255,.985),rgba(251,253,252,.975))!important;
  border-color:#dbe6e0!important;box-shadow:0 16px 40px rgba(28,58,45,.06)!important;border-radius:30px!important;
}
#patrolPage .patrol-section-head{margin-bottom:22px!important}
#patrolPage .patrol-section-head .section-number{
  width:42px!important;height:42px!important;min-width:42px!important;border-radius:14px!important;
  background:linear-gradient(180deg,#eef5f0,#e6f0ea)!important;color:#2f6f51!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.95),0 3px 10px rgba(34,74,57,.05)!important;
}
#patrolPage .patrol-section-head h2{font-size:30px!important;letter-spacing:-.03em!important;font-weight:860!important;color:var(--hf41-ink)!important}
#patrolPage .patrol-section-head p,#patrolPage .patrol-panel-head small{font-size:14px!important;line-height:1.75!important;color:var(--hf41-muted)!important}
#patrolPage .patrol-panel{
  border:1px solid var(--hf41-line)!important;border-radius:24px!important;background:linear-gradient(180deg,#fff,#fbfcfb)!important;
  box-shadow:0 8px 24px rgba(32,64,49,.04)!important;
}
#patrolPage .patrol-panel-head h3{font-size:23px!important;line-height:1.35!important;letter-spacing:-.02em!important;color:var(--hf41-ink)!important}
#patrolPage .patrol-schema-badge,#patrolPage #patrolProjectMapStatus,#patrolPage #patrolStoreMapStatus{
  background:#eef5f0!important;border:1px solid #d9e7de!important;color:#346750!important;border-radius:999px!important;
}
#patrolPage .btn{min-height:40px!important;border-radius:14px!important;font-weight:760!important}
#patrolPage .btn.primary{background:linear-gradient(135deg,#347a59,#2c674b)!important;border-color:transparent!important;box-shadow:0 10px 20px rgba(46,102,76,.18)!important}
#patrolPage .btn.small{min-height:36px!important;border-radius:12px!important}

/* Priority overview: replace giant sparse strip with readable cards */
.hf31-action-section-title{margin:26px 0 14px!important;align-items:flex-end!important}
.hf31-action-section-title b{font-size:22px!important;color:var(--hf41-ink)!important;letter-spacing:-.03em!important}
.hf31-action-section-title small{font-size:13px!important;color:var(--hf41-muted)!important;line-height:1.65!important;margin-top:6px!important}
#patrolPage .hf32-priority-list{
  display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:16px!important;
  padding:0!important;border:0!important;background:transparent!important;overflow:visible!important;
}
#patrolPage .hf32-priority-list article{
  display:grid!important;grid-template-columns:54px minmax(0,1fr)!important;gap:12px 16px!important;align-content:start!important;
  min-height:0!important;padding:18px 18px 16px!important;border:1px solid var(--hf41-line)!important;border-radius:22px!important;
  background:linear-gradient(180deg,#fff,#fbfcfb)!important;box-shadow:var(--hf41-shadow)!important;
}
#patrolPage .hf32-priority-list article[data-priority="1"]{background:linear-gradient(180deg,#fffaf7,#fff)!important;border-color:#ecd9d2!important}
#patrolPage .hf32-priority-list article[data-priority="2"]{background:linear-gradient(180deg,#fffdf7,#fff)!important}
#patrolPage .hf32-priority-list article[data-priority="3"],#patrolPage .hf32-priority-list article[data-priority="4"]{background:linear-gradient(180deg,#fcfdfc,#fff)!important}
#patrolPage .hf32-priority-no{
  width:54px!important;height:54px!important;display:grid!important;place-items:center!important;
  border-radius:18px!important;background:var(--hf41-accent-soft)!important;color:#326d51!important;
  font-size:22px!important;font-weight:850!important;line-height:1!important;letter-spacing:0!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.95)!important;
}
#patrolPage .hf32-priority-list article[data-priority="1"] .hf32-priority-no{background:#faece8!important;color:#a14f41!important}
#patrolPage .hf32-priority-main{display:block!important;padding-top:2px!important}
#patrolPage .hf32-priority-main>div{display:flex!important;flex-direction:column!important;align-items:flex-start!important;gap:4px!important}
#patrolPage .hf32-priority-main b{font-size:11px!important;letter-spacing:.08em!important;color:#80918a!important;font-weight:800!important}
#patrolPage .hf32-priority-main strong{font-size:20px!important;line-height:1.3!important;color:var(--hf41-ink)!important;font-weight:840!important;letter-spacing:-.02em!important}
#patrolPage .hf32-priority-main small{margin-top:4px!important;font-size:13px!important;line-height:1.65!important;color:var(--hf41-muted)!important}
#patrolPage .hf32-priority-action{
  grid-column:1/-1!important;margin-top:2px!important;padding:12px 14px!important;border:0!important;border-radius:16px!important;
  background:linear-gradient(180deg,#f4f8f5,#f1f6f3)!important;
}
#patrolPage .hf32-priority-action span{display:block!important;font-size:11px!important;color:#8a9a93!important;letter-spacing:.06em!important;margin-bottom:4px!important}
#patrolPage .hf32-priority-action b{display:block!important;font-size:13px!important;line-height:1.65!important;color:#3d564c!important;font-weight:700!important}

/* Ranking board: make it look like a clean dashboard rather than scattered blocks */
#patrolPage .patrol-ranking-executive{gap:14px!important}
#patrolPage .patrol-ranking-executive-card{
  min-height:96px!important;padding:16px 18px!important;border:1px solid var(--hf41-line)!important;border-radius:20px!important;
  background:linear-gradient(180deg,#fff,#fbfcfb)!important;box-shadow:0 8px 22px rgba(33,64,51,.04)!important;
}
#patrolPage .patrol-ranking-executive-card span{font-size:12px!important;color:#7d8c86!important;letter-spacing:.04em!important}
#patrolPage .patrol-ranking-executive-card b{font-size:30px!important;line-height:1.05!important;color:var(--hf41-ink)!important;letter-spacing:-.03em!important}
#patrolPage .patrol-ranking-executive-card small{font-size:12px!important;line-height:1.55!important;color:var(--hf41-muted)!important}
#patrolPage .patrol-ranking-board.no-history{display:grid!important;gap:16px!important}
#patrolPage .patrol-ranking-board.no-history .patrol-ranking-row{
  display:grid!important;grid-template-columns:72px minmax(210px,.92fr) minmax(0,1.25fr)!important;
  grid-template-areas:
    'place person main'
    'place metrics main'!important;
  gap:14px 18px!important;padding:18px 20px!important;max-width:100%!important;
  border:1px solid var(--hf41-line)!important;border-radius:24px!important;background:linear-gradient(180deg,#fff,#fbfcfb)!important;
  box-shadow:var(--hf41-shadow)!important;
}
#patrolPage .patrol-ranking-board.no-history .patrol-ranking-row.critical{border-color:#ecd6d0!important;background:linear-gradient(180deg,#fff9f7,#fff)!important}
#patrolPage .patrol-ranking-board.no-history .patrol-ranking-row.mid,
#patrolPage .patrol-ranking-board.no-history .patrol-ranking-row.near,
#patrolPage .patrol-ranking-board.no-history .patrol-ranking-row.slow{border-color:#eadfcb!important;background:linear-gradient(180deg,#fffdf8,#fff)!important}
#patrolPage .patrol-ranking-board.no-history .patrol-ranking-row.good{border-color:#dce8e1!important}
#patrolPage .patrol-ranking-board.no-history .patrol-ranking-place{
  grid-area:place!important;align-self:stretch!important;display:grid!important;place-items:center!important;
  width:72px!important;min-height:100%!important;border-radius:22px!important;background:linear-gradient(180deg,#eff5f1,#e7f0ea)!important;
  color:#315f49!important;font-size:28px!important;font-weight:850!important;box-shadow:inset 0 1px 0 rgba(255,255,255,.95)!important;
}
#patrolPage .patrol-ranking-board.no-history .patrol-ranking-person{grid-area:person!important;display:flex!important;flex-direction:column!important;justify-content:center!important;gap:5px!important;padding-top:4px!important}
#patrolPage .patrol-ranking-board.no-history .patrol-ranking-person b{font-size:22px!important;line-height:1.25!important;color:var(--hf41-ink)!important;font-weight:850!important;overflow:visible!important;text-overflow:clip!important;white-space:normal!important}
#patrolPage .patrol-ranking-board.no-history .patrol-ranking-person span{font-size:13px!important;color:#82918b!important;font-weight:700!important;white-space:normal!important}
#patrolPage .patrol-ranking-board.no-history .patrol-ranking-person small{font-size:12px!important;color:var(--hf41-muted)!important;line-height:1.6!important;white-space:normal!important}
#patrolPage .patrol-ranking-board.no-history .patrol-ranking-metrics{
  grid-area:metrics!important;display:grid!important;grid-template-columns:repeat(4,minmax(0,1fr))!important;gap:10px!important;
}
#patrolPage .patrol-ranking-board.no-history .patrol-ranking-metric{
  padding:12px 10px!important;border:1px solid var(--hf41-line-soft)!important;border-radius:16px!important;background:#f6f9f7!important;text-align:center!important;
}
#patrolPage .patrol-ranking-board.no-history .patrol-ranking-metric span{display:block!important;font-size:11px!important;color:#8a9993!important;letter-spacing:.04em!important;white-space:normal!important}
#patrolPage .patrol-ranking-board.no-history .patrol-ranking-metric b{display:block!important;margin-top:4px!important;font-size:24px!important;line-height:1!important;color:#244838!important;white-space:nowrap!important}
#patrolPage .patrol-ranking-board.no-history .patrol-ranking-metric.good b{color:#2e7755!important}
#patrolPage .patrol-ranking-board.no-history .patrol-ranking-metric.warn b{color:#996825!important}
#patrolPage .patrol-ranking-board.no-history .patrol-ranking-metric.danger b{color:#b25545!important}
#patrolPage .patrol-ranking-board.no-history .patrol-ranking-main{
  grid-area:main!important;display:grid!important;grid-template-columns:minmax(0,1fr) auto!important;align-items:center!important;gap:16px!important;
  padding-left:18px!important;border-left:1px solid var(--hf41-line-soft)!important;
}
#patrolPage .patrol-ranking-board.no-history .patrol-ranking-bar{height:12px!important;border-radius:999px!important;background:#edf2ef!important;overflow:hidden!important}
#patrolPage .patrol-ranking-board.no-history .patrol-ranking-bar i{display:block!important;height:100%!important;border-radius:999px!important;background:linear-gradient(90deg,#3a815f,#2f7051)!important}
#patrolPage .patrol-ranking-board.no-history .patrol-ranking-rate{max-width:none!important;text-align:right!important}
#patrolPage .patrol-ranking-board.no-history .patrol-ranking-rate strong{display:block!important;font-size:34px!important;line-height:1!important;color:var(--hf41-ink)!important;letter-spacing:-.04em!important}
#patrolPage .patrol-ranking-board.no-history .patrol-ranking-rate span{display:block!important;margin-top:5px!important;font-size:12px!important;color:var(--hf41-muted)!important;white-space:normal!important}

/* Keep content inside cards and give sections a softer natural backdrop */
#patrolPage .patrol-progress-card,#patrolPage .patrol-domain-card,#patrolPage .patrol-command-summary-item,
#patrolPage .patrol-map-intelligence-panel,#patrolPage .patrol-map-canvas-shell,#patrolPage .patrol-map-reading-hint,
#patrolPage .patrol-map-priority-row,.address-page .address-summary,.address-page .address-clean-hint,.address-page .address-density-hint{
  border-radius:20px!important;
}
#patrolPage .patrol-map-intelligence-panel{background:linear-gradient(180deg,#f8fbf9,#f5f9f7)!important;border-color:var(--hf41-line)!important}
#patrolPage .patrol-map-canvas-shell{background:#f1f6f3!important}

@media(max-width:1180px){
  #patrolPage .hf32-priority-list{grid-template-columns:1fr!important}
  #patrolPage .patrol-ranking-board.no-history .patrol-ranking-row{
    grid-template-columns:68px minmax(0,1fr)!important;
    grid-template-areas:
      'place person'
      'metrics metrics'
      'main main'!important;
  }
  #patrolPage .patrol-ranking-board.no-history .patrol-ranking-main{padding-left:0!important;border-left:0!important;padding-top:2px!important}
}
@media(max-width:760px){
  #patrolPage .patrol-section-head h2{font-size:24px!important}
  #patrolPage .patrol-panel-head h3{font-size:20px!important}
  #patrolPage .patrol-ranking-board.no-history .patrol-ranking-metrics{grid-template-columns:repeat(2,minmax(0,1fr))!important}
  #patrolPage .patrol-ranking-board.no-history .patrol-ranking-place{width:58px!important;font-size:24px!important;border-radius:18px!important}
  #patrolPage .patrol-ranking-board.no-history .patrol-ranking-person b{font-size:18px!important}
  #patrolPage .patrol-ranking-board.no-history .patrol-ranking-rate strong{font-size:28px!important}
}
@media(max-width:600px){
  #patrolPage .workspace{border-radius:24px!important}
  #patrolPage .hf32-priority-list article{padding:16px!important}
  #patrolPage .patrol-ranking-board.no-history .patrol-ranking-row{padding:15px 14px!important;border-radius:20px!important}
}


/* HF42 | production visual refinement: clearer hierarchy, flatter ranking board, map-first layout */
:root{
  --hf42-ink:#183b2e;
  --hf42-body:#43594f;
  --hf42-muted:#718178;
  --hf42-line:rgba(52,84,69,.12);
  --hf42-line-strong:rgba(52,84,69,.18);
  --hf42-green:#347a59;
  --hf42-canvas:#f3f6f4;
}

/* Native-feeling controls: no accidental text selection, retained keyboard focus. */
button,.btn,.text-btn,.mode-switch-btn,.filter,.review-choice,
.advanced-tools summary,.export-options summary,.more-info summary,.match-details summary,
.date-preset,.map-view-btn,.count-badge-toggle,#patrolPage .patrol-section-nav button,
#patrolPage .patrol-map-filter-group button,#patrolPage .patrol-map-search-box button,
#patrolPage .patrol-map-actions button,#patrolPage .patrol-store-ranking-actions button,
#patrolPage .patrol-module-actions button{
  cursor:pointer;touch-action:manipulation;-webkit-tap-highlight-color:transparent!important;
  -webkit-user-select:none!important;user-select:none!important;
}
button:focus-visible,.btn:focus-visible,.text-btn:focus-visible,.mode-switch-btn:focus-visible,
.advanced-tools summary:focus-visible,.export-options summary:focus-visible,.more-info summary:focus-visible,
.map-view-btn:focus-visible,.date-preset:focus-visible,#patrolPage .patrol-section-nav button:focus-visible,
#patrolPage .patrol-map-filter-group button:focus-visible,#patrolPage .patrol-map-search-box button:focus-visible{
  outline:3px solid rgba(52,122,89,.20)!important;outline-offset:2px!important;
}

/* Editorial section numbering and title hierarchy: numbers guide scanning instead of becoming cards. */
#patrolPage .patrol-section-head{
  grid-template-columns:58px minmax(0,1fr) auto!important;
  column-gap:15px!important;row-gap:6px!important;align-items:start!important;margin-bottom:28px!important;
}
#patrolPage .patrol-section-head .section-number{
  width:auto!important;height:auto!important;min-width:0!important;border:0!important;border-radius:0!important;
  background:transparent!important;box-shadow:none!important;padding:7px 0 0!important;margin:0!important;
  color:#84988e!important;font-size:15px!important;font-weight:800!important;letter-spacing:.10em!important;
  font-variant-numeric:tabular-nums!important;
}
#patrolPage .patrol-section-head h2{
  margin:0 0 6px!important;font-size:31px!important;line-height:1.18!important;font-weight:880!important;
  letter-spacing:-.035em!important;color:var(--hf42-ink)!important;text-wrap:balance!important;
}
#patrolPage .patrol-section-head p{
  margin:0!important;max-width:900px!important;font-size:14px!important;line-height:1.72!important;
  color:var(--hf42-muted)!important;text-wrap:pretty!important;
}
#patrolPage .patrol-panel-head h3{
  font-size:20px!important;line-height:1.28!important;font-weight:840!important;letter-spacing:-.025em!important;
  color:var(--hf42-ink)!important;text-wrap:balance!important;
}
#patrolPage .patrol-panel-head small{font-size:13px!important;line-height:1.65!important;color:var(--hf42-muted)!important;text-wrap:pretty!important}
#patrolPage .patrol-section-head>*,#patrolPage .patrol-panel-head>*,#patrolPage .patrol-ranking-row>*,
#patrolPage .patrol-map-intelligence-layout>*,#patrolPage .patrol-map-intelligence-panel>*{min-width:0!important;max-width:100%!important;box-sizing:border-box!important}

/* Responsibility progress: one coherent ranking surface, not a stack of person cards. */
#patrolPage .patrol-ranking-hero-panel{
  padding:28px 30px 30px!important;border:0!important;border-radius:28px!important;background:#fff!important;
  box-shadow:0 10px 34px rgba(34,65,52,.045)!important;
}
#patrolPage .patrol-ranking-executive{
  display:grid!important;grid-template-columns:repeat(4,minmax(0,1fr))!important;gap:1px!important;
  overflow:hidden!important;margin:18px 0 16px!important;border:1px solid var(--hf42-line)!important;
  border-radius:20px!important;background:var(--hf42-line)!important;
}
#patrolPage .patrol-ranking-executive-card{
  min-height:88px!important;padding:16px 18px!important;border:0!important;border-radius:0!important;background:#fbfcfb!important;
  box-shadow:none!important;display:flex!important;flex-direction:column!important;justify-content:center!important;gap:5px!important;
}
#patrolPage .patrol-ranking-executive-card span{font-size:11.5px!important;color:#819089!important;letter-spacing:.035em!important}
#patrolPage .patrol-ranking-executive-card b{font-size:28px!important;line-height:1!important;color:var(--hf42-ink)!important;font-weight:850!important;letter-spacing:-.035em!important}
#patrolPage .patrol-ranking-executive-card small{font-size:11.5px!important;line-height:1.45!important;color:var(--hf42-muted)!important}

#patrolPage .patrol-ranking-board.no-history{
  display:block!important;overflow:hidden!important;margin-top:14px!important;border:1px solid var(--hf42-line)!important;
  border-radius:22px!important;background:#fff!important;box-shadow:none!important;
}
#patrolPage .patrol-ranking-board.no-history .hf32-ranking-group{
  padding:0!important;margin:0!important;border:0!important;border-radius:0!important;background:#fff!important;box-shadow:none!important;
}
#patrolPage .patrol-ranking-board.no-history .hf32-ranking-group+ .hf32-ranking-group{border-top:1px solid var(--hf42-line)!important}
#patrolPage .patrol-ranking-board.no-history .hf32-ranking-group>header{
  padding:14px 22px 11px!important;margin:0!important;border:0!important;border-bottom:1px solid rgba(52,84,69,.09)!important;
  background:#f7f9f8!important;
}
#patrolPage .patrol-ranking-board.no-history .hf32-ranking-group.attention>header{background:#fbf8f4!important}
#patrolPage .patrol-ranking-board.no-history .hf32-ranking-group>header b{font-size:13px!important;font-weight:820!important;color:#425b50!important;letter-spacing:.01em!important}
#patrolPage .patrol-ranking-board.no-history .hf32-ranking-group>header span{font-size:11.5px!important;color:#8a9892!important}
#patrolPage .patrol-ranking-board.no-history .patrol-ranking-row{
  display:grid!important;grid-template-columns:52px minmax(145px,1.05fr) minmax(260px,1.30fr) minmax(250px,1.35fr)!important;
  grid-template-areas:"place person metrics main"!important;align-items:center!important;gap:16px!important;
  min-height:84px!important;margin:0!important;padding:14px 22px!important;border:0!important;border-bottom:1px solid rgba(52,84,69,.085)!important;
  border-radius:0!important;background:#fff!important;box-shadow:none!important;
}
#patrolPage .patrol-ranking-board.no-history .patrol-ranking-row:last-child{border-bottom:0!important}
#patrolPage .patrol-ranking-board.no-history .patrol-ranking-row:hover{background:#fafcfb!important}
#patrolPage .patrol-ranking-board.no-history .patrol-ranking-row.critical,
#patrolPage .patrol-ranking-board.no-history .patrol-ranking-row.mid,
#patrolPage .patrol-ranking-board.no-history .patrol-ranking-row.near,
#patrolPage .patrol-ranking-board.no-history .patrol-ranking-row.slow,
#patrolPage .patrol-ranking-board.no-history .patrol-ranking-row.good{background:#fff!important;border-color:rgba(52,84,69,.085)!important}
#patrolPage .patrol-ranking-board.no-history .patrol-ranking-place{
  grid-area:place!important;width:36px!important;height:36px!important;min-width:36px!important;padding:0!important;border:1px solid rgba(52,84,69,.10)!important;
  border-radius:12px!important;background:#f2f6f4!important;color:#668278!important;font-size:15px!important;font-weight:820!important;display:grid!important;place-items:center!important;
}
#patrolPage .patrol-ranking-board.no-history .patrol-ranking-row.critical .patrol-ranking-place{background:#fbefeb!important;color:#9f594b!important;border-color:#efdcd6!important}
#patrolPage .patrol-ranking-board.no-history .patrol-ranking-person{
  grid-area:person!important;display:flex!important;flex-direction:column!important;justify-content:center!important;gap:4px!important;padding:0!important;
}
#patrolPage .patrol-ranking-board.no-history .patrol-ranking-person b{font-size:17px!important;line-height:1.25!important;font-weight:840!important;color:var(--hf42-ink)!important;white-space:normal!important}
#patrolPage .patrol-ranking-board.no-history .patrol-ranking-person span{font-size:12px!important;color:#83918b!important;font-weight:700!important;white-space:normal!important}
#patrolPage .patrol-ranking-board.no-history .patrol-ranking-metrics{
  grid-area:metrics!important;display:grid!important;grid-template-columns:repeat(4,minmax(0,1fr))!important;gap:11px!important;margin:0!important;
}
#patrolPage .patrol-ranking-board.no-history .patrol-ranking-metric{
  min-width:0!important;padding:0!important;border:0!important;background:transparent!important;border-radius:0!important;text-align:left!important;
}
#patrolPage .patrol-ranking-board.no-history .patrol-ranking-metric span{display:block!important;font-size:10.5px!important;line-height:1.25!important;color:#8a9892!important;letter-spacing:.02em!important;white-space:normal!important}
#patrolPage .patrol-ranking-board.no-history .patrol-ranking-metric b{display:block!important;margin-top:4px!important;font-size:18px!important;line-height:1!important;color:#315246!important;font-weight:820!important;white-space:nowrap!important}
#patrolPage .patrol-ranking-board.no-history .patrol-ranking-metric.good b{color:#34795a!important}
#patrolPage .patrol-ranking-board.no-history .patrol-ranking-metric.warn b{color:#966a2e!important}
#patrolPage .patrol-ranking-board.no-history .patrol-ranking-metric.danger b{color:#aa5a4c!important}
#patrolPage .patrol-ranking-board.no-history .patrol-ranking-main{
  grid-area:main!important;display:grid!important;grid-template-columns:minmax(110px,1fr) 96px!important;gap:15px!important;align-items:center!important;
  min-width:0!important;padding:0 0 0 18px!important;border-left:1px solid rgba(52,84,69,.10)!important;
}
#patrolPage .patrol-ranking-board.no-history .patrol-ranking-bar{height:7px!important;border-radius:999px!important;background:#ebf0ed!important;overflow:hidden!important}
#patrolPage .patrol-ranking-board.no-history .patrol-ranking-bar i{height:100%!important;border-radius:999px!important;background:#4a896a!important}
#patrolPage .patrol-ranking-board.no-history .patrol-ranking-rate{max-width:none!important;text-align:right!important}
#patrolPage .patrol-ranking-board.no-history .patrol-ranking-rate strong{display:block!important;font-size:25px!important;line-height:1!important;font-weight:850!important;letter-spacing:-.04em!important;color:var(--hf42-ink)!important;white-space:nowrap!important}
#patrolPage .patrol-ranking-board.no-history .patrol-ranking-rate span{display:block!important;margin-top:4px!important;font-size:10.5px!important;line-height:1.3!important;color:var(--hf42-muted)!important;white-space:normal!important}
#patrolPage .patrol-ranking-trend-summary{margin-top:14px!important;padding:0 2px!important;border:0!important;background:transparent!important;color:#7a8b83!important}

/* Map-first analysis: the map is the visual center; the right side reads like a quiet inset. */
#patrolPage .patrol-project-intelligence-map{
  padding:24px!important;border-radius:28px!important;background:#f1f5f3!important;box-shadow:none!important;
}
#patrolPage .patrol-map-intelligence-layout{
  display:grid!important;grid-template-columns:minmax(0,2.35fr) minmax(290px,.58fr)!important;gap:24px!important;align-items:start!important;
}
#patrolPage .patrol-map-visual-column{gap:10px!important}
#patrolPage .patrol-project-intelligence-map .patrol-map-canvas-shell{
  width:100%!important;max-width:none!important;border:0!important;border-radius:24px!important;background:#fff!important;
  box-shadow:0 10px 34px rgba(31,65,49,.055)!important;overflow:hidden!important;
}
#patrolPage .patrol-map-reading-hint{
  margin:0!important;padding:9px 3px 0!important;border:0!important;background:transparent!important;box-shadow:none!important;
  color:#71837a!important;font-size:12px!important;line-height:1.55!important;
}
#patrolPage .patrol-map-intelligence-panel{
  display:flex!important;flex-direction:column!important;gap:13px!important;padding:2px 2px 4px 0!important;border:0!important;border-radius:0!important;
  background:transparent!important;box-shadow:none!important;overflow:visible!important;
}
#patrolPage .patrol-map-intelligence-title{padding:3px 2px 10px!important;border-bottom:1px solid var(--hf42-line)!important}
#patrolPage .patrol-map-intelligence-title span{font-size:15px!important;font-weight:830!important;color:var(--hf42-ink)!important}
#patrolPage .patrol-map-intelligence-title small{font-size:11.5px!important;line-height:1.5!important;color:var(--hf42-muted)!important}
#patrolPage .patrol-map-metric-strip{
  display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:0!important;border:1px solid var(--hf42-line)!important;
  border-radius:17px!important;background:rgba(255,255,255,.76)!important;overflow:hidden!important;box-shadow:none!important;
}
#patrolPage .patrol-map-metric-strip article{min-height:72px!important;padding:12px!important;background:transparent!important;box-shadow:none!important}
#patrolPage .patrol-map-insight-section{margin:0!important;padding:12px 2px 0!important;border-top:1px solid rgba(52,84,69,.10)!important}
#patrolPage .patrol-map-insight-section h4{margin:0 0 9px!important;font-size:12px!important;letter-spacing:.02em!important;color:#536b61!important}
#patrolPage .patrol-map-rich-legend>div,#patrolPage .patrol-map-priority-row{padding:8px 0!important}
#patrolPage .patrol-map-narrative{padding:0!important;font-size:12.5px!important;line-height:1.7!important;color:#5f756b!important}
#patrolPage .patrol-map-conclusion-primary{margin-top:15px!important}

@media(max-width:1280px){
  #patrolPage .patrol-ranking-board.no-history .patrol-ranking-row{
    grid-template-columns:46px minmax(135px,.9fr) minmax(230px,1.1fr) minmax(220px,1.2fr)!important;gap:13px!important;padding:13px 16px!important;
  }
  #patrolPage .patrol-map-intelligence-layout{grid-template-columns:minmax(0,1.9fr) minmax(300px,.72fr)!important;gap:18px!important}
}
@media(max-width:1080px){
  #patrolPage .patrol-ranking-executive{grid-template-columns:repeat(2,minmax(0,1fr))!important}
  #patrolPage .patrol-ranking-board.no-history .patrol-ranking-row{
    grid-template-columns:46px minmax(140px,1fr) minmax(260px,1.2fr)!important;
    grid-template-areas:"place person metrics" "place main main"!important;align-items:start!important;
  }
  #patrolPage .patrol-ranking-board.no-history .patrol-ranking-main{padding:10px 0 0!important;border-left:0!important;border-top:1px solid rgba(52,84,69,.08)!important}
  #patrolPage .patrol-map-intelligence-layout{grid-template-columns:1fr!important}
  #patrolPage .patrol-map-intelligence-panel{
    display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:14px 20px!important;padding:2px!important;
  }
  #patrolPage .patrol-map-intelligence-title,#patrolPage .patrol-map-metric-strip,#patrolPage .patrol-map-narrative-section{grid-column:1/-1!important}
}
@media(max-width:720px){
  #patrolPage .patrol-section-head{grid-template-columns:38px minmax(0,1fr)!important;gap:7px 10px!important}
  #patrolPage .patrol-section-head .patrol-module-actions{grid-column:1/-1!important;grid-row:auto!important;margin-top:8px!important}
  #patrolPage .patrol-section-head h2{font-size:25px!important}
  #patrolPage .patrol-ranking-hero-panel{padding:20px 16px!important;border-radius:22px!important}
  #patrolPage .patrol-ranking-executive{grid-template-columns:1fr 1fr!important;border-radius:16px!important}
  #patrolPage .patrol-ranking-board.no-history{border-radius:18px!important}
  #patrolPage .patrol-ranking-board.no-history .hf32-ranking-group>header{padding:12px 14px 9px!important}
  #patrolPage .patrol-ranking-board.no-history .patrol-ranking-row{
    grid-template-columns:40px minmax(0,1fr)!important;grid-template-areas:"place person" "metrics metrics" "main main"!important;
    gap:10px 12px!important;padding:14px!important;
  }
  #patrolPage .patrol-ranking-board.no-history .patrol-ranking-metrics{grid-template-columns:repeat(4,minmax(0,1fr))!important;gap:8px!important}
  #patrolPage .patrol-ranking-board.no-history .patrol-ranking-main{grid-template-columns:minmax(90px,1fr) 84px!important;padding-top:10px!important}
  #patrolPage .patrol-map-intelligence-panel{display:flex!important;padding:0!important}
  #patrolPage .patrol-project-intelligence-map{padding:15px!important;border-radius:22px!important}
}
@media(max-width:480px){
  #patrolPage .patrol-ranking-executive{grid-template-columns:1fr!important}
  #patrolPage .patrol-ranking-board.no-history .patrol-ranking-metrics{grid-template-columns:repeat(2,minmax(0,1fr))!important}
  #patrolPage .patrol-ranking-board.no-history .patrol-ranking-main{grid-template-columns:1fr!important;gap:8px!important}
  #patrolPage .patrol-ranking-board.no-history .patrol-ranking-rate{text-align:left!important}
}


/* standalone patrol project shell v0.1.0-rc1 */
body.patrol-standalone{background:#eef4f0;color:#18372d}
body.patrol-standalone #analysisPage,body.patrol-standalone #addressPage,body.patrol-standalone #actionDock,body.patrol-standalone #exportModal,body.patrol-standalone #previewDialog,body.patrol-standalone #addressPreviewDialog{display:none!important}
body.patrol-standalone .app-header{min-height:92px;padding:18px max(28px,calc((100vw - 1400px)/2));grid-template-columns:minmax(0,1fr) auto;align-items:center}
body.patrol-standalone .brand-copy h1{font-size:24px;letter-spacing:-.02em}
body.patrol-standalone .brand-copy p{max-width:none;color:#668077}
body.patrol-standalone .header-side{justify-self:end}
body.patrol-standalone .system-ribbon,body.patrol-standalone .governance-deck{max-width:1400px;margin-left:auto;margin-right:auto}
body.patrol-standalone .patrol-page{display:block!important;max-width:1400px;margin:0 auto;padding-left:28px;padding-right:28px}
body.patrol-standalone .patrol-entry{margin-top:22px}
@media(max-width:900px){body.patrol-standalone .app-header{grid-template-columns:1fr;padding:14px 18px}.patrol-standalone .header-side{justify-self:start}.patrol-standalone .patrol-page{padding-left:16px;padding-right:16px}}


/* ==========================================================================
   v0.1.0-rc1-p3 — Professional standalone patrol website shell
   Goal: mature long-term product UI; preserve all analysis/map functionality.
   ========================================================================== */
body.patrol-standalone{
  --p3-bg:#f4f6f5;
  --p3-surface:#ffffff;
  --p3-surface-soft:#f8faf9;
  --p3-surface-tint:#f2f6f4;
  --p3-ink:#182028;
  --p3-ink-2:#303a43;
  --p3-muted:#6e7880;
  --p3-muted-2:#8a949b;
  --p3-line:#e1e6e3;
  --p3-line-strong:#d5dcda;
  --p3-brand:#284f86;
  --p3-brand-strong:#1f3b68;
  --p3-brand-soft:#edf3fb;
  --p3-gold:#b8893f;
  --p3-gold-soft:#fbf5e9;
  --p3-green:#347760;
  --p3-green-soft:#edf6f2;
  --p3-red:#a74d4d;
  --p3-red-soft:#fbefef;
  --p3-amber:#9d6c2b;
  --p3-amber-soft:#fbf4e8;
  --p3-shadow:0 12px 32px rgba(25,39,34,.055);
  --p3-shadow-lg:0 24px 70px rgba(25,39,34,.09);
  --p3-radius:20px;
  --p3-radius-sm:14px;
  background:
    radial-gradient(circle at 12% -10%,rgba(40,79,134,.055),transparent 34%),
    radial-gradient(circle at 88% -8%,rgba(184,137,63,.045),transparent 30%),
    var(--p3-bg)!important;
  color:var(--p3-ink)!important;
  font-family:"Microsoft YaHei","PingFang SC","Noto Sans CJK SC",system-ui,-apple-system,sans-serif!important;
  font-size:14px!important;
  line-height:1.55;
}
body.patrol-standalone *{scrollbar-color:#cbd4cf transparent}
body.patrol-standalone ::selection{background:rgba(40,79,134,.18)}
body.patrol-standalone button,
body.patrol-standalone input,
body.patrol-standalone textarea,
body.patrol-standalone select{font-family:inherit}
body.patrol-standalone a,
body.patrol-standalone button{touch-action:manipulation}

/* Header */
body.patrol-standalone .app-header{
  position:sticky!important;
  top:0!important;
  z-index:80!important;
  max-width:none!important;
  min-height:84px!important;
  margin:0!important;
  padding:0!important;
  display:block!important;
  background:rgba(250,251,250,.92)!important;
  border-bottom:1px solid rgba(213,220,218,.82)!important;
  box-shadow:0 1px 0 rgba(255,255,255,.7)!important;
  backdrop-filter:blur(18px) saturate(135%);
}
body.patrol-standalone .app-header-inner{
  width:min(1480px,calc(100% - 48px));
  min-height:84px;
  margin:0 auto;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:28px;
}
body.patrol-standalone .brand-group{
  display:flex!important;
  align-items:center!important;
  gap:13px!important;
  min-width:0;
}
body.patrol-standalone .brand-mark.brand-logo{
  width:54px!important;
  height:54px!important;
  min-width:54px!important;
  padding:0!important;
  overflow:hidden!important;
  border:1px solid rgba(40,79,134,.18)!important;
  border-radius:16px!important;
  background:#0d1730!important;
  box-shadow:0 7px 22px rgba(22,40,76,.18)!important;
}
body.patrol-standalone .brand-mark.brand-logo img{
  width:100%!important;
  height:100%!important;
  display:block!important;
  object-fit:cover!important;
}
body.patrol-standalone .brand-copy{
  min-width:0;
}
body.patrol-standalone .brand-kicker{
  display:block!important;
  margin:0 0 2px!important;
  color:var(--p3-muted)!important;
  font-size:11px!important;
  font-weight:700!important;
  letter-spacing:.09em!important;
}
body.patrol-standalone .brand-copy h1{
  margin:0!important;
  color:var(--p3-ink)!important;
  font-size:20px!important;
  line-height:1.28!important;
  font-weight:800!important;
  letter-spacing:-.025em!important;
}
body.patrol-standalone .brand-copy p{
  margin:3px 0 0!important;
  color:var(--p3-muted)!important;
  font-size:11.5px!important;
  line-height:1.35!important;
}
body.patrol-standalone .header-side{
  display:flex!important;
  align-items:center!important;
  justify-content:flex-end!important;
  gap:22px!important;
}
body.patrol-standalone .header-status{
  display:flex;
  align-items:center;
  gap:10px;
  min-width:170px;
  padding:9px 13px;
  border:1px solid var(--p3-line);
  border-radius:13px;
  background:rgba(255,255,255,.72);
}
body.patrol-standalone .header-status-dot{
  width:8px;height:8px;border-radius:50%;
  background:var(--p3-green);
  box-shadow:0 0 0 5px rgba(52,119,96,.10);
}
body.patrol-standalone .header-status div{display:grid;gap:1px}
body.patrol-standalone .header-status b{
  color:var(--p3-ink-2);
  font-size:11.5px;
  line-height:1.3;
}
body.patrol-standalone .header-status small{
  color:var(--p3-muted-2);
  font-size:10px;
  line-height:1.3;
}
body.patrol-standalone .flow-hint{
  margin:0!important;
  display:flex!important;
  align-items:center!important;
  gap:7px!important;
  color:var(--p3-muted)!important;
  font-size:11px!important;
}
body.patrol-standalone .flow-hint span{gap:5px!important}
body.patrol-standalone .flow-hint b{
  width:21px!important;height:21px!important;
  background:var(--p3-brand-soft)!important;
  color:var(--p3-brand)!important;
  font-size:10px!important;
}
body.patrol-standalone .flow-hint i{
  width:18px!important;
  background:var(--p3-line-strong)!important;
}

/* Product hero */
body.patrol-standalone .product-hero{
  width:min(1480px,calc(100% - 48px));
  margin:28px auto 14px;
  display:grid;
  grid-template-columns:minmax(0,1.15fr) minmax(460px,.85fr);
  gap:34px;
  align-items:stretch;
  padding:38px 40px;
  border:1px solid var(--p3-line);
  border-radius:28px;
  background:
    linear-gradient(120deg,rgba(255,255,255,.98),rgba(248,250,249,.96)),
    var(--p3-surface);
  box-shadow:var(--p3-shadow);
  overflow:hidden;
  position:relative;
}
body.patrol-standalone .product-hero:after{
  content:"";
  position:absolute;
  width:420px;height:420px;
  right:-160px;top:-230px;
  border-radius:50%;
  background:radial-gradient(circle,rgba(40,79,134,.09),rgba(40,79,134,0) 70%);
  pointer-events:none;
}
body.patrol-standalone .product-hero-copy{
  align-self:center;
  position:relative;
  z-index:1;
  padding:5px 0;
}
body.patrol-standalone .product-hero-eyebrow{
  display:inline-flex;
  align-items:center;
  gap:8px;
  margin-bottom:13px;
  color:var(--p3-brand);
  font-size:12px;
  font-weight:800;
  letter-spacing:.08em;
}
body.patrol-standalone .product-hero-eyebrow:before{
  content:"";
  width:22px;height:2px;
  background:var(--p3-gold);
  border-radius:2px;
}
body.patrol-standalone .product-hero h2{
  max-width:760px;
  margin:0;
  color:var(--p3-ink);
  font-size:clamp(32px,3vw,46px);
  line-height:1.18;
  font-weight:760;
  letter-spacing:-.045em;
}
body.patrol-standalone .product-hero h2 em{
  display:block;
  margin-top:6px;
  color:var(--p3-brand-strong);
  font-style:normal;
}
body.patrol-standalone .product-hero-copy>p{
  max-width:760px;
  margin:18px 0 0;
  color:#5f6970;
  font-size:14px;
  line-height:1.9;
}
body.patrol-standalone .product-hero-flow{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:1px;
  margin-top:28px;
  overflow:hidden;
  border:1px solid var(--p3-line);
  border-radius:16px;
  background:var(--p3-line);
}
body.patrol-standalone .product-hero-flow>span{
  min-height:86px;
  padding:14px 14px 12px;
  display:grid;
  align-content:start;
  gap:3px;
  background:rgba(255,255,255,.86);
}
body.patrol-standalone .product-hero-flow i{
  color:var(--p3-gold);
  font-size:10px;
  font-style:normal;
  font-weight:800;
  letter-spacing:.1em;
}
body.patrol-standalone .product-hero-flow b{
  color:var(--p3-ink-2);
  font-size:12px;
}
body.patrol-standalone .product-hero-flow small{
  color:var(--p3-muted);
  font-size:10.5px;
  line-height:1.45;
}
body.patrol-standalone .product-hero-console{
  position:relative;
  z-index:1;
  display:flex;
  flex-direction:column;
  min-height:100%;
  padding:22px;
  border:1px solid rgba(40,79,134,.16);
  border-radius:22px;
  background:
    linear-gradient(155deg,rgba(239,244,250,.96),rgba(250,247,241,.92));
}
body.patrol-standalone .product-console-head{
  display:grid;
  gap:3px;
  padding:2px 2px 16px;
  border-bottom:1px solid rgba(40,79,134,.11);
}
body.patrol-standalone .product-console-head>span{
  color:var(--p3-brand);
  font-size:10px;
  font-weight:800;
  letter-spacing:.1em;
}
body.patrol-standalone .product-console-head strong{
  color:var(--p3-ink);
  font-size:17px;
  letter-spacing:-.02em;
}
body.patrol-standalone .product-console-head small{
  color:var(--p3-muted);
  font-size:10.5px;
}
body.patrol-standalone .product-console-grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:10px;
  margin-top:15px;
}
body.patrol-standalone .product-console-grid article{
  min-height:102px;
  padding:14px;
  border:1px solid rgba(40,79,134,.10);
  border-radius:15px;
  background:rgba(255,255,255,.74);
}
body.patrol-standalone .product-console-grid article>span{
  display:block;
  margin-bottom:6px;
  color:var(--p3-muted);
  font-size:9.5px;
  font-weight:800;
  letter-spacing:.08em;
}
body.patrol-standalone .product-console-grid strong{
  display:block;
  color:var(--p3-ink-2);
  font-size:14px;
}
body.patrol-standalone .product-console-grid small{
  display:block;
  margin-top:4px;
  color:var(--p3-muted);
  font-size:10.5px;
  line-height:1.5;
}
body.patrol-standalone .product-console-note{
  margin-top:auto;
  padding-top:16px;
  display:flex;
  align-items:flex-start;
  gap:9px;
}
body.patrol-standalone .product-console-note>span{
  width:7px;height:7px;min-width:7px;
  margin-top:6px;
  border-radius:50%;
  background:var(--p3-green);
}
body.patrol-standalone .product-console-note p{
  margin:0;
  color:var(--p3-muted);
  font-size:10.5px;
  line-height:1.65;
}
body.patrol-standalone .product-console-note b{color:var(--p3-ink-2)}

/* Hide the expansive intro after a successful dataset is loaded. */
body.patrol-standalone:has(#patrolDataReadyBar:not(.hidden)) .product-hero,
body.patrol-standalone:has(#patrolDataReadyBar:not(.hidden)) .governance-deck{
  display:none!important;
}

/* Capability / status strip */
body.patrol-standalone .system-ribbon{
  width:min(1480px,calc(100% - 48px))!important;
  max-width:none!important;
  min-height:44px!important;
  margin:0 auto 12px!important;
  padding:9px 14px!important;
  border:1px solid var(--p3-line)!important;
  border-radius:14px!important;
  background:rgba(255,255,255,.72)!important;
  box-shadow:none!important;
}
body.patrol-standalone .ribbon-left{
  color:var(--p3-muted)!important;
  font-size:10.5px!important;
}
body.patrol-standalone .ribbon-left strong{
  color:var(--p3-ink-2)!important;
  font-size:11px!important;
}
body.patrol-standalone .ribbon-dot{
  width:7px!important;height:7px!important;
  background:var(--p3-green)!important;
  box-shadow:0 0 0 4px rgba(52,119,96,.09)!important;
}
body.patrol-standalone .ribbon-badges{gap:6px!important}
body.patrol-standalone .ribbon-badges span{
  padding:5px 8px!important;
  border:1px solid var(--p3-line)!important;
  background:var(--p3-surface-soft)!important;
  color:var(--p3-muted)!important;
  font-size:9.5px!important;
}
body.patrol-standalone .governance-deck{
  width:min(1480px,calc(100% - 48px))!important;
  max-width:none!important;
  margin:0 auto 16px!important;
  display:grid!important;
  grid-template-columns:repeat(4,minmax(0,1fr))!important;
  gap:10px!important;
}
body.patrol-standalone .governance-deck article{
  min-height:74px!important;
  padding:13px 14px!important;
  border:1px solid var(--p3-line)!important;
  border-radius:15px!important;
  background:rgba(255,255,255,.76)!important;
  box-shadow:none!important;
}
body.patrol-standalone .governance-deck .deck-code{
  color:var(--p3-gold)!important;
  font-size:10px!important;
  font-weight:800!important;
}
body.patrol-standalone .governance-deck b{
  color:var(--p3-ink-2)!important;
  font-size:11.5px!important;
}
body.patrol-standalone .governance-deck small{
  color:var(--p3-muted)!important;
  font-size:9.5px!important;
}
body.patrol-standalone .deck-signal.active{
  background:var(--p3-green)!important;
  box-shadow:0 0 0 4px rgba(52,119,96,.08)!important;
}

/* Page frame */
body.patrol-standalone .patrol-page{
  display:block!important;
  width:min(1480px,calc(100% - 48px))!important;
  max-width:none!important;
  margin:0 auto!important;
  padding:0 0 70px!important;
}
body.patrol-standalone .patrol-page>.workspace{
  margin:0 0 18px!important;
}
body.patrol-standalone .workspace{
  border:1px solid var(--p3-line)!important;
  border-radius:22px!important;
  background:rgba(255,255,255,.94)!important;
  box-shadow:var(--p3-shadow)!important;
}

/* Section nav becomes the real product navigation once data exists. */
body.patrol-standalone .patrol-section-nav{
  position:sticky!important;
  top:94px!important;
  z-index:55!important;
  width:fit-content!important;
  max-width:100%!important;
  margin:2px auto 18px!important;
  padding:6px!important;
  display:flex!important;
  gap:3px!important;
  overflow:auto!important;
  border:1px solid rgba(213,220,218,.94)!important;
  border-radius:14px!important;
  background:rgba(250,251,250,.92)!important;
  box-shadow:0 10px 32px rgba(25,39,34,.075)!important;
  backdrop-filter:blur(16px) saturate(130%);
}
body.patrol-standalone .patrol-section-nav.hidden{display:none!important}
body.patrol-standalone .patrol-section-nav button{
  min-height:36px!important;
  padding:8px 12px!important;
  border:0!important;
  border-radius:9px!important;
  background:transparent!important;
  color:var(--p3-muted)!important;
  font-size:11px!important;
  font-weight:760!important;
  white-space:nowrap!important;
}
body.patrol-standalone .patrol-section-nav button:hover{
  color:var(--p3-ink-2)!important;
  background:#fff!important;
}
body.patrol-standalone .patrol-section-nav button.active{
  background:var(--p3-brand)!important;
  color:#fff!important;
  box-shadow:0 5px 14px rgba(40,79,134,.18)!important;
}

/* Section headings */
body.patrol-standalone .patrol-section-head{
  display:grid!important;
  grid-template-columns:40px minmax(0,1fr) auto!important;
  align-items:start!important;
  gap:4px 14px!important;
  margin-bottom:20px!important;
}
body.patrol-standalone .patrol-section-head .section-number{
  width:38px!important;height:38px!important;
  border-radius:12px!important;
  display:grid!important;
  place-items:center!important;
  background:var(--p3-brand-soft)!important;
  color:var(--p3-brand)!important;
  box-shadow:none!important;
  font-size:11px!important;
  font-weight:850!important;
}
body.patrol-standalone .patrol-section-head .grow{padding-top:1px}
body.patrol-standalone .patrol-section-kicker{
  display:block;
  margin:0 0 3px;
  color:var(--p3-gold);
  font-size:9.5px;
  font-weight:850;
  letter-spacing:.12em;
}
body.patrol-standalone .patrol-section-head h2{
  margin:0 0 4px!important;
  color:var(--p3-ink)!important;
  font-size:25px!important;
  line-height:1.28!important;
  font-weight:760!important;
  letter-spacing:-.035em!important;
}
body.patrol-standalone .patrol-section-head p{
  margin:0!important;
  max-width:860px!important;
  color:var(--p3-muted)!important;
  font-size:11.5px!important;
  line-height:1.7!important;
}
body.patrol-standalone .patrol-module-actions{
  display:flex!important;
  align-items:center!important;
  justify-content:flex-end!important;
  gap:7px!important;
  flex-wrap:wrap!important;
}
body.patrol-standalone .patrol-schema-badge{
  border:1px solid var(--p3-line)!important;
  background:var(--p3-surface-soft)!important;
  color:var(--p3-muted)!important;
  box-shadow:none!important;
}

/* Buttons / fields */
body.patrol-standalone .btn{
  min-height:38px!important;
  padding:8px 13px!important;
  border:1px solid var(--p3-line-strong)!important;
  border-radius:10px!important;
  background:#fff!important;
  color:#46515a!important;
  box-shadow:none!important;
  font-size:11px!important;
  font-weight:760!important;
  transition:background .16s,border-color .16s,color .16s,box-shadow .16s,transform .16s!important;
}
body.patrol-standalone .btn:hover{
  transform:translateY(-1px)!important;
  border-color:#bdc8c3!important;
  background:#fbfcfb!important;
  box-shadow:0 5px 14px rgba(25,39,34,.06)!important;
}
body.patrol-standalone .btn.primary{
  border-color:var(--p3-brand)!important;
  background:var(--p3-brand)!important;
  color:#fff!important;
  box-shadow:0 5px 14px rgba(40,79,134,.13)!important;
}
body.patrol-standalone .btn.primary:hover{
  border-color:var(--p3-brand-strong)!important;
  background:var(--p3-brand-strong)!important;
}
body.patrol-standalone .btn.large{
  min-height:44px!important;
  padding:10px 17px!important;
  font-size:11.5px!important;
}
body.patrol-standalone .btn.quiet{
  background:var(--p3-surface-soft)!important;
  color:var(--p3-muted)!important;
}
body.patrol-standalone textarea,
body.patrol-standalone input[type="text"],
body.patrol-standalone input[type="search"],
body.patrol-standalone select{
  border-color:var(--p3-line-strong)!important;
  background:#fff!important;
  color:var(--p3-ink-2)!important;
}
body.patrol-standalone textarea:focus,
body.patrol-standalone input:focus,
body.patrol-standalone select:focus{
  outline:3px solid rgba(40,79,134,.10)!important;
  border-color:#8da8cb!important;
}

/* Input / onboarding */
body.patrol-standalone .patrol-hero{
  padding:28px!important;
  overflow:visible!important;
}
body.patrol-standalone .patrol-import-grid.patrol-one-paste-grid{
  display:grid!important;
  grid-template-columns:minmax(0,1.48fr) minmax(340px,.52fr)!important;
  gap:18px!important;
  align-items:stretch!important;
}
body.patrol-standalone .patrol-one-paste-card{
  padding:20px!important;
  border:1px solid var(--p3-line)!important;
  border-radius:18px!important;
  background:var(--p3-surface-soft)!important;
  box-shadow:none!important;
}
body.patrol-standalone .patrol-one-paste-head{
  display:flex!important;
  align-items:baseline!important;
  justify-content:space-between!important;
  gap:14px!important;
  margin-bottom:12px!important;
}
body.patrol-standalone .patrol-one-paste-head strong{
  color:var(--p3-ink)!important;
  font-size:14px!important;
  line-height:1.4!important;
}
body.patrol-standalone .patrol-one-paste-head small{
  max-width:610px!important;
  color:var(--p3-muted)!important;
  font-size:10.5px!important;
  text-align:right!important;
  line-height:1.6!important;
}
body.patrol-standalone .patrol-one-paste-input{
  min-height:250px!important;
  width:100%!important;
  padding:16px!important;
  border:1px solid var(--p3-line-strong)!important;
  border-radius:14px!important;
  background:#fff!important;
  color:var(--p3-ink-2)!important;
  resize:vertical!important;
  font-size:12px!important;
  line-height:1.8!important;
  box-shadow:inset 0 1px 2px rgba(25,39,34,.025)!important;
}
body.patrol-standalone .patrol-one-paste-input::placeholder{
  color:#98a2a8!important;
}
body.patrol-standalone .patrol-actions{
  margin-top:12px!important;
  gap:8px!important;
}
body.patrol-standalone .patrol-package-check,
body.patrol-standalone .patrol-import-status{
  margin-top:10px!important;
  padding:9px 11px!important;
  border:1px solid var(--p3-line)!important;
  border-radius:10px!important;
  background:#fff!important;
  color:var(--p3-muted)!important;
  font-size:10.5px!important;
  box-shadow:none!important;
}
body.patrol-standalone .patrol-contract-card{
  min-height:100%!important;
  padding:20px!important;
  display:flex!important;
  flex-direction:column!important;
  gap:0!important;
  border:1px solid rgba(40,79,134,.13)!important;
  border-radius:18px!important;
  background:linear-gradient(155deg,#f4f7fb,#faf8f3)!important;
  box-shadow:none!important;
}
body.patrol-standalone .patrol-contract-card>strong{
  margin-bottom:12px!important;
  color:var(--p3-ink)!important;
  font-size:14px!important;
}
body.patrol-standalone .patrol-contract-card>div{
  display:grid!important;
  grid-template-columns:76px minmax(0,1fr)!important;
  gap:10px!important;
  padding:12px 0!important;
  border-top:1px solid rgba(40,79,134,.09)!important;
}
body.patrol-standalone .patrol-contract-card span{
  color:var(--p3-brand)!important;
  font-size:10px!important;
  font-weight:800!important;
}
body.patrol-standalone .patrol-contract-card b{
  color:#59656e!important;
  font-size:10.5px!important;
  font-weight:650!important;
  line-height:1.55!important;
}
body.patrol-standalone .patrol-data-ready-bar{
  margin:0 0 14px!important;
  padding:12px 14px!important;
  border:1px solid rgba(52,119,96,.17)!important;
  border-radius:13px!important;
  background:var(--p3-green-soft)!important;
  box-shadow:none!important;
}

/* Global panel language */
body.patrol-standalone .patrol-panel{
  border:1px solid var(--p3-line)!important;
  border-radius:18px!important;
  background:#fff!important;
  box-shadow:none!important;
}
body.patrol-standalone .patrol-panel-head{
  padding-bottom:12px!important;
  margin-bottom:14px!important;
  border-bottom:1px solid var(--p3-line)!important;
}
body.patrol-standalone .patrol-panel-head h3{
  color:var(--p3-ink)!important;
  font-size:14px!important;
  font-weight:760!important;
  letter-spacing:-.02em!important;
}
body.patrol-standalone .patrol-panel-head small{
  color:var(--p3-muted)!important;
  font-size:10.5px!important;
  line-height:1.55!important;
}
body.patrol-standalone .patrol-eyebrow{
  color:var(--p3-brand)!important;
  font-size:9px!important;
  font-weight:850!important;
  letter-spacing:.11em!important;
}
body.patrol-standalone .patrol-empty-card{
  min-height:84px!important;
  padding:18px!important;
  border:1px dashed #d7dedb!important;
  border-radius:13px!important;
  background:var(--p3-surface-soft)!important;
  color:var(--p3-muted-2)!important;
  font-size:10.5px!important;
  box-shadow:none!important;
}

/* Dashboard / domain overview */
body.patrol-standalone .patrol-dashboard{
  padding:28px!important;
}
body.patrol-standalone .patrol-domain-overview{
  display:grid!important;
  grid-template-columns:repeat(2,minmax(0,1fr))!important;
  gap:16px!important;
}
body.patrol-standalone .patrol-domain-card{
  padding:20px!important;
  border:1px solid var(--p3-line)!important;
  border-radius:20px!important;
  background:#fff!important;
  box-shadow:none!important;
}
body.patrol-standalone .patrol-domain-card.project-domain{
  border-top:3px solid var(--p3-brand)!important;
}
body.patrol-standalone .patrol-domain-card.store-domain{
  border-top:3px solid var(--p3-green)!important;
}
body.patrol-standalone .patrol-domain-head{
  min-height:96px!important;
  padding-bottom:14px!important;
  margin-bottom:14px!important;
  border-bottom:1px solid var(--p3-line)!important;
}
body.patrol-standalone .patrol-domain-head small{
  color:var(--p3-muted)!important;
  font-size:9.5px!important;
  font-weight:750!important;
}
body.patrol-standalone .patrol-domain-head h3{
  margin:4px 0!important;
  color:var(--p3-ink)!important;
  font-size:19px!important;
  font-weight:760!important;
  letter-spacing:-.025em!important;
}
body.patrol-standalone .patrol-domain-head p{
  color:var(--p3-muted)!important;
  font-size:10px!important;
  line-height:1.55!important;
}
body.patrol-standalone .patrol-domain-total{
  color:var(--p3-ink)!important;
  font-size:36px!important;
  letter-spacing:-.04em!important;
}
body.patrol-standalone .patrol-domain-total em{
  color:var(--p3-muted)!important;
  font-size:11px!important;
  font-style:normal!important;
}
body.patrol-standalone .patrol-domain-section-label,
body.patrol-standalone .patrol-structure-subtitle{
  color:var(--p3-muted)!important;
  font-size:9.5px!important;
  font-weight:800!important;
  letter-spacing:.07em!important;
}
body.patrol-standalone .patrol-domain-metrics{
  gap:8px!important;
}
body.patrol-standalone .patrol-domain-metrics article,
body.patrol-standalone .patrol-domain-daily article{
  min-height:96px!important;
  padding:13px!important;
  border:1px solid var(--p3-line)!important;
  border-radius:14px!important;
  background:var(--p3-surface-soft)!important;
  box-shadow:none!important;
}
body.patrol-standalone .patrol-domain-metrics article>span,
body.patrol-standalone .patrol-domain-daily article>span{
  color:var(--p3-muted)!important;
  font-size:9.5px!important;
}
body.patrol-standalone .patrol-domain-metrics article>strong,
body.patrol-standalone .patrol-domain-daily article>strong{
  color:var(--p3-ink)!important;
  font-size:26px!important;
  letter-spacing:-.04em!important;
}
body.patrol-standalone .patrol-domain-metrics article>small,
body.patrol-standalone .patrol-domain-daily article>small{
  color:var(--p3-muted)!important;
  font-size:9px!important;
}
body.patrol-standalone .patrol-leadership-summary,
body.patrol-standalone .patrol-macro-narrative,
body.patrol-standalone .patrol-map-conclusion-primary{
  border:1px solid rgba(40,79,134,.11)!important;
  border-radius:14px!important;
  background:linear-gradient(120deg,#f5f8fc,#faf9f6)!important;
  color:#53616d!important;
  box-shadow:none!important;
}
body.patrol-standalone .hf31-action-section-title{
  margin-top:20px!important;
  border-top:1px solid var(--p3-line)!important;
}
body.patrol-standalone .patrol-action-highlights{
  gap:10px!important;
}

/* Responsibility/progress */
body.patrol-standalone .patrol-person-zone{
  padding:28px!important;
}
body.patrol-standalone .patrol-ranking-hero-panel{
  padding:20px!important;
  border:1px solid var(--p3-line)!important;
  border-radius:18px!important;
  background:#fff!important;
  box-shadow:none!important;
}
body.patrol-standalone .patrol-ranking-executive{
  border:1px solid var(--p3-line)!important;
  border-radius:14px!important;
  background:var(--p3-surface-soft)!important;
  box-shadow:none!important;
}
body.patrol-standalone .patrol-ranking-board,
body.patrol-standalone .patrol-ranking-board.no-history{
  border:1px solid var(--p3-line)!important;
  border-radius:15px!important;
  background:#fff!important;
  box-shadow:none!important;
}
body.patrol-standalone .patrol-ranking-row{
  border-color:var(--p3-line)!important;
}
body.patrol-standalone .patrol-ranking-row:hover{
  background:#fafcfb!important;
}
body.patrol-standalone .patrol-domain-chip{
  border:1px solid var(--p3-line)!important;
  box-shadow:none!important;
}

/* Tables */
body.patrol-standalone .table-wrap{
  max-height:650px!important;
  border:1px solid var(--p3-line)!important;
  border-radius:14px!important;
  background:#fff!important;
  box-shadow:none!important;
}
body.patrol-standalone .patrol-table{
  font-size:10.5px!important;
}
body.patrol-standalone .patrol-table th{
  top:0!important;
  padding:11px 10px!important;
  border-bottom:1px solid var(--p3-line-strong)!important;
  background:#f6f8f7!important;
  color:#68737b!important;
  font-size:9.5px!important;
  font-weight:800!important;
}
body.patrol-standalone .patrol-table td{
  padding:11px 10px!important;
  border-bottom:1px solid #edf0ee!important;
  color:#48545c!important;
}
body.patrol-standalone .patrol-table tbody tr:hover{
  background:#fafcfb!important;
}

/* Focus + maps: keep and elevate the analysis experience */
body.patrol-standalone .patrol-analysis-zone{
  padding:28px!important;
}
body.patrol-standalone .patrol-pin-toolbar{
  margin:16px 0 12px!important;
  padding:10px 12px!important;
  border:1px solid var(--p3-line)!important;
  border-radius:13px!important;
  background:var(--p3-surface-soft)!important;
  box-shadow:none!important;
}
body.patrol-standalone .patrol-dual-maps{
  display:grid!important;
  gap:18px!important;
}
body.patrol-standalone .patrol-map-panel,
body.patrol-standalone .patrol-project-intelligence-map,
body.patrol-standalone .patrol-store-intelligence-map{
  padding:20px!important;
  border:1px solid var(--p3-line)!important;
  border-radius:20px!important;
  background:#fff!important;
  box-shadow:none!important;
}
body.patrol-standalone .patrol-map-intelligence-layout{
  display:grid!important;
  grid-template-columns:minmax(0,1.8fr) minmax(320px,.72fr)!important;
  gap:18px!important;
  align-items:stretch!important;
}
body.patrol-standalone .patrol-map-visual-column{
  min-width:0!important;
}
body.patrol-standalone .patrol-map-canvas-shell{
  position:relative!important;
  width:100%!important;
  min-height:600px!important;
  overflow:hidden!important;
  border:1px solid #d8dfdc!important;
  border-radius:18px!important;
  background:#eef2f0!important;
  box-shadow:inset 0 0 0 1px rgba(255,255,255,.8)!important;
}
body.patrol-standalone #patrolProjectMapBoard,
body.patrol-standalone #patrolStoreMapBoard{
  display:block!important;
  width:100%!important;
  height:auto!important;
  min-height:600px!important;
  object-fit:contain!important;
  background:#f7f8f7!important;
}
body.patrol-standalone .patrol-map-explore-bar{
  margin:0 0 13px!important;
  padding:11px!important;
  border:1px solid var(--p3-line)!important;
  border-radius:13px!important;
  background:var(--p3-surface-soft)!important;
  box-shadow:none!important;
}
body.patrol-standalone .patrol-map-filter-group{
  gap:5px!important;
}
body.patrol-standalone .patrol-map-filter-group button{
  min-height:30px!important;
  padding:6px 9px!important;
  border:1px solid var(--p3-line)!important;
  border-radius:8px!important;
  background:#fff!important;
  color:var(--p3-muted)!important;
  font-size:9.5px!important;
}
body.patrol-standalone .patrol-map-filter-group button.active{
  border-color:var(--p3-brand)!important;
  background:var(--p3-brand)!important;
  color:#fff!important;
}
body.patrol-standalone .patrol-map-search-wrap{
  min-width:260px!important;
}
body.patrol-standalone .patrol-map-search-box{
  border:1px solid var(--p3-line-strong)!important;
  border-radius:9px!important;
  background:#fff!important;
}
body.patrol-standalone .patrol-map-intelligence-panel{
  display:flex!important;
  flex-direction:column!important;
  gap:12px!important;
  padding:16px!important;
  border:1px solid var(--p3-line)!important;
  border-radius:16px!important;
  background:#f8faf9!important;
  box-shadow:none!important;
}
body.patrol-standalone .patrol-map-intelligence-title{
  padding:0 0 11px!important;
  border-bottom:1px solid var(--p3-line)!important;
}
body.patrol-standalone .patrol-map-intelligence-title span{
  color:var(--p3-ink)!important;
  font-size:13px!important;
  font-weight:760!important;
}
body.patrol-standalone .patrol-map-intelligence-title small{
  color:var(--p3-muted)!important;
  font-size:9.5px!important;
}
body.patrol-standalone .patrol-map-metric-strip{
  border:1px solid var(--p3-line)!important;
  border-radius:12px!important;
  background:#fff!important;
}
body.patrol-standalone .patrol-map-metric-strip article{
  min-height:70px!important;
  padding:10px!important;
}
body.patrol-standalone .patrol-map-insight-section{
  padding-top:11px!important;
  border-top:1px solid var(--p3-line)!important;
}
body.patrol-standalone .patrol-map-insight-section h4{
  color:#59656d!important;
  font-size:10px!important;
  letter-spacing:.04em!important;
}
body.patrol-standalone .patrol-map-reading-hint{
  padding:8px 3px 0!important;
  color:var(--p3-muted)!important;
  font-size:10px!important;
}
body.patrol-standalone .patrol-map-actions{
  display:flex!important;
  flex-wrap:wrap!important;
  gap:7px!important;
  padding-top:13px!important;
  border-top:1px solid var(--p3-line)!important;
}
body.patrol-standalone .patrol-map-preview-dialog{
  width:min(96vw,1780px)!important;
  max-width:1780px!important;
  border:0!important;
  border-radius:20px!important;
  background:#f7f9f8!important;
  box-shadow:0 35px 100px rgba(15,28,24,.28)!important;
}
body.patrol-standalone .patrol-map-preview-body{
  min-height:78vh!important;
  padding:12px!important;
}
body.patrol-standalone .patrol-map-preview-body .patrol-map-canvas-shell{
  min-height:76vh!important;
  border-radius:14px!important;
}
body.patrol-standalone #patrolZoomMapBoard{
  width:100%!important;
  height:auto!important;
}

/* Outputs */
body.patrol-standalone .patrol-output-zone,
body.patrol-standalone .patrol-compare-zone{
  padding:28px!important;
}
body.patrol-standalone .patrol-copy-grid{
  display:grid!important;
  grid-template-columns:repeat(4,minmax(0,1fr))!important;
  gap:10px!important;
}
body.patrol-standalone .patrol-copy-card{
  min-height:190px!important;
  padding:17px!important;
  border:1px solid var(--p3-line)!important;
  border-radius:16px!important;
  background:#fff!important;
  box-shadow:none!important;
}
body.patrol-standalone .patrol-copy-card>span{
  color:var(--p3-gold)!important;
  font-size:9px!important;
  font-weight:850!important;
  letter-spacing:.1em!important;
}
body.patrol-standalone .patrol-copy-card h3{
  color:var(--p3-ink)!important;
  font-size:16px!important;
}
body.patrol-standalone .patrol-copy-card p{
  color:var(--p3-muted)!important;
  font-size:10.5px!important;
  line-height:1.7!important;
}
body.patrol-standalone .patrol-command-export-grid{
  gap:8px!important;
}
body.patrol-standalone .patrol-writing-note{
  color:var(--p3-muted)!important;
  font-size:10px!important;
}
body.patrol-standalone .patrol-brief{
  min-height:210px!important;
  border:1px solid var(--p3-line)!important;
  border-radius:12px!important;
  background:#fafcfb!important;
  color:#4d5962!important;
  font-size:11px!important;
  line-height:1.8!important;
}

/* History */
body.patrol-standalone .patrol-compare-kpis article,
body.patrol-standalone .patrol-chart-panel{
  border:1px solid var(--p3-line)!important;
  background:#fff!important;
  box-shadow:none!important;
}
body.patrol-standalone .patrol-compare-kpis article{
  border-radius:15px!important;
}
body.patrol-standalone .patrol-chart-svg{
  background:#fbfcfb!important;
  border-radius:12px!important;
}

/* Small visual tokens */
body.patrol-standalone .p-dot{box-shadow:none!important}
body.patrol-standalone .reg-zero,
body.patrol-standalone .store-uncovered{
  border-color:#eedada!important;
}
body.patrol-standalone .reg-one{
  border-color:#eadfc8!important;
}
body.patrol-standalone .reg-good,
body.patrol-standalone .store-covered{
  border-color:#d4e5dd!important;
}
body.patrol-standalone .patrol-progress-overview-panel,
body.patrol-standalone .patrol-macro-panel{
  box-shadow:none!important;
}

/* Avoid displaying product internals as product UI. */
body.patrol-standalone .patrol-hidden-utility,
body.patrol-standalone .patrol-internal-only{
  display:none!important;
}

/* Dense desktop polish */
@media(min-width:1281px){
  body.patrol-standalone .patrol-page>.workspace:not(.patrol-hero){
    scroll-margin-top:152px;
  }
}

/* Responsive */
@media(max-width:1180px){
  body.patrol-standalone .product-hero{
    grid-template-columns:1fr!important;
  }
  body.patrol-standalone .product-hero-console{
    min-height:auto!important;
  }
  body.patrol-standalone .patrol-import-grid.patrol-one-paste-grid{
    grid-template-columns:1fr!important;
  }
  body.patrol-standalone .patrol-map-intelligence-layout{
    grid-template-columns:1fr!important;
  }
  body.patrol-standalone .patrol-map-intelligence-panel{
    display:grid!important;
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
  }
  body.patrol-standalone .patrol-map-intelligence-title,
  body.patrol-standalone .patrol-map-metric-strip,
  body.patrol-standalone .patrol-map-narrative-section{
    grid-column:1/-1!important;
  }
  body.patrol-standalone .patrol-copy-grid{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
  }
}
@media(max-width:900px){
  body.patrol-standalone .app-header-inner,
  body.patrol-standalone .product-hero,
  body.patrol-standalone .system-ribbon,
  body.patrol-standalone .governance-deck,
  body.patrol-standalone .patrol-page{
    width:min(100% - 28px,1480px)!important;
  }
  body.patrol-standalone .app-header-inner{min-height:74px!important}
  body.patrol-standalone .header-status{display:none!important}
  body.patrol-standalone .flow-hint{display:none!important}
  body.patrol-standalone .product-hero{
    margin-top:14px!important;
    padding:26px!important;
    border-radius:22px!important;
  }
  body.patrol-standalone .product-hero h2{
    font-size:32px!important;
  }
  body.patrol-standalone .governance-deck{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
  }
  body.patrol-standalone .ribbon-badges{display:none!important}
  body.patrol-standalone .patrol-section-head{
    grid-template-columns:38px minmax(0,1fr)!important;
  }
  body.patrol-standalone .patrol-section-head .patrol-module-actions,
  body.patrol-standalone .patrol-section-head>.patrol-schema-badge{
    grid-column:1/-1!important;
    margin-top:8px!important;
    justify-content:flex-start!important;
  }
  body.patrol-standalone .patrol-domain-overview{
    grid-template-columns:1fr!important;
  }
}
@media(max-width:640px){
  body.patrol-standalone .app-header-inner,
  body.patrol-standalone .product-hero,
  body.patrol-standalone .system-ribbon,
  body.patrol-standalone .governance-deck,
  body.patrol-standalone .patrol-page{
    width:min(100% - 20px,1480px)!important;
  }
  body.patrol-standalone .brand-mark.brand-logo{
    width:46px!important;height:46px!important;min-width:46px!important;border-radius:13px!important;
  }
  body.patrol-standalone .brand-copy p{display:none!important}
  body.patrol-standalone .product-hero{padding:22px!important}
  body.patrol-standalone .product-hero h2{font-size:28px!important}
  body.patrol-standalone .product-hero-flow{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
  }
  body.patrol-standalone .product-console-grid{
    grid-template-columns:1fr!important;
  }
  body.patrol-standalone .governance-deck{
    grid-template-columns:1fr!important;
  }
  body.patrol-standalone .system-ribbon{
    margin-bottom:10px!important;
  }
  body.patrol-standalone .patrol-hero,
  body.patrol-standalone .patrol-dashboard,
  body.patrol-standalone .patrol-person-zone,
  body.patrol-standalone .patrol-analysis-zone,
  body.patrol-standalone .patrol-output-zone,
  body.patrol-standalone .patrol-compare-zone{
    padding:18px!important;
  }
  body.patrol-standalone .patrol-section-nav{
    top:82px!important;
    width:100%!important;
  }
  body.patrol-standalone .patrol-one-paste-head{
    display:grid!important;
  }
  body.patrol-standalone .patrol-one-paste-head small{
    text-align:left!important;
  }
  body.patrol-standalone .patrol-map-canvas-shell,
  body.patrol-standalone #patrolProjectMapBoard,
  body.patrol-standalone #patrolStoreMapBoard{
    min-height:420px!important;
  }
  body.patrol-standalone .patrol-map-intelligence-panel{
    display:flex!important;
  }
  body.patrol-standalone .patrol-copy-grid{
    grid-template-columns:1fr!important;
  }
}


/* ========================================================================
   P4 — PROFESSIONAL STATISTICAL VISUALIZATION SHELL
   Product direction: compact analytical workspace, not a marketing landing page.
   ======================================================================== */
:root{
  --p4-bg:#f1f4f3;
  --p4-surface:#ffffff;
  --p4-surface-2:#f7f9f8;
  --p4-ink:#14221d;
  --p4-ink-2:#30413a;
  --p4-muted:#6f7d77;
  --p4-line:#dce3df;
  --p4-line-strong:#cbd6d0;
  --p4-navy:#173f69;
  --p4-navy-soft:#edf3f9;
  --p4-teal:#246b5a;
  --p4-teal-soft:#edf6f2;
  --p4-amber:#a96f18;
  --p4-amber-soft:#fbf5e8;
  --p4-red:#a94d45;
  --p4-red-soft:#fbefed;
  --p4-violet:#675886;
  --p4-shadow:0 14px 38px rgba(24,42,34,.055);
}
html{scroll-behavior:smooth}
body.patrol-standalone{
  background:var(--p4-bg)!important;
  color:var(--p4-ink)!important;
  font-family:Inter,"Segoe UI Variable","Segoe UI","Microsoft YaHei UI","Microsoft YaHei","PingFang SC",system-ui,sans-serif!important;
  letter-spacing:0!important;
}
body.patrol-standalone::before{display:none!important}
body.patrol-standalone .hidden{display:none!important}
body.patrol-standalone .app-header{
  position:sticky!important;top:0!important;z-index:100!important;
  min-height:72px!important;padding:0!important;
  border-bottom:1px solid rgba(203,214,208,.92)!important;
  background:rgba(250,252,251,.94)!important;
  box-shadow:none!important;backdrop-filter:blur(18px) saturate(130%)!important;
}
body.patrol-standalone .app-header-inner{
  width:min(1520px,calc(100% - 40px))!important;min-height:72px!important;margin:0 auto!important;padding:0!important;
  display:grid!important;grid-template-columns:auto minmax(0,1fr) auto!important;align-items:center!important;gap:28px!important;
}
body.patrol-standalone .brand-group{display:flex!important;align-items:center!important;gap:11px!important;text-decoration:none!important;min-width:290px!important}
body.patrol-standalone .brand-mark.brand-logo{
  width:42px!important;height:42px!important;border-radius:12px!important;overflow:hidden!important;
  border:1px solid #cbd6df!important;background:#102a58!important;box-shadow:0 4px 12px rgba(24,54,92,.14)!important;
}
body.patrol-standalone .brand-logo img{width:100%!important;height:100%!important;object-fit:cover!important;object-position:center 42%!important;display:block!important}
body.patrol-standalone .brand-copy{gap:0!important}
body.patrol-standalone .brand-copy .brand-kicker{font-size:9px!important;line-height:1.35!important;color:#6c7c75!important;letter-spacing:.08em!important;font-weight:760!important}
body.patrol-standalone .brand-copy h1{margin:1px 0 0!important;font-size:16px!important;line-height:1.3!important;color:#172720!important;font-weight:760!important;letter-spacing:-.015em!important}
body.patrol-standalone .brand-copy p{margin:1px 0 0!important;font-size:9.5px!important;line-height:1.3!important;color:#7b8983!important}
body.patrol-standalone .header-product-nav{justify-self:center;display:flex!important;align-items:center!important;gap:4px!important;padding:4px!important;border:1px solid #e0e6e3!important;border-radius:10px!important;background:#f5f7f6!important}
body.patrol-standalone .header-product-nav span{padding:7px 10px!important;border-radius:7px!important;color:#5c6c65!important;font-size:10px!important;font-weight:700!important;white-space:nowrap!important}
body.patrol-standalone .header-product-nav span:nth-child(1){background:#fff!important;color:#23486f!important;box-shadow:0 1px 5px rgba(24,50,77,.06)!important}
body.patrol-standalone .header-side{display:flex!important;align-items:center!important;gap:10px!important}
body.patrol-standalone .header-status{display:flex!important;align-items:center!important;gap:8px!important;padding:7px 10px!important;border:1px solid #d9e3de!important;border-radius:10px!important;background:#fff!important}
body.patrol-standalone .header-status-dot{width:7px!important;height:7px!important;border-radius:50%!important;background:#2f8268!important;box-shadow:0 0 0 4px rgba(47,130,104,.09)!important}
body.patrol-standalone .header-status b{display:block!important;font-size:10px!important;color:#31433b!important;font-weight:760!important}
body.patrol-standalone .header-status small{display:block!important;margin-top:1px!important;font-size:8.5px!important;color:#82908a!important}

body.patrol-standalone .analytics-masthead{
  width:min(1520px,calc(100% - 40px))!important;margin:22px auto 12px!important;padding:30px 32px!important;
  display:grid!important;grid-template-columns:minmax(0,1.18fr) minmax(520px,.82fr)!important;gap:38px!important;align-items:center!important;
  border:1px solid var(--p4-line)!important;border-radius:18px!important;background:var(--p4-surface)!important;box-shadow:var(--p4-shadow)!important;position:relative!important;overflow:hidden!important;
}
body.patrol-standalone .analytics-masthead::before{content:"";position:absolute;left:0;top:0;bottom:0;width:4px;background:linear-gradient(180deg,#244d77,#2a715f)!important}
body.patrol-standalone .analytics-kicker{display:block;margin-bottom:8px;color:#718078;font-size:9px;font-weight:800;letter-spacing:.13em}
body.patrol-standalone .analytics-masthead h2{margin:0!important;color:#15251e!important;font-size:32px!important;line-height:1.2!important;font-weight:720!important;letter-spacing:-.04em!important}
body.patrol-standalone .analytics-masthead-copy>p{max-width:780px!important;margin:12px 0 17px!important;color:#64736d!important;font-size:12px!important;line-height:1.75!important}
body.patrol-standalone .analytics-scope{display:flex!important;gap:6px!important;flex-wrap:wrap!important}
body.patrol-standalone .analytics-scope span{padding:6px 9px!important;border:1px solid #dee6e2!important;border-radius:7px!important;background:#f8faf9!important;color:#53655d!important;font-size:9px!important;font-weight:700!important}
body.patrol-standalone .analytics-capability-grid{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;border:1px solid #dce4e0!important;border-radius:14px!important;overflow:hidden!important;background:#fafbfb!important}
body.patrol-standalone .analytics-capability-grid article{min-height:102px!important;padding:17px!important;border-right:1px solid #e1e7e4!important;border-bottom:1px solid #e1e7e4!important;background:#fff!important}
body.patrol-standalone .analytics-capability-grid article:nth-child(2n){border-right:0!important}
body.patrol-standalone .analytics-capability-grid article:nth-child(n+3){border-bottom:0!important}
body.patrol-standalone .analytics-capability-grid span{display:block!important;color:#8a978f!important;font-size:8px!important;font-weight:800!important;letter-spacing:.08em!important}
body.patrol-standalone .analytics-capability-grid b{display:block!important;margin-top:9px!important;color:#23362e!important;font-size:13px!important;font-weight:760!important}
body.patrol-standalone .analytics-capability-grid small{display:block!important;margin-top:4px!important;color:#74817b!important;font-size:9.5px!important;line-height:1.5!important}
body.patrol-standalone .analytics-context-strip{
  width:min(1520px,calc(100% - 40px))!important;margin:0 auto 16px!important;padding:10px 14px!important;display:flex!important;align-items:center!important;justify-content:space-between!important;gap:20px!important;
  border:1px solid var(--p4-line)!important;border-radius:12px!important;background:#f8faf9!important;
}
body.patrol-standalone .analytics-flow{display:flex!important;align-items:center!important;gap:9px!important;color:#5f6f68!important;font-size:9.5px!important;font-weight:680!important}
body.patrol-standalone .analytics-flow span{display:flex!important;align-items:center!important;gap:5px!important;white-space:nowrap!important}
body.patrol-standalone .analytics-flow b{width:20px!important;height:20px!important;display:grid!important;place-items:center!important;border-radius:6px!important;background:#eaf0ed!important;color:#52665c!important;font-size:8px!important}
body.patrol-standalone .analytics-flow i{width:24px!important;height:1px!important;background:#ced9d3!important}
body.patrol-standalone .analytics-context-note{display:flex!important;align-items:center!important;gap:7px!important;color:#708079!important;font-size:9.5px!important;white-space:nowrap!important}
body.patrol-standalone .context-dot{width:6px!important;height:6px!important;border-radius:50%!important;background:#2f8067!important}
body.patrol-results-ready:not(.patrol-editing-data).patrol-standalone .analytics-masthead{display:none!important}
body.patrol-results-ready:not(.patrol-editing-data).patrol-standalone .analytics-context-strip{margin-top:14px!important}

body.patrol-standalone .patrol-page{width:min(1520px,calc(100% - 40px))!important;padding-bottom:64px!important}
body.patrol-standalone .patrol-page>.workspace{margin-bottom:14px!important}
body.patrol-standalone .workspace{border:1px solid var(--p4-line)!important;border-radius:18px!important;background:#fff!important;box-shadow:var(--p4-shadow)!important}
body.patrol-standalone .patrol-hero{padding:24px 26px!important}
body.patrol-standalone .patrol-section-head{grid-template-columns:32px minmax(0,1fr) auto!important;gap:6px 12px!important;margin-bottom:17px!important;align-items:start!important}
body.patrol-standalone .patrol-section-head .section-number{width:30px!important;height:30px!important;border-radius:8px!important;background:#eef3f1!important;color:#4e665b!important;font-size:9px!important;font-weight:800!important}
body.patrol-standalone .patrol-section-kicker{margin:0 0 3px!important;color:#6f8178!important;font-size:8.5px!important;letter-spacing:.1em!important}
body.patrol-standalone .patrol-section-head h2{font-size:22px!important;letter-spacing:-.03em!important;font-weight:730!important;color:#162720!important}
body.patrol-standalone .patrol-section-head p{font-size:10.5px!important;color:#728078!important;line-height:1.65!important}
body.patrol-results-ready:not(.patrol-editing-data).patrol-standalone #patrolPage>.patrol-hero .patrol-section-head{display:none!important}
body.patrol-results-ready:not(.patrol-editing-data).patrol-standalone #patrolPage>.patrol-hero{padding:14px 16px!important;background:#f8faf9!important}
body.patrol-results-ready:not(.patrol-editing-data).patrol-standalone #patrolPage>.patrol-hero .patrol-data-ready-bar{margin:0!important}
body.patrol-standalone .patrol-import-grid.patrol-one-paste-grid{grid-template-columns:minmax(0,1.58fr) minmax(320px,.42fr)!important;gap:14px!important}
body.patrol-standalone .patrol-one-paste-card{padding:17px!important;border-radius:14px!important;background:#f8faf9!important;border-color:#dce4e0!important}
body.patrol-standalone .patrol-one-paste-head{margin-bottom:10px!important}
body.patrol-standalone .patrol-one-paste-head strong{font-size:12.5px!important;color:#24372f!important}
body.patrol-standalone .patrol-one-paste-head small{font-size:9.5px!important;color:#7a8882!important}
body.patrol-standalone .patrol-one-paste-input{min-height:210px!important;border-radius:10px!important;padding:14px!important;font-family:"Cascadia Mono","SFMono-Regular",Consolas,"Microsoft YaHei UI",monospace!important;font-size:10.5px!important;line-height:1.7!important}
body.patrol-standalone .patrol-contract-card{padding:16px!important;border-radius:14px!important;background:#f4f7f6!important;border-color:#d9e2dd!important}
body.patrol-standalone .patrol-contract-card>strong{font-size:12px!important;margin-bottom:6px!important}
body.patrol-standalone .patrol-contract-card>div{grid-template-columns:70px minmax(0,1fr)!important;padding:10px 0!important}
body.patrol-standalone .patrol-contract-card span{font-size:8.5px!important;color:#50695d!important}
body.patrol-standalone .patrol-contract-card b{font-size:9.5px!important;color:#63736c!important}
body.patrol-standalone .patrol-package-check,body.patrol-standalone .patrol-import-status{font-size:9.5px!important;border-radius:8px!important;padding:8px 10px!important}
body.patrol-standalone .patrol-data-ready-bar{border-radius:10px!important;background:#edf5f1!important;border-color:#cfe0d7!important}

body.patrol-standalone .patrol-section-nav{top:82px!important;margin:0 auto 14px!important;border-radius:10px!important;padding:4px!important;background:rgba(248,250,249,.96)!important;box-shadow:0 8px 22px rgba(24,42,34,.055)!important}
body.patrol-standalone .patrol-section-nav button{min-height:32px!important;border-radius:7px!important;font-size:9.5px!important;padding:7px 11px!important}
body.patrol-standalone .patrol-section-nav button.active{background:#1e4e72!important;box-shadow:none!important}

body.patrol-standalone .patrol-dashboard,body.patrol-standalone .patrol-person-zone,body.patrol-standalone .patrol-analysis-zone,body.patrol-standalone .patrol-output-zone,body.patrol-standalone .patrol-compare-zone{padding:24px 26px!important}
body.patrol-standalone .patrol-module-actions .btn{min-height:32px!important;padding:6px 9px!important;font-size:9px!important}
body.patrol-standalone .patrol-schema-badge{border-radius:7px!important;font-size:8.5px!important;padding:6px 8px!important}

body.patrol-standalone .patrol-domain-overview{gap:12px!important}
body.patrol-standalone .patrol-domain-card{border-radius:15px!important;padding:18px!important;background:#fff!important;position:relative!important;overflow:hidden!important}
body.patrol-standalone .patrol-domain-card::before{content:"";position:absolute;left:0;right:0;top:0;height:3px;background:#315f87}
body.patrol-standalone .patrol-domain-card.store-domain::before{background:#347b68}
body.patrol-standalone .patrol-domain-head{align-items:flex-start!important;padding-bottom:12px!important;border-bottom:1px solid #e4e9e6!important}
body.patrol-standalone .patrol-domain-head h3{font-size:16px!important;font-weight:740!important;color:#1d3128!important}
body.patrol-standalone .patrol-domain-head p{font-size:9.5px!important;color:#77847e!important;line-height:1.55!important}
body.patrol-standalone .patrol-domain-total{font-size:34px!important;font-weight:720!important;color:#183f65!important;letter-spacing:-.04em!important}
body.patrol-standalone .store-domain .patrol-domain-total{color:#286958!important}
body.patrol-standalone .patrol-domain-total em{font-size:10px!important;color:#7d8a84!important}
body.patrol-standalone .patrol-domain-section-label,body.patrol-standalone .patrol-structure-subtitle{font-size:8.5px!important;color:#7f8c86!important;letter-spacing:.08em!important}
body.patrol-standalone .patrol-domain-metrics article,body.patrol-standalone .patrol-domain-daily article{padding:12px!important;border:1px solid #e1e7e4!important;border-radius:10px!important;background:#f8faf9!important;min-height:92px!important}
body.patrol-standalone .patrol-domain-metrics article>span,body.patrol-standalone .patrol-domain-daily article>span{font-size:8.5px!important;color:#798780!important}
body.patrol-standalone .patrol-domain-metrics article>strong,body.patrol-standalone .patrol-domain-daily article>strong{font-size:25px!important;line-height:1.2!important;font-weight:720!important;color:#263a31!important}
body.patrol-standalone .patrol-domain-metrics article>small,body.patrol-standalone .patrol-domain-daily article>small{font-size:8.5px!important;line-height:1.45!important;color:#8a9690!important}
body.patrol-standalone .patrol-domain-metrics .reg-zero{background:#fbf4f3!important;border-color:#eddad7!important}
body.patrol-standalone .patrol-domain-metrics .reg-one{background:#fcf8ef!important;border-color:#eadfca!important}
body.patrol-standalone .patrol-domain-metrics .reg-good{background:#f0f7f3!important;border-color:#d7e7df!important}
body.patrol-standalone .patrol-domain-metrics .rect{background:#f5f3f8!important;border-color:#e2ddeb!important}
body.patrol-standalone .patrol-panel{border-radius:14px!important;border-color:#dfe6e2!important;background:#fff!important}
body.patrol-standalone .patrol-panel-head{margin-bottom:12px!important;padding-bottom:10px!important}
body.patrol-standalone .patrol-panel-head h3{font-size:12.5px!important;color:#23372e!important}
body.patrol-standalone .patrol-panel-head small{font-size:9px!important;color:#7a8882!important}
body.patrol-standalone .patrol-leadership-summary{border-radius:12px!important;border:1px solid #d7e1dc!important;background:#f6f9f7!important;color:#34473f!important;font-size:11px!important}
body.patrol-standalone .hf31-action-section-title{margin-top:16px!important;padding-top:14px!important}
body.patrol-standalone .patrol-action-highlights{grid-template-columns:repeat(4,minmax(0,1fr))!important;gap:8px!important}
body.patrol-standalone .hf30-action-card,body.patrol-standalone .hf31-action-card{min-height:152px!important;border-radius:12px!important;border-color:#dfe5e2!important;box-shadow:none!important}
body.patrol-standalone .patrol-progress-overview-panel,body.patrol-standalone .patrol-macro-panel{margin-top:12px!important}
body.patrol-standalone .patrol-domain-structure-grid{gap:12px!important}

body.patrol-standalone .patrol-ranking-hero-panel{padding:17px!important;border-radius:14px!important}
body.patrol-standalone .patrol-ranking-executive,body.patrol-standalone .patrol-ranking-board,body.patrol-standalone .patrol-ranking-board.no-history{border-radius:11px!important}
body.patrol-standalone .patrol-ranking-row{min-height:58px!important}
body.patrol-standalone .table-wrap{border-radius:11px!important;max-height:620px!important}
body.patrol-standalone .patrol-table{font-size:9.5px!important}
body.patrol-standalone .patrol-table th{font-size:8.5px!important;background:#f5f7f6!important;color:#6e7d76!important}
body.patrol-standalone .patrol-table td{font-size:9.3px!important;color:#485a51!important}

body.patrol-standalone .patrol-dual-maps{gap:12px!important}
body.patrol-standalone .patrol-map-panel,body.patrol-standalone .patrol-project-intelligence-map,body.patrol-standalone .patrol-store-intelligence-map{padding:17px!important;border-radius:15px!important}
body.patrol-standalone .patrol-map-intelligence-layout{grid-template-columns:minmax(0,2.05fr) minmax(300px,.62fr)!important;gap:12px!important}
body.patrol-standalone .patrol-map-canvas-shell{min-height:690px!important;border-radius:12px!important;background:#edf1ef!important;border-color:#cfd9d4!important}
body.patrol-standalone #patrolProjectMapBoard,body.patrol-standalone #patrolStoreMapBoard{min-height:690px!important;background:#f4f6f5!important}
body.patrol-standalone .patrol-map-explore-bar{border-radius:10px!important;padding:8px!important;margin-bottom:9px!important}
body.patrol-standalone .patrol-map-intelligence-panel{border-radius:12px!important;padding:13px!important;background:#f7f9f8!important}
body.patrol-standalone .patrol-map-intelligence-title span{font-size:11px!important}
body.patrol-standalone .patrol-map-metric-strip{border-radius:9px!important}
body.patrol-standalone .patrol-map-metric-strip article{min-height:64px!important;padding:8px!important}
body.patrol-standalone .patrol-map-actions{gap:5px!important}
body.patrol-standalone .patrol-map-actions .btn{font-size:8.5px!important;min-height:31px!important;padding:6px 8px!important}

body.patrol-standalone .patrol-copy-grid{gap:8px!important}
body.patrol-standalone .patrol-copy-card{min-height:165px!important;border-radius:12px!important;padding:14px!important}
body.patrol-standalone .patrol-copy-card h3{font-size:13px!important}
body.patrol-standalone .patrol-copy-card p{font-size:9.5px!important}
body.patrol-standalone .patrol-brief{min-height:190px!important;font-size:10px!important}
body.patrol-standalone .patrol-compare-kpis{gap:8px!important}
body.patrol-standalone .patrol-compare-kpis article{border-radius:11px!important;box-shadow:none!important}
body.patrol-standalone .patrol-chart-panel{border-radius:12px!important}

body.patrol-standalone .btn{border-radius:8px!important;min-height:34px!important;font-size:9.5px!important;font-weight:700!important}
body.patrol-standalone .btn.large{min-height:39px!important;font-size:10px!important}
body.patrol-standalone .btn.primary{background:#1f5d4d!important;border-color:#1f5d4d!important;box-shadow:none!important}
body.patrol-standalone .btn.primary:hover{background:#194d40!important;border-color:#194d40!important}
body.patrol-standalone textarea:focus,body.patrol-standalone input:focus,body.patrol-standalone select:focus{outline:2px solid rgba(31,93,77,.11)!important;border-color:#7fa99b!important}

.system-runtime-alert{position:fixed;left:20px;right:20px;top:84px;z-index:99999;display:flex;align-items:center;gap:12px;padding:12px 14px;border:1px solid #d6a29c;border-radius:10px;background:#fff7f5;color:#79413c;box-shadow:0 14px 34px rgba(73,38,32,.12);font:500 12px/1.5 Inter,"Segoe UI","Microsoft YaHei UI",sans-serif}.system-runtime-alert strong{font-weight:760}.system-runtime-alert span{color:#8a5b55}

@media(max-width:1250px){
  body.patrol-standalone .header-product-nav{display:none!important}
  body.patrol-standalone .app-header-inner{grid-template-columns:1fr auto!important}
  body.patrol-standalone .analytics-masthead{grid-template-columns:1fr!important}
  body.patrol-standalone .analytics-capability-grid{grid-template-columns:repeat(4,minmax(0,1fr))!important}
  body.patrol-standalone .analytics-capability-grid article{border-bottom:0!important}
  body.patrol-standalone .patrol-import-grid.patrol-one-paste-grid{grid-template-columns:1fr!important}
  body.patrol-standalone .patrol-action-highlights{grid-template-columns:repeat(2,minmax(0,1fr))!important}
  body.patrol-standalone .patrol-map-intelligence-layout{grid-template-columns:1fr!important}
}
@media(max-width:820px){
  body.patrol-standalone .app-header-inner,body.patrol-standalone .analytics-masthead,body.patrol-standalone .analytics-context-strip,body.patrol-standalone .patrol-page{width:calc(100% - 20px)!important}
  body.patrol-standalone .header-status{display:none!important}
  body.patrol-standalone .analytics-masthead{padding:22px!important}
  body.patrol-standalone .analytics-masthead h2{font-size:25px!important}
  body.patrol-standalone .analytics-capability-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}
  body.patrol-standalone .analytics-capability-grid article:nth-child(2){border-right:0!important}
  body.patrol-standalone .analytics-capability-grid article:nth-child(-n+2){border-bottom:1px solid #e1e7e4!important}
  body.patrol-standalone .analytics-context-strip{display:none!important}
  body.patrol-standalone .patrol-dashboard,body.patrol-standalone .patrol-person-zone,body.patrol-standalone .patrol-analysis-zone,body.patrol-standalone .patrol-output-zone,body.patrol-standalone .patrol-compare-zone,body.patrol-standalone .patrol-hero{padding:18px!important}
  body.patrol-standalone .patrol-domain-overview,body.patrol-standalone .patrol-action-highlights{grid-template-columns:1fr!important}
}


/* === P4 VISUAL ANALYTICS BOARD — chart-first statistical workspace === */
.analytics-masthead{padding:26px 30px;min-height:0;gap:28px}
.analytics-masthead .masthead-title{font-size:clamp(30px,2.25vw,44px);line-height:1.08}
.analytics-masthead .masthead-copy{max-width:790px}
.analytics-capability-grid{min-height:154px}
.analytics-capability-grid article{padding:17px 18px}

.p4-viz-board{display:grid;gap:14px;margin:0 0 18px}
.p4-viz-kpis{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));background:#fff;border:1px solid #d9e3df;border-radius:18px;overflow:hidden;box-shadow:0 10px 28px rgba(28,55,47,.045)}
.p4-viz-kpis article{position:relative;padding:18px 18px 16px;min-width:0;border-right:1px solid #e5ece9}
.p4-viz-kpis article:last-child{border-right:0}.p4-viz-kpis article:before{content:"";position:absolute;left:18px;right:18px;top:0;height:3px;border-radius:0 0 3px 3px;background:#c9d8d2}
.p4-viz-kpis article:nth-child(1):before,.p4-viz-kpis article:nth-child(2):before{background:#27634f}.p4-viz-kpis article:nth-child(3):before{background:#315f86}.p4-viz-kpis article:nth-child(4):before,.p4-viz-kpis article:nth-child(5):before{background:#6a63a9}.p4-viz-kpis article.attention:before{background:#b85249}
.p4-viz-kpis span{display:block;font-size:12px;font-weight:700;color:#60716b;letter-spacing:.02em}.p4-viz-kpis strong{display:block;margin:7px 0 5px;font-size:31px;line-height:1;font-variant-numeric:tabular-nums;color:#173e32;letter-spacing:-.035em}.p4-viz-kpis article.attention strong{color:#a5463f}.p4-viz-kpis small{display:block;color:#82908b;font-size:11px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.p4-viz-grid{display:grid;grid-template-columns:1.2fr .95fr 1.05fr;gap:14px}
.p4-chart-panel{min-height:244px;background:#fff;border:1px solid #d9e3df;border-radius:18px;padding:19px 20px;box-shadow:0 10px 30px rgba(28,55,47,.045)}
.p4-chart-panel header{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;margin-bottom:18px}.p4-chart-panel header span{display:block;font-size:10px;line-height:1.2;color:#82908b;letter-spacing:.14em;font-weight:800}.p4-chart-panel header h3{margin:5px 0 0;font-size:18px;color:#173e32}.p4-chart-panel header>b{font-size:12px;color:#52675f;border:1px solid #dce5e1;border-radius:999px;padding:5px 9px;font-variant-numeric:tabular-nums;background:#f8faf9}
.p4-stack{height:22px;border-radius:7px;background:#eef2f0;display:flex;overflow:hidden;margin:25px 0 14px}.p4-stack>i{display:block;width:0;transition:width .45s ease}.p4-stack>i.zero{background:#b85249}.p4-stack>i.one{background:#c5943e}.p4-stack>i.good{background:#2f7c5e}
.p4-stack-legend{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.p4-stack-legend span{display:grid;grid-template-columns:8px 1fr auto;align-items:center;gap:7px;font-size:11px;color:#65766f}.p4-stack-legend span>i{width:8px;height:8px;border-radius:2px}.p4-stack-legend span>i.zero{background:#b85249}.p4-stack-legend span>i.one{background:#c5943e}.p4-stack-legend span>i.good{background:#2f7c5e}.p4-stack-legend b{font-size:12px;color:#273f36;font-variant-numeric:tabular-nums}.p4-chart-caption{margin-top:18px;padding-top:13px;border-top:1px solid #e9efed;color:#60716b;font-size:12px;line-height:1.55}
.p4-donut-row{display:grid;grid-template-columns:repeat(2,1fr);gap:16px;align-items:start}.p4-donut-item{text-align:center}.p4-donut{--value:0;position:relative;width:118px;height:118px;margin:0 auto;border-radius:50%;background:conic-gradient(#2f7c5e calc(var(--value)*1%),#e8efec 0);display:grid;place-items:center}.p4-donut.store{background:conic-gradient(#6861a6 calc(var(--value)*1%),#ecebf5 0)}.p4-donut:after{content:"";position:absolute;inset:12px;border-radius:50%;background:#fff}.p4-donut>div{position:relative;z-index:1;display:grid}.p4-donut strong{font-size:22px;color:#173e32;font-variant-numeric:tabular-nums;letter-spacing:-.04em}.p4-donut small{margin-top:3px;font-size:10px;color:#81908b;font-weight:700}.p4-donut-item p{margin:10px 0 0;color:#687972;font-size:11px;line-height:1.45}
.p4-priority-list{display:grid;gap:8px}.p4-priority-row{display:grid;grid-template-columns:30px 1fr auto;align-items:center;gap:10px;padding:9px 10px;border:1px solid #e6ece9;border-radius:10px;background:#fbfcfc}.p4-priority-row>i{display:grid;place-items:center;width:26px;height:26px;border-radius:8px;background:#f7e9e7;color:#a5463f;font-style:normal;font-weight:850;font-size:11px}.p4-priority-row.warn>i{background:#fbf1dc;color:#976b24}.p4-priority-row.store>i{background:#efeff8;color:#645da0}.p4-priority-row div{min-width:0}.p4-priority-row b{display:block;color:#263f36;font-size:12px}.p4-priority-row small{display:block;color:#7c8a85;font-size:10px;margin-top:2px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.p4-priority-row>strong{font-size:18px;color:#173e32;font-variant-numeric:tabular-nums}
#patrolDashboard>.patrol-section-head{margin-bottom:14px}.patrol-domain-overview{margin-top:0}
@media(max-width:1180px){.p4-viz-kpis{grid-template-columns:repeat(3,1fr)}.p4-viz-kpis article:nth-child(3){border-right:0}.p4-viz-kpis article:nth-child(-n+3){border-bottom:1px solid #e5ece9}.p4-viz-grid{grid-template-columns:1fr 1fr}.p4-priority-panel{grid-column:1/-1}}
@media(max-width:760px){.p4-viz-kpis{grid-template-columns:repeat(2,1fr)}.p4-viz-kpis article{border-bottom:1px solid #e5ece9}.p4-viz-kpis article:nth-child(2n){border-right:0}.p4-viz-kpis article:nth-last-child(-n+2){border-bottom:0}.p4-viz-grid{grid-template-columns:1fr}.p4-priority-panel{grid-column:auto}.p4-chart-panel{min-height:0}}


/* ==========================================================================
   P5 · Advanced Operations Intelligence Theme
   Dark, high-contrast, data-first. Preserves all business/map capabilities.
   ========================================================================== */
body.patrol-standalone{
  --p5-bg:#050b14;--p5-bg2:#07111f;--p5-surface:#0b1525;--p5-surface2:#0e1b2e;--p5-surface3:#12223a;
  --p5-line:rgba(128,176,255,.16);--p5-line2:rgba(120,212,255,.28);--p5-text:#eef6ff;--p5-text2:#bfd0e5;--p5-muted:#7f94ad;
  --p5-blue:#61a8ff;--p5-cyan:#4ee0db;--p5-violet:#8f83ff;--p5-green:#5ed9a7;--p5-amber:#ffc76a;--p5-red:#ff7d78;
  --p5-glow:0 20px 60px rgba(0,0,0,.34);--p5-inner:inset 0 1px 0 rgba(255,255,255,.035);
  background:
    radial-gradient(920px 520px at 8% -6%,rgba(45,111,255,.18),transparent 58%),
    radial-gradient(780px 460px at 92% 2%,rgba(41,215,196,.12),transparent 60%),
    linear-gradient(180deg,#050a13 0%,#07101d 46%,#050a13 100%)!important;
  color:var(--p5-text)!important;color-scheme:dark;
}
body.patrol-standalone::before{display:block!important;content:""!important;position:fixed!important;inset:0!important;z-index:-1!important;pointer-events:none!important;opacity:.28!important;background-image:linear-gradient(rgba(122,170,255,.045) 1px,transparent 1px),linear-gradient(90deg,rgba(122,170,255,.045) 1px,transparent 1px)!important;background-size:44px 44px!important;mask-image:linear-gradient(180deg,#000,rgba(0,0,0,.45) 62%,transparent)!important}
body.patrol-standalone a,body.patrol-standalone button,body.patrol-standalone input,body.patrol-standalone textarea,body.patrol-standalone select{font-family:inherit!important}
body.patrol-standalone [id^="patrol"],body.patrol-standalone .patrol-domain-card{scroll-margin-top:104px}

body.patrol-standalone .app-header{background:rgba(5,11,20,.82)!important;border-bottom:1px solid rgba(117,166,239,.14)!important;box-shadow:0 12px 34px rgba(0,0,0,.24)!important;backdrop-filter:blur(22px) saturate(145%)!important}
body.patrol-standalone .app-header-inner{width:min(1600px,calc(100% - 42px))!important;min-height:76px!important;gap:30px!important}
body.patrol-standalone .brand-group{min-width:310px!important}
body.patrol-standalone .brand-mark.brand-logo{width:46px!important;height:46px!important;border-radius:13px!important;border:1px solid rgba(114,173,255,.34)!important;background:#0b1b38!important;box-shadow:0 0 0 1px rgba(255,255,255,.02),0 0 28px rgba(80,132,255,.18)!important}
body.patrol-standalone .brand-copy .brand-kicker{color:#7991ad!important;font-size:9px!important;letter-spacing:.12em!important}
body.patrol-standalone .brand-copy h1{color:#f4f8ff!important;font-size:17px!important;font-weight:760!important}
body.patrol-standalone .brand-copy p{color:#6f849f!important;font-size:9.5px!important}
body.patrol-standalone .header-product-nav{display:flex!important;justify-self:center!important;align-items:center!important;gap:5px!important;padding:5px!important;border:1px solid rgba(126,177,255,.14)!important;border-radius:13px!important;background:rgba(255,255,255,.035)!important;box-shadow:var(--p5-inner)!important}
body.patrol-standalone .header-product-nav button{appearance:none!important;border:1px solid transparent!important;background:transparent!important;color:#8fa5bf!important;min-height:34px!important;padding:7px 13px!important;border-radius:9px!important;font-size:10.5px!important;font-weight:720!important;white-space:nowrap!important;cursor:pointer!important;transition:color .18s ease,background .18s ease,border-color .18s ease,transform .18s ease,box-shadow .18s ease!important}
body.patrol-standalone .header-product-nav button:hover{color:#e9f4ff!important;background:rgba(97,168,255,.08)!important;border-color:rgba(97,168,255,.17)!important;transform:translateY(-1px)!important}
body.patrol-standalone .header-product-nav button.active{color:#f6fbff!important;background:linear-gradient(135deg,rgba(69,127,255,.28),rgba(44,211,199,.18))!important;border-color:rgba(94,183,255,.38)!important;box-shadow:0 0 22px rgba(67,145,255,.15),inset 0 1px 0 rgba(255,255,255,.06)!important}
body.patrol-standalone .header-product-nav button.awaiting-data::after{content:"";display:inline-block;width:4px;height:4px;margin-left:7px;border-radius:50%;background:#5c6d81;vertical-align:middle}
body.patrol-standalone .header-product-nav button.data-ready::after{content:"";display:inline-block;width:4px;height:4px;margin-left:7px;border-radius:50%;background:var(--p5-cyan);box-shadow:0 0 8px rgba(78,224,219,.6);vertical-align:middle}
body.patrol-standalone .header-status{border-color:rgba(112,186,255,.18)!important;background:rgba(255,255,255,.035)!important;padding:8px 11px!important}
body.patrol-standalone .header-status-dot{background:var(--p5-cyan)!important;box-shadow:0 0 0 4px rgba(78,224,219,.08),0 0 16px rgba(78,224,219,.46)!important;animation:p5Pulse 2.8s ease-in-out infinite}
body.patrol-standalone .header-status b{color:#dcecff!important}.header-status small{color:#758ca7!important}
@keyframes p5Pulse{0%,100%{opacity:.75}50%{opacity:1;box-shadow:0 0 0 5px rgba(78,224,219,.07),0 0 22px rgba(78,224,219,.58)}}

body.patrol-standalone .analytics-masthead{width:min(1600px,calc(100% - 42px))!important;margin:24px auto 14px!important;padding:36px 38px!important;border:1px solid rgba(119,171,255,.17)!important;border-radius:22px!important;background:linear-gradient(135deg,rgba(12,23,40,.97),rgba(8,17,30,.94))!important;box-shadow:0 28px 80px rgba(0,0,0,.28),var(--p5-inner)!important;isolation:isolate!important}
body.patrol-standalone .analytics-masthead::before{width:3px!important;background:linear-gradient(180deg,var(--p5-blue),var(--p5-cyan),var(--p5-violet))!important;box-shadow:0 0 22px rgba(84,165,255,.42)!important}
body.patrol-standalone .analytics-masthead::after{content:"";position:absolute;right:-120px;top:-160px;width:620px;height:620px;border-radius:50%;background:radial-gradient(circle,rgba(61,132,255,.15),rgba(50,212,204,.055) 32%,transparent 67%);z-index:-1;pointer-events:none}
body.patrol-standalone .analytics-kicker{color:#68dcd8!important;font-size:9px!important;letter-spacing:.18em!important}
body.patrol-standalone .analytics-masthead h2{color:#f2f7ff!important;font-size:36px!important;line-height:1.16!important;font-weight:740!important;letter-spacing:-.035em!important;text-shadow:0 0 26px rgba(75,149,255,.08)}
body.patrol-standalone .analytics-masthead-copy>p{color:#9bb0c8!important;font-size:12.5px!important;max-width:800px!important;line-height:1.8!important}
body.patrol-standalone .analytics-system-line{display:flex;align-items:center;gap:8px 16px;flex-wrap:wrap;margin:2px 0 16px;color:#718aa6;font-size:8.5px;font-weight:760;letter-spacing:.08em}
body.patrol-standalone .analytics-system-line span{display:inline-flex;align-items:center;gap:6px}
body.patrol-standalone .analytics-system-line i{width:6px;height:6px;border-radius:50%;background:var(--p5-cyan);box-shadow:0 0 12px rgba(78,224,219,.55)}
body.patrol-standalone .analytics-scope span{border-color:rgba(122,179,255,.14)!important;background:rgba(255,255,255,.035)!important;color:#91a8c1!important;padding:7px 10px!important}
body.patrol-standalone .analytics-capability-grid{border-color:rgba(120,174,255,.16)!important;background:rgba(6,13,24,.46)!important;border-radius:17px!important;box-shadow:inset 0 1px 0 rgba(255,255,255,.025)!important}
body.patrol-standalone .analytics-capability-grid article{background:rgba(255,255,255,.025)!important;border-color:rgba(120,174,255,.11)!important;min-height:108px!important;transition:background .2s ease!important}
body.patrol-standalone .analytics-capability-grid article:hover{background:rgba(80,143,255,.055)!important}
body.patrol-standalone .analytics-capability-grid span{color:#5f7b9a!important}.analytics-capability-grid b{color:#edf5ff!important}.analytics-capability-grid small{color:#788fa9!important}
body.patrol-standalone .analytics-context-strip{width:min(1600px,calc(100% - 42px))!important;border-color:rgba(123,172,244,.13)!important;background:rgba(9,18,31,.78)!important;box-shadow:var(--p5-inner)!important}
body.patrol-standalone .analytics-flow{color:#89a0b9!important}.analytics-flow b{background:rgba(91,160,255,.10)!important;color:#9fc8ff!important}.analytics-flow i{background:rgba(125,176,244,.20)!important}.analytics-context-note{color:#7188a3!important}.context-dot{background:var(--p5-cyan)!important;box-shadow:0 0 10px rgba(78,224,219,.35)}

body.patrol-standalone .patrol-page{width:min(1600px,calc(100% - 42px))!important}
body.patrol-standalone .workspace,body.patrol-standalone .patrol-panel,body.patrol-standalone .patrol-domain-card,body.patrol-standalone .p4-viz-kpis,body.patrol-standalone .p4-chart-panel{background:linear-gradient(180deg,rgba(12,23,40,.95),rgba(8,17,30,.96))!important;border-color:var(--p5-line)!important;box-shadow:var(--p5-glow),var(--p5-inner)!important}
body.patrol-standalone .workspace{border-radius:20px!important}
body.patrol-standalone .patrol-section-head .section-number{background:rgba(88,164,255,.10)!important;color:#8bc2ff!important;border:1px solid rgba(104,176,255,.16)!important}
body.patrol-standalone .patrol-section-kicker{color:#5fd8d4!important}.patrol-section-head h2{color:#eff6ff!important}.patrol-section-head p{color:#8197af!important}
body.patrol-standalone .patrol-one-paste-card,body.patrol-standalone .patrol-contract-card{background:rgba(255,255,255,.025)!important;border-color:rgba(122,174,244,.13)!important}
body.patrol-standalone .patrol-one-paste-head strong,body.patrol-standalone .patrol-contract-card>strong{color:#e8f2ff!important}.patrol-one-paste-head small,.patrol-contract-card b{color:#8398b0!important}.patrol-contract-card span{color:#66cec9!important}
body.patrol-standalone .patrol-one-paste-input,body.patrol-standalone textarea,body.patrol-standalone input,body.patrol-standalone select{background:#07111f!important;color:#dfeeff!important;border-color:rgba(112,170,247,.16)!important;caret-color:var(--p5-cyan)!important}
body.patrol-standalone .patrol-one-paste-input::placeholder,body.patrol-standalone textarea::placeholder,body.patrol-standalone input::placeholder{color:#53677e!important}
body.patrol-standalone textarea:focus,body.patrol-standalone input:focus,body.patrol-standalone select:focus{outline:none!important;border-color:rgba(78,196,235,.44)!important;box-shadow:0 0 0 3px rgba(72,179,238,.08),0 0 28px rgba(60,135,255,.08)!important}
body.patrol-standalone #patrolPage .btn{border-color:rgba(117,171,244,.18)!important;background:rgba(255,255,255,.035)!important;color:#b9cce1!important;box-shadow:none!important;transition:.18s ease!important}
body.patrol-standalone #patrolPage .btn:hover{background:rgba(88,154,255,.09)!important;color:#eef6ff!important;border-color:rgba(103,179,255,.30)!important;transform:translateY(-1px)!important}
body.patrol-standalone #patrolPage .btn.primary{background:linear-gradient(135deg,#2f76e8,#1d9fa5)!important;color:#fff!important;border-color:rgba(104,202,255,.34)!important;box-shadow:0 10px 26px rgba(34,116,213,.20)!important}
body.patrol-standalone #patrolPage .btn.primary:hover{filter:brightness(1.08)!important;box-shadow:0 12px 32px rgba(34,135,230,.28)!important}
body.patrol-standalone .patrol-package-check,body.patrol-standalone .patrol-import-status{background:rgba(255,255,255,.025)!important;border-color:rgba(117,173,244,.13)!important;color:#859ab1!important}
body.patrol-standalone .patrol-data-ready-bar{background:rgba(54,170,135,.09)!important;border-color:rgba(91,216,172,.20)!important;color:#a8e6cf!important}

body.patrol-standalone .patrol-section-nav{top:86px!important;border:1px solid rgba(118,174,247,.16)!important;background:rgba(7,15,28,.86)!important;box-shadow:0 16px 38px rgba(0,0,0,.28),var(--p5-inner)!important;backdrop-filter:blur(18px)!important}
body.patrol-standalone .patrol-section-nav button{color:#839ab4!important}.patrol-section-nav button:hover{background:rgba(91,155,255,.08)!important;color:#e2efff!important}.patrol-section-nav button.active{background:linear-gradient(135deg,rgba(57,120,239,.85),rgba(25,147,159,.78))!important;color:#fff!important;border:1px solid rgba(107,203,255,.24)!important}

body.patrol-standalone .p4-viz-kpis{overflow:hidden!important}
body.patrol-standalone .p4-viz-kpis article{background:rgba(255,255,255,.018)!important;border-color:rgba(127,179,244,.10)!important}
body.patrol-standalone .p4-viz-kpis article:before{background:linear-gradient(90deg,var(--p5-blue),var(--p5-cyan))!important;opacity:.72!important}
body.patrol-standalone .p4-viz-kpis article:nth-child(3):before{background:linear-gradient(90deg,#6ea8ff,#8b83ff)!important}.p4-viz-kpis article:nth-child(4):before,.p4-viz-kpis article:nth-child(5):before{background:linear-gradient(90deg,#8b83ff,#58b8ff)!important}.p4-viz-kpis article.attention:before{background:linear-gradient(90deg,#ff8c76,#ff5f7d)!important}
body.patrol-standalone .p4-viz-kpis span{color:#8197b0!important}.p4-viz-kpis strong{color:#eef6ff!important;text-shadow:0 0 22px rgba(83,158,255,.08)}.p4-viz-kpis article.attention strong{color:#ff9b94!important}.p4-viz-kpis small{color:#61768d!important}
body.patrol-standalone .p4-chart-panel header span{color:#6583a4!important}.p4-chart-panel header h3{color:#edf5ff!important}.p4-chart-panel header>b{background:rgba(255,255,255,.03)!important;border-color:rgba(119,174,244,.14)!important;color:#8ea7c0!important}
body.patrol-standalone .p4-stack{background:#0b1728!important}.p4-stack>i.zero{background:#e56767!important}.p4-stack>i.one{background:#d8a84e!important}.p4-stack>i.good{background:#43ba91!important}.p4-stack-legend span{color:#8198b1!important}.p4-stack-legend b{color:#dceaff!important}.p4-chart-caption{border-color:rgba(121,175,244,.10)!important;color:#7f95ad!important}
body.patrol-standalone .p4-donut{background:conic-gradient(#47d6a4 calc(var(--value)*1%),#101d2d 0)!important;box-shadow:0 0 28px rgba(64,209,163,.07)}.p4-donut.store{background:conic-gradient(#8b83ff calc(var(--value)*1%),#101d2d 0)!important}.p4-donut:after{background:#0a1525!important;box-shadow:inset 0 0 0 1px rgba(129,179,247,.08)!important}.p4-donut strong{color:#edf5ff!important}.p4-donut small,.p4-donut-item p{color:#778da6!important}
body.patrol-standalone .p4-priority-row{background:rgba(255,255,255,.022)!important;border-color:rgba(122,177,244,.11)!important}.p4-priority-row b{color:#dceaff!important}.p4-priority-row small{color:#6f849c!important}.p4-priority-row>strong{color:#eef6ff!important}.p4-priority-row>i{background:rgba(255,105,105,.10)!important;color:#ff9b94!important}.p4-priority-row.warn>i{background:rgba(255,198,93,.10)!important;color:#ffd07d!important}.p4-priority-row.store>i{background:rgba(139,131,255,.10)!important;color:#aaa3ff!important}

body.patrol-standalone .patrol-domain-card::before{background:linear-gradient(90deg,#568eff,#4cddda)!important}.patrol-domain-card.store-domain::before{background:linear-gradient(90deg,#8a7fff,#4ec8da)!important}
body.patrol-standalone .patrol-domain-head{border-color:rgba(120,174,244,.10)!important}.patrol-domain-head h3{color:#eff6ff!important}.patrol-domain-head p{color:#788da5!important}.patrol-domain-total{color:#82bbff!important}.store-domain .patrol-domain-total{color:#a79eff!important}.patrol-domain-total em{color:#6d829a!important}
body.patrol-standalone .patrol-domain-metrics article,body.patrol-standalone .patrol-domain-daily article{background:rgba(255,255,255,.022)!important;border-color:rgba(120,174,244,.10)!important}.patrol-domain-metrics article>span,.patrol-domain-daily article>span{color:#768ba3!important}.patrol-domain-metrics article>strong,.patrol-domain-daily article>strong{color:#eaf3ff!important}.patrol-domain-metrics article>small,.patrol-domain-daily article>small{color:#62778f!important}
body.patrol-standalone .patrol-domain-metrics .reg-zero{background:rgba(229,103,103,.07)!important;border-color:rgba(229,103,103,.14)!important}.patrol-domain-metrics .reg-one{background:rgba(216,168,78,.07)!important;border-color:rgba(216,168,78,.14)!important}.patrol-domain-metrics .reg-good{background:rgba(67,186,145,.07)!important;border-color:rgba(67,186,145,.14)!important}.patrol-domain-metrics .rect{background:rgba(139,131,255,.07)!important;border-color:rgba(139,131,255,.14)!important}
body.patrol-standalone .patrol-panel-head{border-color:rgba(122,176,244,.10)!important}.patrol-panel-head h3{color:#e9f3ff!important}.patrol-panel-head small{color:#71869e!important}.patrol-eyebrow{color:#62d8d5!important}.patrol-schema-badge,.patrol-domain-chip{background:rgba(95,165,255,.08)!important;border-color:rgba(112,184,255,.16)!important;color:#93bff0!important}
body.patrol-standalone .patrol-leadership-summary{background:rgba(62,132,220,.06)!important;border-color:rgba(95,168,255,.15)!important;color:#abc2da!important}
body.patrol-standalone .patrol-empty-card,body.patrol-standalone .patrol-identity-empty,body.patrol-standalone .hf32-domain-empty{background:rgba(255,255,255,.018)!important;border-color:rgba(120,175,246,.10)!important;color:#70859d!important}

body.patrol-standalone .patrol-table,body.patrol-standalone table{background:#081321!important;color:#bacce0!important;border-color:rgba(121,177,247,.11)!important}.patrol-table thead th,body.patrol-standalone table thead th{background:#0d1b2e!important;color:#8fb3d9!important;border-color:rgba(121,177,247,.10)!important;position:sticky;top:0;z-index:2}.patrol-table td,body.patrol-standalone table td{border-color:rgba(121,177,247,.08)!important;color:#a9bdd2!important}.patrol-table tbody tr:hover td,body.patrol-standalone table tbody tr:hover td{background:rgba(79,146,235,.055)!important;color:#e4f0ff!important}.table-wrap{border-color:rgba(121,177,247,.10)!important;background:#081321!important}
body.patrol-standalone .patrol-ranking-row,body.patrol-standalone .patrol-person-progress-card,body.patrol-standalone .patrol-action-card,body.patrol-standalone .hf30-action-card,body.patrol-standalone .hf31-action-card{background:rgba(255,255,255,.02)!important;border-color:rgba(120,174,244,.10)!important;color:#b6c9dd!important;box-shadow:none!important}

body.patrol-standalone .patrol-map-explore-bar,body.patrol-standalone .patrol-map-intelligence-panel,body.patrol-standalone .patrol-map-reading-hint{background:rgba(7,16,29,.92)!important;border-color:rgba(120,177,247,.14)!important;color:#93a9c0!important}.patrol-map-canvas-shell{background:#050b14!important;border-color:rgba(116,176,248,.18)!important;box-shadow:0 18px 48px rgba(0,0,0,.28)!important}.patrol-map-canvas-shell canvas{border-radius:14px!important}.patrol-map-filter-group button{background:rgba(255,255,255,.03)!important;color:#839ab4!important;border-color:rgba(117,174,247,.12)!important}.patrol-map-filter-group button.active{background:rgba(73,143,238,.18)!important;color:#eaf4ff!important;border-color:rgba(93,174,255,.32)!important}.patrol-map-search-box{background:#081321!important;border-color:rgba(117,174,247,.14)!important}.patrol-map-priority-row{background:rgba(255,255,255,.02)!important;border-color:rgba(120,174,244,.10)!important;color:#a9bed3!important}.patrol-map-intelligence-panel h4,.patrol-map-intelligence-panel b{color:#e1edfb!important}.patrol-map-intelligence-panel small,.patrol-map-narrative,.patrol-map-conclusion{color:#748aa3!important}.patrol-building-popup{background:#09172a!important;color:#e8f3ff!important;border-color:rgba(100,181,255,.28)!important;box-shadow:0 18px 42px rgba(0,0,0,.44)!important}
body.patrol-standalone dialog{background:#07111f!important;color:#dcecff!important;border:1px solid rgba(113,178,255,.22)!important;box-shadow:0 30px 100px rgba(0,0,0,.65)!important}.preview-dialog-head{background:#0b182a!important;border-color:rgba(116,176,247,.14)!important;color:#e5f1ff!important}.preview-dialog-body{background:#050b14!important}

body.patrol-standalone .patrol-output-zone .patrol-copy-card,body.patrol-standalone .patrol-compare-zone .patrol-panel,body.patrol-standalone .patrol-trace-card{background:rgba(255,255,255,.02)!important;border-color:rgba(120,174,244,.10)!important}.patrol-copy-card h3,.patrol-trace-card b{color:#e9f4ff!important}.patrol-copy-card p,.patrol-trace-card small{color:#758aa2!important}
body.patrol-standalone .patrol-writing-note{background:rgba(83,150,235,.06)!important;border-color:rgba(110,177,255,.14)!important;color:#8fa7c0!important}
body.patrol-standalone .patrol-compare-zone textarea{background:#07111f!important}
body.patrol-standalone .toast{background:#0b1a2d!important;color:#eaf4ff!important;border:1px solid rgba(111,180,255,.22)!important;box-shadow:0 18px 48px rgba(0,0,0,.44)!important}

@media(max-width:1180px){body.patrol-standalone .app-header-inner{grid-template-columns:auto 1fr!important;gap:16px!important}.header-side{display:none!important}.header-product-nav{justify-self:end!important}.analytics-masthead{grid-template-columns:1fr!important}.analytics-capability-grid{grid-template-columns:repeat(4,1fr)!important}.analytics-capability-grid article{min-height:90px!important;border-bottom:0!important}.analytics-capability-grid article:nth-child(n){border-right:1px solid rgba(120,174,255,.11)!important}.analytics-capability-grid article:last-child{border-right:0!important}}
@media(max-width:820px){body.patrol-standalone .app-header-inner,body.patrol-standalone .analytics-masthead,body.patrol-standalone .analytics-context-strip,body.patrol-standalone .patrol-page{width:calc(100% - 20px)!important}.brand-group{min-width:0!important}.header-product-nav{display:none!important}.analytics-masthead{padding:24px!important}.analytics-masthead h2{font-size:28px!important}.analytics-capability-grid{grid-template-columns:1fr 1fr!important}.analytics-capability-grid article:nth-child(2){border-right:0!important}.analytics-capability-grid article:nth-child(-n+2){border-bottom:1px solid rgba(120,174,255,.11)!important}.analytics-context-strip{overflow-x:auto!important}.analytics-flow{min-width:max-content!important}.p4-viz-kpis{grid-template-columns:repeat(2,1fr)!important}}

/* P5 specificity reinforcement: remove the remaining light legacy shell. */
body.patrol-standalone #patrolPage>.workspace,
body.patrol-standalone #patrolPage>.patrol-hero,
body.patrol-standalone #patrolPage .patrol-dashboard,
body.patrol-standalone #patrolPage .patrol-person-zone,
body.patrol-standalone #patrolPage .patrol-analysis-zone,
body.patrol-standalone #patrolPage .patrol-output-zone,
body.patrol-standalone #patrolPage .patrol-compare-zone{
  background:linear-gradient(180deg,rgba(10,21,37,.97),rgba(7,15,28,.98))!important;
  border-color:rgba(124,178,250,.16)!important;
  box-shadow:0 26px 74px rgba(0,0,0,.32),inset 0 1px 0 rgba(255,255,255,.028)!important;
}
body.patrol-standalone #patrolPage>.patrol-hero{position:relative!important;overflow:hidden!important}
body.patrol-standalone #patrolPage>.patrol-hero::before{content:"";position:absolute;right:-100px;bottom:-160px;width:520px;height:520px;border-radius:50%;background:radial-gradient(circle,rgba(75,151,255,.09),transparent 67%);pointer-events:none}
body.patrol-standalone #patrolPage .patrol-section-head{border-color:rgba(121,176,245,.09)!important}
body.patrol-standalone #patrolPage .patrol-section-head h2,
body.patrol-standalone #patrolPage .patrol-panel-head h3,
body.patrol-standalone #patrolPage .patrol-domain-head h3,
body.patrol-standalone #patrolPage .patrol-copy-card h3,
body.patrol-standalone #patrolPage .hf31-action-section-title b{color:#edf6ff!important}
body.patrol-standalone #patrolPage .patrol-section-head p,
body.patrol-standalone #patrolPage .patrol-panel-head small,
body.patrol-standalone #patrolPage .patrol-domain-head p,
body.patrol-standalone #patrolPage .patrol-copy-card p{color:#7e93ab!important}
body.patrol-standalone #patrolPage .patrol-section-head .section-number{background:rgba(76,156,255,.10)!important;color:#86bfff!important;border-color:rgba(99,177,255,.16)!important}
body.patrol-standalone #patrolPage .patrol-section-kicker,
body.patrol-standalone #patrolPage .patrol-eyebrow{color:#53d5d1!important}

body.patrol-standalone #patrolPage .patrol-one-paste-card,
body.patrol-standalone #patrolPage .patrol-contract-card,
body.patrol-standalone #patrolPage .patrol-panel,
body.patrol-standalone #patrolPage .patrol-domain-card,
body.patrol-standalone #patrolPage .patrol-copy-card,
body.patrol-standalone #patrolPage .patrol-ranking-hero-panel,
body.patrol-standalone #patrolPage .patrol-source-strip,
body.patrol-standalone #patrolPage .patrol-trace-panel{
  background:rgba(255,255,255,.022)!important;
  border-color:rgba(121,176,245,.12)!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.022)!important;
}
body.patrol-standalone #patrolPage .patrol-one-paste-head strong,
body.patrol-standalone #patrolPage .patrol-contract-card>strong{color:#eaf4ff!important}
body.patrol-standalone #patrolPage .patrol-one-paste-head small,
body.patrol-standalone #patrolPage .patrol-contract-card b{color:#7b90a8!important}
body.patrol-standalone #patrolPage .patrol-contract-card>div{border-color:rgba(120,174,244,.08)!important}
body.patrol-standalone #patrolPage .patrol-contract-card span{color:#58d2cd!important}
body.patrol-standalone #patrolPage .patrol-one-paste-input{background:#050e1b!important;border-color:rgba(90,178,255,.24)!important;color:#d8eaff!important;box-shadow:inset 0 0 0 1px rgba(55,130,236,.06)!important}

body.patrol-standalone #patrolPage .patrol-domain-overview{background:transparent!important}
body.patrol-standalone #patrolPage .patrol-domain-card{background:linear-gradient(180deg,rgba(14,27,46,.94),rgba(9,19,33,.96))!important}
body.patrol-standalone #patrolPage .patrol-domain-metrics article,
body.patrol-standalone #patrolPage .patrol-domain-daily article,
body.patrol-standalone #patrolPage .patrol-store-type-grid>*,
body.patrol-standalone #patrolPage .patrol-action-highlights article,
body.patrol-standalone #patrolPage .patrol-person-progress-grid>*,
body.patrol-standalone #patrolPage .patrol-ranking-board>*,
body.patrol-standalone #patrolPage .hf30-ranking-distribution>*,
body.patrol-standalone #patrolPage .patrol-watch-list>*,
body.patrol-standalone #patrolPage .patrol-quality-list>*,
body.patrol-standalone #patrolPage .patrol-trace-grid>*{
  background:rgba(255,255,255,.024)!important;
  border-color:rgba(121,176,245,.10)!important;
  box-shadow:none!important;
}
body.patrol-standalone #patrolPage .patrol-domain-head{border-color:rgba(121,176,245,.10)!important}
body.patrol-standalone #patrolPage .patrol-domain-total{color:#83baff!important}
body.patrol-standalone #patrolPage .store-domain .patrol-domain-total{color:#a9a1ff!important}
body.patrol-standalone #patrolPage .patrol-domain-section-label,
body.patrol-standalone #patrolPage .patrol-structure-subtitle{color:#688098!important}
body.patrol-standalone #patrolPage .patrol-domain-metrics article>span,
body.patrol-standalone #patrolPage .patrol-domain-daily article>span{color:#71869e!important}
body.patrol-standalone #patrolPage .patrol-domain-metrics article>strong,
body.patrol-standalone #patrolPage .patrol-domain-daily article>strong{color:#edf5ff!important}
body.patrol-standalone #patrolPage .patrol-domain-metrics article>small,
body.patrol-standalone #patrolPage .patrol-domain-daily article>small{color:#60758d!important}

body.patrol-standalone #patrolPage .patrol-leadership-summary,
body.patrol-standalone #patrolPage .patrol-macro-narrative,
body.patrol-standalone #patrolPage .patrol-ranking-basis-alert,
body.patrol-standalone #patrolPage .patrol-watch-summary,
body.patrol-standalone #patrolPage .patrol-writing-note{
  background:rgba(64,137,230,.055)!important;border-color:rgba(102,176,255,.14)!important;color:#96aec7!important;
}
body.patrol-standalone #patrolPage .patrol-schema-badge,
body.patrol-standalone #patrolPage .patrol-domain-chip{
  background:rgba(73,146,240,.08)!important;border-color:rgba(102,177,255,.17)!important;color:#9cc8f4!important;
}

body.patrol-standalone #patrolPage .patrol-table,
body.patrol-standalone #patrolPage table{background:#07111e!important;border-color:rgba(121,176,245,.10)!important}
body.patrol-standalone #patrolPage .patrol-table thead th,
body.patrol-standalone #patrolPage table thead th{background:#0d1b2e!important;color:#91b6db!important;border-color:rgba(121,176,245,.10)!important}
body.patrol-standalone #patrolPage .patrol-table td,
body.patrol-standalone #patrolPage table td{background:rgba(255,255,255,.012)!important;color:#adc0d5!important;border-color:rgba(121,176,245,.075)!important}
body.patrol-standalone #patrolPage .patrol-table tbody tr:hover td,
body.patrol-standalone #patrolPage table tbody tr:hover td{background:rgba(72,142,236,.065)!important;color:#edf6ff!important}

body.patrol-standalone #patrolPage .patrol-map-intelligence-panel,
body.patrol-standalone #patrolPage .patrol-map-explore-bar,
body.patrol-standalone #patrolPage .patrol-map-reading-hint,
body.patrol-standalone #patrolPage .patrol-map-metric-strip,
body.patrol-standalone #patrolPage .patrol-map-quick-read{
  background:#081523!important;border-color:rgba(108,180,255,.15)!important;color:#8ea5bd!important;
}
body.patrol-standalone #patrolPage .patrol-map-canvas-shell{border:1px solid rgba(104,181,255,.20)!important;background:#050a12!important;box-shadow:0 22px 60px rgba(0,0,0,.34)!important}

body.patrol-standalone #patrolPage .patrol-copy-card,
body.patrol-standalone #patrolPage .patrol-trace-card,
body.patrol-standalone #patrolPage .patrol-compare-snapshot-strip>*{
  background:rgba(255,255,255,.022)!important;border-color:rgba(121,176,245,.10)!important;
}
body.patrol-standalone #patrolPage .patrol-data-ready-bar{background:rgba(45,176,141,.075)!important;border-color:rgba(80,214,173,.18)!important;color:#9fdbc6!important}
body.patrol-results-ready:not(.patrol-editing-data).patrol-standalone #patrolPage>.patrol-hero{background:rgba(8,17,30,.94)!important}

body.patrol-standalone #patrolPage .p5-nav-focus{animation:p5NavFocus 1.05s ease both!important}
@keyframes p5NavFocus{0%{box-shadow:0 0 0 0 rgba(82,184,255,0),inset 0 1px 0 rgba(255,255,255,.02)}24%{box-shadow:0 0 0 2px rgba(82,184,255,.48),0 0 38px rgba(64,151,255,.18),inset 0 1px 0 rgba(255,255,255,.04)}100%{box-shadow:0 0 0 0 rgba(82,184,255,0),inset 0 1px 0 rgba(255,255,255,.02)}}

/* P5 final shell coherence: the legacy HF42 page itself must not paint a light frame. */
body.patrol-standalone #patrolPage,
body.patrol-standalone main#patrolPage.app-shell.mode-page.patrol-page{
  background:transparent!important;
  color:#dce9f7!important;
}
body.patrol-standalone #patrolPage::before,
body.patrol-standalone #patrolPage::after{display:none!important}

/* Eliminate remaining high-contrast white legacy analytics tiles while keeping risk colors legible. */
body.patrol-standalone #patrolPage .patrol-ranking-hero-panel,
body.patrol-standalone #patrolPage .patrol-ranking-hero-panel>*,
body.patrol-standalone #patrolPage .patrol-progress-summary,
body.patrol-standalone #patrolPage .patrol-progress-summary>*,
body.patrol-standalone #patrolPage .patrol-domain-structure,
body.patrol-standalone #patrolPage .patrol-domain-structure>*,
body.patrol-standalone #patrolPage .patrol-store-progress,
body.patrol-standalone #patrolPage .patrol-store-progress>*,
body.patrol-standalone #patrolPage .patrol-person-row,
body.patrol-standalone #patrolPage .patrol-person-row>*,
body.patrol-standalone #patrolPage .patrol-action-row,
body.patrol-standalone #patrolPage .patrol-action-row>*{
  background-color:rgba(255,255,255,.022)!important;
  border-color:rgba(121,176,245,.10)!important;
  color:#a8bdd3!important;
}
body.patrol-standalone #patrolPage .patrol-ranking-hero-panel strong,
body.patrol-standalone #patrolPage .patrol-progress-summary strong,
body.patrol-standalone #patrolPage .patrol-person-row strong,
body.patrol-standalone #patrolPage .patrol-action-row strong{color:#e8f3ff!important}

/* P4 visualization widgets, now integrated into the dark operations-intelligence visual system. */
body.patrol-standalone #patrolPage .p4-viz-board,
body.patrol-standalone #patrolPage .p4-viz-grid,
body.patrol-standalone #patrolPage .p4-viz-kpis,
body.patrol-standalone #patrolPage .p4-chart-panel,
body.patrol-standalone #patrolPage .p4-priority-panel{
  background:transparent!important;
  border-color:rgba(121,176,245,.12)!important;
  color:#a9bdd2!important;
}
body.patrol-standalone #patrolPage .p4-viz-kpis>*,
body.patrol-standalone #patrolPage .p4-chart-panel,
body.patrol-standalone #patrolPage .p4-priority-item{
  background:linear-gradient(180deg,rgba(15,29,49,.94),rgba(9,20,35,.98))!important;
  border:1px solid rgba(121,176,245,.115)!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.025)!important;
}
body.patrol-standalone #patrolPage .p4-viz-kpis strong,
body.patrol-standalone #patrolPage .p4-chart-panel strong,
body.patrol-standalone #patrolPage .p4-priority-item strong{color:#eef6ff!important}
body.patrol-standalone #patrolPage .p4-viz-kpis span,
body.patrol-standalone #patrolPage .p4-chart-panel span,
body.patrol-standalone #patrolPage .p4-priority-item span,
body.patrol-standalone #patrolPage .p4-viz-kpis small,
body.patrol-standalone #patrolPage .p4-chart-panel small,
body.patrol-standalone #patrolPage .p4-priority-item small{color:#718aa5!important}
body.patrol-standalone #patrolPage .p4-donut-center{background:#0a1728!important;border-color:rgba(115,178,255,.14)!important;color:#eaf4ff!important}
body.patrol-standalone #patrolPage .p4-stack-track{background:#111e31!important;border-color:rgba(121,176,245,.09)!important}

/* Navigation interaction is deliberately obvious: click, target focus, and keyboard focus all read as real software controls. */
body.patrol-standalone .header-product-nav button:focus-visible{
  outline:none!important;
  border-color:rgba(94,224,220,.60)!important;
  box-shadow:0 0 0 3px rgba(76,199,219,.12),0 0 26px rgba(54,147,255,.16)!important;
}
body.patrol-standalone #patrolPage .p5-nav-focus{
  border-color:rgba(79,203,230,.58)!important;
  background-image:linear-gradient(180deg,rgba(14,30,51,.985),rgba(7,18,32,.99))!important;
}

/* P5 domain analytics: remove legacy white group containers and cards. */
body.patrol-standalone #patrolPage .patrol-domain-metrics,
body.patrol-standalone #patrolPage .patrol-domain-daily,
body.patrol-standalone #patrolPage .hf30-domain-visual,
body.patrol-standalone #patrolPage .patrol-progress-card,
body.patrol-standalone #patrolPage .patrol-store-state,
body.patrol-standalone #patrolPage .patrol-reg-structure span,
body.patrol-standalone #patrolPage .patrol-structure-grid span,
body.patrol-standalone #patrolPage .patrol-macro-panel span{
  background:rgba(255,255,255,.022)!important;
  border-color:rgba(121,176,245,.105)!important;
  color:#9eb3ca!important;
  box-shadow:none!important;
}
body.patrol-standalone #patrolPage .patrol-domain-metrics,
body.patrol-standalone #patrolPage .patrol-domain-daily{background:rgba(3,10,19,.24)!important}
body.patrol-standalone #patrolPage .hf30-domain-visual{
  background:rgba(4,13,24,.52)!important;
  border:1px solid rgba(121,176,245,.12)!important;
}
body.patrol-standalone #patrolPage .hf32-structure-head b,
body.patrol-standalone #patrolPage .hf32-store-types b{color:#dceaff!important}
body.patrol-standalone #patrolPage .hf32-structure-head small,
body.patrol-standalone #patrolPage .hf32-structure-result span,
body.patrol-standalone #patrolPage .hf32-structure-legend small{color:#71869e!important}
body.patrol-standalone #patrolPage .hf32-structure-legend{border-color:rgba(121,176,245,.10)!important}
body.patrol-standalone #patrolPage .hf32-structure-legend span{background:transparent!important;border-color:rgba(121,176,245,.09)!important}
body.patrol-standalone #patrolPage .hf32-structure-legend b{color:#a8bdd2!important}
body.patrol-standalone #patrolPage .hf32-stackbar,
body.patrol-standalone #patrolPage .hf32-store-types i{background:#142338!important}
body.patrol-standalone #patrolPage .hf32-store-types strong{color:#d9e9f9!important}
body.patrol-standalone #patrolPage .patrol-store-state{color:#91abc3!important}
body.patrol-standalone #patrolPage .patrol-progress-card strong{color:#edf6ff!important}
body.patrol-standalone #patrolPage .patrol-progress-card span,
body.patrol-standalone #patrolPage .patrol-progress-card small{color:#71869e!important}
body.patrol-standalone #patrolPage .patrol-progress-card .patrol-progress-track,
body.patrol-standalone #patrolPage .patrol-progress-card [class*="track"]{background:#142238!important}

/* P5 action hierarchy: keep the recommendation lane inside the same dark intelligence system. */
body.patrol-standalone #patrolPage .hf30-command-brief,
body.patrol-standalone #patrolPage .hf32-command-brief,
body.patrol-standalone #patrolPage .patrol-leadership-summary{
  background:linear-gradient(120deg,rgba(29,72,85,.25),rgba(21,39,62,.48) 72%)!important;
  border:1px solid rgba(89,203,204,.14)!important;
  color:#bad2df!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.025)!important;
}
body.patrol-standalone #patrolPage .hf30-command-brief strong,
body.patrol-standalone #patrolPage .hf32-command-brief strong{color:#bfe6dc!important}
body.patrol-standalone #patrolPage .hf32-priority-list{background:transparent!important;border-color:rgba(121,176,245,.10)!important}
body.patrol-standalone #patrolPage .hf32-priority-list article,
body.patrol-standalone #patrolPage .hf32-priority-list article[data-priority="1"],
body.patrol-standalone #patrolPage .hf32-priority-list article[data-priority="2"],
body.patrol-standalone #patrolPage .hf32-priority-list article[data-priority="3"],
body.patrol-standalone #patrolPage .hf32-priority-list article[data-priority="4"]{
  background:linear-gradient(180deg,rgba(15,28,47,.94),rgba(9,19,33,.96))!important;
  border-color:rgba(121,176,245,.10)!important;
  box-shadow:none!important;
}
body.patrol-standalone #patrolPage .hf32-priority-no,
body.patrol-standalone #patrolPage .hf32-priority-list article[data-priority="1"] .hf32-priority-no{
  background:rgba(92,156,255,.10)!important;
  color:#9bc8ff!important;
  border:1px solid rgba(103,174,255,.14)!important;
}
body.patrol-standalone #patrolPage .hf32-priority-list article[data-priority="1"] .hf32-priority-no{color:#ff9a86!important;background:rgba(212,94,72,.10)!important;border-color:rgba(226,113,91,.15)!important}
body.patrol-standalone #patrolPage .hf32-priority-main>div b{color:#718aa6!important}
body.patrol-standalone #patrolPage .hf32-priority-main>div strong{color:#e9f3ff!important}
body.patrol-standalone #patrolPage .hf32-priority-main small{color:#6f859c!important}
body.patrol-standalone #patrolPage .hf32-priority-action{border-color:rgba(121,176,245,.10)!important}
body.patrol-standalone #patrolPage .hf32-priority-action span{color:#657c95!important}
body.patrol-standalone #patrolPage .hf32-priority-action b{color:#a8d5c7!important}
body.patrol-standalone #patrolPage .hf32-priority-action{
  background:linear-gradient(180deg,rgba(40,72,86,.28),rgba(27,48,70,.34))!important;
  border:1px solid rgba(91,197,197,.10)!important;
}

/* P5 final dark-surface sweep: responsibility, focus and map chrome. */
html{background:#050b14!important}
body.patrol-standalone{background-color:#050b14!important}
body.patrol-standalone #patrolPage .patrol-section-nav{
  background:rgba(8,18,31,.94)!important;
  border:1px solid rgba(121,176,245,.14)!important;
  box-shadow:0 14px 34px rgba(0,0,0,.22),inset 0 1px 0 rgba(255,255,255,.022)!important;
}
body.patrol-standalone #patrolPage .patrol-section-nav button,
body.patrol-standalone #patrolPage .patrol-section-nav a{color:#849ab4!important;background:transparent!important;border-color:transparent!important}
body.patrol-standalone #patrolPage .patrol-section-nav .active{color:#edf6ff!important;background:rgba(74,150,255,.10)!important}

body.patrol-standalone #patrolPage .patrol-ranking-executive-card,
body.patrol-standalone #patrolPage .patrol-ranking-metric,
body.patrol-standalone #patrolPage .patrol-ranking-place,
body.patrol-standalone #patrolPage .hf31-dist-priority{
  background:rgba(255,255,255,.025)!important;
  border-color:rgba(121,176,245,.10)!important;
  color:#9db2c9!important;
  box-shadow:none!important;
}
body.patrol-standalone #patrolPage .patrol-ranking-executive-card b,
body.patrol-standalone #patrolPage .patrol-ranking-metric b,
body.patrol-standalone #patrolPage .patrol-ranking-person b{color:#edf6ff!important}
body.patrol-standalone #patrolPage .patrol-ranking-executive-card span,
body.patrol-standalone #patrolPage .patrol-ranking-executive-card small,
body.patrol-standalone #patrolPage .patrol-ranking-metric span,
body.patrol-standalone #patrolPage .patrol-ranking-person span{color:#71869e!important}
body.patrol-standalone #patrolPage .patrol-ranking-row{border-color:rgba(121,176,245,.09)!important}
body.patrol-standalone #patrolPage .patrol-ranking-bar,
body.patrol-standalone #patrolPage .hf31-dist-track{background:#132239!important}

body.patrol-standalone #patrolPage #patrolWatchSummary,
body.patrol-standalone #patrolPage #patrolWatchList,
body.patrol-standalone #patrolPage .patrol-watch-summary,
body.patrol-standalone #patrolPage .patrol-watch-list{
  background:rgba(5,15,27,.44)!important;
  border-color:rgba(121,176,245,.10)!important;
  color:#90a7c0!important;
}

body.patrol-standalone #patrolPage #patrolProjectMapStatus,
body.patrol-standalone #patrolPage #patrolStoreMapStatus,
body.patrol-standalone #patrolPage .patrol-map-status,
body.patrol-standalone #patrolPage .patrol-map-search-box{
  background:#091728!important;
  border-color:rgba(105,180,255,.16)!important;
  color:#92aec8!important;
  box-shadow:none!important;
}
body.patrol-standalone #patrolPage .patrol-map-search-box input{background:transparent!important;color:#dcecff!important;border-color:transparent!important}
body.patrol-standalone #patrolPage .patrol-map-search-box button{background:rgba(79,154,255,.08)!important;color:#9ec9f4!important;border-color:rgba(104,178,255,.12)!important}
body.patrol-standalone #patrolPage .patrol-map-rich-legend,
body.patrol-standalone #patrolPage .patrol-map-priority-list,
body.patrol-standalone #patrolPage .patrol-map-priority-item{
  background:rgba(255,255,255,.022)!important;
  border-color:rgba(121,176,245,.10)!important;
  color:#9bb1c7!important;
}

/* P5 GIS chrome: preserve the map artwork itself, darken only analysis controls and reading panels. */
body.patrol-standalone #patrolPage .patrol-inline-empty,
body.patrol-standalone #patrolPage .patrol-map-rich-legend>div,
body.patrol-standalone #patrolPage .patrol-map-priority-main,
body.patrol-standalone #patrolPage .patrol-map-list-item,
body.patrol-standalone #patrolPage .patrol-map-detail-card{
  background:rgba(255,255,255,.025)!important;
  border-color:rgba(121,176,245,.10)!important;
  color:#91a9c1!important;
}
body.patrol-standalone #patrolPage .patrol-map-rich-legend>div b,
body.patrol-standalone #patrolPage .patrol-map-priority-main b,
body.patrol-standalone #patrolPage .patrol-map-list-item b,
body.patrol-standalone #patrolPage .patrol-map-detail-card b{color:#e7f2ff!important}
body.patrol-standalone #patrolPage .patrol-map-rich-legend>div small,
body.patrol-standalone #patrolPage .patrol-map-priority-main small,
body.patrol-standalone #patrolPage .patrol-map-list-item small,
body.patrol-standalone #patrolPage .patrol-map-detail-card small{color:#6f869e!important}

/* P5 history + priority specificity closure. */
body.patrol-standalone #patrolPage .patrol-map-priority-row,
body.patrol-standalone #patrolPage .patrol-map-priority-row.severity-good,
body.patrol-standalone #patrolPage .patrol-map-priority-row.is-unresolved{
  background:rgba(255,255,255,.025)!important;
  border:1px solid rgba(121,176,245,.10)!important;
  color:#9bb1c8!important;
}
body.patrol-standalone #patrolPage .patrol-map-priority-row:hover{background:rgba(77,153,255,.075)!important;border-color:rgba(90,191,255,.24)!important}
body.patrol-standalone #patrolPage .patrol-compare-kpis article,
body.patrol-standalone #patrolPage .patrol-compare-kpis article.reg-zero,
body.patrol-standalone #patrolPage .patrol-compare-kpis article.reg-good{
  background:linear-gradient(180deg,rgba(15,29,49,.95),rgba(9,20,35,.98))!important;
  border-color:rgba(121,176,245,.12)!important;
  box-shadow:none!important;
}
body.patrol-standalone #patrolPage .patrol-compare-kpis span,
body.patrol-standalone #patrolPage .patrol-compare-kpis small{color:#71869e!important}
body.patrol-standalone #patrolPage .patrol-compare-kpis strong{color:#edf6ff!important}
body.patrol-standalone #patrolPage .patrol-chart-svg,
body.patrol-standalone #patrolPage #cmpCoverageChart{
  background:#081522!important;
  border:1px solid rgba(121,176,245,.10)!important;
}
body.patrol-standalone #patrolPage .cmp-grid{stroke:#1f3045!important}
body.patrol-standalone #patrolPage .cmp-axis{fill:#6f88a4!important}
body.patrol-standalone #patrolPage .cmp-line{stroke:#4ed5cf!important}
body.patrol-standalone #patrolPage .cmp-point{fill:#5ca8ff!important;stroke:#0b1727!important}
body.patrol-standalone #patrolPage .cmp-value{fill:#b9d9f6!important}
body.patrol-standalone #patrolPage .patrol-compare-person-panel .table-wrap{
  background:#07111e!important;
  border-color:rgba(121,176,245,.10)!important;
}


/* ==========================================================================
   P6 · Enterprise Safety Intelligence Dashboard
   Visual direction: mature domestic/international BI software, not a mock map.
   Existing SHIXIA base-map canvas and business calculations remain untouched.
   ========================================================================== */
body.patrol-standalone{
  --p6-navy:#071a3a;--p6-navy2:#0a234c;--p6-blue:#246bfd;--p6-blue2:#3c83ff;--p6-cyan:#35c9bd;
  --p6-bg:#eef3f8;--p6-paper:#ffffff;--p6-paper2:#f8fafc;--p6-line:#e1e8f1;--p6-ink:#17243a;--p6-muted:#718096;
  --p6-green:#23b889;--p6-amber:#f5a623;--p6-red:#ef5b62;--p6-violet:#7f69dc;
  background:linear-gradient(180deg,#edf3f8 0,#f5f8fb 48%,#edf3f8 100%)!important;
  color:var(--p6-ink)!important;color-scheme:light!important;
  padding-left:218px!important;padding-top:68px!important;
}
body.patrol-standalone::before{content:""!important;position:fixed!important;inset:68px 0 0 218px!important;display:block!important;z-index:-1!important;opacity:.28!important;background-image:linear-gradient(rgba(32,92,174,.035) 1px,transparent 1px),linear-gradient(90deg,rgba(32,92,174,.035) 1px,transparent 1px)!important;background-size:36px 36px!important;mask-image:linear-gradient(180deg,#000,transparent 72%)!important}
body.patrol-standalone [id^="patrol"],body.patrol-standalone .patrol-domain-card{scroll-margin-top:86px!important}

.p6-sidebar{position:fixed;left:0;top:0;bottom:0;width:218px;z-index:90;display:flex;flex-direction:column;padding:18px 14px 16px;background:linear-gradient(180deg,#061833 0%,#071e43 56%,#06162f 100%);border-right:1px solid rgba(113,157,223,.16);box-shadow:12px 0 42px rgba(7,26,58,.10);color:#dce9fb}
.p6-side-brand{display:flex;align-items:center;gap:11px;padding:2px 5px 18px;text-decoration:none!important;color:inherit!important}
.p6-side-logo{width:42px;height:42px;flex:0 0 42px;border-radius:12px;overflow:hidden;border:1px solid rgba(135,183,255,.32);box-shadow:0 0 24px rgba(56,116,255,.22);background:#0a244d}
.p6-side-logo img{width:100%;height:100%;object-fit:cover;display:block}.p6-side-brand-copy{min-width:0;display:grid;gap:3px}.p6-side-brand-copy small{color:#8ca8cd;font-size:9px;font-weight:720;letter-spacing:.04em;white-space:nowrap}.p6-side-brand-copy strong{color:#f5f8ff;font-size:14px;line-height:1.25;font-weight:820;letter-spacing:-.02em}
.p6-side-nav{display:grid;gap:5px;margin-top:6px}.p6-side-nav button,.p6-side-input{appearance:none;border:1px solid transparent;background:transparent;color:#a9bdd8;display:grid;grid-template-columns:28px 1fr;align-items:center;gap:7px;width:100%;min-height:43px;padding:8px 10px;border-radius:9px;text-align:left;font-size:12px;font-weight:700;cursor:pointer;transition:.18s ease}
.p6-side-nav button:hover,.p6-side-input:hover{color:#fff;background:rgba(60,129,255,.12);border-color:rgba(92,152,255,.12)}.p6-side-nav button.active,.p6-side-input.active{color:#fff;background:linear-gradient(90deg,rgba(36,107,253,.32),rgba(36,107,253,.12));border-color:rgba(80,145,255,.28);box-shadow:inset 3px 0 0 #4f91ff,0 8px 24px rgba(0,0,0,.08)}
.p6-nav-icon{display:grid;place-items:center;width:25px;height:25px;border-radius:7px;color:#8db8ff;font-size:14px;background:rgba(104,157,244,.08)}.p6-side-nav button.active .p6-nav-icon,.p6-side-input.active .p6-nav-icon{background:rgba(91,160,255,.18);color:#cde2ff}
.p6-side-separator{height:1px;margin:15px 7px 11px;background:rgba(141,177,228,.13)}.p6-side-input{margin-top:0}.p6-side-foot{margin-top:auto;padding:13px 10px;border:1px solid rgba(131,173,233,.12);border-radius:10px;background:rgba(255,255,255,.035)}.p6-side-live{display:flex;align-items:center;gap:7px;color:#d6e6fb;font-size:10px}.p6-side-live i{width:7px;height:7px;border-radius:50%;background:#39cfad;box-shadow:0 0 12px rgba(57,207,173,.6)}.p6-side-live b{font-weight:760}.p6-side-foot small{display:block;margin:5px 0 0 14px;color:#708ba9;font-size:9px}

body.patrol-standalone .app-header{position:fixed!important;left:218px!important;right:0!important;top:0!important;width:auto!important;min-height:68px!important;height:68px!important;padding:0 24px!important;background:linear-gradient(180deg,#071a3a,#071832)!important;border-bottom:1px solid rgba(116,158,220,.15)!important;box-shadow:0 8px 26px rgba(3,16,37,.14)!important;z-index:85!important;backdrop-filter:none!important}
body.patrol-standalone .app-header-inner{width:100%!important;min-height:68px!important;height:68px!important;display:grid!important;grid-template-columns:1fr auto!important;align-items:center!important;gap:18px!important}
body.patrol-standalone .app-header .brand-group{display:none!important}.header-product-nav{justify-self:start!important;border:0!important;background:transparent!important;padding:0!important;gap:2px!important;box-shadow:none!important;height:68px!important}.header-product-nav button{height:68px!important;min-height:68px!important;padding:0 15px!important;border:0!important;border-radius:0!important;background:transparent!important;color:#a9bdd7!important;font-size:11px!important;font-weight:720!important;position:relative!important}.header-product-nav button::before{content:"";position:absolute;left:20%;right:20%;bottom:0;height:2px;border-radius:2px;background:transparent}.header-product-nav button::after{display:none!important}.header-product-nav button:hover{color:#fff!important;background:rgba(255,255,255,.025)!important;transform:none!important}.header-product-nav button.active{color:#fff!important;background:rgba(39,106,236,.07)!important;border:0!important;box-shadow:none!important}.header-product-nav button.active::before{background:#4c8fff;box-shadow:0 0 12px rgba(77,144,255,.78)}
body.patrol-standalone .header-status{border-color:rgba(128,172,236,.14)!important;background:rgba(255,255,255,.04)!important;border-radius:10px!important;padding:8px 11px!important}.header-status b{color:#eef5ff!important}.header-status small{color:#7892b3!important}.header-status-dot{background:#3bcaaf!important;box-shadow:0 0 0 3px rgba(59,202,175,.09),0 0 12px rgba(59,202,175,.38)!important;animation:none!important}

body.patrol-standalone .analytics-masthead,body.patrol-standalone .analytics-context-strip,body.patrol-standalone .patrol-page{width:min(1480px,calc(100% - 34px))!important}
body.patrol-standalone .analytics-masthead{margin:18px auto 12px!important;padding:30px 32px!important;border:1px solid #dce5ef!important;border-radius:16px!important;background:linear-gradient(135deg,#ffffff 0%,#f8fbff 66%,#eef5ff 100%)!important;box-shadow:0 10px 30px rgba(15,46,83,.08)!important}.analytics-masthead::before{width:4px!important;background:linear-gradient(180deg,#1d63e8,#32b8c3)!important;box-shadow:none!important}.analytics-masthead::after{content:""!important;position:absolute!important;right:-90px!important;top:-130px!important;width:470px!important;height:470px!important;background:radial-gradient(circle,rgba(41,111,245,.12),transparent 66%)!important;z-index:-1!important}.analytics-kicker{color:#2768d8!important}.analytics-masthead h2{color:#173057!important;font-size:32px!important;text-shadow:none!important}.analytics-masthead-copy>p{color:#66758a!important}.analytics-system-line{color:#7c8ca1!important}.analytics-system-line i{background:#2db7a6!important;box-shadow:none!important}.analytics-scope span{background:#f7faff!important;border-color:#dce6f2!important;color:#536985!important}.analytics-capability-grid{background:#fff!important;border-color:#dfe7f0!important;box-shadow:0 8px 22px rgba(33,67,107,.04)!important}.analytics-capability-grid article{background:#fff!important;border-color:#e8edf4!important}.analytics-capability-grid article:hover{background:#f8fbff!important}.analytics-capability-grid span{color:#8a99ab!important}.analytics-capability-grid b{color:#22344e!important}.analytics-capability-grid small{color:#7b899b!important}.analytics-context-strip{background:#fff!important;border-color:#dfe6ef!important;box-shadow:0 6px 20px rgba(29,57,91,.045)!important}.analytics-flow{color:#67778a!important}.analytics-flow b{background:#edf4ff!important;color:#2868d6!important}.analytics-flow i{background:#d5dfeb!important}.analytics-context-note{color:#7c8998!important}.context-dot{background:#2bb39e!important;box-shadow:none!important}

body.patrol-standalone #patrolPage{color:var(--p6-ink)!important}.patrol-page{padding-top:18px!important;padding-bottom:56px!important;gap:18px!important}.workspace,.patrol-panel,.patrol-domain-card{border:1px solid var(--p6-line)!important;background:#fff!important;color:var(--p6-ink)!important;box-shadow:0 10px 28px rgba(25,57,92,.07)!important}.workspace{border-radius:15px!important}.patrol-hero{padding:24px 26px!important}.patrol-section-head .section-number{background:#edf4ff!important;color:#246bfd!important;border-color:#d7e5fb!important}.patrol-section-kicker{color:#3574dd!important}.patrol-section-head h2{color:#1b2d47!important}.patrol-section-head p{color:#748195!important}.patrol-one-paste-card,.patrol-contract-card{background:#fbfcfe!important;border-color:#e2e9f1!important}.patrol-one-paste-head strong,.patrol-contract-card>strong{color:#21324c!important}.patrol-one-paste-head small,.patrol-contract-card b{color:#718097!important}.patrol-contract-card span{color:#3173dc!important}.patrol-one-paste-input,body.patrol-standalone #patrolPage textarea,body.patrol-standalone #patrolPage input,body.patrol-standalone #patrolPage select{background:#fff!important;color:#24334a!important;border-color:#d9e3ee!important;caret-color:#246bfd!important}.patrol-one-paste-input::placeholder,body.patrol-standalone #patrolPage textarea::placeholder,body.patrol-standalone #patrolPage input::placeholder{color:#9aa6b4!important}.patrol-one-paste-input:focus,body.patrol-standalone #patrolPage textarea:focus,body.patrol-standalone #patrolPage input:focus,body.patrol-standalone #patrolPage select:focus{border-color:#86b0ff!important;box-shadow:0 0 0 3px rgba(36,107,253,.09)!important}
body.patrol-standalone #patrolPage .btn{background:#fff!important;color:#41516a!important;border-color:#d7e1ec!important;box-shadow:0 1px 2px rgba(20,46,77,.04)!important}.btn:hover{background:#f6f9fd!important;color:#245fca!important;border-color:#b9cdef!important;transform:none!important}.btn.primary{background:linear-gradient(180deg,#3a80ff,#246bfd)!important;color:#fff!important;border-color:#246bfd!important;box-shadow:0 7px 18px rgba(36,107,253,.20)!important}.btn.primary:hover{background:linear-gradient(180deg,#4a8aff,#2b70ff)!important;color:#fff!important}

body.patrol-results-ready:not(.patrol-editing-data).patrol-standalone #patrolPage>.patrol-hero{background:#fff!important}.patrol-data-ready-bar{background:#f2fbf8!important;border-color:#cfeee4!important;color:#3e7165!important}.patrol-data-ready-bar strong{color:#225f50!important}

/* Dashboard: dark executive banner + light cards, matching mature BI products without fabricated imagery. */
body.patrol-standalone #patrolDashboard{padding:0!important;background:transparent!important;border:0!important;box-shadow:none!important;overflow:visible!important}
body.patrol-standalone #patrolDashboard>.section-head{position:relative;overflow:hidden;min-height:152px;margin:0 0 14px!important;padding:24px 26px!important;border:1px solid rgba(75,133,228,.22)!important;border-radius:15px!important;background:radial-gradient(520px 220px at 88% 0%,rgba(63,135,255,.38),transparent 62%),linear-gradient(112deg,#0a2b61 0%,#124a9d 58%,#1d68cc 100%)!important;box-shadow:0 16px 36px rgba(17,67,131,.18)!important}.patrol-dashboard>.section-head::after{content:"";position:absolute;inset:0;pointer-events:none;background-image:linear-gradient(rgba(255,255,255,.035) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.035) 1px,transparent 1px);background-size:30px 30px;mask-image:linear-gradient(90deg,transparent,#000)}.patrol-dashboard>.section-head .section-number{background:rgba(255,255,255,.12)!important;color:#fff!important;border-color:rgba(255,255,255,.20)!important}.patrol-dashboard>.section-head .patrol-section-kicker{color:#b8d6ff!important}.patrol-dashboard>.section-head h2{color:#fff!important;font-size:31px!important}.patrol-dashboard>.section-head p{color:#c4d9f4!important;max-width:820px!important}.patrol-dashboard>.section-head .patrol-module-actions{position:relative;z-index:2}.patrol-dashboard>.section-head .btn{background:rgba(255,255,255,.10)!important;color:#eff6ff!important;border-color:rgba(255,255,255,.20)!important}.patrol-dashboard>.section-head .btn.primary{background:#fff!important;color:#246bfd!important;border-color:#fff!important;box-shadow:none!important}.patrol-dashboard>.section-head .patrol-schema-badge{background:rgba(255,255,255,.10)!important;border-color:rgba(255,255,255,.20)!important;color:#d7e7ff!important}
.p6-dashboard-summary{display:flex;align-items:end;justify-content:space-between;gap:18px;margin:0 0 12px;padding:0 2px}.p6-dashboard-eyebrow{display:block;margin-bottom:3px;color:#4779c5;font-size:9px;font-weight:800;letter-spacing:.14em}.p6-dashboard-summary h3{margin:0;color:#182a44;font-size:20px;font-weight:820}.p6-dashboard-summary p{margin:4px 0 0;color:#738196;font-size:11px}.p6-dashboard-status{display:grid;justify-items:end;gap:5px;color:#65748a;font-size:10px}.p6-dashboard-status span{display:flex;align-items:center;gap:6px}.p6-dashboard-status i{width:7px;height:7px;border-radius:50%;background:#2bb590;box-shadow:0 0 0 4px rgba(43,181,144,.08)}.p6-dashboard-status b{color:#334964;font-size:10px}
.p4-viz-board,.p4-viz-grid,.p4-viz-kpis{background:transparent!important;border:0!important;box-shadow:none!important}.p4-viz-kpis{display:grid!important;grid-template-columns:repeat(6,minmax(0,1fr))!important;gap:10px!important}.p4-viz-kpis>article{position:relative;min-height:105px;padding:16px 15px!important;border:1px solid #e1e8f1!important;border-radius:12px!important;background:#fff!important;box-shadow:0 7px 18px rgba(23,58,96,.055)!important}.p4-viz-kpis>article::before{content:"";position:absolute;left:0;top:17px;bottom:17px;width:3px;border-radius:3px;background:#4b87ff}.p4-viz-kpis>article:nth-child(2)::before{background:#32bea9}.p4-viz-kpis>article:nth-child(3)::before{background:#27a978}.p4-viz-kpis>article:nth-child(4)::before{background:#7d6de0}.p4-viz-kpis>article:nth-child(5)::before{background:#37a7c9}.p4-viz-kpis>article.attention::before{background:#ec6268}.p4-viz-kpis span{color:#738096!important}.p4-viz-kpis strong{color:#162941!important;font-size:29px!important;text-shadow:none!important}.p4-viz-kpis article.attention strong{color:#df4e57!important}.p4-viz-kpis small{color:#8a97a8!important}.p4-viz-grid{display:grid!important;grid-template-columns:1.15fr .95fr 1fr!important;gap:10px!important}.p4-chart-panel{min-height:245px!important;padding:18px!important;border:1px solid #e1e8f1!important;border-radius:12px!important;background:#fff!important;box-shadow:0 7px 18px rgba(23,58,96,.05)!important}.p4-chart-panel header span{color:#8090a5!important}.p4-chart-panel header h3{color:#1c2c45!important}.p4-chart-panel header>b{background:#f6f9fd!important;border-color:#e3eaf3!important;color:#60738d!important}.p4-stack{background:#edf2f7!important}.p4-stack>i.zero{background:#f06a6f!important}.p4-stack>i.one{background:#f2b348!important}.p4-stack>i.good{background:#37ba8d!important}.p4-stack-legend span{color:#65758b!important}.p4-stack-legend b{color:#283a54!important}.p4-chart-caption{border-color:#edf1f5!important;color:#758398!important}.p4-donut{background:conic-gradient(#37b98d calc(var(--value)*1%),#edf2f7 0)!important;box-shadow:none!important}.p4-donut.store{background:conic-gradient(#557ef2 calc(var(--value)*1%),#edf2f7 0)!important}.p4-donut:after{background:#fff!important;box-shadow:inset 0 0 0 1px #eef2f6!important}.p4-donut strong{color:#1c2c44!important}.p4-donut small,.p4-donut-item p{color:#728096!important}.p4-priority-row{background:#fbfcfe!important;border-color:#edf1f5!important}.p4-priority-row b{color:#263852!important}.p4-priority-row small{color:#7e8da1!important}.p4-priority-row>strong{color:#1e3049!important}.p4-priority-row>i{background:#fff0f1!important;color:#dc5359!important}.p4-priority-row.warn>i{background:#fff6e7!important;color:#d58a15!important}.p4-priority-row.store>i{background:#f2efff!important;color:#7164d2!important}

.patrol-domain-card{background:#fff!important;border-color:#e0e7f0!important}.patrol-domain-card::before{background:linear-gradient(90deg,#2d70ee,#49a2ff)!important}.patrol-domain-card.store-domain::before{background:linear-gradient(90deg,#7766d9,#4bb2ca)!important}.patrol-domain-head{border-color:#e9edf3!important}.patrol-domain-head h3{color:#1d2d45!important}.patrol-domain-head p{color:#718096!important}.patrol-domain-total{color:#246bfd!important}.store-domain .patrol-domain-total{color:#7665d8!important}.patrol-domain-total em{color:#7f8ca0!important}.patrol-domain-section-label,.patrol-structure-subtitle{color:#65758a!important}.patrol-domain-metrics article,.patrol-domain-daily article,.patrol-store-type-grid>*{background:#fbfcfe!important;border-color:#e8edf3!important;box-shadow:none!important}.patrol-domain-metrics article>span,.patrol-domain-daily article>span{color:#718096!important}.patrol-domain-metrics article>strong,.patrol-domain-daily article>strong{color:#21324b!important}.patrol-domain-metrics article>small,.patrol-domain-daily article>small{color:#8794a5!important}.patrol-domain-metrics .reg-zero{background:#fff7f7!important;border-color:#f6dcdc!important}.patrol-domain-metrics .reg-one{background:#fffbf2!important;border-color:#f5e7c6!important}.patrol-domain-metrics .reg-good{background:#f4fbf8!important;border-color:#d8eee5!important}.patrol-domain-metrics .rect{background:#f7f5ff!important;border-color:#e5dffc!important}.hf30-domain-visual,.patrol-progress-overview,.patrol-person-progress-grid,.patrol-ranking-board,.hf30-ranking-distribution,.patrol-watch-list,.patrol-quality-list,.patrol-trace-grid{background:#fbfcfe!important;border-color:#e6ecf3!important;color:#44546d!important}.patrol-leadership-summary,.patrol-macro-narrative,.patrol-ranking-basis-alert,.patrol-watch-summary,.patrol-writing-note{background:#f4f8fd!important;border-color:#dce8f5!important;color:#60748d!important}.patrol-schema-badge,.patrol-domain-chip{background:#eef5ff!important;border-color:#d9e8fb!important;color:#3871c7!important}

/* Light professional tables, close to enterprise data products. */
body.patrol-standalone #patrolPage .patrol-table,body.patrol-standalone #patrolPage table{background:#fff!important;color:#33445d!important;border-color:#e3e9f0!important}.table-wrap{background:#fff!important;border-color:#e2e8f0!important}.patrol-table thead th,body.patrol-standalone #patrolPage table thead th{background:#f6f8fb!important;color:#52647d!important;border-color:#e5ebf2!important;box-shadow:inset 0 -1px 0 #e5ebf2!important}.patrol-table td,body.patrol-standalone #patrolPage table td{background:#fff!important;color:#44536a!important;border-color:#edf1f5!important}.patrol-table tbody tr:hover td,body.patrol-standalone #patrolPage table tbody tr:hover td{background:#f7faff!important;color:#243b60!important}
.patrol-panel-head{border-color:#e7edf3!important}.patrol-panel-head h3{color:#21324a!important}.patrol-panel-head small{color:#77869a!important}.patrol-eyebrow{color:#3975d9!important}.patrol-empty-card,.patrol-identity-empty,.hf32-domain-empty{background:#fafbfd!important;border-color:#e6ecf2!important;color:#8a97a8!important}

/* Spatial analysis keeps the real SHIXIA map. Only the GIS chrome adopts the requested advanced dark visual. */
body.patrol-standalone #patrolAnalysisZone{background:linear-gradient(180deg,#071a36,#081d3b 56%,#071832)!important;border-color:#0d2a54!important;color:#dce9fa!important;box-shadow:0 18px 48px rgba(7,26,58,.16)!important}.patrol-analysis-zone>.section-head .section-number{background:rgba(92,151,255,.14)!important;color:#a7caff!important;border-color:rgba(116,173,255,.22)!important}.patrol-analysis-zone>.section-head .patrol-section-kicker{color:#75cfd1!important}.patrol-analysis-zone>.section-head h2{color:#f2f6fd!important}.patrol-analysis-zone>.section-head p{color:#8fa5c2!important}.patrol-analysis-zone>.section-head .btn{background:rgba(255,255,255,.055)!important;color:#d4e3f7!important;border-color:rgba(120,172,239,.20)!important}.patrol-analysis-zone>.section-head .btn.primary{background:#2f72e8!important;color:#fff!important;border-color:#3f80ef!important}.patrol-analysis-zone>.patrol-columns .patrol-panel,.patrol-analysis-zone .patrol-map-panel{background:#0a2143!important;border-color:rgba(116,167,234,.18)!important;color:#cbdcf2!important;box-shadow:none!important}.patrol-analysis-zone .patrol-panel-head{border-color:rgba(120,169,233,.15)!important}.patrol-analysis-zone .patrol-panel-head h3{color:#eff5ff!important}.patrol-analysis-zone .patrol-panel-head small{color:#8098b9!important}.patrol-analysis-zone .patrol-watch-list>*{background:rgba(255,255,255,.035)!important;border-color:rgba(120,169,233,.14)!important;color:#c6d7eb!important}.patrol-pin-toolbar,.patrol-map-explore-bar,.patrol-map-intelligence-panel,.patrol-map-reading-hint,.patrol-map-metric-strip,.patrol-map-quick-read{background:#071a35!important;border-color:rgba(116,173,242,.18)!important;color:#96acc8!important}.patrol-map-filter-group button{background:#0b2448!important;color:#94accb!important;border-color:rgba(112,167,236,.18)!important}.patrol-map-filter-group button.active{background:#2865c6!important;color:#fff!important;border-color:#4f8bf0!important}.patrol-map-search-box{background:#071a35!important;border-color:rgba(112,167,236,.19)!important}.patrol-map-search-box input{background:transparent!important;color:#d9e7f7!important;border:0!important}.patrol-map-canvas-shell{background:#eef3f1!important;border:1px solid rgba(117,176,244,.32)!important;box-shadow:0 18px 48px rgba(0,0,0,.25)!important}.patrol-map-canvas-shell canvas{background:#f7f7f2!important}.patrol-map-intelligence-panel h4,.patrol-map-intelligence-panel b{color:#e6f0ff!important}.patrol-map-intelligence-panel small,.patrol-map-narrative,.patrol-map-conclusion{color:#8299b7!important}.patrol-map-priority-row{background:rgba(255,255,255,.04)!important;border-color:rgba(117,169,235,.14)!important;color:#bed0e6!important}.patrol-building-popup{background:#071a35!important;color:#e9f3ff!important;border-color:rgba(98,167,255,.34)!important}.patrol-analysis-zone .patrol-map-actions .btn{background:rgba(255,255,255,.055)!important;color:#d4e3f7!important;border-color:rgba(120,172,239,.20)!important}.patrol-analysis-zone .patrol-map-actions .btn.primary{background:#2c6fe5!important;color:#fff!important;border-color:#377beb!important}

/* Outputs/history stay bright and report-friendly. */
.patrol-copy-card,.patrol-trace-card,.patrol-compare-snapshot-strip>*{background:#fbfcfe!important;border-color:#e5eaf1!important}.patrol-copy-card h3,.patrol-trace-card b{color:#24364f!important}.patrol-copy-card p,.patrol-trace-card small{color:#7a8798!important}.patrol-compare-zone textarea{background:#fff!important}.toast{background:#10274b!important;color:#eef5ff!important;border-color:rgba(117,168,237,.28)!important}

/* Focus feedback reads like a real application but doesn't flash excessively. */
body.patrol-standalone #patrolPage .p5-nav-focus{animation:p6NavFocus .9s ease both!important}
@keyframes p6NavFocus{0%{box-shadow:0 0 0 0 rgba(36,107,253,0)}25%{box-shadow:0 0 0 2px rgba(36,107,253,.35),0 10px 28px rgba(36,107,253,.11)}100%{box-shadow:0 0 0 0 rgba(36,107,253,0)}}

@media(max-width:1320px){.header-product-nav button{padding:0 9px!important;font-size:10px!important}.p4-viz-kpis{grid-template-columns:repeat(3,1fr)!important}.p4-viz-grid{grid-template-columns:1fr 1fr!important}.p4-priority-panel{grid-column:1/-1!important}}
@media(max-width:1080px){body.patrol-standalone{padding-left:0!important}.p6-sidebar{display:none!important}body.patrol-standalone .app-header{left:0!important}.app-header .brand-group{display:flex!important}.app-header-inner{grid-template-columns:auto 1fr auto!important}.header-product-nav{overflow-x:auto!important}.analytics-masthead,.analytics-context-strip,.patrol-page{width:calc(100% - 20px)!important}}
@media(max-width:760px){body.patrol-standalone{padding-top:58px!important}.app-header{height:58px!important;min-height:58px!important;padding:0 12px!important}.app-header-inner{height:58px!important;min-height:58px!important}.header-product-nav{display:none!important}.header-side{display:flex!important}.p4-viz-kpis{grid-template-columns:repeat(2,1fr)!important}.p4-viz-grid{grid-template-columns:1fr!important}.p6-dashboard-summary{display:block}.p6-dashboard-status{justify-items:start;margin-top:8px}.patrol-dashboard>.section-head{padding:20px!important}.patrol-page{padding-left:0!important;padding-right:0!important}}

/* P6 high-specificity coherence pass: the main analytical canvas is light, GIS section stays dark. */
body.patrol-standalone #patrolPage>.patrol-hero,
body.patrol-standalone #patrolPage>#patrolPersonZone,
body.patrol-standalone #patrolPage>#patrolOutputZone,
body.patrol-standalone #patrolPage>#patrolCompareZone{
  background:#fff!important;border-color:#e1e8f1!important;color:#17243a!important;box-shadow:0 10px 28px rgba(25,57,92,.07)!important;
}
body.patrol-standalone #patrolPage>#patrolOutputZone.patrol-legacy-output{display:block!important}
body.patrol-standalone #patrolPage>.patrol-hero .patrol-section-head h2,
body.patrol-standalone #patrolPage>#patrolPersonZone .patrol-section-head h2,
body.patrol-standalone #patrolPage>#patrolOutputZone .patrol-section-head h2,
body.patrol-standalone #patrolPage>#patrolCompareZone .patrol-section-head h2{color:#1b2d47!important}
body.patrol-standalone #patrolPage>.patrol-hero .patrol-section-head p,
body.patrol-standalone #patrolPage>#patrolPersonZone .patrol-section-head p,
body.patrol-standalone #patrolPage>#patrolOutputZone .patrol-section-head p,
body.patrol-standalone #patrolPage>#patrolCompareZone .patrol-section-head p{color:#748195!important}
body.patrol-standalone #patrolPage>.patrol-hero .patrol-one-paste-card,
body.patrol-standalone #patrolPage>.patrol-hero .patrol-contract-card{background:#fbfcfe!important;border-color:#e2e9f1!important;color:#26384f!important}
body.patrol-standalone #patrolPage>.patrol-hero .patrol-one-paste-input{background:#fff!important;color:#24334a!important;border-color:#d9e3ee!important;box-shadow:none!important}
body.patrol-standalone #patrolPage>.patrol-hero .patrol-one-paste-input::placeholder{color:#9aa6b4!important}
body.patrol-standalone #patrolPage>.patrol-hero .patrol-package-check,
body.patrol-standalone #patrolPage>.patrol-hero .patrol-import-status{background:#fff!important;color:#66768b!important;border-color:#e1e7ef!important}
body.patrol-standalone #patrolPage>.patrol-hero .patrol-contract-card>strong,
body.patrol-standalone #patrolPage>.patrol-hero .patrol-one-paste-head strong{color:#21324c!important}
body.patrol-standalone #patrolPage>.patrol-hero .patrol-contract-card b,
body.patrol-standalone #patrolPage>.patrol-hero .patrol-one-paste-head small{color:#718097!important}

body.patrol-standalone #patrolDashboard .patrol-panel,
body.patrol-standalone #patrolDashboard .patrol-domain-card,
body.patrol-standalone #patrolPersonZone .patrol-panel,
body.patrol-standalone #patrolOutputZone .patrol-panel,
body.patrol-standalone #patrolCompareZone .patrol-panel,
body.patrol-standalone #patrolOutputZone .patrol-copy-card,
body.patrol-standalone #patrolOutputZone .patrol-trace-card{
  background:#fff!important;border-color:#e1e8f1!important;color:#273850!important;box-shadow:0 7px 18px rgba(23,58,96,.045)!important;
}
body.patrol-standalone #patrolDashboard .patrol-progress-overview,
body.patrol-standalone #patrolDashboard .patrol-macro-bars,
body.patrol-standalone #patrolDashboard .patrol-reg-structure,
body.patrol-standalone #patrolDashboard .patrol-store-type-structure,
body.patrol-standalone #patrolPersonZone .patrol-person-progress-grid,
body.patrol-standalone #patrolPersonZone .patrol-ranking-board,
body.patrol-standalone #patrolPersonZone .hf30-ranking-distribution,
body.patrol-standalone #patrolOutputZone .patrol-copy-grid,
body.patrol-standalone #patrolCompareZone .patrol-compare-dashboard{
  background:transparent!important;color:#44546d!important;border-color:#e4eaf1!important;
}
body.patrol-standalone #patrolDashboard .patrol-progress-overview>* ,
body.patrol-standalone #patrolDashboard .patrol-macro-bars>* ,
body.patrol-standalone #patrolDashboard .patrol-reg-structure>* ,
body.patrol-standalone #patrolDashboard .patrol-store-type-structure>* ,
body.patrol-standalone #patrolPersonZone .patrol-person-progress-grid>* ,
body.patrol-standalone #patrolPersonZone .patrol-ranking-board>* ,
body.patrol-standalone #patrolPersonZone .hf30-ranking-distribution>*{
  background:#fbfcfe!important;border-color:#e6ecf3!important;color:#40516a!important;box-shadow:none!important;
}
body.patrol-standalone #patrolDashboard .patrol-panel-head h3,
body.patrol-standalone #patrolPersonZone .patrol-panel-head h3,
body.patrol-standalone #patrolOutputZone .patrol-panel-head h3,
body.patrol-standalone #patrolCompareZone .patrol-panel-head h3{color:#21324a!important}
body.patrol-standalone #patrolDashboard .patrol-panel-head small,
body.patrol-standalone #patrolPersonZone .patrol-panel-head small,
body.patrol-standalone #patrolOutputZone .patrol-panel-head small,
body.patrol-standalone #patrolCompareZone .patrol-panel-head small{color:#77869a!important}
body.patrol-standalone #patrolDashboard .patrol-empty-card,
body.patrol-standalone #patrolPersonZone .patrol-empty-card,
body.patrol-standalone #patrolOutputZone .patrol-empty-card,
body.patrol-standalone #patrolCompareZone .patrol-empty-card{background:#fafbfd!important;border-color:#e6ecf2!important;color:#8a97a8!important}
body.patrol-standalone #patrolDashboard .patrol-leadership-summary,
body.patrol-standalone #patrolDashboard .patrol-macro-narrative,
body.patrol-standalone #patrolPersonZone .patrol-ranking-basis-alert,
body.patrol-standalone #patrolOutputZone .patrol-writing-note{background:#f4f8fd!important;border-color:#dce8f5!important;color:#60748d!important}

/* Strong table override over legacy dark selectors. */
body.patrol-standalone #patrolPage>#patrolPersonZone table,
body.patrol-standalone #patrolPage>#patrolOutputZone table,
body.patrol-standalone #patrolPage>#patrolCompareZone table,
body.patrol-standalone #patrolDashboard table{background:#fff!important;color:#33445d!important;border-color:#e3e9f0!important}
body.patrol-standalone #patrolPage>#patrolPersonZone table thead th,
body.patrol-standalone #patrolPage>#patrolOutputZone table thead th,
body.patrol-standalone #patrolPage>#patrolCompareZone table thead th,
body.patrol-standalone #patrolDashboard table thead th{background:#f6f8fb!important;color:#52647d!important;border-color:#e5ebf2!important}
body.patrol-standalone #patrolPage>#patrolPersonZone table td,
body.patrol-standalone #patrolPage>#patrolOutputZone table td,
body.patrol-standalone #patrolPage>#patrolCompareZone table td,
body.patrol-standalone #patrolDashboard table td{background:#fff!important;color:#44536a!important;border-color:#edf1f5!important}

/* Generated result cards from older modules must also obey the light enterprise canvas. */
body.patrol-standalone #patrolDashboard article,
body.patrol-standalone #patrolPersonZone article,
body.patrol-standalone #patrolOutputZone article,
body.patrol-standalone #patrolCompareZone article,
body.patrol-standalone #patrolDashboard .hf32-priority-action,
body.patrol-standalone #patrolDashboard .hf32-priority-card,
body.patrol-standalone #patrolDashboard .hf31-action-card,
body.patrol-standalone #patrolDashboard .hf30-action-card,
body.patrol-standalone #patrolDashboard .patrol-progress-card,
body.patrol-standalone #patrolPersonZone .patrol-person-progress-card,
body.patrol-standalone #patrolPersonZone .patrol-ranking-row,
body.patrol-standalone #patrolPersonZone .patrol-person-row,
body.patrol-standalone #patrolPersonZone .patrol-action-row{
  background:#fbfcfe!important;background-image:none!important;border-color:#e3eaf2!important;color:#40516a!important;box-shadow:none!important;
}
body.patrol-standalone #patrolDashboard article strong,
body.patrol-standalone #patrolPersonZone article strong,
body.patrol-standalone #patrolOutputZone article strong,
body.patrol-standalone #patrolCompareZone article strong,
body.patrol-standalone #patrolDashboard .hf32-priority-action strong,
body.patrol-standalone #patrolPersonZone .patrol-ranking-row strong,
body.patrol-standalone #patrolPersonZone .patrol-person-row strong{color:#20324b!important;text-shadow:none!important}
body.patrol-standalone #patrolDashboard article small,
body.patrol-standalone #patrolPersonZone article small,
body.patrol-standalone #patrolOutputZone article small,
body.patrol-standalone #patrolCompareZone article small{color:#7a889a!important}
/* Restore intended KPI/chart accents after broad generated-card normalization. */
body.patrol-standalone #patrolDashboard .p4-viz-kpis>article{background:#fff!important}
body.patrol-standalone #patrolDashboard .p4-chart-panel{background:#fff!important}
body.patrol-standalone #patrolDashboard .p4-viz-kpis>article.attention strong{color:#df4e57!important}
body.patrol-standalone #patrolDashboard{background:#f2f6fa!important;border-radius:16px!important;padding:0 0 18px!important}
body.patrol-standalone #patrolDashboard .p6-dashboard-summary{padding:0 4px!important}
body.patrol-standalone #patrolDashboard .p4-viz-board,
body.patrol-standalone #patrolDashboard .p4-viz-kpis,
body.patrol-standalone #patrolDashboard .p4-viz-grid,
body.patrol-standalone #patrolDashboard .patrol-domain-overview{
  background:#f2f6fa!important;background-image:none!important;color:#17243a!important;
}
body.patrol-standalone #patrolDashboard .p4-viz-board{padding:0 0 14px!important}
body.patrol-standalone #patrolDashboard .patrol-domain-overview{padding:0!important}
body.patrol-standalone #patrolPage #patrolDashboard{background:#f2f6fa!important;background-image:none!important;border-radius:16px!important;padding:0 0 18px!important}
body.patrol-standalone #patrolDashboard .p6-dashboard-summary{display:none!important}


/* ======================================================================
   P7 mature desktop BI/GIS product shell
   ====================================================================== */
:root{
 --p7-shell:#07182f;--p7-shell-2:#0b2140;--p7-shell-line:rgba(180,205,235,.12);
 --p7-canvas:#f2f5f9;--p7-panel:#fff;--p7-line:#dce4ee;--p7-line-strong:#c9d5e3;
 --p7-ink:#17283d;--p7-muted:#67778a;--p7-blue:#1769e0;--p7-blue-2:#0e56c5;
 --p7-cyan:#0e9eb3;--p7-green:#168160;--p7-amber:#b97816;--p7-red:#c94d50;
 --p7-radius:10px;--p7-radius-sm:7px;--p7-shadow:0 8px 28px rgba(24,47,78,.08);
 --p7-sidebar:248px;--p7-topbar:74px;--p7-gutter:24px;
}
html{scroll-behavior:smooth}
body.p7-product-shell{margin:0!important;background:var(--p7-canvas)!important;color:var(--p7-ink)!important;min-width:1180px;overflow-x:auto;font-family:"Microsoft YaHei UI","Microsoft YaHei","PingFang SC",system-ui,sans-serif}
body.p7-product-shell::before,body.p7-product-shell::after{display:none!important}
body.p7-product-shell .p7-skip-link{position:fixed;left:calc(var(--p7-sidebar) + 20px);top:-60px;z-index:9999;background:#fff;color:#0e56c5;border:2px solid #1769e0;padding:10px 14px;border-radius:7px;transition:top .18s ease}
body.p7-product-shell .p7-skip-link:focus{top:12px}
body.p7-product-shell .p7-sidebar{position:fixed;inset:0 auto 0 0;width:var(--p7-sidebar);z-index:120;display:flex;flex-direction:column;background:linear-gradient(180deg,#07182f 0%,#081b34 62%,#061527 100%);border-right:1px solid var(--p7-shell-line);color:#dfe9f8;box-sizing:border-box}
body.p7-product-shell .p7-side-brand{display:flex;align-items:center;gap:12px;height:var(--p7-topbar);padding:0 18px;text-decoration:none;color:#fff;border-bottom:1px solid var(--p7-shell-line);box-sizing:border-box}
body.p7-product-shell .p7-side-logo{width:40px;height:40px;border-radius:9px;overflow:hidden;background:#fff;border:1px solid rgba(255,255,255,.16);box-shadow:0 4px 16px rgba(0,0,0,.16);flex:none}
body.p7-product-shell .p7-side-logo img{width:100%;height:100%;object-fit:cover;display:block}
body.p7-product-shell .p7-brand-text{display:grid;gap:2px;min-width:0}
body.p7-product-shell .p7-brand-text small{font-size:11px;letter-spacing:.12em;color:#8fa6c4}
body.p7-product-shell .p7-brand-text strong{font-size:17px;line-height:1.2;white-space:nowrap}
body.p7-product-shell .p7-side-nav{display:grid;gap:4px;padding:20px 12px 10px}
body.p7-product-shell .p7-side-nav button,body.p7-product-shell .p7-side-input{appearance:none;border:0;background:transparent;color:#aebfd5;display:grid;grid-template-columns:28px 1fr 16px;align-items:center;gap:9px;width:100%;height:44px;padding:0 12px;border-radius:8px;font:600 14px/1 inherit;text-align:left;cursor:pointer;transition:background .18s ease,color .18s ease,transform .18s ease;position:relative}
body.p7-product-shell .p7-side-nav button:hover,body.p7-product-shell .p7-side-input:hover{background:rgba(131,170,222,.1);color:#fff}
body.p7-product-shell .p7-side-nav button:active,body.p7-product-shell .p7-side-input:active{transform:translateY(1px)}
body.p7-product-shell .p7-side-nav button.active{background:linear-gradient(90deg,rgba(31,111,229,.26),rgba(31,111,229,.09));color:#fff;box-shadow:inset 3px 0 0 #4e9cff}
body.p7-product-shell .p7-side-nav button.awaiting-data{color:#8294ab}
body.p7-product-shell .p7-nav-icon{width:22px;height:22px;display:grid;place-items:center}
body.p7-product-shell .p7-nav-icon svg{width:19px;height:19px;fill:none;stroke:currentColor;stroke-width:1.75;stroke-linecap:round;stroke-linejoin:round}
body.p7-product-shell .p7-side-nav button:first-child .p7-nav-icon svg{fill:currentColor;stroke:none}
body.p7-product-shell .p7-nav-arrow svg{width:14px;height:14px;fill:none;stroke:currentColor;stroke-width:1.8;opacity:.45}
body.p7-product-shell .p7-side-nav button.active .p7-nav-arrow svg{opacity:.9}
body.p7-product-shell .p7-side-separator{height:1px;background:var(--p7-shell-line);margin:8px 18px 10px}
body.p7-product-shell .p7-side-input{margin:0 12px;width:calc(100% - 24px);grid-template-columns:28px 1fr;color:#c8d5e5}
body.p7-product-shell .p7-side-input.active{background:rgba(14,158,179,.15);color:#dffbff;box-shadow:inset 3px 0 0 #25b9c8}
body.p7-product-shell .p7-side-foot{margin-top:auto;padding:16px 18px 20px;border-top:1px solid var(--p7-shell-line)}
body.p7-product-shell .p7-side-status{display:flex;align-items:center;gap:10px}.p7-status-dot{width:8px;height:8px;border-radius:50%;background:#39c99a;box-shadow:0 0 0 4px rgba(57,201,154,.1)}
body.p7-product-shell .p7-side-status div{display:grid;gap:2px}.p7-side-status strong{font-size:12px;color:#d9e6f6}.p7-side-status small{font-size:11px;color:#7f94ad}
body.p7-product-shell .p7-topbar{position:fixed;z-index:110;top:0;left:var(--p7-sidebar);right:0;height:var(--p7-topbar);display:flex;align-items:center;justify-content:space-between;gap:20px;padding:0 24px;background:rgba(255,255,255,.97);border-bottom:1px solid #d9e2ed;box-shadow:0 2px 12px rgba(21,43,72,.05);box-sizing:border-box;backdrop-filter:none}
body.p7-product-shell .p7-topbar-context{min-width:0;display:grid;gap:3px}.p7-topbar-product{font-size:11px;letter-spacing:.11em;color:#6f8197}.p7-topbar-title-row{display:flex;align-items:center;gap:10px}.p7-topbar-title-row h1{margin:0;font-size:20px;line-height:1.2;color:#17283d;font-weight:750}.p7-topbar-title-row span{font-size:12px;color:#75869a;background:#eef3f8;border:1px solid #e0e7ef;padding:3px 7px;border-radius:5px}
body.p7-product-shell .p7-topbar-actions{display:flex;align-items:center;gap:10px;flex:none}.p7-period-chip,.p7-compute-chip{height:42px;display:flex;align-items:center;gap:9px;padding:0 11px;border:1px solid #dde5ee;border-radius:8px;background:#f8fafc;box-sizing:border-box}.p7-period-chip{display:grid;gap:1px}.p7-period-chip span,.p7-compute-chip small{font-size:10px;color:#7b8b9c}.p7-period-chip strong,.p7-compute-chip strong{font-size:12px;color:#304359;font-weight:650}.p7-compute-chip i{width:8px;height:8px;border-radius:50%;background:#168160}.p7-compute-chip div{display:grid;gap:1px}
body.p7-product-shell .p7-top-action{height:38px!important;padding:0 13px!important;display:flex!important;align-items:center!important;gap:7px!important;border-radius:7px!important}.p7-top-action svg{width:16px;height:16px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
body.p7-product-shell #analysisPage,body.p7-product-shell #addressPage,body.p7-product-shell .analytics-masthead,body.p7-product-shell .analytics-context-strip{display:none!important}
body.p7-product-shell #patrolPage.p7-main{display:block!important;margin:var(--p7-topbar) 0 0 var(--p7-sidebar)!important;padding:var(--p7-gutter)!important;width:auto!important;max-width:none!important;min-height:calc(100vh - var(--p7-topbar));box-sizing:border-box;background:var(--p7-canvas)!important}
body.p7-product-shell #patrolPage>.workspace{margin:0!important;max-width:none!important;border-radius:var(--p7-radius)!important;border:1px solid var(--p7-line)!important;background:var(--p7-panel)!important;box-shadow:var(--p7-shadow)!important;padding:22px!important}
body.p7-product-shell #patrolPage>.workspace+ .workspace{margin-top:0!important}
body.p7-product-shell .p7-input-workspace{min-height:calc(100vh - var(--p7-topbar) - 48px);display:flex!important;flex-direction:column;justify-content:center;background:linear-gradient(180deg,#fff,#f8fbfe)!important}
body.p7-product-shell .p7-input-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:24px;margin:0 0 20px;padding-bottom:18px;border-bottom:1px solid var(--p7-line)}.p7-input-kicker{font-size:11px;letter-spacing:.12em;color:#1769e0;font-weight:700}.p7-input-heading h2{margin:7px 0 6px;font-size:28px;color:#162b43}.p7-input-heading p{margin:0;max-width:760px;font-size:14px;line-height:1.75;color:#66778a}.p7-input-trust{display:flex;gap:7px;flex-wrap:wrap;justify-content:flex-end}.p7-input-trust span{display:flex;align-items:center;gap:5px;padding:6px 9px;border:1px solid #dfe7f0;border-radius:6px;background:#f7fafc;color:#5e7085;font-size:11px}.p7-input-trust i{width:7px;height:7px;border-radius:50%;background:#168160}
body.p7-product-shell .patrol-one-paste-grid{grid-template-columns:minmax(520px,1.4fr) minmax(320px,.72fr)!important;gap:18px!important}.p7-input-workspace .patrol-one-paste-card,.p7-input-workspace .p7-input-guide{border:1px solid var(--p7-line)!important;border-radius:9px!important;background:#fff!important;box-shadow:none!important}.p7-input-workspace .patrol-one-paste-card{padding:20px!important}.p7-input-workspace .patrol-one-paste-input{min-height:280px!important;border-radius:7px!important;border:1px solid #cdd9e6!important;background:#fbfcfe!important;font-size:13px!important;line-height:1.65!important;resize:vertical}.p7-input-workspace .patrol-one-paste-input:focus{border-color:#1769e0!important;box-shadow:0 0 0 3px rgba(23,105,224,.1)!important}.p7-input-guide{padding:20px!important}.p7-guide-head{display:grid;gap:3px;margin-bottom:14px}.p7-guide-head span{font-size:11px;color:#738398}.p7-guide-head strong{font-size:18px;color:#21364d}.p7-guide-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px}.p7-guide-grid article{padding:10px;border:1px solid #e2e9f1;border-radius:7px;background:#f8fafc;display:grid;gap:3px}.p7-guide-grid b{font-size:12px;color:#2b4057}.p7-guide-grid small{font-size:10.5px;line-height:1.5;color:#758599}.p7-input-guide>p{margin:14px 0 0;padding-top:12px;border-top:1px solid #e5ebf2;color:#718196;font-size:11px;line-height:1.6}
body.p7-product-shell .patrol-data-ready-bar{border-radius:8px!important;margin-bottom:16px!important;background:#eef8f4!important;border:1px solid #cce8dc!important}
body.p7-product-shell .patrol-module-head{display:flex!important;align-items:flex-start!important;gap:14px!important;margin:0 0 18px!important;padding:0 0 17px!important;border-bottom:1px solid var(--p7-line)!important}.patrol-module-head .section-number{font-size:11px!important;width:30px!important;height:30px!important;border-radius:7px!important;background:#edf3fa!important;color:#1769e0!important;display:grid!important;place-items:center!important}.patrol-module-head h2{font-size:22px!important;color:#172c43!important;margin:2px 0 5px!important}.patrol-module-head p{font-size:12px!important;color:#718196!important;margin:0!important}.patrol-module-head .patrol-section-kicker{font-size:10px!important;color:#1769e0!important;letter-spacing:.1em!important}
body.p7-product-shell .patrol-module-actions{margin-left:auto;display:flex;gap:7px;flex-wrap:wrap;justify-content:flex-end}.patrol-module-actions .btn{border-radius:6px!important;font-size:11px!important;min-height:32px!important;padding:0 10px!important}
body.p7-product-shell .p4-viz-board{background:transparent!important;border:0!important;padding:0!important;box-shadow:none!important}.p4-viz-kpis{grid-template-columns:repeat(6,minmax(0,1fr))!important;gap:10px!important}.p4-viz-kpis article{border:1px solid var(--p7-line)!important;border-radius:8px!important;box-shadow:none!important;background:#fff!important;padding:14px!important;min-height:112px!important}.p4-viz-kpis strong{font-size:30px!important;color:#18334f!important}.p4-viz-kpis span{font-size:11px!important;color:#6d7e92!important}.p4-viz-kpis small{font-size:10px!important;color:#8795a6!important}.p4-viz-kpis article.attention{border-left:3px solid var(--p7-red)!important}.p4-viz-grid{grid-template-columns:1.3fr .9fr .95fr!important;gap:12px!important;margin-top:12px!important}.p4-chart-panel{border:1px solid var(--p7-line)!important;border-radius:8px!important;box-shadow:none!important;background:#fff!important;padding:15px!important}.p4-chart-panel header span{color:#7d8da0!important;font-size:9px!important;letter-spacing:.1em!important}.p4-chart-panel h3{font-size:14px!important;color:#263b53!important}
body.p7-product-shell .patrol-panel,body.p7-product-shell .patrol-domain-card{border:1px solid var(--p7-line)!important;border-radius:8px!important;box-shadow:none!important;background:#fff!important}.p7-domain-primary .patrol-domain-card{margin:0!important}.p7-domain-workspace{display:none}.p7-analysis-split{display:grid;grid-template-columns:1.12fr .88fr;gap:12px;margin:14px 0}.p7-analysis-split>.patrol-panel{padding:16px!important;margin:0!important;min-height:260px}.p7-bar-chart,.p7-gap-list{display:grid;gap:9px}.p7-bar-row{display:grid;grid-template-columns:minmax(100px,180px) 1fr auto;gap:10px;align-items:center}.p7-bar-row>span{font-size:11px;color:#41566e;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.p7-bar-track{height:8px;border-radius:99px;background:#e8eef5;overflow:hidden}.p7-bar-track i{display:block;height:100%;border-radius:inherit;background:#1769e0}.p7-bar-row.warn .p7-bar-track i{background:#d18a24}.p7-bar-row strong{font-size:11px;color:#263c54;font-variant-numeric:tabular-nums}.p7-bar-row small{grid-column:2/4;color:#8391a2;font-size:9.5px}.p7-gap-item{display:grid;grid-template-columns:32px 1fr auto;align-items:center;gap:9px;padding:10px;border:1px solid #e2e9f1;border-radius:7px;background:#f9fbfd}.p7-gap-item>i{width:28px;height:28px;border-radius:7px;background:#fff3df;color:#a5650e;font-style:normal;display:grid;place-items:center;font-size:11px;font-weight:750}.p7-gap-item.danger>i{background:#fff0f0;color:#bd3e45}.p7-gap-item.good>i{background:#eaf8f2;color:#17775b}.p7-gap-item div{display:grid;gap:2px}.p7-gap-item b{font-size:11px;color:#2a3f56}.p7-gap-item small{font-size:9.5px;color:#7d8c9e}.p7-gap-item strong{font-size:17px;color:#263a51}
body.p7-product-shell .p7-object-table-panel{padding:0!important;overflow:hidden}.p7-object-table-panel>.patrol-panel-head{padding:15px 16px 12px!important;margin:0!important;border-bottom:1px solid var(--p7-line)!important}.p7-filterbar{display:flex;align-items:end;gap:8px;padding:11px 16px;background:#f7f9fc;border-bottom:1px solid var(--p7-line);flex-wrap:wrap}.p7-filterbar label{display:grid;gap:4px;font-size:9.5px;color:#6f8093}.p7-filterbar select,.p7-filterbar input{height:34px;border:1px solid #cfd9e5;border-radius:6px;background:#fff;color:#2d4259;padding:0 9px;font:11px inherit;min-width:128px}.p7-filterbar .p7-search{position:relative;min-width:260px;margin-right:auto}.p7-filterbar .p7-search input{width:100%;padding-left:34px}.p7-filterbar .p7-search svg{position:absolute;left:10px;bottom:8px;width:16px;height:16px;fill:none;stroke:#76879a;stroke-width:1.8}.p7-table-wrap{max-height:520px;overflow:auto}.p7-object-table{min-width:1040px!important}.p7-object-table th{position:sticky;top:0;z-index:2;background:#f2f5f9!important;color:#596b80!important;font-size:10px!important;text-align:left!important;padding:10px 12px!important}.p7-object-table td{font-size:10.5px!important;color:#34495f!important;padding:10px 12px!important;text-align:left!important;border-bottom:1px solid #ebf0f5!important;vertical-align:middle!important}.p7-object-table tr:hover td{background:#f7fbff!important}.p7-cell-main{display:grid;gap:2px;max-width:280px}.p7-cell-main b{font-size:11px;color:#253a52;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.p7-cell-main small{font-size:9px;color:#8392a3}.p7-status-badge{display:inline-flex;align-items:center;min-height:22px;padding:0 7px;border-radius:5px;background:#edf2f7;color:#55687e;font-size:9.5px;font-weight:650;white-space:nowrap}.p7-status-badge.covered,.p7-status-badge.good{background:#e8f6f0;color:#147356}.p7-status-badge.warn{background:#fff3df;color:#a5650e}.p7-status-badge.danger{background:#ffeded;color:#b94148}.p7-status-badge.archived{background:#eef0f4;color:#6e7888}.p7-detail-btn{border:0;background:#edf4ff;color:#0f5fcf;border-radius:5px;padding:5px 8px;font:650 9.5px inherit;cursor:pointer}.p7-detail-btn:hover{background:#dceaff}.p7-table-footer{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 16px;border-top:1px solid var(--p7-line);background:#fbfcfe;color:#718196;font-size:10px}.p7-pagination{display:flex;gap:5px}.p7-pagination button{min-width:28px;height:28px;border:1px solid #d6e0eb;border-radius:5px;background:#fff;color:#4e6177;font:600 10px inherit;cursor:pointer}.p7-pagination button.active{background:#1769e0;color:#fff;border-color:#1769e0}.p7-pagination button:disabled{opacity:.4;cursor:not-allowed}
body.p7-product-shell .p7-responsibility-overview{display:grid;gap:12px}.p7-responsibility-kpis{display:grid;grid-template-columns:repeat(4,1fr);gap:10px}.p7-responsibility-kpis article{padding:14px;border:1px solid var(--p7-line);border-radius:8px;background:#fff;display:grid;gap:4px}.p7-responsibility-kpis span{font-size:10px;color:#718196}.p7-responsibility-kpis strong{font-size:26px;color:#1c344f}.p7-responsibility-kpis small{font-size:9.5px;color:#8492a2}.p7-responsibility-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:10px}.p7-responsibility-card{border:1px solid #e0e7ef;border-radius:8px;padding:13px;background:#fbfcfe;display:grid;gap:10px}.p7-responsibility-card header{display:flex;justify-content:space-between;gap:8px}.p7-responsibility-card header div{display:grid;gap:2px}.p7-responsibility-card h4{margin:0;font-size:12px;color:#263b53}.p7-responsibility-card header small{font-size:9px;color:#8291a2}.p7-responsibility-card header>strong{font-size:10px;color:#53667b}.p7-responsibility-domains{display:grid;gap:8px}.p7-responsibility-domain{display:grid;grid-template-columns:82px 1fr auto;gap:8px;align-items:center}.p7-responsibility-domain span{font-size:9.5px;color:#5a6d82}.p7-responsibility-domain i{height:7px;border-radius:99px;background:#e6ecf3;overflow:hidden}.p7-responsibility-domain i b{display:block;height:100%;background:#1769e0}.p7-responsibility-domain.store i b{background:#0e9eb3}.p7-responsibility-domain strong{font-size:9.5px;color:#34495f}.p7-responsibility-card footer{padding-top:8px;border-top:1px solid #e5ebf2;font-size:9.5px;color:#6e7f92}.p7-legacy-responsibility-action{display:none!important}.p7-legacy-ranking-detail{display:none!important}.patrol-person-zone.show-p7-details .p7-legacy-ranking-detail{display:block!important}.p7-legacy-ranking-detail .patrol-ranking-place,.p7-legacy-ranking-detail .patrol-rank{display:none!important}
body.p7-product-shell .p7-map-tabs{display:inline-flex;gap:4px;padding:4px;margin:0 0 12px;background:#0b2441;border:1px solid rgba(171,202,234,.14);border-radius:8px}.p7-map-tabs button{height:34px;border:0;border-radius:6px;background:transparent;color:#9eb5cf;padding:0 16px;font:650 11px inherit;cursor:pointer}.p7-map-tabs button.active{background:#fff;color:#173454;box-shadow:0 2px 8px rgba(0,0,0,.16)}
body.p7-product-shell #patrolAnalysisZone{background:#081b33!important;border-color:#183b5f!important;color:#e6eef8!important}.p7-product-shell #patrolAnalysisZone>.section-head{border-bottom-color:rgba(171,202,234,.16)!important}.p7-product-shell #patrolAnalysisZone .patrol-section-kicker{color:#61b9ff!important}.p7-product-shell #patrolAnalysisZone h2{color:#fff!important}.p7-product-shell #patrolAnalysisZone .section-head p{color:#9fb1c6!important}.p7-product-shell #patrolAnalysisZone .patrol-panel{background:#0c2340!important;border-color:#1c4266!important;color:#dce8f5!important}.p7-product-shell #patrolAnalysisZone .patrol-panel h3,.p7-product-shell #patrolAnalysisZone .patrol-panel h4{color:#f1f6fc!important}.p7-product-shell #patrolAnalysisZone .patrol-panel small{color:#93a9bf!important}.p7-product-shell #patrolAnalysisZone .patrol-map-intelligence-layout{gap:12px!important}.p7-product-shell #patrolAnalysisZone .patrol-map-canvas-shell{border-radius:7px!important;overflow:hidden!important;background:#fff!important}.p7-product-shell #patrolAnalysisZone canvas{display:block!important;width:100%!important;min-height:600px!important;background:#fff!important}.p7-product-shell[data-p7-map-view="project"] [data-p7-map-kind="store"],.p7-product-shell[data-p7-map-view="store"] [data-p7-map-kind="project"]{display:none!important}.p7-product-shell[data-p7-map-view="project"] [data-p7-map-kind="project"],.p7-product-shell[data-p7-map-view="store"] [data-p7-map-kind="store"]{display:block!important}
body.p7-product-shell .p7-output-guide{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin:0 0 16px}.p7-output-guide article{padding:13px;border:1px solid var(--p7-line);border-top:3px solid #1769e0;border-radius:7px;background:#fbfcfe;display:grid;gap:3px}.p7-output-guide span{font-size:9px;color:#1769e0;letter-spacing:.08em}.p7-output-guide b{font-size:12px;color:#293e56}.p7-output-guide small{font-size:9.5px;line-height:1.55;color:#78889a}
body.p7-product-shell .p7-object-drawer{position:fixed!important;inset:var(--p7-topbar) 0 0 auto!important;margin:0!important;width:min(440px,42vw)!important;height:calc(100vh - var(--p7-topbar))!important;max-height:none!important;border:0!important;border-left:1px solid #d6e0eb!important;border-radius:0!important;padding:0!important;background:#fff!important;box-shadow:-20px 0 50px rgba(15,35,61,.18)!important;color:#263b53!important}.p7-object-drawer::backdrop{background:rgba(6,20,38,.34);backdrop-filter:none}.p7-drawer-head{height:74px;padding:0 20px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--p7-line);box-sizing:border-box}.p7-drawer-head>div{display:grid;gap:3px}.p7-drawer-head span{font-size:9.5px;letter-spacing:.1em;color:#1769e0}.p7-drawer-head h2{margin:0;font-size:18px;color:#1c334e}.p7-drawer-head button{width:34px;height:34px;border:0;border-radius:6px;background:#eef3f8;color:#53677d;display:grid;place-items:center;cursor:pointer}.p7-drawer-head svg{width:17px;height:17px;fill:none;stroke:currentColor;stroke-width:1.8}.p7-drawer-body{padding:20px;overflow:auto;height:calc(100% - 140px);box-sizing:border-box}.p7-detail-grid{display:grid;grid-template-columns:1fr 1fr;gap:9px}.p7-detail-grid article{border:1px solid #e1e8f0;border-radius:7px;background:#f9fbfd;padding:10px;display:grid;gap:3px}.p7-detail-grid article.wide{grid-column:1/-1}.p7-detail-grid span{font-size:9px;color:#8291a2}.p7-detail-grid strong{font-size:11px;color:#2b4058;line-height:1.55;word-break:break-word}.p7-detail-note{margin-top:14px;padding:12px;border-left:3px solid #1769e0;background:#eef5ff;color:#53677e;font-size:10.5px;line-height:1.7}.p7-drawer-actions{position:absolute;left:0;right:0;bottom:0;height:66px;padding:13px 20px;display:flex;justify-content:flex-end;gap:8px;border-top:1px solid var(--p7-line);background:#fff;box-sizing:border-box}
body.p7-product-shell.patrol-results-ready #patrolInputZone{display:none!important}
body.p7-product-shell[data-p7-view="input"] #patrolInputZone,body.p7-product-shell.patrol-editing-data #patrolInputZone,body.p7-product-shell:not(.patrol-results-ready) #patrolInputZone{display:flex!important}
body.p7-product-shell.patrol-results-ready #patrolDashboard,body.p7-product-shell.patrol-results-ready #p7ProjectWorkspace,body.p7-product-shell.patrol-results-ready #p7StoreWorkspace,body.p7-product-shell.patrol-results-ready #patrolPersonZone,body.p7-product-shell.patrol-results-ready #patrolAnalysisZone,body.p7-product-shell.patrol-results-ready #patrolOutputZone,body.p7-product-shell.patrol-results-ready #patrolCompareZone{display:none!important}
body.p7-product-shell.patrol-results-ready[data-p7-view="overview"] #patrolDashboard,body.p7-product-shell.patrol-results-ready[data-p7-view="project"] #p7ProjectWorkspace,body.p7-product-shell.patrol-results-ready[data-p7-view="store"] #p7StoreWorkspace,body.p7-product-shell.patrol-results-ready[data-p7-view="responsibility"] #patrolPersonZone,body.p7-product-shell.patrol-results-ready[data-p7-view="gis"] #patrolAnalysisZone,body.p7-product-shell.patrol-results-ready[data-p7-view="output"] #patrolOutputZone,body.p7-product-shell.patrol-results-ready[data-p7-view="history"] #patrolCompareZone{display:block!important}
body.p7-product-shell.patrol-results-ready #patrolOutputZone.patrol-legacy-output{display:none!important}body.p7-product-shell.patrol-results-ready[data-p7-view="output"] #patrolOutputZone.patrol-legacy-output{display:block!important}
body.p7-product-shell .patrol-section-nav{display:none!important}
body.p7-product-shell button:focus-visible,body.p7-product-shell a:focus-visible,body.p7-product-shell input:focus-visible,body.p7-product-shell select:focus-visible,body.p7-product-shell textarea:focus-visible{outline:3px solid rgba(23,105,224,.28)!important;outline-offset:2px!important}
body.p7-product-shell .toast{z-index:10000!important}
@media(max-width:1680px){:root{--p7-sidebar:226px;--p7-gutter:18px}.p7-topbar .p7-compute-chip{display:none}.p4-viz-kpis{grid-template-columns:repeat(3,1fr)!important}.p7-responsibility-grid{grid-template-columns:repeat(2,1fr)}.p7-output-guide{grid-template-columns:repeat(2,1fr)!important}.p7-product-shell #patrolAnalysisZone canvas{min-height:540px!important}}
@media(max-width:1420px){:root{--p7-sidebar:210px;--p7-gutter:14px}.p7-period-chip{display:none!important}.p7-topbar{padding:0 16px!important}.p7-analysis-split{grid-template-columns:1fr}.p7-responsibility-kpis{grid-template-columns:repeat(2,1fr)}.p7-responsibility-grid{grid-template-columns:1fr}.patrol-one-paste-grid{grid-template-columns:1fr!important}.p7-input-workspace{justify-content:flex-start!important}.p4-viz-grid{grid-template-columns:1fr 1fr!important}.p4-priority-panel{grid-column:1/-1}.p7-product-shell #patrolAnalysisZone canvas{min-height:500px!important}}
@media(max-height:800px){body.p7-product-shell .p7-side-nav{padding-top:10px;gap:2px}.p7-side-nav button,.p7-side-input{height:38px!important}.p7-side-foot{padding-top:10px!important;padding-bottom:12px!important}.p7-input-workspace{justify-content:flex-start!important}.p7-input-heading{margin-bottom:12px!important;padding-bottom:12px!important}.p7-input-workspace .patrol-one-paste-input{min-height:210px!important}}
@media(prefers-reduced-motion:reduce){body.p7-product-shell *,body.p7-product-shell *::before,body.p7-product-shell *::after{scroll-behavior:auto!important;transition:none!important;animation:none!important}}
/* P7 final contrast and viewport refinements */
body.p7-product-shell #patrolDashboard .p4-viz-kpis strong{color:#18334f!important;text-shadow:none!important;opacity:1!important}
body.p7-product-shell #patrolDashboard .p4-viz-kpis article.attention strong{color:#c94d50!important}
body.p7-product-shell #patrolDashboard .p4-viz-kpis span{color:#66798f!important}
body.p7-product-shell #patrolDashboard .p4-viz-kpis small{color:#7f8fa2!important}
body.p7-product-shell #patrolDashboard .p4-chart-panel{min-height:270px!important}
body.p7-product-shell .p7-topbar-title-row{min-width:0}
body.p7-product-shell .p7-topbar-title-row h1{white-space:nowrap}
body.p7-product-shell .p7-topbar-title-row span{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:300px}
@media(max-width:1366px){body.p7-product-shell .p7-topbar-title-row span{display:none}.p7-topbar-actions{gap:6px!important}.p7-top-action{padding:0 10px!important}}


/* P7 product completion: compact domain BI, map-first GIS, and consistent module hierarchy */
body.p7-product-shell .p7-compatibility-support,
body.p7-product-shell .p7-gis-support-hidden{display:none!important}
body.p7-product-shell .p7-module-head{min-height:82px!important;padding:17px 18px!important;margin:0 0 12px!important;border:1px solid #dce5ef!important;border-radius:8px!important;background:#fff!important;box-shadow:0 2px 8px rgba(24,47,74,.035)!important;color:#263b53!important}
body.p7-product-shell .p7-module-head .section-number{display:grid!important;place-items:center!important;width:38px!important;height:38px!important;border-radius:7px!important;background:#edf4fc!important;color:#1769e0!important;border:1px solid #d8e7f7!important;font-size:10px!important;font-weight:750!important;letter-spacing:.08em!important}
body.p7-product-shell .p7-module-head .patrol-section-kicker{color:#1769e0!important;font-size:9px!important;font-weight:750!important;letter-spacing:.1em!important}
body.p7-product-shell .p7-module-head h2{color:#1d354f!important;opacity:1!important;font-size:20px!important;line-height:1.2!important;margin:2px 0 4px!important;text-shadow:none!important}
body.p7-product-shell .p7-module-head p{color:#687b90!important;opacity:1!important;font-size:10.5px!important;line-height:1.55!important;margin:0!important}
body.p7-product-shell .p7-domain-kpis{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:8px;margin:0 0 12px}
body.p7-product-shell .p7-domain-kpis article{position:relative;min-height:90px;padding:12px 13px;border:1px solid #dce5ef;border-radius:7px;background:#fff;display:grid;align-content:space-between;gap:4px;overflow:hidden;box-shadow:0 2px 8px rgba(24,47,74,.025)}
body.p7-product-shell .p7-domain-kpis article::before{content:"";position:absolute;left:0;top:0;bottom:0;width:3px;background:#1769e0}
body.p7-product-shell .p7-domain-kpis article.good::before{background:#15956d}
body.p7-product-shell .p7-domain-kpis article.warning::before{background:#d9901a}
body.p7-product-shell .p7-domain-kpis article.attention::before,body.p7-product-shell .p7-domain-kpis article.danger::before{background:#ca4f55}
body.p7-product-shell .p7-domain-kpis span{font-size:9.5px;color:#718297}
body.p7-product-shell .p7-domain-kpis strong{font-size:25px;line-height:1;color:#1c354f;font-weight:740;font-variant-numeric:tabular-nums}
body.p7-product-shell .p7-domain-kpis article.good strong{color:#147c61}
body.p7-product-shell .p7-domain-kpis article.warning strong{color:#b36d11}
body.p7-product-shell .p7-domain-kpis article.attention strong,body.p7-product-shell .p7-domain-kpis article.danger strong{color:#be454d}
body.p7-product-shell .p7-domain-kpis small{font-size:8.8px;line-height:1.4;color:#8795a6}
body.p7-product-shell .p7-analysis-split{margin-top:0!important}
body.p7-product-shell .p7-analysis-split>.patrol-panel{min-height:230px!important}
body.p7-product-shell .p7-object-table-panel{margin-top:12px!important}
body.p7-product-shell #patrolAnalysisZone{padding:0!important;background:#071a31!important;border:1px solid #183b5f!important;border-radius:9px!important;overflow:hidden!important}
body.p7-product-shell #patrolAnalysisZone>.p7-module-head{margin:0!important;border:0!important;border-bottom:1px solid rgba(173,203,235,.16)!important;border-radius:0!important;background:#0a2340!important;box-shadow:none!important}
body.p7-product-shell #patrolAnalysisZone>.p7-module-head .section-number{background:rgba(77,170,255,.12)!important;border-color:rgba(97,185,255,.24)!important;color:#79c6ff!important}
body.p7-product-shell #patrolAnalysisZone>.p7-module-head .patrol-section-kicker{color:#69beff!important}
body.p7-product-shell #patrolAnalysisZone>.p7-module-head h2{color:#f3f7fc!important}
body.p7-product-shell #patrolAnalysisZone>.p7-module-head p{color:#9db1c8!important}
body.p7-product-shell #patrolAnalysisZone>.p7-map-tabs{margin:12px 14px 10px!important}
body.p7-product-shell #patrolAnalysisZone>.patrol-dual-maps{padding:0 14px 14px!important;margin:0!important}
body.p7-product-shell #patrolAnalysisZone .patrol-business-map{margin:0!important;border-radius:7px!important;background:#0b2645!important;border-color:#21496d!important;box-shadow:none!important}
body.p7-product-shell #patrolAnalysisZone .patrol-map-intelligence-head{padding:13px 14px!important;border-bottom:1px solid rgba(173,203,235,.13)!important}
body.p7-product-shell #patrolAnalysisZone .patrol-map-explore-bar{margin:0 14px 10px!important;padding:9px!important;border-radius:6px!important;background:#081e38!important;border-color:#193f62!important}
body.p7-product-shell #patrolAnalysisZone .patrol-map-intelligence-layout{padding:0 14px!important;grid-template-columns:minmax(0,1.8fr) minmax(300px,.72fr)!important}
body.p7-product-shell #patrolAnalysisZone canvas{min-height:510px!important;max-height:650px!important}
body.p7-product-shell #patrolAnalysisZone .patrol-map-intelligence-panel{background:#071c34!important;border-color:#183d60!important;border-radius:7px!important}
body.p7-product-shell #patrolAnalysisZone .patrol-map-conclusion{margin:10px 14px!important}
body.p7-product-shell #patrolAnalysisZone .patrol-map-actions{padding:0 14px 14px!important}
body.p7-product-shell .p7-focus-export-panel{margin:0 0 14px!important}
body.p7-product-shell .p7-focus-export-actions .patrol-module-actions{display:flex!important;flex-wrap:wrap!important;gap:8px!important}
@media(max-width:1680px){body.p7-product-shell .p7-domain-kpis{grid-template-columns:repeat(3,1fr)}body.p7-product-shell #patrolAnalysisZone canvas{min-height:480px!important}}
@media(max-width:1420px){body.p7-product-shell .p7-domain-kpis{grid-template-columns:repeat(3,1fr)}body.p7-product-shell #patrolAnalysisZone .patrol-map-intelligence-layout{grid-template-columns:1fr!important}body.p7-product-shell #patrolAnalysisZone canvas{min-height:440px!important}.p7-module-head .patrol-module-actions{max-width:310px}}
@media(max-width:1100px){body.p7-product-shell .p7-domain-kpis{grid-template-columns:repeat(2,1fr)}}



/* ==========================================================================
   P8 | Mature desktop BI + GIS refinement
   General interaction patterns informed by Power BI / Tableau / Grafana / ArcGIS
   and domestic BI products. No copied product skin or proprietary asset.
   ========================================================================== */
:root{
  --p8-shell:#0b1f36;
  --p8-shell-2:#0f2a47;
  --p8-canvas:#f4f6f8;
  --p8-surface:#ffffff;
  --p8-surface-soft:#f8fafc;
  --p8-line:#e3e8ef;
  --p8-line-strong:#d5dde8;
  --p8-ink:#142235;
  --p8-text:#43546a;
  --p8-muted:#748397;
  --p8-blue:#2563eb;
  --p8-blue-soft:#edf4ff;
  --p8-teal:#0f9f9a;
  --p8-green:#16805d;
  --p8-amber:#c17a17;
  --p8-red:#c94b52;
  --p8-radius:12px;
  --p8-sidebar:216px;
  --p8-topbar:64px;
  --p8-gutter:22px;
  --p8-shadow:0 1px 2px rgba(19,35,55,.035),0 10px 28px rgba(19,35,55,.045);
}
body.p8-product-shell{background:var(--p8-canvas)!important;color:var(--p8-ink)!important;min-width:1180px}
body.p8-product-shell #patrolPage>.workspace.p8-page-hidden{display:none!important}

/* Application shell: narrower navigation, flatter top chrome, stronger alignment. */
body.p8-product-shell .p7-sidebar{width:var(--p8-sidebar)!important;background:linear-gradient(180deg,var(--p8-shell),#081a2e 72%,#071728 100%)!important;border-right:1px solid rgba(180,205,235,.10)!important}
body.p8-product-shell .p7-side-brand{height:var(--p8-topbar)!important;padding:0 15px!important;gap:10px!important}
body.p8-product-shell .p7-side-logo{width:34px!important;height:34px!important;border-radius:9px!important;box-shadow:0 3px 12px rgba(0,0,0,.14)!important}
body.p8-product-shell .p7-brand-text small{font-size:10px!important;letter-spacing:.10em!important;color:#91a9c5!important}
body.p8-product-shell .p7-brand-text strong{font-size:15px!important;font-weight:720!important;letter-spacing:.01em!important}
body.p8-product-shell .p7-side-nav{padding:14px 10px 8px!important;gap:3px!important}
body.p8-product-shell .p7-side-nav button,body.p8-product-shell .p7-side-input{height:40px!important;border-radius:8px!important;padding:0 10px!important;grid-template-columns:24px 1fr 13px!important;gap:8px!important;color:#adbed2!important;font-size:13px!important;font-weight:620!important}
body.p8-product-shell .p7-side-nav button:hover,body.p8-product-shell .p7-side-input:hover{background:rgba(95,145,207,.12)!important;color:#fff!important}
body.p8-product-shell .p7-side-nav button.active{background:rgba(48,116,218,.18)!important;box-shadow:inset 2px 0 0 #60a5fa!important;color:#fff!important}
body.p8-product-shell .p7-nav-icon svg{width:17px!important;height:17px!important}
body.p8-product-shell .p7-side-input{margin:0 10px!important;width:calc(100% - 20px)!important;grid-template-columns:24px 1fr!important}
body.p8-product-shell .p7-side-separator{margin:7px 14px 8px!important;background:rgba(180,205,235,.09)!important}
body.p8-product-shell .p7-side-foot{padding:13px 15px 16px!important;border-top-color:rgba(180,205,235,.09)!important}
body.p8-product-shell .p7-side-status strong{font-size:11px!important}.p8-product-shell .p7-side-status small{font-size:10px!important}
body.p8-product-shell .p7-topbar{left:var(--p8-sidebar)!important;height:var(--p8-topbar)!important;padding:0 22px!important;background:rgba(255,255,255,.985)!important;border-bottom:1px solid var(--p8-line)!important;box-shadow:none!important}
body.p8-product-shell .p7-topbar-context{gap:2px!important}.p8-product-shell .p7-topbar-product{font-size:10px!important;color:#8795a6!important;letter-spacing:.08em!important}
body.p8-product-shell .p7-topbar-title-row h1{font-size:18px!important;font-weight:760!important;color:var(--p8-ink)!important;letter-spacing:-.015em!important}
body.p8-product-shell .p7-topbar-title-row span{font-size:10.5px!important;color:#728196!important;background:#f5f7fa!important;border-color:#e7ebf0!important;border-radius:6px!important;padding:3px 7px!important}
body.p8-product-shell .p7-period-chip,body.p8-product-shell .p7-compute-chip{height:38px!important;background:#fff!important;border-color:var(--p8-line)!important;border-radius:8px!important}
body.p8-product-shell .p7-top-action{height:36px!important;border-radius:8px!important;padding:0 12px!important;font-size:12px!important}
body.p8-product-shell #patrolPage.p7-main{margin:var(--p8-topbar) 0 0 var(--p8-sidebar)!important;padding:var(--p8-gutter)!important;min-height:calc(100vh - var(--p8-topbar))!important;background:var(--p8-canvas)!important}

/* Pages are canvases, not giant cards. Keep cards for data objects only. */
body.p8-product-shell #patrolPage>.workspace{padding:0!important;border:0!important;border-radius:0!important;background:transparent!important;box-shadow:none!important;overflow:visible!important}
body.p8-product-shell #patrolPage>.workspace:not(.p8-page-hidden){animation:p8PageIn .18s ease both}
@keyframes p8PageIn{from{opacity:.72;transform:translateY(3px)}to{opacity:1;transform:none}}
body.p8-product-shell .p7-module-head{min-height:64px!important;margin:0 0 14px!important;padding:0 2px 12px!important;border:0!important;border-bottom:1px solid var(--p8-line)!important;border-radius:0!important;background:transparent!important;box-shadow:none!important;color:var(--p8-ink)!important}
body.p8-product-shell .p7-module-head .section-number{width:30px!important;height:30px!important;border-radius:7px!important;background:var(--p8-blue-soft)!important;color:var(--p8-blue)!important;border:0!important;font-size:9px!important;font-weight:800!important}
body.p8-product-shell .p7-module-head .patrol-section-kicker{font-size:9px!important;color:#6781a4!important;letter-spacing:.09em!important;font-weight:760!important}
body.p8-product-shell .p7-module-head h2{font-size:24px!important;color:var(--p8-ink)!important;font-weight:780!important;letter-spacing:-.025em!important;margin:1px 0 3px!important}
body.p8-product-shell .p7-module-head p{font-size:11.5px!important;color:var(--p8-muted)!important;line-height:1.55!important;max-width:760px!important}
body.p8-product-shell .patrol-panel,body.p8-product-shell .patrol-domain-card{border:1px solid var(--p8-line)!important;border-radius:var(--p8-radius)!important;background:var(--p8-surface)!important;box-shadow:none!important;color:var(--p8-text)!important}
body.p8-product-shell .patrol-panel{padding:16px 18px!important}
body.p8-product-shell .patrol-panel-head{margin-bottom:12px!important;border-bottom:0!important}
body.p8-product-shell .patrol-panel-head h3{font-size:15px!important;line-height:1.28!important;color:var(--p8-ink)!important;font-weight:730!important;letter-spacing:-.01em!important}
body.p8-product-shell .patrol-panel-head small{font-size:10.5px!important;line-height:1.5!important;color:var(--p8-muted)!important}
body.p8-product-shell .btn{border-radius:8px!important;border-color:var(--p8-line-strong)!important;background:#fff!important;color:#34475e!important;box-shadow:none!important}
body.p8-product-shell .btn:hover{border-color:#b7c5d7!important;background:#f8fafc!important;color:#1c3552!important}
body.p8-product-shell .btn.primary{background:var(--p8-blue)!important;border-color:var(--p8-blue)!important;color:#fff!important}
body.p8-product-shell .btn.primary:hover{background:#1f58d8!important;border-color:#1f58d8!important;color:#fff!important}
body.p8-product-shell button:focus-visible,body.p8-product-shell a:focus-visible,body.p8-product-shell input:focus-visible,body.p8-product-shell select:focus-visible,body.p8-product-shell textarea:focus-visible{outline:3px solid rgba(37,99,235,.22)!important;outline-offset:2px!important}

/* Import: purposeful two-column intake, no page-height hero or decorative emptiness. */
body.p8-product-shell .p7-input-workspace{min-height:auto!important;display:block!important;justify-content:initial!important;background:transparent!important}
body.p8-product-shell .p7-input-heading{align-items:center!important;margin:0 0 14px!important;padding:0 2px 14px!important;border-bottom:1px solid var(--p8-line)!important}
body.p8-product-shell .p7-input-kicker{font-size:9.5px!important;color:#6480a5!important;letter-spacing:.09em!important}
body.p8-product-shell .p7-input-heading h2{margin:3px 0 4px!important;font-size:25px!important;letter-spacing:-.025em!important;color:var(--p8-ink)!important}
body.p8-product-shell .p7-input-heading p{font-size:12px!important;line-height:1.6!important;color:var(--p8-muted)!important;max-width:720px!important}
body.p8-product-shell .p7-input-trust span{padding:5px 8px!important;border-color:var(--p8-line)!important;background:#fff!important;border-radius:7px!important;font-size:10px!important;color:#65758a!important}
body.p8-product-shell .patrol-one-paste-grid{grid-template-columns:minmax(560px,1.45fr) minmax(320px,.72fr)!important;gap:14px!important;align-items:start!important}
body.p8-product-shell .p7-input-workspace .patrol-one-paste-card,body.p8-product-shell .p7-input-workspace .p7-input-guide{border:1px solid var(--p8-line)!important;border-radius:var(--p8-radius)!important;background:#fff!important;box-shadow:none!important;padding:17px!important}
body.p8-product-shell .patrol-one-paste-head{padding-bottom:11px!important;margin-bottom:11px!important;border-bottom:1px solid #edf0f4!important}
body.p8-product-shell .patrol-one-paste-head strong{font-size:15px!important;color:var(--p8-ink)!important}
body.p8-product-shell .patrol-one-paste-head small{font-size:10.5px!important;line-height:1.5!important;color:var(--p8-muted)!important}
body.p8-product-shell .p7-input-workspace .patrol-one-paste-input{min-height:230px!important;max-height:330px!important;border:1px solid #dce3ec!important;border-radius:9px!important;background:#fbfcfe!important;color:#23384f!important;font:12px/1.6 ui-monospace,SFMono-Regular,Consolas,"Liberation Mono",monospace!important;padding:13px!important;resize:vertical!important}
body.p8-product-shell .p7-guide-head{padding-bottom:10px!important;margin-bottom:10px!important;border-bottom:1px solid #edf0f4!important}.p8-product-shell .p7-guide-head span{font-size:9px!important;color:#70849d!important}.p8-product-shell .p7-guide-head strong{font-size:16px!important;color:var(--p8-ink)!important}
body.p8-product-shell .p7-guide-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:8px!important}
body.p8-product-shell .p7-guide-grid article{min-height:74px!important;padding:10px!important;border:1px solid #e8edf3!important;border-radius:9px!important;background:#f8fafc!important}
body.p8-product-shell .p7-guide-grid b{font-size:11.5px!important;color:#294159!important}.p8-product-shell .p7-guide-grid small{font-size:9.5px!important;line-height:1.45!important;color:#76869a!important}
body.p8-product-shell .p7-input-guide>p{font-size:9.5px!important;line-height:1.55!important;color:#77879a!important;background:#f6f8fa!important;border:0!important;border-radius:8px!important;padding:9px 10px!important;margin:10px 0 0!important}

/* KPI language: decisive numbers, muted scaffolding, fewer borders. */
body.p8-product-shell .p7-domain-kpis,body.p8-product-shell #patrolDashboard .p4-viz-kpis{display:grid!important;grid-template-columns:repeat(6,minmax(0,1fr))!important;gap:10px!important;margin:0 0 14px!important}
body.p8-product-shell .p7-domain-kpis article,body.p8-product-shell #patrolDashboard .p4-viz-kpis article{position:relative!important;min-height:96px!important;padding:14px 14px 12px!important;border:1px solid var(--p8-line)!important;border-radius:11px!important;background:#fff!important;box-shadow:none!important;display:grid!important;align-content:space-between!important;gap:5px!important;overflow:hidden!important}
body.p8-product-shell .p7-domain-kpis article::before,body.p8-product-shell #patrolDashboard .p4-viz-kpis article::before{content:""!important;position:absolute!important;left:0!important;top:14px!important;bottom:14px!important;width:3px!important;border-radius:0 3px 3px 0!important;background:#7da7f7!important}
body.p8-product-shell .p7-domain-kpis article.good::before{background:#51aa87!important}.p8-product-shell .p7-domain-kpis article.warning::before{background:#e2a249!important}.p8-product-shell .p7-domain-kpis article.attention::before,.p8-product-shell .p7-domain-kpis article.danger::before,.p8-product-shell #patrolDashboard .p4-viz-kpis article.attention::before{background:#dd7378!important}
body.p8-product-shell .p7-domain-kpis span,body.p8-product-shell #patrolDashboard .p4-viz-kpis span{font-size:10px!important;color:#718096!important;font-weight:600!important}
body.p8-product-shell .p7-domain-kpis strong,body.p8-product-shell #patrolDashboard .p4-viz-kpis strong{font-size:29px!important;line-height:1.05!important;color:#18324d!important;font-weight:780!important;letter-spacing:-.03em!important;text-shadow:none!important;opacity:1!important}
body.p8-product-shell .p7-domain-kpis small,body.p8-product-shell #patrolDashboard .p4-viz-kpis small{font-size:9.5px!important;line-height:1.45!important;color:#8a97a8!important}

/* Overview: one clear first fold, light analytical surfaces, no dark action cards. */
body.p8-product-shell #patrolDashboard .p4-viz-board{margin:0!important;padding:0!important;background:transparent!important;border:0!important;box-shadow:none!important}
body.p8-product-shell #patrolDashboard .p4-viz-grid{grid-template-columns:minmax(0,1.18fr) minmax(0,.9fr) minmax(0,.9fr)!important;gap:12px!important;margin-top:0!important}
body.p8-product-shell #patrolDashboard .p4-chart-panel{min-height:242px!important;padding:16px!important;border:1px solid var(--p8-line)!important;border-radius:12px!important;background:#fff!important;box-shadow:none!important;color:var(--p8-text)!important}
body.p8-product-shell #patrolDashboard .p4-chart-panel header{border-bottom:1px solid #edf0f4!important;padding-bottom:10px!important;margin-bottom:12px!important}
body.p8-product-shell #patrolDashboard .p4-chart-panel header span{font-size:8.5px!important;color:#8997a7!important;letter-spacing:.08em!important}.p8-product-shell #patrolDashboard .p4-chart-panel h3{font-size:14px!important;color:var(--p8-ink)!important}.p8-product-shell #patrolDashboard .p4-chart-panel header>b{font-size:10px!important;color:#64758a!important;background:#f4f7fa!important;border:1px solid #e8edf2!important}
body.p8-product-shell #patrolDashboard .p4-stack{height:10px!important;background:#eef2f5!important;border-radius:999px!important;overflow:hidden!important}
body.p8-product-shell #patrolDashboard .p4-stack-legend span{font-size:9.5px!important;color:#66778b!important}
body.p8-product-shell #patrolDashboard .p4-donut{width:92px!important;height:92px!important;border-width:9px!important}.p8-product-shell #patrolDashboard .p4-donut strong{font-size:18px!important}.p8-product-shell #patrolDashboard .p4-donut small{font-size:8.5px!important}
body.p8-product-shell #patrolDashboard .p4-priority-list{display:grid!important;gap:7px!important}.p8-product-shell #patrolDashboard .p4-priority-list>*{border-color:#e8edf3!important;background:#f8fafc!important;color:#43556b!important;box-shadow:none!important}
body.p8-product-shell #patrolDashboard .patrol-leadership-summary{margin:14px 0!important;padding:12px 14px!important;border:1px solid #dce8f4!important;border-radius:10px!important;background:#f2f7fd!important;color:#4d647e!important;font-size:11px!important;line-height:1.65!important}
body.p8-product-shell #patrolDashboard .hf31-action-section-title{margin:15px 0 8px!important}.p8-product-shell #patrolDashboard .hf31-action-section-title b{font-size:15px!important;color:var(--p8-ink)!important}.p8-product-shell #patrolDashboard .hf31-action-section-title small{font-size:10px!important;color:var(--p8-muted)!important}
body.p8-product-shell #patrolDashboard .hf32-priority-list{border:1px solid var(--p8-line)!important;border-radius:11px!important;overflow:hidden!important;background:#fff!important}
body.p8-product-shell #patrolDashboard .hf32-priority-list article{background:#fff!important;border-bottom-color:#edf0f4!important;padding:10px 12px!important}.p8-product-shell #patrolDashboard .hf32-priority-list article[data-priority="1"]{background:#fffafa!important}
body.p8-product-shell #patrolDashboard .patrol-progress-overview-panel{margin-top:12px!important}.p8-product-shell #patrolDashboard .patrol-progress-overview{grid-template-columns:repeat(4,minmax(0,1fr))!important;gap:8px!important}.p8-product-shell #patrolDashboard .patrol-progress-overview>*{background:#f8fafc!important;border-color:#e8edf3!important;border-radius:9px!important;box-shadow:none!important}
body.p8-product-shell #patrolDashboard .patrol-domain-structure-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:12px!important;margin-top:12px!important}.p8-product-shell #patrolDashboard .patrol-macro-panel{padding:16px!important}

/* Domain workspaces: larger content width, compact controls and tables, 3-up analysis cards. */
body.p8-product-shell .p7-analysis-split{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:12px!important;margin:0 0 12px!important}
body.p8-product-shell .p7-analysis-split>.patrol-panel{min-height:218px!important;padding:15px 16px!important}
body.p8-product-shell .p7-bar-row{grid-template-columns:minmax(95px,155px) 1fr auto!important;gap:8px!important}.p8-product-shell .p7-bar-row>span{font-size:10px!important}.p8-product-shell .p7-bar-track{height:7px!important}.p8-product-shell .p7-bar-row strong{font-size:10px!important}.p8-product-shell .p7-bar-row small{font-size:8.8px!important}
body.p8-product-shell .p7-gap-item{padding:8px 9px!important;border-color:#e8edf2!important;background:#f9fbfd!important;border-radius:8px!important}.p8-product-shell .p7-gap-item>i{width:26px!important;height:26px!important}.p8-product-shell .p7-gap-item b{font-size:10.5px!important}.p8-product-shell .p7-gap-item small{font-size:9px!important}.p8-product-shell .p7-gap-item strong{font-size:15px!important}
body.p8-product-shell .p7-object-table-panel{margin-top:0!important;padding:0!important;overflow:hidden!important}.p8-product-shell .p7-object-table-panel>.patrol-panel-head{padding:15px 16px 8px!important;margin:0!important}.p8-product-shell .p7-object-toolbar{padding:9px 12px!important;background:#f7f9fb!important;border-top:1px solid #edf0f4!important;border-bottom:1px solid #edf0f4!important;gap:8px!important}.p8-product-shell .p7-object-toolbar input,.p8-product-shell .p7-object-toolbar select{height:34px!important;border-color:#dfe5ec!important;border-radius:8px!important;background:#fff!important;color:#34475e!important;font-size:10px!important}.p8-product-shell .p7-object-table-panel .table-wrap{border:0!important;border-radius:0!important}.p8-product-shell .p7-object-table-panel table{font-size:10px!important}.p8-product-shell .p7-object-table-panel thead th{position:sticky!important;top:0!important;z-index:2!important;background:#122b47!important;color:#eaf1f8!important;font-size:9.5px!important;height:39px!important;border-color:#24435f!important}.p8-product-shell .p7-object-table-panel tbody td{padding:9px 10px!important;color:#46586d!important;border-bottom:1px solid #edf0f4!important;background:#fff!important}.p8-product-shell .p7-object-table-panel tbody tr:hover td{background:#f7faff!important}

/* Responsibility: denser scan grid; progress rather than ranking aesthetics. */
body.p8-product-shell .p7-responsibility-kpis{grid-template-columns:repeat(4,minmax(0,1fr))!important;gap:10px!important;margin-bottom:12px!important}.p8-product-shell .p7-responsibility-kpis article{border:1px solid var(--p8-line)!important;border-radius:10px!important;background:#fff!important;box-shadow:none!important;padding:13px 14px!important}.p8-product-shell .p7-responsibility-kpis strong{font-size:25px!important;color:#1c3650!important}
body.p8-product-shell .p7-responsibility-grid{grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:10px!important}.p8-product-shell .p7-responsibility-grid>article{min-height:144px!important;border:1px solid var(--p8-line)!important;border-radius:10px!important;background:#fff!important;box-shadow:none!important;padding:13px 14px!important}.p8-product-shell .p7-responsibility-grid h3,.p8-product-shell .p7-responsibility-grid h4{color:var(--p8-ink)!important}.p8-product-shell .p7-responsibility-grid small{color:var(--p8-muted)!important}

/* GIS: map-first workspace with real base-map; remove shell/canvas height mismatch and black void. */
body.p8-product-shell #patrolAnalysisZone{padding:0!important;border:1px solid #183c5f!important;border-radius:13px!important;background:#0b2340!important;overflow:hidden!important;box-shadow:none!important;color:#dce8f6!important}
body.p8-product-shell #patrolAnalysisZone>.p7-module-head{padding:15px 16px 13px!important;margin:0!important;border:0!important;border-bottom:1px solid rgba(173,203,235,.13)!important;border-radius:0!important;background:#0d2948!important}
body.p8-product-shell #patrolAnalysisZone>.p7-module-head h2{color:#f3f7fc!important}.p8-product-shell #patrolAnalysisZone>.p7-module-head p{color:#9bb0c7!important}.p8-product-shell #patrolAnalysisZone>.p7-module-head .section-number{background:rgba(85,160,238,.14)!important;color:#85c8ff!important}
body.p8-product-shell #patrolAnalysisZone>.p7-map-tabs{margin:10px 12px 8px!important}.p8-product-shell #patrolAnalysisZone>.p7-map-tabs .btn{background:#0b213a!important;border-color:#244867!important;color:#aac0d5!important}.p8-product-shell #patrolAnalysisZone>.p7-map-tabs .btn.active,.p8-product-shell #patrolAnalysisZone>.p7-map-tabs .btn.primary{background:#2563eb!important;border-color:#2563eb!important;color:#fff!important}
body.p8-product-shell #patrolAnalysisZone>.patrol-dual-maps{padding:0 12px 12px!important;margin:0!important}.p8-product-shell #patrolAnalysisZone .patrol-business-map{border:1px solid #224968!important;border-radius:10px!important;background:#0b2948!important;box-shadow:none!important}
body.p8-product-shell #patrolAnalysisZone .patrol-map-intelligence-head{padding:13px 14px 10px!important;border-bottom:1px solid rgba(173,203,235,.10)!important}.p8-product-shell #patrolAnalysisZone .patrol-map-intelligence-head h3{font-size:15px!important;color:#eef5fd!important}.p8-product-shell #patrolAnalysisZone .patrol-map-intelligence-head small{font-size:10px!important;color:#829ab3!important}
body.p8-product-shell #patrolAnalysisZone .patrol-map-explore-bar{margin:0 12px 10px!important;padding:8px!important;border:1px solid #1d4261!important;border-radius:8px!important;background:#081e37!important;gap:7px!important}.p8-product-shell #patrolAnalysisZone .patrol-map-filter-group button{min-height:30px!important;border-radius:7px!important;font-size:9px!important;background:#102e4d!important;color:#a7bdd2!important}.p8-product-shell #patrolAnalysisZone .patrol-map-filter-group button.active{background:#245fb9!important;color:#fff!important}.p8-product-shell #patrolAnalysisZone .patrol-map-search-box{height:34px!important;border-radius:7px!important;background:#0a2744!important;border-color:#214866!important}
body.p8-product-shell #patrolAnalysisZone .patrol-map-intelligence-layout{padding:0 12px!important;grid-template-columns:minmax(0,2.12fr) minmax(280px,.66fr)!important;gap:10px!important;align-items:start!important}
body.p8-product-shell #patrolAnalysisZone .patrol-map-canvas-shell{min-height:0!important;height:auto!important;aspect-ratio:5 / 4!important;border:1px solid rgba(127,181,229,.24)!important;border-radius:9px!important;background:#f4f5ef!important;box-shadow:none!important;overflow:hidden!important;position:relative!important}
body.p8-product-shell #patrolAnalysisZone .patrol-map-canvas-shell>canvas{display:block!important;width:100%!important;height:100%!important;min-height:0!important;max-height:none!important;aspect-ratio:5 / 4!important;background:#f4f5ef!important;object-fit:contain!important}
body.p8-product-shell #patrolAnalysisZone .patrol-map-intelligence-panel{padding:13px!important;border:1px solid #1e4566!important;border-radius:9px!important;background:#0b2947!important;box-shadow:none!important;color:#cddbea!important}.p8-product-shell #patrolAnalysisZone .patrol-map-intelligence-panel h4,.p8-product-shell #patrolAnalysisZone .patrol-map-intelligence-panel b{color:#e9f2fc!important}.p8-product-shell #patrolAnalysisZone .patrol-map-intelligence-panel small,.p8-product-shell #patrolAnalysisZone .patrol-map-narrative{color:#86a0ba!important}.p8-product-shell #patrolAnalysisZone .patrol-map-metric-strip{background:#0d3152!important;border:1px solid #1d4768!important;border-radius:8px!important}.p8-product-shell #patrolAnalysisZone .patrol-map-priority-row{background:#102f4e!important;border-color:#1f4665!important;border-radius:7px!important}
body.p8-product-shell #patrolAnalysisZone .patrol-map-conclusion{margin:10px 12px!important;padding:9px 11px!important;border-radius:8px!important;background:#eaf1f7!important;color:#385068!important;font-size:9.5px!important;line-height:1.55!important}.p8-product-shell #patrolAnalysisZone .patrol-map-actions{padding:0 12px 12px!important;gap:7px!important}.p8-product-shell #patrolAnalysisZone .patrol-map-actions .btn{background:#f6f8fb!important;border-color:#dce3eb!important;color:#30475f!important}.p8-product-shell #patrolAnalysisZone .patrol-map-actions .btn.primary{background:#2563eb!important;border-color:#2563eb!important;color:#fff!important}

/* Output center: one workspace, two-column delivery station, clear grouping. */
body.p8-product-shell.patrol-results-ready[data-p7-view="output"] #patrolOutputZone.patrol-legacy-output{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:12px!important;align-items:start!important}
body.p8-product-shell #patrolOutputZone>.p7-module-head{grid-column:1/-1!important;order:0!important;margin-bottom:0!important}
body.p8-product-shell #patrolOutputZone>.p7-output-guide{grid-column:1/-1!important;order:1!important;display:grid!important;grid-template-columns:repeat(4,minmax(0,1fr))!important;gap:9px!important;margin:0!important}
body.p8-product-shell #patrolOutputZone>.p7-output-guide article{min-height:86px!important;padding:12px 13px!important;border:1px solid var(--p8-line)!important;border-radius:10px!important;background:#fff!important;box-shadow:none!important}.p8-product-shell #patrolOutputZone>.p7-output-guide span{font-size:8.5px!important;color:#6680a2!important}.p8-product-shell #patrolOutputZone>.p7-output-guide b{font-size:12px!important;color:#243c56!important}.p8-product-shell #patrolOutputZone>.p7-output-guide small{font-size:9.2px!important;line-height:1.45!important;color:#7a899b!important}
body.p8-product-shell #patrolOutputZone>.p7-focus-export-panel{grid-column:1/-1!important;order:2!important;margin:0!important}
body.p8-product-shell #patrolOutputZone>.patrol-copy-grid{grid-column:1/-1!important;order:3!important;display:grid!important;grid-template-columns:repeat(4,minmax(0,1fr))!important;gap:9px!important}.p8-product-shell #patrolOutputZone .patrol-copy-card{min-height:158px!important;padding:14px!important;border:1px solid var(--p8-line)!important;border-radius:10px!important;background:#fff!important;box-shadow:none!important}.p8-product-shell #patrolOutputZone .patrol-copy-card span{font-size:8.5px!important}.p8-product-shell #patrolOutputZone .patrol-copy-card h3{font-size:14px!important;color:var(--p8-ink)!important}.p8-product-shell #patrolOutputZone .patrol-copy-card p{font-size:9.5px!important;color:var(--p8-muted)!important;line-height:1.5!important}
body.p8-product-shell #patrolOutputZone>.patrol-command-export-panel{order:4!important}.p8-product-shell #patrolOutputZone>.patrol-writing-panel{order:5!important}.p8-product-shell #patrolOutputZone>.patrol-card-export-panel{order:6!important}.p8-product-shell #patrolOutputZone>.patrol-brief-panel{order:7!important}
body.p8-product-shell #patrolOutputZone>.patrol-panel{margin:0!important;min-height:100%!important}.p8-product-shell #patrolOutputZone .patrol-command-export-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:8px!important}.p8-product-shell #patrolOutputZone .patrol-writing-actions{gap:7px!important}.p8-product-shell #patrolOutputZone .patrol-writing-note{font-size:9.5px!important;line-height:1.55!important;background:#f6f8fb!important;border:0!important;border-radius:8px!important;padding:8px 10px!important;color:#78889b!important}.p8-product-shell #patrolOutputZone .patrol-card-export-controls{display:grid!important;grid-template-columns:1fr 1fr auto!important;gap:8px!important;align-items:end!important}.p8-product-shell #patrolOutputZone .patrol-card-export-controls label{min-width:0!important}.p8-product-shell #patrolOutputZone .patrol-brief{min-height:150px!important;max-height:220px!important;border-color:#dfe5ec!important;background:#fbfcfe!important;color:#42546a!important;font-size:10px!important;line-height:1.6!important}

/* History: quiet empty states instead of large dark blocks. */
body.p8-product-shell #patrolCompareZone .patrol-compare-autoload{margin-bottom:10px!important}.p8-product-shell #patrolCompareZone .patrol-import-status{border:1px solid #e2e8ef!important;border-radius:9px!important;background:#f8fafc!important;color:#697a8f!important;padding:10px 12px!important;font-size:10px!important}
body.p8-product-shell #patrolCompareZone .patrol-compare-kpis{grid-template-columns:repeat(4,minmax(0,1fr))!important;gap:10px!important}.p8-product-shell #patrolCompareZone .patrol-compare-kpis article{min-height:100px!important;border:1px solid var(--p8-line)!important;border-radius:10px!important;background:#fff!important;box-shadow:none!important;padding:14px!important}.p8-product-shell #patrolCompareZone .patrol-compare-kpis strong{font-size:27px!important;color:#1b3650!important}
body.p8-product-shell #patrolCompareZone .patrol-compare-charts{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:12px!important}.p8-product-shell #patrolCompareZone .patrol-chart-panel{min-height:280px!important;background:#fff!important}.p8-product-shell #patrolCompareZone .patrol-chart-svg{min-height:190px!important;background:#fbfcfe!important;border:1px dashed #e1e7ee!important;border-radius:9px!important}.p8-product-shell #patrolCompareZone .patrol-stack-chart,.p8-product-shell #patrolCompareZone .patrol-change-bars,.p8-product-shell #patrolCompareZone .patrol-management-summary-body{min-height:190px!important;background:#fbfcfe!important;border:1px dashed #e1e7ee!important;border-radius:9px!important;color:#718096!important;display:grid!important;align-content:center!important}
body.p8-product-shell #patrolCompareZone .patrol-compare-person-panel{margin-top:12px!important}.p8-product-shell #patrolCompareZone .patrol-person-table thead th{background:#f2f5f8!important;color:#536579!important;border-color:#e0e6ed!important}.p8-product-shell #patrolCompareZone .patrol-person-table tbody td{border-color:#edf0f4!important;color:#56677c!important}

/* Supporting surfaces and text contrast. */
body.p8-product-shell .patrol-schema-badge,body.p8-product-shell .patrol-domain-chip{background:#edf4ff!important;border-color:#dce9fb!important;color:#3e6daa!important;font-size:9px!important;border-radius:999px!important}
body.p8-product-shell .patrol-leadership-summary,body.p8-product-shell .patrol-macro-narrative,body.p8-product-shell .patrol-ranking-basis-alert,body.p8-product-shell .patrol-watch-summary,body.p8-product-shell .patrol-writing-note{background:#f5f8fb!important;border-color:#e1e8ef!important;color:#66798e!important}
body.p8-product-shell .patrol-empty-card{min-height:76px!important;border:1px dashed #dce3eb!important;border-radius:9px!important;background:#fafbfd!important;color:#8693a3!important;display:grid!important;place-items:center!important;font-size:10px!important;box-shadow:none!important}
body.p8-product-shell .table-wrap{border-radius:9px!important;border-color:var(--p8-line)!important;background:#fff!important;box-shadow:none!important}

/* Desktop density breakpoints. */
@media(max-width:1680px){
  :root{--p8-sidebar:204px;--p8-gutter:18px}
  body.p8-product-shell .p7-domain-kpis,body.p8-product-shell #patrolDashboard .p4-viz-kpis{grid-template-columns:repeat(3,minmax(0,1fr))!important}
  body.p8-product-shell .p7-responsibility-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}
  body.p8-product-shell #patrolOutputZone>.p7-output-guide,body.p8-product-shell #patrolOutputZone>.patrol-copy-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}
  body.p8-product-shell #patrolAnalysisZone .patrol-map-intelligence-layout{grid-template-columns:minmax(0,1.85fr) minmax(260px,.62fr)!important}
}
@media(max-width:1420px){
  :root{--p8-sidebar:192px;--p8-gutter:14px}
  body.p8-product-shell .p7-topbar{padding:0 15px!important}
  body.p8-product-shell .patrol-one-paste-grid{grid-template-columns:1fr!important}
  body.p8-product-shell #patrolDashboard .p4-viz-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}.p8-product-shell #patrolDashboard .p4-priority-panel{grid-column:1/-1!important}
  body.p8-product-shell .p7-analysis-split{grid-template-columns:1fr!important}
  body.p8-product-shell .p7-responsibility-grid{grid-template-columns:1fr!important}
  body.p8-product-shell #patrolAnalysisZone .patrol-map-intelligence-layout{grid-template-columns:1fr!important}
  body.p8-product-shell.patrol-results-ready[data-p7-view="output"] #patrolOutputZone.patrol-legacy-output{grid-template-columns:1fr!important}
  body.p8-product-shell #patrolOutputZone>.patrol-panel{grid-column:1/-1!important}
}
@media(max-height:800px){
  body.p8-product-shell .p7-side-nav{padding-top:8px!important}
  body.p8-product-shell .p7-side-nav button,body.p8-product-shell .p7-side-input{height:36px!important}
  body.p8-product-shell .p7-input-workspace .patrol-one-paste-input{min-height:190px!important;max-height:250px!important}
}
@media(prefers-reduced-motion:reduce){body.p8-product-shell #patrolPage>.workspace:not(.p8-page-hidden){animation:none!important}}


/* ==========================================================================
   P9 | Presentation-grade desktop governance analytics
   Visual goals: calm, legible, spacious, non-template, export-friendly.
   No business facts, map authority or calculation logic changed here.
   ========================================================================== */
:root{
  --p9-nav:184px;
  --p9-top:62px;
  --p9-bg:#f1f4f7;
  --p9-surface:#ffffff;
  --p9-surface-2:#f7f9fb;
  --p9-line:#e3e8ee;
  --p9-line-2:#d8e0e8;
  --p9-ink:#15273a;
  --p9-text:#40546a;
  --p9-muted:#75859a;
  --p9-navy:#10273e;
  --p9-navy-2:#183650;
  --p9-blue:#2867d8;
  --p9-teal:#16877c;
  --p9-green:#1b8068;
  --p9-amber:#b97923;
  --p9-red:#bf515c;
  --p9-radius:14px;
  --p9-shadow:0 1px 2px rgba(16,35,55,.03),0 10px 26px rgba(16,35,55,.04);
}
body.p9-product-shell{
  min-width:1160px!important;
  background:var(--p9-bg)!important;
  color:var(--p9-ink)!important;
  font-family:"Microsoft YaHei UI","Microsoft YaHei","PingFang SC","Noto Sans CJK SC","Segoe UI",sans-serif!important;
  font-size:14px!important;
  -webkit-font-smoothing:antialiased;
  text-rendering:optimizeLegibility;
}
/* Application chrome: compact, quiet, product-like. */
body.p9-product-shell .p7-sidebar{width:var(--p9-nav)!important;background:var(--p9-navy)!important;border-right:0!important;box-shadow:6px 0 28px rgba(13,31,49,.06)!important}
body.p9-product-shell .p7-side-brand{height:var(--p9-top)!important;padding:0 13px!important;gap:9px!important;border-bottom:1px solid rgba(255,255,255,.055)!important}
body.p9-product-shell .p7-side-logo{width:34px!important;height:34px!important;border-radius:10px!important;box-shadow:0 5px 16px rgba(0,0,0,.14)!important}
body.p9-product-shell .p7-brand-text small{font-size:9px!important;letter-spacing:.08em!important;color:#8ea5ba!important}
body.p9-product-shell .p7-brand-text strong{font-size:14px!important;font-weight:700!important;letter-spacing:0!important;color:#f6f9fc!important}
body.p9-product-shell .p7-side-nav{padding:13px 8px 8px!important;gap:3px!important}
body.p9-product-shell .p7-side-nav button,body.p9-product-shell .p7-side-input{height:42px!important;border-radius:10px!important;padding:0 9px!important;grid-template-columns:23px 1fr 10px!important;gap:7px!important;color:#b4c3d1!important;font-size:12.5px!important;font-weight:600!important;letter-spacing:0!important;transition:background .15s ease,color .15s ease!important}
body.p9-product-shell .p7-side-nav button:hover,body.p9-product-shell .p7-side-input:hover{background:#193853!important;color:#fff!important}
body.p9-product-shell .p7-side-nav button.active{background:#1b3e5c!important;color:#fff!important;box-shadow:inset 3px 0 0 #62c0b4!important}
body.p9-product-shell .p7-side-nav button.active .p7-nav-icon{color:#7cd1c6!important}
body.p9-product-shell .p7-nav-icon svg{width:16px!important;height:16px!important;stroke-width:1.8!important}
body.p9-product-shell .p7-nav-arrow{opacity:.42!important}
body.p9-product-shell .p7-side-input{margin:0 8px!important;width:calc(100% - 16px)!important;grid-template-columns:23px 1fr!important;border:1px solid rgba(255,255,255,.06)!important;background:rgba(255,255,255,.035)!important}
body.p9-product-shell .p7-side-separator{margin:8px 14px!important;background:rgba(255,255,255,.07)!important}
body.p9-product-shell .p7-side-foot{padding:12px 13px 15px!important;border-top:1px solid rgba(255,255,255,.06)!important}
body.p9-product-shell .p7-side-status strong{font-size:10.5px!important;color:#dce6ef!important}.p9-product-shell .p7-side-status small{font-size:9px!important;color:#8299ad!important}
body.p9-product-shell .p7-topbar{left:var(--p9-nav)!important;height:var(--p9-top)!important;padding:0 22px!important;background:rgba(255,255,255,.97)!important;border-bottom:1px solid var(--p9-line)!important;box-shadow:0 1px 0 rgba(16,35,55,.02)!important;backdrop-filter:blur(14px)!important}
body.p9-product-shell .p7-topbar-product{font-size:9px!important;color:#8a98a8!important;letter-spacing:.06em!important}
body.p9-product-shell .p7-topbar-title-row h1{font-size:17px!important;font-weight:720!important;color:var(--p9-ink)!important;letter-spacing:-.01em!important}
body.p9-product-shell .p7-topbar-title-row span{font-size:9.5px!important;color:#687a8e!important;background:transparent!important;border:0!important;padding:0!important}
body.p9-product-shell .p7-period-chip,body.p9-product-shell .p7-compute-chip{height:36px!important;border:1px solid var(--p9-line)!important;background:#fff!important;border-radius:9px!important;box-shadow:none!important}
body.p9-product-shell .p7-period-chip span,body.p9-product-shell .p7-compute-chip small{font-size:8.5px!important;color:#8a97a7!important}.p9-product-shell .p7-period-chip strong,.p9-product-shell .p7-compute-chip strong{font-size:10px!important;color:#40546a!important}
body.p9-product-shell .p7-top-action{height:35px!important;border-radius:9px!important;padding:0 11px!important;font-size:11px!important}
body.p9-product-shell #patrolPage.p7-main{margin:var(--p9-top) 0 0 var(--p9-nav)!important;padding:22px 24px 28px!important;min-height:calc(100vh - var(--p9-top))!important;background:var(--p9-bg)!important}

/* Pages: use whitespace and section rhythm instead of box-on-box decoration. */
body.p9-product-shell #patrolPage>.workspace{max-width:none!important;padding:0!important;border:0!important;border-radius:0!important;background:transparent!important;box-shadow:none!important}
body.p9-product-shell .p7-module-head{min-height:72px!important;margin:0 0 16px!important;padding:2px 0 14px!important;border:0!important;border-bottom:1px solid var(--p9-line)!important;background:transparent!important;box-shadow:none!important;align-items:flex-end!important}
body.p9-product-shell .p7-module-head .section-number{display:none!important}
body.p9-product-shell .p7-module-head .patrol-section-kicker{font-size:9px!important;letter-spacing:.12em!important;color:#6d839c!important;font-weight:700!important;text-transform:uppercase!important}
body.p9-product-shell .p7-module-head h2{margin:3px 0 4px!important;font-size:28px!important;line-height:1.12!important;font-weight:760!important;letter-spacing:-.035em!important;color:var(--p9-ink)!important}
body.p9-product-shell .p7-module-head p{font-size:12px!important;line-height:1.6!important;color:var(--p9-muted)!important;max-width:780px!important}
body.p9-product-shell .patrol-module-actions{gap:7px!important;align-items:center!important;flex-wrap:wrap!important;justify-content:flex-end!important}
body.p9-product-shell .btn{min-height:34px!important;border-radius:9px!important;border:1px solid var(--p9-line-2)!important;background:#fff!important;color:#334a61!important;box-shadow:none!important;font-size:11.5px!important;font-weight:620!important}
body.p9-product-shell .btn:hover{background:#f7f9fb!important;border-color:#bdc9d5!important;color:#17314b!important}
body.p9-product-shell .btn.primary{background:var(--p9-navy-2)!important;border-color:var(--p9-navy-2)!important;color:#fff!important;box-shadow:0 4px 12px rgba(24,54,80,.12)!important}
body.p9-product-shell .btn.primary:hover{background:#214865!important;border-color:#214865!important;color:#fff!important}
body.p9-product-shell .btn.large{min-height:40px!important;padding:0 15px!important}
body.p9-product-shell .btn.small{min-height:30px!important;padding:0 10px!important;font-size:10.5px!important}
body.p9-product-shell .patrol-schema-badge,body.p9-product-shell .patrol-domain-chip{padding:5px 8px!important;border:0!important;border-radius:999px!important;background:#edf2f6!important;color:#65778a!important;font-size:9px!important;font-weight:700!important}
body.p9-product-shell .patrol-panel,body.p9-product-shell .patrol-domain-card{border:1px solid var(--p9-line)!important;border-radius:var(--p9-radius)!important;background:var(--p9-surface)!important;box-shadow:var(--p9-shadow)!important;color:var(--p9-text)!important}
body.p9-product-shell .patrol-panel{padding:18px 19px!important}
body.p9-product-shell .patrol-panel-head{margin-bottom:14px!important;padding-bottom:0!important;border-bottom:0!important;align-items:flex-start!important}
body.p9-product-shell .patrol-panel-head h3{font-size:16px!important;line-height:1.3!important;font-weight:720!important;letter-spacing:-.015em!important;color:var(--p9-ink)!important}
body.p9-product-shell .patrol-panel-head small{font-size:10.5px!important;line-height:1.55!important;color:var(--p9-muted)!important}
body.p9-product-shell .patrol-eyebrow{font-size:9px!important;color:#6f879f!important;letter-spacing:.08em!important}

/* Import: one calm work surface, no pseudo-onboarding wall. */
body.p9-product-shell .p7-input-workspace{min-height:auto!important;background:transparent!important}
body.p9-product-shell .p7-input-heading{margin:0 0 16px!important;padding:2px 0 15px!important;border-bottom:1px solid var(--p9-line)!important;align-items:flex-end!important}
body.p9-product-shell .p7-input-kicker{font-size:9px!important;color:#6c849c!important;letter-spacing:.11em!important}
body.p9-product-shell .p7-input-heading h2{font-size:28px!important;line-height:1.15!important;margin:4px 0 5px!important;color:var(--p9-ink)!important;letter-spacing:-.03em!important}
body.p9-product-shell .p7-input-heading p{font-size:12px!important;line-height:1.65!important;color:var(--p9-muted)!important;max-width:760px!important}
body.p9-product-shell .p7-input-trust{gap:6px!important}.p9-product-shell .p7-input-trust span{padding:5px 8px!important;border:0!important;background:#eaf0f5!important;border-radius:999px!important;color:#617487!important;font-size:9.5px!important}
body.p9-product-shell .patrol-one-paste-grid{grid-template-columns:minmax(620px,1.65fr) minmax(280px,.58fr)!important;gap:16px!important;align-items:start!important}
body.p9-product-shell .p7-input-workspace .patrol-one-paste-card{padding:20px!important;border:1px solid var(--p9-line)!important;border-radius:16px!important;background:#fff!important;box-shadow:var(--p9-shadow)!important}
body.p9-product-shell .p7-input-workspace .p7-input-guide{padding:18px!important;border:0!important;border-radius:16px!important;background:#eaf0f5!important;box-shadow:none!important}
body.p9-product-shell .patrol-one-paste-head{margin-bottom:12px!important;padding-bottom:12px!important;border-bottom:1px solid #edf1f4!important}.p9-product-shell .patrol-one-paste-head strong{font-size:16px!important;color:var(--p9-ink)!important}.p9-product-shell .patrol-one-paste-head small{font-size:10.5px!important;color:var(--p9-muted)!important;line-height:1.55!important}
body.p9-product-shell .p7-input-workspace .patrol-one-paste-input{min-height:285px!important;max-height:430px!important;padding:15px!important;border:1px solid #d9e1e9!important;border-radius:11px!important;background:#fafbfd!important;color:#23394f!important;font:12px/1.65 ui-monospace,SFMono-Regular,Consolas,"Liberation Mono",monospace!important;box-shadow:inset 0 1px 2px rgba(17,36,56,.025)!important}
body.p9-product-shell .p7-guide-head{border:0!important;padding:0 0 10px!important;margin:0!important}.p9-product-shell .p7-guide-head span{font-size:9px!important;color:#6f8295!important}.p9-product-shell .p7-guide-head strong{font-size:15px!important;color:#273e54!important}
body.p9-product-shell .p7-guide-grid{display:grid!important;grid-template-columns:1fr!important;gap:0!important}
body.p9-product-shell .p7-guide-grid article{min-height:auto!important;padding:9px 0!important;border:0!important;border-top:1px solid rgba(91,116,139,.12)!important;border-radius:0!important;background:transparent!important;display:grid!important;grid-template-columns:92px 1fr!important;align-items:center!important;gap:8px!important}.p9-product-shell .p7-guide-grid b{font-size:10.5px!important;color:#2e465c!important}.p9-product-shell .p7-guide-grid small{font-size:9.5px!important;color:#75869a!important;line-height:1.45!important}
body.p9-product-shell .p7-input-guide>p{margin:10px 0 0!important;padding:10px 0 0!important;border:0!important;border-top:1px solid rgba(91,116,139,.12)!important;border-radius:0!important;background:transparent!important;font-size:9.5px!important;color:#738498!important;line-height:1.55!important}
body.p9-product-shell .patrol-package-check,body.p9-product-shell .patrol-import-status{font-size:10px!important;border-radius:8px!important;padding:8px 10px!important}

/* KPI row: fewer visual borders, stronger numbers, consistent baseline. */
body.p9-product-shell .p7-domain-kpis,body.p9-product-shell #patrolDashboard .p4-viz-kpis{display:grid!important;grid-template-columns:repeat(6,minmax(0,1fr))!important;gap:10px!important;margin:0 0 14px!important}
body.p9-product-shell .p7-domain-kpis article,body.p9-product-shell #patrolDashboard .p4-viz-kpis article{min-height:108px!important;padding:15px 15px 13px!important;border:0!important;border-radius:13px!important;background:#fff!important;box-shadow:0 1px 0 rgba(16,35,55,.035),0 7px 20px rgba(16,35,55,.035)!important;display:grid!important;align-content:space-between!important;gap:5px!important;position:relative!important;overflow:hidden!important}
body.p9-product-shell .p7-domain-kpis article::before,body.p9-product-shell #patrolDashboard .p4-viz-kpis article::before{content:""!important;position:absolute!important;left:0!important;right:0!important;top:0!important;height:2px!important;background:#9cb4ca!important}
body.p9-product-shell .p7-domain-kpis article.good::before{background:#57a78c!important}.p9-product-shell .p7-domain-kpis article.warning::before{background:#d39a4d!important}.p9-product-shell .p7-domain-kpis article.attention::before,.p9-product-shell .p7-domain-kpis article.danger::before,.p9-product-shell #patrolDashboard .p4-viz-kpis article.attention::before{background:#d66d76!important}
body.p9-product-shell .p7-domain-kpis span,body.p9-product-shell #patrolDashboard .p4-viz-kpis span{font-size:10px!important;font-weight:650!important;color:#718297!important}
body.p9-product-shell .p7-domain-kpis strong,body.p9-product-shell #patrolDashboard .p4-viz-kpis strong{font-size:33px!important;line-height:1!important;font-weight:780!important;letter-spacing:-.045em!important;color:#17314b!important;font-variant-numeric:tabular-nums!important}
body.p9-product-shell .p7-domain-kpis small,body.p9-product-shell #patrolDashboard .p4-viz-kpis small{font-size:9.5px!important;line-height:1.45!important;color:#8a97a7!important}

/* Overview: three analytical surfaces, then a management narrative; no tile soup. */
body.p9-product-shell #patrolDashboard .p4-viz-board{margin:0!important;padding:0!important;border:0!important;background:transparent!important;box-shadow:none!important}
body.p9-product-shell #patrolDashboard .p4-viz-grid{display:grid!important;grid-template-columns:repeat(12,minmax(0,1fr))!important;gap:12px!important;margin:0!important}
body.p9-product-shell #patrolDashboard .p4-reg-panel{grid-column:span 5!important}.p9-product-shell #patrolDashboard .p4-coverage-panel{grid-column:span 3!important}.p9-product-shell #patrolDashboard .p4-priority-panel{grid-column:span 4!important}
body.p9-product-shell #patrolDashboard .p4-chart-panel{min-height:255px!important;padding:17px 18px!important;border:0!important;border-radius:14px!important;background:#fff!important;box-shadow:var(--p9-shadow)!important;color:var(--p9-text)!important}
body.p9-product-shell #patrolDashboard .p4-chart-panel header{margin-bottom:14px!important;padding-bottom:11px!important;border-bottom:1px solid #edf0f4!important}.p9-product-shell #patrolDashboard .p4-chart-panel header span{font-size:8px!important;letter-spacing:.11em!important;color:#8c98a6!important}.p9-product-shell #patrolDashboard .p4-chart-panel h3{font-size:15px!important;color:var(--p9-ink)!important}.p9-product-shell #patrolDashboard .p4-chart-panel header>b{font-size:9px!important;border:0!important;background:#edf2f6!important;color:#687b8e!important;border-radius:999px!important;padding:4px 8px!important}
body.p9-product-shell #patrolDashboard .p4-stack{height:11px!important;background:#ecf0f3!important;border-radius:999px!important;overflow:hidden!important}
body.p9-product-shell #patrolDashboard .p4-stack-legend{margin-top:14px!important}.p9-product-shell #patrolDashboard .p4-stack-legend span{font-size:9.5px!important;color:#64778b!important}
body.p9-product-shell #patrolDashboard .p4-donut{width:96px!important;height:96px!important;border-width:9px!important}.p9-product-shell #patrolDashboard .p4-donut strong{font-size:19px!important;color:#1f3a55!important}.p9-product-shell #patrolDashboard .p4-donut small{font-size:8.5px!important;color:#8492a2!important}
body.p9-product-shell #patrolDashboard .p4-priority-list{display:grid!important;gap:7px!important}.p9-product-shell #patrolDashboard .p4-priority-list>*{border:0!important;border-radius:9px!important;background:#f5f7fa!important;color:#40546a!important;box-shadow:none!important;padding:8px 10px!important}
body.p9-product-shell #patrolDashboard .patrol-leadership-summary{margin:14px 0!important;padding:15px 17px!important;border:0!important;border-radius:13px!important;background:var(--p9-navy-2)!important;color:#eaf0f6!important;font-size:12px!important;line-height:1.7!important;box-shadow:0 7px 20px rgba(20,45,68,.10)!important}
body.p9-product-shell #patrolDashboard .hf31-action-section-title{margin:17px 0 9px!important}.p9-product-shell #patrolDashboard .hf31-action-section-title b{font-size:16px!important;color:var(--p9-ink)!important}.p9-product-shell #patrolDashboard .hf31-action-section-title small{font-size:10px!important;color:var(--p9-muted)!important}.p9-product-shell #patrolDashboard .hf31-action-section-title>span{border:0!important;background:#eaf0f5!important;color:#6b7e91!important;border-radius:999px!important;font-size:8.5px!important}
body.p9-product-shell #patrolDashboard .patrol-action-highlights{gap:8px!important}.p9-product-shell #patrolDashboard .patrol-action-highlights>*{border:0!important;border-radius:10px!important;background:#fff!important;box-shadow:0 1px 0 rgba(16,35,55,.03)!important}
body.p9-product-shell #patrolDashboard .patrol-progress-overview-panel{margin-top:12px!important;padding:16px!important;box-shadow:none!important;background:#f8fafb!important}.p9-product-shell #patrolDashboard .patrol-progress-overview{grid-template-columns:repeat(4,minmax(0,1fr))!important;gap:0!important}.p9-product-shell #patrolDashboard .patrol-progress-overview>*{border:0!important;border-right:1px solid #e3e8ee!important;border-radius:0!important;background:transparent!important;box-shadow:none!important}.p9-product-shell #patrolDashboard .patrol-progress-overview>*:last-child{border-right:0!important}
body.p9-product-shell #patrolDashboard .patrol-domain-structure-grid{gap:12px!important;margin-top:12px!important}.p9-product-shell #patrolDashboard .patrol-macro-panel{box-shadow:none!important}.p9-product-shell #patrolDashboard .patrol-macro-narrative{margin-top:10px!important;padding:10px 13px!important;border:0!important;border-radius:9px!important;background:#eaf0f5!important;color:#617487!important;font-size:10px!important;line-height:1.6!important}.p9-product-shell #patrolDashboard .patrol-identity-strip{margin-top:8px!important}

/* Domain workspaces: charts first, tables second, stronger scan lines. */
body.p9-product-shell .p7-analysis-split{display:grid!important;grid-template-columns:minmax(0,1.15fr) minmax(360px,.85fr)!important;gap:12px!important;margin:0 0 12px!important}
body.p9-product-shell .p7-analysis-split>.patrol-panel{min-height:250px!important;box-shadow:none!important}
body.p9-product-shell .p7-object-table-panel{margin-top:0!important;padding:0!important;overflow:hidden!important;box-shadow:none!important}
body.p9-product-shell .p7-object-table-panel>.patrol-panel-head{padding:16px 17px 0!important}.p9-product-shell .p7-object-filterbar{padding:12px 17px!important;background:#f7f9fb!important;border-top:1px solid #edf0f3!important;border-bottom:1px solid #edf0f3!important;gap:8px!important}
body.p9-product-shell .p7-object-filterbar input,body.p9-product-shell .p7-object-filterbar select{height:34px!important;border:1px solid #d9e1e8!important;border-radius:8px!important;background:#fff!important;color:#3b5066!important;font-size:10.5px!important;box-shadow:none!important}
body.p9-product-shell .table-wrap{border:0!important;border-radius:0!important;background:#fff!important;box-shadow:none!important;overflow:auto!important}
body.p9-product-shell .patrol-table,body.p9-product-shell .p7-object-table{font-size:11px!important;color:#3c5065!important}
body.p9-product-shell .patrol-table thead th,body.p9-product-shell .p7-object-table thead th{position:sticky!important;top:0!important;z-index:2!important;padding:10px 9px!important;background:#f3f6f8!important;color:#586b7e!important;border:0!important;border-bottom:1px solid #dfe5eb!important;font-size:9.5px!important;font-weight:750!important;white-space:nowrap!important}
body.p9-product-shell .patrol-table tbody td,body.p9-product-shell .p7-object-table tbody td{padding:10px 9px!important;border:0!important;border-bottom:1px solid #edf1f4!important;color:#40546a!important;line-height:1.5!important;background:#fff!important}
body.p9-product-shell .patrol-table tbody tr:hover td,body.p9-product-shell .p7-object-table tbody tr:hover td{background:#f8fafc!important}
body.p9-product-shell .p7-pagination{padding:10px 14px!important;border-top:1px solid #edf0f3!important;background:#fff!important}

/* Responsibility: turn repeated cards into a compact analytical matrix. */
body.p9-product-shell #patrolPersonZone .p7-responsibility-overview{margin-bottom:12px!important}
body.p9-product-shell #patrolPersonZone .p7-responsibility-kpis{grid-template-columns:repeat(4,minmax(0,1fr))!important;gap:10px!important;margin-bottom:12px!important}
body.p9-product-shell #patrolPersonZone .p7-responsibility-grid{display:block!important;margin:0!important}
body.p9-product-shell .p9-responsibility-table-wrap{border:1px solid var(--p9-line)!important;border-radius:14px!important;background:#fff!important;overflow:hidden!important;box-shadow:var(--p9-shadow)!important}
body.p9-product-shell .p9-responsibility-table{width:100%!important;border-collapse:collapse!important;table-layout:fixed!important;font-size:11px!important}
body.p9-product-shell .p9-responsibility-table th{padding:11px 10px!important;background:#f2f5f7!important;color:#64768a!important;border:0!important;border-bottom:1px solid #dfe5eb!important;text-align:left!important;font-size:9.5px!important;font-weight:750!important;white-space:nowrap!important}
body.p9-product-shell .p9-responsibility-table td{padding:11px 10px!important;border:0!important;border-bottom:1px solid #edf1f4!important;color:#40546a!important;vertical-align:middle!important;line-height:1.45!important}
body.p9-product-shell .p9-responsibility-table tr:last-child td{border-bottom:0!important}.p9-product-shell .p9-responsibility-table tbody tr:hover td{background:#f8fafb!important}
body.p9-product-shell .p9-resp-grid{font-weight:760!important;color:#1d3852!important}.p9-product-shell .p9-resp-person{color:#6b7c8f!important}.p9-product-shell .p9-resp-number{font-variant-numeric:tabular-nums!important;font-weight:720!important;color:#263f57!important}.p9-product-shell .p9-resp-gap{color:#8a5a2a!important}
body.p9-product-shell .p9-resp-progress{display:grid!important;grid-template-columns:minmax(64px,1fr) 42px!important;align-items:center!important;gap:8px!important}.p9-product-shell .p9-resp-progress i{height:7px!important;border-radius:999px!important;background:#e8edf1!important;overflow:hidden!important}.p9-product-shell .p9-resp-progress b{display:block!important;height:100%!important;background:var(--p9-teal)!important;border-radius:999px!important}.p9-product-shell .p9-resp-progress em{font-style:normal!important;font-size:9.5px!important;color:#5e7185!important;text-align:right!important;font-variant-numeric:tabular-nums!important}
body.p9-product-shell #patrolPersonZone>.patrol-panel{margin-top:12px!important}

/* GIS: map is the hero. Integrate it with the light product shell instead of a separate dark app. */
body.p9-product-shell #patrolAnalysisZone{padding:0!important;background:transparent!important;border:0!important;border-radius:0!important;color:var(--p9-text)!important;box-shadow:none!important}
body.p9-product-shell #patrolAnalysisZone>.p7-module-head{padding:2px 0 14px!important;margin-bottom:12px!important;background:transparent!important;color:var(--p9-ink)!important;border-bottom:1px solid var(--p9-line)!important}
body.p9-product-shell #patrolAnalysisZone>.p7-module-head h2{color:var(--p9-ink)!important}.p9-product-shell #patrolAnalysisZone>.p7-module-head p{color:var(--p9-muted)!important}.p9-product-shell #patrolAnalysisZone>.p7-module-head .patrol-section-kicker{color:#6d839c!important}
body.p9-product-shell #patrolAnalysisZone .p7-map-tabs{margin:0 0 12px!important;padding:4px!important;display:inline-flex!important;background:#e7edf2!important;border:0!important;border-radius:10px!important;gap:3px!important}.p9-product-shell #patrolAnalysisZone .p7-map-tabs button{min-height:32px!important;padding:0 14px!important;border:0!important;border-radius:8px!important;background:transparent!important;color:#64778b!important;font-size:10.5px!important;font-weight:700!important}.p9-product-shell #patrolAnalysisZone .p7-map-tabs button.active{background:#fff!important;color:#1e3a55!important;box-shadow:0 1px 4px rgba(22,44,64,.08)!important}
body.p9-product-shell #patrolAnalysisZone>.patrol-dual-maps{padding:0!important;margin:0!important}
body.p9-product-shell #patrolAnalysisZone .patrol-business-map{padding:0!important;border:1px solid var(--p9-line)!important;border-radius:16px!important;background:#fff!important;box-shadow:var(--p9-shadow)!important;color:var(--p9-text)!important;overflow:hidden!important}
body.p9-product-shell #patrolAnalysisZone .patrol-map-intelligence-head{padding:16px 17px 11px!important;border:0!important;background:#fff!important}.p9-product-shell #patrolAnalysisZone .patrol-map-intelligence-head h3{font-size:16px!important;color:var(--p9-ink)!important}.p9-product-shell #patrolAnalysisZone .patrol-map-intelligence-head small{font-size:10.5px!important;color:var(--p9-muted)!important}
body.p9-product-shell #patrolAnalysisZone .patrol-map-explore-bar{margin:0!important;padding:10px 14px!important;border:0!important;border-top:1px solid #edf0f3!important;border-bottom:1px solid #edf0f3!important;border-radius:0!important;background:#f5f7f9!important;gap:8px!important}.p9-product-shell #patrolAnalysisZone .patrol-map-filter-group{gap:5px!important}.p9-product-shell #patrolAnalysisZone .patrol-map-filter-group button{min-height:30px!important;padding:0 9px!important;border:1px solid transparent!important;border-radius:8px!important;background:#e8edf2!important;color:#5d7185!important;font-size:9.5px!important}.p9-product-shell #patrolAnalysisZone .patrol-map-filter-group button.active{background:var(--p9-navy-2)!important;color:#fff!important}.p9-product-shell #patrolAnalysisZone .patrol-map-search-box{height:34px!important;border:1px solid #d7e0e8!important;border-radius:8px!important;background:#fff!important;color:#3d5368!important}
body.p9-product-shell #patrolAnalysisZone .patrol-map-filter-status{font-size:9.5px!important;color:#718296!important}
body.p9-product-shell #patrolAnalysisZone .patrol-map-intelligence-layout{padding:14px!important;grid-template-columns:minmax(0,1.9fr) minmax(300px,.64fr)!important;gap:14px!important;align-items:start!important}
body.p9-product-shell #patrolAnalysisZone .patrol-map-canvas-shell{width:100%!important;min-height:0!important;height:auto!important;aspect-ratio:5/4!important;border:1px solid #d6dee6!important;border-radius:12px!important;background:#f3f5ef!important;box-shadow:0 4px 18px rgba(19,42,63,.055)!important;overflow:hidden!important;position:relative!important}
body.p9-product-shell #patrolAnalysisZone .patrol-map-canvas-shell>canvas{display:block!important;width:100%!important;height:100%!important;min-height:0!important;max-height:none!important;aspect-ratio:5/4!important;background:#f3f5ef!important;object-fit:contain!important}
body.p9-product-shell #patrolAnalysisZone .patrol-map-reading-hint{margin-top:8px!important;padding:8px 10px!important;border:0!important;border-radius:8px!important;background:#eef3f6!important;color:#6d7e8f!important;font-size:9px!important}
body.p9-product-shell #patrolAnalysisZone .patrol-map-intelligence-panel{padding:14px!important;border:0!important;border-radius:12px!important;background:#f4f7f9!important;box-shadow:none!important;color:var(--p9-text)!important}.p9-product-shell #patrolAnalysisZone .patrol-map-intelligence-panel h4,.p9-product-shell #patrolAnalysisZone .patrol-map-intelligence-panel b{color:#203a53!important}.p9-product-shell #patrolAnalysisZone .patrol-map-intelligence-panel small,.p9-product-shell #patrolAnalysisZone .patrol-map-narrative{color:#718296!important}
body.p9-product-shell #patrolAnalysisZone .patrol-map-metric-strip{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:7px!important;padding:0!important;border:0!important;border-radius:0!important;background:transparent!important}.p9-product-shell #patrolAnalysisZone .patrol-map-metric-strip article{padding:10px!important;border:0!important;border-radius:9px!important;background:#fff!important;box-shadow:0 1px 0 rgba(16,35,55,.03)!important}.p9-product-shell #patrolAnalysisZone .patrol-map-metric-strip span{font-size:8.5px!important;color:#798a9b!important}.p9-product-shell #patrolAnalysisZone .patrol-map-metric-strip strong{font-size:22px!important;color:#1d3a55!important}
body.p9-product-shell #patrolAnalysisZone .patrol-map-insight-section{margin-top:11px!important;padding-top:11px!important;border-top:1px solid #dde5eb!important}.p9-product-shell #patrolAnalysisZone .patrol-map-priority-list{gap:6px!important}.p9-product-shell #patrolAnalysisZone .patrol-map-priority-row{min-height:48px!important;padding:8px!important;border:0!important;border-radius:8px!important;background:#fff!important;color:#40546a!important;box-shadow:none!important}.p9-product-shell #patrolAnalysisZone .patrol-map-priority-row b{font-size:10.5px!important;color:#203a53!important}.p9-product-shell #patrolAnalysisZone .patrol-map-priority-row small{font-size:8.8px!important;color:#798a9b!important}.p9-product-shell #patrolAnalysisZone .patrol-map-priority-state{font-size:8.5px!important}
body.p9-product-shell #patrolAnalysisZone .patrol-map-conclusion{margin:0 14px 10px!important;padding:10px 12px!important;border:0!important;border-radius:9px!important;background:#eaf0f5!important;color:#566b7f!important;font-size:9.5px!important;line-height:1.6!important}.p9-product-shell #patrolAnalysisZone .patrol-map-actions{padding:0 14px 14px!important;gap:6px!important}.p9-product-shell #patrolAnalysisZone .patrol-map-actions .btn{background:#fff!important;border-color:#d9e1e8!important;color:#354c62!important}.p9-product-shell #patrolAnalysisZone .patrol-map-actions .btn.primary{background:var(--p9-navy-2)!important;border-color:var(--p9-navy-2)!important;color:#fff!important}

/* Output center: a delivery workspace, not a developer panel. */
body.p9-product-shell.patrol-results-ready[data-p7-view="output"] #patrolOutputZone.patrol-legacy-output{display:grid!important;grid-template-columns:minmax(0,1fr) minmax(0,1fr)!important;gap:12px!important;align-items:start!important}
body.p9-product-shell #patrolOutputZone>.p7-module-head{grid-column:1/-1!important;margin-bottom:0!important}
body.p9-product-shell #patrolOutputZone>.p7-output-guide{grid-column:1/-1!important;display:grid!important;grid-template-columns:repeat(4,minmax(0,1fr))!important;gap:0!important;margin:0!important;padding:7px 10px!important;border:0!important;border-radius:12px!important;background:#e8eef3!important}
body.p9-product-shell #patrolOutputZone>.p7-output-guide article{min-height:68px!important;padding:10px 13px!important;border:0!important;border-right:1px solid rgba(86,109,130,.12)!important;border-radius:0!important;background:transparent!important;box-shadow:none!important}.p9-product-shell #patrolOutputZone>.p7-output-guide article:last-child{border-right:0!important}.p9-product-shell #patrolOutputZone>.p7-output-guide span{font-size:8px!important;color:#75879a!important}.p9-product-shell #patrolOutputZone>.p7-output-guide b{font-size:11.5px!important;color:#2d465d!important}.p9-product-shell #patrolOutputZone>.p7-output-guide small{font-size:8.8px!important;color:#7e8d9d!important;line-height:1.4!important}
body.p9-product-shell #patrolOutputZone>.p7-focus-export-panel{grid-column:1/-1!important;margin:0!important;border:0!important;background:var(--p9-navy-2)!important;color:#eaf0f5!important;box-shadow:0 8px 22px rgba(22,48,72,.10)!important}.p9-product-shell #patrolOutputZone>.p7-focus-export-panel h3,.p9-product-shell #patrolOutputZone>.p7-focus-export-panel .patrol-panel-head h3{color:#fff!important}.p9-product-shell #patrolOutputZone>.p7-focus-export-panel small{color:#afbdca!important}.p9-product-shell #patrolOutputZone>.p7-focus-export-panel .btn:not(.primary){background:#fff!important;border-color:#fff!important;color:#2c455d!important}.p9-product-shell #patrolOutputZone>.p7-focus-export-panel .btn.primary{background:#45a99b!important;border-color:#45a99b!important}
body.p9-product-shell #patrolOutputZone>.patrol-copy-grid{grid-column:1/-1!important;display:grid!important;grid-template-columns:repeat(4,minmax(0,1fr))!important;gap:8px!important}.p9-product-shell #patrolOutputZone .patrol-copy-card{min-height:132px!important;padding:14px!important;border:1px solid var(--p9-line)!important;border-radius:12px!important;background:#fff!important;box-shadow:none!important}.p9-product-shell #patrolOutputZone .patrol-copy-card span{font-size:8px!important;color:#718499!important}.p9-product-shell #patrolOutputZone .patrol-copy-card h3{font-size:13px!important;color:var(--p9-ink)!important}.p9-product-shell #patrolOutputZone .patrol-copy-card p{font-size:9.2px!important;color:#7a8a9a!important;line-height:1.5!important}
body.p9-product-shell #patrolOutputZone>.patrol-panel{margin:0!important;min-height:100%!important;box-shadow:none!important}.p9-product-shell #patrolOutputZone .patrol-command-export-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:7px!important}.p9-product-shell #patrolOutputZone .patrol-writing-actions{gap:6px!important}.p9-product-shell #patrolOutputZone .patrol-writing-note{padding:8px 10px!important;border:0!important;border-radius:8px!important;background:#f2f5f7!important;color:#748497!important;font-size:9.2px!important;line-height:1.55!important}.p9-product-shell #patrolOutputZone .patrol-card-export-controls{display:grid!important;grid-template-columns:1fr 1fr auto!important;gap:8px!important;align-items:end!important}.p9-product-shell #patrolOutputZone .patrol-card-export-controls select{height:36px!important;border-radius:8px!important}.p9-product-shell #patrolOutputZone .patrol-brief{min-height:145px!important;max-height:210px!important;border:1px solid #dce3e9!important;border-radius:9px!important;background:#fafbfd!important;color:#40546a!important;font-size:10px!important;line-height:1.65!important;padding:12px!important}

/* History: serious analytical empty states rather than black placeholders. */
body.p9-product-shell #patrolCompareZone .patrol-import-status{padding:10px 12px!important;border:0!important;border-radius:9px!important;background:#eaf0f5!important;color:#66798d!important;font-size:10px!important}
body.p9-product-shell #patrolCompareZone .patrol-compare-kpis{grid-template-columns:repeat(4,minmax(0,1fr))!important;gap:10px!important}.p9-product-shell #patrolCompareZone .patrol-compare-kpis article{min-height:104px!important;padding:14px!important;border:0!important;border-radius:12px!important;background:#fff!important;box-shadow:var(--p9-shadow)!important}.p9-product-shell #patrolCompareZone .patrol-compare-kpis strong{font-size:30px!important;color:#193550!important}
body.p9-product-shell #patrolCompareZone .patrol-compare-charts{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:12px!important}.p9-product-shell #patrolCompareZone .patrol-chart-panel{min-height:275px!important;box-shadow:none!important}.p9-product-shell #patrolCompareZone .patrol-chart-svg,.p9-product-shell #patrolCompareZone .patrol-stack-chart,.p9-product-shell #patrolCompareZone .patrol-change-bars,.p9-product-shell #patrolCompareZone .patrol-management-summary-body{min-height:185px!important;border:0!important;border-radius:10px!important;background:#f6f8fa!important;color:#78889a!important}

/* Common supporting surfaces and empty states. */
body.p9-product-shell .patrol-leadership-summary,body.p9-product-shell .patrol-macro-narrative,body.p9-product-shell .patrol-ranking-basis-alert,body.p9-product-shell .patrol-watch-summary,body.p9-product-shell .patrol-writing-note{border:0!important}
body.p9-product-shell .patrol-empty-card{min-height:72px!important;border:0!important;border-radius:10px!important;background:#f5f7f9!important;color:#8290a0!important;display:grid!important;place-items:center!important;font-size:10px!important;box-shadow:none!important}
body.p9-product-shell input,body.p9-product-shell select,body.p9-product-shell textarea{font-family:inherit!important}
body.p9-product-shell button:focus-visible,body.p9-product-shell a:focus-visible,body.p9-product-shell input:focus-visible,body.p9-product-shell select:focus-visible,body.p9-product-shell textarea:focus-visible{outline:3px solid rgba(40,103,216,.18)!important;outline-offset:2px!important}

@media(max-width:1680px){
  :root{--p9-nav:176px}
  body.p9-product-shell #patrolPage.p7-main{padding:18px 20px 24px!important}
  body.p9-product-shell .p7-domain-kpis,body.p9-product-shell #patrolDashboard .p4-viz-kpis{grid-template-columns:repeat(3,minmax(0,1fr))!important}
  body.p9-product-shell #patrolDashboard .p4-reg-panel{grid-column:span 5!important}.p9-product-shell #patrolDashboard .p4-coverage-panel{grid-column:span 3!important}.p9-product-shell #patrolDashboard .p4-priority-panel{grid-column:span 4!important}
  body.p9-product-shell #patrolAnalysisZone .patrol-map-intelligence-layout{grid-template-columns:minmax(0,1.72fr) minmax(285px,.58fr)!important}
}
@media(max-width:1420px){
  :root{--p9-nav:168px}
  body.p9-product-shell .p7-topbar{padding:0 15px!important}
  body.p9-product-shell .p7-topbar-title-row span,body.p9-product-shell .p7-compute-chip{display:none!important}
  body.p9-product-shell .patrol-one-paste-grid{grid-template-columns:1fr!important}
  body.p9-product-shell .p7-guide-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:0 14px!important}
  body.p9-product-shell #patrolDashboard .p4-viz-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}.p9-product-shell #patrolDashboard .p4-reg-panel,.p9-product-shell #patrolDashboard .p4-coverage-panel{grid-column:auto!important}.p9-product-shell #patrolDashboard .p4-priority-panel{grid-column:1/-1!important}
  body.p9-product-shell .p7-analysis-split{grid-template-columns:1fr!important}
  body.p9-product-shell #patrolAnalysisZone .patrol-map-intelligence-layout{grid-template-columns:1fr!important}
  body.p9-product-shell.patrol-results-ready[data-p7-view="output"] #patrolOutputZone.patrol-legacy-output{grid-template-columns:1fr!important}
  body.p9-product-shell #patrolOutputZone>.patrol-panel{grid-column:1/-1!important}
}
@media(max-height:800px){body.p9-product-shell .p7-side-nav{padding-top:8px!important}.p9-product-shell .p7-side-nav button,.p9-product-shell .p7-side-input{height:37px!important}.p9-product-shell .p7-input-workspace .patrol-one-paste-input{min-height:210px!important;max-height:300px!important}}
@media(prefers-reduced-motion:reduce){body.p9-product-shell *{scroll-behavior:auto!important;transition:none!important;animation:none!important}}

/* P9.1 | Input isolation and onboarding readability fixes discovered in real Chromium. */
body.p9-product-shell:not(.patrol-results-ready) #patrolDashboard,
body.p9-product-shell:not(.patrol-results-ready) #p7ProjectWorkspace,
body.p9-product-shell:not(.patrol-results-ready) #p7StoreWorkspace,
body.p9-product-shell:not(.patrol-results-ready) #patrolPersonZone,
body.p9-product-shell:not(.patrol-results-ready) #patrolAnalysisZone,
body.p9-product-shell:not(.patrol-results-ready) #patrolOutputZone,
body.p9-product-shell:not(.patrol-results-ready) #patrolCompareZone{display:none!important}
body.p9-product-shell:not(.patrol-results-ready) #patrolInputZone{display:flex!important}
body.p9-product-shell .patrol-one-paste-grid{grid-template-columns:minmax(640px,1.62fr) minmax(360px,.72fr)!important;gap:18px!important}
body.p9-product-shell .p7-input-guide{min-width:0!important;padding:19px 20px!important}
body.p9-product-shell .p7-guide-head{margin-bottom:9px!important}
body.p9-product-shell .p7-guide-head strong{font-size:16px!important;letter-spacing:-.01em!important;color:#20384f!important}
body.p9-product-shell .p7-guide-grid{display:grid!important;grid-template-columns:1fr!important;gap:0!important}
body.p9-product-shell .p7-guide-grid article{min-width:0!important;min-height:62px!important;padding:10px 0!important;border:0!important;border-top:1px solid rgba(91,116,139,.12)!important;border-radius:0!important;background:transparent!important;display:grid!important;grid-template-columns:88px minmax(0,1fr)!important;align-items:start!important;gap:12px!important;writing-mode:horizontal-tb!important;word-break:normal!important;overflow-wrap:normal!important}
body.p9-product-shell .p7-guide-grid article:first-child{border-top:0!important}
body.p9-product-shell .p7-guide-grid b,body.p9-product-shell .p7-guide-grid small{display:block!important;writing-mode:horizontal-tb!important;word-break:keep-all!important;overflow-wrap:break-word!important;white-space:normal!important;text-orientation:mixed!important}
body.p9-product-shell .p7-guide-grid b{font-size:10.5px!important;line-height:1.5!important;color:#2d465d!important}
body.p9-product-shell .p7-guide-grid small{font-size:9.4px!important;line-height:1.6!important;color:#738598!important}
body.p9-product-shell .p7-input-guide>p{margin:10px 0 0!important;padding-top:10px!important;font-size:9.3px!important;line-height:1.6!important;color:#6f8194!important}
@media(max-width:1420px){
  body.p9-product-shell .patrol-one-paste-grid{grid-template-columns:1fr!important}
  body.p9-product-shell .p7-guide-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:0 18px!important}
}

/* P9.2 | Neutralize inherited contract-card grid on the onboarding guide. */
body.patrol-standalone.p9-product-shell .patrol-contract-card.p7-input-guide{display:flex!important;flex-direction:column!important;gap:0!important}
body.patrol-standalone.p9-product-shell .patrol-contract-card.p7-input-guide>.p7-guide-head{display:block!important;padding:0 0 10px!important;border:0!important;margin:0!important}
body.patrol-standalone.p9-product-shell .patrol-contract-card.p7-input-guide>.p7-guide-head span{display:block!important;margin:0 0 3px!important;font-size:9px!important;line-height:1.4!important;color:#4e9f98!important}
body.patrol-standalone.p9-product-shell .patrol-contract-card.p7-input-guide>.p7-guide-head strong{display:block!important;margin:0!important;font-size:16px!important;line-height:1.35!important;color:#20384f!important}
body.patrol-standalone.p9-product-shell .patrol-contract-card.p7-input-guide>.p7-guide-grid{display:grid!important;grid-template-columns:1fr!important;gap:0!important;padding:0!important;border:0!important}
body.patrol-standalone.p9-product-shell .patrol-contract-card.p7-input-guide>.p7-guide-grid article{grid-column:auto!important;width:auto!important;min-width:0!important}

/* P9.3 | High-specificity closure over legacy HF40/P6 selectors. */
body.patrol-standalone.p9-product-shell:not(.patrol-results-ready) #patrolPage>#patrolDashboard,
body.patrol-standalone.p9-product-shell:not(.patrol-results-ready) #patrolPage>#p7ProjectWorkspace,
body.patrol-standalone.p9-product-shell:not(.patrol-results-ready) #patrolPage>#p7StoreWorkspace,
body.patrol-standalone.p9-product-shell:not(.patrol-results-ready) #patrolPage>#patrolPersonZone,
body.patrol-standalone.p9-product-shell:not(.patrol-results-ready) #patrolPage>#patrolAnalysisZone,
body.patrol-standalone.p9-product-shell:not(.patrol-results-ready) #patrolPage>#patrolOutputZone.patrol-legacy-output,
body.patrol-standalone.p9-product-shell:not(.patrol-results-ready) #patrolPage>#patrolCompareZone{display:none!important}
body.patrol-standalone.p9-product-shell:not(.patrol-results-ready) #patrolPage>#patrolInputZone{display:flex!important}
body.patrol-standalone.p9-product-shell #patrolPage .patrol-import-grid.patrol-one-paste-grid{grid-template-columns:minmax(0,1.62fr) minmax(380px,.68fr)!important;gap:18px!important;align-items:stretch!important}
body.patrol-standalone.p9-product-shell #patrolPage .patrol-contract-card.p7-input-guide{display:flex!important;grid-template-columns:none!important;flex-direction:column!important;gap:0!important;margin-top:0!important;padding:18px 20px!important;border:0!important;border-radius:16px!important;background:#eaf0f5!important;overflow:visible!important}
body.patrol-standalone.p9-product-shell #patrolPage .patrol-contract-card.p7-input-guide>.p7-guide-head{display:block!important;width:100%!important;padding:0 0 10px!important;border:0!important;margin:0!important;background:transparent!important}
body.patrol-standalone.p9-product-shell #patrolPage .patrol-contract-card.p7-input-guide>.p7-guide-grid{display:grid!important;width:100%!important;grid-template-columns:1fr!important;gap:0!important;padding:0!important;border:0!important;background:transparent!important}
body.patrol-standalone.p9-product-shell #patrolPage .patrol-contract-card.p7-input-guide>.p7-guide-grid article{display:grid!important;grid-template-columns:90px minmax(0,1fr)!important;width:100%!important;min-width:0!important;gap:12px!important;padding:10px 0!important;border:0!important;border-top:1px solid rgba(91,116,139,.13)!important;background:transparent!important}
body.patrol-standalone.p9-product-shell #patrolPage .patrol-contract-card.p7-input-guide>.p7-guide-grid article:first-child{border-top:0!important}
body.patrol-standalone.p9-product-shell #patrolPage .patrol-contract-card.p7-input-guide>.p7-guide-grid b,
body.patrol-standalone.p9-product-shell #patrolPage .patrol-contract-card.p7-input-guide>.p7-guide-grid small{margin:0!important;width:auto!important;writing-mode:horizontal-tb!important;word-break:normal!important;white-space:normal!important}
body.patrol-standalone.p9-product-shell #patrolPage .patrol-contract-card.p7-input-guide>p{width:100%!important;margin:10px 0 0!important;padding:10px 0 0!important;border:0!important;border-top:1px solid rgba(91,116,139,.13)!important;background:transparent!important}
@media(max-width:1420px){body.patrol-standalone.p9-product-shell #patrolPage .patrol-import-grid.patrol-one-paste-grid{grid-template-columns:1fr!important}.p9-product-shell #patrolPage .p7-guide-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}}

/* ======================================================================
   P9.4 | Real-browser visual closure
   Overrides high-specificity legacy selectors that still made the product
   look like stacked dashboard templates. Presentation only.
   ====================================================================== */
body.patrol-standalone.p9-product-shell #patrolPage.p7-main{
  width:calc(100% - var(--p9-nav))!important;max-width:none!important;
  margin:var(--p9-top) 0 0 var(--p9-nav)!important;padding:30px 34px 42px!important;
  box-sizing:border-box!important;background:var(--p9-bg)!important
}
body.patrol-standalone.p9-product-shell #patrolPage.p7-main>.workspace{
  width:min(1760px,100%)!important;max-width:1760px!important;margin:0 auto!important;
  padding:0!important;border:0!important;border-radius:0!important;background:transparent!important;box-shadow:none!important
}
/* Hard module isolation. */
body.patrol-standalone.p9-product-shell.patrol-results-ready #patrolPage>#patrolDashboard.p8-page-hidden,
body.patrol-standalone.p9-product-shell.patrol-results-ready #patrolPage>#p7ProjectWorkspace.p8-page-hidden,
body.patrol-standalone.p9-product-shell.patrol-results-ready #patrolPage>#p7StoreWorkspace.p8-page-hidden,
body.patrol-standalone.p9-product-shell.patrol-results-ready #patrolPage>#patrolPersonZone.p8-page-hidden,
body.patrol-standalone.p9-product-shell.patrol-results-ready #patrolPage>#patrolAnalysisZone.p8-page-hidden,
body.patrol-standalone.p9-product-shell.patrol-results-ready #patrolPage>#patrolOutputZone.p8-page-hidden,
body.patrol-standalone.p9-product-shell.patrol-results-ready #patrolPage>#patrolCompareZone.p8-page-hidden,
body.patrol-standalone.p9-product-shell.patrol-results-ready #patrolPage>#patrolInputZone.p8-page-hidden{display:none!important}
body.patrol-standalone.p9-product-shell.patrol-results-ready[data-p7-view="output"] #patrolPage>#patrolOutputZone.patrol-legacy-output{display:grid!important;grid-template-columns:minmax(0,1fr) minmax(0,1fr)!important;gap:14px!important;align-items:start!important}

/* One coherent heading system. */
body.patrol-standalone.p9-product-shell #patrolPage .p7-module-head{
  min-height:92px!important;display:grid!important;grid-template-columns:minmax(0,1fr) auto!important;
  column-gap:26px!important;row-gap:8px!important;align-items:end!important;
  margin:0 0 18px!important;padding:4px 0 18px!important;border:0!important;border-bottom:1px solid var(--p9-line)!important;
  border-radius:0!important;background:transparent!important;box-shadow:none!important;overflow:visible!important
}
body.patrol-standalone.p9-product-shell #patrolPage .p7-module-head>.section-number{display:none!important}
body.patrol-standalone.p9-product-shell #patrolPage .p7-module-head>.grow{grid-column:1!important;grid-row:1!important;min-width:0!important}
body.patrol-standalone.p9-product-shell #patrolPage .p7-module-head>.patrol-module-actions{grid-column:2!important;grid-row:1!important;width:auto!important;max-width:720px!important;margin:0!important;justify-content:flex-end!important;align-self:end!important}
body.patrol-standalone.p9-product-shell #patrolPage .p7-module-head .patrol-section-kicker{display:block!important;margin:0 0 5px!important;font-size:9px!important;line-height:1.2!important;letter-spacing:.12em!important;color:#4d8f8a!important;font-weight:760!important}
body.patrol-standalone.p9-product-shell #patrolPage .p7-module-head h2{margin:0 0 5px!important;font-size:30px!important;line-height:1.12!important;font-weight:780!important;letter-spacing:-.04em!important;color:var(--p9-ink)!important;text-shadow:none!important}
body.patrol-standalone.p9-product-shell #patrolPage .p7-module-head p{margin:0!important;max-width:850px!important;font-size:12px!important;line-height:1.65!important;color:#6f8092!important;font-weight:500!important}
body.patrol-standalone.p9-product-shell #patrolPage .p7-module-head .patrol-schema-badge{align-self:center!important;background:#edf2f5!important;color:#65788b!important}

/* Overview: calm executive surface, no electric-blue hero. */
body.patrol-standalone.p9-product-shell #patrolDashboard>.p7-module-head,
body.patrol-standalone.p9-product-shell #patrolDashboard>.section-head{
  min-height:156px!important;display:grid!important;grid-template-columns:minmax(0,1fr)!important;
  align-items:start!important;margin:0 0 14px!important;padding:24px 26px 22px!important;
  border:1px solid #dde5eb!important;border-radius:18px!important;
  background:linear-gradient(180deg,#ffffff 0%,#fbfcfd 100%)!important;
  box-shadow:0 12px 34px rgba(18,42,63,.055)!important;overflow:hidden!important
}
body.patrol-standalone.p9-product-shell #patrolDashboard>.section-head::after{display:none!important;content:none!important}
body.patrol-standalone.p9-product-shell #patrolDashboard>.p7-module-head>.grow{grid-column:1!important;grid-row:1!important}
body.patrol-standalone.p9-product-shell #patrolDashboard>.p7-module-head>.patrol-module-actions{grid-column:1!important;grid-row:2!important;width:100%!important;max-width:none!important;margin-top:7px!important;justify-content:flex-start!important}
body.patrol-standalone.p9-product-shell #patrolDashboard>.p7-module-head h2{font-size:32px!important;color:#16324c!important}
body.patrol-standalone.p9-product-shell #patrolDashboard>.p7-module-head p{color:#718294!important}
body.patrol-standalone.p9-product-shell #patrolDashboard>.p7-module-head .patrol-section-kicker{color:#4c958d!important}
body.patrol-standalone.p9-product-shell #patrolDashboard>.p7-module-head .btn{background:#fff!important;color:#334b62!important;border-color:#d7e0e8!important}
body.patrol-standalone.p9-product-shell #patrolDashboard>.p7-module-head .btn.primary{background:#173b58!important;border-color:#173b58!important;color:#fff!important}
body.patrol-standalone.p9-product-shell #patrolDashboard>.p7-module-head .patrol-schema-badge{position:absolute!important;right:24px!important;top:24px!important;background:#edf3f4!important;color:#4f766f!important}

/* KPI rows become continuous metric rails rather than six floating cards. */
body.patrol-standalone.p9-product-shell #patrolDashboard .p4-viz-kpis,
body.patrol-standalone.p9-product-shell #p7ProjectWorkspace .p7-domain-kpis,
body.patrol-standalone.p9-product-shell #p7StoreWorkspace .p7-domain-kpis{
  display:grid!important;grid-template-columns:repeat(6,minmax(0,1fr))!important;gap:0!important;
  margin:0 0 14px!important;border:1px solid var(--p9-line)!important;border-radius:16px!important;background:#fff!important;
  box-shadow:0 8px 26px rgba(18,42,63,.045)!important;overflow:hidden!important
}
body.patrol-standalone.p9-product-shell #patrolDashboard .p4-viz-kpis>article,
body.patrol-standalone.p9-product-shell #p7ProjectWorkspace .p7-domain-kpis>article,
body.patrol-standalone.p9-product-shell #p7StoreWorkspace .p7-domain-kpis>article{
  min-height:108px!important;padding:16px 18px!important;border:0!important;border-right:1px solid #e8edf1!important;border-radius:0!important;background:#fff!important;box-shadow:none!important
}
body.patrol-standalone.p9-product-shell #patrolDashboard .p4-viz-kpis>article:last-child,
body.patrol-standalone.p9-product-shell #p7ProjectWorkspace .p7-domain-kpis>article:last-child,
body.patrol-standalone.p9-product-shell #p7StoreWorkspace .p7-domain-kpis>article:last-child{border-right:0!important}
body.patrol-standalone.p9-product-shell #patrolDashboard .p4-viz-kpis>article::before,
body.patrol-standalone.p9-product-shell #p7ProjectWorkspace .p7-domain-kpis>article::before,
body.patrol-standalone.p9-product-shell #p7StoreWorkspace .p7-domain-kpis>article::before{display:none!important;content:none!important}
body.patrol-standalone.p9-product-shell #patrolDashboard .p4-viz-kpis strong,
body.patrol-standalone.p9-product-shell #p7ProjectWorkspace .p7-domain-kpis strong,
body.patrol-standalone.p9-product-shell #p7StoreWorkspace .p7-domain-kpis strong{font-size:32px!important;color:#17334e!important}

/* Overview analytics reads as one analytical composition. */
body.patrol-standalone.p9-product-shell #patrolDashboard .p4-viz-grid{
  display:grid!important;grid-template-columns:1.25fr .78fr .98fr!important;gap:0!important;margin:0 0 14px!important;
  border:1px solid var(--p9-line)!important;border-radius:16px!important;background:#fff!important;overflow:hidden!important;
  box-shadow:0 8px 26px rgba(18,42,63,.04)!important
}
body.patrol-standalone.p9-product-shell #patrolDashboard .p4-chart-panel{
  min-height:250px!important;margin:0!important;padding:20px 20px 18px!important;border:0!important;border-right:1px solid #e7ecf0!important;border-radius:0!important;background:#fff!important;box-shadow:none!important
}
body.patrol-standalone.p9-product-shell #patrolDashboard .p4-chart-panel:last-child{border-right:0!important}
body.patrol-standalone.p9-product-shell #patrolDashboard .p4-chart-panel header h3{font-size:15px!important;color:#223b53!important}
body.patrol-standalone.p9-product-shell #patrolDashboard .p4-chart-panel header span{font-size:8.5px!important;color:#8794a2!important}

/* Executive insight becomes a quiet note, not a dark billboard. */
body.patrol-standalone.p9-product-shell #patrolDashboard #patrolLeadershipSummary{margin:14px 0 26px!important;padding:0!important;background:transparent!important;border:0!important;box-shadow:none!important}
body.patrol-standalone.p9-product-shell #patrolDashboard #patrolLeadershipSummary .hf30-command-brief,
body.patrol-standalone.p9-product-shell #patrolDashboard #patrolLeadershipSummary .hf32-command-brief{
  margin:0!important;padding:18px 20px!important;border:0!important;border-left:4px solid #4b9b91!important;border-radius:12px!important;
  background:#eaf2f2!important;box-shadow:none!important;color:#29465b!important
}
body.patrol-standalone.p9-product-shell #patrolDashboard #patrolLeadershipSummary .hf30-command-brief strong,
body.patrol-standalone.p9-product-shell #patrolDashboard #patrolLeadershipSummary .hf32-command-brief strong{font-size:16px!important;line-height:1.65!important;color:#2e4a5f!important;font-weight:700!important}
body.patrol-standalone.p9-product-shell #patrolDashboard #patrolLeadershipSummary .hf30-command-kicker{background:transparent!important;color:#4a8d85!important;padding:0!important}
body.patrol-standalone.p9-product-shell #patrolDashboard #patrolLeadershipSummary .hf30-command-chip{background:rgba(255,255,255,.72)!important;border:0!important;color:#607588!important}

/* Priority items: white editorial cards, no black tiles. */
body.patrol-standalone.p9-product-shell #patrolDashboard .hf31-action-section-title{margin:0 0 10px!important;padding:0!important;border:0!important}
body.patrol-standalone.p9-product-shell #patrolDashboard .hf31-action-section-title b{font-size:17px!important;color:#1d354d!important}
body.patrol-standalone.p9-product-shell #patrolDashboard #patrolActionHighlights{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:10px!important;margin:0 0 20px!important}
body.patrol-standalone.p9-product-shell #patrolDashboard #patrolActionHighlights .hf30-action-card,
body.patrol-standalone.p9-product-shell #patrolDashboard #patrolActionHighlights .hf31-action-card{
  min-height:126px!important;padding:16px 18px!important;border:1px solid var(--p9-line)!important;border-radius:14px!important;
  background:#fff!important;color:#42576b!important;box-shadow:0 5px 18px rgba(18,42,63,.035)!important;transform:none!important
}
body.patrol-standalone.p9-product-shell #patrolDashboard #patrolActionHighlights .hf31-priority-no{width:auto!important;height:auto!important;padding:4px 7px!important;border-radius:999px!important;background:#edf2f5!important;color:#607486!important;font-size:9px!important}
body.patrol-standalone.p9-product-shell #patrolDashboard #patrolActionHighlights .hf30-domain-badge{background:#eef5f4!important;color:#4e7f79!important;font-size:9px!important}
body.patrol-standalone.p9-product-shell #patrolDashboard #patrolActionHighlights h4{font-size:14px!important;color:#213b53!important}
body.patrol-standalone.p9-product-shell #patrolDashboard #patrolActionHighlights h4 strong{font-size:21px!important;color:#183a56!important}
body.patrol-standalone.p9-product-shell #patrolDashboard #patrolActionHighlights p{font-size:10.5px!important;color:#758699!important;line-height:1.55!important}
body.patrol-standalone.p9-product-shell #patrolDashboard #patrolActionHighlights .next{border-top:1px solid #edf0f3!important;color:#4f746c!important}

/* Lower overview panels and domain workspaces lose ornamental shadows. */
body.patrol-standalone.p9-product-shell #patrolDashboard .patrol-panel,
body.patrol-standalone.p9-product-shell #p7ProjectWorkspace .patrol-panel,
body.patrol-standalone.p9-product-shell #p7StoreWorkspace .patrol-panel,
body.patrol-standalone.p9-product-shell #patrolPersonZone .patrol-panel,
body.patrol-standalone.p9-product-shell #patrolCompareZone .patrol-panel{
  border:1px solid var(--p9-line)!important;background:#fff!important;color:var(--p9-text)!important;box-shadow:none!important
}
body.patrol-standalone.p9-product-shell #p7ProjectWorkspace .p7-analysis-split,
body.patrol-standalone.p9-product-shell #p7StoreWorkspace .p7-analysis-split{gap:12px!important}

/* GIS: keep real map as hero and force readable headings. */
body.patrol-standalone.p9-product-shell #patrolAnalysisZone .p7-module-head h2{color:#173149!important}
body.patrol-standalone.p9-product-shell #patrolAnalysisZone .patrol-project-intelligence-map .patrol-map-intelligence-head h3,
body.patrol-standalone.p9-product-shell #patrolAnalysisZone .patrol-store-intelligence-map .patrol-map-intelligence-head h3{color:#203a52!important;text-shadow:none!important;opacity:1!important}
body.patrol-standalone.p9-product-shell #patrolAnalysisZone .patrol-project-intelligence-map .patrol-map-intelligence-head small,
body.patrol-standalone.p9-product-shell #patrolAnalysisZone .patrol-store-intelligence-map .patrol-map-intelligence-head small{color:#77889a!important;opacity:1!important}
body.patrol-standalone.p9-product-shell #patrolAnalysisZone .patrol-map-intelligence-head .patrol-eyebrow{color:#4a968c!important}

/* Output: title first; export focus is premium-light instead of a dark developer strip. */
body.patrol-standalone.p9-product-shell.patrol-results-ready[data-p7-view="output"] #patrolPage>#patrolOutputZone>.p7-module-head{grid-column:1/-1!important;grid-row:auto!important;order:0!important;margin-bottom:0!important}
body.patrol-standalone.p9-product-shell.patrol-results-ready[data-p7-view="output"] #patrolPage>#patrolOutputZone>.p7-output-guide{grid-column:1/-1!important;order:1!important}
body.patrol-standalone.p9-product-shell.patrol-results-ready[data-p7-view="output"] #patrolPage>#patrolOutputZone>.p7-focus-export-panel{grid-column:1/-1!important;order:2!important}
body.patrol-standalone.p9-product-shell.patrol-results-ready[data-p7-view="output"] #patrolPage>#patrolOutputZone>.patrol-copy-grid{grid-column:1/-1!important;order:3!important}
body.patrol-standalone.p9-product-shell #patrolOutputZone>.p7-focus-export-panel{
  padding:18px 20px!important;border:1px solid #dce5ea!important;border-left:4px solid #4b9b91!important;border-radius:14px!important;
  background:#f7fafb!important;color:#40586d!important;box-shadow:none!important
}
body.patrol-standalone.p9-product-shell #patrolOutputZone>.p7-focus-export-panel h3,
body.patrol-standalone.p9-product-shell #patrolOutputZone>.p7-focus-export-panel .patrol-panel-head h3{color:#203a52!important}
body.patrol-standalone.p9-product-shell #patrolOutputZone>.p7-focus-export-panel small{color:#76889a!important}
body.patrol-standalone.p9-product-shell #patrolOutputZone>.p7-focus-export-panel .btn:not(.primary){background:#fff!important;border-color:#d7e0e7!important;color:#334d64!important}
body.patrol-standalone.p9-product-shell #patrolOutputZone>.p7-focus-export-panel .btn.primary{background:#1c665f!important;border-color:#1c665f!important;color:#fff!important}

/* Responsibility stays analytical but gets stronger type and scanning. */
body.patrol-standalone.p9-product-shell #patrolPersonZone .p7-responsibility-kpis{gap:0!important;border:1px solid var(--p9-line)!important;border-radius:14px!important;background:#fff!important;overflow:hidden!important}
body.patrol-standalone.p9-product-shell #patrolPersonZone .p7-responsibility-kpis>article{border:0!important;border-right:1px solid #e7ecf0!important;border-radius:0!important;box-shadow:none!important}
body.patrol-standalone.p9-product-shell #patrolPersonZone .p7-responsibility-kpis>article:last-child{border-right:0!important}
body.patrol-standalone.p9-product-shell #patrolPersonZone .p7-responsibility-grid table{font-size:11px!important}

@media(max-width:1680px){
  body.patrol-standalone.p9-product-shell #patrolPage.p7-main{padding:26px 28px 38px!important}
  body.patrol-standalone.p9-product-shell #patrolDashboard .p4-viz-kpis,
  body.patrol-standalone.p9-product-shell #p7ProjectWorkspace .p7-domain-kpis,
  body.patrol-standalone.p9-product-shell #p7StoreWorkspace .p7-domain-kpis{grid-template-columns:repeat(3,minmax(0,1fr))!important}
  body.patrol-standalone.p9-product-shell #patrolDashboard .p4-viz-kpis>article:nth-child(3),
  body.patrol-standalone.p9-product-shell #p7ProjectWorkspace .p7-domain-kpis>article:nth-child(3),
  body.patrol-standalone.p9-product-shell #p7StoreWorkspace .p7-domain-kpis>article:nth-child(3){border-right:0!important}
  body.patrol-standalone.p9-product-shell #patrolDashboard .p4-viz-kpis>article:nth-child(-n+3),
  body.patrol-standalone.p9-product-shell #p7ProjectWorkspace .p7-domain-kpis>article:nth-child(-n+3),
  body.patrol-standalone.p9-product-shell #p7StoreWorkspace .p7-domain-kpis>article:nth-child(-n+3){border-bottom:1px solid #e8edf1!important}
}

/* ======================================================================
   P9.5 | Presentation-grade closure after screenshot review
   Fixes inherited double offsets, overview composition, analytical heading
   contrast and history empty-state darkness. Presentation only.
   ====================================================================== */
html body.patrol-mode.patrol-standalone.p7-product-shell.p8-product-shell.p9-product-shell{
  padding:0!important;
  background:#eef2f5!important;
}
html body.patrol-mode.patrol-standalone.p9-product-shell::before{display:none!important;content:none!important}
html body.patrol-mode.patrol-standalone.p9-product-shell #patrolPage.patrol-page.p7-main{
  width:calc(100% - var(--p9-nav))!important;
  max-width:none!important;
  margin:var(--p9-top) 0 0 var(--p9-nav)!important;
  padding:28px 30px 40px!important;
  box-sizing:border-box!important;
}
html body.patrol-mode.patrol-standalone.p9-product-shell #patrolPage.patrol-page.p7-main>.workspace{
  width:min(1760px,100%)!important;
  max-width:1760px!important;
  margin-left:auto!important;
  margin-right:auto!important;
}

/* Overview: three real analytical columns; clear inherited span rules. */
html body.patrol-mode.patrol-standalone.p9-product-shell #patrolPage>#patrolDashboard .p4-viz-grid{
  display:grid!important;
  grid-template-columns:minmax(0,1.22fr) minmax(300px,.78fr) minmax(340px,.90fr)!important;
  grid-auto-columns:0!important;
  grid-auto-flow:row!important;
  gap:0!important;
  align-items:stretch!important;
}
html body.patrol-mode.patrol-standalone.p9-product-shell #patrolPage>#patrolDashboard .p4-viz-grid>.p4-reg-panel,
html body.patrol-mode.patrol-standalone.p9-product-shell #patrolPage>#patrolDashboard .p4-viz-grid>.p4-coverage-panel,
html body.patrol-mode.patrol-standalone.p9-product-shell #patrolPage>#patrolDashboard .p4-viz-grid>.p4-priority-panel{
  grid-column:auto!important;
  grid-row:auto!important;
  width:auto!important;
  min-width:0!important;
  min-height:278px!important;
}
html body.patrol-mode.patrol-standalone.p9-product-shell #patrolPage>#patrolDashboard .p4-viz-grid>.p4-chart-panel{
  padding:22px 22px 20px!important;
}
html body.patrol-mode.patrol-standalone.p9-product-shell #patrolPage>#patrolDashboard .p4-donut-row{
  min-height:178px!important;
  align-items:center!important;
}
html body.patrol-mode.patrol-standalone.p9-product-shell #patrolPage>#patrolDashboard .p4-priority-list{
  gap:8px!important;
}

/* Keep the executive hero calm: core action + report only, duplicated exports live in 成果中心. */
html body.patrol-mode.patrol-standalone.p9-product-shell #patrolDashboard>.p7-module-head #patrolExportCommunityPngBtn,
html body.patrol-mode.patrol-standalone.p9-product-shell #patrolDashboard>.p7-module-head #patrolExportCommunityJpgBtn,
html body.patrol-mode.patrol-standalone.p9-product-shell #patrolDashboard>.p7-module-head #patrolExportReportBtnTop{
  display:none!important;
}
html body.patrol-mode.patrol-standalone.p9-product-shell #patrolDashboard>.p7-module-head .patrol-module-actions{
  gap:8px!important;
}

/* Domain analysis: readable headings, denser analytical surfaces. */
html body.patrol-mode.patrol-standalone.p9-product-shell #patrolPage>#p7ProjectWorkspace .p7-analysis-split .patrol-panel h3,
html body.patrol-mode.patrol-standalone.p9-product-shell #patrolPage>#p7StoreWorkspace .p7-analysis-split .patrol-panel h3,
html body.patrol-mode.patrol-standalone.p9-product-shell #patrolPage>#p7ProjectWorkspace .p7-object-table-panel h3,
html body.patrol-mode.patrol-standalone.p9-product-shell #patrolPage>#p7StoreWorkspace .p7-object-table-panel h3{
  color:#20394f!important;
  opacity:1!important;
  text-shadow:none!important;
  font-weight:730!important;
}
html body.patrol-mode.patrol-standalone.p9-product-shell #patrolPage>#p7ProjectWorkspace .p7-analysis-split .patrol-panel small,
html body.patrol-mode.patrol-standalone.p9-product-shell #patrolPage>#p7StoreWorkspace .p7-analysis-split .patrol-panel small,
html body.patrol-mode.patrol-standalone.p9-product-shell #patrolPage>#p7ProjectWorkspace .p7-object-table-panel small,
html body.patrol-mode.patrol-standalone.p9-product-shell #patrolPage>#p7StoreWorkspace .p7-object-table-panel small{
  color:#73869a!important;
  opacity:1!important;
}
html body.patrol-mode.patrol-standalone.p9-product-shell #patrolPage>#p7ProjectWorkspace .p7-analysis-split>.patrol-panel,
html body.patrol-mode.patrol-standalone.p9-product-shell #patrolPage>#p7StoreWorkspace .p7-analysis-split>.patrol-panel{
  padding:19px 20px!important;
  border-radius:15px!important;
}
html body.patrol-mode.patrol-standalone.p9-product-shell #patrolPage .p7-bar-row>span{
  color:#4d6277!important;
  font-size:10.5px!important;
}
html body.patrol-mode.patrol-standalone.p9-product-shell #patrolPage .p7-bar-row small{
  color:#7a8b9d!important;
}

/* History: same light analytical language as the rest of the product. */
html body.patrol-mode.patrol-standalone.p9-product-shell #patrolPage>#patrolCompareZone .patrol-compare-kpis{
  display:grid!important;
  grid-template-columns:repeat(4,minmax(0,1fr))!important;
  gap:0!important;
  margin:0 0 14px!important;
  border:1px solid var(--p9-line)!important;
  border-radius:15px!important;
  background:#fff!important;
  overflow:hidden!important;
  box-shadow:0 8px 26px rgba(18,42,63,.035)!important;
}
html body.patrol-mode.patrol-standalone.p9-product-shell #patrolPage>#patrolCompareZone .patrol-compare-kpis>article{
  min-height:112px!important;
  padding:17px 18px!important;
  border:0!important;
  border-right:1px solid #e7ecf0!important;
  border-radius:0!important;
  background:#fff!important;
  color:#40546a!important;
  box-shadow:none!important;
}
html body.patrol-mode.patrol-standalone.p9-product-shell #patrolPage>#patrolCompareZone .patrol-compare-kpis>article:last-child{border-right:0!important}
html body.patrol-mode.patrol-standalone.p9-product-shell #patrolPage>#patrolCompareZone .patrol-compare-kpis span{color:#728397!important;opacity:1!important}
html body.patrol-mode.patrol-standalone.p9-product-shell #patrolPage>#patrolCompareZone .patrol-compare-kpis strong{color:#183650!important;opacity:1!important;text-shadow:none!important}
html body.patrol-mode.patrol-standalone.p9-product-shell #patrolPage>#patrolCompareZone .patrol-compare-kpis small{color:#8795a4!important;opacity:1!important}
html body.patrol-mode.patrol-standalone.p9-product-shell #patrolPage>#patrolCompareZone .patrol-compare-charts>.patrol-chart-panel{
  min-height:300px!important;
  border-radius:15px!important;
  background:#fff!important;
}
html body.patrol-mode.patrol-standalone.p9-product-shell #patrolPage>#patrolCompareZone #cmpCoverageChart,
html body.patrol-mode.patrol-standalone.p9-product-shell #patrolPage>#patrolCompareZone .patrol-chart-svg{
  min-height:200px!important;
  background:#f6f8fa!important;
  border:0!important;
  border-radius:11px!important;
}
html body.patrol-mode.patrol-standalone.p9-product-shell #patrolPage>#patrolCompareZone .cmp-grid{stroke:#dbe3ea!important}
html body.patrol-mode.patrol-standalone.p9-product-shell #patrolPage>#patrolCompareZone .cmp-axis{fill:#74879a!important}
html body.patrol-mode.patrol-standalone.p9-product-shell #patrolPage>#patrolCompareZone .cmp-line{stroke:#2d847a!important}
html body.patrol-mode.patrol-standalone.p9-product-shell #patrolPage>#patrolCompareZone .cmp-point{fill:#2d847a!important;stroke:#fff!important}
html body.patrol-mode.patrol-standalone.p9-product-shell #patrolPage>#patrolCompareZone .cmp-value{fill:#38556d!important}
html body.patrol-mode.patrol-standalone.p9-product-shell #patrolPage>#patrolCompareZone .patrol-compare-person-panel .table-wrap{
  background:#fff!important;
  border-color:#e1e7ed!important;
}

/* Tables read like desktop software, not a pasted spreadsheet. */
html body.patrol-mode.patrol-standalone.p9-product-shell #patrolPage .p7-object-table-panel{
  border-radius:15px!important;
  overflow:hidden!important;
}
html body.patrol-mode.patrol-standalone.p9-product-shell #patrolPage .p7-filterbar{
  padding:12px 16px!important;
  background:#f5f7f9!important;
  border-bottom:1px solid #e5eaf0!important;
}
html body.patrol-mode.patrol-standalone.p9-product-shell #patrolPage .p7-object-table th{
  background:#183650!important;
  color:#eff5f8!important;
  font-size:10px!important;
  letter-spacing:.01em!important;
}
html body.patrol-mode.patrol-standalone.p9-product-shell #patrolPage .p7-object-table td{
  color:#3f556b!important;
  background:#fff!important;
}
html body.patrol-mode.patrol-standalone.p9-product-shell #patrolPage .p7-object-table tbody tr:nth-child(even) td{background:#fbfcfd!important}

/* Responsive closure after removing inherited body offset. */
@media(max-width:1680px){
  html body.patrol-mode.patrol-standalone.p9-product-shell #patrolPage.patrol-page.p7-main{padding:24px 24px 34px!important}
  html body.patrol-mode.patrol-standalone.p9-product-shell #patrolPage>#patrolDashboard .p4-viz-grid{
    grid-template-columns:minmax(0,1.15fr) minmax(280px,.85fr)!important;
  }
  html body.patrol-mode.patrol-standalone.p9-product-shell #patrolPage>#patrolDashboard .p4-viz-grid>.p4-reg-panel,
  html body.patrol-mode.patrol-standalone.p9-product-shell #patrolPage>#patrolDashboard .p4-viz-grid>.p4-coverage-panel{grid-column:auto!important}
  html body.patrol-mode.patrol-standalone.p9-product-shell #patrolPage>#patrolDashboard .p4-viz-grid>.p4-priority-panel{grid-column:1/-1!important;min-height:220px!important}
}

/* P9.6 | Priority actions use the same light editorial language as the BI canvas. */
html body.patrol-mode.patrol-standalone.p9-product-shell #patrolPage>#patrolDashboard #patrolActionHighlights{
  display:block!important;
  margin:0 0 22px!important;
}
html body.patrol-mode.patrol-standalone.p9-product-shell #patrolPage>#patrolDashboard #patrolActionHighlights>.hf32-priority-list{
  display:grid!important;
  grid-template-columns:repeat(2,minmax(0,1fr))!important;
  gap:10px!important;
  width:100%!important;
  border:0!important;
  background:transparent!important;
}
html body.patrol-mode.patrol-standalone.p9-product-shell #patrolPage>#patrolDashboard #patrolActionHighlights>.hf32-priority-list>article{
  display:grid!important;
  grid-template-columns:38px minmax(0,1fr) minmax(210px,.78fr)!important;
  align-items:center!important;
  gap:14px!important;
  min-height:114px!important;
  padding:16px 17px!important;
  border:1px solid #dde5eb!important;
  border-radius:14px!important;
  background:#fff!important;
  color:#40566b!important;
  box-shadow:0 5px 18px rgba(18,42,63,.035)!important;
}
html body.patrol-mode.patrol-standalone.p9-product-shell #patrolPage>#patrolDashboard #patrolActionHighlights>.hf32-priority-list>article[data-priority="1"]{
  background:#fffdfc!important;
  border-color:#eadfdc!important;
}
html body.patrol-mode.patrol-standalone.p9-product-shell #patrolPage>#patrolDashboard #patrolActionHighlights .hf32-priority-no{
  width:32px!important;height:32px!important;border-radius:10px!important;
  background:#eef3f6!important;color:#536a7d!important;font-size:12px!important;font-weight:760!important;
}
html body.patrol-mode.patrol-standalone.p9-product-shell #patrolPage>#patrolDashboard #patrolActionHighlights article[data-priority="1"] .hf32-priority-no{
  background:#f8ece9!important;color:#a65449!important;
}
html body.patrol-mode.patrol-standalone.p9-product-shell #patrolPage>#patrolDashboard #patrolActionHighlights .hf32-priority-main>div{
  gap:8px!important;align-items:baseline!important;
}
html body.patrol-mode.patrol-standalone.p9-product-shell #patrolPage>#patrolDashboard #patrolActionHighlights .hf32-priority-main>div b{
  color:#77899b!important;font-size:9px!important;letter-spacing:.04em!important;
}
html body.patrol-mode.patrol-standalone.p9-product-shell #patrolPage>#patrolDashboard #patrolActionHighlights .hf32-priority-main>div strong{
  color:#213b52!important;font-size:17px!important;line-height:1.35!important;
}
html body.patrol-mode.patrol-standalone.p9-product-shell #patrolPage>#patrolDashboard #patrolActionHighlights .hf32-priority-main small{
  margin-top:4px!important;color:#7b8b9b!important;font-size:10px!important;line-height:1.5!important;
}
html body.patrol-mode.patrol-standalone.p9-product-shell #patrolPage>#patrolDashboard #patrolActionHighlights .hf32-priority-action{
  min-width:0!important;padding-left:14px!important;border-left:1px solid #e7ecf0!important;
}
html body.patrol-mode.patrol-standalone.p9-product-shell #patrolPage>#patrolDashboard #patrolActionHighlights .hf32-priority-action span{
  color:#8291a0!important;font-size:9px!important;
}
html body.patrol-mode.patrol-standalone.p9-product-shell #patrolPage>#patrolDashboard #patrolActionHighlights .hf32-priority-action b{
  margin-top:3px!important;color:#39756d!important;font-size:10.5px!important;line-height:1.5!important;
}
@media(max-width:1520px){
  html body.patrol-mode.patrol-standalone.p9-product-shell #patrolPage>#patrolDashboard #patrolActionHighlights>.hf32-priority-list{grid-template-columns:1fr!important}
}


/* =======================================================================
   P10 | Executive clarity visual system
   Goal: first-glance confidence, stronger typography, restrained color,
   export-friendly hierarchy. Presentation-only; business/map authority frozen.
   ======================================================================= */
:root{
  --p10-nav:196px;
  --p10-top:66px;
  --p10-bg:#f5f7f8;
  --p10-paper:#ffffff;
  --p10-paper-soft:#f8fafb;
  --p10-ink:#10283b;
  --p10-ink-2:#1d394d;
  --p10-text:#3c5264;
  --p10-muted:#6c7d8c;
  --p10-line:#dce4e9;
  --p10-line-strong:#cdd8df;
  --p10-nav-bg:#0f2739;
  --p10-nav-active:#183b52;
  --p10-teal:#127c75;
  --p10-teal-deep:#0f665f;
  --p10-teal-soft:#eaf4f1;
  --p10-blue:#3269c8;
  --p10-blue-soft:#edf3fb;
  --p10-green:#2b8068;
  --p10-green-soft:#edf6f2;
  --p10-amber:#b97824;
  --p10-amber-soft:#fbf4e8;
  --p10-red:#b94f4b;
  --p10-red-soft:#fbefed;
  --p10-radius:12px;
  --p10-shadow:0 1px 2px rgba(17,39,57,.04),0 7px 20px rgba(17,39,57,.035);
}
html body.patrol-mode.patrol-standalone.p10-product-shell{
  min-width:1180px!important;
  background:var(--p10-bg)!important;
  color:var(--p10-ink)!important;
  font-family:"Microsoft YaHei UI","Microsoft YaHei","PingFang SC","Noto Sans CJK SC","Segoe UI",sans-serif!important;
  font-size:15px!important;
  line-height:1.55!important;
  -webkit-font-smoothing:antialiased!important;
  text-rendering:optimizeLegibility!important;
}
html body.p10-product-shell::before{display:none!important;content:none!important}

/* --- Application shell --- */
body.p10-product-shell .p7-sidebar{
  width:var(--p10-nav)!important;
  background:var(--p10-nav-bg)!important;
  border-right:1px solid rgba(255,255,255,.035)!important;
  box-shadow:8px 0 28px rgba(14,34,49,.055)!important;
}
body.p10-product-shell .p7-side-brand{height:var(--p10-top)!important;padding:0 15px!important;gap:10px!important;border-bottom:1px solid rgba(255,255,255,.07)!important}
body.p10-product-shell .p7-side-logo{width:36px!important;height:36px!important;border-radius:10px!important;box-shadow:0 4px 12px rgba(0,0,0,.16)!important}
body.p10-product-shell .p7-brand-text small{font-size:10px!important;line-height:1.2!important;color:#9bb0bf!important;letter-spacing:.06em!important}
body.p10-product-shell .p7-brand-text strong{font-size:15px!important;line-height:1.28!important;color:#fff!important;font-weight:760!important;letter-spacing:-.015em!important}
body.p10-product-shell .p7-side-nav{padding:14px 8px 8px!important;gap:4px!important}
body.p10-product-shell .p7-side-nav button,body.p10-product-shell .p7-side-input{
  height:44px!important;padding:0 10px!important;border-radius:9px!important;
  grid-template-columns:24px 1fr 11px!important;gap:8px!important;
  color:#c1d0db!important;background:transparent!important;border:1px solid transparent!important;
  font-size:13.5px!important;font-weight:650!important;letter-spacing:0!important;
}
body.p10-product-shell .p7-side-nav button:hover,body.p10-product-shell .p7-side-input:hover{background:#15344a!important;color:#fff!important;border-color:rgba(255,255,255,.045)!important}
body.p10-product-shell .p7-side-nav button.active{
  background:var(--p10-nav-active)!important;color:#fff!important;
  border-color:rgba(111,204,193,.12)!important;box-shadow:inset 3px 0 0 #5cc5b9!important;
}
body.p10-product-shell .p7-side-nav button.active .p7-nav-icon{color:#72d1c6!important}
body.p10-product-shell .p7-nav-icon svg{width:17px!important;height:17px!important;stroke-width:1.9!important}
body.p10-product-shell .p7-nav-arrow{opacity:.32!important}
body.p10-product-shell .p7-side-input{margin:0 8px!important;width:calc(100% - 16px)!important;grid-template-columns:24px 1fr!important;background:rgba(255,255,255,.035)!important;border-color:rgba(255,255,255,.07)!important}
body.p10-product-shell .p7-side-foot{padding:13px 15px 16px!important;border-top:1px solid rgba(255,255,255,.07)!important}
body.p10-product-shell .p7-side-status strong{font-size:11px!important;color:#e5eef4!important}.p10-product-shell .p7-side-status small{font-size:9.8px!important;color:#8ba0b1!important}
body.p10-product-shell .p7-topbar{
  left:var(--p10-nav)!important;height:var(--p10-top)!important;padding:0 24px!important;
  background:rgba(255,255,255,.985)!important;border-bottom:1px solid var(--p10-line)!important;
  box-shadow:0 1px 0 rgba(16,40,59,.015)!important;backdrop-filter:blur(14px)!important;
}
body.p10-product-shell .p7-topbar-product{font-size:10px!important;color:#7b8c99!important;letter-spacing:.025em!important}
body.p10-product-shell .p7-topbar-title-row h1{font-size:18px!important;color:var(--p10-ink)!important;font-weight:780!important;letter-spacing:-.025em!important}
body.p10-product-shell .p7-topbar-title-row span{font-size:10.5px!important;color:#6c7e8e!important}
body.p10-product-shell .p7-period-chip,body.p10-product-shell .p7-compute-chip{height:39px!important;border:1px solid var(--p10-line)!important;border-radius:9px!important;background:#fff!important;box-shadow:none!important}
body.p10-product-shell .p7-period-chip span,body.p10-product-shell .p7-compute-chip small{font-size:9px!important;color:#7b8996!important}.p10-product-shell .p7-period-chip strong,.p10-product-shell .p7-compute-chip strong{font-size:10.8px!important;color:#243f54!important;font-weight:700!important}
body.p10-product-shell .p7-top-action{height:38px!important;border-radius:9px!important;padding:0 13px!important;font-size:12px!important;font-weight:700!important}

/* --- Main canvas and headings --- */
html body.patrol-mode.patrol-standalone.p10-product-shell #patrolPage.patrol-page.p7-main{
  width:calc(100% - var(--p10-nav))!important;max-width:none!important;
  margin:var(--p10-top) 0 0 var(--p10-nav)!important;padding:27px 32px 44px!important;
  box-sizing:border-box!important;background:var(--p10-bg)!important;min-height:calc(100vh - var(--p10-top))!important;
}
html body.p10-product-shell #patrolPage.p7-main>.workspace{width:min(1810px,100%)!important;max-width:1810px!important;margin:0 auto!important;padding:0!important;border:0!important;border-radius:0!important;background:transparent!important;box-shadow:none!important}
body.p10-product-shell #patrolPage .p7-module-head{
  min-height:94px!important;display:grid!important;grid-template-columns:minmax(0,1fr) auto!important;
  column-gap:28px!important;row-gap:8px!important;align-items:end!important;
  margin:0 0 18px!important;padding:5px 0 18px 16px!important;
  border:0!important;border-bottom:1px solid var(--p10-line-strong)!important;border-radius:0!important;background:transparent!important;box-shadow:none!important;position:relative!important;
}
body.p10-product-shell #patrolPage .p7-module-head::before{content:""!important;position:absolute!important;left:0!important;top:8px!important;bottom:21px!important;width:4px!important;border-radius:999px!important;background:var(--p10-teal)!important}
body.p10-product-shell #patrolPage .p7-module-head>.section-number{display:none!important}
body.p10-product-shell #patrolPage .p7-module-head .patrol-section-kicker{display:block!important;margin:0 0 5px!important;font-size:10px!important;line-height:1.2!important;letter-spacing:.06em!important;color:var(--p10-teal-deep)!important;font-weight:800!important}
body.p10-product-shell #patrolPage .p7-module-head h2{margin:0 0 5px!important;font-size:32px!important;line-height:1.1!important;font-weight:850!important;letter-spacing:-.045em!important;color:var(--p10-ink)!important;text-shadow:none!important}
body.p10-product-shell #patrolPage .p7-module-head p{margin:0!important;max-width:920px!important;font-size:13px!important;line-height:1.65!important;color:#5e7181!important;font-weight:520!important}
body.p10-product-shell #patrolPage .p7-module-head>.patrol-module-actions{grid-column:2!important;grid-row:1!important;max-width:760px!important;justify-content:flex-end!important;align-self:end!important;gap:8px!important}

/* Buttons: no cheap gradients; one accent, one neutral. */
body.p10-product-shell .btn{min-height:37px!important;padding:0 13px!important;border:1px solid var(--p10-line-strong)!important;border-radius:9px!important;background:#fff!important;color:#294357!important;box-shadow:none!important;font-size:12px!important;font-weight:700!important;letter-spacing:0!important}
body.p10-product-shell .btn:hover{background:#f4f7f8!important;border-color:#afbdc7!important;color:#122e43!important}
body.p10-product-shell .btn.primary{background:var(--p10-ink-2)!important;border-color:var(--p10-ink-2)!important;color:#fff!important;box-shadow:0 3px 10px rgba(29,57,77,.12)!important}
body.p10-product-shell .btn.primary:hover{background:#24485f!important;border-color:#24485f!important;color:#fff!important}
body.p10-product-shell .btn.large{min-height:43px!important;padding:0 17px!important;font-size:13px!important}
body.p10-product-shell .btn.small{min-height:34px!important;padding:0 11px!important;font-size:11.5px!important}
body.p10-product-shell #patrolOutputZone .btn.primary,body.p10-product-shell #patrolInputZone .btn.primary{background:var(--p10-teal)!important;border-color:var(--p10-teal)!important}
body.p10-product-shell #patrolOutputZone .btn.primary:hover,body.p10-product-shell #patrolInputZone .btn.primary:hover{background:var(--p10-teal-deep)!important;border-color:var(--p10-teal-deep)!important}

/* Cards and typography. */
body.p10-product-shell .patrol-panel,body.p10-product-shell .patrol-domain-card{border:1px solid var(--p10-line)!important;border-radius:var(--p10-radius)!important;background:#fff!important;box-shadow:var(--p10-shadow)!important;color:var(--p10-text)!important}
body.p10-product-shell .patrol-panel{padding:20px 21px!important}
body.p10-product-shell .patrol-panel-head{margin-bottom:15px!important;border:0!important;align-items:flex-start!important}
body.p10-product-shell .patrol-panel-head h3{font-size:19px!important;line-height:1.3!important;font-weight:800!important;letter-spacing:-.025em!important;color:var(--p10-ink)!important;text-shadow:none!important;opacity:1!important}
body.p10-product-shell .patrol-panel-head h4{font-size:14px!important;color:var(--p10-ink-2)!important;font-weight:780!important}
body.p10-product-shell .patrol-panel-head small{font-size:11.5px!important;line-height:1.55!important;color:var(--p10-muted)!important;opacity:1!important}
body.p10-product-shell .patrol-eyebrow{font-size:9.5px!important;letter-spacing:.06em!important;color:var(--p10-teal-deep)!important;font-weight:800!important}
body.p10-product-shell .patrol-schema-badge,body.p10-product-shell .patrol-domain-chip{padding:5px 9px!important;border:0!important;border-radius:999px!important;background:#edf3f5!important;color:#546c7c!important;font-size:9.8px!important;font-weight:800!important}

/* KPI: stronger first glance. */
body.p10-product-shell #patrolDashboard .p4-viz-kpis,body.p10-product-shell #p7ProjectWorkspace .p7-domain-kpis,body.p10-product-shell #p7StoreWorkspace .p7-domain-kpis,body.p10-product-shell #patrolPersonZone .p7-responsibility-kpis{
  display:grid!important;gap:10px!important;border:0!important;background:transparent!important;border-radius:0!important;overflow:visible!important;box-shadow:none!important;margin-bottom:18px!important;
}
body.p10-product-shell #patrolDashboard .p4-viz-kpis{grid-template-columns:repeat(6,minmax(0,1fr))!important}
body.p10-product-shell #p7ProjectWorkspace .p7-domain-kpis,body.p10-product-shell #p7StoreWorkspace .p7-domain-kpis{grid-template-columns:repeat(3,minmax(0,1fr))!important}
body.p10-product-shell #patrolPersonZone .p7-responsibility-kpis{grid-template-columns:repeat(4,minmax(0,1fr))!important}
body.p10-product-shell #patrolDashboard .p4-viz-kpis>article,body.p10-product-shell #p7ProjectWorkspace .p7-domain-kpis>article,body.p10-product-shell #p7StoreWorkspace .p7-domain-kpis>article,body.p10-product-shell #patrolPersonZone .p7-responsibility-kpis>article{
  min-height:122px!important;padding:16px 17px!important;border:1px solid var(--p10-line)!important;border-radius:11px!important;background:#fff!important;box-shadow:0 1px 2px rgba(17,39,57,.025)!important;position:relative!important;overflow:hidden!important;
}
body.p10-product-shell #patrolDashboard .p4-viz-kpis>article::before,body.p10-product-shell #p7ProjectWorkspace .p7-domain-kpis>article::before,body.p10-product-shell #p7StoreWorkspace .p7-domain-kpis>article::before,body.p10-product-shell #patrolPersonZone .p7-responsibility-kpis>article::before{content:""!important;position:absolute!important;left:0!important;top:0!important;right:0!important;height:3px!important;background:#b8c7d1!important}
body.p10-product-shell #patrolDashboard .p4-viz-kpis>article:first-child,body.p10-product-shell #p7ProjectWorkspace .p7-domain-kpis>article:first-child,body.p10-product-shell #p7StoreWorkspace .p7-domain-kpis>article:first-child{background:#132f44!important;border-color:#132f44!important;color:#fff!important}
body.p10-product-shell #patrolDashboard .p4-viz-kpis>article:first-child::before,body.p10-product-shell #p7ProjectWorkspace .p7-domain-kpis>article:first-child::before,body.p10-product-shell #p7StoreWorkspace .p7-domain-kpis>article:first-child::before{background:#5fc4b7!important}
body.p10-product-shell #patrolDashboard .p4-viz-kpis>article:first-child span,body.p10-product-shell #patrolDashboard .p4-viz-kpis>article:first-child small,body.p10-product-shell #p7ProjectWorkspace .p7-domain-kpis>article:first-child span,body.p10-product-shell #p7ProjectWorkspace .p7-domain-kpis>article:first-child small,body.p10-product-shell #p7StoreWorkspace .p7-domain-kpis>article:first-child span,body.p10-product-shell #p7StoreWorkspace .p7-domain-kpis>article:first-child small{color:#c7d5de!important}
body.p10-product-shell #patrolDashboard .p4-viz-kpis>article:first-child strong,body.p10-product-shell #p7ProjectWorkspace .p7-domain-kpis>article:first-child strong,body.p10-product-shell #p7StoreWorkspace .p7-domain-kpis>article:first-child strong{color:#fff!important}
body.p10-product-shell #patrolDashboard .p4-viz-kpis>article:nth-child(3)::before,body.p10-product-shell #p7ProjectWorkspace .p7-domain-kpis>article:nth-child(5)::before{background:var(--p10-green)!important}
body.p10-product-shell #patrolDashboard .p4-viz-kpis>article:last-child::before,body.p10-product-shell #p7ProjectWorkspace .p7-domain-kpis>article:nth-child(4)::before{background:var(--p10-red)!important}
body.p10-product-shell #patrolDashboard .p4-viz-kpis span,body.p10-product-shell .p7-domain-kpis span,body.p10-product-shell .p7-responsibility-kpis span{font-size:10.8px!important;color:#5f7384!important;font-weight:720!important}
body.p10-product-shell #patrolDashboard .p4-viz-kpis strong,body.p10-product-shell .p7-domain-kpis strong,body.p10-product-shell .p7-responsibility-kpis strong{display:block!important;margin:5px 0 2px!important;font-size:32px!important;line-height:1.05!important;letter-spacing:-.035em!important;color:#14344d!important;font-weight:850!important;text-shadow:none!important}
body.p10-product-shell #patrolDashboard .p4-viz-kpis small,body.p10-product-shell .p7-domain-kpis small,body.p10-product-shell .p7-responsibility-kpis small{font-size:10.8px!important;line-height:1.5!important;color:#758594!important}

/* Overview: clear storytelling with restrained accents. */
body.p10-product-shell #patrolDashboard>.p7-module-head{min-height:122px!important;padding-bottom:20px!important}
body.p10-product-shell #patrolDashboard .p4-viz-grid{gap:12px!important}
body.p10-product-shell #patrolDashboard .p4-viz-grid>.p4-chart-panel{padding:21px 22px!important;border-radius:12px!important;border:1px solid var(--p10-line)!important;background:#fff!important;box-shadow:var(--p10-shadow)!important;position:relative!important}
body.p10-product-shell #patrolDashboard .p4-viz-grid>.p4-reg-panel{border-top:3px solid var(--p10-teal)!important}
body.p10-product-shell #patrolDashboard .p4-viz-grid>.p4-coverage-panel{border-top:3px solid var(--p10-blue)!important}
body.p10-product-shell #patrolDashboard .p4-viz-grid>.p4-priority-panel{border-top:3px solid var(--p10-amber)!important}
body.p10-product-shell #patrolDashboard .p4-viz-grid header span{font-size:9.5px!important;color:#6d7f8e!important;letter-spacing:.04em!important;font-weight:800!important}
body.p10-product-shell #patrolDashboard .p4-viz-grid header h3{font-size:18px!important;color:var(--p10-ink)!important;font-weight:820!important;letter-spacing:-.02em!important}
body.p10-product-shell #patrolDashboard .p4-viz-grid header>b{font-size:9.5px!important;background:#eef3f5!important;color:#5d7282!important;border:0!important}
body.p10-product-shell #patrolLeadershipSummary{margin:18px 0!important;padding:15px 18px!important;border:0!important;border-left:4px solid var(--p10-teal)!important;border-radius:10px!important;background:var(--p10-teal-soft)!important;color:#254e4b!important;font-size:13.2px!important;line-height:1.65!important;font-weight:650!important}
body.p10-product-shell #patrolActionHighlights{margin:0 0 18px!important}
body.p10-product-shell #patrolActionHighlights>.hf32-priority-list{gap:10px!important}
body.p10-product-shell #patrolActionHighlights>.hf32-priority-list>article{min-height:118px!important;padding:17px 18px!important;border:1px solid var(--p10-line)!important;border-radius:11px!important;background:#fff!important;box-shadow:none!important}
body.p10-product-shell #patrolActionHighlights>.hf32-priority-list>article[data-priority="1"]{background:var(--p10-red-soft)!important;border-color:#efd7d4!important}
body.p10-product-shell #patrolActionHighlights .hf32-priority-main>div strong{font-size:18px!important;color:var(--p10-ink)!important;font-weight:820!important}
body.p10-product-shell #patrolActionHighlights .hf32-priority-main small{font-size:11px!important;color:#657786!important}
body.p10-product-shell #patrolActionHighlights .hf32-priority-action b{font-size:11px!important;color:var(--p10-teal-deep)!important}
body.p10-product-shell #patrolDashboard .patrol-progress-overview-panel{padding:19px 21px!important;border-radius:12px!important}
body.p10-product-shell #patrolDashboard .patrol-domain-structure-grid{gap:12px!important}
body.p10-product-shell #patrolDashboard .patrol-domain-structure-grid>.patrol-panel{box-shadow:none!important;border-top:3px solid #d8e1e7!important}
body.p10-product-shell #patrolDashboard .patrol-macro-narrative{padding:11px 14px!important;border-radius:9px!important;background:#edf2f4!important;color:#556a7a!important;font-size:11px!important}

/* Project/store analysis: stronger type, lighter tables. */
body.p10-product-shell #p7ProjectWorkspace .p7-analysis-split,body.p10-product-shell #p7StoreWorkspace .p7-analysis-split{gap:12px!important;margin:0 0 14px!important}
body.p10-product-shell #p7ProjectWorkspace .p7-analysis-split>.patrol-panel:first-child,body.p10-product-shell #p7StoreWorkspace .p7-analysis-split>.patrol-panel:first-child{border-top:3px solid var(--p10-blue)!important}
body.p10-product-shell #p7ProjectWorkspace .p7-analysis-split>.patrol-panel:last-child,body.p10-product-shell #p7StoreWorkspace .p7-analysis-split>.patrol-panel:last-child{border-top:3px solid var(--p10-amber)!important}
body.p10-product-shell #patrolPage .p7-bar-row{min-height:43px!important;grid-template-columns:115px minmax(0,1fr) 46px!important;column-gap:12px!important;row-gap:3px!important}
body.p10-product-shell #patrolPage .p7-bar-row>span{font-size:11.5px!important;color:#43596c!important;font-weight:650!important}
body.p10-product-shell #patrolPage .p7-bar-row strong{font-size:11.5px!important;color:#2a4256!important;font-weight:800!important}.p10-product-shell #patrolPage .p7-bar-row small{font-size:10.2px!important;color:#718392!important}
body.p10-product-shell #patrolPage .p7-bar-track{height:7px!important;background:#e6ecef!important}.p10-product-shell #patrolPage .p7-bar-track i{background:var(--p10-blue)!important}
body.p10-product-shell #patrolPage .p7-gap-item{min-height:58px!important;padding:10px 12px!important;border-radius:9px!important;border:1px solid #e5eaee!important;background:#fafcfc!important}.p10-product-shell #patrolPage .p7-gap-item b{font-size:11.5px!important;color:#2b4357!important}.p10-product-shell #patrolPage .p7-gap-item small{font-size:10px!important;color:#70818f!important}.p10-product-shell #patrolPage .p7-gap-item strong{font-size:13px!important}
body.p10-product-shell #patrolPage .p7-object-table-panel{padding:0!important;border-radius:12px!important;overflow:hidden!important;box-shadow:var(--p10-shadow)!important}
body.p10-product-shell #patrolPage .p7-object-table-panel>.patrol-panel-head{padding:20px 20px 15px!important;margin:0!important;background:#fff!important}
body.p10-product-shell #patrolPage .p7-filterbar{padding:12px 15px!important;background:#f3f6f7!important;border-top:1px solid #e6ebee!important;border-bottom:1px solid #dfe6ea!important;gap:9px!important}
body.p10-product-shell #patrolPage .p7-filterbar input,body.p10-product-shell #patrolPage .p7-filterbar select{height:35px!important;border:1px solid #cfd9e0!important;border-radius:8px!important;background:#fff!important;color:#31495c!important;font-size:11px!important}
body.p10-product-shell #patrolPage .p7-object-table{font-size:12px!important}
body.p10-product-shell #patrolPage .p7-object-table th{height:43px!important;padding:0 12px!important;background:#eef3f5!important;color:#284257!important;border:0!important;border-bottom:1px solid #cad6de!important;font-size:11px!important;font-weight:800!important;letter-spacing:.015em!important}
body.p10-product-shell #patrolPage .p7-object-table td{padding:11px 12px!important;color:#405668!important;background:#fff!important;border-bottom:1px solid #edf0f2!important;font-size:11.5px!important;line-height:1.55!important}
body.p10-product-shell #patrolPage .p7-object-table tbody tr:nth-child(even) td{background:#fbfcfc!important}.p10-product-shell #patrolPage .p7-object-table tbody tr:hover td{background:#f1f6f7!important}
body.p10-product-shell #patrolPage .p7-table-footer{padding:11px 15px!important;background:#fff!important;color:#6f8190!important;font-size:10.5px!important}

/* Responsibility: executive matrix, not a personnel list. */
body.p10-product-shell #patrolPersonZone .p7-responsibility-overview>.patrol-panel{padding:0!important;overflow:hidden!important}
body.p10-product-shell #patrolPersonZone .p7-responsibility-overview>.patrol-panel>.patrol-panel-head{padding:20px 21px 14px!important;margin:0!important}
body.p10-product-shell #patrolPersonZone .p9-responsibility-table{font-size:12px!important}
body.p10-product-shell #patrolPersonZone .p9-responsibility-table thead th{height:44px!important;background:#edf3f5!important;color:#294358!important;border-bottom:1px solid #cad6de!important;font-size:10.8px!important;font-weight:800!important}
body.p10-product-shell #patrolPersonZone .p9-responsibility-table tbody td{height:49px!important;padding:8px 11px!important;color:#405769!important;border-bottom:1px solid #edf0f2!important;font-size:11.3px!important;background:#fff!important}
body.p10-product-shell #patrolPersonZone .p9-responsibility-table tbody tr:nth-child(even) td{background:#fbfcfc!important}
body.p10-product-shell #patrolPersonZone .p9-resp-grid{font-size:12.5px!important;color:#19374f!important;font-weight:820!important}.p10-product-shell #patrolPersonZone .p9-resp-person{color:#40576a!important;font-weight:650!important}.p10-product-shell #patrolPersonZone .p9-resp-number{font-weight:800!important;color:#254157!important}.p10-product-shell #patrolPersonZone .p9-resp-gap{font-size:10.8px!important;color:#6a7d8c!important}
body.p10-product-shell #patrolPersonZone .p9-resp-progress i{height:7px!important;background:#e5ecef!important}.p10-product-shell #patrolPersonZone .p9-resp-progress i b{background:var(--p10-teal)!important}.p10-product-shell #patrolPersonZone .p9-resp-progress em{font-size:10px!important;color:#607585!important}

/* GIS: map-first, with visible controls and stronger side-panel typography. */
body.p10-product-shell #patrolAnalysisZone>.p7-map-tabs{margin:0 0 13px!important;padding:4px!important;background:#e5ecef!important;border:1px solid #d8e1e6!important;border-radius:9px!important;gap:3px!important}
body.p10-product-shell #patrolAnalysisZone>.p7-map-tabs button{min-height:34px!important;padding:0 16px!important;border-radius:7px!important;color:#536a7b!important;font-size:11.5px!important;font-weight:780!important}.p10-product-shell #patrolAnalysisZone>.p7-map-tabs button.active{background:var(--p10-ink-2)!important;color:#fff!important;box-shadow:none!important}
body.p10-product-shell #patrolAnalysisZone .patrol-business-map{border:1px solid var(--p10-line-strong)!important;border-radius:12px!important;background:#fff!important;box-shadow:var(--p10-shadow)!important}
body.p10-product-shell #patrolAnalysisZone .patrol-map-intelligence-head{padding:18px 19px 13px!important;background:#fff!important}.p10-product-shell #patrolAnalysisZone .patrol-map-intelligence-head h3{font-size:20px!important;color:var(--p10-ink)!important;font-weight:820!important}.p10-product-shell #patrolAnalysisZone .patrol-map-intelligence-head small{font-size:11px!important;color:#647786!important}.p10-product-shell #patrolAnalysisZone .patrol-map-intelligence-head>span{font-size:10.5px!important;color:#526a7a!important;background:#edf3f5!important;padding:5px 8px!important;border-radius:999px!important}
body.p10-product-shell #patrolAnalysisZone .patrol-map-explore-bar{padding:11px 14px!important;background:#f2f5f6!important;border-top:1px solid #e6ebee!important;border-bottom:1px solid #dce4e9!important;gap:9px!important}.p10-product-shell #patrolAnalysisZone .patrol-map-filter-group button{min-height:32px!important;padding:0 10px!important;border:1px solid #dce4e9!important;border-radius:7px!important;background:#fff!important;color:#52697a!important;font-size:10.3px!important;font-weight:700!important}.p10-product-shell #patrolAnalysisZone .patrol-map-filter-group button.active{background:var(--p10-ink-2)!important;border-color:var(--p10-ink-2)!important;color:#fff!important}.p10-product-shell #patrolAnalysisZone .patrol-map-filter-group button[data-project-map-filter="zero"]{border-color:#ecd4d1!important;color:#9f4b47!important}.p10-product-shell #patrolAnalysisZone .patrol-map-filter-group button[data-project-map-filter="one"]{border-color:#eadbc1!important;color:#916421!important}.p10-product-shell #patrolAnalysisZone .patrol-map-filter-group button[data-project-map-filter="good"]{border-color:#cee4da!important;color:#2d715d!important}
body.p10-product-shell #patrolAnalysisZone .patrol-map-search-wrap label{font-size:10.5px!important;color:#5a7080!important;font-weight:760!important}.p10-product-shell #patrolAnalysisZone .patrol-map-search-box{height:36px!important;border:1px solid #cbd7df!important;border-radius:8px!important;background:#fff!important}.p10-product-shell #patrolAnalysisZone .patrol-map-search-box input{font-size:11px!important;color:#2c4559!important}
body.p10-product-shell #patrolAnalysisZone .patrol-map-filter-status{font-size:10.3px!important;color:#647786!important;font-weight:600!important}
body.p10-product-shell #patrolAnalysisZone .patrol-map-intelligence-layout{padding:15px!important;grid-template-columns:minmax(0,2.12fr) minmax(315px,.63fr)!important;gap:15px!important}
body.p10-product-shell #patrolAnalysisZone .patrol-map-canvas-shell{border:1px solid #c9d7d4!important;border-radius:11px!important;background:#f5f5ef!important;box-shadow:0 4px 16px rgba(17,39,57,.05)!important}.p10-product-shell #patrolAnalysisZone .patrol-map-canvas-shell>canvas{background:#f5f5ef!important}
body.p10-product-shell #patrolAnalysisZone .patrol-map-reading-hint{padding:9px 11px!important;border-radius:8px!important;background:#eef4f2!important;color:#536d69!important;font-size:10.5px!important}
body.p10-product-shell #patrolAnalysisZone .patrol-map-intelligence-panel{padding:15px!important;border:1px solid #dde6e8!important;border-radius:10px!important;background:#f3f7f7!important;color:var(--p10-text)!important}.p10-product-shell #patrolAnalysisZone .patrol-map-intelligence-title span{font-size:15px!important;color:#193a4d!important;font-weight:820!important}.p10-product-shell #patrolAnalysisZone .patrol-map-intelligence-title small{font-size:10.5px!important;color:#6b7d8b!important}
body.p10-product-shell #patrolAnalysisZone .patrol-map-metric-strip{gap:8px!important}.p10-product-shell #patrolAnalysisZone .patrol-map-metric-strip article{padding:11px!important;border:1px solid #e2e8ea!important;border-radius:8px!important;background:#fff!important}.p10-product-shell #patrolAnalysisZone .patrol-map-metric-strip span{font-size:9.5px!important;color:#6f8190!important}.p10-product-shell #patrolAnalysisZone .patrol-map-metric-strip strong{font-size:24px!important;color:#17394e!important;font-weight:850!important}
body.p10-product-shell #patrolAnalysisZone .patrol-map-insight-section{margin-top:12px!important;padding-top:12px!important;border-top:1px solid #dbe4e6!important}.p10-product-shell #patrolAnalysisZone .patrol-map-insight-section h4{font-size:12px!important;color:#203f52!important;font-weight:820!important}.p10-product-shell #patrolAnalysisZone .patrol-map-priority-row{min-height:52px!important;padding:9px!important;border:1px solid #e3e9eb!important;border-radius:8px!important;background:#fff!important}.p10-product-shell #patrolAnalysisZone .patrol-map-priority-row b{font-size:11px!important;color:#203e52!important}.p10-product-shell #patrolAnalysisZone .patrol-map-priority-row small{font-size:9.7px!important;color:#6c7e8c!important}.p10-product-shell #patrolAnalysisZone .patrol-map-priority-state{font-size:9.3px!important;font-weight:760!important}
body.p10-product-shell #patrolAnalysisZone .patrol-map-conclusion{margin:0 15px 11px!important;padding:11px 13px!important;border-left:3px solid var(--p10-teal)!important;border-radius:8px!important;background:var(--p10-teal-soft)!important;color:#365d59!important;font-size:10.8px!important;line-height:1.65!important;font-weight:600!important}.p10-product-shell #patrolAnalysisZone .patrol-map-actions{padding:0 15px 15px!important;gap:7px!important;border-top:0!important}

/* Output center: editorial delivery workspace. */
body.p10-product-shell.patrol-results-ready[data-p7-view="output"] #patrolOutputZone.patrol-legacy-output{grid-template-columns:minmax(0,1fr) minmax(0,1fr)!important;gap:12px!important;align-items:start!important}
body.p10-product-shell #patrolOutputZone>.p7-module-head{grid-column:1/-1!important;order:-20!important;margin-bottom:0!important}
body.p10-product-shell #patrolOutputZone>.p7-output-guide{grid-column:1/-1!important;order:-19!important;display:grid!important;grid-template-columns:repeat(4,minmax(0,1fr))!important;gap:8px!important;margin:0!important;padding:0!important;border:0!important;background:transparent!important}
body.p10-product-shell #patrolOutputZone>.p7-output-guide article{min-height:78px!important;padding:13px 14px!important;border:1px solid var(--p10-line)!important;border-radius:10px!important;background:#fff!important;box-shadow:none!important}.p10-product-shell #patrolOutputZone>.p7-output-guide span{font-size:9px!important;color:#6e8190!important}.p10-product-shell #patrolOutputZone>.p7-output-guide b{font-size:12.5px!important;color:#223e52!important}.p10-product-shell #patrolOutputZone>.p7-output-guide small{font-size:10px!important;color:#748592!important;line-height:1.45!important}
body.p10-product-shell #patrolOutputZone>.p7-focus-export-panel{grid-column:1/-1!important;order:-18!important;margin:0!important;padding:22px 23px!important;border:0!important;border-radius:12px!important;background:#16384f!important;color:#fff!important;box-shadow:0 7px 20px rgba(16,39,57,.10)!important}.p10-product-shell #patrolOutputZone>.p7-focus-export-panel h3,.p10-product-shell #patrolOutputZone>.p7-focus-export-panel .patrol-panel-head h3{color:#fff!important;font-size:21px!important}.p10-product-shell #patrolOutputZone>.p7-focus-export-panel small{color:#bed0dc!important;font-size:11px!important}.p10-product-shell #patrolOutputZone>.p7-focus-export-panel .btn:not(.primary){background:#fff!important;border-color:#fff!important;color:#26465b!important}.p10-product-shell #patrolOutputZone>.p7-focus-export-panel .btn.primary{background:#51b5aa!important;border-color:#51b5aa!important;color:#0f2b3b!important;font-weight:800!important}
body.p10-product-shell #patrolOutputZone>.patrol-copy-grid{grid-column:1/-1!important;display:grid!important;grid-template-columns:repeat(4,minmax(0,1fr))!important;gap:9px!important}.p10-product-shell #patrolOutputZone .patrol-copy-card{min-height:138px!important;padding:15px!important;border:1px solid var(--p10-line)!important;border-radius:10px!important;background:#fff!important}.p10-product-shell #patrolOutputZone .patrol-copy-card span{font-size:9px!important;color:#648173!important;background:#eef5f2!important;padding:4px 7px!important;border-radius:999px!important}.p10-product-shell #patrolOutputZone .patrol-copy-card h3{font-size:15px!important;color:var(--p10-ink)!important}.p10-product-shell #patrolOutputZone .patrol-copy-card p{font-size:10.5px!important;color:#6c7d8b!important;line-height:1.55!important}
body.p10-product-shell #patrolOutputZone>.patrol-panel{margin:0!important;min-height:100%!important;box-shadow:none!important}.p10-product-shell #patrolOutputZone>.patrol-panel:nth-of-type(odd){border-top:3px solid #d9e5e2!important}.p10-product-shell #patrolOutputZone .patrol-writing-note{background:#f1f5f6!important;color:#667988!important;font-size:10px!important}.p10-product-shell #patrolOutputZone .patrol-brief{border:1px solid #d6e0e6!important;background:#fbfcfc!important;color:#3d5365!important;font-size:11px!important;line-height:1.7!important}

/* History: visible empty states and analytical surfaces. */
body.p10-product-shell #patrolCompareZone .patrol-compare-autoload{padding:12px 14px!important;border:1px solid #e1e7eb!important;border-radius:9px!important;background:#f8fafb!important;color:#617483!important;font-size:10.8px!important}
body.p10-product-shell #patrolCompareZone .patrol-compare-kpis{gap:10px!important;border:0!important;background:transparent!important;box-shadow:none!important;overflow:visible!important}.p10-product-shell #patrolCompareZone .patrol-compare-kpis>article{min-height:116px!important;padding:16px 17px!important;border:1px solid var(--p10-line)!important;border-radius:10px!important;background:#fff!important;box-shadow:none!important}.p10-product-shell #patrolCompareZone .patrol-compare-kpis span{font-size:10.5px!important;color:#617483!important}.p10-product-shell #patrolCompareZone .patrol-compare-kpis strong{font-size:32px!important;color:#14354e!important;font-weight:850!important}.p10-product-shell #patrolCompareZone .patrol-compare-kpis small{font-size:10.5px!important;color:#7a8895!important}
body.p10-product-shell #patrolCompareZone .patrol-compare-charts{gap:12px!important}.p10-product-shell #patrolCompareZone .patrol-chart-panel{min-height:300px!important;border-radius:11px!important}.p10-product-shell #patrolCompareZone .patrol-chart-svg,.p10-product-shell #patrolCompareZone .patrol-stack-chart,.p10-product-shell #patrolCompareZone .patrol-change-bars,.p10-product-shell #patrolCompareZone .patrol-management-summary-body{min-height:190px!important;border:1px dashed #d2dce2!important;border-radius:9px!important;background:#f8fafb!important;color:#6f8190!important}

/* Input: clear, intentional local-analysis workspace. */
body.p10-product-shell #patrolInputZone .p7-input-heading{padding-left:16px!important;position:relative!important}.p10-product-shell #patrolInputZone .p7-input-heading::before{content:""!important;position:absolute!important;left:0!important;top:6px!important;bottom:10px!important;width:4px!important;border-radius:999px!important;background:var(--p10-teal)!important}.p10-product-shell #patrolInputZone .p7-input-heading h2{font-size:32px!important;color:var(--p10-ink)!important;font-weight:850!important;letter-spacing:-.04em!important}.p10-product-shell #patrolInputZone .p7-input-heading p{font-size:12.5px!important;color:#617382!important}
body.p10-product-shell #patrolPage .patrol-import-grid.patrol-one-paste-grid{grid-template-columns:minmax(0,1.7fr) minmax(390px,.68fr)!important;gap:14px!important;align-items:stretch!important}
body.p10-product-shell #patrolInputZone .patrol-one-paste-card{padding:20px!important;border:1px solid var(--p10-line)!important;border-radius:12px!important;background:#fff!important;box-shadow:var(--p10-shadow)!important}.p10-product-shell #patrolInputZone .patrol-one-paste-card h3{font-size:18px!important;color:var(--p10-ink)!important;font-weight:800!important}.p10-product-shell #patrolInputZone .patrol-one-paste-card p{font-size:11.5px!important;color:#677987!important}
body.p10-product-shell #patrolInputZone .patrol-one-paste-input{min-height:315px!important;max-height:460px!important;padding:15px 16px!important;border:1px solid #cbd7df!important;border-radius:10px!important;background:#fbfcfd!important;color:#1f394e!important;font-family:"Cascadia Mono","Consolas","Microsoft YaHei UI",monospace!important;font-size:12.5px!important;line-height:1.62!important;box-shadow:inset 0 1px 2px rgba(17,39,57,.03)!important}
body.p10-product-shell #patrolInputZone .patrol-contract-card.p7-input-guide{padding:20px!important;border:0!important;border-radius:12px!important;background:#18394f!important;color:#e9f1f5!important;box-shadow:0 7px 20px rgba(17,39,57,.08)!important}.p10-product-shell #patrolInputZone .p7-guide-head span{color:#72d1c6!important;font-size:9.5px!important}.p10-product-shell #patrolInputZone .p7-guide-head strong{color:#fff!important;font-size:18px!important}.p10-product-shell #patrolInputZone .p7-guide-grid article{border-top-color:rgba(255,255,255,.10)!important;grid-template-columns:92px minmax(0,1fr)!important;padding:11px 0!important}.p10-product-shell #patrolInputZone .p7-guide-grid b{font-size:11px!important;color:#edf4f7!important}.p10-product-shell #patrolInputZone .p7-guide-grid small{font-size:10.2px!important;color:#a9bbc7!important}.p10-product-shell #patrolInputZone .p7-input-guide>p{border-top-color:rgba(255,255,255,.10)!important;color:#b1c2cc!important;font-size:10.2px!important}
body.p10-product-shell #patrolInputZone .patrol-import-status{font-size:10.8px!important;color:#516777!important;background:#f3f6f7!important;border:1px solid #e0e7eb!important;border-radius:8px!important}

/* Common empty state: readable, not washed out. */
body.p10-product-shell .patrol-empty-card{min-height:78px!important;border:1px dashed #d4dde2!important;border-radius:9px!important;background:#f7f9fa!important;color:#637786!important;font-size:11px!important;font-weight:600!important;box-shadow:none!important}
body.p10-product-shell input,body.p10-product-shell select,body.p10-product-shell textarea{font-family:inherit!important}
body.p10-product-shell button:focus-visible,body.p10-product-shell a:focus-visible,body.p10-product-shell input:focus-visible,body.p10-product-shell select:focus-visible,body.p10-product-shell textarea:focus-visible{outline:3px solid rgba(18,124,117,.20)!important;outline-offset:2px!important}

@media(max-width:1680px){
  :root{--p10-nav:184px}
  html body.p10-product-shell #patrolPage.p7-main{padding:23px 25px 36px!important}
  body.p10-product-shell #patrolDashboard .p4-viz-kpis{grid-template-columns:repeat(3,minmax(0,1fr))!important}
  body.p10-product-shell #patrolAnalysisZone .patrol-map-intelligence-layout{grid-template-columns:minmax(0,1.85fr) minmax(300px,.65fr)!important}
}
@media(max-width:1420px){
  :root{--p10-nav:172px}
  body.p10-product-shell .p7-topbar{padding:0 16px!important}
  body.p10-product-shell .p7-topbar-title-row span,body.p10-product-shell .p7-compute-chip{display:none!important}
  body.p10-product-shell #patrolPage .p7-module-head{grid-template-columns:1fr!important;padding-left:14px!important}.p10-product-shell #patrolPage .p7-module-head>.patrol-module-actions{grid-column:1!important;grid-row:2!important;justify-content:flex-start!important}
  body.p10-product-shell #patrolPage .patrol-import-grid.patrol-one-paste-grid{grid-template-columns:1fr!important}
  body.p10-product-shell #patrolAnalysisZone .patrol-map-intelligence-layout{grid-template-columns:1fr!important}
  body.p10-product-shell.patrol-results-ready[data-p7-view="output"] #patrolOutputZone.patrol-legacy-output{grid-template-columns:1fr!important}
  body.p10-product-shell #patrolOutputZone>.patrol-panel{grid-column:1/-1!important}
}
@media(max-height:800px){body.p10-product-shell .p7-side-nav{padding-top:8px!important}.p10-product-shell .p7-side-nav button,.p10-product-shell .p7-side-input{height:39px!important}}

/* =====================================================================
   P10.1 | Strict visual closure
   Higher-specificity overrides to fully supersede P9's late rules.
   ===================================================================== */
html body.patrol-mode.patrol-standalone.p9-product-shell.p10-product-shell{
  --p10-bg:#f2f5f6;
  --p10-ink:#0d2a3f;
  --p10-text:#314c60;
  --p10-muted:#647988;
  --p10-line:#d7e1e6;
}

/* Stronger page identity and type hierarchy. */
html body.patrol-mode.patrol-standalone.p9-product-shell.p10-product-shell #patrolPage .p7-module-head h2{
  color:#0d2a3f!important;font-size:33px!important;font-weight:880!important;letter-spacing:-.048em!important;
}
html body.patrol-mode.patrol-standalone.p9-product-shell.p10-product-shell #patrolPage .p7-module-head p{
  color:#536b7d!important;font-size:13.4px!important;font-weight:560!important;
}
html body.patrol-mode.patrol-standalone.p9-product-shell.p10-product-shell #patrolPage .patrol-panel-head h3{
  color:#102f46!important;font-size:20px!important;font-weight:840!important;
}
html body.patrol-mode.patrol-standalone.p9-product-shell.p10-product-shell #patrolPage .patrol-panel-head small{
  color:#607686!important;font-size:11.8px!important;
}

/* KPI bands: intentional functional color, never washed out. */
html body.patrol-mode.patrol-standalone.p9-product-shell.p10-product-shell #p7ProjectWorkspace .p7-domain-kpis>article:first-child,
html body.patrol-mode.patrol-standalone.p9-product-shell.p10-product-shell #p7StoreWorkspace .p7-domain-kpis>article:first-child,
html body.patrol-mode.patrol-standalone.p9-product-shell.p10-product-shell #patrolPersonZone .p7-responsibility-kpis>article:first-child{
  background:#15384f!important;border-color:#15384f!important;color:#fff!important;
}
html body.patrol-mode.patrol-standalone.p9-product-shell.p10-product-shell #p7ProjectWorkspace .p7-domain-kpis>article:first-child span,
html body.patrol-mode.patrol-standalone.p9-product-shell.p10-product-shell #p7StoreWorkspace .p7-domain-kpis>article:first-child span,
html body.patrol-mode.patrol-standalone.p9-product-shell.p10-product-shell #patrolPersonZone .p7-responsibility-kpis>article:first-child span{color:#b9cbd6!important}
html body.patrol-mode.patrol-standalone.p9-product-shell.p10-product-shell #p7ProjectWorkspace .p7-domain-kpis>article:first-child strong,
html body.patrol-mode.patrol-standalone.p9-product-shell.p10-product-shell #p7StoreWorkspace .p7-domain-kpis>article:first-child strong,
html body.patrol-mode.patrol-standalone.p9-product-shell.p10-product-shell #patrolPersonZone .p7-responsibility-kpis>article:first-child strong{color:#fff!important}
html body.patrol-mode.patrol-standalone.p9-product-shell.p10-product-shell #p7ProjectWorkspace .p7-domain-kpis>article:first-child small,
html body.patrol-mode.patrol-standalone.p9-product-shell.p10-product-shell #p7StoreWorkspace .p7-domain-kpis>article:first-child small,
html body.patrol-mode.patrol-standalone.p9-product-shell.p10-product-shell #patrolPersonZone .p7-responsibility-kpis>article:first-child small{color:#d3e0e7!important}
html body.patrol-mode.patrol-standalone.p9-product-shell.p10-product-shell #patrolPersonZone .p7-responsibility-kpis>article:nth-child(2){background:#eef4fb!important}
html body.patrol-mode.patrol-standalone.p9-product-shell.p10-product-shell #patrolPersonZone .p7-responsibility-kpis>article:nth-child(3){background:#edf7f4!important}
html body.patrol-mode.patrol-standalone.p9-product-shell.p10-product-shell #patrolPersonZone .p7-responsibility-kpis>article:nth-child(4){background:#fbf4e8!important}

/* Tables: stronger scanning and more legible rows. */
html body.patrol-mode.patrol-standalone.p9-product-shell.p10-product-shell #patrolPage .p7-object-table-panel thead th,
html body.patrol-mode.patrol-standalone.p9-product-shell.p10-product-shell #patrolPersonZone .p7-responsibility-grid thead th{
  background:#173b54!important;color:#f7fbfd!important;border-color:#173b54!important;font-size:11.4px!important;font-weight:800!important;letter-spacing:.01em!important;
}
html body.patrol-mode.patrol-standalone.p9-product-shell.p10-product-shell #patrolPage .p7-object-table-panel tbody td,
html body.patrol-mode.patrol-standalone.p9-product-shell.p10-product-shell #patrolPersonZone .p7-responsibility-grid tbody td{
  color:#304b5e!important;font-size:11.8px!important;line-height:1.5!important;border-bottom-color:#e5ebee!important;padding-top:10px!important;padding-bottom:10px!important;
}
html body.patrol-mode.patrol-standalone.p9-product-shell.p10-product-shell #patrolPage .p7-object-table-panel tbody tr:nth-child(even),
html body.patrol-mode.patrol-standalone.p9-product-shell.p10-product-shell #patrolPersonZone .p7-responsibility-grid tbody tr:nth-child(even){background:#f8fafb!important}
html body.patrol-mode.patrol-standalone.p9-product-shell.p10-product-shell #patrolPersonZone .p7-responsibility-grid tbody td:first-child,
html body.patrol-mode.patrol-standalone.p9-product-shell.p10-product-shell #patrolPersonZone .p7-responsibility-grid tbody td:nth-child(2){color:#17384f!important;font-weight:760!important}
html body.patrol-mode.patrol-standalone.p9-product-shell.p10-product-shell #patrolPersonZone .p7-responsibility-grid{
  border:1px solid #d8e2e7!important;border-radius:12px!important;overflow:hidden!important;background:#fff!important;
}

/* Output: one deliberate dark focal surface, not a pale developer panel. */
html body.patrol-mode.patrol-standalone.p9-product-shell.p10-product-shell.patrol-results-ready[data-p7-view="output"] #patrolPage>#patrolOutputZone>.p7-focus-export-panel,
html body.patrol-mode.patrol-standalone.p9-product-shell.p10-product-shell #patrolOutputZone>.p7-focus-export-panel{
  order:2!important;padding:22px 24px!important;border:0!important;border-radius:12px!important;background:#15384f!important;color:#fff!important;box-shadow:0 8px 22px rgba(13,42,63,.11)!important;
}
html body.patrol-mode.patrol-standalone.p9-product-shell.p10-product-shell #patrolOutputZone>.p7-focus-export-panel h3,
html body.patrol-mode.patrol-standalone.p9-product-shell.p10-product-shell #patrolOutputZone>.p7-focus-export-panel .patrol-panel-head h3{color:#fff!important;font-size:21px!important}
html body.patrol-mode.patrol-standalone.p9-product-shell.p10-product-shell #patrolOutputZone>.p7-focus-export-panel small{color:#c5d6df!important;font-size:11.2px!important}
html body.patrol-mode.patrol-standalone.p9-product-shell.p10-product-shell #patrolOutputZone>.p7-focus-export-panel .btn:not(.primary){background:#fff!important;border-color:#fff!important;color:#24465c!important}
html body.patrol-mode.patrol-standalone.p9-product-shell.p10-product-shell #patrolOutputZone>.p7-focus-export-panel .btn.primary{background:#66c7bd!important;border-color:#66c7bd!important;color:#0b2e3e!important;font-weight:820!important}
html body.patrol-mode.patrol-standalone.p9-product-shell.p10-product-shell #patrolOutputZone .patrol-copy-card h3{color:#102f46!important;font-size:15.5px!important;font-weight:820!important}
html body.patrol-mode.patrol-standalone.p9-product-shell.p10-product-shell #patrolOutputZone .patrol-copy-card p{color:#5f7484!important;font-size:10.8px!important}

/* Input: make the contract/guide panel a deliberate dark companion surface. */
html body.patrol-mode.patrol-standalone.p9-product-shell.p10-product-shell #patrolPage .patrol-contract-card.p7-input-guide{
  padding:21px 22px!important;border:0!important;border-radius:12px!important;background:#17394f!important;color:#edf5f8!important;box-shadow:0 8px 22px rgba(13,42,63,.10)!important;
}
html body.patrol-mode.patrol-standalone.p9-product-shell.p10-product-shell #patrolPage .patrol-contract-card.p7-input-guide>.p7-guide-head span{color:#76d2c8!important;font-size:9.8px!important;font-weight:800!important}
html body.patrol-mode.patrol-standalone.p9-product-shell.p10-product-shell #patrolPage .patrol-contract-card.p7-input-guide>.p7-guide-head strong{color:#fff!important;font-size:18.5px!important;font-weight:820!important}
html body.patrol-mode.patrol-standalone.p9-product-shell.p10-product-shell #patrolPage .patrol-contract-card.p7-input-guide>.p7-guide-grid article{border-top-color:rgba(255,255,255,.11)!important;background:transparent!important;padding:12px 0!important}
html body.patrol-mode.patrol-standalone.p9-product-shell.p10-product-shell #patrolPage .patrol-contract-card.p7-input-guide>.p7-guide-grid b{color:#eef6f8!important;font-size:11.2px!important;font-weight:760!important}
html body.patrol-mode.patrol-standalone.p9-product-shell.p10-product-shell #patrolPage .patrol-contract-card.p7-input-guide>.p7-guide-grid small{color:#b4c6d0!important;font-size:10.4px!important;line-height:1.55!important}
html body.patrol-mode.patrol-standalone.p9-product-shell.p10-product-shell #patrolPage .patrol-contract-card.p7-input-guide>p{border-top-color:rgba(255,255,255,.11)!important;color:#b9c9d2!important;font-size:10.4px!important}

/* GIS: slightly deeper analysis rail for spatial hierarchy while map remains the hero. */
html body.patrol-mode.patrol-standalone.p9-product-shell.p10-product-shell #patrolAnalysisZone .patrol-map-intelligence-panel{
  background:#edf4f3!important;border-color:#d4e1df!important;
}
html body.patrol-mode.patrol-standalone.p9-product-shell.p10-product-shell #patrolAnalysisZone .patrol-map-intelligence-title span{color:#10394a!important;font-size:15.5px!important}

/* History empty states: visible and intentional. */
html body.patrol-mode.patrol-standalone.p9-product-shell.p10-product-shell #patrolCompareZone .patrol-chart-svg,
html body.patrol-mode.patrol-standalone.p9-product-shell.p10-product-shell #patrolCompareZone .patrol-stack-chart,
html body.patrol-mode.patrol-standalone.p9-product-shell.p10-product-shell #patrolCompareZone .patrol-change-bars,
html body.patrol-mode.patrol-standalone.p9-product-shell.p10-product-shell #patrolCompareZone .patrol-management-summary-body{
  background:#f5f8f9!important;border-color:#cad8de!important;color:#5d7484!important;font-weight:650!important;
}


/* P11 | page-by-page visual surgery */
:root{--p11-nav:#102c3d;--p11-ink:#102f43;--p11-text:#344d5f;--p11-muted:#697d8b;--p11-bg:#f5f7f6;--p11-line:#dce5e5;--p11-teal:#15897e;--p11-blue:#316ed1;--p11-amber:#b97822;--p11-red:#ba4f4f;--p11-green:#2e8467}
html body.p11-product-shell{background:var(--p11-bg)!important;color:var(--p11-text)!important;font-family:"Microsoft YaHei UI","Microsoft YaHei","PingFang SC","Noto Sans CJK SC",system-ui,sans-serif!important}
body.p11-product-shell .p7-sidebar{background:linear-gradient(180deg,#102c3d,#0d2636)!important}
body.p11-product-shell .p7-side-nav button.active{background:#1a475b!important;box-shadow:inset 3px 0 0 #64cec2!important}
body.p11-product-shell .p7-topbar{background:rgba(255,255,255,.97)!important;border-bottom:1px solid #e0e7e7!important;box-shadow:none!important}
body.p11-product-shell #patrolPage.p7-main{background:var(--p11-bg)!important;padding-top:24px!important}
body.p11-product-shell #patrolPage .p7-module-head{padding:3px 0 16px 17px!important;margin:0 0 14px!important;border-bottom:1px solid var(--p11-line)!important;background:transparent!important;position:relative!important}
body.p11-product-shell #patrolPage .p7-module-head::before{content:"";position:absolute;left:0;top:7px;bottom:18px;width:3px;border-radius:9px;background:var(--p11-teal)}
body.p11-product-shell #patrolPage .p7-module-head h2{font-size:28px!important;line-height:1.12!important;letter-spacing:-.035em!important;font-weight:830!important;color:var(--p11-ink)!important}
body.p11-product-shell #patrolPage .p7-module-head p{font-size:11.7px!important;line-height:1.6!important;color:#607583!important;font-weight:540!important}
body.p11-product-shell #patrolPage .patrol-section-kicker{font-size:9.4px!important;color:#13786f!important;font-weight:820!important;letter-spacing:.08em!important}
body.p11-product-shell #patrolPage .patrol-panel-head h3{font-size:17px!important;color:#15364c!important;font-weight:810!important}
body.p11-product-shell #patrolPage .patrol-panel-head small{font-size:10.4px!important;color:#6a7d8a!important;line-height:1.55!important}
body.p11-product-shell #patrolPage .patrol-panel{border:1px solid var(--p11-line)!important;border-radius:11px!important;background:#fff!important;box-shadow:none!important}
body.p11-product-shell #patrolPage .btn{border-radius:8px!important;box-shadow:none!important;font-weight:700!important}
body.p11-product-shell #patrolPage .btn.primary{background:var(--p11-teal)!important;border-color:var(--p11-teal)!important;color:#fff!important}

/* Overview: compress and establish a true decision hierarchy. */
body.p11-product-shell #patrolDashboard .p4-viz-kpis{grid-template-columns:1.18fr repeat(4,1fr) 1.08fr!important;gap:0!important;border:1px solid var(--p11-line)!important;border-radius:12px!important;overflow:hidden!important;background:#fff!important;margin-bottom:12px!important}
body.p11-product-shell #patrolDashboard .p4-viz-kpis>article{min-height:94px!important;padding:14px 15px!important;border:0!important;border-right:1px solid #e4eaea!important;border-radius:0!important;background:#fff!important;box-shadow:none!important}
body.p11-product-shell #patrolDashboard .p4-viz-kpis>article::before{display:none!important}
body.p11-product-shell #patrolDashboard .p4-viz-kpis>article:first-child{background:#173d52!important;color:#fff!important}
body.p11-product-shell #patrolDashboard .p4-viz-kpis>article:first-child span,body.p11-product-shell #patrolDashboard .p4-viz-kpis>article:first-child small{color:#c6d6df!important}
body.p11-product-shell #patrolDashboard .p4-viz-kpis>article:first-child strong{color:#fff!important}
body.p11-product-shell #patrolDashboard .p4-viz-kpis>article:last-child{border-right:0!important;background:#fff8f4!important}
body.p11-product-shell #patrolDashboard .p4-viz-kpis>article.attention strong{color:var(--p11-red)!important}
body.p11-product-shell #patrolDashboard .p4-viz-kpis span{font-size:10px!important;color:#637786!important}
body.p11-product-shell #patrolDashboard .p4-viz-kpis strong{font-size:30px!important;font-weight:850!important;color:#14344c!important}
body.p11-product-shell #patrolDashboard .p4-viz-kpis small{font-size:9.7px!important;color:#758694!important}
body.p11-product-shell #patrolDashboard .p4-viz-grid{gap:10px!important}
body.p11-product-shell #patrolDashboard .p4-viz-grid>.p4-chart-panel{padding:18px 19px!important;border:1px solid var(--p11-line)!important;border-radius:11px!important;box-shadow:none!important}
body.p11-product-shell #patrolDashboard .p4-viz-grid>.p4-reg-panel,body.p11-product-shell #patrolDashboard .p4-viz-grid>.p4-coverage-panel,body.p11-product-shell #patrolDashboard .p4-viz-grid>.p4-priority-panel{border-top:1px solid var(--p11-line)!important}
body.p11-product-shell #patrolDashboard .hf31-action-section-title,body.p11-product-shell #patrolDashboard #patrolActionHighlights{display:none!important}
body.p11-product-shell #patrolDashboard .patrol-leadership-summary{margin:10px 0!important;padding:12px 15px!important;border:0!important;border-left:3px solid var(--p11-teal)!important;border-radius:8px!important;background:#eaf4f1!important;color:#315d58!important;font-size:11.5px!important;font-weight:650!important;line-height:1.65!important}
body.p11-product-shell #patrolDashboard .patrol-progress-overview-panel{margin-top:10px!important;padding:14px 16px!important}
body.p11-product-shell #patrolDashboard .patrol-progress-overview>*{min-height:70px!important;padding:10px 14px!important}
body.p11-product-shell #patrolDashboard .patrol-domain-structure-grid{margin-top:10px!important;gap:10px!important}
body.p11-product-shell #patrolDashboard .patrol-domain-structure-grid>.patrol-panel{padding:16px 17px!important;border-top:1px solid var(--p11-line)!important}
body.p11-product-shell #patrolDashboard .patrol-identity-strip{display:none!important}

/* Project/store/responsibility metric bands: no rainbow KPI cards. */
body.p11-product-shell #p7ProjectWorkspace .p7-domain-kpis,body.p11-product-shell #p7StoreWorkspace .p7-domain-kpis,body.p11-product-shell #patrolPersonZone .p7-responsibility-kpis{gap:0!important;border:1px solid var(--p11-line)!important;border-radius:12px!important;overflow:hidden!important;background:#fff!important;margin-bottom:12px!important;box-shadow:none!important}
body.p11-product-shell #p7ProjectWorkspace .p7-domain-kpis>article,body.p11-product-shell #p7StoreWorkspace .p7-domain-kpis>article,body.p11-product-shell #patrolPersonZone .p7-responsibility-kpis>article{min-height:92px!important;padding:14px 15px!important;border:0!important;border-right:1px solid #e3e9e9!important;border-radius:0!important;background:#fff!important;box-shadow:none!important;color:var(--p11-text)!important}
body.p11-product-shell #p7ProjectWorkspace .p7-domain-kpis>article:first-child,body.p11-product-shell #p7StoreWorkspace .p7-domain-kpis>article:first-child,body.p11-product-shell #patrolPersonZone .p7-responsibility-kpis>article:first-child{background:#fff!important;color:var(--p11-text)!important}
body.p11-product-shell #p7ProjectWorkspace .p7-domain-kpis>article::before,body.p11-product-shell #p7StoreWorkspace .p7-domain-kpis>article::before,body.p11-product-shell #patrolPersonZone .p7-responsibility-kpis>article::before{display:none!important}
body.p11-product-shell #p7ProjectWorkspace .p7-domain-kpis strong,body.p11-product-shell #p7StoreWorkspace .p7-domain-kpis strong,body.p11-product-shell #patrolPersonZone .p7-responsibility-kpis strong{font-size:28px!important;color:#14344c!important}
body.p11-product-shell #p7ProjectWorkspace .p7-domain-kpis>article:first-child span,body.p11-product-shell #p7ProjectWorkspace .p7-domain-kpis>article:first-child small,body.p11-product-shell #p7StoreWorkspace .p7-domain-kpis>article:first-child span,body.p11-product-shell #p7StoreWorkspace .p7-domain-kpis>article:first-child small,body.p11-product-shell #patrolPersonZone .p7-responsibility-kpis>article:first-child span,body.p11-product-shell #patrolPersonZone .p7-responsibility-kpis>article:first-child small{color:#647987!important}
body.p11-product-shell #p7ProjectWorkspace .p7-domain-kpis>article:first-child strong,body.p11-product-shell #p7StoreWorkspace .p7-domain-kpis>article:first-child strong,body.p11-product-shell #patrolPersonZone .p7-responsibility-kpis>article:first-child strong{color:#14344c!important}
body.p11-product-shell #p7ProjectWorkspace .p7-analysis-split,body.p11-product-shell #p7StoreWorkspace .p7-analysis-split{gap:10px!important}
body.p11-product-shell #p7ProjectWorkspace .p7-analysis-split>.patrol-panel,body.p11-product-shell #p7StoreWorkspace .p7-analysis-split>.patrol-panel{border-top:1px solid var(--p11-line)!important;padding:18px!important}
body.p11-product-shell #patrolPage .p7-bar-track{height:8px!important;background:#e5ebed!important;border-radius:99px!important}
body.p11-product-shell #patrolPage .p7-bar-track i{border-radius:99px!important;background:var(--p11-blue)!important}
body.p11-product-shell #patrolPage .p7-gap-item{border:0!important;border-left:3px solid #d7e1e2!important;border-radius:7px!important;background:#f7f9f9!important}
body.p11-product-shell #patrolPage .p7-gap-item.warn{border-left-color:var(--p11-amber)!important;background:#fff9ef!important}
body.p11-product-shell #patrolPage .p7-gap-item.good{border-left-color:var(--p11-green)!important;background:#f1f8f5!important}
body.p11-product-shell #patrolPage .p7-filterbar{background:#f2f5f5!important}
body.p11-product-shell #patrolPage .p7-object-table th,body.p11-product-shell #patrolPersonZone .p9-responsibility-table thead th{background:#173d52!important;color:#f4f8fa!important;border-bottom:0!important}
body.p11-product-shell #patrolPage .p7-object-table td{font-size:11.5px!important;color:#354f61!important}
body.p11-product-shell #patrolPage .p7-cell-main b{color:#17364c!important;font-weight:760!important}
body.p11-product-shell #patrolPage .p7-cell-main small{color:#738491!important;font-size:10px!important}
body.p11-product-shell #patrolPage .p7-detail-btn{background:transparent!important;color:#2468ad!important;border:0!important;font-weight:700!important;padding:4px 0!important}

/* Purpose-built empty store page. */
.p11-domain-empty{display:none}
body.p11-product-shell #p7StoreWorkspace.p11-empty-domain>.p7-domain-kpis,body.p11-product-shell #p7StoreWorkspace.p11-empty-domain>.p7-analysis-split,body.p11-product-shell #p7StoreWorkspace.p11-empty-domain>.p7-object-table-panel,body.p11-product-shell #p7StoreWorkspace.p11-empty-domain>#p7StoreDomainMount{display:none!important}
body.p11-product-shell #p7StoreWorkspace.p11-empty-domain>.p11-domain-empty{display:block!important}
.p11-empty-hero{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(340px,.75fr);gap:14px;align-items:stretch}.p11-empty-main{padding:30px 32px;border:1px solid var(--p11-line);border-radius:12px;background:#fff;min-height:300px;display:flex;flex-direction:column;justify-content:center}.p11-empty-icon{width:52px;height:52px;border-radius:14px;display:grid;place-items:center;background:#e7f4f1;color:var(--p11-teal);font-size:24px;font-weight:850;margin-bottom:15px}.p11-empty-main h3{margin:0;font-size:24px;color:var(--p11-ink);letter-spacing:-.025em}.p11-empty-main p{max-width:640px;margin:9px 0 20px;font-size:12px;line-height:1.75;color:#647886}.p11-empty-actions{display:flex;gap:8px}.p11-empty-side{padding:22px;border-radius:12px;background:#173d52;color:#fff}.p11-empty-side>span{display:block;font-size:9.5px;letter-spacing:.08em;color:#78d1c7;font-weight:800}.p11-empty-side h4{margin:5px 0 13px;font-size:17px}.p11-empty-side ul{list-style:none;margin:0;padding:0}.p11-empty-side li{display:flex;align-items:center;gap:9px;padding:10px 0;border-top:1px solid rgba(255,255,255,.10);font-size:11px;color:#d4e0e6}.p11-empty-side li::before{content:"✓";width:18px;height:18px;border-radius:50%;display:grid;place-items:center;background:rgba(93,201,187,.16);color:#75d5c9;font-size:10px;font-weight:800}

/* Responsibility matrix semantics. */
body.p11-product-shell #patrolPersonZone .p7-responsibility-kpis{grid-template-columns:1fr 1fr 1fr 1.15fr!important}
body.p11-product-shell #patrolPersonZone .p7-responsibility-kpis>article:last-child{border-right:0!important;background:#fff8ef!important}
body.p11-product-shell #patrolPersonZone .p9-responsibility-table tbody td{height:50px!important;color:#3d5566!important}
body.p11-product-shell #patrolPersonZone .p9-resp-progress.p11-unavailable{display:inline-flex!important;align-items:center!important;gap:5px!important;color:#7a8993!important;font-size:10px!important}.p11-product-shell #patrolPersonZone .p9-resp-progress.p11-unavailable::before{content:"—";font-weight:800}.p11-product-shell #patrolPersonZone .p9-resp-progress.p11-unavailable i{display:none!important}
.p11-gap-badge{display:inline-block;max-width:100%;padding:4px 7px;border-radius:6px;font-size:10px;font-weight:700;line-height:1.35}.p11-gap-badge.quiet{background:#f2f5f5;color:#667985}.p11-gap-badge.warn{background:#fff4df;color:#8c5d17}.p11-gap-badge.danger{background:#fff0ee;color:#a94646}

/* GIS: map-first with a bounded scroll rail. This removes the giant white void. */
body.p11-product-shell #patrolAnalysisZone .patrol-map-intelligence-layout{align-items:start!important;grid-template-columns:minmax(0,2.25fr) minmax(300px,.62fr)!important;gap:12px!important;padding:12px!important}
body.p11-product-shell #patrolAnalysisZone .patrol-map-canvas-shell{aspect-ratio:5/4!important;min-height:0!important;height:auto!important;background:#f5f6ef!important}
body.p11-product-shell #patrolAnalysisZone .patrol-map-canvas-shell>canvas{display:block!important;width:100%!important;height:100%!important;aspect-ratio:5/4!important;min-height:0!important;max-height:none!important;object-fit:contain!important}
body.p11-product-shell #patrolAnalysisZone .patrol-map-intelligence-panel{max-height:650px!important;overflow:auto!important;overscroll-behavior:contain!important;scrollbar-width:thin!important;padding:13px!important;background:#edf4f3!important}
body.p11-product-shell #patrolAnalysisZone .patrol-map-intelligence-title{position:sticky!important;top:-13px!important;z-index:2!important;padding:12px 0 10px!important;background:#edf4f3!important;border-bottom:1px solid #d6e2e0!important}
body.p11-product-shell #patrolAnalysisZone .patrol-map-conclusion{margin:0 12px 9px!important;padding:10px 12px!important;background:#edf5f2!important;border-left:3px solid var(--p11-teal)!important;color:#4a6864!important}
body.p11-product-shell #patrolAnalysisZone .patrol-map-actions{padding:0 12px 12px!important;display:grid!important;grid-template-columns:1fr 1.35fr 1.1fr 1.1fr 1fr 1fr!important;gap:6px!important}.p11-product-shell #patrolAnalysisZone .patrol-map-actions .btn{width:100%!important}

/* Output: result objects first, formats second. */
body.p11-product-shell #patrolOutputZone>.p7-output-guide{padding:0!important;background:transparent!important;gap:8px!important}.p11-product-shell #patrolOutputZone>.p7-output-guide article{min-height:70px!important;padding:12px 13px!important;border:1px solid var(--p11-line)!important;border-radius:9px!important;background:#fff!important}.p11-product-shell #patrolOutputZone>.p7-focus-export-panel{padding:19px 21px!important;border-radius:11px!important;background:#173d52!important;box-shadow:none!important}.p11-product-shell #patrolOutputZone .patrol-copy-grid{gap:8px!important}.p11-product-shell #patrolOutputZone .patrol-copy-card{min-height:124px!important;padding:14px!important}.p11-product-shell #patrolOutputZone>.patrol-panel{border-top:1px solid var(--p11-line)!important}.p11-product-shell #patrolOutputZone .patrol-command-export-grid,.p11-product-shell #patrolOutputZone .patrol-writing-actions{gap:6px!important}.p11-product-shell #patrolOutputZone .patrol-command-export-grid .btn.primary{background:#173d52!important;border-color:#173d52!important}.p11-product-shell #patrolOutputZone .patrol-brief{min-height:145px!important;background:#f8faf9!important;border:1px solid var(--p11-line)!important}

/* History: baseline state instead of unloaded charts. */
.p11-history-baseline-panel{display:none}.p11-product-shell #patrolCompareZone.p11-single-history .patrol-compare-autoload,.p11-product-shell #patrolCompareZone.p11-single-history .patrol-compare-dashboard{display:none!important}.p11-product-shell #patrolCompareZone.p11-single-history .p11-history-baseline-panel{display:block!important}.p11-history-baseline-panel{border:1px solid var(--p11-line);border-radius:12px;background:#fff;overflow:hidden}.p11-history-baseline-head{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:20px;align-items:center;padding:24px 26px;background:linear-gradient(110deg,#173d52,#1b4b58);color:#fff}.p11-history-baseline-head span{display:block;font-size:9.5px;color:#81d5cb;font-weight:800;letter-spacing:.08em}.p11-history-baseline-head h3{margin:5px 0;font-size:24px}.p11-history-baseline-head p{margin:0;color:#ccdae1;font-size:11.2px;line-height:1.6}.p11-history-count{min-width:96px;text-align:center;padding:11px 15px;border-radius:10px;background:rgba(255,255,255,.10)}.p11-history-count strong{display:block;font-size:30px}.p11-history-count small{font-size:9.5px;color:#cbd9e0}.p11-history-baseline-body{padding:20px 22px}.p11-history-metrics{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));border:1px solid var(--p11-line);border-radius:10px;overflow:hidden}.p11-history-metrics article{padding:13px 14px;min-height:82px;border-right:1px solid var(--p11-line)}.p11-history-metrics article:last-child{border-right:0}.p11-history-metrics span{font-size:9.8px;color:#6d7f8c}.p11-history-metrics strong{display:block;margin:6px 0 2px;font-size:24px;color:#15364b}.p11-history-metrics small{font-size:9.5px;color:#81909a}.p11-history-next{margin-top:16px;padding:17px 18px;border-radius:10px;background:#f3f7f6}.p11-history-next h4{margin:0 0 10px;color:#17384d;font-size:14px}.p11-history-next-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:7px}.p11-history-next-grid span{padding:10px 11px;border:1px solid #dde6e5;border-radius:8px;background:#fff;color:#526977;font-size:10.5px;font-weight:650}

/* Input: a calmer production entry page. */
body.p11-product-shell #patrolInputZone .p7-input-heading h2{font-size:29px!important}.p11-product-shell #patrolInputZone .patrol-one-paste-input{min-height:285px!important;max-height:400px!important;background:#fcfdfd!important;color:#1d3a4f!important}.p11-product-shell #patrolInputZone .patrol-contract-card.p7-input-guide{background:#173d52!important}.p11-product-shell #patrolInputZone .p7-guide-grid article{padding:10px 0!important}
body.p11-product-shell .patrol-empty-card{min-height:72px!important;border:1px dashed #cad8d9!important;border-radius:8px!important;background:#f5f8f7!important;color:#5d7380!important;font-size:10.8px!important;font-weight:650!important}
@media(max-width:1680px){body.p11-product-shell #patrolDashboard .p4-viz-kpis{grid-template-columns:repeat(3,minmax(0,1fr))!important}.p11-product-shell #patrolAnalysisZone .patrol-map-intelligence-panel{max-height:600px!important}}
@media(max-width:1180px){.p11-empty-hero{grid-template-columns:1fr!important}.p11-product-shell #patrolAnalysisZone .patrol-map-intelligence-layout{grid-template-columns:1fr!important}.p11-product-shell #patrolAnalysisZone .patrol-map-intelligence-panel{max-height:none!important;overflow:visible!important}.p11-product-shell #patrolAnalysisZone .patrol-map-actions{grid-template-columns:repeat(2,minmax(0,1fr))!important}.p11-history-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}.p11-history-next-grid{grid-template-columns:1fr 1fr}}

/* P12 | restrained enterprise palette + stronger typographic hierarchy
   Research direction: Fluent 2 neutral/brand/semantic separation, Ant Design restraint/certainty,
   Carbon tokenized surfaces. One brand hue carries interaction; semantic hues only carry meaning. */
body.p12-product-shell{
  --p12-nav:#0f2d42;
  --p12-nav-2:#0b2537;
  --p12-ink:#102a43;
  --p12-text:#334e68;
  --p12-muted:#667b8c;
  --p12-bg:#f3f6f8;
  --p12-surface:#ffffff;
  --p12-subtle:#f7f9fb;
  --p12-line:#d9e2ec;
  --p12-brand:#2563eb;
  --p12-brand-dark:#1d4ed8;
  --p12-brand-soft:#eef4ff;
  --p12-success:#2f7d5a;
  --p12-warning:#a86f18;
  --p12-danger:#b84743;
  --p11-nav:var(--p12-nav);
  --p11-ink:var(--p12-ink);
  --p11-text:var(--p12-text);
  --p11-muted:var(--p12-muted);
  --p11-bg:var(--p12-bg);
  --p11-line:var(--p12-line);
  --p11-teal:var(--p12-brand);
  --p11-blue:var(--p12-brand);
  --p11-amber:var(--p12-warning);
  --p11-red:var(--p12-danger);
  --p11-green:var(--p12-success);
  background:var(--p12-bg)!important;
  color:var(--p12-text)!important;
}
/* App chrome: brand blue is the only decorative hue. */
body.p12-product-shell .p7-sidebar{background:linear-gradient(180deg,var(--p12-nav),var(--p12-nav-2))!important;box-shadow:8px 0 28px rgba(15,45,66,.06)!important}
body.p12-product-shell .p7-side-nav button{color:#cbd8e2!important}
body.p12-product-shell .p7-side-nav button:hover{background:rgba(255,255,255,.055)!important;color:#fff!important}
body.p12-product-shell .p7-side-nav button.active{background:rgba(64,129,223,.18)!important;color:#fff!important;box-shadow:inset 3px 0 0 #6ea8ff!important}
body.p12-product-shell .p7-side-status{border-top-color:rgba(255,255,255,.09)!important}
body.p12-product-shell .p7-topbar{background:rgba(255,255,255,.985)!important;border-bottom:1px solid var(--p12-line)!important}
body.p12-product-shell #patrolPage.p7-main{background:var(--p12-bg)!important}
/* Page headings: remove the green vertical stripe that fought the navy/blue system. */
body.p12-product-shell #patrolPage .p7-module-head{padding-left:0!important;border-bottom-color:var(--p12-line)!important}
body.p12-product-shell #patrolPage .p7-module-head::before{display:none!important}
body.p12-product-shell #patrolPage .patrol-section-kicker{color:var(--p12-brand-dark)!important;font-size:10px!important;letter-spacing:.075em!important}
body.p12-product-shell #patrolPage .p7-module-head h2{color:var(--p12-ink)!important;font-size:29px!important;font-weight:840!important;letter-spacing:-.035em!important}
body.p12-product-shell #patrolPage .p7-module-head p{color:#556d80!important;font-size:12.6px!important;font-weight:560!important;line-height:1.65!important}
body.p12-product-shell #patrolPage .patrol-panel-head h3{color:#173650!important;font-size:17.2px!important}
body.p12-product-shell #patrolPage .patrol-panel-head small{color:#657b8d!important;font-size:11.1px!important}
/* Surfaces: neutral hierarchy instead of blue/green/orange decoration. */
body.p12-product-shell #patrolPage .patrol-panel,
body.p12-product-shell #patrolPage .p4-chart-panel,
body.p12-product-shell #patrolPage .p7-object-table-panel,
body.p12-product-shell #patrolPage .p7-domain-kpis,
body.p12-product-shell #patrolPage .p7-responsibility-kpis{
  border-color:var(--p12-line)!important;
  background:var(--p12-surface)!important;
  box-shadow:0 1px 2px rgba(16,42,67,.035)!important;
}
body.p12-product-shell #patrolDashboard .p4-viz-grid>.p4-reg-panel,
body.p12-product-shell #patrolDashboard .p4-viz-grid>.p4-coverage-panel,
body.p12-product-shell #patrolDashboard .p4-viz-grid>.p4-priority-panel,
body.p12-product-shell #p7ProjectWorkspace .p7-analysis-split>.patrol-panel,
body.p12-product-shell #p7StoreWorkspace .p7-analysis-split>.patrol-panel,
body.p12-product-shell #patrolOutputZone>.patrol-panel{border-top:1px solid var(--p12-line)!important}
/* Buttons: one brand hue. Green is reserved for success status, not primary actions. */
body.p12-product-shell #patrolPage .btn{border-color:#cdd8e3!important;background:#fff!important;color:#29445a!important;border-radius:8px!important}
body.p12-product-shell #patrolPage .btn:hover:not(:disabled){border-color:#9fb4c8!important;background:#f8fbff!important;box-shadow:0 4px 12px rgba(16,42,67,.07)!important}
body.p12-product-shell #patrolPage .btn.primary{background:var(--p12-brand)!important;border-color:var(--p12-brand)!important;color:#fff!important;box-shadow:none!important}
body.p12-product-shell #patrolPage .btn.primary:hover:not(:disabled){background:var(--p12-brand-dark)!important;border-color:var(--p12-brand-dark)!important}
body.p12-product-shell #patrolPage .text-btn,body.p12-product-shell #patrolPage .p7-detail-btn{color:var(--p12-brand-dark)!important}
/* Overview: neutral KPI band with one navy anchor; semantic alert is text-only. */
body.p12-product-shell #patrolDashboard .p4-viz-kpis{border-color:var(--p12-line)!important}
body.p12-product-shell #patrolDashboard .p4-viz-kpis>article{background:#fff!important;border-right-color:#e2e8f0!important}
body.p12-product-shell #patrolDashboard .p4-viz-kpis>article:first-child{background:#173b55!important;color:#fff!important}
body.p12-product-shell #patrolDashboard .p4-viz-kpis>article:first-child span,
body.p12-product-shell #patrolDashboard .p4-viz-kpis>article:first-child small{color:#d5e0e8!important}
body.p12-product-shell #patrolDashboard .p4-viz-kpis>article:last-child{background:#fff!important}
body.p12-product-shell #patrolDashboard .p4-viz-kpis span{color:#62788a!important;font-size:10.4px!important}
body.p12-product-shell #patrolDashboard .p4-viz-kpis strong{color:#14324a!important;font-size:30px!important}
body.p12-product-shell #patrolDashboard .p4-viz-kpis small{color:#758798!important;font-size:10.1px!important}
body.p12-product-shell #patrolDashboard .p4-viz-kpis>article.attention strong{color:var(--p12-danger)!important}
body.p12-product-shell #patrolDashboard .patrol-leadership-summary{background:var(--p12-brand-soft)!important;border-left:3px solid var(--p12-brand)!important;color:#365979!important}
/* Priority cards: remove pastel rainbow effect; use a single neutral surface and semantic icon/badge only. */
body.p12-product-shell #patrolDashboard .hf31-priority-card,
body.p12-product-shell #patrolDashboard .patrol-action-card{background:#fff!important;border-color:var(--p12-line)!important}
/* Domain pages: all KPI tiles use neutral surfaces. */
body.p12-product-shell #p7ProjectWorkspace .p7-domain-kpis>article,
body.p12-product-shell #p7StoreWorkspace .p7-domain-kpis>article,
body.p12-product-shell #patrolPersonZone .p7-responsibility-kpis>article,
body.p12-product-shell #patrolPersonZone .p7-responsibility-kpis>article:last-child{background:#fff!important;color:var(--p12-text)!important;border-right-color:#e2e8f0!important}
body.p12-product-shell #p7ProjectWorkspace .p7-domain-kpis strong,
body.p12-product-shell #p7StoreWorkspace .p7-domain-kpis strong,
body.p12-product-shell #patrolPersonZone .p7-responsibility-kpis strong{color:#173650!important}
/* Charts: brand blue for ordinary comparison. Status colors remain only where they convey 0/1/2+ meaning. */
body.p12-product-shell #patrolPage .p7-bar-track{background:#e7edf3!important}
body.p12-product-shell #patrolPage .p7-bar-track i{background:#3b82d0!important}
body.p12-product-shell #patrolPage .p7-gap-item{background:#f7f9fb!important;border-left-color:#d4dee8!important;color:#435c70!important}
body.p12-product-shell #patrolPage .p7-gap-item.warn{background:#fff9ee!important;border-left-color:#c68a2b!important}
body.p12-product-shell #patrolPage .p7-gap-item.good{background:#f3f8f5!important;border-left-color:#4c8a6c!important}
/* Table system: lighter enterprise header, stronger text, no dark slab unless spatial context requires it. */
body.p12-product-shell #patrolPage .p7-object-table th,
body.p12-product-shell #patrolPersonZone .p9-responsibility-table thead th{
  background:#eaf0f5!important;
  color:#29445a!important;
  border-bottom:1px solid #cfd9e3!important;
  font-size:11.2px!important;
  font-weight:800!important;
}
body.p12-product-shell #patrolPage .p7-object-table td,
body.p12-product-shell #patrolPersonZone .p9-responsibility-table tbody td{color:#344e62!important;font-size:12px!important}
body.p12-product-shell #patrolPage .p7-object-table tbody tr:nth-child(even),
body.p12-product-shell #patrolPersonZone .p9-responsibility-table tbody tr:nth-child(even){background:#f8fafc!important}
body.p12-product-shell #patrolPage .p7-cell-main b,
body.p12-product-shell #patrolPersonZone .p9-resp-grid,
body.p12-product-shell #patrolPersonZone .p9-resp-person{color:#173650!important}
body.p12-product-shell #patrolPage .p7-filterbar{background:#f3f6f9!important;border-color:#e0e7ee!important}
/* Status badges: meaningful colors only. */
body.p12-product-shell .p11-gap-badge.quiet{background:#eef2f5!important;color:#5e7282!important}
body.p12-product-shell .p11-gap-badge.warn{background:#fff4df!important;color:#875815!important}
body.p12-product-shell .p11-gap-badge.danger{background:#fff0ee!important;color:#a94440!important}
/* Store empty state: blue identity instead of teal/mint. */
body.p12-product-shell .p11-empty-icon{background:var(--p12-brand-soft)!important;color:var(--p12-brand)!important}
body.p12-product-shell .p11-empty-side{background:#173b55!important}
body.p12-product-shell .p11-empty-side>span{color:#9fc3ff!important}
body.p12-product-shell .p11-empty-side li{color:#d7e2ea!important}
body.p12-product-shell .p11-empty-side li::before{background:rgba(82,139,230,.18)!important;color:#a9c8ff!important}
/* GIS: remove green cast; use a cool neutral analysis rail. */
body.p12-product-shell #patrolAnalysisZone .patrol-map-intelligence-panel{background:#f2f6fa!important;border-color:#d7e0e8!important}
body.p12-product-shell #patrolAnalysisZone .patrol-map-intelligence-title{background:#f2f6fa!important;border-bottom-color:#d7e0e8!important}
body.p12-product-shell #patrolAnalysisZone .patrol-map-intelligence-title span{color:#173650!important}
body.p12-product-shell #patrolAnalysisZone .patrol-map-conclusion{background:var(--p12-brand-soft)!important;border-left-color:var(--p12-brand)!important;color:#365979!important}
body.p12-product-shell #patrolAnalysisZone .patrol-map-canvas-shell{background:#f7f8f4!important;border-color:#d7e0e8!important}
/* Output: keep one dark anchor, replace mint action buttons with brand blue. */
body.p12-product-shell #patrolOutputZone>.p7-focus-export-panel{background:#173b55!important}
body.p12-product-shell #patrolOutputZone>.p7-focus-export-panel .btn.primary{background:#4f8df7!important;border-color:#4f8df7!important;color:#fff!important}
body.p12-product-shell #patrolOutputZone .patrol-command-export-grid .btn.primary{background:var(--p12-brand)!important;border-color:var(--p12-brand)!important;color:#fff!important}
body.p12-product-shell #patrolOutputZone .patrol-brief{background:#f7f9fb!important;border-color:var(--p12-line)!important;color:#344e62!important}
/* History: solid deep-blue baseline; blue accent, no teal gradient. */
body.p12-product-shell .p11-history-baseline-head{background:#173b55!important}
body.p12-product-shell .p11-history-baseline-head span{color:#a9c8ff!important}
body.p12-product-shell .p11-history-next{background:#f3f6fa!important}
body.p12-product-shell .p11-history-next-grid span{border-color:#dbe3eb!important;color:#435d71!important}
/* Input: companion panel stays navy; accents use brand blue. */
body.p12-product-shell #patrolInputZone .patrol-contract-card.p7-input-guide{background:#173b55!important}
body.p12-product-shell #patrolInputZone .patrol-contract-card.p7-input-guide>.p7-guide-head span{color:#a9c8ff!important}
body.p12-product-shell #patrolInputZone .patrol-one-paste-input{background:#fff!important;color:#203d53!important;border-color:#cfd9e3!important}
/* Empty placeholders: crisp neutral instead of green-gray. */
body.p12-product-shell .patrol-empty-card{background:#f7f9fb!important;border-color:#cfd9e3!important;color:#5e7384!important}
/* Focus/accessibility: brand ring, not teal. */
body.p12-product-shell button:focus-visible,
body.p12-product-shell input:focus-visible,
body.p12-product-shell select:focus-visible,
body.p12-product-shell textarea:focus-visible{outline:2px solid #5b8ff9!important;outline-offset:2px!important}

/* P12.1 | remove residual mint/teal accents left by older high-specificity generations. */
html body.patrol-mode.patrol-standalone.p9-product-shell.p10-product-shell.p11-product-shell.p12-product-shell #patrolPage .patrol-section-kicker,
html body.patrol-mode.patrol-standalone.p9-product-shell.p10-product-shell.p11-product-shell.p12-product-shell #patrolPage .patrol-eyebrow,
html body.patrol-mode.patrol-standalone.p9-product-shell.p10-product-shell.p11-product-shell.p12-product-shell #patrolPage .p7-input-kicker,
html body.patrol-mode.patrol-standalone.p9-product-shell.p10-product-shell.p11-product-shell.p12-product-shell #patrolPage .p7-guide-head span{
  color:#2f6fbb!important;
}
html body.patrol-mode.patrol-standalone.p9-product-shell.p10-product-shell.p11-product-shell.p12-product-shell #patrolOutputZone>.p7-focus-export-panel .btn.primary{
  background:#4b86d5!important;border-color:#4b86d5!important;color:#fff!important;
}
html body.patrol-mode.patrol-standalone.p9-product-shell.p10-product-shell.p11-product-shell.p12-product-shell #patrolOutputZone .patrol-copy-card>span{
  background:#eef4fb!important;color:#315f8f!important;border-color:#d8e5f2!important;
}
html body.patrol-mode.patrol-standalone.p9-product-shell.p10-product-shell.p11-product-shell.p12-product-shell #patrolOutputZone .patrol-copy-card:nth-child(n) .btn.primary{
  background:#2f6fbb!important;border-color:#2f6fbb!important;color:#fff!important;
}
html body.patrol-mode.patrol-standalone.p9-product-shell.p10-product-shell.p11-product-shell.p12-product-shell #patrolAnalysisZone .patrol-map-intelligence-head .patrol-eyebrow{color:#2f6fbb!important}
html body.patrol-mode.patrol-standalone.p9-product-shell.p10-product-shell.p11-product-shell.p12-product-shell #patrolDashboard .patrol-leadership-summary b,
html body.patrol-mode.patrol-standalone.p9-product-shell.p10-product-shell.p11-product-shell.p12-product-shell #patrolDashboard .patrol-leadership-summary strong{color:#214f7e!important}

/* P12.2 | final residual-color cleanup after visual browser review. */
html body.patrol-mode.patrol-standalone.p9-product-shell.p10-product-shell.p11-product-shell.p12-product-shell #patrolInputZone .p7-input-heading{padding-left:0!important}
html body.patrol-mode.patrol-standalone.p9-product-shell.p10-product-shell.p11-product-shell.p12-product-shell #patrolInputZone .p7-input-heading::before{display:none!important;background:transparent!important}
html body.patrol-mode.patrol-standalone.p9-product-shell.p10-product-shell.p11-product-shell.p12-product-shell .p11-history-baseline-head h3{color:#fff!important}
html body.patrol-mode.patrol-standalone.p9-product-shell.p10-product-shell.p11-product-shell.p12-product-shell .p11-history-baseline-head p{color:#d5e1e8!important}
html body.patrol-mode.patrol-standalone.p9-product-shell.p10-product-shell.p11-product-shell.p12-product-shell .p11-history-count small{color:#d5e1e8!important}
html body.patrol-mode.patrol-standalone.p9-product-shell.p10-product-shell.p11-product-shell.p12-product-shell #patrolOutputZone>.patrol-panel{border-color:#d9e2ec!important}


/* P13 | soft-light professional shell + stable spatial review interaction
   Design objective: neutral surfaces carry the product, a desaturated mineral accent carries interaction,
   semantic colors carry only real status. No large dark-blue slabs. */
body.p13-product-shell{
  --p13-canvas:#f4f6f5;
  --p13-surface:#ffffff;
  --p13-surface-soft:#f8faf9;
  --p13-surface-accent:#edf3f1;
  --p13-ink:#26383d;
  --p13-text:#46575d;
  --p13-muted:#758188;
  --p13-line:#dde4e1;
  --p13-line-strong:#cfd9d5;
  --p13-brand:#506f6a;
  --p13-brand-dark:#3f5e59;
  --p13-brand-soft:#e8efed;
  --p13-brand-pale:#f1f5f4;
  --p13-success:#4f7661;
  --p13-warning:#9b6a2e;
  --p13-danger:#b25d56;
  --p12-bg:var(--p13-canvas);
  --p12-surface:var(--p13-surface);
  --p12-subtle:var(--p13-surface-soft);
  --p12-line:var(--p13-line);
  --p12-ink:var(--p13-ink);
  --p12-text:var(--p13-text);
  --p12-muted:var(--p13-muted);
  --p12-brand:var(--p13-brand);
  --p12-brand-dark:var(--p13-brand-dark);
  --p12-brand-soft:var(--p13-brand-soft);
  --p12-success:var(--p13-success);
  --p12-warning:var(--p13-warning);
  --p12-danger:var(--p13-danger);
  --p9-navy:var(--p13-ink);
  --p9-navy-2:var(--p13-brand-dark);
  --p9-bg:var(--p13-canvas);
  background:var(--p13-canvas)!important;
  color:var(--p13-text)!important;
}

/* Light product chrome: the navigation is part of the workspace, not a dark visual wall. */
html body.patrol-mode.patrol-standalone.p13-product-shell .p7-sidebar{
  background:#f7f9f8!important;
  color:var(--p13-text)!important;
  border-right:1px solid var(--p13-line)!important;
  box-shadow:4px 0 20px rgba(38,56,61,.035)!important;
}
html body.patrol-mode.patrol-standalone.p13-product-shell .p7-side-brand{border-bottom-color:var(--p13-line)!important}
html body.patrol-mode.patrol-standalone.p13-product-shell .p7-side-logo{
  background:#fff!important;border:1px solid #d6dfdb!important;box-shadow:0 2px 8px rgba(38,56,61,.05)!important;
}
html body.patrol-mode.patrol-standalone.p13-product-shell .p7-brand-text small{color:#87928f!important}
html body.patrol-mode.patrol-standalone.p13-product-shell .p7-brand-text strong{color:var(--p13-ink)!important}
html body.patrol-mode.patrol-standalone.p13-product-shell .p7-side-nav button,
html body.patrol-mode.patrol-standalone.p13-product-shell .p7-side-input{
  color:#59686e!important;border:1px solid transparent!important;background:transparent!important;
}
html body.patrol-mode.patrol-standalone.p13-product-shell .p7-side-nav button:hover,
html body.patrol-mode.patrol-standalone.p13-product-shell .p7-side-input:hover{
  color:var(--p13-ink)!important;background:#eef2f0!important;border-color:#e3e9e6!important;transform:none!important;
}
html body.patrol-mode.patrol-standalone.p13-product-shell .p7-side-nav button.active{
  color:var(--p13-brand-dark)!important;background:var(--p13-brand-soft)!important;
  border-color:#d5e1dd!important;box-shadow:inset 3px 0 0 var(--p13-brand)!important;
}
html body.patrol-mode.patrol-standalone.p13-product-shell .p7-side-nav button.active .p7-nav-icon{color:var(--p13-brand-dark)!important}
html body.patrol-mode.patrol-standalone.p13-product-shell .p7-nav-arrow{opacity:.28!important}
html body.patrol-mode.patrol-standalone.p13-product-shell .p7-side-nav button.active .p7-nav-arrow{opacity:.62!important}
html body.patrol-mode.patrol-standalone.p13-product-shell .p7-side-separator{background:var(--p13-line)!important}
html body.patrol-mode.patrol-standalone.p13-product-shell .p7-side-foot{border-top-color:var(--p13-line)!important}
html body.patrol-mode.patrol-standalone.p13-product-shell .p7-side-status{border-top-color:var(--p13-line)!important}
html body.patrol-mode.patrol-standalone.p13-product-shell .p7-side-status strong{color:#3f5359!important}
html body.patrol-mode.patrol-standalone.p13-product-shell .p7-side-status small{color:#84908d!important}

html body.patrol-mode.patrol-standalone.p13-product-shell .p7-topbar{
  background:rgba(251,252,251,.97)!important;border-bottom:1px solid var(--p13-line)!important;
  box-shadow:0 1px 0 rgba(38,56,61,.02)!important;backdrop-filter:blur(12px)!important;
}
html body.patrol-mode.patrol-standalone.p13-product-shell .p7-topbar-product{color:#87918f!important}
html body.patrol-mode.patrol-standalone.p13-product-shell .p7-topbar-title-row h1{color:var(--p13-ink)!important}
html body.patrol-mode.patrol-standalone.p13-product-shell .p7-topbar-title-row span,
html body.patrol-mode.patrol-standalone.p13-product-shell .p7-period-chip,
html body.patrol-mode.patrol-standalone.p13-product-shell .p7-compute-chip{
  background:#f4f7f5!important;border-color:var(--p13-line)!important;color:#66756f!important;
}
html body.patrol-mode.patrol-standalone.p13-product-shell #patrolPage.p7-main{background:var(--p13-canvas)!important}

/* Typography and page rhythm: fewer boxed accents, calmer hierarchy, more usable whitespace. */
html body.patrol-mode.patrol-standalone.p13-product-shell #patrolPage .p7-module-head{
  min-height:76px!important;padding:16px 18px!important;margin-bottom:14px!important;
  background:#fbfcfb!important;border:1px solid var(--p13-line)!important;border-radius:14px!important;
  box-shadow:none!important;
}
html body.patrol-mode.patrol-standalone.p13-product-shell #patrolPage .patrol-section-kicker,
html body.patrol-mode.patrol-standalone.p13-product-shell #patrolPage .patrol-eyebrow,
html body.patrol-mode.patrol-standalone.p13-product-shell #patrolPage .p7-input-kicker,
html body.patrol-mode.patrol-standalone.p13-product-shell #patrolPage .p7-guide-head span{color:var(--p13-brand)!important}
html body.patrol-mode.patrol-standalone.p13-product-shell #patrolPage .p7-module-head h2{color:var(--p13-ink)!important;font-size:28px!important;letter-spacing:-.035em!important}
html body.patrol-mode.patrol-standalone.p13-product-shell #patrolPage .p7-module-head p{color:#627177!important}
html body.patrol-mode.patrol-standalone.p13-product-shell #patrolPage .patrol-panel-head h3{color:#30464c!important}
html body.patrol-mode.patrol-standalone.p13-product-shell #patrolPage .patrol-panel-head small{color:#7a878b!important}

html body.patrol-mode.patrol-standalone.p13-product-shell #patrolPage .patrol-panel,
html body.patrol-mode.patrol-standalone.p13-product-shell #patrolPage .p4-chart-panel,
html body.patrol-mode.patrol-standalone.p13-product-shell #patrolPage .p7-object-table-panel,
html body.patrol-mode.patrol-standalone.p13-product-shell #patrolPage .p7-domain-kpis,
html body.patrol-mode.patrol-standalone.p13-product-shell #patrolPage .p7-responsibility-kpis{
  background:var(--p13-surface)!important;border-color:var(--p13-line)!important;
  box-shadow:0 1px 2px rgba(38,56,61,.025)!important;
}

/* Controls: desaturated accent, softer hover, clear focus. */
html body.patrol-mode.patrol-standalone.p13-product-shell #patrolPage .btn,
html body.patrol-mode.patrol-standalone.p13-product-shell .p7-topbar .btn{
  border-color:#d1dbd7!important;background:#fff!important;color:#41565c!important;box-shadow:none!important;
}
html body.patrol-mode.patrol-standalone.p13-product-shell #patrolPage .btn:hover:not(:disabled),
html body.patrol-mode.patrol-standalone.p13-product-shell .p7-topbar .btn:hover:not(:disabled){
  border-color:#b8c8c2!important;background:#f7f9f8!important;box-shadow:0 3px 10px rgba(38,56,61,.05)!important;
}
html body.patrol-mode.patrol-standalone.p13-product-shell #patrolPage .btn.primary,
html body.patrol-mode.patrol-standalone.p13-product-shell .p7-topbar .btn.primary{
  background:var(--p13-brand-dark)!important;border-color:var(--p13-brand-dark)!important;color:#fff!important;
}
html body.patrol-mode.patrol-standalone.p13-product-shell #patrolPage .btn.primary:hover:not(:disabled),
html body.patrol-mode.patrol-standalone.p13-product-shell .p7-topbar .btn.primary:hover:not(:disabled){
  background:#35534e!important;border-color:#35534e!important;
}
html body.patrol-mode.patrol-standalone.p13-product-shell button:focus-visible,
html body.patrol-mode.patrol-standalone.p13-product-shell input:focus-visible,
html body.patrol-mode.patrol-standalone.p13-product-shell select:focus-visible,
html body.patrol-mode.patrol-standalone.p13-product-shell textarea:focus-visible{outline:2px solid #78938d!important;outline-offset:2px!important}

/* Overview: all KPI surfaces remain light; emphasis comes from typography and one quiet accent surface. */
html body.patrol-mode.patrol-standalone.p13-product-shell #patrolDashboard .p4-viz-kpis{background:#fff!important;border-color:var(--p13-line)!important}
html body.patrol-mode.patrol-standalone.p13-product-shell #patrolDashboard .p4-viz-kpis>article,
html body.patrol-mode.patrol-standalone.p13-product-shell #patrolDashboard .p4-viz-kpis>article:last-child{background:#fff!important;border-right-color:#e4e9e7!important;color:var(--p13-text)!important}
html body.patrol-mode.patrol-standalone.p13-product-shell #patrolDashboard .p4-viz-kpis>article:first-child{background:var(--p13-surface-accent)!important;color:var(--p13-text)!important}
html body.patrol-mode.patrol-standalone.p13-product-shell #patrolDashboard .p4-viz-kpis>article:first-child span,
html body.patrol-mode.patrol-standalone.p13-product-shell #patrolDashboard .p4-viz-kpis>article:first-child small{color:#6d7c79!important}
html body.patrol-mode.patrol-standalone.p13-product-shell #patrolDashboard .p4-viz-kpis>article:first-child strong{color:var(--p13-brand-dark)!important}
html body.patrol-mode.patrol-standalone.p13-product-shell #patrolDashboard .p4-viz-kpis strong{color:#2e444a!important}
html body.patrol-mode.patrol-standalone.p13-product-shell #patrolDashboard .patrol-leadership-summary{
  background:#edf3f1!important;border-left:3px solid #78938d!important;color:#48615f!important;
}
html body.patrol-mode.patrol-standalone.p13-product-shell #patrolDashboard .patrol-leadership-summary b,
html body.patrol-mode.patrol-standalone.p13-product-shell #patrolDashboard .patrol-leadership-summary strong{color:#395854!important}

/* Tables and filters: paper-like data surfaces, lower visual noise. */
html body.patrol-mode.patrol-standalone.p13-product-shell #patrolPage .p7-object-table th,
html body.patrol-mode.patrol-standalone.p13-product-shell #patrolPersonZone .p9-responsibility-table thead th{
  background:#f0f3f2!important;color:#40545a!important;border-bottom-color:#d7dfdc!important;
}
html body.patrol-mode.patrol-standalone.p13-product-shell #patrolPage .p7-object-table tbody tr:nth-child(even),
html body.patrol-mode.patrol-standalone.p13-product-shell #patrolPersonZone .p9-responsibility-table tbody tr:nth-child(even){background:#fafbfa!important}
html body.patrol-mode.patrol-standalone.p13-product-shell #patrolPage .p7-filterbar{background:#f4f6f5!important;border-color:#e0e6e3!important}
html body.patrol-mode.patrol-standalone.p13-product-shell #patrolPage .p7-bar-track{background:#e7ece9!important}
html body.patrol-mode.patrol-standalone.p13-product-shell #patrolPage .p7-bar-track i{background:#6f8b85!important}

/* Remove the remaining dark presentation slabs across empty/output/history/import states. */
html body.patrol-mode.patrol-standalone.p13-product-shell .p11-empty-side{
  background:#eff3f1!important;color:var(--p13-text)!important;border:1px solid #dce5e1!important;
}
html body.patrol-mode.patrol-standalone.p13-product-shell .p11-empty-side>span{color:var(--p13-brand)!important}
html body.patrol-mode.patrol-standalone.p13-product-shell .p11-empty-side h3,
html body.patrol-mode.patrol-standalone.p13-product-shell .p11-empty-side strong{color:#30484d!important}
html body.patrol-mode.patrol-standalone.p13-product-shell .p11-empty-side li{color:#5f706f!important}
html body.patrol-mode.patrol-standalone.p13-product-shell .p11-empty-side li::before{background:#dfe9e5!important;color:#4d6c66!important}

html body.patrol-mode.patrol-standalone.p13-product-shell #patrolOutputZone>.p7-focus-export-panel{
  background:#edf3f1!important;color:var(--p13-text)!important;border:1px solid #d9e4e0!important;box-shadow:none!important;
}
html body.patrol-mode.patrol-standalone.p13-product-shell #patrolOutputZone>.p7-focus-export-panel h3,
html body.patrol-mode.patrol-standalone.p13-product-shell #patrolOutputZone>.p7-focus-export-panel .patrol-panel-head h3{color:#30484d!important}
html body.patrol-mode.patrol-standalone.p13-product-shell #patrolOutputZone>.p7-focus-export-panel small{color:#74827f!important}
html body.patrol-mode.patrol-standalone.p13-product-shell #patrolOutputZone>.p7-focus-export-panel .btn:not(.primary){background:#fff!important;border-color:#cfdbd6!important;color:#41585b!important}
html body.patrol-mode.patrol-standalone.p13-product-shell #patrolOutputZone>.p7-focus-export-panel .btn.primary,
html body.patrol-mode.patrol-standalone.p13-product-shell #patrolOutputZone .patrol-command-export-grid .btn.primary,
html body.patrol-mode.patrol-standalone.p13-product-shell #patrolOutputZone .patrol-copy-card:nth-child(n) .btn.primary{background:var(--p13-brand-dark)!important;border-color:var(--p13-brand-dark)!important;color:#fff!important}
html body.patrol-mode.patrol-standalone.p13-product-shell #patrolOutputZone .patrol-copy-card>span{background:#edf3f1!important;color:#4c6964!important;border-color:#d9e4e0!important}

html body.patrol-mode.patrol-standalone.p13-product-shell .p11-history-baseline-head{
  background:#eef2f0!important;border:1px solid #dbe4e0!important;color:var(--p13-text)!important;
}
html body.patrol-mode.patrol-standalone.p13-product-shell .p11-history-baseline-head h3{color:#30484d!important}
html body.patrol-mode.patrol-standalone.p13-product-shell .p11-history-baseline-head p,
html body.patrol-mode.patrol-standalone.p13-product-shell .p11-history-count small{color:#71807d!important}
html body.patrol-mode.patrol-standalone.p13-product-shell .p11-history-baseline-head span{color:var(--p13-brand)!important}
html body.patrol-mode.patrol-standalone.p13-product-shell .p11-history-next{background:#f6f8f7!important}

html body.patrol-mode.patrol-standalone.p13-product-shell #patrolInputZone .patrol-contract-card.p7-input-guide{
  background:#eff3f1!important;color:var(--p13-text)!important;border:1px solid #dce5e1!important;box-shadow:none!important;
}
html body.patrol-mode.patrol-standalone.p13-product-shell #patrolInputZone .patrol-contract-card.p7-input-guide>.p7-guide-head strong{color:#30484d!important}
html body.patrol-mode.patrol-standalone.p13-product-shell #patrolInputZone .p7-guide-grid article{background:rgba(255,255,255,.7)!important;border-color:#dce5e1!important}
html body.patrol-mode.patrol-standalone.p13-product-shell #patrolInputZone .p7-guide-grid b{color:#40565b!important}
html body.patrol-mode.patrol-standalone.p13-product-shell #patrolInputZone .p7-guide-grid small,
html body.patrol-mode.patrol-standalone.p13-product-shell #patrolInputZone .p7-input-guide>p{color:#74827f!important}
html body.patrol-mode.patrol-standalone.p13-product-shell #patrolInputZone .patrol-one-paste-input{background:#fff!important;color:#34494f!important;border-color:#cfd9d5!important}

/* GIS: keep the real map dominant, simplify the analysis rail, and show persistent selected-row state. */
html body.patrol-mode.patrol-standalone.p13-product-shell #patrolAnalysisZone .patrol-map-intelligence-panel{
  background:#f8faf9!important;border:1px solid #dce4e1!important;box-shadow:none!important;
}
html body.patrol-mode.patrol-standalone.p13-product-shell #patrolAnalysisZone .patrol-map-intelligence-title{background:#f8faf9!important;border-bottom-color:#dce4e1!important}
html body.patrol-mode.patrol-standalone.p13-product-shell #patrolAnalysisZone .patrol-map-intelligence-title span{color:#314a4f!important}
html body.patrol-mode.patrol-standalone.p13-product-shell #patrolAnalysisZone .patrol-map-explore-bar{background:#f1f4f3!important;border-color:#dfe5e2!important}
html body.patrol-mode.patrol-standalone.p13-product-shell #patrolAnalysisZone .patrol-map-filter-group button{background:#e8edeb!important;color:#5c6c70!important;border-color:transparent!important}
html body.patrol-mode.patrol-standalone.p13-product-shell #patrolAnalysisZone .patrol-map-filter-group button.active{background:var(--p13-brand-dark)!important;color:#fff!important}
html body.patrol-mode.patrol-standalone.p13-product-shell #patrolAnalysisZone .patrol-map-search-box{border-color:#d4ded9!important;background:#fff!important;color:#41575c!important}
html body.patrol-mode.patrol-standalone.p13-product-shell #patrolAnalysisZone .patrol-map-canvas-shell{background:#f7f8f5!important;border-color:#d9e2de!important}
html body.patrol-mode.patrol-standalone.p13-product-shell #patrolAnalysisZone .patrol-map-conclusion{background:#edf3f1!important;border-left-color:#78938d!important;color:#49615f!important}
html body.patrol-mode.patrol-standalone.p13-product-shell #patrolAnalysisZone .patrol-map-priority-row{
  transition:background .14s ease,border-color .14s ease,box-shadow .14s ease!important;
}
html body.patrol-mode.patrol-standalone.p13-product-shell #patrolAnalysisZone button.patrol-map-priority-row:hover{background:#f0f4f2!important}
html body.patrol-mode.patrol-standalone.p13-product-shell #patrolAnalysisZone button.patrol-map-priority-row.is-selected{
  background:#e7efec!important;border-color:#cbdcd6!important;box-shadow:inset 3px 0 0 var(--p13-brand)!important;
}
html body.patrol-mode.patrol-standalone.p13-product-shell #patrolAnalysisZone button.patrol-map-priority-row.is-selected .patrol-map-priority-no{
  background:var(--p13-brand-dark)!important;color:#fff!important;border-color:var(--p13-brand-dark)!important;
}
html body.patrol-mode.patrol-standalone.p13-product-shell #patrolAnalysisZone .patrol-map-actions .btn.primary{background:var(--p13-brand-dark)!important;border-color:var(--p13-brand-dark)!important;color:#fff!important}

/* Small texture reduction: neutral placeholders and subtler cards. */
html body.patrol-mode.patrol-standalone.p13-product-shell .patrol-empty-card{background:#f8faf9!important;border-color:#d9e2de!important;color:#6a797c!important}
html body.patrol-mode.patrol-standalone.p13-product-shell .p11-gap-badge.quiet{background:#eef2f0!important;color:#667674!important}
html body.patrol-mode.patrol-standalone.p13-product-shell .p11-gap-badge.warn{background:#fbf3e7!important;color:#875d28!important}
html body.patrol-mode.patrol-standalone.p13-product-shell .p11-gap-badge.danger{background:#fbeeed!important;color:#99504b!important}

/* P13.1 | authority overrides for older high-specificity dark companion surfaces. */
html body.patrol-mode.patrol-standalone.p9-product-shell.p10-product-shell.p11-product-shell.p12-product-shell.p13-product-shell #patrolPage .patrol-contract-card.p7-input-guide{
  padding:21px 22px!important;border:1px solid #dce5e1!important;border-radius:14px!important;
  background:#eff3f1!important;color:var(--p13-text)!important;box-shadow:none!important;
}
html body.patrol-mode.patrol-standalone.p9-product-shell.p10-product-shell.p11-product-shell.p12-product-shell.p13-product-shell #patrolPage .patrol-contract-card.p7-input-guide>.p7-guide-head span{color:var(--p13-brand)!important}
html body.patrol-mode.patrol-standalone.p9-product-shell.p10-product-shell.p11-product-shell.p12-product-shell.p13-product-shell #patrolPage .patrol-contract-card.p7-input-guide>.p7-guide-head strong{color:#30484d!important}
html body.patrol-mode.patrol-standalone.p9-product-shell.p10-product-shell.p11-product-shell.p12-product-shell.p13-product-shell #patrolPage .patrol-contract-card.p7-input-guide>.p7-guide-grid article{
  border-top-color:#dce5e1!important;background:transparent!important;
}
html body.patrol-mode.patrol-standalone.p9-product-shell.p10-product-shell.p11-product-shell.p12-product-shell.p13-product-shell #patrolPage .patrol-contract-card.p7-input-guide>.p7-guide-grid b{color:#40565b!important}
html body.patrol-mode.patrol-standalone.p9-product-shell.p10-product-shell.p11-product-shell.p12-product-shell.p13-product-shell #patrolPage .patrol-contract-card.p7-input-guide>.p7-guide-grid small{color:#74827f!important}
html body.patrol-mode.patrol-standalone.p9-product-shell.p10-product-shell.p11-product-shell.p12-product-shell.p13-product-shell #patrolPage .patrol-contract-card.p7-input-guide>p{
  border-top-color:#dce5e1!important;color:#74827f!important;
}

html body.patrol-mode.patrol-standalone.p9-product-shell.p10-product-shell.p11-product-shell.p12-product-shell.p13-product-shell #patrolOutputZone>.p7-focus-export-panel,
html body.patrol-mode.patrol-standalone.p9-product-shell.p10-product-shell.p11-product-shell.p12-product-shell.p13-product-shell.patrol-results-ready[data-p7-view="output"] #patrolPage>#patrolOutputZone>.p7-focus-export-panel{
  padding:22px 24px!important;border:1px solid #d9e4e0!important;border-radius:14px!important;
  background:#edf3f1!important;color:var(--p13-text)!important;box-shadow:none!important;
}
html body.patrol-mode.patrol-standalone.p9-product-shell.p10-product-shell.p11-product-shell.p12-product-shell.p13-product-shell #patrolOutputZone>.p7-focus-export-panel h3,
html body.patrol-mode.patrol-standalone.p9-product-shell.p10-product-shell.p11-product-shell.p12-product-shell.p13-product-shell #patrolOutputZone>.p7-focus-export-panel .patrol-panel-head h3{color:#30484d!important}
html body.patrol-mode.patrol-standalone.p9-product-shell.p10-product-shell.p11-product-shell.p12-product-shell.p13-product-shell #patrolOutputZone>.p7-focus-export-panel small{color:#74827f!important}
html body.patrol-mode.patrol-standalone.p9-product-shell.p10-product-shell.p11-product-shell.p12-product-shell.p13-product-shell #patrolOutputZone>.p7-focus-export-panel .btn:not(.primary){background:#fff!important;border-color:#cfdbd6!important;color:#41585b!important}
html body.patrol-mode.patrol-standalone.p9-product-shell.p10-product-shell.p11-product-shell.p12-product-shell.p13-product-shell #patrolOutputZone>.p7-focus-export-panel .btn.primary{background:var(--p13-brand-dark)!important;border-color:var(--p13-brand-dark)!important;color:#fff!important}

html body.patrol-mode.patrol-standalone.p9-product-shell.p10-product-shell.p11-product-shell.p12-product-shell.p13-product-shell .p11-history-baseline-head{
  background:#eef2f0!important;color:var(--p13-text)!important;border-bottom:1px solid #dbe4e0!important;
}
html body.patrol-mode.patrol-standalone.p9-product-shell.p10-product-shell.p11-product-shell.p12-product-shell.p13-product-shell .p11-history-baseline-head h3{color:#30484d!important}
html body.patrol-mode.patrol-standalone.p9-product-shell.p10-product-shell.p11-product-shell.p12-product-shell.p13-product-shell .p11-history-baseline-head p,
html body.patrol-mode.patrol-standalone.p9-product-shell.p10-product-shell.p11-product-shell.p12-product-shell.p13-product-shell .p11-history-count small{color:#71807d!important}
html body.patrol-mode.patrol-standalone.p9-product-shell.p10-product-shell.p11-product-shell.p12-product-shell.p13-product-shell .p11-history-baseline-head span{color:var(--p13-brand)!important}
html body.patrol-mode.patrol-standalone.p9-product-shell.p10-product-shell.p11-product-shell.p12-product-shell.p13-product-shell .p11-history-count{background:rgba(80,111,106,.08)!important}

/* Keep GIS controls and status rail quiet even where P10 had stronger navy selectors. */
html body.patrol-mode.patrol-standalone.p9-product-shell.p10-product-shell.p11-product-shell.p12-product-shell.p13-product-shell #patrolAnalysisZone .patrol-map-intelligence-panel{background:#f8faf9!important;border-color:#dce4e1!important}
html body.patrol-mode.patrol-standalone.p9-product-shell.p10-product-shell.p11-product-shell.p12-product-shell.p13-product-shell #patrolAnalysisZone .patrol-map-intelligence-title span{color:#314a4f!important}
html body.patrol-mode.patrol-standalone.p9-product-shell.p10-product-shell.p11-product-shell.p12-product-shell.p13-product-shell #patrolAnalysisZone .patrol-map-filter-group button.active{background:var(--p13-brand-dark)!important;color:#fff!important;border-color:var(--p13-brand-dark)!important}

/* P13.2 | replace residual P12 bright-blue authority selectors with the quieter P13 accent. */
html body.patrol-mode.patrol-standalone.p9-product-shell.p10-product-shell.p11-product-shell.p12-product-shell.p13-product-shell #patrolPage .patrol-section-kicker,
html body.patrol-mode.patrol-standalone.p9-product-shell.p10-product-shell.p11-product-shell.p12-product-shell.p13-product-shell #patrolPage .patrol-eyebrow,
html body.patrol-mode.patrol-standalone.p9-product-shell.p10-product-shell.p11-product-shell.p12-product-shell.p13-product-shell #patrolPage .p7-input-kicker,
html body.patrol-mode.patrol-standalone.p9-product-shell.p10-product-shell.p11-product-shell.p12-product-shell.p13-product-shell #patrolPage .p7-guide-head span{color:var(--p13-brand)!important}
html body.patrol-mode.patrol-standalone.p9-product-shell.p10-product-shell.p11-product-shell.p12-product-shell.p13-product-shell #patrolOutputZone .patrol-copy-card>span{
  background:#edf3f1!important;color:#4c6964!important;border-color:#d9e4e0!important;
}
html body.patrol-mode.patrol-standalone.p9-product-shell.p10-product-shell.p11-product-shell.p12-product-shell.p13-product-shell #patrolOutputZone .patrol-copy-card:nth-child(n) .btn.primary{
  background:var(--p13-brand-dark)!important;border-color:var(--p13-brand-dark)!important;color:#fff!important;
}
html body.patrol-mode.patrol-standalone.p9-product-shell.p10-product-shell.p11-product-shell.p12-product-shell.p13-product-shell #patrolAnalysisZone .patrol-map-intelligence-head .patrol-eyebrow{color:var(--p13-brand)!important}
html body.patrol-mode.patrol-standalone.p9-product-shell.p10-product-shell.p11-product-shell.p12-product-shell.p13-product-shell #patrolDashboard .patrol-leadership-summary b,
html body.patrol-mode.patrol-standalone.p9-product-shell.p10-product-shell.p11-product-shell.p12-product-shell.p13-product-shell #patrolDashboard .patrol-leadership-summary strong{color:#395854!important}


/* ======================================================================
   P14 | decision-first statistical analysis system
   Stronger reading hierarchy, neutral data surfaces, action-oriented KPIs,
   intentional missing-data states, and quieter interaction chrome.
   ====================================================================== */
body.p14-product-shell{
  --p14-canvas:#f5f7f6;--p14-surface:#ffffff;--p14-soft:#f8faf9;--p14-tint:#edf3f1;
  --p14-ink:#20353a;--p14-text:#43565b;--p14-muted:#748286;--p14-line:#dce4e1;
  --p14-brand:#4a6b65;--p14-brand-dark:#385b55;--p14-brand-soft:#e8f0ed;
  --p14-success:#4d765f;--p14-warning:#9b6a2f;--p14-danger:#ae5b55;
  background:var(--p14-canvas)!important;color:var(--p14-text)!important;
  font-variant-numeric:tabular-nums;
}
html body.patrol-mode.patrol-standalone.p14-product-shell #patrolPage.p7-main{background:var(--p14-canvas)!important}
html body.patrol-mode.patrol-standalone.p14-product-shell .p7-sidebar{background:#fafbfa!important;border-right-color:#e1e7e4!important;box-shadow:none!important}
html body.patrol-mode.patrol-standalone.p14-product-shell .p7-topbar{background:rgba(253,254,253,.98)!important;border-bottom-color:#e1e7e4!important;box-shadow:none!important}
html body.patrol-mode.patrol-standalone.p14-product-shell .p7-side-nav button.active{background:#edf3f1!important;color:#355a54!important;border-color:#d9e4e0!important;box-shadow:inset 3px 0 0 #5c7b75!important}

/* Readability: fewer micro-labels, more contrast, steadier line-height. */
html body.patrol-mode.patrol-standalone.p14-product-shell #patrolPage .p7-module-head{padding:17px 20px!important;border-color:var(--p14-line)!important;background:#fdfefd!important;border-radius:13px!important}
html body.patrol-mode.patrol-standalone.p14-product-shell #patrolPage .p7-module-head h2{font-size:30px!important;line-height:1.08!important;color:var(--p14-ink)!important}
html body.patrol-mode.patrol-standalone.p14-product-shell #patrolPage .p7-module-head p{font-size:13px!important;line-height:1.6!important;color:#617176!important;max-width:900px}
html body.patrol-mode.patrol-standalone.p14-product-shell #patrolPage .patrol-panel-head h3{font-size:18px!important;line-height:1.25!important;color:#294249!important}
html body.patrol-mode.patrol-standalone.p14-product-shell #patrolPage .patrol-panel-head small{font-size:11.5px!important;line-height:1.55!important;color:#738186!important}
html body.patrol-mode.patrol-standalone.p14-product-shell #patrolPage .patrol-section-kicker,
html body.patrol-mode.patrol-standalone.p14-product-shell #patrolPage .patrol-eyebrow{letter-spacing:.04em!important;color:#54736d!important}

/* Buttons: keep one obvious primary action per local context; secondary actions stay quiet. */
html body.patrol-mode.patrol-standalone.p14-product-shell #patrolPage .btn,
html body.patrol-mode.patrol-standalone.p14-product-shell .p7-topbar .btn{border-radius:8px!important;font-weight:690!important}
html body.patrol-mode.patrol-standalone.p14-product-shell #patrolPage .btn.primary,
html body.patrol-mode.patrol-standalone.p14-product-shell .p7-topbar .btn.primary{background:var(--p14-brand-dark)!important;border-color:var(--p14-brand-dark)!important}
html body.patrol-mode.patrol-standalone.p14-product-shell #patrolOutputZone .patrol-copy-card .btn.primary{background:#fff!important;color:#40585c!important;border-color:#cfdbd6!important}
html body.patrol-mode.patrol-standalone.p14-product-shell #patrolOutputZone #patrolExportReportPdfBtn,
html body.patrol-mode.patrol-standalone.p14-product-shell #patrolOutputZone #patrolExportFocusPngBtn,
html body.patrol-mode.patrol-standalone.p14-product-shell #patrolOutputZone #patrolExportOverallPngBtn,
html body.patrol-mode.patrol-standalone.p14-product-shell #patrolOutputZone #patrolExportRankingPosterPngBtn,
html body.patrol-mode.patrol-standalone.p14-product-shell #patrolOutputZone #patrolExportCardPngBtn{background:var(--p14-brand-dark)!important;color:#fff!important;border-color:var(--p14-brand-dark)!important}

/* Decision KPIs: surface is neutral; status is conveyed with a thin semantic edge, not a color slab. */
html body.patrol-mode.patrol-standalone.p14-product-shell #patrolDashboard .p4-viz-kpis,
html body.patrol-mode.patrol-standalone.p14-product-shell #p7ProjectWorkspace .p7-domain-kpis,
html body.patrol-mode.patrol-standalone.p14-product-shell #p7StoreWorkspace .p7-domain-kpis,
html body.patrol-mode.patrol-standalone.p14-product-shell #patrolPersonZone .p7-responsibility-kpis{border-color:var(--p14-line)!important;background:#fff!important;box-shadow:none!important}
html body.patrol-mode.patrol-standalone.p14-product-shell #patrolDashboard .p4-viz-kpis>article,
html body.patrol-mode.patrol-standalone.p14-product-shell #p7ProjectWorkspace .p7-domain-kpis>article,
html body.patrol-mode.patrol-standalone.p14-product-shell #p7StoreWorkspace .p7-domain-kpis>article,
html body.patrol-mode.patrol-standalone.p14-product-shell #patrolPersonZone .p7-responsibility-kpis>article{background:#fff!important;color:var(--p14-text)!important;border-right-color:#e6ebe9!important;box-shadow:none!important;position:relative!important}
html body.patrol-mode.patrol-standalone.p14-product-shell #patrolDashboard .p4-viz-kpis>article:first-child,
html body.patrol-mode.patrol-standalone.p14-product-shell #p7ProjectWorkspace .p7-domain-kpis>article:first-child,
html body.patrol-mode.patrol-standalone.p14-product-shell #patrolPersonZone .p7-responsibility-kpis>article:first-child{background:#f4f7f6!important;color:var(--p14-text)!important}
html body.patrol-mode.patrol-standalone.p14-product-shell #patrolDashboard .p4-viz-kpis strong,
html body.patrol-mode.patrol-standalone.p14-product-shell #p7ProjectWorkspace .p7-domain-kpis strong,
html body.patrol-mode.patrol-standalone.p14-product-shell #patrolPersonZone .p7-responsibility-kpis strong{font-size:31px!important;color:#243d44!important}
html body.patrol-mode.patrol-standalone.p14-product-shell #patrolDashboard .p4-viz-kpis span,
html body.patrol-mode.patrol-standalone.p14-product-shell #patrolDashboard .p4-viz-kpis small,
html body.patrol-mode.patrol-standalone.p14-product-shell #p7ProjectWorkspace .p7-domain-kpis span,
html body.patrol-mode.patrol-standalone.p14-product-shell #p7ProjectWorkspace .p7-domain-kpis small,
html body.patrol-mode.patrol-standalone.p14-product-shell #patrolPersonZone .p7-responsibility-kpis span,
html body.patrol-mode.patrol-standalone.p14-product-shell #patrolPersonZone .p7-responsibility-kpis small{color:#6d7c80!important}
html body.patrol-mode.patrol-standalone.p14-product-shell .p14-kpi-danger::after,
html body.patrol-mode.patrol-standalone.p14-product-shell .p14-kpi-warn::after,
html body.patrol-mode.patrol-standalone.p14-product-shell .p14-kpi-good::after,
html body.patrol-mode.patrol-standalone.p14-product-shell .p14-kpi-missing::after{content:"";position:absolute;left:0;right:0;bottom:0;height:3px}
html body.patrol-mode.patrol-standalone.p14-product-shell .p14-kpi-danger::after{background:#c9796f}.p14-product-shell .p14-kpi-warn::after{background:#d7ad69}.p14-product-shell .p14-kpi-good::after{background:#76a18b}.p14-product-shell .p14-kpi-missing::after{background:#c4ceca}

/* Missing data is not a zero-value chart. */
html body.patrol-mode.patrol-standalone.p14-product-shell #patrolDashboard .p14-coverage-empty{display:none;padding:18px 20px;border:1px dashed #d3ddda;border-radius:10px;background:#fafcfb;text-align:left}
html body.patrol-mode.patrol-standalone.p14-product-shell #patrolDashboard .p14-coverage-empty strong{display:block;color:#314a50;font-size:15px;margin-bottom:6px}
html body.patrol-mode.patrol-standalone.p14-product-shell #patrolDashboard .p14-coverage-empty span{display:block;color:#5f7074;font-size:12px;margin-bottom:4px}
html body.patrol-mode.patrol-standalone.p14-product-shell #patrolDashboard .p14-coverage-empty small{color:#81908e;font-size:10.8px}
html body.patrol-mode.patrol-standalone.p14-product-shell #patrolDashboard .p4-coverage-panel.p14-no-coverage-data .p4-donut-row{display:none!important}
html body.patrol-mode.patrol-standalone.p14-product-shell #patrolDashboard .p4-coverage-panel.p14-no-coverage-data .p14-coverage-empty{display:block}

/* Data tables: light sticky headers, larger readable text, subtle row priority. */
html body.patrol-mode.patrol-standalone.p14-product-shell #patrolPage .p7-object-table th,
html body.patrol-mode.patrol-standalone.p14-product-shell #patrolPersonZone .p9-responsibility-table thead th{background:#f4f6f5!important;color:#3e5258!important;border-bottom:1px solid #d7dfdc!important;font-size:11.4px!important;letter-spacing:.01em}
html body.patrol-mode.patrol-standalone.p14-product-shell #patrolPage .p7-object-table td,
html body.patrol-mode.patrol-standalone.p14-product-shell #patrolPersonZone .p9-responsibility-table td{font-size:12px!important;line-height:1.45!important;color:#43565d!important}
html body.patrol-mode.patrol-standalone.p14-product-shell #patrolPage .p7-cell-main b{font-size:12.25px!important;color:#2d454c!important}
html body.patrol-mode.patrol-standalone.p14-product-shell #patrolPage .p7-cell-main small{font-size:10.5px!important;color:#7b898d!important}
html body.patrol-mode.patrol-standalone.p14-product-shell #patrolPersonZone .p9-responsibility-table tbody tr.p14-row-pending{background:#fbf7ef!important}
html body.patrol-mode.patrol-standalone.p14-product-shell #patrolPersonZone .p9-responsibility-table tbody tr.p14-row-danger{background:#fcf7f6!important}
html body.patrol-mode.patrol-standalone.p14-product-shell #patrolPersonZone .p9-responsibility-table tbody tr.p14-row-warn{background:#fdfaf5!important}
html body.patrol-mode.patrol-standalone.p14-product-shell #patrolPersonZone .p9-responsibility-table tbody tr:hover,
html body.patrol-mode.patrol-standalone.p14-product-shell #patrolPage .p7-object-table tbody tr:hover{background:#f3f7f5!important}

/* Store empty state: intentional, compact, and explicit about data quality. */
html body.patrol-mode.patrol-standalone.p14-product-shell #p7StoreWorkspace.p11-empty-domain{min-height:0!important;align-content:start!important}
html body.patrol-mode.patrol-standalone.p14-product-shell .p11-empty-hero{grid-template-columns:minmax(0,1.22fr) minmax(330px,.78fr)!important;gap:12px!important}
html body.patrol-mode.patrol-standalone.p14-product-shell .p11-empty-main{min-height:250px!important;padding:28px 30px!important}
html body.patrol-mode.patrol-standalone.p14-product-shell .p11-empty-main h3{font-size:25px!important;color:#263f45!important}
html body.patrol-mode.patrol-standalone.p14-product-shell .p11-empty-main p{font-size:12.5px!important;color:#617276!important}
html body.patrol-mode.patrol-standalone.p14-product-shell .p11-empty-side{padding:20px!important;background:#f1f5f3!important;border-color:#dbe4e0!important}
html body.patrol-mode.patrol-standalone.p14-product-shell .p14-empty-data-state{display:grid;grid-template-columns:1fr 1fr 1.4fr;gap:8px;margin-top:10px}
html body.patrol-mode.patrol-standalone.p14-product-shell .p14-empty-data-state article{padding:13px 14px;border:1px solid #dce4e1;border-radius:10px;background:#fff}
html body.patrol-mode.patrol-standalone.p14-product-shell .p14-empty-data-state span{display:block;font-size:10px;color:#81908d;margin-bottom:5px}
html body.patrol-mode.patrol-standalone.p14-product-shell .p14-empty-data-state b{display:block;font-size:13px;color:#334d52;margin-bottom:3px}
html body.patrol-mode.patrol-standalone.p14-product-shell .p14-empty-data-state small{font-size:10.5px;color:#788783}

/* GIS: map remains dominant, but status/filter chrome no longer competes with the map. */
html body.patrol-mode.patrol-standalone.p14-product-shell #patrolAnalysisZone .patrol-map-intelligence-head>span,
html body.patrol-mode.patrol-standalone.p14-product-shell #patrolAnalysisZone .patrol-map-filter-status{background:#f4f7f5!important;color:#58706c!important;border:1px solid #dce4e1!important;border-radius:999px!important;font-weight:650!important}
html body.patrol-mode.patrol-standalone.p14-product-shell #patrolAnalysisZone .patrol-map-filter-group button{background:#eef2f0!important;color:#5b6d71!important;border:1px solid transparent!important}
html body.patrol-mode.patrol-standalone.p14-product-shell #patrolAnalysisZone .patrol-map-filter-group button.active{background:#e2ece8!important;color:#355b55!important;border-color:#cddbd6!important;box-shadow:inset 0 0 0 1px #d3dfdb!important}
html body.patrol-mode.patrol-standalone.p14-product-shell #patrolAnalysisZone .patrol-map-intelligence-panel{background:#fbfcfb!important;border-color:#dce4e1!important}
html body.patrol-mode.patrol-standalone.p14-product-shell #patrolAnalysisZone .patrol-map-actions{grid-template-columns:1fr 1.25fr 1fr 1fr 1fr 1fr!important}
html body.patrol-mode.patrol-standalone.p14-product-shell #patrolAnalysisZone .patrol-map-actions .btn{font-size:11.3px!important}
html body.patrol-mode.patrol-standalone.p14-product-shell #patrolAnalysisZone #patrolProjectPinCurrentBtn:disabled,
html body.patrol-mode.patrol-standalone.p14-product-shell #patrolAnalysisZone #patrolStorePinCurrentBtn:disabled{display:none!important}

/* Output center: clearer hierarchy, less competition among equal-weight buttons. */
html body.patrol-mode.patrol-standalone.p14-product-shell #patrolOutputZone>.p7-output-guide article{background:#fbfcfb!important;border-color:#dfe6e3!important;min-height:76px!important}
html body.patrol-mode.patrol-standalone.p14-product-shell #patrolOutputZone>.p7-focus-export-panel{background:#f0f5f3!important;border-color:#d9e4e0!important;padding:20px 22px!important}
html body.patrol-mode.patrol-standalone.p14-product-shell #patrolOutputZone .patrol-copy-card{box-shadow:none!important;border-color:#dfe6e3!important}
html body.patrol-mode.patrol-standalone.p14-product-shell #patrolOutputZone .patrol-writing-note{background:#f6f8f7!important;color:#74827f!important}

/* History baseline: readable light surface, compact enough to feel intentional. */
html body.patrol-mode.patrol-standalone.p14-product-shell .p11-history-baseline-head{padding:20px 22px!important;background:#eef3f1!important;color:#344c52!important;border:0!important;border-bottom:1px solid #dbe4e0!important}
html body.patrol-mode.patrol-standalone.p14-product-shell .p11-history-baseline-head h3{font-size:23px!important;color:#2d474c!important;margin:4px 0!important}
html body.patrol-mode.patrol-standalone.p14-product-shell .p11-history-baseline-head p{color:#647572!important;font-size:11.5px!important}
html body.patrol-mode.patrol-standalone.p14-product-shell .p11-history-count{background:#fff!important;border:1px solid #d8e2de!important;min-width:106px!important}
html body.patrol-mode.patrol-standalone.p14-product-shell .p11-history-count strong{color:#334c50!important}
html body.patrol-mode.patrol-standalone.p14-product-shell .p11-history-count small{color:#7a8985!important}
html body.patrol-mode.patrol-standalone.p14-product-shell .p11-history-baseline-body{padding:18px 20px!important}

/* Input page: parsed-data status should read like a data-quality result, not a toast. */
html body.patrol-mode.patrol-standalone.p14-product-shell #patrolInputZone .p14-import-readout{margin-top:10px!important;padding:10px 12px!important;border:1px solid #d8e3df!important;border-radius:9px!important;background:#f7faf8!important;color:#536a66!important;font-size:11.5px!important;line-height:1.55!important}
html body.patrol-mode.patrol-standalone.p14-product-shell #patrolInputZone .patrol-one-paste-input{font-size:12.5px!important;line-height:1.6!important}

/* Overview management conclusion is a primary reading aid, not a decorative strip. */
html body.patrol-mode.patrol-standalone.p14-product-shell #patrolDashboard .patrol-leadership-summary{padding:13px 15px!important;border-radius:10px!important;background:#edf4f1!important;border-left:3px solid #66827c!important;color:#435b59!important;font-size:12.3px!important;line-height:1.6!important}
html body.patrol-mode.patrol-standalone.p14-product-shell #patrolDashboard .patrol-leadership-summary b,
html body.patrol-mode.patrol-standalone.p14-product-shell #patrolDashboard .patrol-leadership-summary strong{color:#2f514b!important}

@media(max-width:1180px){
  html body.patrol-mode.patrol-standalone.p14-product-shell .p14-empty-data-state{grid-template-columns:1fr!important}
  html body.patrol-mode.patrol-standalone.p14-product-shell #patrolAnalysisZone .patrol-map-actions{grid-template-columns:repeat(2,minmax(0,1fr))!important}
}


/* P14.1 | authority overrides after real-page screenshot audit */
/* Remove residual navy slabs with stronger historical selectors. */
html body.patrol-mode.patrol-standalone.p9-product-shell.p10-product-shell.p11-product-shell.p12-product-shell.p13-product-shell.p14-product-shell #p7ProjectKpis>article,
html body.patrol-mode.patrol-standalone.p9-product-shell.p10-product-shell.p11-product-shell.p12-product-shell.p13-product-shell.p14-product-shell #p7ResponsibilityKpis>article{background:#fff!important;color:#43565b!important;border-color:#e1e7e4!important;box-shadow:none!important}
html body.patrol-mode.patrol-standalone.p9-product-shell.p10-product-shell.p11-product-shell.p12-product-shell.p13-product-shell.p14-product-shell #p7ProjectKpis>article:first-child,
html body.patrol-mode.patrol-standalone.p9-product-shell.p10-product-shell.p11-product-shell.p12-product-shell.p13-product-shell.p14-product-shell #p7ResponsibilityKpis>article:first-child{background:#f1f5f3!important;color:#31494f!important;border-color:#dce4e1!important}
html body.patrol-mode.patrol-standalone.p9-product-shell.p10-product-shell.p11-product-shell.p12-product-shell.p13-product-shell.p14-product-shell #p7ProjectKpis>article strong,
html body.patrol-mode.patrol-standalone.p9-product-shell.p10-product-shell.p11-product-shell.p12-product-shell.p13-product-shell.p14-product-shell #p7ResponsibilityKpis>article strong{color:#243d44!important}
html body.patrol-mode.patrol-standalone.p9-product-shell.p10-product-shell.p11-product-shell.p12-product-shell.p13-product-shell.p14-product-shell #p7ProjectKpis>article span,
html body.patrol-mode.patrol-standalone.p9-product-shell.p10-product-shell.p11-product-shell.p12-product-shell.p13-product-shell.p14-product-shell #p7ProjectKpis>article small,
html body.patrol-mode.patrol-standalone.p9-product-shell.p10-product-shell.p11-product-shell.p12-product-shell.p13-product-shell.p14-product-shell #p7ResponsibilityKpis>article span,
html body.patrol-mode.patrol-standalone.p9-product-shell.p10-product-shell.p11-product-shell.p12-product-shell.p13-product-shell.p14-product-shell #p7ResponsibilityKpis>article small{color:#69797c!important}

/* Construction table should read like a data table, not a dark banner. */
html body.patrol-mode.patrol-standalone.p9-product-shell.p10-product-shell.p11-product-shell.p12-product-shell.p13-product-shell.p14-product-shell #p7ProjectWorkspace table.p7-object-table thead th{background:#eef3f1!important;color:#3b5056!important;border-color:#d8e1de!important}
html body.patrol-mode.patrol-standalone.p9-product-shell.p10-product-shell.p11-product-shell.p12-product-shell.p13-product-shell.p14-product-shell #p7ProjectWorkspace table.p7-object-table{background:#fff!important;color:#43565b!important;border-color:#dce4e1!important}

/* Explicit metric-scope disclosure protects trust when two pages use different populations. */
html body.patrol-mode.patrol-standalone.p14-product-shell .p14-project-scope-note{display:flex;align-items:flex-start;gap:10px;margin:-4px 0 12px;padding:9px 12px;border:1px solid #dce5e1;border-radius:9px;background:#f8faf9;color:#657579;font-size:10.8px;line-height:1.55}
html body.patrol-mode.patrol-standalone.p14-product-shell .p14-project-scope-note b{flex:0 0 auto;color:#49655f;font-size:10.5px;letter-spacing:.03em}

/* Responsibility defaults to actionable rows; all rows remain one click away. */
html body.patrol-mode.patrol-standalone.p14-product-shell .p14-resp-switch{display:flex;align-items:center;gap:6px;padding:9px 10px;border-bottom:1px solid #e0e7e4;background:#f8faf9}
html body.patrol-mode.patrol-standalone.p14-product-shell .p14-resp-switch button{height:30px;padding:0 12px;border:1px solid #d4dfdb;border-radius:7px;background:#fff;color:#53676b;font:680 11px inherit;cursor:pointer}
html body.patrol-mode.patrol-standalone.p14-product-shell .p14-resp-switch button.active{background:#e6efeb;color:#31564f;border-color:#c9d9d3;box-shadow:inset 0 0 0 1px #d6e3de}
html body.patrol-mode.patrol-standalone.p14-product-shell .p14-resp-switch span{margin-left:auto;color:#84918f;font-size:10.5px}
html body.patrol-mode.patrol-standalone.p14-product-shell .p14-resp-clear{padding:28px;text-align:center;background:#fbfcfb}
html body.patrol-mode.patrol-standalone.p14-product-shell .p14-resp-clear strong{display:block;color:#3b5357;margin-bottom:5px}
html body.patrol-mode.patrol-standalone.p14-product-shell .p14-resp-clear span{color:#7a8988;font-size:11px}

/* GIS controls are supporting chrome; the real map remains the visual center. */
html body.patrol-mode.patrol-standalone.p9-product-shell.p10-product-shell.p11-product-shell.p12-product-shell.p13-product-shell.p14-product-shell #patrolAnalysisZone .patrol-map-intelligence-head>span{background:#f2f6f4!important;color:#506a65!important;border:1px solid #d7e2de!important;box-shadow:none!important}
html body.patrol-mode.patrol-standalone.p9-product-shell.p10-product-shell.p11-product-shell.p12-product-shell.p13-product-shell.p14-product-shell #patrolAnalysisZone .p7-map-tabs{background:#edf2f0!important;border-color:#d8e2de!important}
html body.patrol-mode.patrol-standalone.p9-product-shell.p10-product-shell.p11-product-shell.p12-product-shell.p13-product-shell.p14-product-shell #patrolAnalysisZone .p7-map-tabs button{background:transparent!important;color:#5a6e72!important;border-color:transparent!important;box-shadow:none!important}
html body.patrol-mode.patrol-standalone.p9-product-shell.p10-product-shell.p11-product-shell.p12-product-shell.p13-product-shell.p14-product-shell #patrolAnalysisZone .p7-map-tabs button.active{background:#fff!important;color:#355b55!important;border:1px solid #cedbd6!important;box-shadow:0 1px 2px rgba(38,56,61,.04)!important}
html body.patrol-mode.patrol-standalone.p9-product-shell.p10-product-shell.p11-product-shell.p12-product-shell.p13-product-shell.p14-product-shell #patrolAnalysisZone .patrol-map-filter-group button.active{background:#e4ede9!important;color:#355b55!important;border-color:#cddbd6!important;box-shadow:inset 0 0 0 1px #d5e1dc!important}

/* Copy is a secondary action; export remains the strong action. */
html body.patrol-mode.patrol-standalone.p9-product-shell.p10-product-shell.p11-product-shell.p12-product-shell.p13-product-shell.p14-product-shell #patrolOutputZone #patrolCopyProjectMacroBtn,
html body.patrol-mode.patrol-standalone.p9-product-shell.p10-product-shell.p11-product-shell.p12-product-shell.p13-product-shell.p14-product-shell #patrolOutputZone #patrolCopyStoreMacroBtn,
html body.patrol-mode.patrol-standalone.p9-product-shell.p10-product-shell.p11-product-shell.p12-product-shell.p13-product-shell.p14-product-shell #patrolOutputZone #patrolCopyProjectPeopleBtn,
html body.patrol-mode.patrol-standalone.p9-product-shell.p10-product-shell.p11-product-shell.p12-product-shell.p13-product-shell.p14-product-shell #patrolOutputZone #patrolCopyStorePeopleBtn,
html body.patrol-mode.patrol-standalone.p9-product-shell.p10-product-shell.p11-product-shell.p12-product-shell.p13-product-shell.p14-product-shell #patrolOutputZone #patrolCopyFocusBtn{background:#fff!important;color:#40585c!important;border-color:#cfdbd6!important;box-shadow:none!important}

/* P14.2 continuous spatial comparison: no document/panel scroll anchoring on point switch */
html body.patrol-mode.patrol-standalone.p14-product-shell #patrolAnalysisZone .patrol-map-intelligence-panel,
html body.patrol-mode.patrol-standalone.p14-product-shell #patrolAnalysisZone #patrolProjectMapPriorityList,
html body.patrol-mode.patrol-standalone.p14-product-shell #patrolAnalysisZone .patrol-map-canvas-shell{overflow-anchor:none!important}

/* P14.3 overview = 5-second decision view; deeper structures are available on demand */
html body.patrol-mode.patrol-standalone.p14-product-shell #patrolDashboard .p14-overview-more{margin:16px 0 0;border:1px solid #dbe4e1;border-radius:14px;background:#f8faf9;overflow:hidden}
html body.patrol-mode.patrol-standalone.p14-product-shell #patrolDashboard .p14-overview-more>summary{list-style:none;display:flex;align-items:center;justify-content:space-between;gap:20px;min-height:62px;padding:12px 16px;cursor:pointer;color:#31464b}
html body.patrol-mode.patrol-standalone.p14-product-shell #patrolDashboard .p14-overview-more>summary::-webkit-details-marker{display:none}
html body.patrol-mode.patrol-standalone.p14-product-shell #patrolDashboard .p14-overview-more>summary span{display:grid;gap:3px}
html body.patrol-mode.patrol-standalone.p14-product-shell #patrolDashboard .p14-overview-more>summary b{font-size:14px;font-weight:820}
html body.patrol-mode.patrol-standalone.p14-product-shell #patrolDashboard .p14-overview-more>summary small{font-size:11px;color:#77858a;line-height:1.45}
html body.patrol-mode.patrol-standalone.p14-product-shell #patrolDashboard .p14-overview-more>summary em{font-style:normal;font-size:10.5px;font-weight:760;color:#55716c;padding:5px 9px;border:1px solid #d4e0dc;border-radius:999px;background:#fff;white-space:nowrap}
html body.patrol-mode.patrol-standalone.p14-product-shell #patrolDashboard .p14-overview-more[open]>summary{border-bottom:1px solid #dbe4e1;background:#f3f7f5}
html body.patrol-mode.patrol-standalone.p14-product-shell #patrolDashboard .p14-overview-more[open]>summary em{background:#e9f1ee}
html body.patrol-mode.patrol-standalone.p14-product-shell #patrolDashboard .p14-overview-more-body{padding:14px}
html body.patrol-mode.patrol-standalone.p14-product-shell #patrolDashboard .p14-overview-more-body>.patrol-progress-overview-panel{margin-top:0!important}

/* P15 | 行动优先、数据完整度与空间上下文 */
body.p15-product-shell{
  --p15-accent:#4f7770;
  --p15-accent-deep:#385f59;
  --p15-accent-soft:#edf4f1;
  --p15-ink:#25383b;
  --p15-text:#46585c;
  --p15-muted:#778489;
  --p15-line:#dde5e2;
  --p15-canvas:#f4f6f5;
  --p15-warn:#a87533;
  --p15-warn-soft:#fbf4e9;
  --p15-danger:#a95d50;
  --p15-danger-soft:#fbefec;
  --p15-good:#4f806d;
  --p15-good-soft:#edf5f1;
  background:var(--p15-canvas);
}
body.p15-product-shell .p7-skip-link:not(:focus-visible){position:fixed!important;left:-9999px!important;top:-9999px!important;opacity:0!important;pointer-events:none!important}
body.p15-product-shell .p7-skip-link:focus-visible{left:190px!important;top:12px!important;opacity:1!important;z-index:99999!important}
body.p15-product-shell .patrol-panel,
body.p15-product-shell .p7-module-head,
body.p15-product-shell .p4-viz-board{box-shadow:0 1px 2px rgba(28,46,49,.035)!important;border-color:var(--p15-line)!important}
body.p15-product-shell .btn.primary{background:var(--p15-accent-deep)!important;border-color:var(--p15-accent-deep)!important;color:#fff!important;box-shadow:none!important}
body.p15-product-shell .btn:not(.primary){box-shadow:none!important}
body.p15-product-shell .p15-force-hidden{display:none!important}

/* Global data completeness */
.p15-completeness-bar{display:flex;align-items:center;gap:14px;min-height:34px;margin:0 20px 10px;padding:5px 10px;border:1px solid #e1e7e5;border-radius:10px;background:rgba(255,255,255,.72);color:var(--p15-muted);font-size:12px}
.p15-completeness-label{font-weight:800;color:var(--p15-text);white-space:nowrap}
.p15-completeness-item{display:inline-flex;align-items:center;gap:5px;white-space:nowrap}
.p15-completeness-item i{width:7px;height:7px;border-radius:50%;background:#aab4b0;box-shadow:0 0 0 3px #f0f3f2}
.p15-completeness-item.ok i{background:#55a284;box-shadow:0 0 0 3px #e9f5ef}
.p15-completeness-item.partial i{background:#7d9c91}
.p15-completeness-item b{font-weight:700;color:#4d6063}.p15-completeness-item em{font-style:normal;color:#7d898d}
.p15-completeness-bar>small{margin-left:auto;color:#899397;white-space:nowrap}

/* Overview: 5-second first screen */
body.p15-product-shell #patrolDashboard .p4-viz-kpis{grid-template-columns:1.2fr 1fr 1fr 1fr!important}
body.p15-product-shell #patrolDashboard .p4-viz-kpis>article{min-height:104px!important;background:#fff!important;border-right:1px solid var(--p15-line)!important;padding:16px 18px!important}
body.p15-product-shell #patrolDashboard .p4-viz-kpis>article.p15-kpi-hidden{display:none!important}
body.p15-product-shell #patrolDashboard .p4-viz-kpis>article.p15-kpi-primary{background:var(--p15-accent-soft)!important}
body.p15-product-shell #patrolDashboard .p4-viz-kpis>article.p15-kpi-danger strong{color:var(--p15-danger)!important}
body.p15-product-shell #patrolDashboard .p4-viz-kpis>article.p15-kpi-warn strong{color:var(--p15-warn)!important}
body.p15-product-shell #patrolDashboard .p4-viz-kpis>article:first-child strong{font-size:44px!important;color:var(--p15-ink)!important}
body.p15-product-shell #patrolDashboard .p4-viz-kpis strong{font-size:32px!important;color:var(--p15-ink)!important}
body.p15-product-shell #patrolDashboard .p4-viz-grid{grid-template-columns:1.25fr .9fr!important;align-items:stretch!important}
body.p15-product-shell #patrolDashboard .p4-reg-panel{grid-row:span 2}
body.p15-product-shell #patrolDashboard .p4-coverage-panel,
body.p15-product-shell #patrolDashboard .p4-priority-panel{min-height:176px!important}
.p15-coverage-status{display:grid;gap:10px;padding:8px 0 2px}.p15-coverage-status>div{display:flex;align-items:center;gap:10px;padding:10px 12px;border:1px solid #e2e8e5;border-radius:11px;background:#f8faf9}.p15-coverage-status i{width:8px;height:8px;border-radius:50%;background:#9ca8a4}.p15-coverage-status .ok i{background:var(--p15-good)}.p15-coverage-status b{display:block;color:var(--p15-text);font-size:13px}.p15-coverage-status small{display:block;margin-top:2px;color:var(--p15-muted);font-size:12px}
.p15-management-brief{display:grid;grid-template-columns:130px 1fr;gap:5px 18px;align-items:start;padding:15px 18px;border:1px solid #d8e4df;border-left:3px solid var(--p15-accent);border-radius:12px;background:#eef5f2!important;color:var(--p15-text)}
.p15-management-brief>span{grid-row:1 / span 2;font-size:12px;font-weight:800;color:var(--p15-accent-deep);padding-top:2px}.p15-management-brief>strong{font-size:15px;line-height:1.55;color:#344c4f}.p15-management-brief>div{display:flex;gap:10px;flex-wrap:wrap}.p15-management-brief p{display:flex;align-items:center;gap:6px;margin:0;color:#536568;font-size:12px}.p15-management-brief p b{display:grid;place-items:center;width:18px;height:18px;border-radius:50%;background:#dceae5;color:#3f6b63;font-size:11px}
body.p15-product-shell #patrolDashboard .hf31-action-section-title{display:none!important}
body.p15-product-shell #patrolDashboard .patrol-action-highlights{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:10px!important;margin-top:10px!important}
.p15-action-card{display:flex;align-items:center;gap:12px;min-height:66px;padding:12px 14px;border:1px solid #e0e6e4;border-radius:12px;background:#fff}.p15-action-card>span{display:grid;place-items:center;flex:0 0 28px;width:28px;height:28px;border-radius:8px;background:#eef3f1;color:#5c7470;font-weight:800}.p15-action-card b{display:block;font-size:14px;color:var(--p15-ink)}.p15-action-card small{display:block;margin-top:4px;color:var(--p15-muted);line-height:1.4}.p15-action-card.danger{border-color:#ead7d2}.p15-action-card.danger>span{background:var(--p15-danger-soft);color:var(--p15-danger)}.p15-action-card.warn{border-color:#ebdfcf}.p15-action-card.warn>span{background:var(--p15-warn-soft);color:var(--p15-warn)}
body.p15-product-shell #p14OverviewMore{margin-top:12px!important}.p14-overview-more>summary{min-height:44px!important;padding:10px 14px!important}.p14-overview-more-body{padding-top:10px!important}
body.p15-product-shell #patrolDashboard>.p7-module-head .patrol-module-actions{position:sticky;top:67px;z-index:12;background:rgba(255,255,255,.88);backdrop-filter:blur(8px);border-radius:10px;padding:4px}
body.p15-product-shell #patrolDashboard>.p7-module-head .patrol-module-actions button:nth-child(2),body.p15-product-shell #patrolDashboard>.p7-module-head .patrol-module-actions button:nth-child(3),body.p15-product-shell #patrolDashboard>.p7-module-head .patrol-module-actions button:nth-child(4){display:none!important}

/* Project: gaps first */
body.p15-product-shell #p7ProjectKpis{grid-template-columns:1.2fr 1fr 1fr 1fr!important}
body.p15-product-shell #p7ProjectKpis>article{background:#fff!important;border-color:var(--p15-line)!important;box-shadow:none!important;min-height:96px!important}
body.p15-product-shell #p7ProjectKpis>article.p15-kpi-primary{background:var(--p15-accent-soft)!important}
body.p15-product-shell #p7ProjectKpis>article strong{color:var(--p15-ink)!important;font-size:32px!important}.p15-data-gap-note{display:flex;align-items:center;gap:10px;margin:-2px 0 12px;padding:8px 12px;border:1px solid #e2e7e5;border-radius:9px;background:#f7f9f8;color:#798589;font-size:12px}.p15-data-gap-note b{color:#586a6d}
body.p15-product-shell #p7ProjectFilters{align-items:end!important;gap:8px!important}.p15-gap-toggle{border-color:#b8cdc5!important;color:#416a62!important;background:#f1f7f4!important;font-weight:800!important}.p15-gap-toggle.active{background:#dfece7!important;border-color:#91b2a6!important}
body.p15-product-shell #p7ProjectGridChart .p7-bar-row{grid-template-columns:110px minmax(150px,1fr) 52px!important}.p15-grid-gap-row .p7-bar-track i{background:var(--p15-accent)!important}.p15-grid-gap-row.data-missing .p7-bar-track i{background:#aebbb7!important}.p15-grid-gap-row small{grid-column:2 / -1!important;color:#8a9698!important}
body.p15-product-shell #p7ProjectGapList{gap:8px!important}.p15-gap-priority{display:grid;grid-template-columns:54px 1fr auto;align-items:center;gap:10px;min-height:62px;padding:9px 10px;border:1px solid #e2e7e5;border-radius:11px;background:#fff}.p15-gap-priority>strong{font-size:25px;line-height:1;color:var(--p15-text)}.p15-gap-priority b{display:block;color:var(--p15-ink);font-size:13px}.p15-gap-priority small{display:block;margin-top:3px;color:var(--p15-muted);font-size:11px}.p15-gap-priority.danger{background:#fffaf9;border-color:#eedbd7}.p15-gap-priority.danger>strong{color:var(--p15-danger)}.p15-gap-priority.warn{background:#fffdf9;border-color:#eee1cf}.p15-gap-priority.warn>strong{color:var(--p15-warn)}.p15-copy-gap{border:0;background:transparent;color:#5c7771;font-size:11px;cursor:pointer;padding:6px 7px;border-radius:7px}.p15-copy-gap:hover{background:#eef4f1}
body.p15-product-shell .p7-table-wrap{max-height:min(72vh,820px);overflow:auto!important;border-radius:12px}.p7-object-table thead th,.p9-responsibility-table thead th,.patrol-table thead th{position:sticky;top:0;z-index:4;background:#eef3f1!important;color:#45595b!important;border-bottom:1px solid #d9e3df!important;box-shadow:0 1px 0 rgba(56,78,77,.04)!important}.p7-object-table tbody tr:hover,.p9-responsibility-table tbody tr:hover,.patrol-table tbody tr:hover{background:#f6f9f7!important}.p15-project-name-cell .p7-cell-main>b{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;line-height:1.35;max-width:320px}.p15-project-address-cell{color:#78868a!important;max-width:230px}.p15-project-address-cell .p7-cell-main>b{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:230px;color:#6f7e82!important}.p15-project-address-cell small{color:#a0aaad!important}

/* Store empty state */
body.p15-product-shell #p11StoreEmptyState.p15-store-empty{display:grid!important;grid-template-columns:1.05fr .95fr!important;gap:14px!important;align-items:stretch!important;padding:0!important;background:transparent!important;border:0!important;box-shadow:none!important}.p15-store-empty .p11-empty-hero{min-height:250px!important;padding:28px!important;border:1px solid var(--p15-line)!important;border-radius:16px!important;background:#fff!important}.p15-store-empty .p14-empty-data-state{display:none!important}.p15-store-future{padding:24px;border:1px solid #dbe5e1;border-radius:16px;background:#eef5f2}.p15-store-future>b{display:block;margin-bottom:14px;color:#425c59;font-size:15px}.p15-store-future>div{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}.p15-store-future span{display:flex;align-items:center;min-height:46px;padding:10px 12px;border:1px solid #dce6e2;border-radius:10px;background:rgba(255,255,255,.64);color:#647477;font-size:12px;font-weight:700}.p15-store-future span:before{content:'✓';display:grid;place-items:center;width:20px;height:20px;margin-right:8px;border-radius:50%;background:#dcebe5;color:#4b776c;font-size:11px}

/* Responsibility: governance, not performance */
.p15-responsibility-anchor{display:grid;grid-template-columns:220px 220px 1fr;gap:10px;align-items:stretch;margin:0 0 12px}.p15-responsibility-anchor>div{padding:12px 14px;border:1px solid #dce4e1;border-radius:12px;background:#fff}.p15-responsibility-anchor>div.warn{background:#fffaf4;border-color:#eadcc8}.p15-responsibility-anchor span{display:block;color:#6c7a7e;font-size:11px}.p15-responsibility-anchor strong{display:block;margin-top:2px;color:#2f4649;font-size:26px}.p15-responsibility-anchor small{display:block;color:#869194;font-size:11px}.p15-responsibility-anchor>p{margin:0;padding:12px 14px;border:1px solid #dce4e1;border-radius:12px;background:#f6f9f7;color:#647477;font-size:12px;line-height:1.6}.p15-mini-availability{display:inline-flex;align-items:center;gap:7px;color:#879295;font-size:11px}.p15-mini-availability i{width:48px;height:5px;border-radius:999px;background:#d9dfdd}.p15-mini-availability em{font-style:normal}.p9-responsibility-table .p14-resp-gap-badge{background:#f4f7f6!important;color:#61706f!important}.p9-responsibility-table .p14-resp-gap-badge.danger{background:var(--p15-danger-soft)!important;color:#965346!important}.p9-responsibility-table .p14-resp-gap-badge.warn{background:var(--p15-warn-soft)!important;color:#936a34!important}

/* GIS: selected object immediately actionable */
body.p15-product-shell #patrolProjectMapBoard{filter:contrast(1.035) saturate(.93)}.p15-map-selected-card{margin-top:10px;padding:14px 16px;border:1px dashed #ccd9d4;border-radius:13px;background:#fbfcfc;color:#6d7b7e}.p15-map-selected-card>span{display:block;font-size:11px;color:#7d8a8d}.p15-map-selected-card>strong{display:block;margin-top:3px;font-size:14px;color:#526568}.p15-map-selected-card.has-selection{border-style:solid;border-color:#c7dcd4;background:#eef6f2;color:#405b57}.p15-map-card-head{display:flex;align-items:baseline;gap:10px}.p15-map-card-head span{font-size:11px;color:#6f817d;font-weight:800}.p15-map-card-head strong{font-size:15px;color:#294642}.p15-map-card-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;margin-top:11px}.p15-map-card-grid p{margin:0;padding:8px 10px;border:1px solid #d7e5df;border-radius:9px;background:rgba(255,255,255,.65)}.p15-map-card-grid span{display:block;font-size:10px;color:#7c8b88}.p15-map-card-grid b{display:block;margin-top:2px;font-size:12px;color:#405956;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.p15-map-selected-card>small{display:block;margin-top:9px;color:#70817d;font-size:11px}
.p15-map-legend-compact{display:grid;gap:0;margin:10px 0 12px;border:1px solid #dfe6e3;border-radius:11px;background:#f8faf9;overflow:hidden}.p15-map-legend-compact p{display:grid;grid-template-columns:48px 1fr;gap:8px;margin:0;padding:9px 11px;border-bottom:1px solid #e6ece9}.p15-map-legend-compact p:last-child{border:0}.p15-map-legend-compact span{color:#788689;font-size:10px;font-weight:800}.p15-map-legend-compact b{color:#536669;font-size:11px;line-height:1.5}.p15-map-more{margin-top:8px;border-top:1px solid #e1e8e5}.p15-map-more>summary{padding:9px 2px;color:#5d7470;font-size:11px;font-weight:800;cursor:pointer}.p15-map-more .patrol-map-narrative-section{border:0!important;padding-top:2px!important}.p15-map-copy-emphasis{border-color:#b7d0c7!important;color:#365f57!important;background:#f3f8f6!important;font-weight:800!important}.patrol-project-intelligence-map .patrol-map-actions{justify-content:flex-start!important}.patrol-project-intelligence-map .patrol-map-actions .btn{min-width:160px}.patrol-project-intelligence-map .patrol-map-actions #patrolProjectMapPngBtn{order:1}.patrol-project-intelligence-map .patrol-map-actions #patrolCopyProjectMapBtn{order:2}.patrol-project-intelligence-map .patrol-map-actions #patrolProjectMapZoomBtn{order:3}

/* Output groups by task frequency */
body.p15-product-shell #patrolOutputZone{gap:14px}.p15-output-group{margin-top:14px;padding:0;border:0;background:transparent}.p15-output-group>header{display:flex;align-items:baseline;gap:12px;margin:0 0 9px;padding:0 2px}.p15-output-group>header span{font-size:18px;font-weight:850;color:var(--p15-ink)}.p15-output-group>header small{color:var(--p15-muted);font-size:12px}.p15-output-group>div{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.p15-output-group>div>.patrol-panel,.p15-output-group>div>.patrol-copy-grid{margin:0!important}.p15-output-group .patrol-copy-grid{grid-column:1/-1}.p15-output-group .patrol-copy-card .btn{background:#fff!important;color:#46635e!important;border:1px solid #cfdcd7!important}.p15-output-group .patrol-writing-actions .btn:not(.primary),.p15-output-group .patrol-card-export-controls .btn:not(.primary){background:#fff!important;color:#4d6562!important;border-color:#d3ded9!important}.p15-output-group .patrol-brief{min-height:190px!important}.p15-output-group .patrol-panel-head>div:last-child{display:flex;gap:7px;align-items:center}

/* History baseline */
.p15-history-baseline{background:#f2f6f4!important;color:var(--p15-text)!important;border-color:#d9e4df!important}.p15-history-baseline .p11-history-baseline-head h3,.p15-history-baseline .p11-history-baseline-head p,.p15-history-baseline *{color:inherit}.p15-history-baseline .p11-history-baseline-head h3{color:#314c48!important}.p15-history-baseline .p11-history-baseline-head p{color:#6f807d!important}.p15-history-future{margin-top:14px;padding:14px;border:1px dashed #c9d7d2;border-radius:12px;background:rgba(255,255,255,.55)}.p15-history-future>b{display:block;margin-bottom:9px;color:#4c6661}.p15-history-future>div{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.p15-history-future span{padding:9px 10px;border:1px dashed #d4dfdb;border-radius:9px;background:#fafcfb;color:#71807d;font-size:11px}

/* Input live parser + successful state */
.p15-input-format{display:flex;gap:10px;margin-bottom:8px;padding:9px 11px;border:1px solid #dfe6e3;border-radius:9px;background:#f6f9f7;color:#6a797c;font-size:11px;line-height:1.55}.p15-input-format b{color:#4d6461;white-space:nowrap}.p15-input-live{margin-top:8px;padding:9px 11px;border:1px solid #dfe6e3;border-radius:10px;background:#fafcfb}.p15-input-live>div{display:flex;align-items:center;gap:14px;color:#5c6f70;font-size:11px}.p15-input-live>div span{font-weight:800;color:#41665f}.p15-input-live>div b{font-weight:750}.p15-input-live>small{display:block;margin-top:5px;color:#8a9496;font-size:10px}.p15-input-live details{margin-top:7px;color:#7d6c53;font-size:10px}.p15-input-live details p{margin:5px 0;padding:5px 7px;border-radius:6px;background:#fff9ef;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.p15-input-live details p b{margin-right:7px}.p15-input-ready #patrolInput{max-height:130px!important;opacity:.72}.p15-input-ready .p15-input-live{background:#f1f7f4;border-color:#d3e4dd}.p15-input-ready .patrol-package-check{background:#eef6f2!important;border-color:#d0e2da!important;color:#46615b!important}

/* One color system, quiet missing states */
body.p15-product-shell .p7-status-badge{background:#eef2f1!important;color:#627174!important;border:1px solid #e0e6e4!important}.p7-status-badge.danger{background:var(--p15-danger-soft)!important;color:#955247!important;border-color:#edd9d4!important}.p7-status-badge.warn{background:var(--p15-warn-soft)!important;color:#926833!important;border-color:#ecdfcd!important}.p7-status-badge.good,.p7-status-badge.covered{background:var(--p15-good-soft)!important;color:#4e786a!important;border-color:#d7e7e0!important}

/* Narrow desktop / tablet */
@media (max-width:1180px){.p15-completeness-bar{margin-left:12px;margin-right:12px;overflow-x:auto}.p15-completeness-bar>small{display:none}.p15-map-card-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.p15-responsibility-anchor{grid-template-columns:1fr 1fr}.p15-responsibility-anchor>p{grid-column:1/-1}.p15-output-group>div{grid-template-columns:1fr}body.p15-product-shell #patrolDashboard .p4-viz-kpis,body.p15-product-shell #p7ProjectKpis{grid-template-columns:repeat(2,minmax(0,1fr))!important}}
@media (max-width:900px){body.p15-product-shell #patrolDashboard .p4-viz-grid{grid-template-columns:1fr!important}.p15-store-empty{grid-template-columns:1fr!important}.p15-completeness-label{display:none}.p15-completeness-bar{gap:9px}.p15-completeness-item em{display:none}.p15-project-address-cell{max-width:150px}.p15-project-address-cell .p7-cell-main>b{max-width:150px}}
@media print{.p15-completeness-bar{background:#fff!important}.p15-copy-gap,.p15-gap-toggle,.p15-map-more>summary{display:none!important}.patrol-panel{box-shadow:none!important}}
.p15-input-bad-actions{display:flex;align-items:center;gap:8px;margin-top:7px}.p15-input-bad-actions button{border:1px solid #dbcba9;border-radius:7px;background:#fffaf0;color:#82673a;padding:5px 8px;font-size:10px;cursor:pointer}.p15-raw-toggle{margin-left:auto!important;flex:0 0 auto}.p15-input-ready #patrolInput:not(.p15-raw-open){display:none!important}.p15-input-ready #patrolInput.p15-raw-open{display:block!important;max-height:280px!important;opacity:.85}.p15-input-format .p15-raw-toggle{font-size:11px!important;padding:5px 8px!important}
.p9-responsibility-table .p11-gap-badge{display:inline-flex;padding:4px 7px;border:1px solid #e2e7e5;border-radius:999px;background:#f4f7f6!important;color:#647476!important;font-size:10px}.p9-responsibility-table .p11-gap-badge.danger{background:#fbefec!important;color:#955247!important;border-color:#edd9d4!important}.p9-responsibility-table .p11-gap-badge.warn{background:#fbf4e9!important;color:#916834!important;border-color:#ebdfcd!important}


/* ======================================================================
   P16 deep visual QA: stronger contrast, stable GIS context, quieter depth.
   ====================================================================== */
:root{
 --p16-canvas:#f3f6f5;--p16-surface:#ffffff;--p16-surface-soft:#f7f9f8;--p16-accent:#456a62;--p16-accent-strong:#365c54;
 --p16-ink:#20363c;--p16-text:#3d5258;--p16-muted:#586b70;--p16-border:#d3dedb;--p16-border-strong:#c4d2ce;
 --p16-good:#39745f;--p16-warn:#91642f;--p16-danger:#934e43;--p16-warn-soft:#fbf4e9;--p16-danger-soft:#faefec;
}
body.p16-product-shell{background:var(--p16-canvas)!important;color:var(--p16-text)!important}
body.p16-product-shell .app-sidebar,body.p16-product-shell .p7-sidebar{background:#f8faf9!important;border-color:var(--p16-border)!important}
body.p16-product-shell h1,body.p16-product-shell h2,body.p16-product-shell h3,body.p16-product-shell h4,body.p16-product-shell strong,body.p16-product-shell .p7-cell-main>b{color:var(--p16-ink)}
body.p16-product-shell p,body.p16-product-shell td,body.p16-product-shell label,body.p16-product-shell .patrol-map-filter-status{color:var(--p16-text)}
body.p16-product-shell small,body.p16-product-shell .patrol-eyebrow,body.p16-product-shell .p7-module-hint,body.p16-product-shell .p7-cell-main small,body.p16-product-shell .patrol-panel-head small{color:var(--p16-muted)!important}
body.p16-product-shell .patrol-panel,body.p16-product-shell .p7-module-head,body.p16-product-shell .p7-workspace-card{border-color:var(--p16-border)!important;box-shadow:0 6px 18px rgba(31,51,57,.035)!important}
body.p16-product-shell .btn.primary,body.p16-product-shell button.primary{background:var(--p16-accent-strong)!important;border-color:var(--p16-accent-strong)!important;color:#fff!important}
body.p16-product-shell .btn:not(.primary){color:#36554f!important;border-color:#c9d6d2!important;background:#fff!important}
body.p16-product-shell .btn:not(.primary):hover{background:#f2f7f5!important;border-color:#aebfba!important;color:#274c45!important}
body.p16-product-shell .p15-completeness-bar{background:#fff!important;border-color:var(--p16-border)!important;color:var(--p16-muted)!important;box-shadow:none!important}
body.p16-product-shell .p15-completeness-item b{color:#40575c!important}.p16-product-shell .p15-completeness-item em{color:#53666b!important}.p16-product-shell .p15-completeness-bar>small{color:#5d7074!important}
body.p16-product-shell .p15-input-live>small,body.p16-product-shell .p15-input-live details,body.p16-product-shell .p15-input-format,body.p16-product-shell .p15-responsibility-anchor span,body.p16-product-shell .p15-responsibility-anchor small{color:#586b70!important}
body.p16-product-shell .p15-responsibility-anchor>p{color:#4d6266!important;background:#f6f9f8!important}
body.p16-product-shell .p15-mini-availability{color:#5b6d71!important}
body.p16-product-shell .p15-history-baseline,body.p16-product-shell .p15-history-future{color:#40555a!important;background:#f5f8f7!important}
body.p16-product-shell .p15-history-baseline .p11-history-baseline-head h3{color:#263f45!important}.p16-product-shell .p15-history-baseline .p11-history-baseline-head p{color:#53686d!important}
body.p16-product-shell .p15-history-future span{color:#53676c!important;background:#fff!important}
body.p16-product-shell .p11-empty-hero p,body.p16-product-shell .p15-store-future span{color:#53676c!important}
body.p16-product-shell .p15-map-selected-card{min-height:154px;box-sizing:border-box;color:#53676b!important;border-color:#c4d5cf!important;background:#fbfdfc!important;overflow-anchor:none!important}
body.p16-product-shell .p15-map-selected-card>span,body.p16-product-shell .p15-map-card-head span,body.p16-product-shell .p15-map-card-grid span,body.p16-product-shell .p15-map-selected-card>small{color:#536a65!important}
body.p16-product-shell .p15-map-selected-card>strong,body.p16-product-shell .p15-map-card-head strong,body.p16-product-shell .p15-map-card-grid b{color:#294740!important}
body.p16-product-shell .p15-map-selected-card.has-selection{background:#eef6f3!important;border-color:#afcbbf!important}
body.p16-product-shell .p15-map-legend-compact{border-color:var(--p16-border)!important;background:#f7f9f8!important}.p16-product-shell .p15-map-legend-compact span{color:#50656a!important}.p16-product-shell .p15-map-legend-compact b{color:#344e53!important}
body.p16-product-shell #patrolAnalysisZone,body.p16-product-shell .patrol-project-intelligence-map,body.p16-product-shell .patrol-map-intelligence-layout,body.p16-product-shell .patrol-map-visual-column,body.p16-product-shell .patrol-map-canvas-shell,body.p16-product-shell #patrolProjectMapPriorityList,body.p16-product-shell .patrol-map-intelligence-panel{overflow-anchor:none!important}
body.p16-product-shell .patrol-map-intelligence-panel{scroll-behavior:auto!important}
body.p16-product-shell #patrolProjectMapBoard{filter:contrast(1.08) saturate(.88) brightness(.99)!important}
body.p16-product-shell .patrol-map-priority-row{border-color:#d7e1de!important;background:#fff!important}.p16-product-shell button.patrol-map-priority-row:hover,.p16-product-shell button.patrol-map-priority-row.is-selected{background:#edf5f2!important;border-color:#a9c5ba!important}.p16-product-shell .patrol-map-priority-main small{color:#53676c!important}.p16-product-shell .patrol-map-priority-state{color:#465e63!important}
body.p16-product-shell .p16-range-row{background:#f7f9f8!important;border-style:dashed!important}.p16-product-shell .p16-range-row .patrol-map-priority-no{font-size:10px!important;min-width:40px!important}
body.p16-product-shell .patrol-map-actions{gap:8px!important;flex-wrap:wrap}.p16-product-shell .patrol-map-actions .btn{min-width:auto!important}.p16-product-shell #patrolProjectMapPngBtn{min-width:190px!important}
body.p16-product-shell #p7ProjectTableWrap,body.p16-product-shell .p7-table-scroll{overflow:auto;scrollbar-gutter:stable}
body.p16-product-shell #p7ProjectTable thead th,body.p16-product-shell .p9-responsibility-table thead th{position:sticky;top:0;z-index:3;background:#edf2f1!important;color:#334b50!important;border-bottom:1px solid #cbd8d4!important;box-shadow:0 1px 0 rgba(35,53,58,.035)}
body.p16-product-shell #p7ProjectTable tbody tr:hover,body.p16-product-shell .p9-responsibility-table tbody tr:hover{background:#f5f8f7!important}
body.p16-product-shell #p7ProjectTable td,body.p16-product-shell .p9-responsibility-table td{border-color:#e2e8e6!important}
body.p16-product-shell .p16-project-name .p7-cell-main>b{display:-webkit-box!important;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;white-space:normal!important;max-width:310px;line-height:1.42}
body.p16-product-shell .p16-project-address{max-width:220px}.p16-product-shell .p16-project-address .p7-cell-main>b{display:block;max-width:210px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;color:#52666b!important;font-weight:650!important}
body.p16-product-shell .p7-status-badge{color:#53666b!important;background:#eef2f1!important;border-color:#dce4e1!important}.p16-product-shell .p7-status-badge.danger{color:#8c463d!important;background:#faefec!important}.p16-product-shell .p7-status-badge.warn{color:#845a2c!important;background:#fbf4e9!important}.p16-product-shell .p7-status-badge.good,.p16-product-shell .p7-status-badge.covered{color:#356b59!important;background:#edf6f1!important}
body.p16-product-shell .p15-kpi-primary{background:#edf4f1!important;color:var(--p16-ink)!important}.p16-product-shell .p15-kpi-primary *{color:inherit!important}.p16-product-shell .p15-kpi-danger{background:#fff!important}.p16-product-shell .p15-kpi-warn{background:#fff!important}
body.p16-product-shell .p15-data-gap-note{color:#4e6267!important;background:#f7f9f8!important;border-color:#d7e0dd!important}
body.p16-product-shell .p15-gap-priority small,body.p16-product-shell .p15-action-card small,body.p16-product-shell .p4-priority-row small{color:#53676c!important}
body.p16-product-shell .patrol-inline-empty,body.p16-product-shell .patrol-empty-card{color:#52666b!important;background:#f7f9f8!important;border-color:#d9e2df!important}
body.p16-product-shell .p7-skip-link.p16-skip-link{position:fixed!important;left:12px!important;top:-80px!important;z-index:99999!important;opacity:0!important}.p16-product-shell .p7-skip-link.p16-skip-link:focus{top:12px!important;opacity:1!important;background:#fff!important;color:#244b44!important;border:2px solid #456a62!important}
@media (max-width:900px){body.p16-product-shell .p15-map-selected-card{min-height:194px}.p16-product-shell .p15-map-card-grid{grid-template-columns:1fr 1fr!important}.p16-product-shell #p7ProjectTable{min-width:820px}.p16-product-shell .p15-completeness-bar{font-size:11px}}
@media print{body.p16-product-shell{background:#fff!important;color:#222!important}.p16-product-shell .app-sidebar,.p16-product-shell .p7-sidebar,.p16-product-shell .p15-completeness-bar,.p16-product-shell .patrol-map-actions,.p16-product-shell .p7-filter-row{display:none!important}.p16-product-shell .patrol-panel{border-color:#cfd6d3!important;box-shadow:none!important;break-inside:avoid}.p16-product-shell small{color:#444!important}.p16-product-shell #p7ProjectTable thead th,.p16-product-shell .p9-responsibility-table thead th{position:static!important;color:#222!important;background:#f2f2f2!important}}


/* P16 final contrast + narrow-screen + micro visual pass */
body.p16-product-shell{min-width:0!important;overflow-x:hidden!important}
body.p16-product-shell .p7-brand small,
body.p16-product-shell .p7-status-foot small,
body.p16-product-shell .p7-topbar-product,
body.p16-product-shell .p7-period-chip span,
body.p16-product-shell .p7-module-head p,
body.p16-product-shell .p7-module-head small,
body.p16-product-shell .p4-chart-caption,
body.p16-product-shell .p4-section-kicker,
body.p16-product-shell .p4-viz-kpis span,
body.p16-product-shell .p4-viz-kpis small,
body.p16-product-shell .p15-gap-priority small,
body.p16-product-shell .p15-action-card small,
body.p16-product-shell .patrol-writing-note,
body.p16-product-shell .p7-output-guide small,
body.p16-product-shell .p15-input-workspace small,
body.p16-product-shell .p11-history-metrics small,
body.p16-product-shell .p11-history-metrics span,
body.p16-product-shell .p11-history-baseline small,
body.p16-product-shell .p15-history-baseline small,
body.p16-product-shell .p15-history-future span{color:#485e63!important}
body.p16-product-shell .p7-brand small,
body.p16-product-shell .p7-status-foot small,
body.p16-product-shell .p7-topbar-product,
body.p16-product-shell .p7-period-chip span{font-weight:550!important}
body.p16-product-shell .patrol-schema-badge{color:#3d625a!important;background:#edf4f1!important;border:1px solid #d1dfda!important}
body.p16-product-shell .patrol-map-filter-chip.active,
body.p16-product-shell [data-project-map-filter].active{background:#e3efeb!important;color:#294e47!important;border-color:#abc4bb!important}
body.p16-product-shell .patrol-map-filter-chip.active b,
body.p16-product-shell [data-project-map-filter].active b{color:#294e47!important;background:rgba(41,78,71,.08)!important}
body.p16-product-shell .patrol-map-search-clear,
body.p16-product-shell .patrol-map-search-wrap button{color:#315b53!important;background:#edf4f1!important;border-color:#cbdcd6!important}
body.p16-product-shell .patrol-map-reading-hint,
body.p16-product-shell .patrol-map-reading-hint small,
body.p16-product-shell .patrol-building-object small,
body.p16-product-shell .patrol-building-object dt,
body.p16-product-shell .patrol-map-list-more,
body.p16-product-shell .patrol-map-intelligence-title small{color:#4a6065!important}
body.p16-product-shell .patrol-building-object dd{color:#30494f!important}
body.p16-product-shell .p15-map-selected-card small{color:#465f59!important}
body.p16-product-shell .p15-map-selected-card>strong{color:#203c36!important}
body.p16-product-shell .patrol-map-priority-main b{color:#2b4449!important}
body.p16-product-shell .patrol-map-priority-main small{color:#4c6267!important}
body.p16-product-shell .patrol-map-priority-state{color:#3e585e!important;font-weight:700!important}
body.p16-product-shell .p14-resp-switch span{color:#4c6266!important}
body.p16-product-shell .p15-mini-availability span,
body.p16-product-shell .p15-mini-availability small{color:#4f6368!important}
body.p16-product-shell .p15-history-baseline .p11-history-baseline-count strong{color:#29464a!important}
body.p16-product-shell .p15-history-baseline .p11-history-baseline-count small{color:#4c615e!important}
body.p16-product-shell .p15-output-group .patrol-schema-badge{color:#3f635b!important}
body.p16-product-shell .p15-output-group small{color:#4d6166!important}
body.p16-product-shell .p15-input-format,
body.p16-product-shell .p15-input-live,
body.p16-product-shell .p15-input-workspace small{color:#465e64!important}
body.p16-product-shell .p15-management-brief strong{color:#29463f!important}
body.p16-product-shell .p15-management-brief p{color:#3f5953!important}
body.p16-product-shell .p15-gap-priority{border-color:#d5dfdc!important;box-shadow:none!important}
body.p16-product-shell .p15-action-card{border:1px solid #d9e2df!important;background:#fff!important;border-radius:12px!important;padding:14px!important}
body.p16-product-shell .p15-action-card.danger{background:#fdf7f5!important;border-color:#ecd9d4!important}
body.p16-product-shell .p15-action-card.warn{background:#fdf9f2!important;border-color:#e9dfce!important}
body.p16-product-shell .p15-action-card.neutral{background:#f7faf9!important}
body.p16-product-shell .p9-responsibility-table .p11-gap-badge{font-weight:700!important;color:#4c5f63!important}
body.p16-product-shell .p9-responsibility-table .p11-gap-badge.danger{color:#81463e!important}
body.p16-product-shell .p9-responsibility-table .p11-gap-badge.warn{color:#7d582b!important}
@media(max-width:1024px){
 :root{--p7-sidebar:176px!important;--p9-nav:176px!important;--p10-nav:176px!important;--p13-nav:176px!important}
 body.p16-product-shell{min-width:0!important;overflow-x:hidden!important}
 body.p16-product-shell .p7-sidebar{width:176px!important}
 body.p16-product-shell .p7-topbar{left:176px!important;padding:0 12px!important}
 html body.p16-product-shell #patrolPage.p7-main{margin-left:176px!important;padding:12px!important;width:auto!important;min-width:0!important}
 body.p16-product-shell #patrolPage>.workspace{min-width:0!important;width:100%!important}
 body.p16-product-shell .p7-object-table{min-width:820px!important}
 body.p16-product-shell .p9-responsibility-table{min-width:820px!important}
 body.p16-product-shell .p7-filterbar{align-items:stretch!important}
 body.p16-product-shell .p7-filterbar .p7-search{min-width:210px!important}
 body.p16-product-shell .patrol-map-intelligence-layout{grid-template-columns:1fr!important}
 body.p16-product-shell .patrol-map-intelligence-panel{max-height:none!important;overflow:visible!important}
 body.p16-product-shell .patrol-map-actions{grid-template-columns:repeat(2,minmax(0,1fr))!important}
}
@media(max-width:760px){
 :root{--p7-sidebar:68px!important;--p9-nav:68px!important;--p10-nav:68px!important;--p13-nav:68px!important}
 body.p16-product-shell .p7-sidebar{width:68px!important}
 body.p16-product-shell .p7-sidebar .p7-brand-copy,body.p16-product-shell .p7-sidebar .p7-nav-label,body.p16-product-shell .p7-sidebar .p7-status-foot small{display:none!important}
 body.p16-product-shell .p7-topbar{left:68px!important}
 html body.p16-product-shell #patrolPage.p7-main{margin-left:68px!important;padding:10px!important}
 body.p16-product-shell .p7-topbar-subtitle,body.p16-product-shell .p7-period-chip{display:none!important}
 body.p16-product-shell .p4-viz-kpis,body.p16-product-shell #p7ProjectKpis{grid-template-columns:1fr 1fr!important}
 body.p16-product-shell .p15-responsibility-anchor{grid-template-columns:1fr!important}
 body.p16-product-shell .p15-responsibility-anchor>p{grid-column:auto!important}
 body.p16-product-shell .patrol-map-actions{grid-template-columns:1fr!important}
}

/* P16 final authority: high-contrast, responsive and micro-layout acceptance pass */
html body.patrol-mode.patrol-standalone.p16-product-shell{
  min-width:0!important;overflow-x:hidden!important;background:#f4f6f5!important;color:#26383d!important;
}
html body.patrol-mode.patrol-standalone.p16-product-shell .p7-sidebar{background:#f8faf9!important}
html body.patrol-mode.patrol-standalone.p16-product-shell .p7-brand small,
html body.patrol-mode.patrol-standalone.p16-product-shell .p7-status-foot small,
html body.patrol-mode.patrol-standalone.p16-product-shell .p7-topbar-product,
html body.patrol-mode.patrol-standalone.p16-product-shell .p7-period-chip span{color:#4c605e!important;font-weight:650!important}
html body.patrol-mode.patrol-standalone.p16-product-shell #patrolPage p,
html body.patrol-mode.patrol-standalone.p16-product-shell #patrolPage small{color:#475c62!important}
html body.patrol-mode.patrol-standalone.p16-product-shell #patrolPage .p4-viz-kpis span,
html body.patrol-mode.patrol-standalone.p16-product-shell #patrolPage .p4-viz-kpis small,
html body.patrol-mode.patrol-standalone.p16-product-shell #patrolPage .p7-module-head p,
html body.patrol-mode.patrol-standalone.p16-product-shell #patrolPage .p7-module-head small,
html body.patrol-mode.patrol-standalone.p16-product-shell #patrolPage .p4-chart-caption,
html body.patrol-mode.patrol-standalone.p16-product-shell #patrolPage .p4-section-kicker{color:#465a60!important}
html body.patrol-mode.patrol-standalone.p16-product-shell #patrolPage .p4-mini-head span,
html body.patrol-mode.patrol-standalone.p16-product-shell #patrolPage .p4-mini-head b{color:#455b62!important}
html body.patrol-mode.patrol-standalone.p16-product-shell #patrolPage .patrol-schema-badge{color:#315b52!important;background:#edf5f1!important;border:1px solid #cbded6!important;font-weight:750!important}
html body.patrol-mode.patrol-standalone.p16-product-shell #patrolAnalysisZone #patrolProjectMapSearchClear,
html body.patrol-mode.patrol-standalone.p16-product-shell #patrolAnalysisZone .patrol-map-search-wrap button{color:#2d574f!important;background:#edf5f1!important;border-color:#c7dbd3!important}
html body.patrol-mode.patrol-standalone.p16-product-shell #patrolAnalysisZone #patrolProjectInlineHint{color:#3f565c!important;background:#f7faf9!important;border-color:#d7e1de!important}
html body.patrol-mode.patrol-standalone.p16-product-shell #patrolAnalysisZone .p15-map-selected-card small{color:#3f5852!important}
html body.patrol-mode.patrol-standalone.p16-product-shell #patrolAnalysisZone .p15-map-selected-card>strong{color:#1f3b35!important}
html body.patrol-mode.patrol-standalone.p16-product-shell #patrolAnalysisZone .patrol-map-intelligence-title small,
html body.patrol-mode.patrol-standalone.p16-product-shell #patrolAnalysisZone .patrol-map-priority-main small,
html body.patrol-mode.patrol-standalone.p16-product-shell #patrolAnalysisZone .patrol-map-reading-hint,
html body.patrol-mode.patrol-standalone.p16-product-shell #patrolAnalysisZone .patrol-map-reading-hint small{color:#455d62!important}
html body.patrol-mode.patrol-standalone.p16-product-shell #patrolAnalysisZone .patrol-map-priority-main b{color:#263f44!important}
html body.patrol-mode.patrol-standalone.p16-product-shell #patrolAnalysisZone .patrol-map-priority-state{color:#354e54!important;font-weight:750!important}
html body.patrol-mode.patrol-standalone.p16-product-shell #patrolAnalysisZone .p15-map-legend-compact{height:auto!important;min-height:0!important;flex:0 0 auto!important;overflow:hidden!important;margin:8px 0 10px!important;background:#f7faf9!important;border-color:#d6e1dd!important}
html body.patrol-mode.patrol-standalone.p16-product-shell #patrolAnalysisZone .p15-map-legend-compact p{flex:0 0 auto!important;padding:8px 10px!important}
html body.patrol-mode.patrol-standalone.p16-product-shell #patrolAnalysisZone .p15-map-legend-compact span{color:#425c61!important;font-size:10.5px!important}
html body.patrol-mode.patrol-standalone.p16-product-shell #patrolAnalysisZone .p15-map-legend-compact b{color:#2e484d!important;font-size:11px!important}
html body.patrol-mode.patrol-standalone.p16-product-shell #patrolAnalysisZone .patrol-map-insight-section{flex:0 0 auto!important}
html body.patrol-mode.patrol-standalone.p16-product-shell #patrolAnalysisZone .patrol-map-intelligence-panel{scroll-behavior:auto!important;overflow-anchor:none!important}
html body.patrol-mode.patrol-standalone.p16-product-shell #patrolOutputZone .patrol-writing-note{color:#435a5e!important;background:#f6f8f7!important}
html body.patrol-mode.patrol-standalone.p16-product-shell #patrolOutputZone .p7-output-guide span,
html body.patrol-mode.patrol-standalone.p16-product-shell #patrolOutputZone .p7-output-guide small,
html body.patrol-mode.patrol-standalone.p16-product-shell #patrolOutputZone .p15-output-group small{color:#465c62!important}
html body.patrol-mode.patrol-standalone.p16-product-shell #patrolCompareZone .patrol-schema-badge,
html body.patrol-mode.patrol-standalone.p16-product-shell #patrolCompareZone .p11-history-metrics span,
html body.patrol-mode.patrol-standalone.p16-product-shell #patrolCompareZone .p11-history-metrics small,
html body.patrol-mode.patrol-standalone.p16-product-shell #patrolCompareZone .p15-history-future span{color:#465b61!important}
html body.patrol-mode.patrol-standalone.p16-product-shell #patrolInputZone .p15-input-format,
html body.patrol-mode.patrol-standalone.p16-product-shell #patrolInputZone .p15-input-live,
html body.patrol-mode.patrol-standalone.p16-product-shell #patrolInputZone .p15-input-workspace small{color:#425a60!important}
html body.patrol-mode.patrol-standalone.p16-product-shell #p7ProjectTable .p7-detail-btn{min-height:30px!important;padding:5px 8px!important}
html body.patrol-mode.patrol-standalone.p16-product-shell #p15ResponsibilityAnchor{grid-template-columns:220px minmax(0,1fr)!important;align-items:stretch!important}
html body.patrol-mode.patrol-standalone.p16-product-shell #p15ResponsibilityAnchor>p{grid-column:auto!important;display:flex!important;align-items:center!important;color:#38524d!important}
html body.patrol-mode.patrol-standalone.p16-product-shell .p15-completeness-item em,
html body.patrol-mode.patrol-standalone.p16-product-shell .p15-completeness-bar>small{color:#4d615f!important}

@media(max-width:1024px){
 html body.patrol-mode.patrol-standalone.p16-product-shell{min-width:0!important;overflow-x:hidden!important}
 html body.patrol-mode.patrol-standalone.p16-product-shell .p7-sidebar{width:176px!important}
 html body.patrol-mode.patrol-standalone.p16-product-shell .p7-topbar{left:176px!important;min-width:0!important;width:auto!important;right:0!important}
 html body.patrol-mode.patrol-standalone.p16-product-shell #patrolPage.p7-main{margin-left:176px!important;min-width:0!important;width:auto!important;max-width:none!important;padding:12px!important}
 html body.patrol-mode.patrol-standalone.p16-product-shell #patrolPage>.workspace{min-width:0!important;width:100%!important;max-width:none!important}
 html body.patrol-mode.patrol-standalone.p16-product-shell .p7-table-wrap,
 html body.patrol-mode.patrol-standalone.p16-product-shell .p9-responsibility-table-wrap{max-width:100%!important;overflow-x:auto!important;overscroll-behavior-inline:contain!important}
 html body.patrol-mode.patrol-standalone.p16-product-shell #p7ProjectTable,
 html body.patrol-mode.patrol-standalone.p16-product-shell .p9-responsibility-table{min-width:820px!important}
 html body.patrol-mode.patrol-standalone.p16-product-shell #patrolAnalysisZone .patrol-map-intelligence-layout{grid-template-columns:1fr!important}
 html body.patrol-mode.patrol-standalone.p16-product-shell #patrolAnalysisZone .patrol-map-intelligence-panel{max-height:none!important;overflow:visible!important}
 html body.patrol-mode.patrol-standalone.p16-product-shell #p15ResponsibilityAnchor{grid-template-columns:1fr!important}
}
@media(max-width:760px){
 html body.patrol-mode.patrol-standalone.p16-product-shell .p7-sidebar{width:68px!important}
 html body.patrol-mode.patrol-standalone.p16-product-shell .p7-topbar{left:68px!important}
 html body.patrol-mode.patrol-standalone.p16-product-shell #patrolPage.p7-main{margin-left:68px!important;padding:10px!important}
 html body.patrol-mode.patrol-standalone.p16-product-shell .p7-sidebar .p7-brand-copy,
 html body.patrol-mode.patrol-standalone.p16-product-shell .p7-sidebar .p7-nav-label,
 html body.patrol-mode.patrol-standalone.p16-product-shell .p7-sidebar .p7-status-foot small{display:none!important}
 html body.patrol-mode.patrol-standalone.p16-product-shell .p7-topbar-subtitle,
 html body.patrol-mode.patrol-standalone.p16-product-shell .p7-period-chip{display:none!important}
 html body.patrol-mode.patrol-standalone.p16-product-shell #patrolDashboard .p4-viz-kpis,
 html body.patrol-mode.patrol-standalone.p16-product-shell #p7ProjectKpis{grid-template-columns:1fr 1fr!important}
}
@media print{
 html body.patrol-mode.patrol-standalone.p16-product-shell{background:#fff!important;color:#222!important;min-width:0!important;overflow:visible!important}
 html body.patrol-mode.patrol-standalone.p16-product-shell .p7-sidebar,
 html body.patrol-mode.patrol-standalone.p16-product-shell .p7-topbar,
 html body.patrol-mode.patrol-standalone.p16-product-shell .p15-completeness-bar{display:none!important}
 html body.patrol-mode.patrol-standalone.p16-product-shell #patrolPage.p7-main{margin-left:0!important;padding:0!important}
}

/* P16 final hard gates: legacy-hidden elements, strong print surface and persistent readable text */
html body.patrol-mode.patrol-standalone.p16-product-shell .p15-force-hidden{display:none!important}
html body.patrol-mode.patrol-standalone.p16-product-shell #patrolAnalysisZone .p15-map-legend-compact{min-height:156px!important;flex-shrink:0!important}
html body.patrol-mode.patrol-standalone.p16-product-shell #patrolAnalysisZone .p15-map-legend-compact p{min-height:48px!important}
html body.patrol-mode.patrol-standalone.p16-product-shell #patrolPage .p4-priority-row>strong{color:#243f45!important}
html body.patrol-mode.patrol-standalone.p16-product-shell #patrolPage .p4-priority-row small{color:#4b6268!important}
html body.patrol-mode.patrol-standalone.p16-product-shell #patrolPage .p4-priority-row b{color:#263f45!important}
html body.patrol-mode.patrol-standalone.p16-product-shell #patrolPage .p4-priority-row>i{color:#793c34!important;background:#f9ece9!important}
html body.patrol-mode.patrol-standalone.p16-product-shell #patrolPage .p4-priority-row.warn>i{color:#72501f!important;background:#faf2e4!important}
@media print{
 html body.patrol-mode.patrol-standalone.p7-product-shell.p8-product-shell.p9-product-shell.p10-product-shell.p11-product-shell.p12-product-shell.p13-product-shell.p14-product-shell.p15-product-shell.p16-product-shell{background:#fff!important;background-color:#fff!important;color:#222!important}
}

/* P16 contrast micro-fixes after visual audit */
html body.patrol-mode.patrol-standalone.p16-product-shell #patrolPage #p4RegChartTotal,
html body.patrol-mode.patrol-standalone.p16-product-shell #patrolPage #p4PriorityTotal,
html body.patrol-mode.patrol-standalone.p16-product-shell #patrolPage .p4-chart-panel header>b{color:#4b5f69!important}
html body.patrol-mode.patrol-standalone.p16-product-shell #patrolPage .patrol-structure-subtitle{color:#43565f!important}
html body.patrol-mode.patrol-standalone.p16-product-shell #patrolPage .patrol-empty-card{color:#43565f!important}
html body.patrol-mode.patrol-standalone.p16-product-shell #patrolDashboard .p15-management-brief p>b{color:#345850!important}
html body.patrol-mode.patrol-standalone.p16-product-shell #p7ResponsibilityKpis .p15-kpi-primary span,
html body.patrol-mode.patrol-standalone.p16-product-shell #p7ResponsibilityKpis .p15-kpi-primary small{color:#475c60!important}
/* P16 final contrast zero-defect pass */
html body.patrol-mode.patrol-standalone.p16-product-shell #patrolDashboard .p15-action-card>span{color:#2f5a52!important}
html body.patrol-mode.patrol-standalone.p16-product-shell #patrolOutputZone .p7-module-head p,
html body.patrol-mode.patrol-standalone.p16-product-shell #patrolCompareZone .p7-module-head p{color:#40565c!important}
/* P16 readable text floor: secondary text remains visibly secondary, never low-contrast */
html body.patrol-mode.patrol-standalone.p7-product-shell.p8-product-shell.p9-product-shell.p10-product-shell.p11-product-shell.p12-product-shell.p13-product-shell.p14-product-shell.p15-product-shell.p16-product-shell #patrolPage small{color:#40575d!important}
html body.patrol-mode.patrol-standalone.p7-product-shell.p8-product-shell.p9-product-shell.p10-product-shell.p11-product-shell.p12-product-shell.p13-product-shell.p14-product-shell.p15-product-shell.p16-product-shell #patrolPage .p7-module-head p{color:#40575d!important}
html body.patrol-mode.patrol-standalone.p7-product-shell.p8-product-shell.p9-product-shell.p10-product-shell.p11-product-shell.p12-product-shell.p13-product-shell.p14-product-shell.p15-product-shell.p16-product-shell #p7ProjectKpis .p15-kpi-primary span,
html body.patrol-mode.patrol-standalone.p7-product-shell.p8-product-shell.p9-product-shell.p10-product-shell.p11-product-shell.p12-product-shell.p13-product-shell.p14-product-shell.p15-product-shell.p16-product-shell #p7ProjectKpis .p15-kpi-primary small,
html body.patrol-mode.patrol-standalone.p7-product-shell.p8-product-shell.p9-product-shell.p10-product-shell.p11-product-shell.p12-product-shell.p13-product-shell.p14-product-shell.p15-product-shell.p16-product-shell #p7ResponsibilityKpis .p15-kpi-primary span,
html body.patrol-mode.patrol-standalone.p7-product-shell.p8-product-shell.p9-product-shell.p10-product-shell.p11-product-shell.p12-product-shell.p13-product-shell.p14-product-shell.p15-product-shell.p16-product-shell #p7ResponsibilityKpis .p15-kpi-primary small{color:#40575d!important}


/* P17 micro/macro polish: practical, durable, no-dashboard aesthetic */
body.p17-product-shell{--p17-ink:#263c41;--p17-text:#40565b;--p17-muted:#596d71;--p17-line:#d8e1de;--p17-soft:#f5f8f7}
/* Four key KPIs belong to one visual row on normal desktop; no orphan blank cells. */
html body.patrol-mode.patrol-standalone.p17-product-shell #patrolDashboard .p4-viz-kpis,
html body.patrol-mode.patrol-standalone.p17-product-shell #p7ProjectKpis,
html body.patrol-mode.patrol-standalone.p17-product-shell #p7ResponsibilityKpis{grid-template-columns:repeat(4,minmax(0,1fr))!important}
/* Management actions become compact parallel next steps instead of a long vertical tail. */
html body.p17-product-shell #patrolActionHighlights.p17-action-grid{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:10px!important;margin:0 0 14px!important}
html body.p17-product-shell #patrolActionHighlights.p17-action-grid .p15-action-card{min-height:70px!important;margin:0!important}
html body.p17-product-shell .p15-management-brief>div{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:7px 12px!important}
html body.p17-product-shell .p15-management-brief p{min-width:0!important}
/* Project chart: one explanation, not the same missing-data sentence repeated eight times. */
html body.p17-product-shell .p17-grid-note{margin:2px 0 9px;padding:8px 10px;border-radius:9px;background:#f6f9f8;color:#506468;font-size:11.5px;line-height:1.45}
html body.p17-product-shell .p15-grid-gap-row .p17-row-detail-hidden{display:none!important}
html body.p17-product-shell .p15-grid-gap-row{min-height:42px!important;margin-bottom:5px!important}
/* Gap summary values such as 58/58 must never collide with their labels. */
html body.p17-product-shell .p15-gap-priority{grid-template-columns:76px minmax(0,1fr) auto!important}
html body.p17-product-shell .p15-gap-priority>strong{font-size:23px!important;white-space:nowrap!important;letter-spacing:-.02em}
/* Responsibility authority is already a KPI: keep the second occurrence as a compact governance note only. */
html body.p17-product-shell #p15ResponsibilityAnchor.p17-responsibility-note{display:block!important;padding:10px 14px!important;border:1px solid #d9e3df!important;border-radius:11px!important;background:#f7faf9!important}
html body.p17-product-shell #p15ResponsibilityAnchor.p17-responsibility-note>p{margin:0!important;display:block!important;color:#40585a!important;line-height:1.55!important}
html body.p17-product-shell #p15ResponsibilityAnchor.p17-responsibility-note>p b{color:#2f514a!important;margin-right:6px}
/* Main map uses one clear selected-object card. Legacy inline hint/popup are redundant in normal map view. */
html body.p17-product-shell #patrolProjectInlineHint,
html body.p17-product-shell #patrolProjectBuildingPopupCard{display:none!important}
html body.p17-product-shell .p15-map-selected-card{min-height:0!important;padding:13px 15px!important}
html body.p17-product-shell .p15-map-selected-card:not(.has-selection){background:#f8fbfa!important;border-style:solid!important}
/* Empty store state: unavailable actions look unavailable and do not invite dead clicks. */
html body.p17-product-shell .p17-disabled-action{opacity:.5!important;cursor:not-allowed!important;background:#f4f6f5!important;color:#6c7b7d!important;border-color:#dbe2df!important}
/* Output centre: management-card controls remain readable inside a half-width card. */
html body.p17-product-shell #patrolOutputZone .patrol-card-export-controls{display:grid!important;grid-template-columns:minmax(0,1fr) minmax(0,1fr)!important;gap:8px!important;align-items:end!important}
html body.p17-product-shell #patrolOutputZone .patrol-card-export-controls label{min-width:0!important;width:100%!important}
html body.p17-product-shell #patrolOutputZone .patrol-card-export-controls select{width:100%!important;min-width:0!important}
html body.p17-product-shell #patrolOutputZone .patrol-card-export-controls .btn{grid-column:1/-1!important;width:100%!important}
html body.p17-product-shell #p15OutputArchive>div{grid-template-columns:1fr!important}
html body.p17-product-shell #p15OutputArchive .patrol-panel{min-height:auto!important}
html body.p17-product-shell #p15OutputArchive .patrol-writing-actions{display:flex!important;flex-wrap:wrap!important;gap:8px!important}
/* History has one future-comparison explanation, not two duplicated six-item lists. */
html body.p17-product-shell #p15HistoryFuture{display:none!important}
/* Input recognition distinguishes raw source records from effective Shixia governance objects. */
html body.p17-product-shell #p15InputLive>div:first-child{display:flex!important;flex-wrap:wrap!important;align-items:center!important;gap:7px 12px!important}
html body.p17-product-shell #p15InputLive>div:first-child b{white-space:nowrap!important}
/* Dense text remains legible; avoid ultra-light helper text on white/gray surfaces. */
html body.p17-product-shell #patrolPage small,
html body.p17-product-shell #patrolPage .muted{color:#4e6468!important}
@media(max-width:1180px){html body.p17-product-shell #patrolDashboard .p4-viz-kpis,html body.p17-product-shell #p7ProjectKpis,html body.p17-product-shell #p7ResponsibilityKpis{grid-template-columns:repeat(2,minmax(0,1fr))!important}html body.p17-product-shell #patrolActionHighlights.p17-action-grid{grid-template-columns:1fr!important}html body.p17-product-shell .p15-management-brief>div{grid-template-columns:1fr!important}}
@media(max-width:720px){html body.p17-product-shell #patrolDashboard .p4-viz-kpis,html body.p17-product-shell #p7ProjectKpis,html body.p17-product-shell #p7ResponsibilityKpis{grid-template-columns:1fr!important}html body.p17-product-shell #patrolOutputZone .patrol-card-export-controls{grid-template-columns:1fr!important}html body.p17-product-shell #patrolOutputZone .patrol-card-export-controls .btn{grid-column:auto!important}}


/* P17 release-candidate geometry/detail fixes */
/* Higher specificity than legacy P9/P11 rules. */
html body.patrol-mode.patrol-standalone.p9-product-shell.p11-product-shell.p17-product-shell #patrolPage>#patrolDashboard #patrolActionHighlights.p17-action-grid{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:10px!important;margin:0 0 14px!important}
html body.patrol-mode.patrol-standalone.p17-product-shell #patrolAnalysisZone #patrolProjectMapPriorityList{max-height:420px!important;overflow-y:auto!important;overflow-x:hidden!important;overscroll-behavior:contain!important;scrollbar-gutter:stable!important;padding-right:3px!important;scroll-behavior:auto!important;overflow-anchor:none!important}
html body.patrol-mode.patrol-standalone.p17-product-shell #patrolAnalysisZone #patrolProjectMapPriorityList .patrol-map-priority-row{scroll-margin:0!important}
html body.patrol-mode.patrol-standalone.p17-product-shell #patrolOutputZone>.p17-output-full{grid-column:1/-1!important;width:100%!important;min-width:0!important}
html body.patrol-mode.patrol-standalone.p17-product-shell #patrolOutputZone>#p17OutputCopyGroup>div{display:block!important}
html body.patrol-mode.patrol-standalone.p17-product-shell #patrolOutputZone>#p17OutputCopyGroup .patrol-copy-grid{width:100%!important;grid-template-columns:repeat(4,minmax(0,1fr))!important}
html body.patrol-mode.patrol-standalone.p17-product-shell #patrolOutputZone>#p15OutputArchive>div{grid-template-columns:1fr!important;width:100%!important}
html body.patrol-mode.patrol-standalone.p17-product-shell #patrolOutputZone>#p15OutputArchive .patrol-panel{grid-column:1/-1!important;width:100%!important}
@media(max-width:1180px){html body.patrol-mode.patrol-standalone.p17-product-shell #patrolOutputZone>#p17OutputCopyGroup .patrol-copy-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}html body.patrol-mode.patrol-standalone.p9-product-shell.p11-product-shell.p17-product-shell #patrolPage>#patrolDashboard #patrolActionHighlights.p17-action-grid{grid-template-columns:1fr!important}}
@media(max-width:720px){html body.patrol-mode.patrol-standalone.p17-product-shell #patrolOutputZone>#p17OutputCopyGroup .patrol-copy-grid{grid-template-columns:1fr!important}}

/* P17 final stable-scroll and high-frequency spatial comparison */
html.p17-scroll-stable{scroll-behavior:auto!important}
html body.patrol-mode.patrol-standalone.p17-product-shell #patrolAnalysisZone #patrolProjectMapPriorityList{max-height:520px!important}


/* P17 final micro QA: remove repeated non-actionable missing data and duplicate output legend */
html body.patrol-mode.patrol-standalone.p17-product-shell .p7-object-table.p17-project-daily-missing th:nth-child(5),
html body.patrol-mode.patrol-standalone.p17-product-shell .p7-object-table.p17-project-daily-missing td:nth-child(5){display:none!important}
html body.patrol-mode.patrol-standalone.p17-product-shell #p7ProjectFilters .p17-filter-not-applicable{display:none!important}
html body.patrol-mode.patrol-standalone.p17-product-shell .p17-missing-inline{display:inline-flex;align-items:center;min-height:24px;padding:3px 8px;border-radius:999px;background:#f1f4f3;border:1px solid #dce4e1;color:#4f6265;font-size:11px;font-weight:700;white-space:nowrap}
html body.patrol-mode.patrol-standalone.p17-product-shell #patrolOutputZone .p7-output-guide{display:none!important}

/* P17 narrow-screen visual QA: readable task flow, no vertically crushed status copy */
@media(max-width:720px){
 html body.patrol-mode.patrol-standalone.p17-product-shell #patrolOutputZone{grid-template-columns:1fr!important}
 html body.patrol-mode.patrol-standalone.p17-product-shell #patrolOutputZone>.p15-output-group{grid-column:1/-1!important;width:100%!important}
 html body.patrol-mode.patrol-standalone.p17-product-shell .p7-sidebar .p7-status-foot{display:none!important}
}
@media(max-width:720px){html body.patrol-mode.patrol-standalone.p17-product-shell .p7-sidebar .p7-side-foot{display:none!important}}

/* ======================================================================
   P18 — enterprise precision UI
   Goal: large-enterprise clarity, premium technical restraint, zero gimmick.
   ====================================================================== */
html body.patrol-mode.patrol-standalone.p18-product-shell{
  --p18-canvas:#edf2f1;
  --p18-surface:#ffffff;
  --p18-surface-2:#f7faf9;
  --p18-surface-3:#eef5f2;
  --p18-ink:#18343c;
  --p18-text:#314b51;
  --p18-muted:#5a6e73;
  --p18-line:#d6e0dd;
  --p18-line-strong:#c5d3cf;
  --p18-brand:#2e695e;
  --p18-brand-strong:#24574f;
  --p18-brand-soft:#e8f3ef;
  --p18-danger:#9a4d43;
  --p18-warn:#95682d;
  --p18-good:#34715e;
  --p18-shadow:0 12px 34px rgba(25,49,54,.055);
  --p18-shadow-soft:0 5px 18px rgba(25,49,54,.035);
  background:var(--p18-canvas)!important;
  color:var(--p18-ink)!important;
  font-size:15px!important;
  -webkit-font-smoothing:antialiased;
  text-rendering:optimizeLegibility;
}
html body.p18-product-shell #patrolPage.p7-main{
  background:var(--p18-canvas)!important;
  padding:18px 20px 34px!important;
}
html body.p18-product-shell #patrolPage.p7-main>.workspace{max-width:1860px!important}

/* Enterprise chrome: quiet, precise, lightly translucent, never dashboard-like. */
html body.p18-product-shell .p7-sidebar{
  background:#f7faf9!important;
  border-right:1px solid var(--p18-line)!important;
  box-shadow:10px 0 30px rgba(26,51,55,.025)!important;
}
html body.p18-product-shell .p7-side-brand{border-bottom:1px solid var(--p18-line)!important}
html body.p18-product-shell .p7-side-brand strong{font-size:16px!important;letter-spacing:-.02em!important;color:var(--p18-ink)!important}
html body.p18-product-shell .p7-side-brand small{font-size:11.5px!important;color:var(--p18-muted)!important}
html body.p18-product-shell .p7-side-nav button,
html body.p18-product-shell .p7-side-input{
  min-height:46px!important;
  border-radius:11px!important;
  font-size:14px!important;
  font-weight:650!important;
  color:#385057!important;
  margin:3px 8px!important;
}
html body.p18-product-shell .p7-side-nav button:hover,
html body.p18-product-shell .p7-side-input:hover{background:#edf4f1!important;color:var(--p18-brand-strong)!important}
html body.p18-product-shell .p7-side-nav button.active,
html body.p18-product-shell .p7-side-input.active{
  background:#e8f2ef!important;
  color:#244e47!important;
  box-shadow:inset 3px 0 0 var(--p18-brand)!important;
}
html body.p18-product-shell .p7-nav-icon{width:19px!important;height:19px!important}
html body.p18-product-shell .p7-side-status strong{font-size:12.5px!important;color:#35524c!important}
html body.p18-product-shell .p7-side-status small{font-size:11px!important;color:#66787b!important}
html body.p18-product-shell .p7-topbar{
  background:rgba(249,252,251,.94)!important;
  border-bottom:1px solid var(--p18-line)!important;
  box-shadow:0 7px 24px rgba(27,52,57,.035)!important;
  backdrop-filter:blur(18px)!important;
}
html body.p18-product-shell .p7-topbar-product{font-size:11.5px!important;color:#637579!important;font-weight:650!important}
html body.p18-product-shell .p7-topbar-title-row h1{font-size:19px!important;line-height:1.15!important;color:var(--p18-ink)!important;letter-spacing:-.02em!important}
html body.p18-product-shell .p7-topbar-title-row span{font-size:12px!important;color:var(--p18-muted)!important}
html body.p18-product-shell .p7-period-chip{min-height:44px!important;padding:7px 12px!important;border-radius:11px!important;border-color:var(--p18-line)!important;background:#f5f8f7!important}
html body.p18-product-shell .p7-period-chip span{font-size:10.5px!important;color:#64777a!important}
html body.p18-product-shell .p7-period-chip strong{font-size:12.5px!important;color:#26444a!important}

/* Top data-quality rail: readable status, still lightweight. */
html body.p18-product-shell .p15-completeness-bar{
  min-height:42px!important;
  padding:8px 13px!important;
  border-radius:12px!important;
  background:#f9fbfa!important;
  border:1px solid var(--p18-line)!important;
  box-shadow:var(--p18-shadow-soft)!important;
  font-size:12.5px!important;
  line-height:1.45!important;
}
html body.p18-product-shell .p15-completeness-bar>strong{font-size:12.5px!important;color:#294c45!important}
html body.p18-product-shell .p15-completeness-item b{font-size:12.5px!important;color:#365158!important}
html body.p18-product-shell .p15-completeness-item em{font-size:12px!important;color:#5c7074!important}
html body.p18-product-shell .p15-completeness-bar>small{font-size:12px!important;color:#566a6e!important}

/* Major page header: reads like a product module, not raw text in a white box. */
html body.p18-product-shell #patrolPage .p7-module-head{
  padding:22px 24px 21px!important;
  margin:0 0 14px!important;
  border:1px solid var(--p18-line)!important;
  border-radius:16px!important;
  background:#fbfdfc!important;
  box-shadow:var(--p18-shadow-soft)!important;
  overflow:hidden!important;
}
html body.p18-product-shell #patrolPage .p7-module-head::after{
  content:"";position:absolute;left:0;top:22px;width:4px;height:34px;border-radius:0 6px 6px 0;background:var(--p18-brand);opacity:.9
}
html body.p18-product-shell #patrolPage .p7-module-head h2{
  font-size:32px!important;line-height:1.08!important;letter-spacing:-.045em!important;font-weight:850!important;color:var(--p18-ink)!important
}
html body.p18-product-shell #patrolPage .p7-module-head p{
  margin-top:7px!important;font-size:14px!important;line-height:1.65!important;font-weight:520!important;color:#4b6268!important
}
html body.p18-product-shell #patrolPage .patrol-section-kicker,
html body.p18-product-shell #patrolPage .p4-section-kicker,
html body.p18-product-shell #patrolPage .patrol-eyebrow{
  font-size:10.5px!important;letter-spacing:.09em!important;font-weight:800!important;color:#527168!important
}

/* Surfaces and rhythm. */
html body.p18-product-shell #patrolPage .patrol-panel,
html body.p18-product-shell #patrolPage .p7-workspace-card,
html body.p18-product-shell #patrolPage .p7-object-table-panel,
html body.p18-product-shell #patrolPage .p15-output-group{
  border:1px solid var(--p18-line)!important;
  border-radius:15px!important;
  background:var(--p18-surface)!important;
  box-shadow:var(--p18-shadow)!important;
}
html body.p18-product-shell #patrolPage .patrol-panel-head{padding:17px 19px!important;border-bottom-color:#e1e8e5!important}
html body.p18-product-shell #patrolPage .patrol-panel-head h3,
html body.p18-product-shell #patrolPage .p15-output-group>header>span{
  font-size:19px!important;line-height:1.25!important;letter-spacing:-.02em!important;color:#213d45!important;font-weight:800!important
}
html body.p18-product-shell #patrolPage .patrol-panel-head small,
html body.p18-product-shell #patrolPage .p15-output-group>header>small{font-size:12.5px!important;line-height:1.55!important;color:#5a6f74!important}

/* KPI scale: one clear hierarchy; no tiny labels. */
html body.p18-product-shell #patrolPage .p4-viz-kpis,
html body.p18-product-shell #patrolPage #p7ProjectKpis,
html body.p18-product-shell #patrolPage #p7ResponsibilityKpis{
  border-radius:14px!important;border:1px solid var(--p18-line)!important;background:#fff!important;box-shadow:var(--p18-shadow-soft)!important;overflow:hidden!important
}
html body.p18-product-shell #patrolPage .p4-viz-kpis>article,
html body.p18-product-shell #patrolPage #p7ProjectKpis>article,
html body.p18-product-shell #patrolPage #p7ResponsibilityKpis>article{min-height:108px!important;padding:17px 18px!important;background:#fff!important}
html body.p18-product-shell #patrolPage .p4-viz-kpis span,
html body.p18-product-shell #patrolPage #p7ProjectKpis span,
html body.p18-product-shell #patrolPage #p7ResponsibilityKpis span{font-size:12px!important;line-height:1.35!important;color:#52686d!important;font-weight:700!important}
html body.p18-product-shell #patrolPage .p4-viz-kpis strong,
html body.p18-product-shell #patrolPage #p7ProjectKpis strong,
html body.p18-product-shell #patrolPage #p7ResponsibilityKpis strong{font-size:34px!important;line-height:1.05!important;margin:8px 0 5px!important;color:#1c3b43!important;font-weight:850!important;letter-spacing:-.035em!important}
html body.p18-product-shell #patrolPage .p4-viz-kpis small,
html body.p18-product-shell #patrolPage #p7ProjectKpis small,
html body.p18-product-shell #patrolPage #p7ResponsibilityKpis small{font-size:12px!important;line-height:1.5!important;color:#5d7074!important}

/* Buttons are product controls, not poster labels. */
html body.p18-product-shell .btn,
html body.p18-product-shell button.btn{
  min-height:40px!important;padding:8px 14px!important;border-radius:10px!important;font-size:13.5px!important;font-weight:700!important;letter-spacing:0!important
}
html body.p18-product-shell .btn.primary,
html body.p18-product-shell button.primary{background:var(--p18-brand)!important;border-color:var(--p18-brand)!important;color:#fff!important;box-shadow:0 7px 16px rgba(46,105,94,.12)!important}
html body.p18-product-shell .btn.primary:hover,
html body.p18-product-shell button.primary:hover{background:var(--p18-brand-strong)!important;border-color:var(--p18-brand-strong)!important}
html body.p18-product-shell button:focus-visible,
html body.p18-product-shell a:focus-visible,
html body.p18-product-shell input:focus-visible,
html body.p18-product-shell select:focus-visible{outline:3px solid rgba(61,124,111,.24)!important;outline-offset:2px!important}

/* Tables: more mature density and sticky, readable headers. */
html body.p18-product-shell #patrolPage .p7-object-table thead th,
html body.p18-product-shell #patrolPage .p9-responsibility-table thead th{
  background:#eef4f2!important;color:#314c53!important;font-size:12.25px!important;font-weight:800!important;letter-spacing:.005em!important;border-bottom:1px solid #cedad6!important;padding:11px 12px!important
}
html body.p18-product-shell #patrolPage .p7-object-table tbody td,
html body.p18-product-shell #patrolPage .p9-responsibility-table tbody td{font-size:13px!important;line-height:1.48!important;color:#344e55!important;padding:10px 12px!important;border-bottom-color:#e6ece9!important}
html body.p18-product-shell #patrolPage .p7-object-table tbody tr:hover,
html body.p18-product-shell #patrolPage .p9-responsibility-table tbody tr:hover{background:#f4f9f7!important}
html body.p18-product-shell #patrolPage .p7-object-table b{font-size:13.25px!important;color:#223f47!important}
html body.p18-product-shell #patrolPage .p7-object-table small{font-size:11.75px!important;line-height:1.45!important;color:#627579!important}

/* Compact helper/semantic cards get tinted surfaces so they never look like raw copy dropped into white boxes. */
html body.p18-product-shell .p15-management-brief,
html body.p18-product-shell .p15-responsibility-anchor,
html body.p18-product-shell .p15-input-format,
html body.p18-product-shell .p15-input-live,
html body.p18-product-shell .p11-history-next,
html body.p18-product-shell .patrol-map-conclusion{
  background:#f4f8f6!important;border-color:#d4e1dc!important
}
html body.p18-product-shell .p15-management-brief{padding:16px 18px!important;border-left:3px solid var(--p18-brand)!important}
html body.p18-product-shell .p15-management-brief strong{font-size:18px!important;color:#284a43!important}
html body.p18-product-shell .p15-management-brief p{font-size:13px!important;line-height:1.55!important;color:#40595d!important}

/* ======================================================================
   P18 spatial workstation — map, priority list and selected object remain
   in one coherent viewport; page scroll is never part of point comparison.
   ====================================================================== */
html body.p18-product-shell[data-p7-view="gis"] #patrolAnalysisZone>.p7-module-head{padding:18px 22px!important;margin-bottom:10px!important}
html body.p18-product-shell[data-p7-view="gis"] #patrolAnalysisZone>.p7-module-head h2{font-size:30px!important}
html body.p18-product-shell[data-p7-view="gis"] #patrolAnalysisZone>.p7-map-tabs{margin:0 0 10px!important}
html body.p18-product-shell #patrolAnalysisZone .patrol-project-intelligence-map{border-radius:17px!important;overflow:hidden!important}
html body.p18-product-shell #patrolAnalysisZone .patrol-map-intelligence-head{padding:17px 18px!important;background:#fbfdfc!important}
html body.p18-product-shell #patrolAnalysisZone .patrol-map-intelligence-head h3{font-size:21px!important;letter-spacing:-.025em!important;color:#1d3b43!important}
html body.p18-product-shell #patrolAnalysisZone .patrol-map-intelligence-head small{font-size:12.5px!important;line-height:1.55!important;color:#586e72!important}
html body.p18-product-shell #patrolAnalysisZone #patrolProjectMapStatus{font-size:12px!important;font-weight:750!important;color:#355b52!important;background:#edf5f1!important;border:1px solid #d0e0da!important;border-radius:999px!important;padding:7px 10px!important}
html body.p18-product-shell #patrolAnalysisZone .patrol-map-explore-bar{padding:10px 12px!important;background:#f4f8f6!important;border-top:1px solid #e0e8e5!important;border-bottom:1px solid #d9e4df!important}
html body.p18-product-shell #patrolAnalysisZone .patrol-map-filter-group button{min-height:34px!important;padding:6px 9px!important;border-radius:9px!important;font-size:12.25px!important;font-weight:700!important;color:#405a60!important}
html body.p18-product-shell #patrolAnalysisZone .patrol-map-filter-group button.active{background:#dfeee9!important;color:#24564d!important;border-color:#bcd3cb!important}
html body.p18-product-shell #patrolAnalysisZone .patrol-map-search-wrap label{font-size:11.5px!important;color:#526b6f!important}
html body.p18-product-shell #patrolAnalysisZone .patrol-map-search-box input{font-size:13px!important;min-height:36px!important;border-radius:9px!important}
html body.p18-product-shell #patrolAnalysisZone .patrol-map-filter-status{font-size:11.75px!important;color:#53696e!important}
html body.p18-product-shell #patrolAnalysisZone .patrol-map-intelligence-layout{
  display:grid!important;
  grid-template-columns:minmax(0,1fr) 372px!important;
  gap:14px!important;
  padding:12px!important;
  background:#f1f6f4!important;
  align-items:stretch!important;
}
html body.p18-product-shell #patrolAnalysisZone .patrol-map-visual-column{min-width:0!important;display:block!important}
html body.p18-product-shell #patrolAnalysisZone .patrol-map-canvas-shell{
  height:clamp(560px,calc(100vh - 340px),720px)!important;
  min-height:560px!important;
  border:1px solid #cbdad5!important;
  border-radius:14px!important;
  overflow:hidden!important;
  background:#f8faf9!important;
  box-shadow:0 8px 28px rgba(26,53,55,.055)!important;
}
html body.p18-product-shell #patrolAnalysisZone #patrolProjectMapBoard{display:block!important;width:100%!important;height:100%!important;min-height:0!important;outline:none!important}
html body.p18-product-shell #patrolAnalysisZone .patrol-project-intelligence-map .patrol-map-reading-hint{display:none!important}
html body.p18-product-shell #patrolAnalysisZone .patrol-map-intelligence-panel{
  height:clamp(560px,calc(100vh - 340px),720px)!important;
  max-height:none!important;
  min-height:560px!important;
  overflow:hidden!important;
  display:grid!important;
  grid-template-rows:auto auto minmax(0,1fr) auto!important;
  align-content:stretch!important;
  gap:10px!important;
  padding:13px!important;
  border:1px solid #ccd9d5!important;
  border-radius:14px!important;
  background:#fbfdfc!important;
  box-shadow:0 8px 28px rgba(26,53,55,.045)!important;
  overscroll-behavior:contain!important;
  overflow-anchor:none!important;
}
html body.p18-product-shell #patrolAnalysisZone .patrol-map-intelligence-title{padding:2px 2px 8px!important;border-bottom:1px solid #e1e8e5!important}
html body.p18-product-shell #patrolAnalysisZone .patrol-map-intelligence-title span{font-size:17px!important;font-weight:820!important;color:#213e45!important}
html body.p18-product-shell #patrolAnalysisZone .patrol-map-intelligence-title small{font-size:11.75px!important;color:#5c7075!important}
html body.p18-product-shell #patrolAnalysisZone .p15-map-legend-compact{margin:0!important;padding:4px!important;border:0!important;background:#f1f6f4!important;border-radius:11px!important;display:grid!important;gap:2px!important}
html body.p18-product-shell #patrolAnalysisZone .p15-map-legend-compact p{padding:6px 7px!important;margin:0!important;display:grid!important;grid-template-columns:42px 1fr!important;gap:7px!important;align-items:start!important}
html body.p18-product-shell #patrolAnalysisZone .p15-map-legend-compact span{font-size:10.75px!important;font-weight:800!important;color:#52686d!important}
html body.p18-product-shell #patrolAnalysisZone .p15-map-legend-compact b{font-size:11.75px!important;line-height:1.4!important;color:#304a50!important;font-weight:700!important}
html body.p18-product-shell #patrolAnalysisZone .patrol-map-intelligence-panel>.patrol-map-insight-section:not(.patrol-map-narrative-section){
  min-height:0!important;display:flex!important;flex-direction:column!important;overflow:hidden!important;margin:0!important;padding:0!important;border:0!important
}
html body.p18-product-shell #patrolAnalysisZone .patrol-map-insight-section-head{padding:1px 2px 7px!important}
html body.p18-product-shell #patrolAnalysisZone .patrol-map-insight-section-head h4{font-size:14px!important;color:#26434a!important;font-weight:800!important}
html body.p18-product-shell #patrolAnalysisZone .patrol-map-insight-section-head small{font-size:10.75px!important;color:#617479!important}
html body.p18-product-shell #patrolAnalysisZone #patrolProjectMapPriorityList{
  flex:1 1 auto!important;min-height:0!important;max-height:none!important;overflow-y:auto!important;overflow-x:hidden!important;padding:1px 4px 1px 1px!important;display:grid!important;align-content:start!important;gap:7px!important;scroll-behavior:auto!important;overflow-anchor:none!important;scrollbar-gutter:stable!important
}
html body.p18-product-shell #patrolAnalysisZone .patrol-map-priority-row{
  width:100%!important;min-height:64px!important;margin:0!important;padding:9px 9px!important;border:1px solid #d8e2df!important;border-radius:11px!important;background:#fff!important;box-shadow:0 3px 12px rgba(30,55,59,.025)!important;display:grid!important;grid-template-columns:36px minmax(0,1fr) auto!important;gap:9px!important;align-items:center!important;text-align:left!important;transition:background .14s ease,border-color .14s ease,box-shadow .14s ease!important
}
html body.p18-product-shell #patrolAnalysisZone .patrol-map-priority-row:hover{background:#f5faf8!important;border-color:#c6d8d2!important;box-shadow:0 5px 16px rgba(30,55,59,.045)!important}
html body.p18-product-shell #patrolAnalysisZone .patrol-map-priority-row.is-selected{background:#eaf4f1!important;border-color:#9fc1b7!important;box-shadow:inset 3px 0 0 var(--p18-brand),0 5px 16px rgba(30,55,59,.045)!important}
html body.p18-product-shell #patrolAnalysisZone .patrol-map-priority-no{width:34px!important;height:34px!important;border-radius:10px!important;display:grid!important;place-items:center!important;font-size:14px!important;font-weight:850!important;background:#edf4f1!important;color:#2e665b!important}
html body.p18-product-shell #patrolAnalysisZone .patrol-map-priority-main b{font-size:13.5px!important;line-height:1.3!important;font-weight:800!important;color:#233f47!important}
html body.p18-product-shell #patrolAnalysisZone .patrol-map-priority-main small{margin-top:3px!important;font-size:11.5px!important;line-height:1.35!important;color:#53686d!important;display:-webkit-box!important;-webkit-box-orient:vertical!important;-webkit-line-clamp:2!important;overflow:hidden!important}
html body.p18-product-shell #patrolAnalysisZone .patrol-map-priority-state{font-size:10.75px!important;font-weight:800!important;padding:5px 7px!important;border-radius:999px!important;background:#f1f5f3!important;color:#3d565c!important;white-space:nowrap!important}
html body.p18-product-shell #patrolAnalysisZone .p15-map-more{display:none!important}
html body.p18-product-shell #patrolAnalysisZone .p18-map-selection-dock{
  margin:0!important;padding:11px!important;border:1px solid #bdd4cd!important;border-radius:12px!important;background:#edf6f2!important;box-shadow:inset 0 1px 0 rgba(255,255,255,.8)!important
}
html body.p18-product-shell #patrolAnalysisZone .p18-map-selection-dock .p15-map-card-head{display:grid!important;gap:2px!important;margin-bottom:8px!important}
html body.p18-product-shell #patrolAnalysisZone .p18-map-selection-dock .p15-map-card-head span{font-size:10.75px!important;color:#587069!important;font-weight:750!important}
html body.p18-product-shell #patrolAnalysisZone .p18-map-selection-dock .p15-map-card-head strong{font-size:14.5px!important;line-height:1.35!important;color:#203e46!important;font-weight:820!important}
html body.p18-product-shell #patrolAnalysisZone .p18-map-selection-dock .p15-map-card-grid{grid-template-columns:1fr 1fr!important;gap:6px!important}
html body.p18-product-shell #patrolAnalysisZone .p18-map-selection-dock .p15-map-card-grid p{padding:7px 8px!important;border-radius:9px!important;background:#fff!important;border:1px solid #d8e5e0!important;margin:0!important;min-width:0!important}
html body.p18-product-shell #patrolAnalysisZone .p18-map-selection-dock .p15-map-card-grid span{display:block!important;font-size:10px!important;color:#607478!important;font-weight:700!important}
html body.p18-product-shell #patrolAnalysisZone .p18-map-selection-dock .p15-map-card-grid b{display:block!important;margin-top:2px!important;font-size:11.75px!important;line-height:1.35!important;color:#2d4b51!important;overflow-wrap:anywhere!important}
html body.p18-product-shell #patrolAnalysisZone .p18-map-selection-dock>small{display:block!important;margin-top:7px!important;font-size:10.75px!important;line-height:1.35!important;color:#587069!important}
html body.p18-product-shell #patrolAnalysisZone .patrol-map-conclusion{margin:0 12px 10px!important;padding:10px 12px!important;font-size:12.5px!important;line-height:1.5!important;border-radius:11px!important;background:#edf5f2!important}
html body.p18-product-shell #patrolAnalysisZone .patrol-map-actions{margin:0 12px 12px!important;grid-template-columns:minmax(150px,1.25fr) minmax(140px,1fr) minmax(120px,.8fr)!important;gap:8px!important}
html body.p18-product-shell #patrolAnalysisZone .patrol-map-actions .btn{min-height:40px!important;font-size:13px!important}

/* Selected severity uses narrow semantic accents, never saturated blocks. */
html body.p18-product-shell #patrolAnalysisZone .severity-zero .patrol-map-priority-no{background:#f8ece9!important;color:#8e493f!important}
html body.p18-product-shell #patrolAnalysisZone .severity-one .patrol-map-priority-no{background:#f7f0e4!important;color:#89602f!important}
html body.p18-product-shell #patrolAnalysisZone .severity-rect .patrol-map-priority-no{background:#f0ebf6!important;color:#62507d!important}
html body.p18-product-shell #patrolAnalysisZone .severity-good .patrol-map-priority-no{background:#eaf4ef!important;color:#34705d!important}

/* Output/history/input typography — bigger, calmer, with meaningful surface contrast. */
html body.p18-product-shell #patrolOutputZone .p15-output-group>header{padding:16px 17px!important;background:#f8fbfa!important;border-bottom:1px solid #e0e8e5!important;border-radius:14px 14px 0 0!important}
html body.p18-product-shell #patrolOutputZone .patrol-panel h3{font-size:18px!important}
html body.p18-product-shell #patrolOutputZone .patrol-panel p,
html body.p18-product-shell #patrolOutputZone .patrol-panel small{font-size:12.5px!important;line-height:1.55!important}
html body.p18-product-shell #patrolCompareZone .p11-history-baseline-head{padding:23px 24px!important;background:#edf4f1!important}
html body.p18-product-shell #patrolCompareZone .p11-history-baseline-head h3{font-size:26px!important;color:#223f46!important}
html body.p18-product-shell #patrolCompareZone .p11-history-baseline-head p{font-size:13px!important;color:#536b70!important}
html body.p18-product-shell #patrolCompareZone .p11-history-count strong{font-size:34px!important;color:#26474a!important}
html body.p18-product-shell #patrolCompareZone .p11-history-metrics span{font-size:11.5px!important}
html body.p18-product-shell #patrolCompareZone .p11-history-metrics strong{font-size:27px!important}
html body.p18-product-shell #patrolCompareZone .p11-history-metrics small{font-size:11.25px!important}
html body.p18-product-shell #patrolInputZone .p15-input-format,
html body.p18-product-shell #patrolInputZone .p15-input-live{padding:12px 14px!important;border-radius:11px!important;font-size:12.5px!important;line-height:1.55!important}
html body.p18-product-shell #patrolInputZone .p15-input-live b{font-size:12.75px!important}

@media(max-width:1280px){
 html body.p18-product-shell #patrolAnalysisZone .patrol-map-intelligence-layout{grid-template-columns:minmax(0,1fr) 330px!important}
 html body.p18-product-shell #patrolAnalysisZone .patrol-map-canvas-shell,
 html body.p18-product-shell #patrolAnalysisZone .patrol-map-intelligence-panel{height:clamp(520px,calc(100vh - 325px),660px)!important;min-height:520px!important}
}
@media(max-width:1024px){
 html body.p18-product-shell #patrolAnalysisZone .patrol-map-intelligence-layout{grid-template-columns:1fr!important}
 html body.p18-product-shell #patrolAnalysisZone .patrol-map-canvas-shell{height:560px!important;min-height:480px!important}
 html body.p18-product-shell #patrolAnalysisZone .patrol-map-intelligence-panel{height:auto!important;min-height:0!important;display:block!important;overflow:visible!important}
 html body.p18-product-shell #patrolAnalysisZone #patrolProjectMapPriorityList{max-height:360px!important;overflow:auto!important}
 html body.p18-product-shell #patrolAnalysisZone .p18-map-selection-dock{margin-top:10px!important}
}
@media(max-width:760px){
 html body.p18-product-shell #patrolPage .p7-module-head{padding:18px 17px!important}
 html body.p18-product-shell #patrolPage .p7-module-head h2{font-size:27px!important}
 html body.p18-product-shell #patrolPage .p7-module-head p{font-size:13px!important}
 html body.p18-product-shell #patrolAnalysisZone .patrol-map-canvas-shell{height:430px!important;min-height:380px!important}
 html body.p18-product-shell #patrolAnalysisZone .patrol-map-intelligence-layout{padding:8px!important;gap:9px!important}
 html body.p18-product-shell #patrolAnalysisZone .patrol-map-actions{grid-template-columns:1fr!important}
 html body.p18-product-shell #patrolAnalysisZone .p18-map-selection-dock .p15-map-card-grid{grid-template-columns:1fr!important}
 html body.p18-product-shell #patrolPage .p7-object-table tbody td,
 html body.p18-product-shell #patrolPage .p9-responsibility-table tbody td{font-size:12.5px!important}
}
@media print{
 html body.p18-product-shell{background:#fff!important}
 html body.p18-product-shell #patrolPage .patrol-panel,
 html body.p18-product-shell #patrolPage .p7-module-head,
 html body.p18-product-shell #patrolPage .p15-output-group{box-shadow:none!important;background:#fff!important}
}

/* P18.1 map-side density refinement: keep 4–5 priority rows visible while preserving selected detail. */
html body.p18-product-shell #patrolAnalysisZone .patrol-map-intelligence-layout{
  grid-template-columns:minmax(0,1fr) 390px!important;
}
html body.p18-product-shell #patrolAnalysisZone .p18-map-selection-dock{
  padding:10px 11px!important;
}
html body.p18-product-shell #patrolAnalysisZone .p18-map-selection-dock .p15-map-card-head{
  margin-bottom:6px!important;
}
html body.p18-product-shell #patrolAnalysisZone .p18-map-selection-dock .p15-map-card-head span{
  font-size:10.5px!important;
}
html body.p18-product-shell #patrolAnalysisZone .p18-map-selection-dock .p15-map-card-head strong{
  font-size:14px!important;
  line-height:1.28!important;
  display:-webkit-box!important;
  -webkit-box-orient:vertical!important;
  -webkit-line-clamp:2!important;
  overflow:hidden!important;
}
html body.p18-product-shell #patrolAnalysisZone .p18-map-selection-dock .p15-map-card-grid{
  grid-template-columns:repeat(3,minmax(0,1fr))!important;
  gap:5px!important;
}
html body.p18-product-shell #patrolAnalysisZone .p18-map-selection-dock .p15-map-card-grid p{
  padding:6px 7px!important;
  min-height:43px!important;
}
html body.p18-product-shell #patrolAnalysisZone .p18-map-selection-dock .p15-map-card-grid p:nth-child(4){
  grid-column:1/-1!important;
  min-height:0!important;
}
html body.p18-product-shell #patrolAnalysisZone .p18-map-selection-dock .p15-map-card-grid span{
  font-size:9.75px!important;
}
html body.p18-product-shell #patrolAnalysisZone .p18-map-selection-dock .p15-map-card-grid b{
  font-size:11.5px!important;
  white-space:normal!important;
  display:-webkit-box!important;
  -webkit-box-orient:vertical!important;
  -webkit-line-clamp:2!important;
  overflow:hidden!important;
}
html body.p18-product-shell #patrolAnalysisZone .p18-map-selection-dock>small{display:none!important}
@media(max-width:1280px){
 html body.p18-product-shell #patrolAnalysisZone .patrol-map-intelligence-layout{grid-template-columns:minmax(0,1fr) 350px!important}
}
@media(max-width:1024px){
 html body.p18-product-shell #patrolAnalysisZone .patrol-map-intelligence-layout{grid-template-columns:1fr!important}
}
@media(max-width:760px){
 html body.p18-product-shell #patrolAnalysisZone .p18-map-selection-dock .p15-map-card-grid{grid-template-columns:1fr 1fr!important}
 html body.p18-product-shell #patrolAnalysisZone .p18-map-selection-dock .p15-map-card-grid p:nth-child(4){grid-column:1/-1!important}
}

/* P18.2 undo legacy fixed legend height and make the spatial workbench viewport-native. */
html body.p18-product-shell #patrolAnalysisZone .p15-map-legend-compact{
  min-height:0!important;height:auto!important;flex:0 0 auto!important;
}
html body.p18-product-shell #patrolAnalysisZone .p15-map-legend-compact p{
  min-height:0!important;padding:5px 7px!important;
}
html body.p18-product-shell #patrolAnalysisZone .patrol-map-canvas-shell,
html body.p18-product-shell #patrolAnalysisZone .patrol-map-intelligence-panel{
  height:clamp(620px,calc(100vh - 245px),760px)!important;
  min-height:620px!important;
}
@media(max-width:1280px){
 html body.p18-product-shell #patrolAnalysisZone .patrol-map-canvas-shell,
 html body.p18-product-shell #patrolAnalysisZone .patrol-map-intelligence-panel{height:clamp(600px,calc(100vh - 245px),730px)!important;min-height:600px!important}
}
@media(max-width:1024px){
 html body.p18-product-shell #patrolAnalysisZone .patrol-map-canvas-shell{height:560px!important;min-height:480px!important}
 html body.p18-product-shell #patrolAnalysisZone .patrol-map-intelligence-panel{height:auto!important;min-height:0!important}
}

/* P18.3 readable micro-type and always-reachable table actions. */
html body.p18-product-shell #patrolPage .patrol-section-kicker,
html body.p18-product-shell #patrolPage .p4-section-kicker,
html body.p18-product-shell #patrolPage .patrol-eyebrow{font-size:11.25px!important}
html body.p18-product-shell #patrolAnalysisZone .patrol-map-priority-state{font-size:11.25px!important}
html body.p18-product-shell #patrolAnalysisZone .p18-map-selection-dock .p15-map-card-head span{font-size:10.75px!important}
html body.p18-product-shell #patrolAnalysisZone .p18-map-selection-dock .p15-map-card-grid span{font-size:10.5px!important}
html body.p18-product-shell #patrolAnalysisZone .p18-map-selection-dock .p15-map-card-grid b{font-size:11.75px!important}
html body.p18-product-shell #p7ProjectTable th:last-child,
html body.p18-product-shell #p7ProjectTable td:last-child{
  position:sticky!important;right:0!important;z-index:3!important;background:#fbfdfc!important;box-shadow:-8px 0 13px -13px rgba(24,52,60,.45)!important
}
html body.p18-product-shell #p7ProjectTable th:last-child{z-index:5!important;background:#edf4f1!important}
html body.p18-product-shell #p7ProjectTable tbody tr:hover td:last-child{background:#f5faf8!important}

/* Layered enterprise surfaces: light technical depth without dashboard theatrics. */
html body.p18-product-shell #patrolPage .p7-module-head{
  background:linear-gradient(115deg,rgba(46,105,94,.055),rgba(46,105,94,0) 38%),linear-gradient(180deg,#ffffff,#fafcfb)!important;
}
html body.p18-product-shell #patrolPage .patrol-panel,
html body.p18-product-shell #patrolPage .p15-output-group{
  background:linear-gradient(180deg,#ffffff 0%,#fbfdfc 100%)!important;
}
html body.p18-product-shell #patrolPage .patrol-panel-head,
html body.p18-product-shell #patrolOutputZone .p15-output-group>header{
  background:linear-gradient(180deg,#f8fbfa,#f4f8f6)!important;
}
@media print{
 html body.p18-product-shell #patrolPage .p7-module-head,
 html body.p18-product-shell #patrolPage .patrol-panel,
 html body.p18-product-shell #patrolPage .p15-output-group,
 html body.p18-product-shell #patrolPage .patrol-panel-head,
 html body.p18-product-shell #patrolOutputZone .p15-output-group>header{background:#fff!important}
}
html body.p18-product-shell .p7-object-table th:last-child,
html body.p18-product-shell .p7-object-table td:last-child{
  position:sticky!important;right:0!important;z-index:3!important;background:#fbfdfc!important;box-shadow:-8px 0 13px -13px rgba(24,52,60,.45)!important
}
html body.p18-product-shell .p7-object-table th:last-child{z-index:6!important;background:#edf4f1!important}
html body.p18-product-shell .p7-object-table tbody tr:hover td:last-child{background:#f5faf8!important}

/* P18.4 enterprise GIS workbench toolbar: export/copy/zoom stay visible at the top. */
html body.p18-product-shell #patrolAnalysisZone .patrol-project-intelligence-map>.patrol-map-intelligence-head{
  display:grid!important;grid-template-columns:minmax(0,1fr) auto!important;gap:18px!important;align-items:center!important;padding:17px 18px!important
}
html body.p18-product-shell #patrolAnalysisZone .p18-spatial-head-tools{display:grid!important;justify-items:end!important;gap:8px!important;min-width:0!important}
html body.p18-product-shell #patrolAnalysisZone .p18-spatial-head-tools>#patrolProjectMapStatus{
  font-size:11.5px!important;line-height:1.2!important;color:#4d666b!important;background:#edf4f1!important;border:1px solid #d4e2dd!important;border-radius:999px!important;padding:6px 9px!important;white-space:nowrap!important
}
html body.p18-product-shell #patrolAnalysisZone .p18-map-toolbar{
  margin:0!important;padding:0!important;display:flex!important;justify-content:flex-end!important;gap:7px!important;grid-template-columns:none!important
}
html body.p18-product-shell #patrolAnalysisZone .p18-map-toolbar .btn{min-width:0!important;min-height:36px!important;padding:7px 11px!important;font-size:12.5px!important}
html body.p18-product-shell #patrolAnalysisZone .p18-map-decision-strip{
  margin:0!important;padding:9px 14px!important;border:0!important;border-top:1px solid #e1e9e6!important;border-bottom:1px solid #e1e9e6!important;border-radius:0!important;background:#f3f8f6!important;font-size:12.5px!important;line-height:1.45!important;color:#36555a!important
}
html body.p18-product-shell #patrolAnalysisZone .patrol-project-intelligence-map>.patrol-map-intelligence-layout{border-top:0!important}
@media(max-width:1180px){
 html body.p18-product-shell #patrolAnalysisZone .patrol-project-intelligence-map>.patrol-map-intelligence-head{grid-template-columns:1fr!important;align-items:start!important}
 html body.p18-product-shell #patrolAnalysisZone .p18-spatial-head-tools{justify-items:start!important}
 html body.p18-product-shell #patrolAnalysisZone .p18-map-toolbar{justify-content:flex-start!important;flex-wrap:wrap!important}
}
@media(max-width:760px){
 html body.p18-product-shell #patrolAnalysisZone .p18-spatial-head-tools>#patrolProjectMapStatus{white-space:normal!important}
 html body.p18-product-shell #patrolAnalysisZone .p18-map-toolbar{display:grid!important;grid-template-columns:1fr 1fr!important;width:100%!important}
 html body.p18-product-shell #patrolAnalysisZone .p18-map-toolbar .btn:first-of-type{grid-column:1/-1!important}
}
html body.p18-product-shell #patrolAnalysisZone .p18-spatial-head-tools{min-width:430px!important}
html body.p18-product-shell #patrolAnalysisZone .p18-map-toolbar{display:flex!important;width:auto!important;align-items:center!important;flex-wrap:nowrap!important}
html body.p18-product-shell #patrolAnalysisZone .p18-map-toolbar .btn{width:auto!important;flex:0 0 auto!important;white-space:nowrap!important}
@media(max-width:1280px){html body.p18-product-shell #patrolAnalysisZone .p18-spatial-head-tools{min-width:360px!important}}
@media(max-width:1180px){html body.p18-product-shell #patrolAnalysisZone .p18-spatial-head-tools{min-width:0!important;width:100%!important}}
@media(max-width:760px){html body.p18-product-shell #patrolAnalysisZone .p18-map-toolbar{display:grid!important;width:100%!important;grid-template-columns:1fr 1fr!important}}
/* P18.5 desktop GIS viewport fit: map, priority list and selected detail remain visible together. */
html body.p18-product-shell #patrolAnalysisZone .patrol-map-canvas-shell,
html body.p18-product-shell #patrolAnalysisZone .patrol-map-intelligence-panel{
  height:clamp(600px,calc(100vh - 310px),710px)!important;min-height:600px!important
}
@media(max-width:1280px){
 html body.p18-product-shell #patrolAnalysisZone .patrol-map-canvas-shell,
 html body.p18-product-shell #patrolAnalysisZone .patrol-map-intelligence-panel{height:clamp(580px,calc(100vh - 300px),680px)!important;min-height:580px!important}
}
@media(max-width:1024px){
 html body.p18-product-shell #patrolAnalysisZone .patrol-map-canvas-shell{height:520px!important;min-height:440px!important}
 html body.p18-product-shell #patrolAnalysisZone .patrol-map-intelligence-panel{height:auto!important;min-height:0!important}
}
/* P18.6 readable supporting text: no pale 10px annotations on white surfaces. */
html body.p18-product-shell #patrolProjectZone .patrol-panel small,
html body.p18-product-shell #patrolProjectZone .p15-gap-priority small,
html body.p18-product-shell #patrolProjectZone .p7-object-table small{color:#536a70!important}
html body.p18-product-shell #patrolProjectZone .p7-object-table small{font-size:11.5px!important;line-height:1.45!important}
html body.p18-product-shell #p7ProjectTableStatus{font-size:12.25px!important;color:#536a70!important}
html body.p18-product-shell #p7ProjectTableCount,
html body.p18-product-shell .p7-pagination span{font-size:11.75px!important;color:#526a70!important}
html body.p18-product-shell #patrolInputZone .p7-input-guide>p{font-size:11.5px!important;line-height:1.5!important;color:#536a66!important}

/* P18.7 high-specificity readability lock: override legacy p9-p17 micro-type rules. */
html body.patrol-mode.patrol-standalone.p18-product-shell #p7ProjectWorkspace .patrol-panel-head small,
html body.patrol-mode.patrol-standalone.p18-product-shell #p7ProjectWorkspace .p15-gap-priority small,
html body.patrol-mode.patrol-standalone.p18-product-shell #p7ProjectWorkspace .p7-object-table small{
  color:#4f686e!important;
}
html body.patrol-mode.patrol-standalone.p18-product-shell #p7ProjectWorkspace .p7-object-table small{
  font-size:11.75px!important;line-height:1.5!important;
}
html body.patrol-mode.patrol-standalone.p18-product-shell #p7ProjectWorkspace #p7ProjectTableStatus,
html body.patrol-mode.patrol-standalone.p18-product-shell #p7ProjectWorkspace #p7ProjectTableCount,
html body.patrol-mode.patrol-standalone.p18-product-shell #p7ProjectWorkspace .p7-pagination span{
  color:#4f686e!important;font-size:12px!important;
}
html body.patrol-mode.patrol-standalone.p18-product-shell #patrolInputZone .patrol-contract-card.p7-input-guide>p,
html body.patrol-mode.patrol-standalone.p18-product-shell #patrolInputZone .p7-input-guide>p{
  color:#4d6662!important;font-size:11.75px!important;line-height:1.55!important;
}

/* P18.8 two-ID authority selectors: final readable type wins over accumulated legacy theme specificity. */
html body.p18-product-shell #patrolPage #p7ProjectWorkspace .patrol-panel-head small,
html body.p18-product-shell #patrolPage #p7ProjectWorkspace .p15-gap-priority small,
html body.p18-product-shell #patrolPage #p7ProjectWorkspace .p7-object-table small{
  color:#4f686e!important;
}
html body.p18-product-shell #patrolPage #p7ProjectWorkspace .p7-object-table small{
  font-size:11.75px!important;line-height:1.5!important;
}
html body.p18-product-shell #patrolPage #p7ProjectWorkspace #p7ProjectTableStatus,
html body.p18-product-shell #patrolPage #p7ProjectWorkspace #p7ProjectTableCount,
html body.p18-product-shell #patrolPage #p7ProjectWorkspace .p7-pagination span{
  color:#4f686e!important;font-size:12px!important;
}
html body.p18-product-shell #patrolPage #patrolInputZone .patrol-contract-card.p7-input-guide>p,
html body.p18-product-shell #patrolPage #patrolInputZone .p7-input-guide>p{
  color:#4d6662!important;font-size:11.75px!important;line-height:1.55!important;
}


/* ======================================================================
   P19 — Enterprise Calm / Melly-like interaction comfort
   Transfer principles, not music-app skin: content first, persistent tools,
   comfortable scale, stable context, subtle material, restrained motion.
   ====================================================================== */
html body.patrol-mode.patrol-standalone.p19-product-shell{
  --p19-canvas:#eef3f2;
  --p19-canvas-2:#f5f7f7;
  --p19-surface:#ffffff;
  --p19-surface-soft:#f7faf9;
  --p19-control:rgba(252,254,253,.86);
  --p19-ink:#17343a;
  --p19-text:#304c51;
  --p19-muted:#5d7276;
  --p19-line:rgba(48,78,82,.115);
  --p19-line-soft:rgba(48,78,82,.075);
  --p19-brand:#356e65;
  --p19-brand-strong:#285b53;
  --p19-brand-soft:#e8f2ef;
  --p19-cool:#6b8492;
  --p19-danger:#a65349;
  --p19-warn:#9a6a2d;
  --p19-good:#34725f;
  --p19-radius-xl:26px;
  --p19-radius-lg:20px;
  --p19-radius-md:14px;
  --p19-shadow:0 20px 56px rgba(35,62,67,.085),0 3px 14px rgba(35,62,67,.035);
  --p19-shadow-soft:0 10px 30px rgba(35,62,67,.05);
  --p19-ease:cubic-bezier(.22,.8,.25,1);
  color:var(--p19-ink)!important;
  font-family:-apple-system,BlinkMacSystemFont,"SF Pro Display","SF Pro Text","PingFang SC","Microsoft YaHei UI","Microsoft YaHei",system-ui,sans-serif!important;
  font-size:16px!important;
  line-height:1.62!important;
  background:
    radial-gradient(circle at 8% -4%,rgba(82,142,130,.11),transparent 31rem),
    radial-gradient(circle at 100% 7%,rgba(102,131,151,.075),transparent 29rem),
    linear-gradient(180deg,#f7f9f8 0%,var(--p19-canvas) 46%,#eaf0ef 100%)!important;
  background-attachment:fixed!important;
  -webkit-font-smoothing:antialiased;
  text-rendering:optimizeLegibility;
}
html body.p19-product-shell::before{
  content:"";position:fixed;inset:0;pointer-events:none;z-index:-1;
  background:linear-gradient(115deg,rgba(255,255,255,.36),transparent 36%,rgba(255,255,255,.18));
}
html body.p19-product-shell button,
html body.p19-product-shell [role="button"]{touch-action:manipulation}
html body.p19-product-shell button:focus-visible,
html body.p19-product-shell input:focus-visible,
html body.p19-product-shell select:focus-visible{
  outline:3px solid rgba(53,110,101,.22)!important;outline-offset:2px!important
}

/* Floating product chrome — material only where controls/navigation live. */
@media(min-width:1025px){
 html body.p19-product-shell .p7-sidebar{
   inset:14px auto 14px 14px!important;width:186px!important;height:auto!important;
   border:1px solid rgba(255,255,255,.76)!important;border-radius:24px!important;
   background:rgba(249,252,251,.82)!important;
   box-shadow:0 18px 50px rgba(35,63,67,.10),inset 0 1px 0 rgba(255,255,255,.9)!important;
   backdrop-filter:blur(24px) saturate(138%)!important;-webkit-backdrop-filter:blur(24px) saturate(138%)!important;
   overflow:hidden!important
 }
 html body.p19-product-shell .p7-topbar{
   top:14px!important;left:214px!important;right:14px!important;height:72px!important;
   border:1px solid rgba(255,255,255,.78)!important;border-radius:22px!important;
   background:rgba(250,253,252,.84)!important;
   box-shadow:0 14px 42px rgba(35,63,67,.075),inset 0 1px 0 rgba(255,255,255,.92)!important;
   backdrop-filter:blur(22px) saturate(140%)!important;-webkit-backdrop-filter:blur(22px) saturate(140%)!important;
   padding:0 18px!important
 }
 html body.p19-product-shell #patrolPage.p7-main{
   margin:100px 14px 0 214px!important;padding:0 0 44px!important;min-height:calc(100vh - 100px)!important;background:transparent!important
 }
}
@media(max-width:1024px){
 html body.p19-product-shell .p7-sidebar{inset:10px auto 10px 10px!important;width:70px!important;border-radius:20px!important;border:1px solid rgba(255,255,255,.78)!important;background:rgba(249,252,251,.86)!important;box-shadow:0 16px 42px rgba(35,63,67,.08)!important;backdrop-filter:blur(20px)!important}
 html body.p19-product-shell .p7-topbar{top:10px!important;left:92px!important;right:10px!important;height:68px!important;border-radius:19px!important;border:1px solid rgba(255,255,255,.8)!important;background:rgba(250,253,252,.88)!important;box-shadow:0 12px 36px rgba(35,63,67,.07)!important;backdrop-filter:blur(20px)!important}
 html body.p19-product-shell #patrolPage.p7-main{margin:90px 10px 0 92px!important;padding:0 0 36px!important;background:transparent!important}
}
@media(max-width:720px){
 html body.p19-product-shell .p7-topbar{left:80px!important;height:64px!important}
 html body.p19-product-shell .p7-sidebar{width:60px!important}
 html body.p19-product-shell #patrolPage.p7-main{margin-left:80px!important;margin-top:84px!important}
}
html body.p19-product-shell .p7-side-brand{min-height:78px!important;border-bottom:1px solid var(--p19-line-soft)!important;background:linear-gradient(180deg,rgba(255,255,255,.58),rgba(255,255,255,.08))!important}
html body.p19-product-shell .p7-side-logo img{border-radius:14px!important;box-shadow:0 7px 20px rgba(36,67,71,.12)!important}
html body.p19-product-shell .p7-side-brand strong{font-size:17px!important;letter-spacing:-.025em!important;color:var(--p19-ink)!important}
html body.p19-product-shell .p7-side-brand small{font-size:12px!important;color:var(--p19-muted)!important}
html body.p19-product-shell .p7-side-nav button,
html body.p19-product-shell .p7-side-input{
  min-height:48px!important;margin:4px 8px!important;border-radius:14px!important;font-size:14.5px!important;font-weight:680!important;color:#365058!important;
  transition:transform .18s var(--p19-ease),background .18s ease,color .18s ease,box-shadow .18s ease!important
}
html body.p19-product-shell .p7-side-nav button:hover,
html body.p19-product-shell .p7-side-input:hover{background:rgba(232,242,239,.88)!important;color:var(--p19-brand-strong)!important;transform:translateX(1px)!important}
html body.p19-product-shell .p7-side-nav button:active,
html body.p19-product-shell .p7-side-input:active{transform:scale(.985)!important}
html body.p19-product-shell .p7-side-nav button.active,
html body.p19-product-shell .p7-side-input.active{
  background:linear-gradient(135deg,#e3efeb,#eef5f3)!important;color:#214d46!important;
  box-shadow:inset 3px 0 0 var(--p19-brand),0 7px 18px rgba(49,101,91,.06)!important
}
html body.p19-product-shell .p7-topbar-title-row h1{font-size:21px!important;letter-spacing:-.03em!important;font-weight:820!important;color:var(--p19-ink)!important}
html body.p19-product-shell .p7-topbar-product{font-size:12px!important;color:#607479!important}
html body.p19-product-shell .p7-topbar-title-row span{font-size:12.5px!important;color:#63777b!important}
html body.p19-product-shell .p7-period-chip{min-height:48px!important;border-radius:14px!important;background:rgba(245,249,248,.82)!important;border-color:var(--p19-line)!important}
html body.p19-product-shell .p7-period-chip strong{font-size:13px!important}

/* Comfortable controls: 44px+ touch/pointing target and calm press feedback. */
html body.p19-product-shell #patrolPage .btn,
html body.p19-product-shell .p7-topbar .btn{
  min-height:44px!important;border-radius:14px!important;padding:10px 17px!important;font-size:14px!important;font-weight:740!important;
  border:1px solid rgba(51,83,86,.14)!important;background:rgba(255,255,255,.88)!important;color:#355058!important;
  box-shadow:0 5px 15px rgba(35,62,67,.045),inset 0 1px 0 rgba(255,255,255,.92)!important;
  transition:transform .18s var(--p19-ease),box-shadow .18s ease,background .18s ease,border-color .18s ease!important
}
html body.p19-product-shell #patrolPage .btn:hover:not(:disabled),html body.p19-product-shell .p7-topbar .btn:hover:not(:disabled){transform:translateY(-1px)!important;border-color:rgba(53,110,101,.26)!important;box-shadow:0 10px 24px rgba(35,62,67,.075)!important}
html body.p19-product-shell #patrolPage .btn:active:not(:disabled),html body.p19-product-shell .p7-topbar .btn:active:not(:disabled){transform:scale(.978)!important;box-shadow:0 3px 10px rgba(35,62,67,.055)!important}
html body.p19-product-shell #patrolPage .btn.primary,html body.p19-product-shell .p7-topbar .btn.primary{
  background:linear-gradient(180deg,#3e766d,#2e655d)!important;border-color:#2f655d!important;color:#fff!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.22),0 9px 24px rgba(45,101,92,.18)!important
}

/* Content hero: less 'text dropped in white box', more crafted module identity. */
html body.p19-product-shell #patrolPage .p7-module-head{
  position:relative!important;isolation:isolate!important;overflow:hidden!important;
  padding:28px 30px 27px!important;margin:0 0 18px!important;border:1px solid rgba(58,91,92,.105)!important;border-radius:24px!important;
  background:linear-gradient(145deg,rgba(255,255,255,.98) 0%,rgba(246,250,249,.96) 66%,rgba(239,246,243,.94) 100%)!important;
  box-shadow:var(--p19-shadow)!important
}
html body.p19-product-shell #patrolPage .p7-module-head::before{
  content:"";position:absolute;z-index:-1;right:-100px;top:-120px;width:330px;height:330px;border-radius:50%;
  background:radial-gradient(circle,rgba(78,132,122,.12),transparent 70%);pointer-events:none
}
html body.p19-product-shell #patrolPage .p7-module-head::after{left:0!important;top:28px!important;width:4px!important;height:40px!important;background:linear-gradient(180deg,#39786d,#5f8e87)!important;border-radius:0 8px 8px 0!important}
html body.p19-product-shell #patrolPage .p7-module-head h2{font-size:38px!important;line-height:1.03!important;letter-spacing:-.055em!important;font-weight:860!important;color:var(--p19-ink)!important}
html body.p19-product-shell #patrolPage .p7-module-head p{margin-top:9px!important;font-size:15.5px!important;line-height:1.65!important;color:#475f65!important;font-weight:520!important}
html body.p19-product-shell #patrolPage .patrol-section-kicker,
html body.p19-product-shell #patrolPage .p4-section-kicker,
html body.p19-product-shell #patrolPage .patrol-eyebrow{font-size:11.5px!important;letter-spacing:.08em!important;color:#4d7168!important;font-weight:820!important}

/* Status rail and generic content surfaces. */
html body.p19-product-shell .p15-completeness-bar{min-height:46px!important;padding:9px 15px!important;border-radius:16px!important;background:rgba(253,254,254,.78)!important;border-color:rgba(51,83,86,.11)!important;box-shadow:0 8px 25px rgba(35,62,67,.045)!important;backdrop-filter:blur(12px)!important}
html body.p19-product-shell #patrolPage .patrol-panel,
html body.p19-product-shell #patrolPage .p7-workspace-card,
html body.p19-product-shell #patrolPage .p7-object-table-panel,
html body.p19-product-shell #patrolPage .p15-output-group{
  border-radius:22px!important;border:1px solid var(--p19-line)!important;
  background:linear-gradient(180deg,#ffffff 0%,#fbfcfc 100%)!important;
  box-shadow:var(--p19-shadow-soft)!important;overflow:hidden
}
html body.p19-product-shell #patrolPage .patrol-panel-head{
  margin:-20px -20px 17px!important;padding:20px 22px 18px!important;
  background:linear-gradient(180deg,rgba(244,249,247,.90),rgba(250,252,251,.56))!important;border-bottom:1px solid var(--p19-line-soft)!important
}
html body.p19-product-shell #patrolPage .patrol-panel-head h3,
html body.p19-product-shell #patrolPage .p15-output-group>header>span{font-size:21px!important;line-height:1.22!important;letter-spacing:-.025em!important;font-weight:820!important;color:#1f3d44!important}
html body.p19-product-shell #patrolPage .patrol-panel-head small,
html body.p19-product-shell #patrolPage .p15-output-group>header>small{font-size:13.25px!important;line-height:1.55!important;color:#566d72!important}
html body.p19-product-shell #patrolPage .patrol-empty-card{border-radius:18px!important;background:linear-gradient(145deg,#f5f9f7,#fbfcfb)!important;border:1px dashed rgba(54,91,90,.14)!important;color:#5b7074!important;font-size:14px!important;line-height:1.6!important}

/* KPI typography has confidence without dark blocks. */
html body.p19-product-shell #patrolPage .p4-viz-kpis,
html body.p19-product-shell #patrolPage #p7ProjectKpis,
html body.p19-product-shell #patrolPage #p7ResponsibilityKpis{border-radius:22px!important;border-color:var(--p19-line)!important;box-shadow:var(--p19-shadow-soft)!important;background:#fff!important}
html body.p19-product-shell #patrolPage .p4-viz-kpis>article,
html body.p19-product-shell #patrolPage #p7ProjectKpis>article,
html body.p19-product-shell #patrolPage #p7ResponsibilityKpis>article{min-height:118px!important;padding:21px 22px!important;background:linear-gradient(145deg,#fff,#f8fbfa)!important;position:relative!important}
html body.p19-product-shell #patrolPage .p4-viz-kpis span,
html body.p19-product-shell #patrolPage #p7ProjectKpis span,
html body.p19-product-shell #patrolPage #p7ResponsibilityKpis span{font-size:12.75px!important;color:#50676c!important;font-weight:720!important}
html body.p19-product-shell #patrolPage .p4-viz-kpis strong,
html body.p19-product-shell #patrolPage #p7ProjectKpis strong,
html body.p19-product-shell #patrolPage #p7ResponsibilityKpis strong{font-size:44px!important;line-height:1!important;letter-spacing:-.045em!important;color:#193a40!important;font-weight:850!important}
html body.p19-product-shell #patrolPage .p4-viz-kpis small,
html body.p19-product-shell #patrolPage #p7ProjectKpis small,
html body.p19-product-shell #patrolPage #p7ResponsibilityKpis small{font-size:13px!important;color:#5d7276!important;line-height:1.5!important}

/* Tables: denser than cards, but never micro-type. */
html body.p19-product-shell #patrolPage .patrol-table,
html body.p19-product-shell #patrolPage .p7-object-table{font-size:13.5px!important;color:#314a50!important}
html body.p19-product-shell #patrolPage .patrol-table th,
html body.p19-product-shell #patrolPage .p7-object-table th{font-size:12.75px!important;font-weight:760!important;color:#536970!important;background:rgba(243,247,246,.96)!important;padding-top:12px!important;padding-bottom:12px!important}
html body.p19-product-shell #patrolPage .patrol-table td,
html body.p19-product-shell #patrolPage .p7-object-table td{font-size:13.5px!important;line-height:1.48!important;padding-top:12px!important;padding-bottom:12px!important;border-bottom-color:rgba(50,80,83,.07)!important}
html body.p19-product-shell #patrolPage .patrol-table tbody tr,
html body.p19-product-shell #patrolPage .p7-object-table tbody tr{transition:background .16s ease,box-shadow .16s ease!important}
html body.p19-product-shell #patrolPage .patrol-table tbody tr:hover,
html body.p19-product-shell #patrolPage .p7-object-table tbody tr:hover{background:#f7faf9!important;box-shadow:inset 3px 0 0 rgba(53,110,101,.22)!important}

/* Input workbench: the entry itself feels intentional, not a raw form. */
html body.p19-product-shell #patrolInputZone .patrol-one-paste-card,
html body.p19-product-shell #patrolInputZone .patrol-contract-card{border-radius:24px!important;border-color:var(--p19-line)!important;background:linear-gradient(160deg,#fff,#f8fbfa)!important;box-shadow:var(--p19-shadow-soft)!important}
html body.p19-product-shell #patrolInputZone .patrol-input{font-size:15.5px!important;line-height:1.65!important;border-radius:18px!important;background:#fff!important;border-color:rgba(49,82,84,.14)!important}

/* Output center: visual grouping, not a raw button warehouse. */
html body.p19-product-shell #patrolOutputZone>.p15-output-group{padding:20px!important;gap:14px!important}
html body.p19-product-shell #patrolOutputZone>.p15-output-group>header{margin:-20px -20px 2px!important;padding:19px 20px!important;background:linear-gradient(180deg,rgba(244,249,247,.82),rgba(250,252,251,.52))!important;border-bottom:1px solid var(--p19-line-soft)!important}
html body.p19-product-shell #patrolOutputZone .patrol-copy-card,
html body.p19-product-shell #patrolOutputZone .p15-output-card{border-radius:18px!important;border-color:var(--p19-line-soft)!important;background:linear-gradient(145deg,#fff,#f8faf9)!important}

/* ======================================================================
   P19 flagship GIS workbench — stable context, top priorities in rail,
   full list in a deliberate sheet. No tiny internal-scroll scavenger hunt.
   ====================================================================== */
html body.p19-product-shell #patrolAnalysisZone .patrol-project-intelligence-map{
  border-radius:28px!important;border:1px solid rgba(44,77,80,.10)!important;
  background:linear-gradient(145deg,rgba(255,255,255,.98),rgba(246,250,249,.96))!important;
  box-shadow:0 24px 70px rgba(33,59,64,.10)!important;overflow:hidden!important
}
html body.p19-product-shell #patrolAnalysisZone .patrol-project-intelligence-map>.patrol-map-intelligence-head{
  padding:24px 26px 21px!important;background:linear-gradient(145deg,#f6faf8,#fff)!important;border-bottom:1px solid var(--p19-line-soft)!important
}
html body.p19-product-shell #patrolAnalysisZone .patrol-map-intelligence-head h3{font-size:25px!important;letter-spacing:-.035em!important;font-weight:850!important;color:#1a3940!important}
html body.p19-product-shell #patrolAnalysisZone .patrol-map-intelligence-head small{font-size:13.5px!important;color:#556d72!important;line-height:1.55!important}
html body.p19-product-shell #patrolAnalysisZone .patrol-map-intelligence-layout{grid-template-columns:minmax(0,1fr) 380px!important;gap:14px!important;padding:14px!important;background:linear-gradient(180deg,#f0f5f3,#eef4f2)!important}
html body.p19-product-shell #patrolAnalysisZone .patrol-map-canvas-shell,
html body.p19-product-shell #patrolAnalysisZone .patrol-map-intelligence-panel{height:clamp(650px,calc(100vh - 245px),790px)!important;min-height:650px!important}
html body.p19-product-shell #patrolAnalysisZone .patrol-map-canvas-shell{border-radius:22px!important;border:1px solid rgba(45,78,80,.10)!important;background:#f6f9f8!important;box-shadow:0 12px 32px rgba(34,60,64,.06)!important}
html body.p19-product-shell #patrolAnalysisZone .patrol-map-intelligence-panel{
  display:grid!important;grid-template-rows:auto auto minmax(0,1fr) auto!important;gap:12px!important;overflow:hidden!important;
  padding:15px!important;border-radius:22px!important;border:1px solid rgba(255,255,255,.86)!important;
  background:rgba(250,253,252,.86)!important;box-shadow:0 12px 34px rgba(34,60,64,.055)!important;
  backdrop-filter:blur(20px) saturate(132%)!important;-webkit-backdrop-filter:blur(20px) saturate(132%)!important
}
html body.p19-product-shell #patrolAnalysisZone .patrol-map-intelligence-title{padding:3px 3px 12px!important;border-bottom:1px solid var(--p19-line-soft)!important}
html body.p19-product-shell #patrolAnalysisZone .patrol-map-intelligence-title span{font-size:19px!important;font-weight:830!important;color:#203f45!important}
html body.p19-product-shell #patrolAnalysisZone .patrol-map-intelligence-title small{font-size:12.75px!important;color:#62767a!important}
html body.p19-product-shell #patrolAnalysisZone .patrol-map-insight-section{min-height:0!important;margin:0!important;padding:0!important;border:0!important}
html body.p19-product-shell #patrolAnalysisZone .patrol-map-insight-section-head{margin:0 0 9px!important}
html body.p19-product-shell #patrolAnalysisZone .patrol-map-insight-section-head h4{font-size:16px!important;color:#29464c!important}
html body.p19-product-shell #patrolAnalysisZone .patrol-map-insight-section-head small{font-size:12px!important;color:#64787c!important}
html body.p19-product-shell #patrolAnalysisZone #patrolProjectMapPriorityList{overflow:hidden!important;max-height:none!important;display:grid!important;gap:8px!important;align-content:start!important}
html body.p19-product-shell #patrolAnalysisZone .patrol-map-priority-row{
  min-height:68px!important;border-radius:16px!important;padding:9px 10px!important;gap:10px!important;border:1px solid rgba(53,84,87,.10)!important;
  background:linear-gradient(145deg,#fff,#f7faf9)!important;box-shadow:0 5px 16px rgba(35,62,67,.035)!important;
  transition:transform .18s var(--p19-ease),border-color .18s ease,box-shadow .18s ease,background .18s ease!important
}
html body.p19-product-shell #patrolAnalysisZone button.patrol-map-priority-row:hover{transform:translateY(-1px)!important;border-color:rgba(53,110,101,.22)!important;box-shadow:0 9px 22px rgba(35,62,67,.07)!important}
html body.p19-product-shell #patrolAnalysisZone button.patrol-map-priority-row:active{transform:scale(.985)!important}
html body.p19-product-shell #patrolAnalysisZone .patrol-map-priority-row.is-selected{background:linear-gradient(145deg,#eaf4f1,#f8fbfa)!important;border-color:rgba(53,110,101,.30)!important;box-shadow:inset 3px 0 0 var(--p19-brand),0 8px 20px rgba(43,97,87,.075)!important}
html body.p19-product-shell #patrolAnalysisZone .patrol-map-priority-no{min-width:42px!important;height:42px!important;border-radius:13px!important;font-size:17px!important;font-weight:850!important}
html body.p19-product-shell #patrolAnalysisZone .patrol-map-priority-main b{font-size:14px!important;line-height:1.35!important;color:#233f45!important}
html body.p19-product-shell #patrolAnalysisZone .patrol-map-priority-main small{font-size:11.75px!important;line-height:1.4!important;color:#63777b!important}
html body.p19-product-shell #patrolAnalysisZone .patrol-map-priority-state{font-size:11.5px!important;font-weight:760!important}
html body.p19-product-shell #patrolAnalysisZone .p18-map-selection-dock{
  margin:0!important;padding:13px!important;border-radius:17px!important;border:1px solid rgba(53,110,101,.20)!important;
  background:linear-gradient(145deg,#eaf4f1,#f6faf8)!important;box-shadow:0 10px 26px rgba(39,82,75,.07)!important
}
html body.p19-product-shell #patrolAnalysisZone .p18-map-selection-dock strong{font-size:15.5px!important;line-height:1.35!important}
html body.p19-product-shell #patrolAnalysisZone .p15-map-card-grid span{font-size:11.75px!important;color:#607478!important}
html body.p19-product-shell #patrolAnalysisZone .p15-map-card-grid b{font-size:13px!important;color:#29464c!important}
html body.p19-product-shell #patrolAnalysisZone .patrol-map-explore-bar{padding:12px 14px!important;gap:12px!important;background:rgba(247,250,249,.90)!important;border-bottom:1px solid var(--p19-line-soft)!important}
html body.p19-product-shell #patrolAnalysisZone .patrol-map-filter-group button{min-height:38px!important;border-radius:12px!important;font-size:12.5px!important;transition:transform .16s var(--p19-ease),background .16s ease,box-shadow .16s ease!important}
html body.p19-product-shell #patrolAnalysisZone .patrol-map-filter-group button:active{transform:scale(.97)!important}
html body.p19-product-shell #patrolAnalysisZone .patrol-map-filter-group button.active{background:#fff!important;box-shadow:0 6px 17px rgba(34,62,66,.08)!important;color:var(--p19-brand-strong)!important}
html body.p19-product-shell #patrolAnalysisZone .patrol-map-search-box input{min-height:40px!important;border-radius:12px!important;font-size:13px!important}
html body.p19-product-shell #patrolAnalysisZone .p19-priority-more{
  min-height:42px;border:1px solid rgba(53,90,91,.12);border-radius:14px;background:rgba(246,250,248,.82);color:#365d58;font-weight:760;font-size:12.75px;cursor:pointer;
  transition:transform .16s var(--p19-ease),background .16s ease,border-color .16s ease
}
html body.p19-product-shell #patrolAnalysisZone .p19-priority-more:hover{background:#eef6f3;border-color:rgba(53,110,101,.24)}
html body.p19-product-shell #patrolAnalysisZone .p19-priority-more:active{transform:scale(.985)}

/* Full priority list: deliberate side sheet on desktop, bottom sheet on small screens. */
.p19-priority-sheet{border:0!important;padding:0!important;background:transparent!important;max-width:none!important;max-height:none!important;width:100vw!important;height:100vh!important;overflow:visible!important}
.p19-priority-sheet::backdrop{background:rgba(27,43,47,.16);backdrop-filter:blur(7px);-webkit-backdrop-filter:blur(7px)}
.p19-priority-sheet-card{position:fixed;right:16px;top:16px;bottom:16px;width:min(470px,calc(100vw - 32px));display:grid;grid-template-rows:auto minmax(0,1fr);border:1px solid rgba(255,255,255,.84);border-radius:28px;background:rgba(250,253,252,.94);box-shadow:0 26px 90px rgba(24,48,54,.20);backdrop-filter:blur(26px) saturate(138%);-webkit-backdrop-filter:blur(26px) saturate(138%);overflow:hidden}
.p19-priority-sheet-head{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;padding:22px 22px 18px;border-bottom:1px solid var(--p19-line-soft);background:linear-gradient(180deg,rgba(255,255,255,.70),rgba(247,250,249,.45))}
.p19-priority-sheet-head span{display:block;font-size:11px;font-weight:820;letter-spacing:.08em;color:#527269;margin-bottom:4px}.p19-priority-sheet-head strong{display:block;font-size:23px;letter-spacing:-.035em;color:#18383f}.p19-priority-sheet-head small{display:block;margin-top:4px;font-size:12.5px;color:#62767a}
.p19-priority-sheet-close{width:44px;height:44px;border-radius:14px;border:1px solid var(--p19-line);background:#fff;color:#3a545a;font-size:22px;cursor:pointer;box-shadow:0 5px 16px rgba(35,62,67,.05)}
.p19-priority-sheet-list{overflow:auto;padding:14px 16px 24px;display:grid;gap:9px;align-content:start;scrollbar-width:thin;scrollbar-color:rgba(87,113,115,.22) transparent}
.p19-priority-sheet-list::-webkit-scrollbar{width:8px}.p19-priority-sheet-list::-webkit-scrollbar-thumb{background:rgba(87,113,115,.20);border-radius:99px}
.p19-priority-sheet-list .patrol-map-priority-row{min-height:74px!important}
@media(max-width:720px){.p19-priority-sheet-card{left:8px;right:8px;top:auto;bottom:8px;width:auto;height:min(78vh,720px);border-radius:26px}.p19-priority-sheet-head{padding:18px}.p19-priority-sheet-list{padding:12px}}

@media(max-width:1180px){
 html body.p19-product-shell #patrolAnalysisZone .patrol-map-intelligence-layout{grid-template-columns:1fr!important}
 html body.p19-product-shell #patrolAnalysisZone .patrol-map-canvas-shell{height:560px!important;min-height:480px!important}
 html body.p19-product-shell #patrolAnalysisZone .patrol-map-intelligence-panel{height:auto!important;min-height:0!important;grid-template-rows:auto auto auto auto!important}
}
@media(max-width:760px){
 html body.p19-product-shell #patrolPage .p7-module-head h2{font-size:31px!important}
 html body.p19-product-shell #patrolPage .p7-module-head{padding:22px 20px!important;border-radius:20px!important}
 html body.p19-product-shell #patrolAnalysisZone .patrol-map-canvas-shell{height:460px!important;min-height:420px!important}
}
@media(prefers-reduced-motion:reduce){html body.p19-product-shell *,html body.p19-product-shell *::before,html body.p19-product-shell *::after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important}}
@supports not ((backdrop-filter:blur(1px)) or (-webkit-backdrop-filter:blur(1px))){html body.p19-product-shell .p7-sidebar,html body.p19-product-shell .p7-topbar,html body.p19-product-shell #patrolAnalysisZone .patrol-map-intelligence-panel,.p19-priority-sheet-card{background:#f9fcfb!important}}


/* P19.1 final spatial fit: three primary locations + full-list sheet, no rail scrollbar. */
html body.patrol-mode.patrol-standalone.p19-product-shell #patrolPage #patrolAnalysisZone .p15-map-legend-compact{
  min-height:0!important;height:auto!important;margin:0!important;padding:3px!important;border:0!important;border-radius:14px!important;background:linear-gradient(145deg,#f0f6f4,#f7faf9)!important;display:grid!important;gap:2px!important
}
html body.patrol-mode.patrol-standalone.p19-product-shell #patrolPage #patrolAnalysisZone .p15-map-legend-compact p{min-height:36px!important;padding:4px 7px!important;margin:0!important;grid-template-columns:42px minmax(0,1fr)!important;align-items:center!important}
html body.patrol-mode.patrol-standalone.p19-product-shell #patrolPage #patrolAnalysisZone .p15-map-legend-compact span{font-size:11.5px!important;color:#536a6f!important}
html body.patrol-mode.patrol-standalone.p19-product-shell #patrolPage #patrolAnalysisZone .p15-map-legend-compact b{font-size:12.5px!important;line-height:1.35!important;color:#2c484e!important}
html body.patrol-mode.patrol-standalone.p19-product-shell #patrolPage #patrolAnalysisZone #patrolProjectMapPriorityList{overflow:hidden!important;overflow-y:hidden!important;max-height:none!important}
html body.p19-product-shell #patrolAnalysisZone #patrolProjectMapBoard{filter:contrast(1.075) brightness(.995) saturate(.96)}
html body.p19-product-shell #patrolPage .patrol-table td,html body.p19-product-shell #patrolPage .p7-object-table td{font-size:14px!important}
html body.p19-product-shell #patrolPage .patrol-table th,html body.p19-product-shell #patrolPage .p7-object-table th{font-size:13px!important}

html body.p19-product-shell #patrolAnalysisZone #patrolProjectMapPriorityList{gap:7px!important}
html body.p19-product-shell #patrolAnalysisZone .patrol-map-priority-row{min-height:65px!important}
html body.p19-product-shell #patrolAnalysisZone .p19-priority-more{min-height:38px!important}

/* ======================================================================
   P19 final typography/readability gate — no timid microtype.
   Keep enterprise density, but make every visible word comfortably legible.
   ====================================================================== */
html body.p19-product-shell{
  --p19-muted:#50686d;
  --p19-cool:#5a7480;
}
html body.p19-product-shell .p7-brand-text{color:var(--p19-ink)!important;opacity:1!important}
html body.p19-product-shell .p7-brand-text small{font-size:12.25px!important;color:#536b70!important;opacity:1!important}
html body.p19-product-shell .p7-brand-text strong{font-size:17.5px!important;color:var(--p19-ink)!important;opacity:1!important}
html body.p19-product-shell .p7-side-foot small{font-size:12px!important;color:#50686d!important;opacity:1!important}
html body.p19-product-shell .p7-period-chip span{font-size:11.75px!important;color:#536b70!important}
html body.p19-product-shell #patrolPage small{
  font-size:12.25px!important;line-height:1.5!important;color:#4f676c!important;opacity:1!important
}
html body.p19-product-shell #patrolPage .patrol-section-kicker,
html body.p19-product-shell #patrolPage .p7-input-kicker{
  font-size:11.5px!important;line-height:1.25!important;letter-spacing:.065em!important;color:#3f736b!important;font-weight:820!important
}
html body.p19-product-shell #patrolPage .patrol-structure-subtitle,
html body.p19-product-shell #patrolPage .patrol-domain-section-label{
  font-size:12.5px!important;line-height:1.35!important;letter-spacing:.035em!important;color:#4a6468!important;font-weight:760!important
}
html body.p19-product-shell #patrolPage .patrol-domain-chip,
html body.p19-product-shell #patrolPage .patrol-schema-badge,
html body.p19-product-shell #patrolPage .p7-status-badge,
html body.p19-product-shell #patrolPage .p11-gap-badge,
html body.p19-product-shell #patrolPage .p17-missing-inline,
html body.p19-product-shell #patrolPage .p15-mini-availability{
  font-size:11.75px!important;line-height:1.25!important;font-weight:760!important
}
html body.p19-product-shell #patrolPage label{font-size:12px!important;line-height:1.35!important;color:#4c656a!important;font-weight:690!important}
html body.p19-product-shell #patrolPage th{font-size:12.25px!important;line-height:1.3!important;color:#38555c!important;font-weight:790!important}
html body.p19-product-shell #patrolPage td{font-size:13px!important;line-height:1.45!important;color:#29464c!important}
html body.p19-product-shell #patrolPage td small{font-size:12px!important;color:#536b70!important}
html body.p19-product-shell #patrolPage .p15-copy-gap{font-size:12px!important;min-width:44px!important;min-height:34px!important}

/* Overview visual analytics: labels should read like software, not footnotes. */
html body.p19-product-shell #patrolDashboard .p4-viz-kpis article>span,
html body.p19-product-shell #patrolDashboard .p4-chart-panel header span{font-size:11.75px!important;color:#4d666b!important;font-weight:760!important}
html body.p19-product-shell #patrolDashboard .p4-chart-panel header>b{font-size:12px!important}
html body.p19-product-shell #patrolDashboard .p4-stack-legend span,
html body.p19-product-shell #patrolDashboard .p4-stack-legend b{font-size:12px!important}
html body.p19-product-shell #patrolDashboard .p4-chart-caption{font-size:12.5px!important;color:#536b70!important;line-height:1.55!important}
html body.p19-product-shell #patrolDashboard .hf31-action-section-title small{font-size:12.5px!important}
html body.p19-product-shell #patrolDashboard .patrol-action-highlights b{font-size:13.5px!important}

/* Project / responsibility worktables: keep dense, never squint-sized. */
html body.p19-product-shell #p7ProjectWorkspace .p7-status-badge,
html body.p19-product-shell #patrolResponsibilityZone .p7-status-badge{font-size:11.75px!important}
html body.p19-product-shell #p7ProjectWorkspace .p15-gap-card small{font-size:12.5px!important;color:#4d666b!important}
html body.p19-product-shell #p7ProjectWorkspace .p15-scope-note,
html body.p19-product-shell #p7ProjectWorkspace .p17-project-scope-note{font-size:12.25px!important;color:#4f676c!important;line-height:1.5!important}

/* Empty / output / history / input pages should feel authored, not placeholder-like. */
html body.p19-product-shell #p7StoreWorkspace .p11-empty-side>span{font-size:11.75px!important;color:#496761!important;font-weight:800!important;letter-spacing:.04em!important}
html body.p19-product-shell #p7StoreWorkspace .p11-empty-side li{font-size:13px!important;line-height:1.45!important;color:#3e5a60!important}
html body.p19-product-shell #patrolOutputZone .patrol-copy-card>span{font-size:11.75px!important;color:#456b61!important;font-weight:810!important;letter-spacing:.035em!important}
html body.p19-product-shell #patrolOutputZone .patrol-copy-card>p{font-size:12.75px!important;line-height:1.55!important;color:#4e676c!important}
html body.p19-product-shell #patrolCompareZone .p11-history-baseline-head span,
html body.p19-product-shell #patrolCompareZone .p11-history-next-grid span,
html body.p19-product-shell #patrolCompareZone .p15-history-future span{font-size:12px!important;color:#49636a!important}
html body.p19-product-shell #patrolInputZone .p7-input-trust span{font-size:11.75px!important;color:#49636a!important}
html body.p19-product-shell #patrolInputZone .p7-guide-head span{font-size:11.75px!important;color:#476860!important;font-weight:800!important}
html body.p19-product-shell #patrolInputZone .p7-guide-grid b{font-size:12.5px!important;color:#2f4d53!important}
html body.p19-product-shell #patrolInputZone .p7-guide-grid small{font-size:12px!important;color:#526a6f!important}
html body.p19-product-shell #patrolInputZone .p15-live-recognition span{font-size:12px!important}

/* GIS: selected items and high-frequency tools remain highly legible. */
html body.p19-product-shell #patrolAnalysisZone .patrol-map-priority-main{color:#29464c!important;opacity:1!important}
html body.p19-product-shell #patrolAnalysisZone .patrol-map-priority-main b{font-size:14.5px!important;color:#203e44!important;opacity:1!important}
html body.p19-product-shell #patrolAnalysisZone .patrol-map-priority-main small{font-size:12.25px!important;color:#4f676c!important;opacity:1!important}
html body.p19-product-shell #patrolAnalysisZone .patrol-map-priority-state{font-size:11.75px!important;color:#405f5a!important}
html body.p19-product-shell #patrolAnalysisZone .patrol-map-filter-group button{font-size:12.75px!important;min-height:40px!important}
html body.p19-product-shell #patrolAnalysisZone .patrol-map-search-box input{font-size:13.25px!important}
html body.p19-product-shell #patrolAnalysisZone .btn.small{font-size:12.5px!important;min-height:42px!important}
html body.p19-product-shell #patrolAnalysisZone .p15-map-card-grid span{font-size:12px!important;color:#4c656a!important}
html body.p19-product-shell #patrolAnalysisZone .p15-map-card-grid b{font-size:13.25px!important}
html body.p19-product-shell #patrolAnalysisZone .p15-map-card-head>span{font-size:11.75px!important;color:#4f6a65!important}

/* Melly-like safety: on constrained width, simplify rather than shrink. */
@media(max-width:760px){
 html body.p19-product-shell #patrolPage th{font-size:12px!important}
 html body.p19-product-shell #patrolPage td{font-size:12.75px!important}
 html body.p19-product-shell #patrolPage small{font-size:12px!important}
 html body.p19-product-shell #patrolAnalysisZone .patrol-map-priority-main b{font-size:14px!important}
 html body.p19-product-shell #patrolAnalysisZone .patrol-map-priority-main small{font-size:12px!important}
}

/* P19 specificity firewall against accumulated legacy microtype. */
html body.patrol-mode.patrol-standalone.p7-product-shell.p8-product-shell.p9-product-shell.p10-product-shell.p11-product-shell.p12-product-shell.p13-product-shell.p14-product-shell.p15-product-shell.p16-product-shell.p17-product-shell.p18-product-shell.p19-product-shell #patrolPage .patrol-section-kicker,
html body.patrol-mode.patrol-standalone.p7-product-shell.p8-product-shell.p9-product-shell.p10-product-shell.p11-product-shell.p12-product-shell.p13-product-shell.p14-product-shell.p15-product-shell.p16-product-shell.p17-product-shell.p18-product-shell.p19-product-shell #patrolPage .p4-section-kicker,
html body.patrol-mode.patrol-standalone.p7-product-shell.p8-product-shell.p9-product-shell.p10-product-shell.p11-product-shell.p12-product-shell.p13-product-shell.p14-product-shell.p15-product-shell.p16-product-shell.p17-product-shell.p18-product-shell.p19-product-shell #patrolPage .patrol-eyebrow,
html body.patrol-mode.patrol-standalone.p7-product-shell.p8-product-shell.p9-product-shell.p10-product-shell.p11-product-shell.p12-product-shell.p13-product-shell.p14-product-shell.p15-product-shell.p16-product-shell.p17-product-shell.p18-product-shell.p19-product-shell #patrolPage .p7-input-kicker{
  font-size:11.75px!important;line-height:1.25!important;letter-spacing:.06em!important;color:#3f736b!important;font-weight:820!important
}
html body.patrol-mode.patrol-standalone.p7-product-shell.p8-product-shell.p9-product-shell.p10-product-shell.p11-product-shell.p12-product-shell.p13-product-shell.p14-product-shell.p15-product-shell.p16-product-shell.p17-product-shell.p18-product-shell.p19-product-shell #patrolPage small{
  font-size:12.25px!important;line-height:1.5!important;color:#496267!important;opacity:1!important
}
html body.patrol-mode.patrol-standalone.p7-product-shell.p8-product-shell.p9-product-shell.p10-product-shell.p11-product-shell.p12-product-shell.p13-product-shell.p14-product-shell.p15-product-shell.p16-product-shell.p17-product-shell.p18-product-shell.p19-product-shell #patrolPage th{
  font-size:12.5px!important;line-height:1.3!important;color:#38555c!important;font-weight:790!important
}
html body.patrol-mode.patrol-standalone.p7-product-shell.p8-product-shell.p9-product-shell.p10-product-shell.p11-product-shell.p12-product-shell.p13-product-shell.p14-product-shell.p15-product-shell.p16-product-shell.p17-product-shell.p18-product-shell.p19-product-shell #patrolPage label{
  font-size:12px!important;color:#476168!important
}
html body.patrol-mode.patrol-standalone.p7-product-shell.p8-product-shell.p9-product-shell.p10-product-shell.p11-product-shell.p12-product-shell.p13-product-shell.p14-product-shell.p15-product-shell.p16-product-shell.p17-product-shell.p18-product-shell.p19-product-shell #patrolPage .p7-status-badge,
html body.patrol-mode.patrol-standalone.p7-product-shell.p8-product-shell.p9-product-shell.p10-product-shell.p11-product-shell.p12-product-shell.p13-product-shell.p14-product-shell.p15-product-shell.p16-product-shell.p17-product-shell.p18-product-shell.p19-product-shell #patrolPage .p11-gap-badge,
html body.patrol-mode.patrol-standalone.p7-product-shell.p8-product-shell.p9-product-shell.p10-product-shell.p11-product-shell.p12-product-shell.p13-product-shell.p14-product-shell.p15-product-shell.p16-product-shell.p17-product-shell.p18-product-shell.p19-product-shell #patrolPage .p17-missing-inline,
html body.patrol-mode.patrol-standalone.p7-product-shell.p8-product-shell.p9-product-shell.p10-product-shell.p11-product-shell.p12-product-shell.p13-product-shell.p14-product-shell.p15-product-shell.p16-product-shell.p17-product-shell.p18-product-shell.p19-product-shell #patrolPage .p15-mini-availability{
  font-size:11.75px!important;line-height:1.25!important
}
html body.patrol-mode.patrol-standalone.p7-product-shell.p8-product-shell.p9-product-shell.p10-product-shell.p11-product-shell.p12-product-shell.p13-product-shell.p14-product-shell.p15-product-shell.p16-product-shell.p17-product-shell.p18-product-shell.p19-product-shell #patrolDashboard .p4-chart-panel header span,
html body.patrol-mode.patrol-standalone.p7-product-shell.p8-product-shell.p9-product-shell.p10-product-shell.p11-product-shell.p12-product-shell.p13-product-shell.p14-product-shell.p15-product-shell.p16-product-shell.p17-product-shell.p18-product-shell.p19-product-shell #patrolDashboard .p4-viz-kpis article>span{
  font-size:12px!important;color:#466066!important;font-weight:780!important
}
html body.patrol-mode.patrol-standalone.p7-product-shell.p8-product-shell.p9-product-shell.p10-product-shell.p11-product-shell.p12-product-shell.p13-product-shell.p14-product-shell.p15-product-shell.p16-product-shell.p17-product-shell.p18-product-shell.p19-product-shell #patrolDashboard .p15-coverage-status>div>span{
  color:#355159!important;opacity:1!important
}
html body.patrol-mode.patrol-standalone.p7-product-shell.p8-product-shell.p9-product-shell.p10-product-shell.p11-product-shell.p12-product-shell.p13-product-shell.p14-product-shell.p15-product-shell.p16-product-shell.p17-product-shell.p18-product-shell.p19-product-shell #patrolDashboard .hf31-action-step b{
  font-size:12px!important
}
html body.patrol-mode.patrol-standalone.p7-product-shell.p8-product-shell.p9-product-shell.p10-product-shell.p11-product-shell.p12-product-shell.p13-product-shell.p14-product-shell.p15-product-shell.p16-product-shell.p17-product-shell.p18-product-shell.p19-product-shell #p7ProjectWorkspace .p15-project-range-note b,
html body.patrol-mode.patrol-standalone.p7-product-shell.p8-product-shell.p9-product-shell.p10-product-shell.p11-product-shell.p12-product-shell.p13-product-shell.p14-product-shell.p15-product-shell.p16-product-shell.p17-product-shell.p18-product-shell.p19-product-shell #p7ProjectWorkspace .p15-project-range-note span{
  font-size:12px!important;line-height:1.5!important;color:#456067!important
}
html body.patrol-mode.patrol-standalone.p7-product-shell.p8-product-shell.p9-product-shell.p10-product-shell.p11-product-shell.p12-product-shell.p13-product-shell.p14-product-shell.p15-product-shell.p16-product-shell.p17-product-shell.p18-product-shell.p19-product-shell #p7ProjectWorkspace .patrol-bar-item>span,
html body.patrol-mode.patrol-standalone.p7-product-shell.p8-product-shell.p9-product-shell.p10-product-shell.p11-product-shell.p12-product-shell.p13-product-shell.p14-product-shell.p15-product-shell.p16-product-shell.p17-product-shell.p18-product-shell.p19-product-shell #p7ProjectWorkspace .patrol-grid-bar>span{
  font-size:11.75px!important;color:#466066!important
}
html body.patrol-mode.patrol-standalone.p7-product-shell.p8-product-shell.p9-product-shell.p10-product-shell.p11-product-shell.p12-product-shell.p13-product-shell.p14-product-shell.p15-product-shell.p16-product-shell.p17-product-shell.p18-product-shell.p19-product-shell #p7ProjectWorkspace .p7-pagination button{
  min-width:34px!important;min-height:34px!important;font-size:12px!important
}
html body.patrol-mode.patrol-standalone.p7-product-shell.p8-product-shell.p9-product-shell.p10-product-shell.p11-product-shell.p12-product-shell.p13-product-shell.p14-product-shell.p15-product-shell.p16-product-shell.p17-product-shell.p18-product-shell.p19-product-shell #patrolOutputZone .patrol-copy-card>p{
  font-size:12.75px!important;line-height:1.55!important;color:#496267!important
}
html body.patrol-mode.patrol-standalone.p7-product-shell.p8-product-shell.p9-product-shell.p10-product-shell.p11-product-shell.p12-product-shell.p13-product-shell.p14-product-shell.p15-product-shell.p16-product-shell.p17-product-shell.p18-product-shell.p19-product-shell #patrolInputZone .p7-guide-head span{
  font-size:11.75px!important
}
html body.patrol-mode.patrol-standalone.p7-product-shell.p8-product-shell.p9-product-shell.p10-product-shell.p11-product-shell.p12-product-shell.p13-product-shell.p14-product-shell.p15-product-shell.p16-product-shell.p17-product-shell.p18-product-shell.p19-product-shell #patrolInputZone .p7-guide-grid b{
  font-size:12.5px!important
}
html body.patrol-mode.patrol-standalone.p7-product-shell.p8-product-shell.p9-product-shell.p10-product-shell.p11-product-shell.p12-product-shell.p13-product-shell.p14-product-shell.p15-product-shell.p16-product-shell.p17-product-shell.p18-product-shell.p19-product-shell #patrolAnalysisZone .btn.small{
  font-size:12.5px!important
}
html body.patrol-mode.patrol-standalone.p7-product-shell.p8-product-shell.p9-product-shell.p10-product-shell.p11-product-shell.p12-product-shell.p13-product-shell.p14-product-shell.p15-product-shell.p16-product-shell.p17-product-shell.p18-product-shell.p19-product-shell #patrolAnalysisZone .p15-map-card-head>span{
  font-size:11.75px!important
}

/* P19 last-mile named micro-regions. */
html body.patrol-mode.patrol-standalone.p7-product-shell.p8-product-shell.p9-product-shell.p10-product-shell.p11-product-shell.p12-product-shell.p13-product-shell.p14-product-shell.p15-product-shell.p16-product-shell.p17-product-shell.p18-product-shell.p19-product-shell #p7ProjectWorkspace small,
html body.patrol-mode.patrol-standalone.p7-product-shell.p8-product-shell.p9-product-shell.p10-product-shell.p11-product-shell.p12-product-shell.p13-product-shell.p14-product-shell.p15-product-shell.p16-product-shell.p17-product-shell.p18-product-shell.p19-product-shell #p7ProjectTable small{
  font-size:12.25px!important;color:#405b61!important;opacity:1!important
}
html body.patrol-mode.patrol-standalone.p7-product-shell.p8-product-shell.p9-product-shell.p10-product-shell.p11-product-shell.p12-product-shell.p13-product-shell.p14-product-shell.p15-product-shell.p16-product-shell.p17-product-shell.p18-product-shell.p19-product-shell #p14ProjectMetricScope b{font-size:12px!important;color:#35565b!important}
html body.patrol-mode.patrol-standalone.p7-product-shell.p8-product-shell.p9-product-shell.p10-product-shell.p11-product-shell.p12-product-shell.p13-product-shell.p14-product-shell.p15-product-shell.p16-product-shell.p17-product-shell.p18-product-shell.p19-product-shell #p14ProjectMetricScope span{font-size:12px!important;color:#466168!important;line-height:1.5!important}
html body.patrol-mode.patrol-standalone.p7-product-shell.p8-product-shell.p9-product-shell.p10-product-shell.p11-product-shell.p12-product-shell.p13-product-shell.p14-product-shell.p15-product-shell.p16-product-shell.p17-product-shell.p18-product-shell.p19-product-shell #p7ProjectWorkspace .p7-bar-row>span{font-size:12px!important;color:#3f5c62!important;font-weight:720!important}
html body.patrol-mode.patrol-standalone.p7-product-shell.p8-product-shell.p9-product-shell.p10-product-shell.p11-product-shell.p12-product-shell.p13-product-shell.p14-product-shell.p15-product-shell.p16-product-shell.p17-product-shell.p18-product-shell.p19-product-shell #patrolResponsibilityZone .p14-resp-switch>span{font-size:11.75px!important;color:#4b656a!important}
html body.patrol-mode.patrol-standalone.p7-product-shell.p8-product-shell.p9-product-shell.p10-product-shell.p11-product-shell.p12-product-shell.p13-product-shell.p14-product-shell.p15-product-shell.p16-product-shell.p17-product-shell.p18-product-shell.p19-product-shell #patrolAnalysisZone .p18-map-selection-dock .p15-map-card-head span{font-size:11.75px!important;color:#47665f!important}
html body.patrol-mode.patrol-standalone.p7-product-shell.p8-product-shell.p9-product-shell.p10-product-shell.p11-product-shell.p12-product-shell.p13-product-shell.p14-product-shell.p15-product-shell.p16-product-shell.p17-product-shell.p18-product-shell.p19-product-shell #patrolInputZone #p15InputLive>div>span{font-size:11.75px!important;color:#47655e!important;font-weight:800!important}
html body.patrol-mode.patrol-standalone.p7-product-shell.p8-product-shell.p9-product-shell.p10-product-shell.p11-product-shell.p12-product-shell.p13-product-shell.p14-product-shell.p15-product-shell.p16-product-shell.p17-product-shell.p18-product-shell.p19-product-shell #patrolDashboard .hf31-action-step>b{font-size:12px!important}
html body.patrol-mode.patrol-standalone.p7-product-shell.p8-product-shell.p9-product-shell.p10-product-shell.p11-product-shell.p12-product-shell.p13-product-shell.p14-product-shell.p15-product-shell.p16-product-shell.p17-product-shell.p18-product-shell.p19-product-shell #p7ProjectTableBody td small{font-size:12.25px!important;color:#3b5259!important}
html body.patrol-mode.patrol-standalone.p7-product-shell.p8-product-shell.p9-product-shell.p10-product-shell.p11-product-shell.p12-product-shell.p13-product-shell.p14-product-shell.p15-product-shell.p16-product-shell.p17-product-shell.p18-product-shell.p19-product-shell #patrolLeadershipSummary .p15-management-brief p>b{font-size:12px!important;min-width:22px!important;min-height:22px!important}
html body.patrol-mode.patrol-standalone.p7-product-shell.p8-product-shell.p9-product-shell.p10-product-shell.p11-product-shell.p12-product-shell.p13-product-shell.p14-product-shell.p15-product-shell.p16-product-shell.p17-product-shell.p18-product-shell.p19-product-shell #patrolResponsibilityZone .p14-resp-switch span{font-size:11.75px!important}
html body.patrol-mode.patrol-standalone.p7-product-shell.p8-product-shell.p9-product-shell.p10-product-shell.p11-product-shell.p12-product-shell.p13-product-shell.p14-product-shell.p15-product-shell.p16-product-shell.p17-product-shell.p18-product-shell.p19-product-shell #patrolAnalysisZone .p18-map-selection-dock .p15-map-card-head>span{font-size:11.75px!important}
html body.patrol-mode.patrol-standalone.p7-product-shell.p8-product-shell.p9-product-shell.p10-product-shell.p11-product-shell.p12-product-shell.p13-product-shell.p14-product-shell.p15-product-shell.p16-product-shell.p17-product-shell.p18-product-shell.p19-product-shell #patrolPage #patrolResponsibilityZone .p14-resp-switch>span{font-size:11.75px!important;color:#4b656a!important}
html body.patrol-mode.patrol-standalone.p7-product-shell.p8-product-shell.p9-product-shell.p10-product-shell.p11-product-shell.p12-product-shell.p13-product-shell.p14-product-shell.p15-product-shell.p16-product-shell.p17-product-shell.p18-product-shell.p19-product-shell #patrolPage #patrolAnalysisZone .p18-map-selection-dock .p15-map-card-head>span{font-size:11.75px!important;color:#47665f!important}
html body.patrol-mode.patrol-standalone.p7-product-shell.p8-product-shell.p9-product-shell.p10-product-shell.p11-product-shell.p12-product-shell.p13-product-shell.p14-product-shell.p15-product-shell.p16-product-shell.p17-product-shell.p18-product-shell.p19-product-shell #patrolPage #p7ResponsibilityGrid .p14-resp-switch>span{font-size:11.75px!important;color:#4b656a!important}
html body.patrol-mode.patrol-standalone.p7-product-shell.p8-product-shell.p9-product-shell.p10-product-shell.p11-product-shell.p12-product-shell.p13-product-shell.p14-product-shell.p15-product-shell.p16-product-shell.p17-product-shell.p18-product-shell.p19-product-shell #patrolPage #p15MapSelectedCard .p15-map-card-head>span{font-size:11.75px!important;color:#47665f!important}
html body.patrol-mode.patrol-standalone.p7-product-shell.p8-product-shell.p9-product-shell.p10-product-shell.p11-product-shell.p12-product-shell.p13-product-shell.p14-product-shell.p15-product-shell.p16-product-shell.p17-product-shell.p18-product-shell.p19-product-shell #patrolPage #p15MapSelectedCard>span{font-size:11.75px!important;color:#47665f!important}

/* Melly-like constrained-space behavior: secondary context yields, core controls stay full-size. */
@media(max-width:900px){
 html body.p19-product-shell .p7-topbar-product,
 html body.p19-product-shell .p7-topbar-title-row>span{display:none!important}
 html body.p19-product-shell .p7-topbar-title-row h1{font-size:18px!important;white-space:nowrap!important}
 html body.p19-product-shell .p7-topbar-actions{gap:8px!important}
}
@media(max-width:720px){
 html body.patrol-mode.patrol-standalone.p7-product-shell.p8-product-shell.p9-product-shell.p10-product-shell.p11-product-shell.p12-product-shell.p13-product-shell.p14-product-shell.p15-product-shell.p16-product-shell.p17-product-shell.p18-product-shell.p19-product-shell .p7-sidebar .p7-brand-text{display:none!important}
 html body.p19-product-shell .p7-side-brand{justify-content:center!important;padding:0!important;gap:0!important}
 html body.p19-product-shell .p7-topbar-context{display:none!important}
 html body.p19-product-shell .p7-period-chip{display:none!important}
 html body.p19-product-shell .p7-topbar{justify-content:flex-end!important;padding:0 10px!important}
 html body.p19-product-shell .p7-topbar-actions{margin-left:auto!important;justify-content:flex-end!important;gap:8px!important;width:auto!important}
 html body.p19-product-shell .p7-topbar .p7-top-action{min-width:0!important;padding:9px 12px!important}
}

/* P19 final readability lock: dense project data remains compact, never timid. */
html body.patrol-mode.patrol-standalone.p7-product-shell.p8-product-shell.p9-product-shell.p10-product-shell.p11-product-shell.p12-product-shell.p13-product-shell.p14-product-shell.p15-product-shell.p16-product-shell.p17-product-shell.p18-product-shell.p19-product-shell #p7ProjectWorkspace small,
html body.patrol-mode.patrol-standalone.p7-product-shell.p8-product-shell.p9-product-shell.p10-product-shell.p11-product-shell.p12-product-shell.p13-product-shell.p14-product-shell.p15-product-shell.p16-product-shell.p17-product-shell.p18-product-shell.p19-product-shell #p7ProjectTable small,
html body.patrol-mode.patrol-standalone.p7-product-shell.p8-product-shell.p9-product-shell.p10-product-shell.p11-product-shell.p12-product-shell.p13-product-shell.p14-product-shell.p15-product-shell.p16-product-shell.p17-product-shell.p18-product-shell.p19-product-shell #p7ProjectTableBody td small{
 font-size:12.5px!important;line-height:1.42!important;color:#30494f!important;opacity:1!important;
}

/* P19 project microcopy final specificity firewall. */
html body.patrol-mode.patrol-standalone.p7-product-shell.p8-product-shell.p9-product-shell.p10-product-shell.p11-product-shell.p12-product-shell.p13-product-shell.p14-product-shell.p15-product-shell.p16-product-shell.p17-product-shell.p18-product-shell.p19-product-shell #patrolPage #p7ProjectWorkspace small,
html body.patrol-mode.patrol-standalone.p7-product-shell.p8-product-shell.p9-product-shell.p10-product-shell.p11-product-shell.p12-product-shell.p13-product-shell.p14-product-shell.p15-product-shell.p16-product-shell.p17-product-shell.p18-product-shell.p19-product-shell #patrolPage #p7ProjectTableBody td small{
 font-size:12.5px!important;line-height:1.42!important;color:#30494f!important;opacity:1!important;
}

/* P19 final occlusion safety — fixed controls must read as a distinct layer.
   Prevent translucent topbar from visually exposing clickable content beneath it. */
html body.patrol-mode.patrol-standalone.p19-product-shell .p7-topbar{
  isolation:isolate!important;
  overflow:hidden!important;
  background:linear-gradient(180deg,rgba(252,254,253,.992),rgba(247,251,249,.982))!important;
  border-color:rgba(55,86,83,.12)!important;
  box-shadow:0 15px 42px rgba(31,58,61,.095),inset 0 1px 0 rgba(255,255,255,.98)!important;
  backdrop-filter:blur(30px) saturate(132%)!important;
  -webkit-backdrop-filter:blur(30px) saturate(132%)!important;
}
html body.patrol-mode.patrol-standalone.p19-product-shell .p7-topbar::before{
  content:""!important;position:absolute!important;inset:0!important;z-index:-1!important;pointer-events:none!important;
  background:linear-gradient(105deg,rgba(255,255,255,.86),rgba(247,251,249,.66) 58%,rgba(237,246,242,.72))!important;
}
html body.patrol-mode.patrol-standalone.p19-product-shell .p7-topbar::after{
  content:""!important;position:absolute!important;left:18px!important;right:18px!important;bottom:0!important;height:1px!important;pointer-events:none!important;
  background:linear-gradient(90deg,transparent,rgba(53,110,101,.14),transparent)!important;
}
html body.patrol-mode.patrol-standalone.p19-product-shell #patrolAnalysisZone,
html body.patrol-mode.patrol-standalone.p19-product-shell #patrolAnalysisZone .p7-module-head,
html body.patrol-mode.patrol-standalone.p19-product-shell #patrolAnalysisZone .patrol-project-intelligence-map{
  scroll-margin-top:104px!important;
}
html.p19-enterprise-calm{scroll-padding-top:104px!important}


/* ==========================================================================
   P20 — Melly Music visual-language migration
   Reuses the user's satisfied Melly Music v1.1.1.7 product grammar:
   atmospheric background, soft glass control chrome, layered surfaces,
   confident typography, calm press feedback, and content-first hierarchy.
   Governance semantics and map/data authority remain unchanged.
   ========================================================================== */
html.p20-melly-surface{
  --p20-bg:#f3f7f8;
  --p20-bg-strong:#eaf1f3;
  --p20-surface:rgba(255,255,255,.78);
  --p20-surface-solid:#ffffff;
  --p20-surface-soft:rgba(255,255,255,.58);
  --p20-text:#172e34;
  --p20-muted:#61777c;
  --p20-subtle:#819398;
  --p20-line:rgba(56,82,88,.105);
  --p20-line-bright:rgba(255,255,255,.84);
  --p20-accent:#4d897f;
  --p20-accent-2:#778fbd;
  --p20-accent-soft:rgba(77,137,127,.13);
  --p20-blue-soft:rgba(117,153,205,.12);
  --p20-violet-soft:rgba(170,150,207,.10);
  --p20-warn:#bf7f2e;
  --p20-danger:#b65f55;
  --p20-shadow:0 22px 60px rgba(45,72,79,.105),0 3px 14px rgba(45,72,79,.055);
  --p20-shadow-soft:0 10px 30px rgba(50,76,82,.075);
  --p20-shadow-hover:0 18px 44px rgba(46,74,80,.11);
  --p20-radius-xl:30px;
  --p20-radius-lg:24px;
  --p20-radius-md:18px;
  --p20-radius-sm:14px;
  --p20-ease:cubic-bezier(.22,.8,.25,1);
  font-family:-apple-system,BlinkMacSystemFont,"SF Pro Display","SF Pro Text","PingFang SC","Microsoft YaHei",system-ui,sans-serif;
  scroll-behavior:auto!important;
}
html body.p20-product-shell{
  color:var(--p20-text)!important;
  background:
    radial-gradient(circle at 8% 3%,rgba(174,207,226,.34),transparent 31rem),
    radial-gradient(circle at 92% 7%,rgba(208,193,227,.25),transparent 30rem),
    radial-gradient(circle at 72% 92%,rgba(165,207,193,.18),transparent 32rem),
    linear-gradient(145deg,#f8fbfc 0%,#f1f6f7 50%,#f7f5fa 100%)!important;
  background-attachment:fixed!important;
  letter-spacing:-.008em;
  -webkit-font-smoothing:antialiased;
  text-rendering:optimizeLegibility;
}
html body.p20-product-shell::before{
  content:"";position:fixed;inset:0;pointer-events:none;z-index:-1;
  background:linear-gradient(118deg,rgba(255,255,255,.42),transparent 36%,rgba(255,255,255,.14));
}

/* Melly-style persistent control chrome */
@media(min-width:1025px){
 html body.p20-product-shell .p7-sidebar{
   left:18px!important;top:18px!important;bottom:18px!important;width:190px!important;
   border-radius:28px!important;padding-top:4px!important;
   background:rgba(255,255,255,.72)!important;border:1px solid rgba(255,255,255,.88)!important;
   box-shadow:var(--p20-shadow)!important;
   backdrop-filter:blur(28px) saturate(150%)!important;-webkit-backdrop-filter:blur(28px) saturate(150%)!important;
 }
 html body.p20-product-shell .p7-topbar{
   left:226px!important;right:18px!important;top:18px!important;height:70px!important;border-radius:22px!important;
   background:rgba(255,255,255,.82)!important;border:1px solid rgba(255,255,255,.9)!important;
   box-shadow:0 12px 36px rgba(45,72,79,.07),inset 0 1px 0 rgba(255,255,255,.96)!important;
   backdrop-filter:blur(26px) saturate(150%)!important;-webkit-backdrop-filter:blur(26px) saturate(150%)!important;
 }
 html body.p20-product-shell #patrolPage.p7-main{margin:108px 18px 0 226px!important;padding-bottom:54px!important;}
}
html body.p20-product-shell .p7-side-brand{min-height:86px!important;padding:13px 12px 17px!important;border-bottom:1px solid rgba(56,82,88,.075)!important;background:transparent!important}
html body.p20-product-shell .p7-side-logo img{border-radius:15px!important;box-shadow:0 10px 24px rgba(56,76,104,.14)!important}
html body.p20-product-shell .p7-side-brand strong{font-size:17.5px!important;font-weight:790!important;color:var(--p20-text)!important;letter-spacing:-.025em!important}
html body.p20-product-shell .p7-side-brand small{font-size:12.5px!important;color:var(--p20-muted)!important;margin-top:3px!important}
html body.p20-product-shell .p7-side-nav{gap:6px!important;padding:8px 3px!important}
html body.p20-product-shell .p7-side-nav button,
html body.p20-product-shell .p7-side-input{
  min-height:50px!important;border-radius:15px!important;padding:0 14px!important;font-size:14.5px!important;font-weight:660!important;color:#536a70!important;
  background:transparent!important;box-shadow:none!important;
  transition:background .18s ease,color .18s ease,transform .18s var(--p20-ease),box-shadow .18s ease!important;
}
html body.p20-product-shell .p7-side-nav button:hover,
html body.p20-product-shell .p7-side-input:hover{background:rgba(255,255,255,.62)!important;color:var(--p20-text)!important;transform:translateX(1px)!important}
html body.p20-product-shell .p7-side-nav button.active,
html body.p20-product-shell .p7-side-input.active{
  color:#345f58!important;background:linear-gradient(135deg,rgba(91,151,140,.15),rgba(120,145,193,.10))!important;
  box-shadow:0 7px 20px rgba(61,93,98,.055),inset 0 1px 0 rgba(255,255,255,.72)!important;
}
html body.p20-product-shell .p7-side-nav button:active,
html body.p20-product-shell .p7-side-input:active{transform:scale(.975)!important}
html body.p20-product-shell .p7-topbar-title-row h1{font-size:21px!important;font-weight:790!important;letter-spacing:-.035em!important;color:var(--p20-text)!important}
html body.p20-product-shell .p7-topbar-product{color:#6b7d82!important;font-size:12.5px!important}
html body.p20-product-shell .p7-topbar-title-row span{font-size:12.75px!important;color:#708287!important}
html body.p20-product-shell .p7-period-chip{
  min-height:46px!important;border-radius:15px!important;background:rgba(246,249,251,.82)!important;border:1px solid rgba(56,82,88,.09)!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.92)!important;
}

/* Buttons — behave like software controls, not browser buttons. */
html body.p20-product-shell #patrolPage .btn,
html body.p20-product-shell .p7-topbar .btn{
  min-height:46px!important;border-radius:15px!important;padding:0 18px!important;font-size:14px!important;font-weight:720!important;
  color:#3b565c!important;background:rgba(248,251,252,.90)!important;border:1px solid rgba(65,91,97,.10)!important;
  box-shadow:0 6px 18px rgba(47,73,80,.055),inset 0 1px 0 rgba(255,255,255,.92)!important;
  transition:transform .18s var(--p20-ease),box-shadow .18s ease,background .18s ease,border-color .18s ease!important;
}
html body.p20-product-shell #patrolPage .btn:hover:not(:disabled),html body.p20-product-shell .p7-topbar .btn:hover:not(:disabled){
  transform:translateY(-2px)!important;background:#fff!important;border-color:rgba(76,137,127,.20)!important;box-shadow:0 12px 28px rgba(47,73,80,.09)!important;
}
html body.p20-product-shell #patrolPage .btn:active:not(:disabled),html body.p20-product-shell .p7-topbar .btn:active:not(:disabled){transform:scale(.97)!important;box-shadow:0 3px 10px rgba(47,73,80,.05)!important}
html body.p20-product-shell #patrolPage .btn.primary,html body.p20-product-shell .p7-topbar .btn.primary{
  color:#fff!important;border:0!important;
  background:linear-gradient(135deg,#4e897f 0%,#5f817f 48%,#6d86a8 100%)!important;
  box-shadow:0 12px 28px rgba(66,107,107,.20),inset 0 1px 0 rgba(255,255,255,.20)!important;
}
html body.p20-product-shell #patrolPage .btn.primary:hover:not(:disabled){box-shadow:0 16px 34px rgba(66,107,107,.23)!important}
html body.p20-product-shell button:focus-visible,
html body.p20-product-shell input:focus-visible,
html body.p20-product-shell select:focus-visible{outline:3px solid rgba(95,137,166,.22)!important;outline-offset:2px!important}

/* Page hero — migrate Melly's hero-card atmosphere, not its music branding. */
html body.p20-product-shell #patrolPage .p7-module-head{
  border-radius:30px!important;padding:32px 34px 31px!important;margin-bottom:22px!important;
  border:1px solid rgba(255,255,255,.90)!important;
  background:
    radial-gradient(circle at 88% -20%,rgba(151,184,218,.20),transparent 34%),
    radial-gradient(circle at 68% 120%,rgba(186,162,210,.13),transparent 32%),
    linear-gradient(135deg,rgba(255,255,255,.90),rgba(246,249,251,.78) 58%,rgba(247,244,250,.75))!important;
  box-shadow:var(--p20-shadow-soft)!important;
  backdrop-filter:blur(18px) saturate(126%)!important;-webkit-backdrop-filter:blur(18px) saturate(126%)!important;
}
html body.p20-product-shell #patrolPage .p7-module-head::before{display:none!important}
html body.p20-product-shell #patrolPage .p7-module-head::after{display:none!important}
html body.p20-product-shell #patrolPage .p7-module-head h2{
  font-size:clamp(34px,3.2vw,46px)!important;line-height:1.02!important;letter-spacing:-.052em!important;font-weight:800!important;color:var(--p20-text)!important;
}
html body.p20-product-shell #patrolPage .p7-module-head p{font-size:16px!important;line-height:1.65!important;color:#536b71!important;font-weight:470!important;max-width:860px!important}
html body.p20-product-shell #patrolPage .patrol-section-kicker,
html body.p20-product-shell #patrolPage .p4-section-kicker,
html body.p20-product-shell #patrolPage .patrol-eyebrow,
html body.p20-product-shell #patrolPage .p7-input-kicker{
  display:inline-flex!important;align-items:center!important;min-height:27px!important;padding:0 10px!important;border-radius:999px!important;
  background:var(--p20-accent-soft)!important;color:#47746b!important;font-size:12px!important;font-weight:760!important;letter-spacing:.045em!important;
}

/* Core surfaces — Melly's translucent but solid-enough content panels. */
html body.p20-product-shell .p15-completeness-bar{
  min-height:48px!important;padding:10px 16px!important;border-radius:16px!important;background:rgba(255,255,255,.68)!important;
  border:1px solid rgba(255,255,255,.88)!important;box-shadow:0 7px 22px rgba(47,73,80,.045)!important;
  backdrop-filter:blur(16px) saturate(135%)!important;-webkit-backdrop-filter:blur(16px) saturate(135%)!important;
}
html body.p20-product-shell #patrolPage .patrol-panel,
html body.p20-product-shell #patrolPage .p7-workspace-card,
html body.p20-product-shell #patrolPage .p7-object-table-panel,
html body.p20-product-shell #patrolPage .p15-output-group,
html body.p20-product-shell #patrolPage .p7-domain-workspace,
html body.p20-product-shell #patrolPage .p7-input-workspace{
  border-radius:24px!important;border:1px solid rgba(255,255,255,.90)!important;
  background:rgba(255,255,255,.72)!important;box-shadow:var(--p20-shadow-soft)!important;
  backdrop-filter:blur(16px) saturate(125%)!important;-webkit-backdrop-filter:blur(16px) saturate(125%)!important;
}
html body.p20-product-shell #patrolPage .patrol-panel-head{
  margin:-20px -20px 18px!important;padding:22px 22px 19px!important;
  background:linear-gradient(180deg,rgba(249,251,253,.84),rgba(255,255,255,.34))!important;
  border-bottom:1px solid rgba(62,88,94,.065)!important;
}
html body.p20-product-shell #patrolPage .patrol-panel-head h3,
html body.p20-product-shell #patrolPage .p15-output-group>header>span{font-size:22px!important;font-weight:770!important;letter-spacing:-.028em!important;color:#203a40!important}
html body.p20-product-shell #patrolPage .patrol-panel-head small,
html body.p20-product-shell #patrolPage .p15-output-group>header>small{font-size:13.5px!important;line-height:1.6!important;color:#61767b!important}

/* KPI/stat cards — quiet surface, strong number. */
html body.p20-product-shell #patrolPage .p4-viz-kpis,
html body.p20-product-shell #patrolPage .p7-domain-kpis,
html body.p20-product-shell #patrolPage .p7-responsibility-kpis,
html body.p20-product-shell #patrolPage .patrol-compare-kpis{
  gap:12px!important;border-radius:24px!important;overflow:hidden!important;background:rgba(255,255,255,.60)!important;border:1px solid rgba(255,255,255,.88)!important;box-shadow:var(--p20-shadow-soft)!important;
}
html body.p20-product-shell #patrolPage .p4-viz-kpis article,
html body.p20-product-shell #patrolPage .p7-domain-kpis article,
html body.p20-product-shell #patrolPage .p7-responsibility-kpis article,
html body.p20-product-shell #patrolPage .patrol-compare-kpis article{
  background:linear-gradient(145deg,rgba(255,255,255,.84),rgba(248,251,252,.66))!important;border-color:rgba(63,89,95,.065)!important;
  min-height:118px!important;padding:20px 22px!important;
}
html body.p20-product-shell #patrolPage .p4-viz-kpis strong,
html body.p20-product-shell #patrolPage .p7-domain-kpis strong,
html body.p20-product-shell #patrolPage .p7-responsibility-kpis strong,
html body.p20-product-shell #patrolPage .patrol-compare-kpis strong{
  font-size:clamp(36px,3vw,48px)!important;line-height:1!important;font-weight:760!important;letter-spacing:-.045em!important;color:#17373b!important;
}

/* Tables — borrow Melly track-list calmness. */
html body.p20-product-shell #patrolPage .p7-table-wrap,
html body.p20-product-shell #patrolPage .p7-object-table,
html body.p20-product-shell #patrolPage .simple-table-wrap{
  border-radius:22px!important;border:1px solid rgba(255,255,255,.88)!important;background:rgba(255,255,255,.58)!important;box-shadow:var(--p20-shadow-soft)!important;overflow:auto!important;
}
html body.p20-product-shell #patrolPage table{border-collapse:separate!important;border-spacing:0!important;background:transparent!important}
html body.p20-product-shell #patrolPage th{
  height:52px!important;background:rgba(241,247,247,.82)!important;color:#466168!important;font-size:12.75px!important;font-weight:750!important;border-bottom:1px solid rgba(60,86,92,.08)!important;
}
html body.p20-product-shell #patrolPage td{font-size:13.5px!important;line-height:1.52!important;color:#29464c!important;border-bottom:1px solid rgba(61,87,93,.065)!important;padding-top:12px!important;padding-bottom:12px!important}
html body.p20-product-shell #patrolPage tbody tr{transition:background .17s ease,transform .17s var(--p20-ease)!important}
html body.p20-product-shell #patrolPage tbody tr:hover{background:rgba(255,255,255,.75)!important}
html body.p20-product-shell #patrolPage td small{font-size:12.5px!important;color:#61767b!important}

/* Chips, states and segmented controls */
html body.p20-product-shell #patrolPage .p7-status-badge,
html body.p20-product-shell #patrolPage .p11-gap-badge,
html body.p20-product-shell #patrolPage .p17-missing-inline,
html body.p20-product-shell #patrolPage .p15-mini-availability{
  min-height:26px!important;padding:4px 9px!important;border-radius:999px!important;font-size:12px!important;font-weight:720!important;border:1px solid rgba(67,94,98,.08)!important;
}
html body.p20-product-shell #patrolPage .p7-map-tabs,
html body.p20-product-shell #patrolPage .p14-resp-switch{
  padding:4px!important;border-radius:15px!important;background:rgba(85,108,115,.065)!important;border:0!important;
}
html body.p20-product-shell #patrolPage .p7-map-tabs button.active,
html body.p20-product-shell #patrolPage .p14-resp-switch button.active{
  background:#fff!important;color:#345f58!important;box-shadow:0 7px 18px rgba(57,80,88,.075)!important;
}

/* Overview: make management conclusion read like a calm hero summary. */
html body.p20-product-shell #patrolLeadershipSummary{
  border-radius:26px!important;border:1px solid rgba(255,255,255,.90)!important;
  background:
    radial-gradient(circle at 90% 10%,rgba(134,176,205,.14),transparent 34%),
    linear-gradient(135deg,rgba(245,251,249,.88),rgba(247,248,252,.84))!important;
  box-shadow:var(--p20-shadow-soft)!important;
}
html body.p20-product-shell #patrolLeadershipSummary .p15-management-brief{padding:22px 26px!important}
html body.p20-product-shell #patrolLeadershipSummary .p15-management-brief>strong{font-size:22px!important;line-height:1.4!important;letter-spacing:-.025em!important}

/* Empty/store state — purposeful, never unfinished. */
html body.p20-product-shell #p7StoreWorkspace .p11-empty-main,
html body.p20-product-shell #p7StoreWorkspace .p11-empty-side{
  border-radius:24px!important;background:rgba(255,255,255,.66)!important;border:1px solid rgba(255,255,255,.88)!important;box-shadow:var(--p20-shadow-soft)!important;
}
html body.p20-product-shell #p7StoreWorkspace .p11-empty-main{padding:38px!important}
html body.p20-product-shell #p7StoreWorkspace .p11-empty-main h3{font-size:28px!important;letter-spacing:-.035em!important;font-weight:770!important}

/* Output center — card identities without a button warehouse feel. */
html body.p20-product-shell #patrolOutputZone .patrol-copy-card,
html body.p20-product-shell #patrolOutputZone .p15-output-card,
html body.p20-product-shell #patrolOutputZone .patrol-card-export-panel{
  border-radius:22px!important;background:rgba(255,255,255,.70)!important;border:1px solid rgba(255,255,255,.90)!important;box-shadow:0 8px 24px rgba(50,76,82,.06)!important;
  transition:transform .2s var(--p20-ease),box-shadow .2s ease!important;
}
html body.p20-product-shell #patrolOutputZone .patrol-copy-card:hover,
html body.p20-product-shell #patrolOutputZone .p15-output-card:hover{transform:translateY(-2px)!important;box-shadow:var(--p20-shadow-hover)!important}

/* History baseline — atmospheric but restrained. */
html body.p20-product-shell #patrolCompareZone .p11-history-baseline{
  border-radius:28px!important;background:
    radial-gradient(circle at 88% 10%,rgba(119,151,194,.14),transparent 34%),
    linear-gradient(145deg,rgba(244,250,248,.90),rgba(247,247,251,.84))!important;
  border:1px solid rgba(255,255,255,.90)!important;box-shadow:var(--p20-shadow-soft)!important;
}

/* Input workbench — software setup card, not a form box. */
html body.p20-product-shell #patrolInputZone .p7-input-workspace{padding:26px!important}
html body.p20-product-shell #patrolInputZone textarea,
html body.p20-product-shell #patrolInputZone input{
  border-radius:16px!important;border-color:rgba(66,92,98,.10)!important;background:rgba(248,251,252,.88)!important;color:var(--p20-text)!important;
}
html body.p20-product-shell #patrolInputZone textarea:focus,
html body.p20-product-shell #patrolInputZone input:focus{background:#fff!important;border-color:rgba(77,137,127,.24)!important;box-shadow:0 8px 26px rgba(54,84,91,.07)!important}

/* GIS — a calm pro workspace, like Melly's main stage + persistent control layer. */
html body.p20-product-shell #patrolAnalysisZone .patrol-project-intelligence-map{
  border-radius:28px!important;border:1px solid rgba(255,255,255,.92)!important;background:rgba(255,255,255,.66)!important;box-shadow:var(--p20-shadow)!important;overflow:hidden!important;
}
html body.p20-product-shell #patrolAnalysisZone .patrol-map-intelligence-head{
  padding:22px 24px!important;background:linear-gradient(180deg,rgba(249,251,253,.88),rgba(255,255,255,.42))!important;border-bottom:1px solid rgba(61,87,93,.07)!important;
}
html body.p20-product-shell #patrolAnalysisZone .patrol-map-intelligence-title strong{font-size:24px!important;letter-spacing:-.032em!important;color:#19373d!important}
html body.p20-product-shell #patrolAnalysisZone .patrol-map-canvas-shell{
  border-radius:22px!important;background:#fff!important;border:1px solid rgba(67,92,98,.08)!important;box-shadow:0 10px 30px rgba(51,78,84,.07)!important;
}
html body.p20-product-shell #patrolAnalysisZone .patrol-map-intelligence-panel{
  border-radius:22px!important;background:rgba(249,252,252,.78)!important;border:1px solid rgba(255,255,255,.92)!important;box-shadow:0 9px 28px rgba(48,75,82,.065)!important;
}
html body.p20-product-shell #patrolAnalysisZone .patrol-map-priority-row{
  min-height:72px!important;border-radius:17px!important;margin-bottom:8px!important;background:rgba(255,255,255,.70)!important;border:1px solid rgba(67,93,98,.08)!important;box-shadow:0 5px 16px rgba(50,76,82,.045)!important;
  transition:transform .18s var(--p20-ease),background .18s ease,box-shadow .18s ease!important;
}
html body.p20-product-shell #patrolAnalysisZone .patrol-map-priority-row:hover{transform:translateY(-1px)!important;background:#fff!important;box-shadow:0 10px 25px rgba(50,76,82,.075)!important}
html body.p20-product-shell #patrolAnalysisZone .patrol-map-priority-row:active{transform:scale(.985)!important}
html body.p20-product-shell #patrolAnalysisZone .patrol-map-priority-no{
  min-width:40px!important;height:40px!important;border-radius:13px!important;display:grid!important;place-items:center!important;font-size:15px!important;font-weight:780!important;
}
html body.p20-product-shell #patrolAnalysisZone .patrol-map-priority-main b{font-size:15.5px!important;letter-spacing:-.015em!important}
html body.p20-product-shell #patrolAnalysisZone .patrol-map-priority-main small{font-size:12.75px!important;line-height:1.45!important}
html body.p20-product-shell #patrolAnalysisZone .p18-map-selection-dock{
  border-radius:20px!important;background:linear-gradient(145deg,rgba(242,250,247,.92),rgba(247,248,252,.86))!important;border:1px solid rgba(77,137,127,.13)!important;box-shadow:0 8px 24px rgba(50,82,82,.055)!important;
}
html body.p20-product-shell #patrolAnalysisZone .p15-map-card-head strong{font-size:18px!important;letter-spacing:-.025em!important}
html body.p20-product-shell #patrolAnalysisZone .p19-priority-more{min-height:46px!important;border-radius:14px!important;background:var(--p20-accent-soft)!important;color:#3d7168!important;font-weight:740!important}

/* P20 priority sheet takes Melly bottom-sheet/modal language. */
html body.p20-product-shell .p19-priority-sheet{background:rgba(27,43,50,.18)!important;backdrop-filter:blur(9px)!important;-webkit-backdrop-filter:blur(9px)!important}
html body.p20-product-shell .p19-priority-sheet-card{
  border-radius:30px!important;background:rgba(252,254,255,.94)!important;border:1px solid rgba(255,255,255,.96)!important;box-shadow:0 28px 80px rgba(34,56,64,.18)!important;
  backdrop-filter:blur(28px) saturate(145%)!important;-webkit-backdrop-filter:blur(28px) saturate(145%)!important;
}

/* Quiet scrollbars, as in Melly. */
html body.p20-product-shell #patrolPage *{scrollbar-width:thin;scrollbar-color:rgba(93,116,123,.18) transparent}
html body.p20-product-shell #patrolPage *::-webkit-scrollbar{width:8px;height:8px}
html body.p20-product-shell #patrolPage *::-webkit-scrollbar-thumb{background:rgba(93,116,123,.16);border-radius:999px}

/* Responsive yielding: preserve big type and controls; hide low-priority chrome first. */
@media(max-width:1024px){
 html body.p20-product-shell .p7-sidebar{background:rgba(255,255,255,.78)!important;border-color:rgba(255,255,255,.9)!important;backdrop-filter:blur(24px) saturate(145%)!important}
 html body.p20-product-shell .p7-topbar{background:rgba(255,255,255,.86)!important;border-color:rgba(255,255,255,.92)!important;backdrop-filter:blur(24px) saturate(145%)!important}
 html body.p20-product-shell #patrolPage .p7-module-head{padding:26px 26px!important;border-radius:25px!important}
 html body.p20-product-shell #patrolPage .p7-module-head h2{font-size:clamp(31px,4.4vw,39px)!important}
}
@media(max-width:720px){
 html body.p20-product-shell #patrolPage .p7-module-head{padding:22px 20px!important;margin-bottom:16px!important;border-radius:22px!important}
 html body.p20-product-shell #patrolPage .p7-module-head h2{font-size:30px!important}
 html body.p20-product-shell #patrolPage .p7-module-head p{font-size:14.5px!important}
 html body.p20-product-shell #patrolPage .btn{min-height:44px!important;padding:0 14px!important}
 html body.p20-product-shell #patrolPage .p4-viz-kpis strong,
 html body.p20-product-shell #patrolPage .p7-domain-kpis strong,
 html body.p20-product-shell #patrolPage .p7-responsibility-kpis strong{font-size:34px!important}
}
@media(prefers-reduced-motion:reduce){
 html body.p20-product-shell *,html body.p20-product-shell *::before,html body.p20-product-shell *::after{animation:none!important;transition-duration:.01ms!important;scroll-behavior:auto!important}
}

/* P20 final typography floor — Melly-like calm readability; no timid microtype. */
html body.patrol-mode.patrol-standalone.p20-product-shell #patrolPage small{
  font-size:12.75px!important;line-height:1.5!important;color:#5b7177!important;opacity:1!important;
}
html body.patrol-mode.patrol-standalone.p20-product-shell #patrolPage label,
html body.patrol-mode.patrol-standalone.p20-product-shell #patrolPage th{
  font-size:13px!important;line-height:1.4!important;
}
html body.patrol-mode.patrol-standalone.p20-product-shell #patrolPage .patrol-section-kicker,
html body.patrol-mode.patrol-standalone.p20-product-shell #patrolPage .p4-section-kicker,
html body.patrol-mode.patrol-standalone.p20-product-shell #patrolPage .patrol-eyebrow,
html body.patrol-mode.patrol-standalone.p20-product-shell #patrolPage .p7-input-kicker,
html body.patrol-mode.patrol-standalone.p20-product-shell #patrolPage .p7-status-badge,
html body.patrol-mode.patrol-standalone.p20-product-shell #patrolPage .p11-gap-badge,
html body.patrol-mode.patrol-standalone.p20-product-shell #patrolPage .p17-missing-inline,
html body.patrol-mode.patrol-standalone.p20-product-shell #patrolPage .p15-mini-availability{
  font-size:12.5px!important;line-height:1.35!important;
}
html body.patrol-mode.patrol-standalone.p20-product-shell #patrolPage .p4-chart-panel header span,
html body.patrol-mode.patrol-standalone.p20-product-shell #patrolPage .p4-viz-kpis article>span,
html body.patrol-mode.patrol-standalone.p20-product-shell #patrolPage .p14-resp-switch>span,
html body.patrol-mode.patrol-standalone.p20-product-shell #patrolPage .p15-map-card-head>span{
  font-size:12.5px!important;line-height:1.4!important;color:#566f74!important;
}

/* P20 microtype firewall — old dense-report rules may not shrink the new product language. */
html body.patrol-mode.patrol-standalone.p7-product-shell.p8-product-shell.p9-product-shell.p10-product-shell.p11-product-shell.p12-product-shell.p13-product-shell.p14-product-shell.p15-product-shell.p16-product-shell.p17-product-shell.p18-product-shell.p19-product-shell.p20-product-shell #patrolPage td{
  font-size:13.25px!important;line-height:1.5!important;color:#29464c!important;
}
html body.patrol-mode.patrol-standalone.p7-product-shell.p8-product-shell.p9-product-shell.p10-product-shell.p11-product-shell.p12-product-shell.p13-product-shell.p14-product-shell.p15-product-shell.p16-product-shell.p17-product-shell.p18-product-shell.p19-product-shell.p20-product-shell #patrolPage small,
html body.patrol-mode.patrol-standalone.p7-product-shell.p8-product-shell.p9-product-shell.p10-product-shell.p11-product-shell.p12-product-shell.p13-product-shell.p14-product-shell.p15-product-shell.p16-product-shell.p17-product-shell.p18-product-shell.p19-product-shell.p20-product-shell #patrolPage .patrol-import-status,
html body.patrol-mode.patrol-standalone.p7-product-shell.p8-product-shell.p9-product-shell.p10-product-shell.p11-product-shell.p12-product-shell.p13-product-shell.p14-product-shell.p15-product-shell.p16-product-shell.p17-product-shell.p18-product-shell.p19-product-shell.p20-product-shell #patrolPage .patrol-schema-badge,
html body.patrol-mode.patrol-standalone.p7-product-shell.p8-product-shell.p9-product-shell.p10-product-shell.p11-product-shell.p12-product-shell.p13-product-shell.p14-product-shell.p15-product-shell.p16-product-shell.p17-product-shell.p18-product-shell.p19-product-shell.p20-product-shell #patrolPage .patrol-macro-narrative,
html body.patrol-mode.patrol-standalone.p7-product-shell.p8-product-shell.p9-product-shell.p10-product-shell.p11-product-shell.p12-product-shell.p13-product-shell.p14-product-shell.p15-product-shell.p16-product-shell.p17-product-shell.p18-product-shell.p19-product-shell.p20-product-shell #patrolPage .p17-grid-note{
  font-size:12.75px!important;line-height:1.5!important;color:#5b7177!important;opacity:1!important;
}
html body.patrol-mode.patrol-standalone.p7-product-shell.p8-product-shell.p9-product-shell.p10-product-shell.p11-product-shell.p12-product-shell.p13-product-shell.p14-product-shell.p15-product-shell.p16-product-shell.p17-product-shell.p18-product-shell.p19-product-shell.p20-product-shell #patrolPage .patrol-section-kicker,
html body.patrol-mode.patrol-standalone.p7-product-shell.p8-product-shell.p9-product-shell.p10-product-shell.p11-product-shell.p12-product-shell.p13-product-shell.p14-product-shell.p15-product-shell.p16-product-shell.p17-product-shell.p18-product-shell.p19-product-shell.p20-product-shell #patrolPage .p4-section-kicker,
html body.patrol-mode.patrol-standalone.p7-product-shell.p8-product-shell.p9-product-shell.p10-product-shell.p11-product-shell.p12-product-shell.p13-product-shell.p14-product-shell.p15-product-shell.p16-product-shell.p17-product-shell.p18-product-shell.p19-product-shell.p20-product-shell #patrolPage .patrol-eyebrow,
html body.patrol-mode.patrol-standalone.p7-product-shell.p8-product-shell.p9-product-shell.p10-product-shell.p11-product-shell.p12-product-shell.p13-product-shell.p14-product-shell.p15-product-shell.p16-product-shell.p17-product-shell.p18-product-shell.p19-product-shell.p20-product-shell #patrolPage .p7-input-kicker,
html body.patrol-mode.patrol-standalone.p7-product-shell.p8-product-shell.p9-product-shell.p10-product-shell.p11-product-shell.p12-product-shell.p13-product-shell.p14-product-shell.p15-product-shell.p16-product-shell.p17-product-shell.p18-product-shell.p19-product-shell.p20-product-shell #patrolPage .patrol-domain-chip,
html body.patrol-mode.patrol-standalone.p7-product-shell.p8-product-shell.p9-product-shell.p10-product-shell.p11-product-shell.p12-product-shell.p13-product-shell.p14-product-shell.p15-product-shell.p16-product-shell.p17-product-shell.p18-product-shell.p19-product-shell.p20-product-shell #patrolPage .p7-status-badge,
html body.patrol-mode.patrol-standalone.p7-product-shell.p8-product-shell.p9-product-shell.p10-product-shell.p11-product-shell.p12-product-shell.p13-product-shell.p14-product-shell.p15-product-shell.p16-product-shell.p17-product-shell.p18-product-shell.p19-product-shell.p20-product-shell #patrolPage .p11-gap-badge{
  font-size:12.5px!important;line-height:1.35!important;
}
html body.p20-product-shell #patrolPage select,
html body.p20-product-shell #patrolPage option,
html body.p20-product-shell #patrolPage .p7-detail-btn{font-size:13px!important}
html body.p20-product-shell #patrolPage .hf31-action-step span,
html body.p20-product-shell #patrolPage .hf31-action-step em,
html body.p20-product-shell #patrolPage .p7-bar-row strong{font-size:12.5px!important;line-height:1.35!important}


/* ==========================================================================
   P21 — Melly Music palette + mature governance analytics
   Directly learns the user's preferred Melly Music color atmosphere:
   cool white, mist blue, soft violet, glass control chrome, calm shadows.
   Governance functionality / statistics / real map / export behavior unchanged.
   ========================================================================== */
html.p21-melly-spectrum{
  --p21-bg:#f3f6fb;
  --p21-bg-strong:#eaf0f8;
  --p21-surface:rgba(255,255,255,.80);
  --p21-surface-solid:#ffffff;
  --p21-surface-soft:rgba(255,255,255,.60);
  --p21-surface-blue:rgba(246,249,255,.78);
  --p21-text:#172033;
  --p21-text-2:#293653;
  --p21-muted:#6f7c96;
  --p21-subtle:#929eb4;
  --p21-line:rgba(62,79,112,.105);
  --p21-line-bright:rgba(255,255,255,.90);
  --p21-accent:#6f95ef;
  --p21-accent-deep:#5578c5;
  --p21-accent-2:#b692ee;
  --p21-accent-soft:rgba(111,149,239,.13);
  --p21-violet-soft:rgba(182,146,238,.115);
  --p21-violet-soft-2:rgba(182,146,238,.075);
  --p21-danger:#d96b79;
  --p21-danger-soft:#fff0f3;
  --p21-warn:#c58945;
  --p21-warn-soft:#fff6e8;
  --p21-success:#438d73;
  --p21-success-soft:#eef8f4;
  --p21-shadow:0 22px 60px rgba(69,88,126,.14),0 3px 14px rgba(69,88,126,.075);
  --p21-shadow-soft:0 10px 28px rgba(76,94,130,.095);
  --p21-shadow-hover:0 18px 42px rgba(76,94,130,.14);
  --p21-ease:cubic-bezier(.22,.8,.25,1);
  font-family:-apple-system,BlinkMacSystemFont,"SF Pro Display","SF Pro Text","PingFang SC","Microsoft YaHei",system-ui,sans-serif;
  color-scheme:light;
  scroll-behavior:auto!important;
}
html body.p21-product-shell{
  color:var(--p21-text)!important;
  background:
    radial-gradient(circle at 12% 4%,rgba(177,205,255,.52),transparent 30rem),
    radial-gradient(circle at 90% 12%,rgba(224,198,255,.42),transparent 30rem),
    radial-gradient(circle at 72% 90%,rgba(201,213,250,.22),transparent 34rem),
    linear-gradient(145deg,#f8faff 0%,#f0f5fb 52%,#f7f4fb 100%)!important;
  background-attachment:fixed!important;
  letter-spacing:-.009em!important;
  -webkit-font-smoothing:antialiased!important;
  text-rendering:optimizeLegibility!important;
}
html body.p21-product-shell::before{
  content:"";position:fixed;inset:0;pointer-events:none;z-index:-1;
  background:linear-gradient(118deg,rgba(255,255,255,.44),transparent 35%,rgba(255,255,255,.17));
}

/* Persistent chrome — use Melly's cool glass rather than green governance tint. */
@media(min-width:1025px){
 html body.p21-product-shell .p7-sidebar{
   background:rgba(255,255,255,.72)!important;border-color:rgba(255,255,255,.90)!important;
   box-shadow:var(--p21-shadow)!important;backdrop-filter:blur(28px) saturate(150%)!important;-webkit-backdrop-filter:blur(28px) saturate(150%)!important;
 }
 html body.p21-product-shell .p7-topbar{
   background:rgba(250,252,255,.88)!important;border-color:rgba(255,255,255,.94)!important;
   box-shadow:0 12px 36px rgba(69,88,126,.08),inset 0 1px 0 rgba(255,255,255,.98)!important;
   backdrop-filter:blur(28px) saturate(152%)!important;-webkit-backdrop-filter:blur(28px) saturate(152%)!important;
 }
}
html body.p21-product-shell .p7-side-brand{border-bottom-color:rgba(62,79,112,.08)!important}
html body.p21-product-shell .p7-side-brand strong,
html body.p21-product-shell .p7-topbar-title-row h1{color:var(--p21-text)!important}
html body.p21-product-shell .p7-side-brand small,
html body.p21-product-shell .p7-topbar-product,
html body.p21-product-shell .p7-topbar-title-row span{color:var(--p21-muted)!important}
html body.p21-product-shell .p7-side-logo img{box-shadow:0 10px 25px rgba(91,112,176,.17)!important}
html body.p21-product-shell .p7-side-nav button,
html body.p21-product-shell .p7-side-input{color:#66738e!important}
html body.p21-product-shell .p7-side-nav button:hover,
html body.p21-product-shell .p7-side-input:hover{background:rgba(255,255,255,.66)!important;color:var(--p21-text)!important}
html body.p21-product-shell .p7-side-nav button.active,
html body.p21-product-shell .p7-side-input.active{
  color:#5578c5!important;background:linear-gradient(135deg,rgba(116,158,244,.17),rgba(176,142,234,.13))!important;
  box-shadow:0 7px 20px rgba(84,104,158,.07),inset 0 1px 0 rgba(255,255,255,.80)!important;
}
html body.p21-product-shell .p7-period-chip{
  background:rgba(247,249,254,.92)!important;border-color:rgba(76,96,140,.10)!important;color:#465575!important;
}

/* Controls — Melly blue/violet gradient, never the former pale-green primary. */
html body.p21-product-shell #patrolPage .btn,
html body.p21-product-shell .p7-topbar .btn{
  color:#4a5875!important;background:rgba(248,250,255,.92)!important;border-color:rgba(76,96,140,.11)!important;
  box-shadow:0 6px 18px rgba(76,94,130,.065),inset 0 1px 0 rgba(255,255,255,.96)!important;
}
html body.p21-product-shell #patrolPage .btn:hover:not(:disabled),
html body.p21-product-shell .p7-topbar .btn:hover:not(:disabled){
  background:#fff!important;border-color:rgba(111,149,239,.26)!important;box-shadow:0 12px 28px rgba(76,94,130,.11)!important;
}
html body.p21-product-shell #patrolPage .btn.primary,
html body.p21-product-shell .p7-topbar .btn.primary{
  color:#fff!important;border:0!important;background:linear-gradient(135deg,#6f9cf4 0%,#7f91ef 47%,#aa8be9 100%)!important;
  box-shadow:0 13px 29px rgba(96,124,208,.25),inset 0 1px 0 rgba(255,255,255,.25)!important;
}
html body.p21-product-shell #patrolPage .btn.primary:hover:not(:disabled){box-shadow:0 17px 36px rgba(96,124,208,.29)!important}
html body.p21-product-shell button:focus-visible,
html body.p21-product-shell input:focus-visible,
html body.p21-product-shell select:focus-visible,
html body.p21-product-shell textarea:focus-visible{outline:3px solid rgba(111,149,239,.27)!important;outline-offset:2px!important}

/* Page hero — stronger Melly atmosphere, cool-blue/violet rather than green. */
html body.p21-product-shell #patrolPage .p7-module-head{
  position:relative!important;isolation:isolate!important;overflow:hidden!important;
  background:linear-gradient(135deg,rgba(255,255,255,.89),rgba(247,249,255,.80) 54%,rgba(250,246,255,.78))!important;
  border-color:rgba(255,255,255,.94)!important;box-shadow:var(--p21-shadow-soft)!important;
}
html body.p21-product-shell #patrolPage .p7-module-head::before{
  display:block!important;content:""!important;position:absolute!important;width:340px!important;height:340px!important;right:-105px!important;top:-170px!important;border-radius:50%!important;
  background:radial-gradient(circle,rgba(125,170,255,.31),transparent 68%)!important;pointer-events:none!important;z-index:-1!important;
}
html body.p21-product-shell #patrolPage .p7-module-head::after{
  display:block!important;content:""!important;position:absolute!important;width:280px!important;height:280px!important;left:52%!important;bottom:-215px!important;border-radius:50%!important;
  background:radial-gradient(circle,rgba(195,150,239,.23),transparent 68%)!important;pointer-events:none!important;z-index:-1!important;
}
html body.p21-product-shell #patrolPage .p7-module-head h2{color:var(--p21-text)!important;text-shadow:0 1px 0 rgba(255,255,255,.65)!important}
html body.p21-product-shell #patrolPage .p7-module-head p{color:#5f6d88!important}
html body.p21-product-shell #patrolPage .patrol-section-kicker,
html body.p21-product-shell #patrolPage .p4-section-kicker,
html body.p21-product-shell #patrolPage .patrol-eyebrow,
html body.p21-product-shell #patrolPage .p7-input-kicker{
  background:var(--p21-accent-soft)!important;color:#5578c5!important;border:1px solid rgba(111,149,239,.08)!important;
}

/* Glass/data surfaces — cool neutral, more depth, no pale-green wash. */
html body.p21-product-shell .p15-completeness-bar,
html body.p21-product-shell #patrolPage .patrol-panel,
html body.p21-product-shell #patrolPage .p7-workspace-card,
html body.p21-product-shell #patrolPage .p7-object-table-panel,
html body.p21-product-shell #patrolPage .p15-output-group,
html body.p21-product-shell #patrolPage .p7-domain-workspace,
html body.p21-product-shell #patrolPage .p7-input-workspace{
  background:rgba(255,255,255,.77)!important;border-color:rgba(255,255,255,.93)!important;box-shadow:var(--p21-shadow-soft)!important;
  backdrop-filter:blur(18px) saturate(132%)!important;-webkit-backdrop-filter:blur(18px) saturate(132%)!important;
}
html body.p21-product-shell #patrolPage .patrol-panel-head{
  background:linear-gradient(180deg,rgba(248,250,255,.89),rgba(255,255,255,.35))!important;border-bottom-color:rgba(62,79,112,.07)!important;
}
html body.p21-product-shell #patrolPage .patrol-panel-head h3,
html body.p21-product-shell #patrolPage .p15-output-group>header>span{color:#222f4b!important}
html body.p21-product-shell #patrolPage .patrol-panel-head small,
html body.p21-product-shell #patrolPage .p15-output-group>header>small{color:#748099!important}

/* KPI surfaces — Melly stat cards, one blue/violet family + semantic accents only. */
html body.p21-product-shell #patrolPage .p4-viz-kpis,
html body.p21-product-shell #patrolPage .p7-domain-kpis,
html body.p21-product-shell #patrolPage .p7-responsibility-kpis,
html body.p21-product-shell #patrolPage .patrol-compare-kpis{
  background:rgba(255,255,255,.64)!important;border-color:rgba(255,255,255,.93)!important;box-shadow:var(--p21-shadow-soft)!important;
}
html body.p21-product-shell #patrolPage .p4-viz-kpis article,
html body.p21-product-shell #patrolPage .p7-domain-kpis article,
html body.p21-product-shell #patrolPage .p7-responsibility-kpis article,
html body.p21-product-shell #patrolPage .patrol-compare-kpis article{
  background:linear-gradient(145deg,rgba(255,255,255,.90),rgba(247,249,255,.74))!important;border-color:rgba(62,79,112,.06)!important;
}
html body.p21-product-shell #patrolPage .p4-viz-kpis article:first-child,
html body.p21-product-shell #patrolPage .p7-domain-kpis article:first-child,
html body.p21-product-shell #patrolPage .p7-responsibility-kpis article:first-child{
  background:linear-gradient(145deg,rgba(244,248,255,.96),rgba(251,248,255,.86))!important;
}
html body.p21-product-shell #patrolPage .p4-viz-kpis strong,
html body.p21-product-shell #patrolPage .p7-domain-kpis strong,
html body.p21-product-shell #patrolPage .p7-responsibility-kpis strong,
html body.p21-product-shell #patrolPage .patrol-compare-kpis strong{color:#1d2944!important}
html body.p21-product-shell #patrolPage .p4-viz-kpis article>span,
html body.p21-product-shell #patrolPage .p7-domain-kpis article>span,
html body.p21-product-shell #patrolPage .p7-responsibility-kpis article>span{color:#6f7c96!important}

/* Tables = Melly track-list: cool header, soft row hover, selected gradient. */
html body.p21-product-shell #patrolPage .p7-table-wrap,
html body.p21-product-shell #patrolPage .p7-object-table,
html body.p21-product-shell #patrolPage .simple-table-wrap{
  background:rgba(255,255,255,.67)!important;border-color:rgba(255,255,255,.93)!important;box-shadow:var(--p21-shadow-soft)!important;
}
html body.p21-product-shell #patrolPage th{
  background:rgba(241,245,252,.90)!important;color:#566581!important;border-bottom-color:rgba(62,79,112,.085)!important;
}
html body.p21-product-shell #patrolPage td{color:#2f3c58!important;border-bottom-color:rgba(62,79,112,.07)!important}
html body.p21-product-shell #patrolPage td small{color:#78849c!important}
html body.p21-product-shell #patrolPage tbody tr:hover{background:rgba(247,249,255,.86)!important}
html body.p21-product-shell #patrolPage tbody tr.selected,
html body.p21-product-shell #patrolPage tbody tr[aria-selected="true"]{
  background:linear-gradient(90deg,rgba(111,149,239,.12),rgba(182,146,238,.075))!important;
}
html body.p21-product-shell #patrolPage input,
html body.p21-product-shell #patrolPage select,
html body.p21-product-shell #patrolPage textarea{
  background:rgba(249,251,255,.94)!important;color:var(--p21-text)!important;border-color:rgba(72,91,128,.13)!important;
}
html body.p21-product-shell #patrolPage input:focus,
html body.p21-product-shell #patrolPage select:focus,
html body.p21-product-shell #patrolPage textarea:focus{background:#fff!important;border-color:rgba(111,149,239,.42)!important;box-shadow:0 8px 24px rgba(73,98,151,.07)!important}

/* Chips / segmented controls — accent is blue/violet; semantic red/amber/green remain local only. */
html body.p21-product-shell #patrolPage .p7-map-tabs,
html body.p21-product-shell #patrolPage .p14-resp-switch{
  background:rgba(108,125,158,.08)!important;
}
html body.p21-product-shell #patrolPage .p7-map-tabs button.active,
html body.p21-product-shell #patrolPage .p14-resp-switch button.active{
  color:#5578c5!important;background:#fff!important;box-shadow:0 7px 18px rgba(76,94,130,.09)!important;
}
html body.p21-product-shell #patrolPage .p7-status-badge:not(.bad):not(.warn),
html body.p21-product-shell #patrolPage .p15-mini-availability{
  background:rgba(111,149,239,.09)!important;color:#5a77b9!important;border-color:rgba(111,149,239,.12)!important;
}

/* Overview / management conclusion — blue-violet atmospheric summary instead of mint panel. */
html body.p21-product-shell #patrolLeadershipSummary{
  background:
    radial-gradient(circle at 90% 8%,rgba(126,169,249,.20),transparent 36%),
    radial-gradient(circle at 74% 120%,rgba(190,151,239,.14),transparent 34%),
    linear-gradient(135deg,rgba(248,251,255,.92),rgba(250,247,255,.88))!important;
  border-color:rgba(255,255,255,.94)!important;box-shadow:var(--p21-shadow-soft)!important;
}
html body.p21-product-shell #patrolLeadershipSummary .p15-management-brief>strong{color:#253451!important}

/* Store empty state — prepared module, not green placeholder. */
html body.p21-product-shell #p7StoreWorkspace .p11-empty-main,
html body.p21-product-shell #p7StoreWorkspace .p11-empty-side{
  background:linear-gradient(145deg,rgba(255,255,255,.81),rgba(247,249,255,.69))!important;border-color:rgba(255,255,255,.94)!important;
}
html body.p21-product-shell #p7StoreWorkspace .p11-empty-main .p11-empty-icon,
html body.p21-product-shell #p7StoreWorkspace .patrol-store-empty-icon{
  color:#607fca!important;background:linear-gradient(135deg,rgba(111,149,239,.16),rgba(182,146,238,.12))!important;
}
html body.p21-product-shell #p7StoreWorkspace .p11-empty-side{background:linear-gradient(145deg,rgba(248,251,255,.88),rgba(250,247,255,.78))!important}

/* Responsibility — neutral-blue control panel; warning remains semantic only at the gap chip. */
html body.p21-product-shell #patrolResponsibilityZone .patrol-quality-list,
html body.p21-product-shell #patrolResponsibilityZone .p14-resp-panel,
html body.p21-product-shell #patrolResponsibilityZone .p14-responsibility-board{
  background:rgba(255,255,255,.72)!important;border-color:rgba(255,255,255,.93)!important;box-shadow:var(--p21-shadow-soft)!important;
}
html body.p21-product-shell #patrolResponsibilityZone .p14-resp-switch button.active{color:#5578c5!important}

/* Output center — content-library feel: cool glass cards, blue/violet actions. */
html body.p21-product-shell #patrolOutputZone .patrol-copy-card,
html body.p21-product-shell #patrolOutputZone .p15-output-card,
html body.p21-product-shell #patrolOutputZone .patrol-card-export-panel{
  background:linear-gradient(145deg,rgba(255,255,255,.80),rgba(247,249,255,.68))!important;border-color:rgba(255,255,255,.94)!important;box-shadow:var(--p21-shadow-soft)!important;
}
html body.p21-product-shell #patrolOutputZone .patrol-copy-card::after,
html body.p21-product-shell #patrolOutputZone .p15-output-card::after{
  background:radial-gradient(circle,rgba(111,149,239,.16),transparent 70%)!important;
}
html body.p21-product-shell #patrolOutputZone .patrol-copy-card:hover,
html body.p21-product-shell #patrolOutputZone .p15-output-card:hover{box-shadow:var(--p21-shadow-hover)!important}

/* History baseline — exactly the calm blue/violet Melly atmosphere. */
html body.p21-product-shell #patrolCompareZone .p11-history-baseline{
  background:
    radial-gradient(circle at 88% 8%,rgba(130,172,250,.20),transparent 34%),
    radial-gradient(circle at 60% 120%,rgba(191,153,239,.16),transparent 34%),
    linear-gradient(145deg,rgba(248,251,255,.93),rgba(250,247,255,.88))!important;
  border-color:rgba(255,255,255,.94)!important;box-shadow:var(--p21-shadow-soft)!important;
}
html body.p21-product-shell #patrolCompareZone .p11-history-baseline h3{color:#253451!important}

/* Input workbench — setup-console feel from Melly's first-run cards. */
html body.p21-product-shell #patrolInputZone .p7-input-workspace,
html body.p21-product-shell #patrolInputZone .p15-input-status,
html body.p21-product-shell #patrolInputZone .p15-input-format{
  background:linear-gradient(145deg,rgba(255,255,255,.82),rgba(247,249,255,.70))!important;border-color:rgba(255,255,255,.93)!important;
}
html body.p21-product-shell #patrolInputZone .p15-input-status{box-shadow:inset 3px 0 0 rgba(111,149,239,.65)!important}

/* GIS — retain real map; completely remove pale-green chrome around it. */
html body.p21-product-shell #patrolAnalysisZone .patrol-project-intelligence-map,
html body.p21-product-shell #patrolAnalysisZone .patrol-map-intelligence-layout,
html body.p21-product-shell #patrolAnalysisZone .patrol-map-visual-column,
html body.p21-product-shell #patrolAnalysisZone .patrol-map-intelligence-panel{
  border-color:rgba(255,255,255,.94)!important;box-shadow:var(--p21-shadow-soft)!important;
}
html body.p21-product-shell #patrolAnalysisZone .patrol-project-intelligence-map{
  background:linear-gradient(145deg,rgba(255,255,255,.82),rgba(247,249,255,.70))!important;
}
html body.p21-product-shell #patrolAnalysisZone .patrol-map-intelligence-title strong{color:#202d49!important}
html body.p21-product-shell #patrolAnalysisZone .patrol-map-intelligence-panel{
  background:linear-gradient(180deg,rgba(249,251,255,.92),rgba(248,247,253,.86))!important;
}
html body.p21-product-shell #patrolAnalysisZone .patrol-map-priority-row{
  background:rgba(255,255,255,.74)!important;border-color:rgba(72,91,128,.085)!important;box-shadow:0 5px 16px rgba(76,94,130,.045)!important;
}
html body.p21-product-shell #patrolAnalysisZone .patrol-map-priority-row:hover{background:#fff!important;box-shadow:0 11px 27px rgba(76,94,130,.11)!important}
html body.p21-product-shell #patrolAnalysisZone .patrol-map-priority-row.current,
html body.p21-product-shell #patrolAnalysisZone .patrol-map-priority-row[aria-current="true"]{
  background:linear-gradient(135deg,rgba(111,149,239,.13),rgba(182,146,238,.095))!important;border-color:rgba(111,149,239,.20)!important;
}
html body.p21-product-shell #patrolAnalysisZone .patrol-map-priority-no{
  color:#5578c5!important;background:linear-gradient(135deg,rgba(111,149,239,.15),rgba(182,146,238,.12))!important;
}
html body.p21-product-shell #patrolAnalysisZone .p18-map-selection-dock{
  background:linear-gradient(145deg,rgba(245,249,255,.96),rgba(250,247,255,.90))!important;border-color:rgba(111,149,239,.14)!important;box-shadow:0 9px 25px rgba(76,94,130,.075)!important;
}
html body.p21-product-shell #patrolAnalysisZone .p19-priority-more{
  background:linear-gradient(135deg,rgba(111,149,239,.14),rgba(182,146,238,.10))!important;color:#5578c5!important;border-color:rgba(111,149,239,.12)!important;
}
html body.p21-product-shell .p19-priority-sheet{background:rgba(31,38,54,.18)!important;backdrop-filter:blur(9px)!important;-webkit-backdrop-filter:blur(9px)!important}
html body.p21-product-shell .p19-priority-sheet-card{
  background:rgba(250,252,255,.95)!important;border-color:rgba(255,255,255,.97)!important;box-shadow:0 30px 84px rgba(64,78,116,.19)!important;
}

/* Graph/bar language: neutral track + Melly blue/violet; semantic status colors remain local. */
html body.p21-product-shell #patrolPage .p7-bar-track,
html body.p21-product-shell #patrolPage .p14-mini-track{background:rgba(112,126,153,.12)!important}
html body.p21-product-shell #patrolPage .p7-bar-fill{background:linear-gradient(90deg,#7b9fed,#9b8ee9)!important}
html body.p21-product-shell #patrolPage .p7-bar-row strong{color:#3d4b67!important}

/* Text floor: mature software proportions, still fit dense governance data. */
html body.p21-product-shell #patrolPage{font-size:15px!important;color:var(--p21-text)!important}
html body.p21-product-shell #patrolPage p,
html body.p21-product-shell #patrolPage li{color:#56647f!important}
html body.p21-product-shell #patrolPage small{color:#718099!important}
html body.p21-product-shell #patrolPage td{font-size:13.5px!important;line-height:1.55!important}
html body.p21-product-shell #patrolPage th{font-size:13px!important}
html body.p21-product-shell #patrolPage select,
html body.p21-product-shell #patrolPage option,
html body.p21-product-shell #patrolPage .p7-detail-btn{font-size:13.5px!important}

/* Scrollbars — Melly cool-blue neutral. */
html body.p21-product-shell #patrolPage *{scrollbar-color:rgba(108,125,158,.20) transparent!important}
html body.p21-product-shell #patrolPage *::-webkit-scrollbar-thumb{background:rgba(108,125,158,.18)!important}

/* Responsive: keep generous typography; simplify chrome instead of shrinking. */
@media(max-width:1024px){
 html body.p21-product-shell .p7-sidebar{background:rgba(255,255,255,.80)!important;border-color:rgba(255,255,255,.93)!important}
 html body.p21-product-shell .p7-topbar{background:rgba(250,252,255,.92)!important;border-color:rgba(255,255,255,.96)!important}
}
@media(max-width:720px){
 html body.p21-product-shell #patrolPage .p7-module-head{background:linear-gradient(145deg,rgba(255,255,255,.92),rgba(248,247,255,.84))!important}
 html body.p21-product-shell #patrolPage .p7-module-head h2{font-size:30px!important}
 html body.p21-product-shell #patrolPage p{line-height:1.6!important}
}
@media(prefers-reduced-motion:reduce){
 html body.p21-product-shell *,html body.p21-product-shell *::before,html body.p21-product-shell *::after{animation:none!important;transition-duration:.01ms!important;scroll-behavior:auto!important}
}

/* P21 specificity firewall — override legacy P14/P15 green product chrome without touching semantic statuses. */
body.p14-product-shell.p21-product-shell{
  --p14-canvas:transparent;
  --p14-surface:#ffffff;
  --p14-soft:#f8faff;
  --p14-tint:#eef3ff;
  --p14-ink:#1f2b47;
  --p14-text:#4e5d78;
  --p14-muted:#748099;
  --p14-line:rgba(62,79,112,.11);
  --p14-brand:#6f95ef;
  --p14-brand-dark:#617fd1;
  --p14-brand-soft:#edf2ff;
}
html body.patrol-mode.patrol-standalone.p7-product-shell.p8-product-shell.p9-product-shell.p10-product-shell.p11-product-shell.p12-product-shell.p13-product-shell.p14-product-shell.p15-product-shell.p16-product-shell.p17-product-shell.p18-product-shell.p19-product-shell.p20-product-shell.p21-product-shell #patrolPage.p7-main{
  background:transparent!important;
}
html body.patrol-mode.patrol-standalone.p7-product-shell.p8-product-shell.p9-product-shell.p10-product-shell.p11-product-shell.p12-product-shell.p13-product-shell.p14-product-shell.p15-product-shell.p16-product-shell.p17-product-shell.p18-product-shell.p19-product-shell.p20-product-shell.p21-product-shell .p7-sidebar{
  background:rgba(255,255,255,.74)!important;border:1px solid rgba(255,255,255,.92)!important;box-shadow:var(--p21-shadow)!important;
}
html body.patrol-mode.patrol-standalone.p7-product-shell.p8-product-shell.p9-product-shell.p10-product-shell.p11-product-shell.p12-product-shell.p13-product-shell.p14-product-shell.p15-product-shell.p16-product-shell.p17-product-shell.p18-product-shell.p19-product-shell.p20-product-shell.p21-product-shell .p7-topbar{
  background:rgba(250,252,255,.91)!important;border:1px solid rgba(255,255,255,.96)!important;box-shadow:0 12px 36px rgba(69,88,126,.085),inset 0 1px 0 rgba(255,255,255,.98)!important;
}
html body.patrol-mode.patrol-standalone.p7-product-shell.p8-product-shell.p9-product-shell.p10-product-shell.p11-product-shell.p12-product-shell.p13-product-shell.p14-product-shell.p15-product-shell.p16-product-shell.p17-product-shell.p18-product-shell.p19-product-shell.p20-product-shell.p21-product-shell .p7-side-nav button.active,
html body.patrol-mode.patrol-standalone.p7-product-shell.p8-product-shell.p9-product-shell.p10-product-shell.p11-product-shell.p12-product-shell.p13-product-shell.p14-product-shell.p15-product-shell.p16-product-shell.p17-product-shell.p18-product-shell.p19-product-shell.p20-product-shell.p21-product-shell .p7-side-input.active{
  color:#5578c5!important;background:linear-gradient(135deg,rgba(116,158,244,.18),rgba(176,142,234,.14))!important;border-color:rgba(111,149,239,.11)!important;
  box-shadow:inset 3px 0 0 #7199ee,0 7px 20px rgba(84,104,158,.075)!important;
}
html body.patrol-mode.patrol-standalone.p7-product-shell.p8-product-shell.p9-product-shell.p10-product-shell.p11-product-shell.p12-product-shell.p13-product-shell.p14-product-shell.p15-product-shell.p16-product-shell.p17-product-shell.p18-product-shell.p19-product-shell.p20-product-shell.p21-product-shell #patrolPage .btn,
html body.patrol-mode.patrol-standalone.p7-product-shell.p8-product-shell.p9-product-shell.p10-product-shell.p11-product-shell.p12-product-shell.p13-product-shell.p14-product-shell.p15-product-shell.p16-product-shell.p17-product-shell.p18-product-shell.p19-product-shell.p20-product-shell.p21-product-shell .p7-topbar .btn{
  border-radius:15px!important;font-weight:720!important;color:#4a5875!important;background:rgba(248,250,255,.94)!important;border:1px solid rgba(76,96,140,.12)!important;
  box-shadow:0 6px 18px rgba(76,94,130,.065),inset 0 1px 0 rgba(255,255,255,.96)!important;
}
html body.patrol-mode.patrol-standalone.p7-product-shell.p8-product-shell.p9-product-shell.p10-product-shell.p11-product-shell.p12-product-shell.p13-product-shell.p14-product-shell.p15-product-shell.p16-product-shell.p17-product-shell.p18-product-shell.p19-product-shell.p20-product-shell.p21-product-shell #patrolPage .btn.primary,
html body.patrol-mode.patrol-standalone.p7-product-shell.p8-product-shell.p9-product-shell.p10-product-shell.p11-product-shell.p12-product-shell.p13-product-shell.p14-product-shell.p15-product-shell.p16-product-shell.p17-product-shell.p18-product-shell.p19-product-shell.p20-product-shell.p21-product-shell .p7-topbar .btn.primary,
html body.patrol-mode.patrol-standalone.p7-product-shell.p8-product-shell.p9-product-shell.p10-product-shell.p11-product-shell.p12-product-shell.p13-product-shell.p14-product-shell.p15-product-shell.p16-product-shell.p17-product-shell.p18-product-shell.p19-product-shell.p20-product-shell.p21-product-shell #patrolOutputZone #patrolExportReportPdfBtn,
html body.patrol-mode.patrol-standalone.p7-product-shell.p8-product-shell.p9-product-shell.p10-product-shell.p11-product-shell.p12-product-shell.p13-product-shell.p14-product-shell.p15-product-shell.p16-product-shell.p17-product-shell.p18-product-shell.p19-product-shell.p20-product-shell.p21-product-shell #patrolOutputZone #patrolExportFocusPngBtn,
html body.patrol-mode.patrol-standalone.p7-product-shell.p8-product-shell.p9-product-shell.p10-product-shell.p11-product-shell.p12-product-shell.p13-product-shell.p14-product-shell.p15-product-shell.p16-product-shell.p17-product-shell.p18-product-shell.p19-product-shell.p20-product-shell.p21-product-shell #patrolOutputZone #patrolExportOverallPngBtn,
html body.patrol-mode.patrol-standalone.p7-product-shell.p8-product-shell.p9-product-shell.p10-product-shell.p11-product-shell.p12-product-shell.p13-product-shell.p14-product-shell.p15-product-shell.p16-product-shell.p17-product-shell.p18-product-shell.p19-product-shell.p20-product-shell.p21-product-shell #patrolOutputZone #patrolExportRankingPosterPngBtn,
html body.patrol-mode.patrol-standalone.p7-product-shell.p8-product-shell.p9-product-shell.p10-product-shell.p11-product-shell.p12-product-shell.p13-product-shell.p14-product-shell.p15-product-shell.p16-product-shell.p17-product-shell.p18-product-shell.p19-product-shell.p20-product-shell.p21-product-shell #patrolOutputZone #patrolExportCardPngBtn{
  color:#fff!important;border-color:transparent!important;background:linear-gradient(135deg,#6f9cf4 0%,#7f91ef 47%,#aa8be9 100%)!important;
  box-shadow:0 13px 29px rgba(96,124,208,.25),inset 0 1px 0 rgba(255,255,255,.24)!important;
}
html body.patrol-mode.patrol-standalone.p7-product-shell.p8-product-shell.p9-product-shell.p10-product-shell.p11-product-shell.p12-product-shell.p13-product-shell.p14-product-shell.p15-product-shell.p16-product-shell.p17-product-shell.p18-product-shell.p19-product-shell.p20-product-shell.p21-product-shell #patrolPage .p7-module-head{
  position:relative!important;overflow:hidden!important;border-radius:30px!important;padding:32px 34px 31px!important;border:1px solid rgba(255,255,255,.94)!important;
  background:linear-gradient(135deg,rgba(255,255,255,.90),rgba(247,249,255,.82) 54%,rgba(250,246,255,.80))!important;
  box-shadow:var(--p21-shadow-soft)!important;
}
html body.patrol-mode.patrol-standalone.p7-product-shell.p8-product-shell.p9-product-shell.p10-product-shell.p11-product-shell.p12-product-shell.p13-product-shell.p14-product-shell.p15-product-shell.p16-product-shell.p17-product-shell.p18-product-shell.p19-product-shell.p20-product-shell.p21-product-shell #patrolPage .p7-module-head h2{
  font-size:clamp(35px,3.2vw,46px)!important;line-height:1.03!important;letter-spacing:-.052em!important;font-weight:800!important;color:#172033!important;
}
html body.patrol-mode.patrol-standalone.p7-product-shell.p8-product-shell.p9-product-shell.p10-product-shell.p11-product-shell.p12-product-shell.p13-product-shell.p14-product-shell.p15-product-shell.p16-product-shell.p17-product-shell.p18-product-shell.p19-product-shell.p20-product-shell.p21-product-shell #patrolPage .p7-module-head p{
  font-size:16px!important;line-height:1.65!important;color:#5f6d88!important;
}
html body.patrol-mode.patrol-standalone.p7-product-shell.p8-product-shell.p9-product-shell.p10-product-shell.p11-product-shell.p12-product-shell.p13-product-shell.p14-product-shell.p15-product-shell.p16-product-shell.p17-product-shell.p18-product-shell.p19-product-shell.p20-product-shell.p21-product-shell #patrolPage .patrol-section-kicker,
html body.patrol-mode.patrol-standalone.p7-product-shell.p8-product-shell.p9-product-shell.p10-product-shell.p11-product-shell.p12-product-shell.p13-product-shell.p14-product-shell.p15-product-shell.p16-product-shell.p17-product-shell.p18-product-shell.p19-product-shell.p20-product-shell.p21-product-shell #patrolPage .patrol-eyebrow,
html body.patrol-mode.patrol-standalone.p7-product-shell.p8-product-shell.p9-product-shell.p10-product-shell.p11-product-shell.p12-product-shell.p13-product-shell.p14-product-shell.p15-product-shell.p16-product-shell.p17-product-shell.p18-product-shell.p19-product-shell.p20-product-shell.p21-product-shell #patrolPage .p7-input-kicker{
  color:#5578c5!important;background:rgba(111,149,239,.13)!important;
}
html body.patrol-mode.patrol-standalone.p7-product-shell.p8-product-shell.p9-product-shell.p10-product-shell.p11-product-shell.p12-product-shell.p13-product-shell.p14-product-shell.p15-product-shell.p16-product-shell.p17-product-shell.p18-product-shell.p19-product-shell.p20-product-shell.p21-product-shell #patrolDashboard .p4-viz-kpis,
html body.patrol-mode.patrol-standalone.p7-product-shell.p8-product-shell.p9-product-shell.p10-product-shell.p11-product-shell.p12-product-shell.p13-product-shell.p14-product-shell.p15-product-shell.p16-product-shell.p17-product-shell.p18-product-shell.p19-product-shell.p20-product-shell.p21-product-shell #p7ProjectWorkspace .p7-domain-kpis,
html body.patrol-mode.patrol-standalone.p7-product-shell.p8-product-shell.p9-product-shell.p10-product-shell.p11-product-shell.p12-product-shell.p13-product-shell.p14-product-shell.p15-product-shell.p16-product-shell.p17-product-shell.p18-product-shell.p19-product-shell.p20-product-shell.p21-product-shell #patrolPersonZone .p7-responsibility-kpis{
  background:rgba(255,255,255,.67)!important;border:1px solid rgba(255,255,255,.94)!important;border-radius:24px!important;box-shadow:var(--p21-shadow-soft)!important;
}
html body.patrol-mode.patrol-standalone.p7-product-shell.p8-product-shell.p9-product-shell.p10-product-shell.p11-product-shell.p12-product-shell.p13-product-shell.p14-product-shell.p15-product-shell.p16-product-shell.p17-product-shell.p18-product-shell.p19-product-shell.p20-product-shell.p21-product-shell #patrolDashboard .p4-viz-kpis>article,
html body.patrol-mode.patrol-standalone.p7-product-shell.p8-product-shell.p9-product-shell.p10-product-shell.p11-product-shell.p12-product-shell.p13-product-shell.p14-product-shell.p15-product-shell.p16-product-shell.p17-product-shell.p18-product-shell.p19-product-shell.p20-product-shell.p21-product-shell #p7ProjectWorkspace .p7-domain-kpis>article,
html body.patrol-mode.patrol-standalone.p7-product-shell.p8-product-shell.p9-product-shell.p10-product-shell.p11-product-shell.p12-product-shell.p13-product-shell.p14-product-shell.p15-product-shell.p16-product-shell.p17-product-shell.p18-product-shell.p19-product-shell.p20-product-shell.p21-product-shell #patrolPersonZone .p7-responsibility-kpis>article{
  background:linear-gradient(145deg,rgba(255,255,255,.91),rgba(247,249,255,.75))!important;color:#4e5d78!important;border-color:rgba(62,79,112,.065)!important;box-shadow:none!important;
}
html body.patrol-mode.patrol-standalone.p7-product-shell.p8-product-shell.p9-product-shell.p10-product-shell.p11-product-shell.p12-product-shell.p13-product-shell.p14-product-shell.p15-product-shell.p16-product-shell.p17-product-shell.p18-product-shell.p19-product-shell.p20-product-shell.p21-product-shell #patrolDashboard .p4-viz-kpis>article:first-child,
html body.patrol-mode.patrol-standalone.p7-product-shell.p8-product-shell.p9-product-shell.p10-product-shell.p11-product-shell.p12-product-shell.p13-product-shell.p14-product-shell.p15-product-shell.p16-product-shell.p17-product-shell.p18-product-shell.p19-product-shell.p20-product-shell.p21-product-shell #p7ProjectWorkspace .p7-domain-kpis>article:first-child,
html body.patrol-mode.patrol-standalone.p7-product-shell.p8-product-shell.p9-product-shell.p10-product-shell.p11-product-shell.p12-product-shell.p13-product-shell.p14-product-shell.p15-product-shell.p16-product-shell.p17-product-shell.p18-product-shell.p19-product-shell.p20-product-shell.p21-product-shell #patrolPersonZone .p7-responsibility-kpis>article:first-child{
  background:linear-gradient(145deg,rgba(244,248,255,.98),rgba(250,247,255,.89))!important;
}
html body.patrol-mode.patrol-standalone.p7-product-shell.p8-product-shell.p9-product-shell.p10-product-shell.p11-product-shell.p12-product-shell.p13-product-shell.p14-product-shell.p15-product-shell.p16-product-shell.p17-product-shell.p18-product-shell.p19-product-shell.p20-product-shell.p21-product-shell #patrolDashboard .p4-viz-kpis strong,
html body.patrol-mode.patrol-standalone.p7-product-shell.p8-product-shell.p9-product-shell.p10-product-shell.p11-product-shell.p12-product-shell.p13-product-shell.p14-product-shell.p15-product-shell.p16-product-shell.p17-product-shell.p18-product-shell.p19-product-shell.p20-product-shell.p21-product-shell #p7ProjectWorkspace .p7-domain-kpis strong,
html body.patrol-mode.patrol-standalone.p7-product-shell.p8-product-shell.p9-product-shell.p10-product-shell.p11-product-shell.p12-product-shell.p13-product-shell.p14-product-shell.p15-product-shell.p16-product-shell.p17-product-shell.p18-product-shell.p19-product-shell.p20-product-shell.p21-product-shell #patrolPersonZone .p7-responsibility-kpis strong{
  font-size:clamp(36px,3vw,48px)!important;color:#1d2944!important;
}
html body.patrol-mode.patrol-standalone.p7-product-shell.p8-product-shell.p9-product-shell.p10-product-shell.p11-product-shell.p12-product-shell.p13-product-shell.p14-product-shell.p15-product-shell.p16-product-shell.p17-product-shell.p18-product-shell.p19-product-shell.p20-product-shell.p21-product-shell #patrolPage th{
  background:rgba(241,245,252,.92)!important;color:#566581!important;border-bottom-color:rgba(62,79,112,.09)!important;font-size:13.25px!important;
}
html body.patrol-mode.patrol-standalone.p7-product-shell.p8-product-shell.p9-product-shell.p10-product-shell.p11-product-shell.p12-product-shell.p13-product-shell.p14-product-shell.p15-product-shell.p16-product-shell.p17-product-shell.p18-product-shell.p19-product-shell.p20-product-shell.p21-product-shell #patrolPage td{
  color:#2f3c58!important;border-bottom-color:rgba(62,79,112,.072)!important;font-size:13.5px!important;
}
html body.patrol-mode.patrol-standalone.p7-product-shell.p8-product-shell.p9-product-shell.p10-product-shell.p11-product-shell.p12-product-shell.p13-product-shell.p14-product-shell.p15-product-shell.p16-product-shell.p17-product-shell.p18-product-shell.p19-product-shell.p20-product-shell.p21-product-shell #patrolLeadershipSummary{
  border:1px solid rgba(255,255,255,.94)!important;border-left:3px solid #7398ef!important;border-radius:26px!important;
  background:radial-gradient(circle at 90% 8%,rgba(126,169,249,.20),transparent 36%),radial-gradient(circle at 74% 120%,rgba(190,151,239,.14),transparent 34%),linear-gradient(135deg,rgba(248,251,255,.94),rgba(250,247,255,.90))!important;
  box-shadow:var(--p21-shadow-soft)!important;color:#34415e!important;
}
html body.patrol-mode.patrol-standalone.p7-product-shell.p8-product-shell.p9-product-shell.p10-product-shell.p11-product-shell.p12-product-shell.p13-product-shell.p14-product-shell.p15-product-shell.p16-product-shell.p17-product-shell.p18-product-shell.p19-product-shell.p20-product-shell.p21-product-shell #patrolLeadershipSummary .p15-management-brief>strong{color:#253451!important}
/* explicit blue-violet treatment for old green governance note surfaces */
html body.patrol-mode.patrol-standalone.p7-product-shell.p8-product-shell.p9-product-shell.p10-product-shell.p11-product-shell.p12-product-shell.p13-product-shell.p14-product-shell.p15-product-shell.p16-product-shell.p17-product-shell.p18-product-shell.p19-product-shell.p20-product-shell.p21-product-shell #patrolPage .patrol-macro-narrative,
html body.patrol-mode.patrol-standalone.p7-product-shell.p8-product-shell.p9-product-shell.p10-product-shell.p11-product-shell.p12-product-shell.p13-product-shell.p14-product-shell.p15-product-shell.p16-product-shell.p17-product-shell.p18-product-shell.p19-product-shell.p20-product-shell.p21-product-shell #patrolPage .patrol-writing-note,
html body.patrol-mode.patrol-standalone.p7-product-shell.p8-product-shell.p9-product-shell.p10-product-shell.p11-product-shell.p12-product-shell.p13-product-shell.p14-product-shell.p15-product-shell.p16-product-shell.p17-product-shell.p18-product-shell.p19-product-shell.p20-product-shell.p21-product-shell #patrolPage .p17-grid-note{
  background:rgba(244,247,253,.86)!important;border-color:rgba(111,149,239,.10)!important;color:#65718a!important;
}
/* no timid microtype in user-facing controls/labels */
html body.patrol-mode.patrol-standalone.p7-product-shell.p8-product-shell.p9-product-shell.p10-product-shell.p11-product-shell.p12-product-shell.p13-product-shell.p14-product-shell.p15-product-shell.p16-product-shell.p17-product-shell.p18-product-shell.p19-product-shell.p20-product-shell.p21-product-shell #patrolPage small{font-size:13px!important;line-height:1.5!important}
html body.patrol-mode.patrol-standalone.p7-product-shell.p8-product-shell.p9-product-shell.p10-product-shell.p11-product-shell.p12-product-shell.p13-product-shell.p14-product-shell.p15-product-shell.p16-product-shell.p17-product-shell.p18-product-shell.p19-product-shell.p20-product-shell.p21-product-shell #patrolPage em{font-size:12.75px!important;line-height:1.4!important}
html body.patrol-mode.patrol-standalone.p7-product-shell.p8-product-shell.p9-product-shell.p10-product-shell.p11-product-shell.p12-product-shell.p13-product-shell.p14-product-shell.p15-product-shell.p16-product-shell.p17-product-shell.p18-product-shell.p19-product-shell.p20-product-shell.p21-product-shell #patrolPage label{font-size:13.25px!important}
html body.patrol-mode.patrol-standalone.p7-product-shell.p8-product-shell.p9-product-shell.p10-product-shell.p11-product-shell.p12-product-shell.p13-product-shell.p14-product-shell.p15-product-shell.p16-product-shell.p17-product-shell.p18-product-shell.p19-product-shell.p20-product-shell.p21-product-shell #patrolPage .p4-chart-panel header span,
html body.patrol-mode.patrol-standalone.p7-product-shell.p8-product-shell.p9-product-shell.p10-product-shell.p11-product-shell.p12-product-shell.p13-product-shell.p14-product-shell.p15-product-shell.p16-product-shell.p17-product-shell.p18-product-shell.p19-product-shell.p20-product-shell.p21-product-shell #patrolPage .p4-viz-kpis article>span,
html body.patrol-mode.patrol-standalone.p7-product-shell.p8-product-shell.p9-product-shell.p10-product-shell.p11-product-shell.p12-product-shell.p13-product-shell.p14-product-shell.p15-product-shell.p16-product-shell.p17-product-shell.p18-product-shell.p19-product-shell.p20-product-shell.p21-product-shell #patrolPage .patrol-compare-kpis article>span,
html body.patrol-mode.patrol-standalone.p7-product-shell.p8-product-shell.p9-product-shell.p10-product-shell.p11-product-shell.p12-product-shell.p13-product-shell.p14-product-shell.p15-product-shell.p16-product-shell.p17-product-shell.p18-product-shell.p19-product-shell.p20-product-shell.p21-product-shell #patrolAnalysisZone .p7-map-tabs button,
html body.patrol-mode.patrol-standalone.p7-product-shell.p8-product-shell.p9-product-shell.p10-product-shell.p11-product-shell.p12-product-shell.p13-product-shell.p14-product-shell.p15-product-shell.p16-product-shell.p17-product-shell.p18-product-shell.p19-product-shell.p20-product-shell.p21-product-shell #patrolAnalysisZone #patrolProjectMapStatus,
html body.patrol-mode.patrol-standalone.p7-product-shell.p8-product-shell.p9-product-shell.p10-product-shell.p11-product-shell.p12-product-shell.p13-product-shell.p14-product-shell.p15-product-shell.p16-product-shell.p17-product-shell.p18-product-shell.p19-product-shell.p20-product-shell.p21-product-shell #patrolAnalysisZone .patrol-map-filter-status,
html body.patrol-mode.patrol-standalone.p7-product-shell.p8-product-shell.p9-product-shell.p10-product-shell.p11-product-shell.p12-product-shell.p13-product-shell.p14-product-shell.p15-product-shell.p16-product-shell.p17-product-shell.p18-product-shell.p19-product-shell.p20-product-shell.p21-product-shell #patrolAnalysisZone .p15-map-card-head>span{
  font-size:12.75px!important;line-height:1.4!important;
}

/* P21 final cool-palette + readable-detail polish. */
html body.patrol-mode.patrol-standalone.p7-product-shell.p8-product-shell.p9-product-shell.p10-product-shell.p11-product-shell.p12-product-shell.p13-product-shell.p14-product-shell.p15-product-shell.p16-product-shell.p17-product-shell.p18-product-shell.p19-product-shell.p20-product-shell.p21-product-shell .p7-side-nav button.active .p7-nav-label,
html body.patrol-mode.patrol-standalone.p7-product-shell.p8-product-shell.p9-product-shell.p10-product-shell.p11-product-shell.p12-product-shell.p13-product-shell.p14-product-shell.p15-product-shell.p16-product-shell.p17-product-shell.p18-product-shell.p19-product-shell.p20-product-shell.p21-product-shell .p7-side-nav button.active .p7-nav-icon{color:#5578c5!important}
html body.patrol-mode.patrol-standalone.p7-product-shell.p8-product-shell.p9-product-shell.p10-product-shell.p11-product-shell.p12-product-shell.p13-product-shell.p14-product-shell.p15-product-shell.p16-product-shell.p17-product-shell.p18-product-shell.p19-product-shell.p20-product-shell.p21-product-shell #patrolLeadershipSummary .p15-management-brief{
  color:#34415e!important;background:transparent!important;border:0!important;padding:23px 26px!important;
}
html body.patrol-mode.patrol-standalone.p7-product-shell.p8-product-shell.p9-product-shell.p10-product-shell.p11-product-shell.p12-product-shell.p13-product-shell.p14-product-shell.p15-product-shell.p16-product-shell.p17-product-shell.p18-product-shell.p19-product-shell.p20-product-shell.p21-product-shell #patrolLeadershipSummary .p15-management-brief>span{color:#6077b2!important;font-size:13px!important;font-weight:760!important}
html body.patrol-mode.patrol-standalone.p7-product-shell.p8-product-shell.p9-product-shell.p10-product-shell.p11-product-shell.p12-product-shell.p13-product-shell.p14-product-shell.p15-product-shell.p16-product-shell.p17-product-shell.p18-product-shell.p19-product-shell.p20-product-shell.p21-product-shell #patrolLeadershipSummary .p15-management-brief p{color:#61708c!important}
html body.patrol-mode.patrol-standalone.p7-product-shell.p8-product-shell.p9-product-shell.p10-product-shell.p11-product-shell.p12-product-shell.p13-product-shell.p14-product-shell.p15-product-shell.p16-product-shell.p17-product-shell.p18-product-shell.p19-product-shell.p20-product-shell.p21-product-shell #patrolLeadershipSummary .p15-management-brief p b{background:#eef3ff!important;color:#5578c5!important}
html body.patrol-mode.patrol-standalone.p7-product-shell.p8-product-shell.p9-product-shell.p10-product-shell.p11-product-shell.p12-product-shell.p13-product-shell.p14-product-shell.p15-product-shell.p16-product-shell.p17-product-shell.p18-product-shell.p19-product-shell.p20-product-shell.p21-product-shell #patrolAnalysisZone .patrol-project-intelligence-map{
  background:linear-gradient(145deg,rgba(255,255,255,.84),rgba(247,249,255,.72))!important;border:1px solid rgba(255,255,255,.95)!important;box-shadow:var(--p21-shadow-soft)!important;
}
html body.patrol-mode.patrol-standalone.p7-product-shell.p8-product-shell.p9-product-shell.p10-product-shell.p11-product-shell.p12-product-shell.p13-product-shell.p14-product-shell.p15-product-shell.p16-product-shell.p17-product-shell.p18-product-shell.p19-product-shell.p20-product-shell.p21-product-shell #patrolAnalysisZone .patrol-map-intelligence-layout{
  background:linear-gradient(180deg,rgba(247,249,255,.76),rgba(250,248,255,.68))!important;border-color:rgba(255,255,255,.95)!important;
}
html body.patrol-mode.patrol-standalone.p7-product-shell.p8-product-shell.p9-product-shell.p10-product-shell.p11-product-shell.p12-product-shell.p13-product-shell.p14-product-shell.p15-product-shell.p16-product-shell.p17-product-shell.p18-product-shell.p19-product-shell.p20-product-shell.p21-product-shell #patrolAnalysisZone .patrol-map-intelligence-panel{
  background:linear-gradient(180deg,rgba(250,252,255,.94),rgba(249,247,255,.88))!important;border-color:rgba(255,255,255,.96)!important;box-shadow:0 10px 26px rgba(76,94,130,.08)!important;
}
html body.patrol-mode.patrol-standalone.p7-product-shell.p8-product-shell.p9-product-shell.p10-product-shell.p11-product-shell.p12-product-shell.p13-product-shell.p14-product-shell.p15-product-shell.p16-product-shell.p17-product-shell.p18-product-shell.p19-product-shell.p20-product-shell.p21-product-shell #patrolAnalysisZone .patrol-map-intelligence-head{
  background:linear-gradient(145deg,rgba(248,250,255,.96),rgba(251,248,255,.90))!important;border-bottom-color:rgba(62,79,112,.08)!important;
}
html body.patrol-mode.patrol-standalone.p7-product-shell.p8-product-shell.p9-product-shell.p10-product-shell.p11-product-shell.p12-product-shell.p13-product-shell.p14-product-shell.p15-product-shell.p16-product-shell.p17-product-shell.p18-product-shell.p19-product-shell.p20-product-shell.p21-product-shell #patrolAnalysisZone .patrol-map-filter-status{font-size:12.75px!important}
html body.patrol-mode.patrol-standalone.p7-product-shell.p8-product-shell.p9-product-shell.p10-product-shell.p11-product-shell.p12-product-shell.p13-product-shell.p14-product-shell.p15-product-shell.p16-product-shell.p17-product-shell.p18-product-shell.p19-product-shell.p20-product-shell.p21-product-shell #patrolAnalysisZone .p15-map-legend-compact p>span{font-size:12.75px!important;color:#687795!important}
html body.patrol-mode.patrol-standalone.p7-product-shell.p8-product-shell.p9-product-shell.p10-product-shell.p11-product-shell.p12-product-shell.p13-product-shell.p14-product-shell.p15-product-shell.p16-product-shell.p17-product-shell.p18-product-shell.p19-product-shell.p20-product-shell.p21-product-shell #patrolAnalysisZone .patrol-map-priority-state{font-size:12.5px!important}
html body.patrol-mode.patrol-standalone.p7-product-shell.p8-product-shell.p9-product-shell.p10-product-shell.p11-product-shell.p12-product-shell.p13-product-shell.p14-product-shell.p15-product-shell.p16-product-shell.p17-product-shell.p18-product-shell.p19-product-shell.p20-product-shell.p21-product-shell #patrolOutputZone .patrol-writing-note{font-size:12.75px!important;line-height:1.55!important;background:#f5f7fd!important;color:#68748e!important;border-color:#e7ebf5!important}
html body.patrol-mode.patrol-standalone.p7-product-shell.p8-product-shell.p9-product-shell.p10-product-shell.p11-product-shell.p12-product-shell.p13-product-shell.p14-product-shell.p15-product-shell.p16-product-shell.p17-product-shell.p18-product-shell.p19-product-shell.p20-product-shell.p21-product-shell #patrolOutputZone .patrol-domain-chip,
html body.patrol-mode.patrol-standalone.p7-product-shell.p8-product-shell.p9-product-shell.p10-product-shell.p11-product-shell.p12-product-shell.p13-product-shell.p14-product-shell.p15-product-shell.p16-product-shell.p17-product-shell.p18-product-shell.p19-product-shell.p20-product-shell.p21-product-shell #patrolOutputZone .patrol-schema-badge{
  font-size:12.5px!important;background:#eef3ff!important;color:#5b76b7!important;border-color:#dde6fb!important;
}
html body.patrol-mode.patrol-standalone.p7-product-shell.p8-product-shell.p9-product-shell.p10-product-shell.p11-product-shell.p12-product-shell.p13-product-shell.p14-product-shell.p15-product-shell.p16-product-shell.p17-product-shell.p18-product-shell.p19-product-shell.p20-product-shell.p21-product-shell #patrolCompareZone .patrol-compare-kpis article>span{font-size:12.75px!important;color:#687795!important}
html body.patrol-mode.patrol-standalone.p7-product-shell.p8-product-shell.p9-product-shell.p10-product-shell.p11-product-shell.p12-product-shell.p13-product-shell.p14-product-shell.p15-product-shell.p16-product-shell.p17-product-shell.p18-product-shell.p19-product-shell.p20-product-shell.p21-product-shell #p7StoreWorkspace .p11-empty-side>span,
html body.patrol-mode.patrol-standalone.p7-product-shell.p8-product-shell.p9-product-shell.p10-product-shell.p11-product-shell.p12-product-shell.p13-product-shell.p14-product-shell.p15-product-shell.p16-product-shell.p17-product-shell.p18-product-shell.p19-product-shell.p20-product-shell.p21-product-shell #p7StoreWorkspace .p11-empty-feature span{font-size:12.75px!important;color:#65728c!important}
html body.patrol-mode.patrol-standalone.p7-product-shell.p8-product-shell.p9-product-shell.p10-product-shell.p11-product-shell.p12-product-shell.p13-product-shell.p14-product-shell.p15-product-shell.p16-product-shell.p17-product-shell.p18-product-shell.p19-product-shell.p20-product-shell.p21-product-shell #patrolPersonZone .p17-missing-inline{font-size:12.5px!important;background:#f0f3f8!important;color:#66738c!important;border-color:#e1e6ef!important}
html body.patrol-mode.patrol-standalone.p7-product-shell.p8-product-shell.p9-product-shell.p10-product-shell.p11-product-shell.p12-product-shell.p13-product-shell.p14-product-shell.p15-product-shell.p16-product-shell.p17-product-shell.p18-product-shell.p19-product-shell.p20-product-shell.p21-product-shell #patrolPersonZone .p17-grid-note p,
html body.patrol-mode.patrol-standalone.p7-product-shell.p8-product-shell.p9-product-shell.p10-product-shell.p11-product-shell.p12-product-shell.p13-product-shell.p14-product-shell.p15-product-shell.p16-product-shell.p17-product-shell.p18-product-shell.p19-product-shell.p20-product-shell.p21-product-shell #patrolPersonZone .p17-grid-note b{font-size:13px!important;color:#65728c!important}
html body.patrol-mode.patrol-standalone.p7-product-shell.p8-product-shell.p9-product-shell.p10-product-shell.p11-product-shell.p12-product-shell.p13-product-shell.p14-product-shell.p15-product-shell.p16-product-shell.p17-product-shell.p18-product-shell.p19-product-shell.p20-product-shell.p21-product-shell #patrolInputZone .p15-input-status span,
html body.patrol-mode.patrol-standalone.p7-product-shell.p8-product-shell.p9-product-shell.p10-product-shell.p11-product-shell.p12-product-shell.p13-product-shell.p14-product-shell.p15-product-shell.p16-product-shell.p17-product-shell.p18-product-shell.p19-product-shell.p20-product-shell.p21-product-shell #patrolInputZone .p15-input-format span{font-size:12.75px!important;color:#65728c!important}

/* P21 final Melly-blue palette lock — user explicitly rejects pale-green ambient chrome. */
html body.patrol-mode.patrol-standalone.p7-product-shell.p8-product-shell.p9-product-shell.p10-product-shell.p11-product-shell.p12-product-shell.p13-product-shell.p14-product-shell.p15-product-shell.p16-product-shell.p17-product-shell.p18-product-shell.p19-product-shell.p20-product-shell.p21-product-shell #p7CurrentModuleHint{
  color:#65728f!important;background:transparent!important;font-size:13.25px!important;
}
html body.patrol-mode.patrol-standalone.p7-product-shell.p8-product-shell.p9-product-shell.p10-product-shell.p11-product-shell.p12-product-shell.p13-product-shell.p14-product-shell.p15-product-shell.p16-product-shell.p17-product-shell.p18-product-shell.p19-product-shell.p20-product-shell.p21-product-shell .p7-period-chip{
  background:linear-gradient(135deg,rgba(246,249,255,.92),rgba(249,246,255,.88))!important;
  color:#65728f!important;border-color:rgba(111,149,239,.14)!important;
}
html body.patrol-mode.patrol-standalone.p7-product-shell.p8-product-shell.p9-product-shell.p10-product-shell.p11-product-shell.p12-product-shell.p13-product-shell.p14-product-shell.p15-product-shell.p16-product-shell.p17-product-shell.p18-product-shell.p19-product-shell.p20-product-shell.p21-product-shell .p7-period-chip span,
html body.patrol-mode.patrol-standalone.p7-product-shell.p8-product-shell.p9-product-shell.p10-product-shell.p11-product-shell.p12-product-shell.p13-product-shell.p14-product-shell.p15-product-shell.p16-product-shell.p17-product-shell.p18-product-shell.p19-product-shell.p20-product-shell.p21-product-shell .p7-period-chip strong{color:#52627f!important}
html body.patrol-mode.patrol-standalone.p7-product-shell.p8-product-shell.p9-product-shell.p10-product-shell.p11-product-shell.p12-product-shell.p13-product-shell.p14-product-shell.p15-product-shell.p16-product-shell.p17-product-shell.p18-product-shell.p19-product-shell.p20-product-shell.p21-product-shell .patrol-schema-badge{
  background:linear-gradient(135deg,#eef3ff,#f4efff)!important;color:#5c70a5!important;border-color:#dde5fb!important;
}
html body.patrol-mode.patrol-standalone.p7-product-shell.p8-product-shell.p9-product-shell.p10-product-shell.p11-product-shell.p12-product-shell.p13-product-shell.p14-product-shell.p15-product-shell.p16-product-shell.p17-product-shell.p18-product-shell.p19-product-shell.p20-product-shell.p21-product-shell #patrolLeadershipSummary .p15-management-brief{
  border-left-color:#7598ef!important;background:linear-gradient(135deg,rgba(246,249,255,.90),rgba(250,247,255,.84))!important;
}
html body.patrol-mode.patrol-standalone.p7-product-shell.p8-product-shell.p9-product-shell.p10-product-shell.p11-product-shell.p12-product-shell.p13-product-shell.p14-product-shell.p15-product-shell.p16-product-shell.p17-product-shell.p18-product-shell.p19-product-shell.p20-product-shell.p21-product-shell #patrolLeadershipSummary .p15-management-brief>span{color:#6077b2!important}
html body.patrol-mode.patrol-standalone.p7-product-shell.p8-product-shell.p9-product-shell.p10-product-shell.p11-product-shell.p12-product-shell.p13-product-shell.p14-product-shell.p15-product-shell.p16-product-shell.p17-product-shell.p18-product-shell.p19-product-shell.p20-product-shell.p21-product-shell #patrolLeadershipSummary .p15-management-brief p b{
  color:#5578c5!important;background:#eef3ff!important;
}
html body.patrol-mode.patrol-standalone.p7-product-shell.p8-product-shell.p9-product-shell.p10-product-shell.p11-product-shell.p12-product-shell.p13-product-shell.p14-product-shell.p15-product-shell.p16-product-shell.p17-product-shell.p18-product-shell.p19-product-shell.p20-product-shell.p21-product-shell #patrolPage .p15-copy-gap,
html body.patrol-mode.patrol-standalone.p7-product-shell.p8-product-shell.p9-product-shell.p10-product-shell.p11-product-shell.p12-product-shell.p13-product-shell.p14-product-shell.p15-product-shell.p16-product-shell.p17-product-shell.p18-product-shell.p19-product-shell.p20-product-shell.p21-product-shell #patrolPage .p7-detail-btn{
  color:#5578c5!important;font-size:13px!important;
}
html body.patrol-mode.patrol-standalone.p7-product-shell.p8-product-shell.p9-product-shell.p10-product-shell.p11-product-shell.p12-product-shell.p13-product-shell.p14-product-shell.p15-product-shell.p16-product-shell.p17-product-shell.p18-product-shell.p19-product-shell.p20-product-shell.p21-product-shell #patrolPage .p7-status-badge.good{
  color:#5578c5!important;background:rgba(111,149,239,.10)!important;border-color:rgba(111,149,239,.14)!important;
}
html body.patrol-mode.patrol-standalone.p7-product-shell.p8-product-shell.p9-product-shell.p10-product-shell.p11-product-shell.p12-product-shell.p13-product-shell.p14-product-shell.p15-product-shell.p16-product-shell.p17-product-shell.p18-product-shell.p19-product-shell.p20-product-shell.p21-product-shell #patrolPersonZone .p17-grid-note,
html body.patrol-mode.patrol-standalone.p7-product-shell.p8-product-shell.p9-product-shell.p10-product-shell.p11-product-shell.p12-product-shell.p13-product-shell.p14-product-shell.p15-product-shell.p16-product-shell.p17-product-shell.p18-product-shell.p19-product-shell.p20-product-shell.p21-product-shell #patrolPersonZone .p14-scope-note{
  background:linear-gradient(135deg,rgba(247,249,255,.90),rgba(250,247,255,.84))!important;border-color:#e1e7f6!important;color:#56647f!important;
}
html body.patrol-mode.patrol-standalone.p7-product-shell.p8-product-shell.p9-product-shell.p10-product-shell.p11-product-shell.p12-product-shell.p13-product-shell.p14-product-shell.p15-product-shell.p16-product-shell.p17-product-shell.p18-product-shell.p19-product-shell.p20-product-shell.p21-product-shell #patrolPersonZone .p17-grid-note p,
html body.patrol-mode.patrol-standalone.p7-product-shell.p8-product-shell.p9-product-shell.p10-product-shell.p11-product-shell.p12-product-shell.p13-product-shell.p14-product-shell.p15-product-shell.p16-product-shell.p17-product-shell.p18-product-shell.p19-product-shell.p20-product-shell.p21-product-shell #patrolPersonZone .p17-grid-note b{color:#5c6985!important;font-size:13px!important}
html body.patrol-mode.patrol-standalone.p7-product-shell.p8-product-shell.p9-product-shell.p10-product-shell.p11-product-shell.p12-product-shell.p13-product-shell.p14-product-shell.p15-product-shell.p16-product-shell.p17-product-shell.p18-product-shell.p19-product-shell.p20-product-shell.p21-product-shell #patrolAnalysisZone .patrol-map-filter-group button b{
  background:rgba(111,149,239,.10)!important;color:#5578c5!important;
}
html body.patrol-mode.patrol-standalone.p7-product-shell.p8-product-shell.p9-product-shell.p10-product-shell.p11-product-shell.p12-product-shell.p13-product-shell.p14-product-shell.p15-product-shell.p16-product-shell.p17-product-shell.p18-product-shell.p19-product-shell.p20-product-shell.p21-product-shell #patrolProjectMapSearchClear{
  background:#eef3ff!important;color:#5578c5!important;border-color:#dce5fb!important;
}
html body.patrol-mode.patrol-standalone.p7-product-shell.p8-product-shell.p9-product-shell.p10-product-shell.p11-product-shell.p12-product-shell.p13-product-shell.p14-product-shell.p15-product-shell.p16-product-shell.p17-product-shell.p18-product-shell.p19-product-shell.p20-product-shell.p21-product-shell #patrolAnalysisZone .p15-map-card-head span{color:#66759a!important;font-size:13px!important}
html body.patrol-mode.patrol-standalone.p7-product-shell.p8-product-shell.p9-product-shell.p10-product-shell.p11-product-shell.p12-product-shell.p13-product-shell.p14-product-shell.p15-product-shell.p16-product-shell.p17-product-shell.p18-product-shell.p19-product-shell.p20-product-shell.p21-product-shell #patrolAnalysisZone .p15-map-card-head strong{color:#243451!important;font-size:18px!important}
html body.patrol-mode.patrol-standalone.p7-product-shell.p8-product-shell.p9-product-shell.p10-product-shell.p11-product-shell.p12-product-shell.p13-product-shell.p14-product-shell.p15-product-shell.p16-product-shell.p17-product-shell.p18-product-shell.p19-product-shell.p20-product-shell.p21-product-shell #patrolOutputZone .patrol-domain-chip,
html body.patrol-mode.patrol-standalone.p7-product-shell.p8-product-shell.p9-product-shell.p10-product-shell.p11-product-shell.p12-product-shell.p13-product-shell.p14-product-shell.p15-product-shell.p16-product-shell.p17-product-shell.p18-product-shell.p19-product-shell.p20-product-shell.p21-product-shell #patrolOutputZone .patrol-schema-badge{
  background:linear-gradient(135deg,#eef3ff,#f4efff)!important;color:#5b71ab!important;border-color:#dde5fb!important;font-size:12.75px!important;
}
/* Typographic comfort: no tiny UI text as a spacing solution. */
html body.p21-product-shell #patrolPage small{font-size:13px!important;line-height:1.5!important}
html body.p21-product-shell #patrolPage .p7-bar-legend span,
html body.p21-product-shell #patrolPage .p7-bar-legend b,
html body.p21-product-shell #patrolPage .p14-kpi-note,
html body.p21-product-shell #patrolPage .p14-scope-note,
html body.p21-product-shell #patrolPage .p15-data-integrity,
html body.p21-product-shell #patrolPage .p15-management-actions,
html body.p21-product-shell #patrolPage .p15-input-status span,
html body.p21-product-shell #patrolPage .p15-input-format span{font-size:13px!important;line-height:1.5!important}
html body.p21-product-shell #p7StoreWorkspace .p11-empty-feature span,
html body.p21-product-shell #p7StoreWorkspace .p11-empty-side>span{font-size:13px!important}
html body.p21-product-shell #patrolCompareZone .patrol-compare-kpis article>span{font-size:13px!important}
html body.p21-product-shell #patrolAnalysisZone .p15-map-legend-compact p>span{font-size:13px!important}
html body.p21-product-shell #patrolDashboard .p4-stack-legend span,
html body.p21-product-shell #patrolDashboard .p4-stack-legend b,
html body.p21-product-shell #patrolDashboard #p4RegChartTotal,
html body.p21-product-shell #patrolDashboard #p4PriorityTotal{font-size:13px!important;color:#5f6e8b!important}
html body.p21-product-shell #patrolInputZone .p7-input-trust span{font-size:12.75px!important;color:#4f779f!important}
html body.p21-product-shell #p14OverviewMore summary em{color:#4f779f!important;font-size:13px!important}
html body.p21-product-shell #patrolProgressOverview footer span,
html body.p21-product-shell #patrolProgressOverview footer b{color:#66738f!important;font-size:13px!important}

/* P21 readable Melly accents — richer blue/violet for white text and compact labels. */
html body.patrol-mode.patrol-standalone.p7-product-shell.p8-product-shell.p9-product-shell.p10-product-shell.p11-product-shell.p12-product-shell.p13-product-shell.p14-product-shell.p15-product-shell.p16-product-shell.p17-product-shell.p18-product-shell.p19-product-shell.p20-product-shell.p21-product-shell #patrolPage .btn.primary,
html body.patrol-mode.patrol-standalone.p7-product-shell.p8-product-shell.p9-product-shell.p10-product-shell.p11-product-shell.p12-product-shell.p13-product-shell.p14-product-shell.p15-product-shell.p16-product-shell.p17-product-shell.p18-product-shell.p19-product-shell.p20-product-shell.p21-product-shell .p7-topbar .btn.primary{
  background:linear-gradient(135deg,#3476c1 0%,#438ed8 46%,#649fe0 100%)!important;
  color:#fff!important;border-color:rgba(46,112,185,.22)!important;
  box-shadow:0 9px 22px rgba(45,111,184,.16),inset 0 1px 0 rgba(255,255,255,.22)!important;
}
html body.patrol-mode.patrol-standalone.p7-product-shell.p8-product-shell.p9-product-shell.p10-product-shell.p11-product-shell.p12-product-shell.p13-product-shell.p14-product-shell.p15-product-shell.p16-product-shell.p17-product-shell.p18-product-shell.p19-product-shell.p20-product-shell.p21-product-shell #patrolPage .btn.primary:hover,
html body.patrol-mode.patrol-standalone.p7-product-shell.p8-product-shell.p9-product-shell.p10-product-shell.p11-product-shell.p12-product-shell.p13-product-shell.p14-product-shell.p15-product-shell.p16-product-shell.p17-product-shell.p18-product-shell.p19-product-shell.p20-product-shell.p21-product-shell .p7-topbar .btn.primary:hover{
  background:linear-gradient(135deg,#2f70bb 0%,#3b82cc 46%,#4d92d5 100%)!important;
}
html body.p21-product-shell #patrolPage .p17-disabled-action,
html body.p21-product-shell #patrolPage .btn.primary:disabled{
  background:#e8edf6!important;color:#65728f!important;border-color:#dce3ef!important;box-shadow:none!important;opacity:1!important;
}
html body.p21-product-shell .p7-side-nav button.active,
html body.p21-product-shell .p7-side-input.active{color:#2f70bb!important}
html body.p21-product-shell #patrolAnalysisZone .p7-map-tabs button.active,
html body.p21-product-shell #patrolAnalysisZone .patrol-map-filter-group button.active{color:#2f70bb!important}
html body.p21-product-shell #patrolAnalysisZone .p7-map-tabs button:not(.active),
html body.p21-product-shell #patrolAnalysisZone .patrol-map-filter-group button:not(.active){color:#56647f!important}
html body.p21-product-shell #patrolAnalysisZone .patrol-eyebrow,
html body.p21-product-shell #patrolPage .patrol-section-kicker{color:#486985!important}
html body.p21-product-shell #patrolPage .p7-detail-btn,
html body.p21-product-shell #patrolPage .p15-copy-gap{color:#2f70bb!important}
html body.p21-product-shell #patrolPage .p7-status-badge.good{color:#2f70bb!important}
html body.p21-product-shell #patrolActionHighlights .p15-action-card.neutral>span,
html body.p21-product-shell #patrolLeadershipSummary .p15-management-brief p b{color:#2f70bb!important}
html body.p21-product-shell #patrolOutputZone .patrol-copy-card>span{color:#3e72a9!important;background:#eef3ff!important}
html body.p21-product-shell #patrolResponsibilityZone .p15-mini-availability.missing{color:#5b6782!important}
html body.p21-product-shell #p15MapSelectedCard>span{color:#5b6782!important}
html body.p21-product-shell #patrolPage .btn.primary,
html body.p21-product-shell .p7-topbar .btn.primary{background-color:#438ed8!important}

/* P21 FINAL READABILITY + MELLY BLUE/VIOLET GATE — last-mile specificity overrides. */
html body.patrol-mode.patrol-standalone.p7-product-shell.p8-product-shell.p9-product-shell.p10-product-shell.p11-product-shell.p12-product-shell.p13-product-shell.p14-product-shell.p15-product-shell.p16-product-shell.p17-product-shell.p18-product-shell.p19-product-shell.p20-product-shell.p21-product-shell #patrolOutputZone #patrolExportFocusPngBtn,
html body.patrol-mode.patrol-standalone.p7-product-shell.p8-product-shell.p9-product-shell.p10-product-shell.p11-product-shell.p12-product-shell.p13-product-shell.p14-product-shell.p15-product-shell.p16-product-shell.p17-product-shell.p18-product-shell.p19-product-shell.p20-product-shell.p21-product-shell #patrolOutputZone #patrolExportOverallPngBtn,
html body.patrol-mode.patrol-standalone.p7-product-shell.p8-product-shell.p9-product-shell.p10-product-shell.p11-product-shell.p12-product-shell.p13-product-shell.p14-product-shell.p15-product-shell.p16-product-shell.p17-product-shell.p18-product-shell.p19-product-shell.p20-product-shell.p21-product-shell #patrolOutputZone #patrolExportRankingPosterPngBtn,
html body.patrol-mode.patrol-standalone.p7-product-shell.p8-product-shell.p9-product-shell.p10-product-shell.p11-product-shell.p12-product-shell.p13-product-shell.p14-product-shell.p15-product-shell.p16-product-shell.p17-product-shell.p18-product-shell.p19-product-shell.p20-product-shell.p21-product-shell #patrolOutputZone #patrolExportCardPngBtn,
html body.patrol-mode.patrol-standalone.p7-product-shell.p8-product-shell.p9-product-shell.p10-product-shell.p11-product-shell.p12-product-shell.p13-product-shell.p14-product-shell.p15-product-shell.p16-product-shell.p17-product-shell.p18-product-shell.p19-product-shell.p20-product-shell.p21-product-shell #patrolOutputZone #patrolExportReportPdfBtn,
html body.patrol-mode.patrol-standalone.p7-product-shell.p8-product-shell.p9-product-shell.p10-product-shell.p11-product-shell.p12-product-shell.p13-product-shell.p14-product-shell.p15-product-shell.p16-product-shell.p17-product-shell.p18-product-shell.p19-product-shell.p20-product-shell.p21-product-shell #patrolOutputZone #patrolCopyBriefBtn{
  color:#fff!important;
  background:linear-gradient(135deg,#3476c1 0%,#438ed8 46%,#649fe0 100%)!important;
  border-color:rgba(46,112,185,.22)!important;
  box-shadow:0 9px 22px rgba(45,111,184,.16),inset 0 1px 0 rgba(255,255,255,.22)!important;
}
html body.patrol-mode.patrol-standalone.p7-product-shell.p8-product-shell.p9-product-shell.p10-product-shell.p11-product-shell.p12-product-shell.p13-product-shell.p14-product-shell.p15-product-shell.p16-product-shell.p17-product-shell.p18-product-shell.p19-product-shell.p20-product-shell.p21-product-shell .p7-side-input.active{
  color:#405278!important;
}
html body.patrol-mode.patrol-standalone.p7-product-shell.p8-product-shell.p9-product-shell.p10-product-shell.p11-product-shell.p12-product-shell.p13-product-shell.p14-product-shell.p15-product-shell.p16-product-shell.p17-product-shell.p18-product-shell.p19-product-shell.p20-product-shell.p21-product-shell #patrolAnalysisZone .p7-map-tabs button.active,
html body.patrol-mode.patrol-standalone.p7-product-shell.p8-product-shell.p9-product-shell.p10-product-shell.p11-product-shell.p12-product-shell.p13-product-shell.p14-product-shell.p15-product-shell.p16-product-shell.p17-product-shell.p18-product-shell.p19-product-shell.p20-product-shell.p21-product-shell #patrolAnalysisZone .patrol-map-filter-group button.active{
  color:#405278!important;
}
html body.patrol-mode.patrol-standalone.p7-product-shell.p8-product-shell.p9-product-shell.p10-product-shell.p11-product-shell.p12-product-shell.p13-product-shell.p14-product-shell.p15-product-shell.p16-product-shell.p17-product-shell.p18-product-shell.p19-product-shell.p20-product-shell.p21-product-shell #patrolAnalysisZone .p7-map-tabs button:not(.active),
html body.patrol-mode.patrol-standalone.p7-product-shell.p8-product-shell.p9-product-shell.p10-product-shell.p11-product-shell.p12-product-shell.p13-product-shell.p14-product-shell.p15-product-shell.p16-product-shell.p17-product-shell.p18-product-shell.p19-product-shell.p20-product-shell.p21-product-shell #patrolAnalysisZone .patrol-map-filter-group button:not(.active),
html body.patrol-mode.patrol-standalone.p7-product-shell.p8-product-shell.p9-product-shell.p10-product-shell.p11-product-shell.p12-product-shell.p13-product-shell.p14-product-shell.p15-product-shell.p16-product-shell.p17-product-shell.p18-product-shell.p19-product-shell.p20-product-shell.p21-product-shell #patrolAnalysisZone #patrolProjectMapSearchClear{
  color:#405278!important;
}
html body.patrol-mode.patrol-standalone.p7-product-shell.p8-product-shell.p9-product-shell.p10-product-shell.p11-product-shell.p12-product-shell.p13-product-shell.p14-product-shell.p15-product-shell.p16-product-shell.p17-product-shell.p18-product-shell.p19-product-shell.p20-product-shell.p21-product-shell #patrolAnalysisZone .p15-map-card-head>span{
  color:#486985!important;
  font-size:13px!important;
}
html body.patrol-mode.patrol-standalone.p7-product-shell.p8-product-shell.p9-product-shell.p10-product-shell.p11-product-shell.p12-product-shell.p13-product-shell.p14-product-shell.p15-product-shell.p16-product-shell.p17-product-shell.p18-product-shell.p19-product-shell.p20-product-shell.p21-product-shell #patrolResponsibilityZone .p15-mini-availability.missing{
  color:#486985!important;
  font-size:13px!important;
}
html body.patrol-mode.patrol-standalone.p7-product-shell.p8-product-shell.p9-product-shell.p10-product-shell.p11-product-shell.p12-product-shell.p13-product-shell.p14-product-shell.p15-product-shell.p16-product-shell.p17-product-shell.p18-product-shell.p19-product-shell.p20-product-shell.p21-product-shell #patrolResponsibilityZone .p17-grid-note b,
html body.patrol-mode.patrol-standalone.p7-product-shell.p8-product-shell.p9-product-shell.p10-product-shell.p11-product-shell.p12-product-shell.p13-product-shell.p14-product-shell.p15-product-shell.p16-product-shell.p17-product-shell.p18-product-shell.p19-product-shell.p20-product-shell.p21-product-shell #patrolResponsibilityZone .p17-grid-note p{
  color:#405278!important;
  font-size:13px!important;
}
html body.p21-product-shell #patrolActionHighlights .p15-action-card>span i,
html body.p21-product-shell #patrolLeadershipSummary .p15-management-brief i{
  font-size:13px!important;
}
html body.p21-product-shell #patrolProgressOverview footer span,
html body.p21-product-shell #patrolProgressOverview footer b{
  color:#66738f!important;
  font-size:13px!important;
}
html body.p21-product-shell #patrolProgressOverview footer{color:#66738f!important;font-size:13px!important}
html body.p21-product-shell #patrolActionHighlights .p15-action-card i{font-size:13px!important;line-height:1!important}
html body.p21-product-shell #patrolDashboard .p4-priority-row>i{font-size:13px!important;line-height:1!important}


/* ==========================================================================
   P22 — MELLY ANALYTICS / INTERACTION STATE SYSTEM
   Goal: keep governance power, make every touch feel calm, attractive and precise.
   ========================================================================== */
html.p22-melly-analytics{
  --p22-bg:#f3f6fb;
  --p22-bg-strong:#eaf0f8;
  --p22-surface:rgba(255,255,255,.78);
  --p22-surface-strong:rgba(255,255,255,.92);
  --p22-surface-soft:rgba(255,255,255,.58);
  --p22-text:#172033;
  --p22-text-2:#2c3854;
  --p22-muted:#697792;
  --p22-subtle:#8d99ae;
  --p22-line:rgba(62,79,112,.10);
  --p22-accent:#6f95ef;
  --p22-accent-2:#b692ee;
  --p22-accent-soft:rgba(111,149,239,.13);
  --p22-violet-soft:rgba(182,146,238,.105);
  --p22-primary-a:#526fbb;
  --p22-primary-b:#625fb3;
  --p22-primary-c:#7654a8;
  --p22-danger:#d86f7c;
  --p22-danger-soft:#fff1f4;
  --p22-warn:#c98a45;
  --p22-warn-soft:#fff7e9;
  --p22-success:#5d83d0;
  --p22-success-soft:#eef3ff;
  --p22-shadow:0 22px 60px rgba(69,88,126,.13),0 3px 14px rgba(69,88,126,.065);
  --p22-shadow-soft:0 10px 28px rgba(76,94,130,.085);
  --p22-shadow-hover:0 17px 38px rgba(76,94,130,.12);
  --p22-ease:cubic-bezier(.22,.8,.25,1);
  scroll-behavior:auto!important;
}
html body.p22-product-shell{
  color:var(--p22-text)!important;
  background:
    radial-gradient(circle at 8% 2%,rgba(164,198,255,.43),transparent 29rem),
    radial-gradient(circle at 92% 5%,rgba(220,190,255,.37),transparent 31rem),
    radial-gradient(circle at 54% 108%,rgba(188,204,246,.25),transparent 35rem),
    linear-gradient(145deg,#f8faff 0%,#f0f5fb 52%,#f7f4fb 100%)!important;
  background-attachment:fixed!important;
}
html body.p22-product-shell::before{background:linear-gradient(118deg,rgba(255,255,255,.48),transparent 34%,rgba(255,255,255,.20))!important}

/* Navigation: current page is a quiet Melly pill, never a stuck focus/shadow state. */
html body.p22-product-shell .p7-side-nav button,
html body.p22-product-shell .p7-side-input{
  min-height:52px!important;border:1px solid transparent!important;border-radius:17px!important;
  color:#64718a!important;background:transparent!important;box-shadow:none!important;
  transition:background .18s ease,color .18s ease,border-color .18s ease,transform .16s var(--p22-ease)!important;
}
html body.p22-product-shell .p7-side-nav button:hover,
html body.p22-product-shell .p7-side-input:hover{
  color:var(--p22-text)!important;background:rgba(255,255,255,.60)!important;border-color:rgba(255,255,255,.72)!important;
  transform:translateX(1px)!important;box-shadow:none!important;
}
html body.p22-product-shell .p7-side-nav button.active,
html body.p22-product-shell .p7-side-input.active{
  color:#4f70bd!important;
  background:linear-gradient(135deg,rgba(116,158,244,.155),rgba(176,142,234,.115))!important;
  border-color:rgba(111,149,239,.105)!important;
  box-shadow:none!important;transform:none!important;
}
html body.p22-product-shell .p7-side-nav button.active .p7-nav-icon,
html body.p22-product-shell .p7-side-nav button.active .p7-nav-label,
html body.p22-product-shell .p7-side-input.active .p7-nav-icon,
html body.p22-product-shell .p7-side-input.active .p7-nav-label{color:#4f70bd!important}
html body.p22-product-shell .p7-side-nav button:active,
html body.p22-product-shell .p7-side-input:active{transform:scale(.985)!important;box-shadow:none!important}
html body.p22-product-shell .p7-side-nav button:focus:not(:focus-visible),
html body.p22-product-shell .p7-side-input:focus:not(:focus-visible){outline:none!important;box-shadow:none!important}
html body.p22-product-shell .p7-side-nav button:focus-visible,
html body.p22-product-shell .p7-side-input:focus-visible{
  outline:3px solid rgba(111,149,239,.26)!important;outline-offset:2px!important;box-shadow:none!important;
}
html body.p22-product-shell .p7-nav-arrow{opacity:.33!important;transition:opacity .18s ease,transform .18s ease!important}
html body.p22-product-shell .p7-side-nav button:hover .p7-nav-arrow,
html body.p22-product-shell .p7-side-nav button.active .p7-nav-arrow{opacity:.58!important;transform:translateX(1px)!important}

/* Glass chrome: lighter than P21; the content should feel touchable, not framed. */
@media(min-width:1025px){
 html body.p22-product-shell .p7-sidebar{
   background:rgba(255,255,255,.75)!important;border:1px solid rgba(255,255,255,.91)!important;
   box-shadow:0 18px 52px rgba(69,88,126,.105),0 2px 10px rgba(69,88,126,.055)!important;
   backdrop-filter:blur(26px) saturate(145%)!important;-webkit-backdrop-filter:blur(26px) saturate(145%)!important;
 }
 html body.p22-product-shell .p7-topbar{
   background:rgba(250,252,255,.91)!important;border:1px solid rgba(255,255,255,.95)!important;
   box-shadow:0 10px 30px rgba(69,88,126,.065),inset 0 1px 0 rgba(255,255,255,.98)!important;
 }
}

/* Buttons: attractive press feedback, but no lingering glow after a mouse click. */
html body.p22-product-shell #patrolPage .btn,
html body.p22-product-shell .p7-topbar .btn{
  border-radius:15px!important;font-weight:720!important;color:#4a5875!important;
  background:rgba(249,251,255,.93)!important;border:1px solid rgba(76,96,140,.11)!important;
  box-shadow:0 5px 16px rgba(76,94,130,.05),inset 0 1px 0 rgba(255,255,255,.94)!important;
  transition:transform .17s var(--p22-ease),box-shadow .18s ease,border-color .18s ease,background .18s ease!important;
}
html body.p22-product-shell #patrolPage .btn:hover:not(:disabled),
html body.p22-product-shell .p7-topbar .btn:hover:not(:disabled){
  transform:translateY(-1px)!important;background:#fff!important;border-color:rgba(111,149,239,.23)!important;
  box-shadow:0 11px 25px rgba(76,94,130,.09),inset 0 1px 0 rgba(255,255,255,.96)!important;
}
html body.p22-product-shell #patrolPage .btn:active:not(:disabled),
html body.p22-product-shell .p7-topbar .btn:active:not(:disabled){transform:translateY(0) scale(.982)!important;box-shadow:0 3px 9px rgba(76,94,130,.055)!important}
html body.p22-product-shell #patrolPage .btn.primary,
html body.p22-product-shell .p7-topbar .btn.primary,
html body.p22-product-shell #patrolOutputZone #patrolExportFocusPngBtn,
html body.p22-product-shell #patrolOutputZone #patrolExportOverallPngBtn,
html body.p22-product-shell #patrolOutputZone #patrolExportRankingPosterPngBtn,
html body.p22-product-shell #patrolOutputZone #patrolExportCardPngBtn,
html body.p22-product-shell #patrolOutputZone #patrolExportReportPdfBtn,
html body.p22-product-shell #patrolOutputZone #patrolCopyBriefBtn{
  color:#fff!important;border-color:rgba(75,82,154,.20)!important;
  background:linear-gradient(135deg,var(--p22-primary-a) 0%,var(--p22-primary-b) 48%,var(--p22-primary-c) 100%)!important;
  box-shadow:0 10px 23px rgba(82,96,177,.19),inset 0 1px 0 rgba(255,255,255,.20)!important;
}
html body.p22-product-shell #patrolPage button:focus:not(:focus-visible){outline:none!important}
html body.p22-product-shell #patrolPage button:focus-visible,
html body.p22-product-shell .p7-topbar button:focus-visible{
  outline:3px solid rgba(111,149,239,.27)!important;outline-offset:2px!important;
  box-shadow:none!important;
}

/* Page heroes: closer to Melly hero-card — soft depth, colour diffusion, generous type. */
html body.p22-product-shell #patrolPage .p7-module-head{
  border-radius:28px!important;padding:25px 28px!important;
  background:linear-gradient(135deg,rgba(255,255,255,.88),rgba(245,240,255,.77))!important;
  border:1px solid rgba(255,255,255,.90)!important;box-shadow:var(--p22-shadow-soft)!important;
}
html body.p22-product-shell #patrolPage .p7-module-head::before{
  opacity:.88!important;background:radial-gradient(circle at 88% 12%,rgba(116,158,244,.20),transparent 34%),radial-gradient(circle at 72% 105%,rgba(182,146,238,.16),transparent 34%)!important;
}
html body.p22-product-shell #patrolPage .p7-module-head h2{font-size:38px!important;line-height:1.08!important;letter-spacing:-.035em!important;color:#17233a!important}
html body.p22-product-shell #patrolPage .p7-module-head p{font-size:15.5px!important;line-height:1.72!important;color:#5f6d87!important;max-width:900px}
html body.p22-product-shell #patrolPage .patrol-section-kicker,
html body.p22-product-shell #patrolPage .patrol-eyebrow,
html body.p22-product-shell #patrolPage .p7-input-kicker{
  color:#5273c0!important;background:linear-gradient(135deg,rgba(111,149,239,.14),rgba(182,146,238,.095))!important;
  border:1px solid rgba(111,149,239,.08)!important;
}

/* Stat cards: separate, inviting Melly cards instead of one institutional strip. */
html body.p22-product-shell #patrolPage .p4-viz-kpis,
html body.p22-product-shell #patrolPage .p7-domain-kpis,
html body.p22-product-shell #patrolPage .p7-responsibility-kpis,
html body.p22-product-shell #patrolPage .patrol-compare-kpis{
  gap:10px!important;background:transparent!important;border:0!important;box-shadow:none!important;overflow:visible!important;
}
html body.p22-product-shell #patrolPage .p4-viz-kpis>article,
html body.p22-product-shell #patrolPage .p7-domain-kpis>article,
html body.p22-product-shell #patrolPage .p7-responsibility-kpis>article,
html body.p22-product-shell #patrolPage .patrol-compare-kpis>article{
  position:relative!important;overflow:hidden!important;border-radius:20px!important;
  background:linear-gradient(145deg,rgba(255,255,255,.89),rgba(247,249,255,.72))!important;
  border:1px solid rgba(255,255,255,.91)!important;box-shadow:0 8px 23px rgba(76,94,130,.075)!important;
  transition:transform .18s var(--p22-ease),box-shadow .18s ease!important;
}
html body.p22-product-shell #patrolPage .p4-viz-kpis>article::after,
html body.p22-product-shell #patrolPage .p7-domain-kpis>article::after,
html body.p22-product-shell #patrolPage .p7-responsibility-kpis>article::after{
  content:"";position:absolute;right:-35px;top:-45px;width:105px;height:105px;border-radius:50%;pointer-events:none;
  background:radial-gradient(circle,rgba(111,149,239,.12),rgba(182,146,238,.05) 48%,transparent 70%);
}
html body.p22-product-shell #patrolPage .p4-viz-kpis>article:hover,
html body.p22-product-shell #patrolPage .p7-domain-kpis>article:hover,
html body.p22-product-shell #patrolPage .p7-responsibility-kpis>article:hover{transform:translateY(-1px)!important;box-shadow:0 13px 31px rgba(76,94,130,.10)!important}
html body.p22-product-shell #patrolPage .p4-viz-kpis strong,
html body.p22-product-shell #patrolPage .p7-domain-kpis strong,
html body.p22-product-shell #patrolPage .p7-responsibility-kpis strong,
html body.p22-product-shell #patrolPage .patrol-compare-kpis strong{font-size:42px!important;letter-spacing:-.035em!important;color:#1c2944!important}
html body.p22-product-shell #patrolPage .p4-viz-kpis span,
html body.p22-product-shell #patrolPage .p7-domain-kpis span,
html body.p22-product-shell #patrolPage .p7-responsibility-kpis span{color:#66748e!important;font-weight:720!important}

/* Panels: fewer visible frames, more calm surface depth. */
html body.p22-product-shell #patrolPage .patrol-panel,
html body.p22-product-shell #patrolPage .p4-chart-panel,
html body.p22-product-shell #patrolPage .p7-workspace-card,
html body.p22-product-shell #patrolPage .p7-object-table-panel,
html body.p22-product-shell #patrolPage .p15-output-group{
  border-radius:24px!important;background:rgba(255,255,255,.73)!important;
  border:1px solid rgba(255,255,255,.91)!important;box-shadow:var(--p22-shadow-soft)!important;
  backdrop-filter:blur(16px) saturate(126%)!important;-webkit-backdrop-filter:blur(16px) saturate(126%)!important;
}
html body.p22-product-shell #patrolPage .patrol-panel-head{
  background:transparent!important;border-bottom:1px solid rgba(62,79,112,.07)!important;padding-bottom:15px!important;
}
html body.p22-product-shell #patrolPage .patrol-panel-head h3,
html body.p22-product-shell #patrolPage .p4-chart-panel h3{color:#1f2c48!important;letter-spacing:-.018em!important}

/* Charts: appetising but professional — coral / amber / Melly blue instead of institutional green. */
html body.p22-product-shell #patrolDashboard .p4-stack{height:12px!important;border-radius:999px!important;background:#edf1f7!important;box-shadow:inset 0 1px 2px rgba(60,77,108,.05)!important}
html body.p22-product-shell #patrolDashboard .p4-stack>i.zero{background:linear-gradient(90deg,#e47b87,#e9959e)!important}
html body.p22-product-shell #patrolDashboard .p4-stack>i.one{background:linear-gradient(90deg,#dda457,#edc278)!important}
html body.p22-product-shell #patrolDashboard .p4-stack>i.good{background:linear-gradient(90deg,#6f95ef,#9b8ee9)!important}
html body.p22-product-shell #patrolDashboard .p4-stack-legend i.good{background:#7d97ec!important}
html body.p22-product-shell #patrolDashboard .p4-donut{background:conic-gradient(#7b98ed calc(var(--value)*1%),#edf1f7 0)!important}
html body.p22-product-shell #patrolDashboard .p4-donut.store{background:conic-gradient(#a48be7 calc(var(--value)*1%),#edf1f7 0)!important}
html body.p22-product-shell #patrolPage .p7-bar-track,
html body.p22-product-shell #patrolPage .p14-mini-track{height:9px!important;background:#edf1f7!important;border-radius:999px!important;box-shadow:inset 0 1px 2px rgba(60,77,108,.045)!important}
html body.p22-product-shell #patrolPage .p7-bar-track i,
html body.p22-product-shell #patrolPage .p7-bar-fill,
html body.p22-product-shell #patrolPage .p14-mini-fill{
  background:linear-gradient(90deg,#7e9ff0 0%,#8d96ee 52%,#a28ce5 100%)!important;
  box-shadow:0 2px 7px rgba(111,149,239,.18)!important;
}
html body.p22-product-shell #p7ProjectGridChart .p7-bar-row.data-missing .p7-bar-track i{
  background:linear-gradient(90deg,#95a3bc,#b1a7ca)!important;box-shadow:none!important;opacity:.86!important;
}
html body.p22-product-shell #patrolDashboard .p4-priority-row,
html body.p22-product-shell #p7ProjectGapList .p15-gap-priority,
html body.p22-product-shell #p7StoreGapList .p15-gap-priority{
  border-radius:16px!important;border:1px solid rgba(78,93,126,.075)!important;background:rgba(251,252,255,.86)!important;
  transition:transform .17s var(--p22-ease),box-shadow .18s ease,border-color .18s ease!important;
}
html body.p22-product-shell #patrolDashboard .p4-priority-row:hover,
html body.p22-product-shell #p7ProjectGapList .p15-gap-priority:hover,
html body.p22-product-shell #p7StoreGapList .p15-gap-priority:hover{transform:translateY(-1px)!important;box-shadow:0 9px 22px rgba(76,94,130,.075)!important}
html body.p22-product-shell #p7ProjectGapList .p15-gap-priority.good{background:linear-gradient(135deg,#f6f9ff,#f9f6ff)!important;border-color:rgba(111,149,239,.13)!important}
html body.p22-product-shell #p7ProjectGapList .p15-gap-priority.good>strong{color:#5578c5!important}
html body.p22-product-shell #patrolDashboard .p4-priority-row.store>i{background:linear-gradient(135deg,rgba(111,149,239,.14),rgba(182,146,238,.12))!important;color:#5d76bb!important}
html body.p22-product-shell #patrolDashboard .p4-priority-row:not(.warn):not(.store)>i{background:#fff0f3!important;color:#b85866!important}
html body.p22-product-shell #patrolDashboard .p4-priority-row.warn>i{background:#fff6e8!important;color:#a96e25!important}
html body.p22-product-shell #patrolPage .p15-copy-gap{color:#5574ba!important;background:rgba(111,149,239,.075)!important;padding:7px 10px!important;border-radius:10px!important}
html body.p22-product-shell #patrolPage .p15-copy-gap:hover{background:rgba(111,149,239,.14)!important}

/* Tables / filters: album-list calm, higher touch confidence. */
html body.p22-product-shell #patrolPage .p7-filterbar{
  border-radius:18px!important;background:rgba(247,249,255,.74)!important;border:1px solid rgba(255,255,255,.90)!important;padding:12px!important;
}
html body.p22-product-shell #patrolPage .p7-filterbar input,
html body.p22-product-shell #patrolPage .p7-filterbar select{min-height:44px!important;border-radius:13px!important;background:rgba(255,255,255,.84)!important}
html body.p22-product-shell #patrolPage th{background:rgba(242,246,253,.92)!important;color:#53627e!important}
html body.p22-product-shell #patrolPage tbody tr{transition:background .16s ease,transform .16s ease!important}
html body.p22-product-shell #patrolPage tbody tr:hover{background:linear-gradient(90deg,rgba(111,149,239,.055),rgba(182,146,238,.035))!important}
html body.p22-product-shell #patrolPage tbody tr.selected,
html body.p22-product-shell #patrolPage tbody tr[aria-selected="true"]{background:linear-gradient(90deg,rgba(111,149,239,.115),rgba(182,146,238,.07))!important;box-shadow:none!important}

/* Input page: remove residual greenish field/status, make starting the analysis feel deliberate. */
html body.p22-product-shell #patrolInputZone .patrol-one-paste-input,
html body.p22-product-shell #patrolInputZone textarea{
  background:rgba(255,255,255,.88)!important;border:1px solid rgba(91,113,160,.20)!important;border-radius:20px!important;
  box-shadow:inset 0 1px 2px rgba(46,62,94,.025)!important;color:#263450!important;
}
html body.p22-product-shell #patrolInputZone textarea:focus{
  background:#fff!important;border-color:rgba(111,149,239,.52)!important;
  box-shadow:0 0 0 4px rgba(111,149,239,.08),0 12px 28px rgba(73,98,151,.065)!important;
}
html body.p22-product-shell #patrolInputZone .patrol-input-recognition,
html body.p22-product-shell #patrolInputZone .p15-input-recognition,
html body.p22-product-shell #patrolInputZone .patrol-input-status{
  background:linear-gradient(135deg,rgba(246,249,255,.92),rgba(250,247,255,.80))!important;
  border-color:rgba(111,149,239,.105)!important;color:#596984!important;
}
html body.p22-product-shell #patrolInputZone .p7-input-guide{background:linear-gradient(145deg,rgba(249,251,255,.87),rgba(250,247,255,.75))!important;border-color:rgba(255,255,255,.92)!important}

/* Management conclusion and output library: give the eye a reason to stay. */
html body.p22-product-shell #patrolLeadershipSummary{
  border-left:0!important;border-radius:28px!important;
  background:radial-gradient(circle at 92% 8%,rgba(116,158,244,.21),transparent 33%),radial-gradient(circle at 70% 118%,rgba(182,146,238,.17),transparent 35%),linear-gradient(135deg,rgba(249,251,255,.96),rgba(250,247,255,.92))!important;
  box-shadow:0 13px 32px rgba(76,94,130,.085)!important;
}
html body.p22-product-shell #patrolLeadershipSummary .p15-management-brief>span{color:#5677c0!important}
html body.p22-product-shell #patrolLeadershipSummary .p15-management-brief p b{background:linear-gradient(135deg,rgba(111,149,239,.13),rgba(182,146,238,.09))!important;color:#5272bb!important}
html body.p22-product-shell #patrolOutputZone .patrol-copy-card,
html body.p22-product-shell #patrolOutputZone .p15-output-card,
html body.p22-product-shell #patrolOutputZone .patrol-card-export-panel{
  border-radius:22px!important;background:linear-gradient(145deg,rgba(255,255,255,.84),rgba(247,249,255,.68))!important;
  transition:transform .18s var(--p22-ease),box-shadow .18s ease!important;
}
html body.p22-product-shell #patrolOutputZone .patrol-copy-card:hover,
html body.p22-product-shell #patrolOutputZone .p15-output-card:hover,
html body.p22-product-shell #patrolOutputZone .patrol-card-export-panel:hover{transform:translateY(-2px)!important;box-shadow:var(--p22-shadow-hover)!important}

/* GIS: map stays authoritative; the surrounding workspace adopts Melly calm. */
html body.p22-product-shell #patrolAnalysisZone .patrol-project-intelligence-map,
html body.p22-product-shell #patrolAnalysisZone .patrol-map-intelligence-layout{
  border-radius:25px!important;background:linear-gradient(145deg,rgba(255,255,255,.82),rgba(247,249,255,.70))!important;
  border-color:rgba(255,255,255,.93)!important;box-shadow:var(--p22-shadow-soft)!important;
}
html body.p22-product-shell #patrolAnalysisZone .patrol-map-intelligence-panel{
  border-radius:22px!important;background:linear-gradient(180deg,rgba(251,252,255,.96),rgba(249,247,255,.90))!important;
  border-color:rgba(255,255,255,.95)!important;box-shadow:0 9px 24px rgba(76,94,130,.07)!important;
}
html body.p22-product-shell #patrolAnalysisZone .patrol-map-priority-row{
  border-radius:15px!important;background:rgba(255,255,255,.78)!important;border-color:rgba(74,91,126,.075)!important;box-shadow:none!important;
  transition:transform .16s var(--p22-ease),background .16s ease,border-color .16s ease!important;
}
html body.p22-product-shell #patrolAnalysisZone .patrol-map-priority-row:hover{transform:translateY(-1px)!important;background:#fff!important;border-color:rgba(111,149,239,.15)!important;box-shadow:none!important}
html body.p22-product-shell #patrolAnalysisZone .patrol-map-priority-row[aria-current="true"]{
  background:linear-gradient(135deg,rgba(111,149,239,.13),rgba(182,146,238,.09))!important;border-color:rgba(111,149,239,.17)!important;box-shadow:none!important;
}
html body.p22-product-shell #patrolAnalysisZone .patrol-map-priority-no{color:#5273bd!important;background:linear-gradient(135deg,rgba(111,149,239,.15),rgba(182,146,238,.11))!important}
html body.p22-product-shell #patrolAnalysisZone .p7-map-tabs button.active,
html body.p22-product-shell #patrolAnalysisZone .patrol-map-filter-group button.active{
  color:#4f70bd!important;background:#fff!important;border-color:rgba(111,149,239,.14)!important;box-shadow:none!important;
}
html body.p22-product-shell #patrolAnalysisZone .p7-map-tabs button:focus:not(:focus-visible),
html body.p22-product-shell #patrolAnalysisZone .patrol-map-filter-group button:focus:not(:focus-visible){outline:none!important;box-shadow:none!important}

/* Semantic success is blue by default; green remains only where the data literally needs it. */
html body.p22-product-shell #patrolPage .p7-status-badge.good,
html body.p22-product-shell #patrolPage .p15-mini-availability:not(.missing){background:#eef3ff!important;color:#5272bb!important;border-color:#dbe5ff!important}

/* Compact layouts: preserve the generous feeling by yielding decoration before type. */
@media(max-width:1180px){
 html body.p22-product-shell #patrolPage .p7-module-head h2{font-size:34px!important}
 html body.p22-product-shell #patrolPage .p4-viz-kpis strong,
 html body.p22-product-shell #patrolPage .p7-domain-kpis strong,
 html body.p22-product-shell #patrolPage .p7-responsibility-kpis strong{font-size:36px!important}
}
@media(max-width:720px){
 html body.p22-product-shell #patrolPage .p7-module-head{padding:20px!important;border-radius:22px!important}
 html body.p22-product-shell #patrolPage .p7-module-head h2{font-size:29px!important}
 html body.p22-product-shell #patrolPage .p4-viz-kpis>article,
 html body.p22-product-shell #patrolPage .p7-domain-kpis>article,
 html body.p22-product-shell #patrolPage .p7-responsibility-kpis>article{border-radius:17px!important}
}
@media(prefers-reduced-motion:reduce){
 html body.p22-product-shell *,html body.p22-product-shell *::before,html body.p22-product-shell *::after{animation:none!important;transition-duration:.01ms!important;scroll-behavior:auto!important}
}

/* P22.1 — pointer-state bug fix and cool-spectrum cleanup after real Windows review. */
html body.patrol-mode.patrol-standalone.p7-product-shell.p8-product-shell.p9-product-shell.p10-product-shell.p11-product-shell.p12-product-shell.p13-product-shell.p14-product-shell.p15-product-shell.p16-product-shell.p17-product-shell.p18-product-shell.p19-product-shell.p20-product-shell.p21-product-shell.p22-product-shell .p7-side-nav button.active,
html body.patrol-mode.patrol-standalone.p7-product-shell.p8-product-shell.p9-product-shell.p10-product-shell.p11-product-shell.p12-product-shell.p13-product-shell.p14-product-shell.p15-product-shell.p16-product-shell.p17-product-shell.p18-product-shell.p19-product-shell.p20-product-shell.p21-product-shell.p22-product-shell .p7-side-input.active{
  color:#4f70bd!important;
  background:linear-gradient(135deg,rgba(111,149,239,.13),rgba(182,146,238,.10))!important;
  border-color:rgba(111,149,239,.11)!important;
  box-shadow:none!important;
  transform:none!important;
}
html body.patrol-mode.patrol-standalone.p7-product-shell.p8-product-shell.p9-product-shell.p10-product-shell.p11-product-shell.p12-product-shell.p13-product-shell.p14-product-shell.p15-product-shell.p16-product-shell.p17-product-shell.p18-product-shell.p19-product-shell.p20-product-shell.p21-product-shell.p22-product-shell .p7-side-nav button:hover,
html body.patrol-mode.patrol-standalone.p7-product-shell.p8-product-shell.p9-product-shell.p10-product-shell.p11-product-shell.p12-product-shell.p13-product-shell.p14-product-shell.p15-product-shell.p16-product-shell.p17-product-shell.p18-product-shell.p19-product-shell.p20-product-shell.p21-product-shell.p22-product-shell .p7-side-input:hover{
  box-shadow:none!important;
}
html body.patrol-mode.patrol-standalone.p7-product-shell.p8-product-shell.p9-product-shell.p10-product-shell.p11-product-shell.p12-product-shell.p13-product-shell.p14-product-shell.p15-product-shell.p16-product-shell.p17-product-shell.p18-product-shell.p19-product-shell.p20-product-shell.p21-product-shell.p22-product-shell .p7-side-nav button:focus:not(:focus-visible),
html body.patrol-mode.patrol-standalone.p7-product-shell.p8-product-shell.p9-product-shell.p10-product-shell.p11-product-shell.p12-product-shell.p13-product-shell.p14-product-shell.p15-product-shell.p16-product-shell.p17-product-shell.p18-product-shell.p19-product-shell.p20-product-shell.p21-product-shell.p22-product-shell .p7-side-input:focus:not(:focus-visible){
  outline:none!important;box-shadow:none!important;
}
html body.patrol-mode.patrol-standalone.p7-product-shell.p8-product-shell.p9-product-shell.p10-product-shell.p11-product-shell.p12-product-shell.p13-product-shell.p14-product-shell.p15-product-shell.p16-product-shell.p17-product-shell.p18-product-shell.p19-product-shell.p20-product-shell.p21-product-shell.p22-product-shell .p7-side-nav button:focus-visible,
html body.patrol-mode.patrol-standalone.p7-product-shell.p8-product-shell.p9-product-shell.p10-product-shell.p11-product-shell.p12-product-shell.p13-product-shell.p14-product-shell.p15-product-shell.p16-product-shell.p17-product-shell.p18-product-shell.p19-product-shell.p20-product-shell.p21-product-shell.p22-product-shell .p7-side-input:focus-visible{
  outline:3px solid rgba(111,149,239,.30)!important;outline-offset:2px!important;box-shadow:none!important;
}

/* Remove the remaining pale-green product surfaces. Green is reserved for literal semantic status only. */
html body.p22-product-shell #patrolInputZone .patrol-contract-card.p7-input-guide{
  background:radial-gradient(circle at 92% 6%,rgba(182,146,238,.10),transparent 34%),linear-gradient(145deg,rgba(249,251,255,.96),rgba(244,247,253,.91))!important;
  border-color:rgba(111,149,239,.10)!important;color:#40506d!important;
}
html body.p22-product-shell #patrolInputZone .p15-input-live{
  background:linear-gradient(135deg,rgba(247,250,255,.96),rgba(249,247,255,.94))!important;
  border-color:rgba(111,149,239,.14)!important;color:#4c5c7b!important;
}
html body.p22-product-shell #patrolInputZone .patrol-one-paste-input{
  border-color:rgba(111,149,239,.24)!important;box-shadow:inset 0 1px 0 rgba(255,255,255,.98)!important;
}
html body.p22-product-shell #patrolInputZone .patrol-one-paste-input:focus{
  border-color:#7a9df0!important;box-shadow:0 0 0 4px rgba(111,149,239,.10)!important;outline:none!important;
}
html body.p22-product-shell #p15StoreFuture{
  background:radial-gradient(circle at 86% 8%,rgba(182,146,238,.11),transparent 35%),linear-gradient(145deg,rgba(248,251,255,.97),rgba(246,247,253,.92))!important;
  border-color:rgba(111,149,239,.10)!important;
}
html body.p22-product-shell .p11-history-baseline-head{
  background:radial-gradient(circle at 88% 8%,rgba(111,149,239,.11),transparent 35%),linear-gradient(135deg,rgba(248,251,255,.97),rgba(249,247,255,.93))!important;
  border-color:rgba(111,149,239,.09)!important;
}
html body.p22-product-shell #patrolAnalysisZone .patrol-map-status-strip,
html body.p22-product-shell #patrolAnalysisZone .patrol-map-summary-strip,
html body.p22-product-shell #patrolAnalysisZone .p17-grid-note{
  background:linear-gradient(135deg,rgba(245,248,255,.96),rgba(248,246,255,.92))!important;
  border-color:rgba(111,149,239,.10)!important;color:#52617f!important;
}

/* Make data-viz surfaces feel deliberate and calm, not like generic dashboard boxes. */
html body.p22-product-shell #patrolDashboard .p4-chart-panel,
html body.p22-product-shell #p7ProjectWorkspace .p7-grid-chart,
html body.p22-product-shell #p7ProjectWorkspace .p7-gap-summary,
html body.p22-product-shell #patrolPersonZone .p7-responsibility-board{
  background:linear-gradient(145deg,rgba(255,255,255,.94),rgba(249,250,255,.88))!important;
  border-color:rgba(78,95,137,.075)!important;
  box-shadow:0 16px 42px rgba(69,88,126,.065),inset 0 1px 0 rgba(255,255,255,.96)!important;
}
html body.p22-product-shell #p7ProjectWorkspace .p7-bar-track,
html body.p22-product-shell #patrolPersonZone .p15-mini-availability{
  background:linear-gradient(90deg,rgba(224,230,242,.72),rgba(235,230,247,.66))!important;
}
html body.p22-product-shell #p7ProjectWorkspace .p7-bar-track>i{
  background:linear-gradient(90deg,#7da2f2 0%,#8a90ed 54%,#aa8ce8 100%)!important;
  box-shadow:0 2px 8px rgba(111,149,239,.16)!important;
}

/* P22.2 — final no-pale-green product-surface firewall (ID specificity beats legacy shells). */
body.p22-product-shell #patrolPage #patrolInputZone aside.patrol-contract-card.p7-input-guide{
  background:radial-gradient(circle at 92% 6%,rgba(182,146,238,.11),transparent 34%),linear-gradient(145deg,rgba(249,251,255,.98),rgba(245,247,254,.94))!important;
  border-color:rgba(111,149,239,.11)!important;color:#40506d!important;
}
body.p22-product-shell #patrolPage #patrolInputZone #patrolInput{
  border-color:rgba(111,149,239,.24)!important;background:#fff!important;
}
body.p22-product-shell #patrolPage #patrolInputZone #patrolInput:focus{
  border-color:#7a9df0!important;box-shadow:0 0 0 4px rgba(111,149,239,.10)!important;outline:none!important;
}
body.p22-product-shell #patrolPage #patrolCompareZone .p15-history-baseline{
  background:radial-gradient(circle at 90% 5%,rgba(111,149,239,.09),transparent 34%),linear-gradient(145deg,rgba(249,251,255,.98),rgba(249,247,255,.93))!important;
  border-color:rgba(111,149,239,.10)!important;color:#40506d!important;
}
body.p22-product-shell #patrolPage #patrolCompareZone .p11-history-baseline-head{
  background:linear-gradient(135deg,rgba(244,248,255,.96),rgba(249,246,255,.93))!important;
  border-bottom-color:rgba(111,149,239,.10)!important;
}
body.p22-product-shell #patrolPage #patrolAnalysisZone #patrolProjectMapConclusion{
  background:linear-gradient(135deg,rgba(244,248,255,.96),rgba(249,246,255,.93))!important;
  border-color:rgba(111,149,239,.11)!important;color:#52617f!important;
}

/* P22.3 — readable data-visual microtype and stronger quiet text contrast. */
body.p22-product-shell #patrolPage .patrol-section-kicker{color:#405d98!important;font-size:13px!important}
body.p22-product-shell #patrolPage .p15-copy-gap,
body.p22-product-shell #patrolPage .p7-detail-btn{color:#3f5d9a!important;font-size:13px!important}
body.p22-product-shell #patrolPage .p7-status-badge{font-size:13px!important}
body.p22-product-shell #patrolPage .p7-status-badge.good,
body.p22-product-shell #patrolPage .p7-status-badge.danger{color:#405d98!important}
body.p22-product-shell #patrolPersonZone .p17-missing-inline{color:#5a6882!important;font-size:13px!important}
body.p22-product-shell #patrolPersonZone em{color:#586781!important;font-size:13px!important}
body.p22-product-shell #patrolAnalysisZone .patrol-map-filter-status{color:#5b6985!important;font-size:13px!important}
body.p22-product-shell #patrolAnalysisZone #p19PriorityMoreBtn{color:#3f5d9a!important;font-size:13px!important}
body.p22-product-shell #patrolOutputZone .patrol-writing-note{color:#5d6981!important;font-size:13px!important}
body.p22-product-shell #patrolPage .p4-chart-panel b,
body.p22-product-shell #patrolPage .p4-chart-panel span,
body.p22-product-shell #patrolActionHighlights b,
body.p22-product-shell #p7ProjectWorkspace .p17-grid-note b,
body.p22-product-shell #p7ProjectWorkspace .p17-grid-note span,
body.p22-product-shell #p7ProjectWorkspace .p7-bar-row span,
body.p22-product-shell #p7ProjectWorkspace .p7-bar-row b,
body.p22-product-shell #patrolCompareZone .p11-history-baseline-head span,
body.p22-product-shell #patrolCompareZone .patrol-compare-kpis span,
body.p22-product-shell #patrolCompareZone .p15-history-future span,
body.p22-product-shell #patrolAnalysisZone .p15-map-card-head span,
body.p22-product-shell #patrolAnalysisZone .p15-map-card-head b,
body.p22-product-shell #patrolAnalysisZone .patrol-map-intelligence-side span,
body.p22-product-shell #patrolInputZone #p15InputLive span{
  font-size:13px!important;line-height:1.45!important;
}

/* P22.4 — user-visible minimum type floor. Do not solve density by shrinking text. */
body.p22-product-shell #patrolPage #patrolDashboard b,
body.p22-product-shell #patrolPage #patrolDashboard span,
body.p22-product-shell #patrolPage #p7ProjectWorkspace b,
body.p22-product-shell #patrolPage #p7ProjectWorkspace span,
body.p22-product-shell #patrolPage #p7ProjectWorkspace td b,
body.p22-product-shell #patrolPage #patrolPersonZone b,
body.p22-product-shell #patrolPage #patrolPersonZone span,
body.p22-product-shell #patrolPage #patrolAnalysisZone .p15-map-card-head span,
body.p22-product-shell #patrolPage #patrolAnalysisZone .patrol-map-intelligence-side span,
body.p22-product-shell #patrolPage #patrolCompareZone span,
body.p22-product-shell #patrolPage #patrolInputZone #p15InputLive span{
  font-size:max(13px,1em)!important;
}
body.p22-product-shell #patrolPage #p7ProjectPagination button,
body.p22-product-shell #patrolPage #p7ProjectPagination span,
body.p22-product-shell #patrolPage #patrolPersonZone .p14-resp-switch span,
body.p22-product-shell #patrolPage #patrolAnalysisZone .patrol-map-intelligence-side p>span,
body.p22-product-shell #patrolPage #patrolAnalysisZone #p15MapSelectedCard>span{
  font-size:13px!important;
}
body.p22-product-shell #patrolPage #p7ProjectWorkspace #p7ProjectPagination span,
body.p22-product-shell #patrolPage #patrolPersonZone #p7ResponsibilityGrid .p14-resp-switch span,
body.p22-product-shell #patrolPage #patrolAnalysisZone #p15MapLegendCompact p>span{
  font-size:13px!important;line-height:1.45!important;
}


/* ==========================================================================
   P23 — CARD-BOUNDARY INFORMATION ARCHITECTURE
   Outer: Melly cool-white / mist-blue / soft-violet calm.
   Inner: vivid but coordinated data cards, charts and status accents.
   ========================================================================== */
html.p23-card-system{
  --p23-ink:#172238;
  --p23-ink2:#33405c;
  --p23-muted:#66748f;
  --p23-subtle:#8793a9;
  --p23-line:rgba(65,82,120,.105);
  --p23-card:rgba(255,255,255,.86);
  --p23-card-strong:rgba(255,255,255,.95);
  --p23-blue:#577cf4;
  --p23-cyan:#18a9cf;
  --p23-violet:#8a5de8;
  --p23-magenta:#d255c8;
  --p23-coral:#ef6b72;
  --p23-orange:#f39b37;
  --p23-amber:#e8b33f;
  --p23-sky:#58a8f7;
  --p23-shadow:0 14px 36px rgba(60,77,112,.085),0 2px 8px rgba(60,77,112,.04);
  --p23-shadow-hover:0 18px 42px rgba(60,77,112,.12),0 3px 10px rgba(60,77,112,.05);
  --p23-radius-xl:26px;
  --p23-radius-lg:21px;
  --p23-radius-md:15px;
}
html body.p23-product-shell{
  background:
    radial-gradient(circle at 7% 2%,rgba(150,193,255,.28),transparent 31rem),
    radial-gradient(circle at 94% 4%,rgba(210,177,255,.25),transparent 34rem),
    radial-gradient(circle at 53% 108%,rgba(184,199,244,.16),transparent 38rem),
    linear-gradient(145deg,#f8faff 0%,#f1f5fb 53%,#f8f5fc 100%)!important;
}

/* Type discipline — consistent scale; weight is reserved for emphasis. */
body.p23-product-shell #patrolPage,
body.p23-product-shell .p7-topbar,
body.p23-product-shell .p7-sidebar{color:var(--p23-ink)!important}
body.p23-product-shell #patrolPage p,
body.p23-product-shell #patrolPage li,
body.p23-product-shell #patrolPage td,
body.p23-product-shell #patrolPage label,
body.p23-product-shell #patrolPage button,
body.p23-product-shell #patrolPage input,
body.p23-product-shell #patrolPage select,
body.p23-product-shell #patrolPage textarea{font-size:14px!important;line-height:1.58!important}
body.p23-product-shell #patrolPage small,
body.p23-product-shell #patrolPage em{font-size:13.5px!important;line-height:1.52!important;font-style:normal!important;color:var(--p23-muted)!important}
body.p23-product-shell #patrolPage b{font-weight:620!important}
body.p23-product-shell #patrolPage h2{font-weight:720!important;letter-spacing:-.028em!important}
body.p23-product-shell #patrolPage h3{font-size:18px!important;line-height:1.32!important;font-weight:680!important;letter-spacing:-.015em!important}
body.p23-product-shell #patrolPage h4{font-size:16px!important;line-height:1.38!important;font-weight:650!important}
body.p23-product-shell #patrolPage .p7-module-head h2{font-size:34px!important;line-height:1.12!important}
body.p23-product-shell #patrolPage .p7-module-head p{font-size:14.5px!important;line-height:1.62!important;font-weight:450!important}
body.p23-product-shell #patrolPage .patrol-section-kicker,
body.p23-product-shell #patrolPage .p7-input-kicker{font-size:13px!important;font-weight:650!important}

/* Outer product shell: calm and precise, never noisy. */
@media(min-width:1025px){
 body.p23-product-shell .p7-sidebar{background:rgba(253,254,255,.84)!important;border-color:rgba(255,255,255,.96)!important;box-shadow:0 18px 56px rgba(61,78,113,.10)!important}
 body.p23-product-shell .p7-topbar{background:rgba(253,254,255,.88)!important;border-color:rgba(255,255,255,.97)!important;box-shadow:0 9px 28px rgba(61,78,113,.06)!important}
}
body.p23-product-shell #patrolPage .p7-module-head{
  background:
   radial-gradient(circle at 88% 7%,rgba(90,126,244,.16),transparent 30%),
   radial-gradient(circle at 72% 112%,rgba(144,91,232,.13),transparent 35%),
   linear-gradient(135deg,rgba(255,255,255,.93),rgba(248,247,255,.83))!important;
  border:1px solid rgba(255,255,255,.97)!important;
  box-shadow:0 13px 36px rgba(64,82,119,.08)!important;
}

/* Completeness bar becomes a clear set of micro-cards. */
body.p23-product-shell #p15CompletenessBar{
  display:flex!important;align-items:center!important;gap:8px!important;flex-wrap:wrap!important;
  padding:9px 10px!important;border-radius:20px!important;
  background:rgba(255,255,255,.70)!important;border:1px solid rgba(255,255,255,.92)!important;
  box-shadow:0 8px 22px rgba(64,82,119,.05)!important;
}
body.p23-product-shell #p15CompletenessBar .p15-completeness-label{
  padding:7px 10px!important;border-radius:11px!important;background:linear-gradient(135deg,rgba(87,124,244,.10),rgba(138,93,232,.08))!important;
  color:#435b96!important;font-weight:650!important
}
body.p23-product-shell #p15CompletenessBar .p15-completeness-item{
  min-height:34px!important;padding:7px 10px!important;border-radius:12px!important;
  background:rgba(255,255,255,.88)!important;border:1px solid rgba(76,94,133,.085)!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.96)!important;
}
body.p23-product-shell #p15CompletenessBar .p15-completeness-item.missing:nth-of-type(2){background:linear-gradient(135deg,#fff8f6,#fffaf7)!important;border-color:rgba(239,107,114,.16)!important}
body.p23-product-shell #p15CompletenessBar .p15-completeness-item.missing:nth-of-type(3){background:linear-gradient(135deg,#fff9ef,#fffdf7)!important;border-color:rgba(243,155,55,.17)!important}
body.p23-product-shell #p15CompletenessBar .p15-completeness-item.ok{background:linear-gradient(135deg,#f4f7ff,#faf5ff)!important;border-color:rgba(106,106,239,.14)!important}
body.p23-product-shell #p15CompletenessBar>small{margin-left:auto!important;padding:7px 10px!important;border-radius:11px!important;background:rgba(246,248,253,.82)!important;border:1px solid rgba(76,94,133,.07)!important}

/* KPI cards: vivid inside, calm outside. Each statistic has a deliberate identity. */
body.p23-product-shell #patrolPage :is(.p4-viz-kpis,.p7-domain-kpis,.p7-responsibility-kpis,.p11-history-metrics)>article{
  isolation:isolate!important;position:relative!important;border-radius:20px!important;border:1px solid transparent!important;
  box-shadow:var(--p23-shadow)!important;overflow:hidden!important;padding-top:18px!important;
}
body.p23-product-shell #patrolPage :is(.p4-viz-kpis,.p7-domain-kpis,.p7-responsibility-kpis,.p11-history-metrics)>article::before{
  content:"";position:absolute;left:0;right:0;top:0;height:4px;z-index:2;background:var(--p23-tone,#577cf4)!important;
}
body.p23-product-shell #patrolPage :is(.p4-viz-kpis,.p7-domain-kpis,.p7-responsibility-kpis,.p11-history-metrics)>article::after{
  content:"";position:absolute;width:112px;height:112px;right:-34px;top:-44px;border-radius:50%;z-index:-1;
  background:radial-gradient(circle,color-mix(in srgb,var(--p23-tone,#577cf4) 18%,transparent),transparent 68%)!important;
}
body.p23-product-shell #patrolPage :is(.p4-viz-kpis,.p7-domain-kpis,.p7-responsibility-kpis,.p11-history-metrics)>article:nth-child(1){--p23-tone:#5b82f3;background:linear-gradient(145deg,#fbfdff,#f2f6ff)!important;border-color:rgba(91,130,243,.14)!important}
body.p23-product-shell #patrolPage :is(.p4-viz-kpis,.p7-domain-kpis,.p7-responsibility-kpis,.p11-history-metrics)>article:nth-child(2){--p23-tone:#ef6b72;background:linear-gradient(145deg,#fffdfd,#fff3f4)!important;border-color:rgba(239,107,114,.15)!important}
body.p23-product-shell #patrolPage :is(.p4-viz-kpis,.p7-domain-kpis,.p7-responsibility-kpis,.p11-history-metrics)>article:nth-child(3){--p23-tone:#f0a23d;background:linear-gradient(145deg,#fffefa,#fff7ea)!important;border-color:rgba(240,162,61,.16)!important}
body.p23-product-shell #patrolPage :is(.p4-viz-kpis,.p7-domain-kpis,.p7-responsibility-kpis,.p11-history-metrics)>article:nth-child(4){--p23-tone:#8a5de8;background:linear-gradient(145deg,#fefcff,#f7f1ff)!important;border-color:rgba(138,93,232,.15)!important}
body.p23-product-shell #patrolPage .p11-history-metrics>article:nth-child(5){--p23-tone:#18a9cf;background:linear-gradient(145deg,#fbfeff,#effbff)!important;border-color:rgba(24,169,207,.14)!important}
body.p23-product-shell #patrolPage :is(.p4-viz-kpis,.p7-domain-kpis,.p7-responsibility-kpis)>article strong{font-size:38px!important;font-weight:720!important;color:#1d2a44!important}
body.p23-product-shell #patrolPage :is(.p4-viz-kpis,.p7-domain-kpis,.p7-responsibility-kpis)>article>span{font-size:13.5px!important;font-weight:620!important;color:#4c5a75!important}

/* Generic analytical panels: explicit boundaries and a consistent header rail. */
body.p23-product-shell #patrolPage .patrol-panel,
body.p23-product-shell #patrolPage .p4-chart-panel,
body.p23-product-shell #patrolPage .p15-output-group,
body.p23-product-shell #patrolPage .patrol-input-card,
body.p23-product-shell #patrolPage .patrol-contract-card{
  border-radius:var(--p23-radius-lg)!important;
  background:linear-gradient(145deg,rgba(255,255,255,.94),rgba(249,250,255,.88))!important;
  border:1px solid rgba(76,94,133,.085)!important;
  box-shadow:var(--p23-shadow)!important;
}
body.p23-product-shell #patrolPage .patrol-panel-head,
body.p23-product-shell #patrolPage .p15-output-group>header,
body.p23-product-shell #patrolPage .p7-guide-head{
  position:relative!important;padding:16px 18px 15px 18px!important;
  background:linear-gradient(90deg,rgba(245,248,255,.84),rgba(251,248,255,.58))!important;
  border-bottom:1px solid rgba(76,94,133,.075)!important;
}
body.p23-product-shell #patrolPage .patrol-panel-head::before,
body.p23-product-shell #patrolPage .p15-output-group>header::before,
body.p23-product-shell #patrolPage .p7-guide-head::before{
  content:"";display:inline-block;width:8px;height:8px;border-radius:3px;margin-right:9px;vertical-align:2px;
  background:linear-gradient(135deg,#5c82f4,#9c62e8);box-shadow:0 0 0 4px rgba(91,130,243,.075)
}

/* Overview: management conclusion and next actions are clearly bounded cards. */
body.p23-product-shell #patrolLeadershipSummary{
  padding:18px!important;border:1px solid rgba(97,112,170,.11)!important;
  background:linear-gradient(135deg,rgba(249,252,255,.97),rgba(250,246,255,.95))!important;box-shadow:var(--p23-shadow)!important;
}
body.p23-product-shell #patrolLeadershipSummary .p15-management-brief>span{
  display:inline-flex!important;padding:7px 10px!important;border-radius:10px!important;background:linear-gradient(135deg,rgba(87,124,244,.13),rgba(138,93,232,.09))!important;color:#4b62a2!important;font-size:13px!important;font-weight:650!important
}
body.p23-product-shell #patrolLeadershipSummary .p15-management-brief>strong{display:block!important;margin-top:12px!important;font-size:19px!important;line-height:1.62!important;font-weight:680!important;color:#25324c!important}
body.p23-product-shell #patrolLeadershipSummary .p15-management-brief>div{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:9px!important;margin-top:14px!important}
body.p23-product-shell #patrolLeadershipSummary .p15-management-brief p{
  margin:0!important;padding:12px!important;border-radius:14px!important;background:rgba(255,255,255,.83)!important;border:1px solid rgba(76,94,133,.08)!important;color:#4f5d78!important
}
body.p23-product-shell #patrolLeadershipSummary .p15-management-brief p:nth-child(1){border-top:3px solid #ef6b72!important}
body.p23-product-shell #patrolLeadershipSummary .p15-management-brief p:nth-child(2){border-top:3px solid #f0a23d!important}
body.p23-product-shell #patrolLeadershipSummary .p15-management-brief p:nth-child(3){border-top:3px solid #8a5de8!important}
body.p23-product-shell #patrolActionHighlights{gap:10px!important}
body.p23-product-shell #patrolActionHighlights .p15-action-card{
  border-radius:17px!important;border:1px solid rgba(76,94,133,.085)!important;background:#fff!important;box-shadow:0 8px 20px rgba(64,82,119,.055)!important;padding:13px!important
}
body.p23-product-shell #patrolActionHighlights .p15-action-card.danger{background:linear-gradient(145deg,#fffdfd,#fff4f5)!important;border-color:rgba(239,107,114,.16)!important}
body.p23-product-shell #patrolActionHighlights .p15-action-card.warn{background:linear-gradient(145deg,#fffefa,#fff7ea)!important;border-color:rgba(240,162,61,.16)!important}
body.p23-product-shell #patrolActionHighlights .p15-action-card.neutral{background:linear-gradient(145deg,#fcfdff,#f5f2ff)!important;border-color:rgba(138,93,232,.14)!important}

/* Project scope notes: small information cards, not bare text strips. */
body.p23-product-shell #p14ProjectMetricScope,
body.p23-product-shell #p15ProjectDataGapNote,
body.p23-product-shell #p15ResponsibilityAnchor{
  display:grid!important;grid-template-columns:max-content 1fr!important;align-items:start!important;gap:10px!important;
  padding:12px 14px!important;border-radius:15px!important;border:1px solid rgba(76,94,133,.085)!important;
  background:linear-gradient(135deg,rgba(251,253,255,.96),rgba(247,248,254,.91))!important;box-shadow:0 6px 16px rgba(64,82,119,.04)!important
}
body.p23-product-shell #p14ProjectMetricScope>b,
body.p23-product-shell #p15ProjectDataGapNote>b{
  padding:5px 8px!important;border-radius:8px!important;background:#eef3ff!important;color:#4867aa!important;font-size:13px!important
}
body.p23-product-shell #p15ProjectDataGapNote>b{background:#fff4e8!important;color:#9a6724!important}
body.p23-product-shell #p15ResponsibilityAnchor p{margin:0!important;color:#52617c!important}
body.p23-product-shell #p15ResponsibilityAnchor p::first-line{font-weight:620!important;color:#374560!important}

/* Project bar chart: every row is a readable mini-card with its own rhythm. */
body.p23-product-shell #p7ProjectGridChart{display:grid!important;gap:6px!important}
body.p23-product-shell #p7ProjectGridChart .p7-bar-row{
  padding:8px 10px!important;border-radius:12px!important;background:rgba(250,252,255,.82)!important;border:1px solid rgba(76,94,133,.055)!important;
  transition:background .16s ease,border-color .16s ease,transform .16s ease!important
}
body.p23-product-shell #p7ProjectGridChart .p7-bar-row:nth-child(4n+1) .p7-bar-track i{background:linear-gradient(90deg,#58a8f7,#6b7ff1)!important}
body.p23-product-shell #p7ProjectGridChart .p7-bar-row:nth-child(4n+2) .p7-bar-track i{background:linear-gradient(90deg,#7e7cf0,#9c62e8)!important}
body.p23-product-shell #p7ProjectGridChart .p7-bar-row:nth-child(4n+3) .p7-bar-track i{background:linear-gradient(90deg,#18a9cf,#58a8f7)!important}
body.p23-product-shell #p7ProjectGridChart .p7-bar-row:nth-child(4n+4) .p7-bar-track i{background:linear-gradient(90deg,#d255c8,#8a5de8)!important}
body.p23-product-shell #p7ProjectGridChart .p7-bar-row:hover{background:#fff!important;border-color:rgba(91,130,243,.13)!important;transform:translateY(-1px)!important}

/* Gap summary: colour tells meaning, card boundary tells grouping. */
body.p23-product-shell #p7ProjectGapList{display:grid!important;gap:8px!important}
body.p23-product-shell #p7ProjectGapList .p15-gap-priority{padding:12px!important;border-radius:15px!important;box-shadow:0 7px 18px rgba(64,82,119,.045)!important}
body.p23-product-shell #p7ProjectGapList .p15-gap-priority.danger{background:linear-gradient(135deg,#fff8f8,#fff3f4)!important;border-color:rgba(239,107,114,.18)!important}
body.p23-product-shell #p7ProjectGapList .p15-gap-priority.warn{background:linear-gradient(135deg,#fffaf0,#fff7e9)!important;border-color:rgba(240,162,61,.17)!important}
body.p23-product-shell #p7ProjectGapList .p15-gap-priority.good{background:linear-gradient(135deg,#f3f7ff,#f8f3ff)!important;border-color:rgba(111,111,238,.16)!important}

/* Filter bar and table get precise nested boundaries. */
body.p23-product-shell #p7ProjectFilters{gap:8px!important;background:linear-gradient(145deg,rgba(246,249,255,.92),rgba(250,248,255,.86))!important;border:1px solid rgba(76,94,133,.08)!important}
body.p23-product-shell #p7ProjectFilters label{padding:5px 7px!important;border-radius:12px!important;background:rgba(255,255,255,.78)!important;border:1px solid rgba(76,94,133,.065)!important;color:#5a6882!important}
body.p23-product-shell #p7ProjectFilters .p7-search{padding:0!important;overflow:hidden!important}
body.p23-product-shell #patrolPage .p7-table-wrap{border:1px solid rgba(76,94,133,.08)!important;border-radius:15px!important;overflow:hidden!important;background:rgba(255,255,255,.78)!important}
body.p23-product-shell #patrolPage th{font-size:13.5px!important;font-weight:650!important;background:linear-gradient(180deg,#f1f5fd,#f7f8fc)!important}
body.p23-product-shell #patrolPage td{font-weight:450!important;color:#34415b!important}

/* Store empty state: card-based even before data exists. */
body.p23-product-shell #p11StoreEmptyState{display:grid!important;gap:12px!important}
body.p23-product-shell #p11StoreEmptyState .p11-empty-hero{gap:12px!important}
body.p23-product-shell #p11StoreEmptyState .p11-empty-main,
body.p23-product-shell #p11StoreEmptyState .p11-empty-side{
  border-radius:20px!important;border:1px solid rgba(76,94,133,.085)!important;background:rgba(255,255,255,.86)!important;box-shadow:var(--p23-shadow)!important
}
body.p23-product-shell #p11StoreEmptyState .p11-empty-icon{background:linear-gradient(135deg,#58a8f7,#8a5de8)!important;color:#fff!important;box-shadow:0 9px 20px rgba(95,106,225,.18)!important}
body.p23-product-shell #p11StoreEmptyState .p14-empty-data-state{gap:9px!important}
body.p23-product-shell #p11StoreEmptyState .p14-empty-data-state>article{border-radius:15px!important;border:1px solid rgba(76,94,133,.08)!important;box-shadow:0 7px 18px rgba(64,82,119,.045)!important}
body.p23-product-shell #p11StoreEmptyState .p14-empty-data-state>article:nth-child(1){background:linear-gradient(145deg,#f6f9ff,#eef5ff)!important;border-top:3px solid #58a8f7!important}
body.p23-product-shell #p11StoreEmptyState .p14-empty-data-state>article:nth-child(2){background:linear-gradient(145deg,#fefaff,#f7f0ff)!important;border-top:3px solid #8a5de8!important}
body.p23-product-shell #p11StoreEmptyState .p14-empty-data-state>article:nth-child(3){background:linear-gradient(145deg,#fffdf8,#fff6e8)!important;border-top:3px solid #f0a23d!important}
body.p23-product-shell #p15StoreFuture>div{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:8px!important;margin-top:10px!important}
body.p23-product-shell #p15StoreFuture>div>span{padding:10px 11px!important;border-radius:12px!important;background:rgba(255,255,255,.83)!important;border:1px solid rgba(76,94,133,.075)!important;font-size:13.5px!important;font-weight:590!important;color:#4a5874!important}
body.p23-product-shell #p15StoreFuture>div>span:nth-child(1){border-left:4px solid #58a8f7!important}
body.p23-product-shell #p15StoreFuture>div>span:nth-child(2){border-left:4px solid #8a5de8!important}
body.p23-product-shell #p15StoreFuture>div>span:nth-child(3){border-left:4px solid #18a9cf!important}
body.p23-product-shell #p15StoreFuture>div>span:nth-child(4){border-left:4px solid #ef6b72!important}
body.p23-product-shell #p15StoreFuture>div>span:nth-child(5){border-left:4px solid #f0a23d!important}
body.p23-product-shell #p15StoreFuture>div>span:nth-child(6){border-left:4px solid #d255c8!important}

/* Responsibility table: each row reads like a governance card, not a spreadsheet strip. */
body.p23-product-shell #p7ResponsibilityGrid .p14-resp-switch{padding:9px!important;border-radius:14px!important;background:linear-gradient(135deg,#f5f8ff,#faf7ff)!important;border:1px solid rgba(76,94,133,.075)!important}
body.p23-product-shell #p7ResponsibilityGrid .p14-resp-switch button{border-radius:10px!important}
body.p23-product-shell #p7ResponsibilityGrid .p14-resp-switch button.active{background:linear-gradient(135deg,#596fca,#7658bd)!important;color:#fff!important;border-color:transparent!important}
body.p23-product-shell #p7ResponsibilityGrid .p9-responsibility-table-wrap{background:transparent!important}
body.p23-product-shell #p7ResponsibilityGrid tbody tr td{background:rgba(255,255,255,.86)!important;border-top:1px solid rgba(76,94,133,.065)!important;border-bottom:1px solid rgba(76,94,133,.065)!important}
body.p23-product-shell #p7ResponsibilityGrid tbody tr td:first-child{border-left:4px solid #ef6b72!important;border-radius:12px 0 0 12px!important}
body.p23-product-shell #p7ResponsibilityGrid tbody tr td:last-child{border-right:1px solid rgba(76,94,133,.065)!important;border-radius:0 12px 12px 0!important}
body.p23-product-shell #p7ResponsibilityGrid tbody tr+tr td{border-top-width:7px!important;border-top-color:transparent!important}

/* GIS: calm frame, vivid intelligence cards. */
body.p23-product-shell #patrolAnalysisZone .patrol-project-intelligence-map{border-radius:24px!important;border:1px solid rgba(76,94,133,.085)!important;background:rgba(255,255,255,.91)!important}
body.p23-product-shell #patrolAnalysisZone .patrol-map-intelligence-panel{border:1px solid rgba(76,94,133,.09)!important;background:linear-gradient(180deg,#fcfdff,#f7f5ff)!important;box-shadow:var(--p23-shadow)!important}
body.p23-product-shell #patrolAnalysisZone .patrol-map-priority-row{border-radius:14px!important;border:1px solid rgba(76,94,133,.075)!important;background:#fff!important;box-shadow:0 7px 18px rgba(64,82,119,.045)!important}
body.p23-product-shell #patrolAnalysisZone .patrol-map-priority-row:nth-child(1){border-left:4px solid #ef6b72!important}
body.p23-product-shell #patrolAnalysisZone .patrol-map-priority-row:nth-child(2){border-left:4px solid #f0a23d!important}
body.p23-product-shell #patrolProjectMapConclusion{
  border-radius:15px!important;border:1px solid rgba(91,130,243,.13)!important;border-left:4px solid #7f68e8!important;
  background:linear-gradient(135deg,#f3f7ff,#faf4ff)!important;color:#44516f!important;padding:12px 14px!important;box-shadow:0 7px 18px rgba(64,82,119,.045)!important
}

/* Output center: every capability is a distinct tool card; group headers stay calm. */
body.p23-product-shell #patrolOutputZone .p15-output-group{overflow:hidden!important}
body.p23-product-shell #patrolOutputZone .patrol-copy-grid{gap:9px!important}
body.p23-product-shell #patrolOutputZone .patrol-copy-card{
  position:relative!important;overflow:hidden!important;border-radius:17px!important;border:1px solid rgba(76,94,133,.08)!important;background:#fff!important;box-shadow:0 8px 20px rgba(64,82,119,.05)!important;padding-top:17px!important
}
body.p23-product-shell #patrolOutputZone .patrol-copy-card::before{content:"";position:absolute;left:0;right:0;top:0;height:4px;background:var(--p23-tone,#577cf4)!important}
body.p23-product-shell #patrolOutputZone .patrol-copy-card:nth-child(1){--p23-tone:#58a8f7;background:linear-gradient(145deg,#fff,#f3f8ff)!important}
body.p23-product-shell #patrolOutputZone .patrol-copy-card:nth-child(2){--p23-tone:#8a5de8;background:linear-gradient(145deg,#fff,#f8f2ff)!important}
body.p23-product-shell #patrolOutputZone .patrol-copy-card:nth-child(3){--p23-tone:#18a9cf;background:linear-gradient(145deg,#fff,#f0fbff)!important}
body.p23-product-shell #patrolOutputZone .patrol-copy-card:nth-child(4){--p23-tone:#d255c8;background:linear-gradient(145deg,#fff,#fff2fd)!important}
body.p23-product-shell #patrolOutputZone .patrol-command-export-panel{border-top:4px solid #5b82f3!important}
body.p23-product-shell #patrolOutputZone .patrol-card-export-panel{border-top:4px solid #8a5de8!important}
body.p23-product-shell #patrolOutputZone .p7-focus-export-panel{border-top:4px solid #ef6b72!important}
body.p23-product-shell #patrolOutputZone .patrol-brief-panel{border-top:4px solid #18a9cf!important}
body.p23-product-shell #patrolOutputZone .patrol-writing-note{border-radius:11px!important;padding:9px 10px!important;background:linear-gradient(135deg,#f2f6ff,#f8f4ff)!important;border:1px solid rgba(91,130,243,.08)!important}

/* History: future capability is expressed as ordered cards instead of bare text. */
body.p23-product-shell #patrolCompareZone .p11-history-baseline-head{border-radius:18px 18px 0 0!important;background:linear-gradient(135deg,#f3f7ff,#faf4ff)!important}
body.p23-product-shell #patrolCompareZone .p11-history-count{background:linear-gradient(135deg,#5b82f3,#8a5de8)!important;color:#fff!important;border:0!important}
body.p23-product-shell #patrolCompareZone .p11-history-next{padding:16px!important;border-radius:17px!important;background:rgba(250,252,255,.82)!important;border:1px solid rgba(76,94,133,.075)!important}
body.p23-product-shell #patrolCompareZone .p11-history-next-grid{gap:8px!important}
body.p23-product-shell #patrolCompareZone .p11-history-next-grid>span{padding:10px 11px!important;border-radius:12px!important;background:#fff!important;border:1px solid rgba(76,94,133,.075)!important;box-shadow:0 6px 15px rgba(64,82,119,.04)!important;color:#4a5874!important}
body.p23-product-shell #patrolCompareZone .p11-history-next-grid>span:nth-child(1){border-left:4px solid #58a8f7!important}
body.p23-product-shell #patrolCompareZone .p11-history-next-grid>span:nth-child(2){border-left:4px solid #18a9cf!important}
body.p23-product-shell #patrolCompareZone .p11-history-next-grid>span:nth-child(3){border-left:4px solid #8a5de8!important}
body.p23-product-shell #patrolCompareZone .p11-history-next-grid>span:nth-child(4){border-left:4px solid #ef6b72!important}
body.p23-product-shell #patrolCompareZone .p11-history-next-grid>span:nth-child(5){border-left:4px solid #f0a23d!important}
body.p23-product-shell #patrolCompareZone .p11-history-next-grid>span:nth-child(6){border-left:4px solid #d255c8!important}

/* Input: recognition chips and destination cards create a visual workflow. */
body.p23-product-shell #patrolInputZone .p7-input-heading{border-radius:24px!important;padding:18px 20px!important;background:linear-gradient(135deg,rgba(255,255,255,.88),rgba(247,245,255,.78))!important;border:1px solid rgba(255,255,255,.94)!important;box-shadow:var(--p23-shadow)!important}
body.p23-product-shell #patrolInputZone .p7-input-trust{gap:7px!important}
body.p23-product-shell #patrolInputZone .p7-input-trust>span{padding:7px 9px!important;border-radius:10px!important;background:rgba(255,255,255,.82)!important;border:1px solid rgba(76,94,133,.07)!important}
body.p23-product-shell #p15InputLive{padding:12px!important;border-radius:15px!important;background:linear-gradient(135deg,#f4f8ff,#faf5ff)!important;border:1px solid rgba(91,130,243,.10)!important}
body.p23-product-shell #p15InputLive>div{display:flex!important;gap:7px!important;flex-wrap:wrap!important;align-items:center!important}
body.p23-product-shell #p15InputLive b{padding:6px 9px!important;border-radius:9px!important;background:#fff!important;border:1px solid rgba(76,94,133,.07)!important;color:#465470!important;font-size:13.5px!important;font-weight:600!important}
body.p23-product-shell #p15InputLive b:nth-of-type(1){border-left:3px solid #58a8f7!important}
body.p23-product-shell #p15InputLive b:nth-of-type(2){border-left:3px solid #8a5de8!important}
body.p23-product-shell #p15InputLive b:nth-of-type(3){border-left:3px solid #f0a23d!important}
body.p23-product-shell #p15InputLive b:nth-of-type(4){border-left:3px solid #18a9cf!important}
body.p23-product-shell #p15InputLive b:nth-of-type(5){border-left:3px solid #d255c8!important}
body.p23-product-shell #patrolInputZone .p7-guide-grid{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:8px!important}
body.p23-product-shell #patrolInputZone .p7-guide-grid>article{position:relative!important;padding:12px 12px 12px 15px!important;border-radius:13px!important;background:#fff!important;border:1px solid rgba(76,94,133,.075)!important;box-shadow:0 6px 15px rgba(64,82,119,.04)!important}
body.p23-product-shell #patrolInputZone .p7-guide-grid>article::before{content:"";position:absolute;left:0;top:10px;bottom:10px;width:4px;border-radius:999px;background:var(--p23-tone,#5b82f3)!important}
body.p23-product-shell #patrolInputZone .p7-guide-grid>article:nth-child(1){--p23-tone:#5b82f3}
body.p23-product-shell #patrolInputZone .p7-guide-grid>article:nth-child(2){--p23-tone:#18a9cf}
body.p23-product-shell #patrolInputZone .p7-guide-grid>article:nth-child(3){--p23-tone:#8a5de8}
body.p23-product-shell #patrolInputZone .p7-guide-grid>article:nth-child(4){--p23-tone:#ef6b72}
body.p23-product-shell #patrolInputZone .p7-guide-grid>article:nth-child(5){--p23-tone:#f0a23d}
body.p23-product-shell #patrolInputZone .p7-guide-grid>article:nth-child(6){--p23-tone:#d255c8}
body.p23-product-shell #patrolInputZone .p7-guide-grid b{font-size:14px!important;font-weight:640!important;color:#394761!important}

/* Details/collapsibles: clear closed boundary, no loose text. */
body.p23-product-shell #patrolPage details{border-radius:16px!important;border:1px solid rgba(76,94,133,.085)!important;background:rgba(255,255,255,.76)!important;box-shadow:0 7px 18px rgba(64,82,119,.04)!important;overflow:hidden!important}
body.p23-product-shell #patrolPage details>summary{padding:12px 14px!important;background:linear-gradient(90deg,#fafcff,#fbf8ff)!important}

/* Responsive: preserve hierarchy by reflowing cards, never shrinking to random tiny type. */
@media(max-width:980px){
 body.p23-product-shell #patrolLeadershipSummary .p15-management-brief>div{grid-template-columns:1fr!important}
 body.p23-product-shell #p15StoreFuture>div{grid-template-columns:repeat(2,minmax(0,1fr))!important}
 body.p23-product-shell #patrolInputZone .p7-guide-grid{grid-template-columns:1fr!important}
}
@media(max-width:720px){
 body.p23-product-shell #p15CompletenessBar>small{margin-left:0!important;width:100%!important}
 body.p23-product-shell #p15StoreFuture>div{grid-template-columns:1fr!important}
 body.p23-product-shell #patrolPage .p7-module-head h2{font-size:28px!important}
 body.p23-product-shell #patrolPage :is(.p4-viz-kpis,.p7-domain-kpis,.p7-responsibility-kpis)>article strong{font-size:33px!important}
}
@media(prefers-reduced-motion:reduce){body.p23-product-shell *,body.p23-product-shell *::before,body.p23-product-shell *::after{transition-duration:.01ms!important;animation:none!important}}

/* P23.1 — disabled actions must look unavailable, never like live primary actions. */
body.p23-product-shell #patrolPage .btn:disabled,
body.p23-product-shell #patrolPage .p17-disabled-action,
body.p23-product-shell #patrolPage [aria-disabled="true"].btn{
  color:#8a95aa!important;
  background:linear-gradient(145deg,rgba(240,243,249,.96),rgba(246,247,251,.92))!important;
  border-color:rgba(83,98,130,.085)!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.94)!important;
  opacity:1!important;cursor:not-allowed!important;transform:none!important;
}
body.p23-product-shell #patrolPage .btn:disabled:hover,
body.p23-product-shell #patrolPage .p17-disabled-action:hover,
body.p23-product-shell #patrolPage [aria-disabled="true"].btn:hover{
  color:#8a95aa!important;background:linear-gradient(145deg,rgba(240,243,249,.96),rgba(246,247,251,.92))!important;
  border-color:rgba(83,98,130,.085)!important;box-shadow:inset 0 1px 0 rgba(255,255,255,.94)!important;transform:none!important;
}

/* P23.2 — vivid internal project bars; missing daily patrol does not force the unrelated count chart to look grey. */
body.p23-product-shell #patrolPage #p7ProjectGridChart .p7-bar-row.data-missing:nth-child(4n+1) .p7-bar-track i{background:linear-gradient(90deg,#46a8ff,#5c7bf2)!important;opacity:1!important}
body.p23-product-shell #patrolPage #p7ProjectGridChart .p7-bar-row.data-missing:nth-child(4n+2) .p7-bar-track i{background:linear-gradient(90deg,#7279f0,#9a5be6)!important;opacity:1!important}
body.p23-product-shell #patrolPage #p7ProjectGridChart .p7-bar-row.data-missing:nth-child(4n+3) .p7-bar-track i{background:linear-gradient(90deg,#10b5d6,#47a8f4)!important;opacity:1!important}
body.p23-product-shell #patrolPage #p7ProjectGridChart .p7-bar-row.data-missing:nth-child(4n+4) .p7-bar-track i{background:linear-gradient(90deg,#d64fc2,#865ee7)!important;opacity:1!important}
/* P23.1b — specificity firewall for disabled primary actions inherited from earlier shells. */
html body.p23-product-shell #patrolPage button.btn.p17-disabled-action:disabled,
html body.p23-product-shell #patrolPage button.btn.primary.p17-disabled-action:disabled,
html body.p23-product-shell #patrolPage button.btn[aria-disabled="true"].p17-disabled-action{
  color:#8a95aa!important;
  background:linear-gradient(145deg,rgba(238,242,249,.98),rgba(246,247,251,.95))!important;
  border-color:rgba(83,98,130,.09)!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.96)!important;
  opacity:1!important;cursor:not-allowed!important;transform:none!important;
}


/* P23.3 — explicit disabled-store state: two-ID specificity beats legacy long-shell primary rules. */
html body.p23-product-shell #patrolPage #p7StoreExportCsvBtn.btn.primary.p17-disabled-action:disabled,
html body.p23-product-shell #patrolPage #p7StoreGoMapBtn.btn.p17-disabled-action:disabled{
  background:linear-gradient(145deg,rgba(238,242,249,.99),rgba(247,248,252,.98))!important;
  background-image:linear-gradient(145deg,rgba(238,242,249,.99),rgba(247,248,252,.98))!important;
  background-color:#f3f5fa!important;
  color:#5b6782!important;
  border-color:rgba(83,98,130,.10)!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.98)!important;
  opacity:1!important;cursor:not-allowed!important;filter:none!important;transform:none!important;
}


/* ==========================================================================
   P24 — PRECISION COMPONENT HIERARCHY / ICON SEMANTICS / VISUAL ANALYTICS
   Goal: every detail has a boundary; every boundary has a reason.
   ========================================================================== */
html.p24-precision-ui{
 --p24-ink:#162037;--p24-muted:#687590;--p24-line:rgba(64,80,118,.105);
 --p24-blue:#397bff;--p24-cyan:#06a8d5;--p24-violet:#7b5af0;--p24-magenta:#d84abf;
 --p24-coral:#f05e68;--p24-orange:#f59a31;--p24-green:#34b77a;
 --p24-card:rgba(255,255,255,.91);--p24-glass:rgba(250,252,255,.78);
 --p24-shadow:0 12px 30px rgba(54,72,111,.075),0 2px 7px rgba(54,72,111,.035);
 --p24-shadow-hover:0 16px 38px rgba(54,72,111,.105),0 3px 9px rgba(54,72,111,.04);
}
html body.p24-product-shell{
 background:
  radial-gradient(circle at 7% -4%,rgba(92,158,255,.22),transparent 29rem),
  radial-gradient(circle at 96% 3%,rgba(176,122,255,.20),transparent 34rem),
  radial-gradient(circle at 54% 105%,rgba(85,195,239,.10),transparent 35rem),
  linear-gradient(150deg,#f9fbff 0%,#f2f5fb 52%,#faf7ff 100%)!important;
}
/* Typography: calm, predictable, emphasis-only bold. */
body.p24-product-shell #patrolPage :is(p,li,td,label,button,input,select,textarea){font-size:14px!important;line-height:1.56!important}
body.p24-product-shell #patrolPage small{font-size:13.25px!important;line-height:1.5!important}
body.p24-product-shell #patrolPage b{font-weight:590!important}
body.p24-product-shell #patrolPage strong{font-weight:680!important}
body.p24-product-shell #patrolPage h2{font-weight:720!important;letter-spacing:-.026em!important}
body.p24-product-shell #patrolPage h3{font-size:18px!important;font-weight:680!important;line-height:1.34!important}
body.p24-product-shell #patrolPage h4{font-size:15.5px!important;font-weight:650!important;line-height:1.4!important}
body.p24-product-shell #patrolPage .p7-module-head h2{font-size:32px!important;line-height:1.12!important}
body.p24-product-shell #patrolPage .p7-module-head p{font-size:14px!important;line-height:1.58!important;color:#596780!important}
body.p24-product-shell #patrolPage .section-number{display:none!important}
/* Consistent semantic icon tiles. */
body.p24-product-shell :is(.p24-module-icon,.p24-panel-icon,.p24-kpi-icon,.p24-mini-icon,.p24-output-icon,.p24-map-title-icon,.p24-insight-icon){
 display:inline-grid;place-items:center;flex:0 0 auto;border:1px solid rgba(85,107,165,.10);color:#536fd2;
 background:linear-gradient(145deg,rgba(238,245,255,.97),rgba(247,241,255,.94));box-shadow:inset 0 1px 0 rgba(255,255,255,.95),0 5px 13px rgba(67,84,126,.055)
}
body.p24-product-shell :is(.p24-module-icon,.p24-map-title-icon){width:42px;height:42px;border-radius:14px;color:#5f65df;background:linear-gradient(145deg,#edf5ff,#f4edff)}
body.p24-product-shell .p24-panel-icon{width:32px;height:32px;border-radius:10px;color:#4d79dc}
body.p24-product-shell .p24-kpi-icon{position:absolute;right:14px;top:13px;width:34px;height:34px;border-radius:11px;color:var(--p23-tone,#5b82f3);z-index:3}
body.p24-product-shell .p24-mini-icon{width:31px;height:31px;border-radius:10px;margin-bottom:8px}
body.p24-product-shell .p24-output-icon{width:34px;height:34px;border-radius:11px;margin-right:9px}
body.p24-product-shell .p24-insight-icon{width:28px;height:28px;border-radius:9px;float:left;margin-right:8px}
body.p24-product-shell :is(.p24-module-icon,.p24-panel-icon,.p24-kpi-icon,.p24-mini-icon,.p24-output-icon,.p24-map-title-icon,.p24-insight-icon) svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
body.p24-product-shell .p24-module-icon svg{width:21px;height:21px}
/* Module header: compact software hero, icon + content + actions. */
body.p24-product-shell #patrolPage .p7-module-head{display:grid!important;grid-template-columns:auto minmax(0,1fr) auto!important;align-items:center!important;column-gap:14px!important;padding:20px 22px!important;border-radius:24px!important;min-height:126px!important}
body.p24-product-shell #patrolPage .p7-module-head>.grow{min-width:0!important}
body.p24-product-shell #patrolPage .p7-module-head .patrol-module-actions{align-self:center!important}
body.p24-product-shell #patrolInputZone .p7-input-heading{display:grid!important;grid-template-columns:auto minmax(0,1fr) auto!important;gap:14px!important;align-items:center!important;padding:18px 20px!important}
body.p24-product-shell #patrolInputZone .p7-input-heading>.p24-module-icon{grid-column:1}
body.p24-product-shell #patrolInputZone .p7-input-heading>div:first-of-type{grid-column:2}
body.p24-product-shell #patrolInputZone .p7-input-trust{grid-column:3}
/* Panel headers now look like proper component headers, not text pasted on a card. */
body.p24-product-shell #patrolPage .patrol-panel-head{display:grid!important;grid-template-columns:auto minmax(0,1fr) auto!important;align-items:center!important;gap:10px!important;padding:14px 15px!important;border-bottom:1px solid rgba(73,90,132,.075)!important;background:linear-gradient(180deg,rgba(252,253,255,.94),rgba(248,250,255,.80))!important}
body.p24-product-shell #patrolPage .patrol-panel-head>div{min-width:0!important}
body.p24-product-shell #patrolPage .patrol-panel-head h3{margin:0 0 2px!important}
/* KPI: icon identity replaces excessive decorative top stripes. */
body.p24-product-shell #patrolPage :is(.p4-viz-kpis,.p7-domain-kpis,.p7-responsibility-kpis,.p11-history-metrics)>article::before{height:3px!important;opacity:.8!important}
body.p24-product-shell #patrolPage :is(.p4-viz-kpis,.p7-domain-kpis,.p7-responsibility-kpis,.p11-history-metrics)>article{padding:18px 16px 15px!important;min-height:124px!important;box-shadow:var(--p24-shadow)!important}
body.p24-product-shell #patrolPage :is(.p4-viz-kpis,.p7-domain-kpis,.p7-responsibility-kpis)>article strong{font-size:38px!important;line-height:1!important;margin-top:13px!important}
body.p24-product-shell #patrolPage :is(.p4-viz-kpis,.p7-domain-kpis,.p7-responsibility-kpis)>article span{font-size:13.5px!important;color:#536079!important;font-weight:600!important}
/* Overview: remove triple-repeat of the exact same action list; keep chart priority + management conclusion. */
body.p24-product-shell #patrolDashboard>.hf31-action-section-title,
body.p24-product-shell #patrolDashboard>#patrolActionHighlights{display:none!important}
body.p24-product-shell #patrolLeadershipSummary{margin-top:16px!important}
body.p24-product-shell #patrolLeadershipSummary .p15-management-brief{padding:18px!important;border-radius:22px!important;border:1px solid rgba(91,112,164,.09)!important;background:linear-gradient(135deg,rgba(255,255,255,.95),rgba(249,247,255,.90))!important;box-shadow:var(--p24-shadow)!important}
body.p24-product-shell #patrolLeadershipSummary .p15-management-brief>strong{font-size:18px!important;line-height:1.55!important;margin-top:10px!important}
body.p24-product-shell #patrolLeadershipSummary .p15-management-brief p{position:relative!important;padding:12px 12px 12px 40px!important;min-height:54px!important}
body.p24-product-shell #patrolLeadershipSummary .p15-management-brief p::before{position:absolute;left:12px;top:12px;width:20px;height:20px;border-radius:7px;display:grid;place-items:center;font-size:11px;font-weight:700;background:#eef3ff;color:#5674d6}
body.p24-product-shell #patrolLeadershipSummary .p15-management-brief p:nth-child(1)::before{content:'1';background:#fff0f1;color:#bd4551}
body.p24-product-shell #patrolLeadershipSummary .p15-management-brief p:nth-child(2)::before{content:'2';background:#fff5df;color:#a56d16}
body.p24-product-shell #patrolLeadershipSummary .p15-management-brief p:nth-child(3)::before{content:'3';background:#f1edff;color:#6c4ccc}
/* Chart panels: stronger data graphics, quieter surrounding chrome. */
body.p24-product-shell #patrolDashboard .p4-chart-panel{border-radius:20px!important;border:1px solid rgba(72,89,132,.085)!important;box-shadow:var(--p24-shadow)!important;background:rgba(255,255,255,.91)!important;overflow:hidden!important}
body.p24-product-shell #patrolDashboard .p4-stack{height:14px!important;border-radius:999px!important;background:#edf1f7!important;box-shadow:inset 0 1px 2px rgba(50,65,100,.06)!important}
body.p24-product-shell #patrolDashboard .p4-stack i.zero{background:linear-gradient(90deg,#f05e68,#ff7d74)!important}
body.p24-product-shell #patrolDashboard .p4-stack i.one{background:linear-gradient(90deg,#f59a31,#f6bd43)!important}
body.p24-product-shell #patrolDashboard .p4-stack i.good{background:linear-gradient(90deg,#4e86ff,#7b5af0)!important}
body.p24-product-shell #patrolDashboard .p4-stack-legend span{padding:6px 8px;border-radius:10px;background:#f7f9fd;border:1px solid rgba(74,90,132,.06)}
/* Project microcards and gap cards: clear left identity + number on the same visual rhythm. */
body.p24-product-shell #p7ProjectGridChart .p7-bar-row{position:relative!important;padding:10px 11px 10px 36px!important;min-height:42px!important;background:#fbfcff!important}
body.p24-product-shell #p7ProjectGridChart .p7-bar-row::before{content:'网';position:absolute;left:9px;top:8px;width:20px;height:20px;border-radius:7px;display:grid;place-items:center;background:linear-gradient(145deg,#eaf3ff,#f2edff);color:#5870cf;font-size:10px;font-weight:700}
body.p24-product-shell #p7ProjectGapList .p15-gap-priority{position:relative!important;padding:13px 12px 13px 43px!important;min-height:64px!important}
body.p24-product-shell #p7ProjectGapList .p15-gap-priority::before{position:absolute;left:13px;top:13px;width:22px;height:22px;border-radius:8px;display:grid;place-items:center;font-size:11px;font-weight:800}
body.p24-product-shell #p7ProjectGapList .p15-gap-priority.danger::before{content:'!';background:#ffe8ea;color:#bd4551}
body.p24-product-shell #p7ProjectGapList .p15-gap-priority.warn::before{content:'↗';background:#fff1d9;color:#a76b12}
body.p24-product-shell #p7ProjectGapList .p15-gap-priority.good::before{content:'✓';background:#eceaff;color:#6550c8}
/* Filters: one toolbar, not a collection of unrelated tiny boxes. */
body.p24-product-shell #p7ProjectFilters{padding:9px!important;border-radius:16px!important;box-shadow:inset 0 1px 0 rgba(255,255,255,.95)!important}
body.p24-product-shell #p7ProjectFilters label{min-height:42px!important;display:flex!important;align-items:center!important;gap:7px!important;padding:4px 9px!important;background:rgba(255,255,255,.72)!important}
/* Store / input capability cards get actual icon rhythm. */
body.p24-product-shell #p11StoreEmptyState .p14-empty-data-state>article,
body.p24-product-shell #patrolInputZone .p7-guide-grid>article{display:grid!important;grid-template-columns:auto 1fr!important;grid-template-rows:auto auto!important;column-gap:10px!important;align-items:center!important;padding:13px!important}
body.p24-product-shell #p11StoreEmptyState .p14-empty-data-state>article>.p24-mini-icon,
body.p24-product-shell #patrolInputZone .p7-guide-grid>article>.p24-mini-icon{grid-row:1/3!important;grid-column:1!important;margin:0!important}
body.p24-product-shell #p11StoreEmptyState .p14-empty-data-state>article>b,
body.p24-product-shell #patrolInputZone .p7-guide-grid>article>b{grid-column:2!important}
body.p24-product-shell #p11StoreEmptyState .p14-empty-data-state>article>small,
body.p24-product-shell #patrolInputZone .p7-guide-grid>article>small{grid-column:2!important}
/* Responsibility explanation becomes a deliberate info card. */
body.p24-product-shell #p15ResponsibilityAnchor{position:relative!important;padding:14px 16px 14px 52px!important;border-radius:18px!important;background:linear-gradient(135deg,#f8fbff,#faf7ff)!important}
body.p24-product-shell #p15ResponsibilityAnchor::before{content:'i';position:absolute;left:16px;top:15px;width:25px;height:25px;border-radius:9px;display:grid;place-items:center;background:linear-gradient(145deg,#e9f3ff,#efeaff);color:#5a67d2;font-weight:800;font-family:Georgia,serif}
/* GIS: eliminate the blank header slab; make map title/actions a compact workbench toolbar. */
body.p24-product-shell #patrolAnalysisZone .patrol-project-intelligence-map>.patrol-map-intelligence-head{display:grid!important;grid-template-columns:auto minmax(0,1fr) auto!important;align-items:center!important;gap:12px!important;padding:16px 18px!important;min-height:0!important;background:linear-gradient(135deg,rgba(255,255,255,.95),rgba(248,247,255,.89))!important}
body.p24-product-shell #patrolAnalysisZone .patrol-project-intelligence-map>.patrol-map-intelligence-head::before{content:'';width:34px;height:34px;border-radius:11px;background:linear-gradient(145deg,#eaf3ff,#f0eaff);box-shadow:inset 0 1px 0 #fff}
body.p24-product-shell #patrolAnalysisZone .patrol-project-intelligence-map>.patrol-map-intelligence-head>div{grid-column:2!important;text-align:left!important;max-width:none!important}
body.p24-product-shell #patrolAnalysisZone .patrol-project-intelligence-map>.patrol-map-intelligence-head>span{grid-column:3!important;margin:0!important;align-self:center!important}
body.p24-product-shell #patrolAnalysisZone .p18-spatial-head-tools{grid-column:3!important;display:flex!important;flex-direction:column!important;align-items:flex-end!important;gap:8px!important;min-width:310px!important}
body.p24-product-shell #patrolAnalysisZone .p18-spatial-head-tools #patrolProjectMapStatus{order:0!important}
body.p24-product-shell #patrolAnalysisZone .p18-map-toolbar{order:1!important;display:flex!important;gap:7px!important;flex-wrap:wrap!important;justify-content:flex-end!important}
body.p24-product-shell #patrolAnalysisZone .patrol-map-explore-bar{padding:10px 12px!important;border-radius:0!important;background:linear-gradient(180deg,#f8faff,#f5f7fc)!important;border-block:1px solid rgba(72,89,132,.07)!important}
body.p24-product-shell #patrolAnalysisZone .patrol-map-filter-group button{min-height:36px!important;border-radius:11px!important;background:#fff!important;border:1px solid rgba(75,92,135,.075)!important;box-shadow:0 3px 9px rgba(54,72,111,.025)!important}
body.p24-product-shell #patrolAnalysisZone .patrol-map-filter-group button:nth-child(2){color:#a55f14!important}
body.p24-product-shell #patrolAnalysisZone .patrol-map-filter-group button:nth-child(3){color:#c64f5a!important}
body.p24-product-shell #patrolAnalysisZone .patrol-map-filter-group button:nth-child(4){color:#c64f5a!important}
body.p24-product-shell #patrolAnalysisZone .patrol-map-filter-group button:nth-child(5){color:#a16812!important}
body.p24-product-shell #patrolAnalysisZone .patrol-map-filter-group button:nth-child(6){color:#5d59cc!important}
body.p24-product-shell #patrolAnalysisZone .patrol-map-filter-group button.active{background:linear-gradient(135deg,#edf4ff,#f2edff)!important;border-color:rgba(95,100,220,.18)!important;color:#4f5fc1!important;box-shadow:inset 0 0 0 1px rgba(95,100,220,.06)!important}
body.p24-product-shell #patrolAnalysisZone .patrol-map-intelligence-layout{grid-template-columns:minmax(0,2.45fr) minmax(330px,.95fr)!important;gap:12px!important;padding:12px!important}
body.p24-product-shell #patrolAnalysisZone .patrol-map-canvas-shell{border-radius:18px!important;box-shadow:0 10px 28px rgba(52,69,106,.075)!important;border:1px solid rgba(71,88,129,.09)!important}
body.p24-product-shell #patrolAnalysisZone .patrol-map-intelligence-panel{border-radius:18px!important;border:1px solid rgba(72,89,132,.09)!important;background:linear-gradient(150deg,rgba(255,255,255,.96),rgba(248,247,255,.91))!important;box-shadow:var(--p24-shadow)!important;padding:12px!important}
body.p24-product-shell #patrolAnalysisZone .patrol-map-intelligence-title{display:grid!important;grid-template-columns:auto 1fr!important;gap:9px!important;align-items:center!important;padding:4px 2px 11px!important;border-bottom:1px solid rgba(72,89,132,.075)!important}
body.p24-product-shell #patrolAnalysisZone .p24-map-title-icon{width:34px;height:34px;border-radius:11px}
body.p24-product-shell #patrolAnalysisZone .patrol-map-rich-legend>div{padding:8px 9px!important;border-radius:12px!important;background:#fbfcff!important;border:1px solid rgba(72,89,132,.06)!important}
body.p24-product-shell #patrolAnalysisZone .patrol-map-priority-list>button{border-radius:15px!important;box-shadow:0 6px 16px rgba(54,72,111,.045)!important}
body.p24-product-shell #patrolAnalysisZone .patrol-map-conclusion-primary{margin:0 12px 12px!important;border-radius:16px!important;border:1px solid rgba(94,100,218,.11)!important;background:linear-gradient(135deg,#eef5ff,#f7f0ff)!important;padding:12px 14px!important}
body.p24-product-shell #patrolAnalysisZone .patrol-map-actions{margin:0 12px 14px!important;padding:10px!important;border-radius:15px!important;background:rgba(255,255,255,.82)!important;border:1px solid rgba(72,89,132,.075)!important}
/* Output: cards read as purpose-built tools, icon + heading + action hierarchy. */
body.p24-product-shell #patrolOutputZone .p7-output-group{border-radius:22px!important;border:1px solid rgba(72,89,132,.08)!important;box-shadow:var(--p24-shadow)!important;background:rgba(255,255,255,.88)!important;overflow:hidden!important}
body.p24-product-shell #patrolOutputZone .p7-output-group>h2,
body.p24-product-shell #patrolOutputZone .p7-output-group>h3{display:inline-flex!important;align-items:center!important;margin-top:0!important}
body.p24-product-shell #patrolOutputZone .p7-output-group>.p24-output-icon{float:left;margin:13px 8px 0 14px!important}
body.p24-product-shell #patrolOutputZone .p7-output-group .p7-output-card{transition:transform .16s ease,box-shadow .16s ease,border-color .16s ease!important}
body.p24-product-shell #patrolOutputZone .p7-output-group .p7-output-card:hover{transform:translateY(-2px)!important;box-shadow:var(--p24-shadow-hover)!important;border-color:rgba(88,104,170,.13)!important}
/* History baseline: each metric has icon identity, next-stage cards stay ordered. */
body.p24-product-shell #patrolCompareZone .p11-history-metrics>article{padding-right:54px!important}
/* Buttons: restrained tactile feel, no glow. */
@media(hover:hover){
 body.p24-product-shell #patrolPage .btn:not(:disabled):hover{transform:translateY(-1px)!important;box-shadow:0 7px 18px rgba(65,79,118,.08)!important}
 body.p24-product-shell #patrolPage .btn.primary:not(:disabled):hover{box-shadow:0 9px 22px rgba(87,77,202,.18)!important}
}
body.p24-product-shell #patrolPage .btn:not(:disabled):active{transform:translateY(0) scale(.985)!important;box-shadow:none!important}
/* Responsive: preserve hierarchy, no tiny type. */
@media(max-width:1120px){body.p24-product-shell #patrolAnalysisZone .p18-spatial-head-tools{min-width:0!important}body.p24-product-shell #patrolAnalysisZone .patrol-map-intelligence-layout{grid-template-columns:1fr!important}}
@media(max-width:820px){body.p24-product-shell #patrolPage .p7-module-head{grid-template-columns:auto minmax(0,1fr)!important;min-height:0!important}body.p24-product-shell #patrolPage .p7-module-head .patrol-module-actions{grid-column:1/-1!important;justify-self:stretch!important}body.p24-product-shell #patrolInputZone .p7-input-heading{grid-template-columns:auto minmax(0,1fr)!important}body.p24-product-shell #patrolInputZone .p7-input-trust{grid-column:1/-1!important}}
@media(max-width:640px){body.p24-product-shell .p24-module-icon{width:36px;height:36px;border-radius:12px}body.p24-product-shell #patrolPage .p7-module-head h2{font-size:27px!important}body.p24-product-shell #patrolPage :is(.p4-viz-kpis,.p7-domain-kpis,.p7-responsibility-kpis)>article strong{font-size:32px!important}}
@media(prefers-reduced-motion:reduce){body.p24-product-shell *{transition:none!important}}


/* P24.1 — last-mile layout corrections after full-page visual QA. */
body.p24-product-shell #patrolPage .p7-module-head>.p24-module-icon{grid-column:1!important;grid-row:1!important;align-self:center!important}
body.p24-product-shell #patrolPage .p7-module-head>.grow{grid-column:2!important;grid-row:1!important}
body.p24-product-shell #patrolPage .p7-module-head>.patrol-module-actions{grid-column:3!important;grid-row:1!important}
body.p24-product-shell #patrolInputZone .p7-input-heading>.p24-module-icon{grid-column:1!important;grid-row:1!important}
body.p24-product-shell #patrolInputZone .p7-input-heading>div:first-of-type{grid-column:2!important;grid-row:1!important}
body.p24-product-shell #patrolInputZone .p7-input-heading>.p7-input-trust{grid-column:3!important;grid-row:1!important}
body.p24-product-shell #patrolPage .patrol-panel-head>div{text-align:left!important}
/* GIS: one icon, one title block, one tools block; no phantom grid item or oversized blank slab. */
html body.p24-product-shell #patrolAnalysisZone section.patrol-project-intelligence-map>div.patrol-map-intelligence-head{
 display:grid!important;grid-template-columns:34px minmax(0,1fr) minmax(300px,auto)!important;grid-auto-rows:auto!important;
 align-items:center!important;gap:12px!important;min-height:0!important;height:auto!important;padding:15px 17px!important;justify-content:stretch!important
}
html body.p24-product-shell #patrolAnalysisZone section.patrol-project-intelligence-map>div.patrol-map-intelligence-head::before{display:none!important;content:none!important}
html body.p24-product-shell #patrolAnalysisZone section.patrol-project-intelligence-map>div.patrol-map-intelligence-head>.p24-panel-icon{grid-column:1!important;grid-row:1!important;width:34px!important;height:34px!important;margin:0!important}
html body.p24-product-shell #patrolAnalysisZone section.patrol-project-intelligence-map>div.patrol-map-intelligence-head>div:not(.p18-spatial-head-tools){grid-column:2!important;grid-row:1!important;text-align:left!important;margin:0!important;align-self:center!important}
html body.p24-product-shell #patrolAnalysisZone section.patrol-project-intelligence-map>div.patrol-map-intelligence-head>.p18-spatial-head-tools{
 grid-column:3!important;grid-row:1!important;display:flex!important;flex-direction:column!important;align-items:flex-end!important;justify-content:center!important;
 gap:7px!important;min-width:300px!important;max-width:455px!important;margin:0!important;padding:0!important
}
html body.p24-product-shell #patrolAnalysisZone .p18-spatial-head-tools #patrolProjectMapStatus{font-size:13px!important;line-height:1.35!important;padding:7px 9px!important;white-space:normal!important;text-align:right!important}
html body.p24-product-shell #patrolAnalysisZone .p18-map-toolbar{display:flex!important;gap:7px!important;justify-content:flex-end!important;flex-wrap:wrap!important;width:auto!important;margin:0!important;padding:0!important}
/* Output: keep icons at group level only. Individual tool cards retain full text width. */
body.p24-product-shell #patrolOutputZone .p7-output-card>.p24-output-icon{display:none!important}
body.p24-product-shell #patrolOutputZone .p7-output-card{display:block!important}
body.p24-product-shell #patrolOutputZone .p7-output-card h3{font-size:17px!important;line-height:1.32!important;max-width:none!important}
body.p24-product-shell #patrolOutputZone .p7-output-card p{max-width:none!important}
@media(max-width:1120px){
 html body.p24-product-shell #patrolAnalysisZone section.patrol-project-intelligence-map>div.patrol-map-intelligence-head{grid-template-columns:34px minmax(0,1fr)!important}
 html body.p24-product-shell #patrolAnalysisZone section.patrol-project-intelligence-map>div.patrol-map-intelligence-head>.p18-spatial-head-tools{grid-column:1/-1!important;grid-row:2!important;align-items:flex-start!important;max-width:none!important;min-width:0!important}
 html body.p24-product-shell #patrolAnalysisZone .p18-spatial-head-tools #patrolProjectMapStatus{text-align:left!important}
 html body.p24-product-shell #patrolAnalysisZone .p18-map-toolbar{justify-content:flex-start!important}
}
@media(max-width:820px){
 body.p24-product-shell #patrolPage .p7-module-head>.patrol-module-actions{grid-column:1/-1!important;grid-row:2!important}
 body.p24-product-shell #patrolInputZone .p7-input-heading>.p7-input-trust{grid-column:1/-1!important;grid-row:2!important}
}
/* P24.2 — loaded input view should not inherit the guide card's height. */
body.p24-product-shell #patrolInputZone .patrol-import-grid.patrol-one-paste-grid{align-items:start!important}
body.p24-product-shell #patrolInputZone .patrol-one-paste-card{align-self:start!important;height:auto!important;min-height:0!important}

/* P24.2 — readability closure after multi-state contrast audit. */
body.p24-product-shell #patrolPage .patrol-section-kicker,
body.p24-product-shell #patrolPage .patrol-eyebrow,
body.p24-product-shell #patrolPage .p7-input-kicker{color:#465fa5!important}
body.p24-product-shell #patrolResponsibilityZone button.active{color:#465fa5!important}
body.p24-product-shell #patrolPage .p17-missing-inline{color:#58657d!important}
body.p24-product-shell #patrolAnalysisZone #patrolProjectMapFilterStatus{color:#586884!important}
body.p24-product-shell #patrolOutputZone .patrol-writing-note{color:#5c687f!important}
/* Keep the input workbench content-height driven: the guide rail must not stretch the main card. */
body.p24-product-shell #patrolInputZone .p7-input-layout{align-items:start!important}

/* P24.2b — specificity firewall over accumulated legacy shells. */
html body.p24-product-shell #patrolPage .patrol-section-kicker,
html body.p24-product-shell #patrolPage .patrol-eyebrow,
html body.p24-product-shell #patrolPage .p7-input-kicker{color:#465fa5!important}
html body.p24-product-shell #patrolResponsibilityZone button.active{color:#465fa5!important}
html body.p24-product-shell #patrolPage .p17-missing-inline{color:#58657d!important}
html body.p24-product-shell #patrolAnalysisZone #patrolProjectMapFilterStatus{color:#586884!important}
html body.p24-product-shell #patrolOutputZone .patrol-writing-note{color:#5c687f!important}

/* P24.2c — text contrast must be immediate during view changes; do not tween through legacy shell colours. */
html body.p24-product-shell #patrolPage .patrol-section-kicker,
html body.p24-product-shell #patrolPage .patrol-eyebrow,
html body.p24-product-shell #patrolPage .p7-input-kicker,
html body.p24-product-shell #patrolResponsibilityZone button.active,
html body.p24-product-shell #patrolPage .p17-missing-inline,
html body.p24-product-shell #patrolAnalysisZone #patrolProjectMapFilterStatus,
html body.p24-product-shell #patrolOutputZone .patrol-writing-note{transition:none!important}

/* P24.2d — responsibility tabs enter their final accessible state without colour tween. */
html body.patrol-mode.patrol-standalone.p23-product-shell.p24-product-shell #p7ResponsibilityGrid .p14-resp-switch button.active{
 background:linear-gradient(135deg,#596fca,#7658bd)!important;color:#fff!important;border-color:transparent!important;transition:none!important
}


/* ==========================================================================
   P25 | 全站问题扫描与产品级收敛
   目标：减少重复、消除伪空白、收敛卡片碎片、提高成果中心可用性；
   不改变业务事实、统计逻辑、真实地图或导出函数。
   ========================================================================== */
:root{
  --p25-line:rgba(77,92,135,.105);
  --p25-line-soft:rgba(77,92,135,.065);
  --p25-ink:#1d2b47;
  --p25-muted:#65718b;
  --p25-blue:#527cf0;
  --p25-violet:#7457d7;
  --p25-cyan:#1f9fb0;
  --p25-coral:#d45d68;
  --p25-amber:#c48825;
  --p25-shadow:0 12px 34px rgba(63,76,116,.065);
}
body.p25-product-shell #patrolPage{letter-spacing:0!important}

/* Top context becomes a quiet breadcrumb/context rail; hero owns the H1. */
body.p25-product-shell .p7-topbar-context .p7-topbar-product{display:none!important}
body.p25-product-shell .p7-topbar-title-row{gap:9px!important;align-items:baseline!important}
body.p25-product-shell .p7-topbar-title-row h1{font-size:17px!important;line-height:1.25!important;font-weight:700!important;color:#26344f!important;letter-spacing:-.015em!important}
body.p25-product-shell .p7-topbar-title-row span{font-size:13px!important;line-height:1.4!important;color:#76829a!important}

/* Overview: leadership conclusion already includes action steps; remove duplicate second action list. */
body.p25-product-shell #patrolDashboard>.hf31-action-section-title,
body.p25-product-shell #patrolDashboard>#patrolActionHighlights{display:none!important}
body.p25-product-shell #patrolLeadershipSummary{margin-bottom:14px!important}
body.p25-product-shell #patrolLeadershipSummary .p15-management-brief{padding:18px 20px!important}
body.p25-product-shell #p14OverviewMore{margin-top:0!important;border:1px solid var(--p25-line-soft)!important;border-radius:16px!important;background:rgba(255,255,255,.70)!important;box-shadow:none!important;overflow:hidden!important}
body.p25-product-shell #p14OverviewMore>summary{min-height:56px!important;padding:11px 14px!important;display:flex!important;align-items:center!important;justify-content:space-between!important;gap:16px!important}
body.p25-product-shell #p14OverviewMore>summary b{font-size:14px!important;font-weight:700!important;color:#33425f!important}
body.p25-product-shell #p14OverviewMore>summary small{font-size:13px!important;color:#758198!important}
body.p25-product-shell #p14OverviewMore>summary em{font-size:13px!important;font-style:normal!important;padding:6px 10px!important;border-radius:999px!important;background:#f1f4fb!important;color:#66738f!important}

/* Data-completeness wording is public-facing, not internal-model jargon. */
body.p25-product-shell #patrolVizBoard .p15-coverage-card header>b,
body.p25-product-shell #patrolVizBoard [data-p25-coverage-badge]{background:#eef2fb!important;color:#5f6d88!important;border:1px solid rgba(82,101,151,.08)!important}

/* Project info strips become two compact notice cards instead of pasted text. */
body.p25-product-shell #p7ProjectWorkspace .p15-scope-note,
body.p25-product-shell #p7ProjectWorkspace .p15-project-scope-note,
body.p25-product-shell #p7ProjectWorkspace .p15-project-governance-note,
body.p25-product-shell #p7ProjectWorkspace .p16-project-scope-note{
  min-height:48px!important;padding:10px 13px 10px 42px!important;border:1px solid var(--p25-line-soft)!important;border-radius:14px!important;background:linear-gradient(135deg,rgba(255,255,255,.87),rgba(246,249,255,.82))!important;position:relative!important;color:#56647c!important
}
body.p25-product-shell #p7ProjectWorkspace :is(.p15-scope-note,.p15-project-scope-note,.p15-project-governance-note,.p16-project-scope-note)::before{content:'i';position:absolute;left:13px;top:11px;width:24px;height:24px;border-radius:8px;display:grid;place-items:center;background:#edf2ff;color:#5f70c9;font-family:Georgia,serif;font-weight:800}

/* Responsibility: remove the oversized fake-empty header slab. */
body.p25-product-shell #p7ResponsibilityOverview>section.patrol-panel{overflow:hidden!important}
body.p25-product-shell #p7ResponsibilityOverview>section.patrol-panel>.patrol-panel-head{display:flex!important;align-items:center!important;justify-content:flex-start!important;gap:12px!important;min-height:0!important;padding:15px 17px!important;background:linear-gradient(135deg,rgba(255,255,255,.91),rgba(248,249,255,.87))!important;border-bottom:1px solid var(--p25-line-soft)!important}
body.p25-product-shell #p7ResponsibilityOverview>section.patrol-panel>.patrol-panel-head>.p24-panel-icon{position:static!important;inset:auto!important;margin:0!important;flex:0 0 auto!important}
body.p25-product-shell #p7ResponsibilityOverview>section.patrol-panel>.patrol-panel-head>div{margin:0!important;text-align:left!important;max-width:none!important}
body.p25-product-shell #p7ResponsibilityOverview>section.patrol-panel>.patrol-panel-head h3{font-size:18px!important;line-height:1.3!important;margin:0 0 3px!important}
body.p25-product-shell #p7ResponsibilityOverview>section.patrol-panel>.patrol-panel-head small{font-size:13px!important;line-height:1.45!important}

/* GIS: content-height analysis rail; selected-card no longer floats at the bottom of a fake void. */
body.p25-product-shell #patrolAnalysisZone .patrol-map-intelligence-layout{align-items:start!important}
body.p25-product-shell #patrolAnalysisZone .patrol-map-intelligence-panel{height:auto!important;min-height:0!important;max-height:none!important;align-self:start!important;display:flex!important;flex-direction:column!important;gap:10px!important;overflow:visible!important}
body.p25-product-shell #patrolAnalysisZone #patrolProjectMapPriorityList{flex:none!important;overflow:visible!important;max-height:none!important;padding-right:0!important;scrollbar-gutter:auto!important}
body.p25-product-shell #patrolAnalysisZone .p18-map-selection-dock{margin-top:2px!important;order:20!important}
body.p25-product-shell #patrolAnalysisZone .patrol-map-narrative-section{order:18!important;margin:0!important}
body.p25-product-shell #patrolAnalysisZone .patrol-map-intelligence-panel>.patrol-map-insight-section{flex:none!important;overflow:visible!important}
body.p25-product-shell #patrolAnalysisZone .p15-map-legend-compact{padding:6px!important}
body.p25-product-shell #patrolAnalysisZone .p15-map-legend-compact p{padding:7px 8px!important}
body.p25-product-shell #patrolAnalysisZone .patrol-map-intelligence-title{padding-bottom:10px!important}
body.p25-product-shell #patrolAnalysisZone .p18-map-selection-dock:not(.has-selection)>strong{font-size:15px!important;line-height:1.45!important;font-weight:700!important;color:#34445f!important}
body.p25-product-shell #patrolAnalysisZone .p18-map-selection-dock:not(.has-selection)>small{font-size:13px!important;line-height:1.45!important;color:#6b7891!important}

/* Output: one spacious group per row, then two roomy cards inside. */
body.p25-product-shell #patrolOutputZone{grid-template-columns:1fr!important;gap:16px!important;align-items:start!important}
body.p25-product-shell #patrolOutputZone>.p7-module-head,
body.p25-product-shell #patrolOutputZone>.p15-output-group,
body.p25-product-shell #patrolOutputZone>.p17-output-full{grid-column:1/-1!important;width:100%!important;min-width:0!important}
body.p25-product-shell #patrolOutputZone .p15-output-group{border-radius:22px!important;padding:0!important;overflow:hidden!important;background:rgba(255,255,255,.78)!important;border:1px solid var(--p25-line-soft)!important;box-shadow:var(--p25-shadow)!important}
body.p25-product-shell #patrolOutputZone .p15-output-group>header{padding:17px 19px 13px!important;border-bottom:1px solid var(--p25-line-soft)!important;background:linear-gradient(135deg,rgba(255,255,255,.78),rgba(248,248,255,.70))!important}
body.p25-product-shell #patrolOutputZone .p15-output-group>header h3{font-size:19px!important;line-height:1.3!important}
body.p25-product-shell #patrolOutputZone .p15-output-group>header small{font-size:13px!important}
body.p25-product-shell #p15OutputNow>div,
body.p25-product-shell #p15OutputImages>div{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:14px!important;padding:14px!important}
body.p25-product-shell #p15OutputArchive>div{padding:14px!important}
body.p25-product-shell #patrolOutputZone .p15-output-group .patrol-panel{height:100%!important;min-width:0!important;margin:0!important;border-radius:18px!important;border:1px solid rgba(77,92,135,.08)!important;background:linear-gradient(145deg,#fff,#fbfbff)!important;box-shadow:none!important;padding:16px!important}
body.p25-product-shell #patrolOutputZone .patrol-panel-head{gap:12px!important;margin-bottom:12px!important;padding-bottom:11px!important;border-bottom:1px solid var(--p25-line-soft)!important}
body.p25-product-shell #patrolOutputZone .patrol-panel-head h3{font-size:18px!important;line-height:1.3!important;letter-spacing:-.015em!important}
body.p25-product-shell #patrolOutputZone .patrol-panel-head small{font-size:13px!important;line-height:1.48!important}
body.p25-product-shell #patrolOutputZone .patrol-command-export-grid{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:9px!important}
body.p25-product-shell #patrolOutputZone .patrol-command-export-grid .btn{min-height:44px!important;width:100%!important}
body.p25-product-shell #patrolOutputZone .patrol-card-export-controls{display:grid!important;grid-template-columns:minmax(220px,1.3fr) minmax(180px,.9fr)!important;gap:10px 12px!important;align-items:end!important}
body.p25-product-shell #patrolOutputZone .patrol-card-export-controls>button{grid-column:1/-1!important;min-height:46px!important}
body.p25-product-shell #patrolOutputZone .patrol-brief{min-height:210px!important;max-height:260px!important;background:#f8f9fe!important;border:1px solid rgba(77,92,135,.085)!important;border-radius:14px!important;padding:13px!important;font-size:13.5px!important;line-height:1.6!important}
body.p25-product-shell #patrolOutputZone .patrol-writing-panel{padding:17px!important}
body.p25-product-shell #patrolOutputZone .patrol-writing-actions{display:flex!important;flex-wrap:wrap!important;gap:9px!important}
body.p25-product-shell #patrolOutputZone .patrol-writing-actions .btn{min-height:42px!important}
body.p25-product-shell #patrolOutputZone .patrol-writing-note{margin-top:11px!important;padding:10px 12px!important;border-radius:12px!important;background:#f4f6fb!important;border:1px solid rgba(77,92,135,.06)!important}
body.p25-product-shell #patrolOutputZone .patrol-copy-grid{gap:12px!important}
body.p25-product-shell #patrolOutputZone .patrol-copy-card{min-height:148px!important;padding:16px!important}

/* Input: result messages are outcome cards, not two pasted strips. */
body.p25-product-shell #patrolInputZone #patrolPackageCheck,
body.p25-product-shell #patrolInputZone #patrolImportStatus{position:relative!important;padding:12px 14px 12px 44px!important;min-height:48px!important;border-radius:14px!important;border:1px solid rgba(78,96,139,.085)!important;background:linear-gradient(135deg,#f8faff,#fbf8ff)!important;color:#58657d!important;line-height:1.5!important}
body.p25-product-shell #patrolInputZone #patrolPackageCheck::before,
body.p25-product-shell #patrolInputZone #patrolImportStatus::before{position:absolute;left:13px;top:12px;width:23px;height:23px;border-radius:8px;display:grid;place-items:center;background:#edf2ff;color:#5a70c9;font-size:12px;font-weight:800}
body.p25-product-shell #patrolInputZone #patrolPackageCheck::before{content:'✓'}
body.p25-product-shell #patrolInputZone #patrolImportStatus::before{content:'→'}
body.p25-product-shell #patrolInputZone .p7-input-guide>p{display:flex!important;align-items:flex-start!important;gap:9px!important;margin-top:12px!important;padding:12px 13px!important;border-radius:14px!important;background:linear-gradient(135deg,#f5f8ff,#faf7ff)!important;border:1px solid rgba(78,96,139,.07)!important;color:#63708a!important}
body.p25-product-shell #patrolInputZone .p7-input-guide>p::before{content:'i';flex:0 0 auto;width:22px;height:22px;border-radius:8px;display:grid;place-items:center;background:#eaf0ff;color:#5c70c9;font-family:Georgia,serif;font-weight:800}

/* History: honest process timeline, no fabricated trend values. */
body.p25-product-shell #patrolCompareZone .p25-history-flow{display:grid!important;grid-template-columns:minmax(0,1fr) 54px minmax(0,1fr)!important;align-items:center!important;gap:10px!important;margin:14px 0!important;padding:13px!important;border:1px solid var(--p25-line-soft)!important;border-radius:17px!important;background:linear-gradient(135deg,rgba(255,255,255,.82),rgba(249,247,255,.78))!important}
body.p25-product-shell #patrolCompareZone .p25-history-node{min-height:64px;padding:11px 13px;border-radius:14px;border:1px solid rgba(77,92,135,.08);background:#fff;display:grid;gap:3px}
body.p25-product-shell #patrolCompareZone .p25-history-node b{font-size:14px;font-weight:700;color:#33415e}
body.p25-product-shell #patrolCompareZone .p25-history-node small{font-size:13px;color:#758099}
body.p25-product-shell #patrolCompareZone .p25-history-node.future{border-style:dashed;background:#faf9ff}
body.p25-product-shell #patrolCompareZone .p25-history-arrow{text-align:center;color:#7a72cf;font-size:22px}

/* Less boxy on compact/no-data cards: boundaries stay, visual noise drops. */
body.p25-product-shell #patrolPage .patrol-empty-card{border-color:rgba(77,92,135,.07)!important;background:rgba(249,250,254,.78)!important;box-shadow:none!important}

@media(max-width:1100px){
 body.p25-product-shell #p15OutputNow>div,body.p25-product-shell #p15OutputImages>div{grid-template-columns:1fr!important}
 body.p25-product-shell #patrolOutputZone .patrol-card-export-controls{grid-template-columns:1fr!important}
 body.p25-product-shell #patrolOutputZone .patrol-card-export-controls>button{grid-column:auto!important}
}
@media(max-width:720px){
 body.p25-product-shell .p7-topbar-title-row span{display:none!important}
 body.p25-product-shell #patrolCompareZone .p25-history-flow{grid-template-columns:1fr!important}
 body.p25-product-shell #patrolCompareZone .p25-history-arrow{transform:rotate(90deg)}
 body.p25-product-shell #patrolOutputZone .patrol-command-export-grid{grid-template-columns:1fr!important}
}

/* P25 last-mile specificity fixes after live-browser audit. */
html body.patrol-mode.patrol-standalone.p7-product-shell.p8-product-shell.p9-product-shell.p10-product-shell.p11-product-shell.p12-product-shell.p13-product-shell.p14-product-shell.p15-product-shell.p16-product-shell.p17-product-shell.p18-product-shell.p19-product-shell.p20-product-shell.p21-product-shell.p22-product-shell.p23-product-shell.p24-product-shell.p25-product-shell #patrolDashboard>#patrolActionHighlights,
html body.patrol-mode.patrol-standalone.p7-product-shell.p8-product-shell.p9-product-shell.p10-product-shell.p11-product-shell.p12-product-shell.p13-product-shell.p14-product-shell.p15-product-shell.p16-product-shell.p17-product-shell.p18-product-shell.p19-product-shell.p20-product-shell.p21-product-shell.p22-product-shell.p23-product-shell.p24-product-shell.p25-product-shell #patrolDashboard>.hf31-action-section-title{display:none!important}

html body.patrol-mode.patrol-standalone.p18-product-shell.p19-product-shell.p20-product-shell.p21-product-shell.p22-product-shell.p23-product-shell.p24-product-shell.p25-product-shell #patrolAnalysisZone .patrol-map-intelligence-panel{height:auto!important;min-height:0!important;max-height:none!important;display:flex!important;flex-direction:column!important;align-content:flex-start!important;overflow:visible!important}
html body.patrol-mode.patrol-standalone.p18-product-shell.p19-product-shell.p20-product-shell.p21-product-shell.p22-product-shell.p23-product-shell.p24-product-shell.p25-product-shell #patrolAnalysisZone #patrolProjectMapPriorityList{flex:none!important;min-height:0!important;max-height:none!important;overflow:visible!important;scrollbar-gutter:auto!important}
html body.patrol-mode.patrol-standalone.p18-product-shell.p19-product-shell.p20-product-shell.p21-product-shell.p22-product-shell.p23-product-shell.p24-product-shell.p25-product-shell #patrolAnalysisZone .patrol-map-intelligence-panel>.patrol-map-insight-section{flex:none!important;min-height:0!important;overflow:visible!important}
html body.patrol-mode.patrol-standalone.p18-product-shell.p19-product-shell.p20-product-shell.p21-product-shell.p22-product-shell.p23-product-shell.p24-product-shell.p25-product-shell #patrolAnalysisZone .p18-map-selection-dock{margin-top:2px!important}

html body.p25-product-shell #p7ProjectWorkspace #p14ProjectMetricScope,
html body.p25-product-shell #p7ProjectWorkspace #p15ProjectDataGapNote{position:relative!important;min-height:48px!important;padding:11px 14px 11px 44px!important;border:1px solid rgba(77,92,135,.075)!important;border-radius:14px!important;background:linear-gradient(135deg,rgba(255,255,255,.90),rgba(247,249,255,.84))!important;color:#58657e!important;line-height:1.5!important}
html body.p25-product-shell #p7ProjectWorkspace #p14ProjectMetricScope::before,
html body.p25-product-shell #p7ProjectWorkspace #p15ProjectDataGapNote::before{position:absolute;left:13px;top:11px;width:23px;height:23px;border-radius:8px;display:grid;place-items:center;font-size:12px;font-weight:800}
html body.p25-product-shell #p7ProjectWorkspace #p14ProjectMetricScope::before{content:'∑';background:#edf2ff;color:#5e73ca}
html body.p25-product-shell #p7ProjectWorkspace #p15ProjectDataGapNote::before{content:'i';background:#fff2df;color:#a46c1b;font-family:Georgia,serif}
html body.p25-product-shell #p7ProjectWorkspace :is(#p14ProjectMetricScope,#p15ProjectDataGapNote)>b,
html body.p25-product-shell #p7ProjectWorkspace :is(#p14ProjectMetricScope,#p15ProjectDataGapNote)>strong{font-size:13px!important;font-weight:700!important;margin-right:8px!important}

html body.p25-product-shell #patrolInputZone .p7-input-guide>p>strong{font-size:13px!important;line-height:1.45!important;white-space:nowrap!important;font-weight:700!important;color:#40506c!important}

/* P25 final type floor for the GIS analysis rail: do not solve density by tiny text. */
html body.patrol-mode.patrol-standalone.p25-product-shell #patrolAnalysisZone .p15-map-legend-compact span,
html body.patrol-mode.patrol-standalone.p25-product-shell #patrolAnalysisZone .p15-map-legend-compact b,
html body.patrol-mode.patrol-standalone.p25-product-shell #patrolAnalysisZone .patrol-map-insight-section h4,
html body.patrol-mode.patrol-standalone.p25-product-shell #patrolAnalysisZone .patrol-map-insight-section-head small,
html body.patrol-mode.patrol-standalone.p25-product-shell #patrolAnalysisZone .p18-map-selection-dock .p15-map-card-head span,
html body.patrol-mode.patrol-standalone.p25-product-shell #patrolAnalysisZone .p18-map-selection-dock .p15-map-card-grid span,
html body.patrol-mode.patrol-standalone.p25-product-shell #patrolAnalysisZone .p18-map-selection-dock .p15-map-card-grid b,
html body.patrol-mode.patrol-standalone.p25-product-shell #patrolAnalysisZone .p18-map-selection-dock>small,
html body.patrol-mode.patrol-standalone.p25-product-shell #patrolAnalysisZone .patrol-map-reading-hint strong,
html body.patrol-mode.patrol-standalone.p25-product-shell #patrolAnalysisZone .patrol-map-reading-hint span,
html body.patrol-mode.patrol-standalone.p25-product-shell #patrolAnalysisZone .p19-priority-more{font-size:13px!important}
html body.p25-product-shell #p7ProjectWorkspace #p15ProjectDataGapNote> :is(b,strong){color:#4e5b72!important}

/* P25 GIS rail: individual analysis cards, no giant empty white container. */
html body.patrol-mode.patrol-standalone.p25-product-shell #patrolAnalysisZone .patrol-map-intelligence-panel{background:transparent!important;border:0!important;box-shadow:none!important;padding:0!important;border-radius:0!important}
html body.patrol-mode.patrol-standalone.p25-product-shell #patrolAnalysisZone .patrol-map-intelligence-title{padding:12px!important;border:1px solid rgba(77,92,135,.08)!important;border-radius:16px!important;background:rgba(255,255,255,.88)!important;box-shadow:0 7px 20px rgba(63,76,116,.04)!important}
html body.patrol-mode.patrol-standalone.p25-product-shell #patrolAnalysisZone .p15-map-legend-compact,
html body.patrol-mode.patrol-standalone.p25-product-shell #patrolAnalysisZone .patrol-map-insight-section,
html body.patrol-mode.patrol-standalone.p25-product-shell #patrolAnalysisZone .p18-map-selection-dock{padding:11px!important;border:1px solid rgba(77,92,135,.075)!important;border-radius:16px!important;background:rgba(255,255,255,.88)!important;box-shadow:0 7px 20px rgba(63,76,116,.04)!important}
html body.patrol-mode.patrol-standalone.p25-product-shell #patrolAnalysisZone .p15-map-legend-compact{margin:0!important}
html body.patrol-mode.patrol-standalone.p25-product-shell #patrolAnalysisZone .patrol-map-insight-section{margin:0!important}

/* ==========================================================================
   P26 | 视觉连续性 + 图标冲突清理 + GIS 融合收敛
   目标：外围—页面—模块—卡片—地图自然过渡；保留业务事实与真实底图。
   ========================================================================== */
:root{
  --p26-ink:#1c2942;
  --p26-ink-2:#32405c;
  --p26-muted:#65728a;
  --p26-muted-2:#7c879c;
  --p26-line:rgba(75,91,132,.095);
  --p26-line-strong:rgba(75,91,132,.135);
  --p26-blue:#557cf0;
  --p26-blue-2:#6b8cf3;
  --p26-violet:#7659d4;
  --p26-cyan:#19a6bf;
  --p26-coral:#df6771;
  --p26-amber:#d99a38;
  --p26-paper:rgba(255,255,255,.91);
  --p26-paper-soft:rgba(250,251,255,.84);
  --p26-shadow:0 14px 42px rgba(61,75,112,.075),0 2px 8px rgba(61,75,112,.035);
  --p26-shadow-soft:0 9px 28px rgba(61,75,112,.055);
}

/* Outer atmosphere: Melly-like cool white / mist blue / pale violet, never a flat grey slab. */
html body.patrol-mode.p26-product-shell{
  font-family:"Microsoft YaHei UI","Microsoft YaHei","PingFang SC","Noto Sans CJK SC",system-ui,-apple-system,sans-serif!important;
  color:var(--p26-ink)!important;
  background:
    radial-gradient(circle at 4% 3%,rgba(92,159,255,.15),transparent 31rem),
    radial-gradient(circle at 96% 8%,rgba(174,124,244,.14),transparent 34rem),
    radial-gradient(circle at 52% 102%,rgba(57,190,221,.075),transparent 40rem),
    linear-gradient(150deg,#f9fbff 0%,#f2f5fb 46%,#f7f5fc 74%,#fbf9ff 100%)!important;
  background-attachment:fixed!important;
}
html body.patrol-mode.p26-product-shell::before{
  opacity:.45!important;
  background-image:
    linear-gradient(rgba(96,124,186,.018) 1px,transparent 1px),
    linear-gradient(90deg,rgba(96,124,186,.018) 1px,transparent 1px)!important;
  background-size:42px 42px!important;
  mask-image:linear-gradient(180deg,rgba(0,0,0,.78),transparent 78%)!important;
}
html body.patrol-mode.p26-product-shell::after{
  content:"";position:fixed;inset:auto -12vw -35vh 24vw;height:70vh;z-index:-2;pointer-events:none;
  background:radial-gradient(ellipse at center,rgba(123,101,225,.075),transparent 67%);
}

/* Sidebar/topbar belong to the same atmosphere as the canvas, with a soft glass transition. */
body.p26-product-shell .p7-sidebar{
  background:linear-gradient(180deg,rgba(255,255,255,.93),rgba(248,250,255,.88) 56%,rgba(249,247,255,.90))!important;
  border-right:1px solid rgba(255,255,255,.98)!important;
  box-shadow:16px 0 44px rgba(58,72,110,.075)!important;
  backdrop-filter:blur(22px) saturate(138%)!important;
  -webkit-backdrop-filter:blur(22px) saturate(138%)!important;
}
body.p26-product-shell .p7-side-brand{border-radius:17px!important;padding:5px 7px 15px!important}
body.p26-product-shell .p7-side-logo{box-shadow:0 7px 20px rgba(68,88,142,.13)!important;border-color:rgba(92,116,177,.11)!important}
body.p26-product-shell .p7-brand-text small{color:#6f7c96!important;font-size:13px!important}
body.p26-product-shell .p7-brand-text strong{color:#20304c!important;font-size:16px!important;letter-spacing:-.02em!important}
body.p26-product-shell .p7-side-nav button,
body.p26-product-shell .p7-side-input{
  min-height:47px!important;border-radius:14px!important;color:#536079!important;font-size:14px!important;font-weight:620!important;
  transition:background .16s ease,border-color .16s ease,color .16s ease,transform .16s ease!important;
}
body.p26-product-shell .p7-side-nav button:hover,
body.p26-product-shell .p7-side-input:hover{background:linear-gradient(90deg,rgba(91,126,239,.075),rgba(126,93,216,.055))!important;border-color:rgba(91,112,167,.07)!important;color:#283957!important}
body.p26-product-shell .p7-side-nav button.active,
body.p26-product-shell .p7-side-input.active{
  color:#30456f!important;background:linear-gradient(100deg,rgba(89,126,239,.13),rgba(129,92,216,.10))!important;
  border-color:rgba(92,110,172,.095)!important;box-shadow:inset 3px 0 0 #6783e8,0 8px 20px rgba(70,84,130,.055)!important;
}
body.p26-product-shell .p7-nav-icon{background:rgba(91,126,239,.055)!important;color:#6e7fd0!important;border:1px solid rgba(91,112,167,.045)!important}
body.p26-product-shell .p7-side-nav button.active .p7-nav-icon,
body.p26-product-shell .p7-side-input.active .p7-nav-icon{background:linear-gradient(145deg,#eaf2ff,#f2ecff)!important;color:#6170cf!important}
body.p26-product-shell .p7-side-separator{background:linear-gradient(90deg,transparent,rgba(88,105,149,.12),transparent)!important}
body.p26-product-shell .p7-side-foot{background:linear-gradient(145deg,rgba(248,252,255,.86),rgba(248,247,255,.82))!important;border-color:rgba(85,103,151,.07)!important;border-radius:15px!important}
body.p26-product-shell .p7-side-status strong{color:#3b4c68!important}.p7-side-status small{color:#7d899d!important}

body.p26-product-shell .p7-topbar{
  background:linear-gradient(125deg,rgba(255,255,255,.94),rgba(249,251,255,.91) 58%,rgba(250,247,255,.90))!important;
  border-color:rgba(255,255,255,.98)!important;
  box-shadow:0 10px 30px rgba(61,75,112,.06)!important;
  backdrop-filter:blur(24px) saturate(142%)!important;-webkit-backdrop-filter:blur(24px) saturate(142%)!important;
}
body.p26-product-shell .p7-topbar::after{content:"";position:absolute;right:2%;bottom:-1px;width:42%;height:1px;background:linear-gradient(90deg,transparent,rgba(101,121,229,.19),rgba(158,107,222,.14),transparent);pointer-events:none}
body.p26-product-shell .p7-topbar-title-row h1{font-size:18px!important;color:#24334e!important;font-weight:720!important}
body.p26-product-shell .p7-topbar-title-row span{font-size:13.5px!important;color:#738097!important}
body.p26-product-shell .p7-period-chip{
  min-height:45px!important;padding:7px 12px!important;border-radius:14px!important;
  background:linear-gradient(145deg,rgba(247,250,255,.94),rgba(249,246,255,.91))!important;
  border:1px solid rgba(83,103,160,.075)!important;box-shadow:inset 0 1px 0 rgba(255,255,255,.96)!important;
}
body.p26-product-shell .p7-period-chip span{color:#7a8498!important;font-size:12.5px!important}
body.p26-product-shell .p7-period-chip strong{color:#465573!important;font-size:13px!important;font-weight:700!important}
body.p26-product-shell .p7-top-action{
  min-height:45px!important;border-radius:14px!important;padding:0 15px!important;
  background:linear-gradient(145deg,rgba(255,255,255,.97),rgba(247,249,254,.94))!important;
  border:1px solid rgba(80,99,151,.095)!important;color:#45536f!important;box-shadow:0 5px 14px rgba(58,72,110,.04)!important;
}
body.p26-product-shell .p7-top-action:hover{transform:translateY(-1px)!important;border-color:rgba(91,112,180,.17)!important;box-shadow:0 8px 20px rgba(58,72,110,.07)!important}
body.p26-product-shell #p7TopOutputBtn,
body.p26-product-shell #patrolPage .btn.primary{
  background:linear-gradient(135deg,#5b79e5 0%,#6d6cdd 48%,#795ac8 100%)!important;
  border-color:rgba(79,77,176,.18)!important;color:#fff!important;
  box-shadow:0 9px 22px rgba(86,78,190,.17),inset 0 1px 0 rgba(255,255,255,.23)!important;
}
body.p26-product-shell #p7TopOutputBtn:hover,
body.p26-product-shell #patrolPage .btn.primary:hover:not(:disabled){box-shadow:0 12px 28px rgba(86,78,190,.22),inset 0 1px 0 rgba(255,255,255,.26)!important}

/* Completeness/context rail: one continuous transition, chips remain individually legible. */
body.p26-product-shell #p15CompletenessBar{
  padding:9px 11px!important;gap:8px!important;border-radius:19px!important;
  background:linear-gradient(110deg,rgba(255,255,255,.83),rgba(246,249,255,.78) 60%,rgba(250,247,255,.77))!important;
  border:1px solid rgba(255,255,255,.96)!important;box-shadow:0 8px 22px rgba(61,75,112,.045)!important;
}
body.p26-product-shell #p15CompletenessBar .p15-completeness-label{background:linear-gradient(135deg,rgba(87,124,240,.10),rgba(126,91,214,.08))!important;color:#4c5f9c!important}
body.p26-product-shell #p15CompletenessBar .p15-completeness-item{background:rgba(255,255,255,.80)!important;border-color:rgba(80,98,146,.065)!important;color:#536079!important}
body.p26-product-shell #p15CompletenessBar>small{background:rgba(247,249,253,.75)!important;color:#6f7a91!important;border-color:rgba(80,98,146,.055)!important}

/* Big page heroes: remove confusing injected icon, keep a clean readable title block. */
body.p26-product-shell #patrolPage .p7-module-head>.p24-module-icon,
body.p26-product-shell #patrolInputZone .p7-input-heading>.p24-module-icon{display:none!important}
body.p26-product-shell #patrolPage .p7-module-head{
  display:grid!important;grid-template-columns:minmax(0,1fr) auto!important;align-items:center!important;gap:18px!important;
  min-height:124px!important;padding:23px 26px!important;border-radius:25px!important;position:relative!important;overflow:hidden!important;isolation:isolate!important;
  background:
    radial-gradient(circle at 91% -5%,rgba(96,141,247,.16),transparent 34%),
    radial-gradient(circle at 67% 118%,rgba(163,105,225,.12),transparent 38%),
    linear-gradient(135deg,rgba(255,255,255,.94),rgba(248,250,255,.88) 58%,rgba(250,247,255,.87))!important;
  border:1px solid rgba(255,255,255,.98)!important;box-shadow:var(--p26-shadow)!important;
}
body.p26-product-shell #patrolPage .p7-module-head::before{content:""!important;display:block!important;position:absolute!important;left:-130px!important;bottom:-205px!important;width:420px!important;height:420px!important;border-radius:50%!important;background:radial-gradient(circle,rgba(120,105,225,.085),transparent 68%)!important;z-index:-1!important;pointer-events:none!important;opacity:1!important}
body.p26-product-shell #patrolPage .p7-module-head::after{content:""!important;display:block!important;position:absolute!important;right:-80px!important;top:-180px!important;width:360px!important;height:360px!important;border-radius:50%!important;background:radial-gradient(circle,rgba(83,153,244,.11),transparent 68%)!important;z-index:-1!important;pointer-events:none!important}
body.p26-product-shell #patrolPage .p7-module-head>.grow{grid-column:1!important;grid-row:1!important;min-width:0!important;position:relative!important;z-index:1!important}
body.p26-product-shell #patrolPage .p7-module-head>.patrol-module-actions{grid-column:2!important;grid-row:1!important;align-self:center!important;position:relative!important;z-index:1!important}
body.p26-product-shell #patrolPage .p7-module-head h2{margin-top:7px!important;font-size:35px!important;line-height:1.12!important;font-weight:740!important;letter-spacing:-.035em!important;color:#1b2944!important;text-shadow:none!important}
body.p26-product-shell #patrolPage .p7-module-head p{margin-top:6px!important;font-size:14.5px!important;line-height:1.62!important;color:#5d6a83!important;font-weight:470!important;max-width:900px!important}
body.p26-product-shell #patrolPage .patrol-section-kicker,
body.p26-product-shell #patrolPage .p7-input-kicker{
  display:inline-flex!important;width:auto!important;max-width:max-content!important;align-items:center!important;min-height:28px!important;padding:5px 10px!important;
  border-radius:999px!important;background:linear-gradient(135deg,rgba(91,127,235,.11),rgba(128,91,215,.075))!important;
  border:1px solid rgba(87,108,176,.065)!important;color:#4d609d!important;font-size:13px!important;font-weight:650!important;line-height:1.25!important;
}

/* Input hero has the same no-icon structure. */
body.p26-product-shell #patrolInputZone .p7-input-heading{display:grid!important;grid-template-columns:minmax(0,1fr) auto!important;align-items:center!important;gap:16px!important}
body.p26-product-shell #patrolInputZone .p7-input-heading>div:first-of-type{grid-column:1!important;grid-row:1!important}
body.p26-product-shell #patrolInputZone .p7-input-heading>.p7-input-trust{grid-column:2!important;grid-row:1!important}

/* One icon language only. Disable legacy pseudo bullets where semantic SVG tiles already exist. */
body.p26-product-shell #patrolPage .patrol-panel-head::before,
body.p26-product-shell #patrolPage .p15-output-group>header::before,
body.p26-product-shell #patrolPage .p7-guide-head::before{content:none!important;display:none!important}
body.p26-product-shell #patrolPage .patrol-panel-head{column-gap:11px!important}
body.p26-product-shell #patrolPage .patrol-panel-head>.p24-panel-icon{position:static!important;inset:auto!important;float:none!important;margin:0!important;align-self:center!important}
body.p26-product-shell #patrolPage .p24-panel-icon,
body.p26-product-shell #patrolPage .p24-kpi-icon,
body.p26-product-shell #patrolPage .p24-mini-icon,
body.p26-product-shell #patrolPage .p24-output-icon,
body.p26-product-shell #patrolPage .p24-map-title-icon,
body.p26-product-shell #patrolPage .p24-insight-icon{
  background:linear-gradient(145deg,#edf4ff,#f4efff)!important;border-color:rgba(84,105,171,.075)!important;box-shadow:inset 0 1px 0 rgba(255,255,255,.96),0 5px 13px rgba(65,80,124,.045)!important;
}

/* General surfaces: never jump abruptly into a dark block. */
body.p26-product-shell #patrolPage .workspace,
body.p26-product-shell #patrolPage .patrol-panel,
body.p26-product-shell #patrolPage .patrol-domain-card{
  color:var(--p26-ink)!important;border-color:var(--p26-line)!important;
}
body.p26-product-shell #patrolPage .patrol-panel{
  background:linear-gradient(145deg,rgba(255,255,255,.94),rgba(250,251,255,.89))!important;
  box-shadow:var(--p26-shadow-soft)!important;
}
body.p26-product-shell #patrolPage .patrol-panel-head{background:linear-gradient(100deg,rgba(250,252,255,.92),rgba(249,247,255,.74))!important;border-bottom-color:rgba(77,92,135,.065)!important}
body.p26-product-shell #patrolPage .patrol-panel-head h3{color:#24334e!important}
body.p26-product-shell #patrolPage .patrol-panel-head small{color:#748097!important}
body.p26-product-shell #patrolPage .btn:not(.primary){background:linear-gradient(145deg,#fff,#f8f9fd)!important;border-color:rgba(78,96,145,.10)!important;color:#4b5872!important;box-shadow:0 4px 12px rgba(60,74,110,.035)!important}
body.p26-product-shell #patrolPage .btn:not(.primary):hover:not(:disabled){background:linear-gradient(145deg,#fff,#f5f7fc)!important;border-color:rgba(87,108,177,.16)!important;color:#33445f!important}

/* Colourful content is welcome inside calm containers. */
body.p26-product-shell #patrolPage :is(.p4-viz-kpis,.p7-domain-kpis,.p7-responsibility-kpis,.p11-history-metrics)>article:nth-child(1){--p23-tone:#5688f1;background:linear-gradient(145deg,#fcfdff,#eef5ff)!important}
body.p26-product-shell #patrolPage :is(.p4-viz-kpis,.p7-domain-kpis,.p7-responsibility-kpis,.p11-history-metrics)>article:nth-child(2){--p23-tone:#e86c78;background:linear-gradient(145deg,#fffefe,#fff1f4)!important}
body.p26-product-shell #patrolPage :is(.p4-viz-kpis,.p7-domain-kpis,.p7-responsibility-kpis,.p11-history-metrics)>article:nth-child(3){--p23-tone:#e8a13f;background:linear-gradient(145deg,#fffefa,#fff6e7)!important}
body.p26-product-shell #patrolPage :is(.p4-viz-kpis,.p7-domain-kpis,.p7-responsibility-kpis,.p11-history-metrics)>article:nth-child(4){--p23-tone:#8460df;background:linear-gradient(145deg,#fefcff,#f5efff)!important}
body.p26-product-shell #patrolPage .p11-history-metrics>article:nth-child(5){--p23-tone:#1ba8c6;background:linear-gradient(145deg,#fbfeff,#ecfaff)!important}
body.p26-product-shell #patrolPage :is(.p4-viz-kpis,.p7-domain-kpis,.p7-responsibility-kpis)>article strong{color:#1d2a44!important}

/* GIS becomes part of the product instead of an isolated white island. */
body.p26-product-shell #patrolAnalysisZone{background:transparent!important;border-color:transparent!important;box-shadow:none!important}
body.p26-product-shell #patrolAnalysisZone .patrol-project-intelligence-map,
body.p26-product-shell #patrolAnalysisZone .patrol-store-intelligence-map{
  border-radius:24px!important;overflow:hidden!important;
  background:
    radial-gradient(circle at 96% -8%,rgba(102,143,241,.105),transparent 32%),
    radial-gradient(circle at 12% 112%,rgba(146,103,218,.07),transparent 34%),
    linear-gradient(145deg,rgba(255,255,255,.93),rgba(247,249,255,.88))!important;
  border:1px solid rgba(255,255,255,.97)!important;box-shadow:0 15px 42px rgba(61,75,112,.07)!important;
}
body.p26-product-shell #patrolAnalysisZone .patrol-map-intelligence-head{
  background:linear-gradient(105deg,rgba(251,253,255,.92),rgba(248,247,255,.78))!important;
  border-bottom:1px solid rgba(78,94,139,.07)!important;padding:16px 18px!important;
}
body.p26-product-shell #patrolAnalysisZone .patrol-map-intelligence-head h3{font-size:19px!important;color:#263651!important}
body.p26-product-shell #patrolAnalysisZone .patrol-map-intelligence-head small{font-size:13.5px!important;color:#738098!important}
body.p26-product-shell #patrolAnalysisZone .patrol-map-explore-bar{
  margin:0!important;padding:12px 14px!important;gap:11px!important;
  background:linear-gradient(110deg,rgba(247,250,255,.91),rgba(250,248,255,.84))!important;
  border-bottom:1px solid rgba(78,94,139,.065)!important;
}
body.p26-product-shell #patrolAnalysisZone .patrol-map-filter-group button{
  min-height:36px!important;border-radius:12px!important;background:rgba(255,255,255,.78)!important;border-color:rgba(78,96,145,.065)!important;color:#5a6780!important;
}
body.p26-product-shell #patrolAnalysisZone .patrol-map-filter-group button.active{
  background:linear-gradient(135deg,rgba(88,126,236,.14),rgba(126,91,215,.105))!important;border-color:rgba(94,103,188,.11)!important;color:#43578f!important;box-shadow:inset 0 1px 0 rgba(255,255,255,.95)!important;
}
body.p26-product-shell #patrolAnalysisZone .patrol-map-search-box{background:rgba(255,255,255,.88)!important;border-color:rgba(78,96,145,.085)!important;border-radius:13px!important}
body.p26-product-shell #patrolAnalysisZone .patrol-map-search-box input{background:transparent!important}
body.p26-product-shell #patrolAnalysisZone .patrol-map-intelligence-layout{
  align-items:start!important;gap:14px!important;margin:0!important;padding:14px!important;
  background:
    radial-gradient(circle at 3% 6%,rgba(84,160,242,.055),transparent 27%),
    radial-gradient(circle at 96% 100%,rgba(154,111,222,.055),transparent 30%),
    linear-gradient(135deg,rgba(247,250,255,.84),rgba(250,248,255,.82))!important;
  border-top:0!important;border-bottom:1px solid rgba(78,94,139,.055)!important;
}
body.p26-product-shell #patrolAnalysisZone .patrol-map-visual-column{min-width:0!important;padding:0!important;background:transparent!important}
body.p26-product-shell #patrolAnalysisZone .patrol-map-canvas-shell{
  position:relative!important;padding:10px!important;border-radius:21px!important;
  background:linear-gradient(145deg,rgba(255,255,255,.93),rgba(241,246,255,.86) 55%,rgba(248,243,255,.82))!important;
  border:1px solid rgba(77,96,150,.095)!important;box-shadow:inset 0 1px 0 rgba(255,255,255,.98),0 10px 28px rgba(61,75,112,.055)!important;
}
body.p26-product-shell #patrolAnalysisZone .patrol-map-canvas-shell::before{content:"";position:absolute;inset:5px;border-radius:18px;pointer-events:none;background:linear-gradient(135deg,rgba(91,126,239,.035),transparent 34%,rgba(136,94,215,.03));z-index:0}
body.p26-product-shell #patrolAnalysisZone .patrol-map-canvas-shell canvas{position:relative!important;z-index:1!important;display:block!important;border-radius:15px!important;background:#f7f8fc!important;box-shadow:0 0 0 1px rgba(81,97,140,.05)!important}
body.p26-product-shell #patrolAnalysisZone .patrol-map-reading-hint{
  margin-top:10px!important;padding:10px 12px!important;border-radius:14px!important;background:linear-gradient(135deg,rgba(255,255,255,.77),rgba(248,247,255,.72))!important;border:1px solid rgba(78,94,139,.055)!important;color:#65728a!important;
}
body.p26-product-shell #patrolAnalysisZone .patrol-map-intelligence-panel{gap:9px!important;background:transparent!important;border:0!important;box-shadow:none!important;padding:0!important}
body.p26-product-shell #patrolAnalysisZone .patrol-map-intelligence-title,
body.p26-product-shell #patrolAnalysisZone .p15-map-legend-compact,
body.p26-product-shell #patrolAnalysisZone .patrol-map-insight-section,
body.p26-product-shell #patrolAnalysisZone .p18-map-selection-dock,
body.p26-product-shell #patrolAnalysisZone .patrol-map-metric-strip,
body.p26-product-shell #patrolAnalysisZone .hf30-map-quickread{
  border-radius:16px!important;background:linear-gradient(145deg,rgba(255,255,255,.91),rgba(249,249,255,.85))!important;
  border:1px solid rgba(78,94,139,.075)!important;box-shadow:0 7px 19px rgba(61,75,112,.035)!important;
}
body.p26-product-shell #patrolAnalysisZone .patrol-map-intelligence-title{padding:12px!important}
body.p26-product-shell #patrolAnalysisZone .patrol-map-insight-section{padding:11px!important}
body.p26-product-shell #patrolAnalysisZone .patrol-map-rich-legend>div,
body.p26-product-shell #patrolAnalysisZone .patrol-map-priority-list>button{
  background:linear-gradient(145deg,rgba(255,255,255,.92),rgba(247,249,255,.86))!important;border-color:rgba(78,94,139,.065)!important;box-shadow:none!important;
}
body.p26-product-shell #patrolAnalysisZone .patrol-map-priority-list>button:hover{background:linear-gradient(145deg,#fff,#f4f6ff)!important;border-color:rgba(95,108,181,.13)!important;transform:translateY(-1px)!important}
body.p26-product-shell #patrolAnalysisZone .patrol-map-conclusion-primary{
  margin:12px 14px!important;padding:12px 14px!important;border-radius:16px!important;
  background:linear-gradient(135deg,rgba(237,245,255,.92),rgba(248,240,255,.90))!important;border:1px solid rgba(92,103,184,.09)!important;color:#53617c!important;
}
body.p26-product-shell #patrolAnalysisZone .patrol-map-actions{
  margin:0 14px 14px!important;padding:10px!important;border-radius:16px!important;background:linear-gradient(135deg,rgba(255,255,255,.82),rgba(248,248,255,.77))!important;border:1px solid rgba(78,94,139,.06)!important;
}

/* Tables and small notes: readable at a glance, not washed out. */
body.p26-product-shell #patrolPage table{font-size:14px!important;color:#3e4d67!important}
body.p26-product-shell #patrolPage table thead th{color:#4d5c75!important;font-weight:680!important;background:linear-gradient(180deg,#f8faff,#f4f7fc)!important}
body.p26-product-shell #patrolPage table td{color:#47556e!important}
body.p26-product-shell #patrolPage small{color:#748097!important}
body.p26-product-shell #patrolPage .patrol-empty-card{background:linear-gradient(145deg,rgba(250,252,255,.90),rgba(249,248,254,.85))!important;color:#7a879b!important;border-color:rgba(78,94,139,.06)!important}

/* Responsive: preserve the clean title separation and comfortable type. */
@media(max-width:1100px){
  body.p26-product-shell #patrolPage .p7-module-head{grid-template-columns:1fr!important;min-height:0!important}
  body.p26-product-shell #patrolPage .p7-module-head>.patrol-module-actions{grid-column:1!important;grid-row:2!important;justify-self:start!important}
  body.p26-product-shell #patrolInputZone .p7-input-heading{grid-template-columns:1fr!important}
  body.p26-product-shell #patrolInputZone .p7-input-heading>.p7-input-trust{grid-column:1!important;grid-row:2!important}
}
@media(max-width:760px){
  body.p26-product-shell #patrolPage .p7-module-head{padding:19px 18px!important;border-radius:21px!important}
  body.p26-product-shell #patrolPage .p7-module-head h2{font-size:29px!important}
  body.p26-product-shell #patrolPage .p7-module-head p{font-size:14px!important}
  body.p26-product-shell #patrolAnalysisZone .patrol-map-intelligence-layout{padding:9px!important}
  body.p26-product-shell #patrolAnalysisZone .patrol-map-canvas-shell{padding:7px!important}
}
@media(prefers-reduced-motion:reduce){body.p26-product-shell *{transition:none!important}}

/* P26 specificity guard: supersede long historical shell selectors without deleting prior compatibility layers. */
html body.patrol-mode.patrol-standalone.p26-product-shell .p7-side-nav button.active,
html body.patrol-mode.patrol-standalone.p26-product-shell .p7-side-input.active{
  color:#30456f!important;
  background:linear-gradient(100deg,rgba(89,126,239,.13),rgba(129,92,216,.10))!important;
  border-color:rgba(92,110,172,.095)!important;
  box-shadow:inset 3px 0 0 #6783e8,0 8px 20px rgba(70,84,130,.055)!important;
}
html body.patrol-mode.patrol-standalone.p26-product-shell .p7-side-nav button.active .p7-nav-icon,
html body.patrol-mode.patrol-standalone.p26-product-shell .p7-side-input.active .p7-nav-icon{
  background:linear-gradient(145deg,#eaf2ff,#f2ecff)!important;
  color:#6170cf!important;
  border-color:rgba(91,112,167,.06)!important;
}
html body.patrol-mode.patrol-standalone.p26-product-shell .p7-side-nav button:active,
html body.patrol-mode.patrol-standalone.p26-product-shell .p7-side-input:active{
  box-shadow:none!important;
  transform:none!important;
}
html body.patrol-mode.patrol-standalone.p26-product-shell .p7-side-nav button:focus:not(:focus-visible),
html body.patrol-mode.patrol-standalone.p26-product-shell .p7-side-input:focus:not(:focus-visible){
  outline:none!important;box-shadow:none!important;
}
html body.patrol-mode.patrol-standalone.p26-product-shell .p7-side-nav button,
html body.patrol-mode.patrol-standalone.p26-product-shell .p7-side-input{
  color:#536079!important;
  background:transparent!important;
  border-color:transparent!important;
  box-shadow:none!important;
}
html body.patrol-mode.patrol-standalone.p26-product-shell .p7-side-nav button.awaiting-data{
  color:#68748b!important;
}
html body.patrol-mode.patrol-standalone.p26-product-shell .p7-side-nav button:hover,
html body.patrol-mode.patrol-standalone.p26-product-shell .p7-side-input:hover{
  color:#2f405e!important;
  background:linear-gradient(90deg,rgba(91,126,239,.075),rgba(126,93,216,.055))!important;
  border-color:rgba(91,112,167,.07)!important;
}
html body.patrol-mode.patrol-standalone.p26-product-shell .p7-side-nav button.active,
html body.patrol-mode.patrol-standalone.p26-product-shell .p7-side-input.active{
  color:#30456f!important;
  background:linear-gradient(100deg,rgba(89,126,239,.13),rgba(129,92,216,.10))!important;
  border-color:rgba(92,110,172,.095)!important;
  box-shadow:inset 3px 0 0 #6783e8,0 8px 20px rgba(70,84,130,.055)!important;
}
/* Remove inherited dark slabs outside the map's real artwork; empty/history containers stay in the same light product language. */
html body.patrol-mode.patrol-standalone.p26-product-shell #patrolPage .patrol-watch-list,
html body.patrol-mode.patrol-standalone.p26-product-shell #patrolPage .patrol-quality-list,
html body.patrol-mode.patrol-standalone.p26-product-shell #patrolPage .patrol-trace-grid{
  background:linear-gradient(145deg,rgba(250,252,255,.94),rgba(249,248,255,.89))!important;
  border:1px solid rgba(78,94,139,.07)!important;
  box-shadow:none!important;
  color:#526078!important;
}
html body.patrol-mode.patrol-standalone.p26-product-shell #patrolPage .patrol-watch-list>.patrol-empty-card,
html body.patrol-mode.patrol-standalone.p26-product-shell #patrolPage .patrol-quality-list>.patrol-empty-card{
  background:rgba(255,255,255,.78)!important;
  color:#718097!important;
  border:1px dashed rgba(91,108,158,.12)!important;
}
/* P26 legibility gate: routine UI text should be readable at a glance, not micro-sized. */
html body.patrol-mode.patrol-standalone.p26-product-shell .p7-side-status small,
html body.patrol-mode.patrol-standalone.p26-product-shell .p7-period-chip span,
html body.patrol-mode.patrol-standalone.p26-product-shell .p7-compute-chip small{
  font-size:13px!important;line-height:1.42!important;
}
html body.patrol-mode.patrol-standalone.p26-product-shell #patrolPage :is(select,input,button,textarea),
html body.patrol-mode.patrol-standalone.p26-product-shell #patrolPage .p7-table-footer,
html body.patrol-mode.patrol-standalone.p26-product-shell #patrolPage .patrol-compare-legend,
html body.patrol-mode.patrol-standalone.p26-product-shell #patrolPage #p15InputLive>div,
html body.patrol-mode.patrol-standalone.p26-product-shell #patrolPage #patrolLeadershipSummary{
  font-size:13px!important;
}
html body.patrol-mode.patrol-standalone.p26-product-shell #patrolPage small{font-size:13px!important;line-height:1.48!important}

/* ================================================================
   P27 — acceptance spacing / edge-safety sweep
   User defect: Input hero text touched the left rounded edge because an
   older high-specificity rule kept padding-left:0 after the P26 icon removal.
   Keep all primary hero content on one vertical alignment line.
   ================================================================ */
:root{
  --p27-hero-pad-x:34px;
  --p27-hero-pad-y:28px;
}
html body.patrol-mode.patrol-standalone.p26-product-shell.p27-product-shell #patrolInputZone .p7-input-heading{
  box-sizing:border-box!important;
  padding:var(--p27-hero-pad-y) var(--p27-hero-pad-x) 27px!important;
  margin:0 0 18px!important;
  align-items:center!important;
}
html body.patrol-mode.patrol-standalone.p26-product-shell.p27-product-shell #patrolInputZone .p7-input-heading>div:first-of-type{
  min-width:0!important;
  margin:0!important;
  padding:0!important;
}
html body.patrol-mode.patrol-standalone.p26-product-shell.p27-product-shell #patrolInputZone .p7-input-heading h2{
  margin:7px 0 6px!important;
}
html body.patrol-mode.patrol-standalone.p26-product-shell.p27-product-shell #patrolInputZone .p7-input-heading p{
  margin:0!important;
}
/* Alignment contract: main heroes and input hero share the same horizontal inset. */
html body.patrol-mode.patrol-standalone.p26-product-shell.p27-product-shell #patrolPage .p7-module-head{
  padding-left:var(--p27-hero-pad-x)!important;
  padding-right:var(--p27-hero-pad-x)!important;
  box-sizing:border-box!important;
}
/* Keep top-level panel headings readable and away from rounded borders even if old generations leak padding rules. */
html body.patrol-mode.patrol-standalone.p26-product-shell.p27-product-shell #patrolPage :is(.patrol-panel-head,.p15-output-group>header,.p7-guide-head){
  box-sizing:border-box!important;
}
@media(max-width:820px){
  :root{--p27-hero-pad-x:24px;--p27-hero-pad-y:22px}
  html body.patrol-mode.patrol-standalone.p26-product-shell.p27-product-shell #patrolInputZone .p7-input-heading{padding:22px 24px 21px!important}
}
@media(max-width:640px){
  :root{--p27-hero-pad-x:20px;--p27-hero-pad-y:19px}
  html body.patrol-mode.patrol-standalone.p26-product-shell.p27-product-shell #patrolInputZone .p7-input-heading{padding:19px 20px 18px!important}
}
/* P27 specificity hard-stop: defeat legacy P12 padding-left:0 !important. */
html body.patrol-mode.patrol-standalone.p7-product-shell.p8-product-shell.p9-product-shell.p10-product-shell.p11-product-shell.p12-product-shell.p13-product-shell.p14-product-shell.p15-product-shell.p16-product-shell.p17-product-shell.p18-product-shell.p19-product-shell.p20-product-shell.p21-product-shell.p22-product-shell.p23-product-shell.p24-product-shell.p25-product-shell.p26-product-shell.p27-product-shell #patrolInputZone .p7-input-heading{
  padding:28px 34px 27px!important;
}
@media(max-width:820px){
html body.patrol-mode.patrol-standalone.p7-product-shell.p8-product-shell.p9-product-shell.p10-product-shell.p11-product-shell.p12-product-shell.p13-product-shell.p14-product-shell.p15-product-shell.p16-product-shell.p17-product-shell.p18-product-shell.p19-product-shell.p20-product-shell.p21-product-shell.p22-product-shell.p23-product-shell.p24-product-shell.p25-product-shell.p26-product-shell.p27-product-shell #patrolInputZone .p7-input-heading{padding:22px 24px 21px!important}
}
@media(max-width:640px){
html body.patrol-mode.patrol-standalone.p7-product-shell.p8-product-shell.p9-product-shell.p10-product-shell.p11-product-shell.p12-product-shell.p13-product-shell.p14-product-shell.p15-product-shell.p16-product-shell.p17-product-shell.p18-product-shell.p19-product-shell.p20-product-shell.p21-product-shell.p22-product-shell.p23-product-shell.p24-product-shell.p25-product-shell.p26-product-shell.p27-product-shell #patrolInputZone .p7-input-heading{padding:19px 20px 18px!important}
}

/* ================================================================
   P27 acceptance batch 2 — contrast, action clipping, map precision UI,
   whole-site edge safety and restrained micro-interactions.
   ================================================================ */
/* 1) Gradient active controls must keep high-contrast white text. */
html body.patrol-mode.patrol-standalone.p26-product-shell.p27-product-shell #p7ResponsibilityGrid .p14-resp-switch button.active,
html body.patrol-mode.patrol-standalone.p26-product-shell.p27-product-shell #p7ResponsibilityGrid .p14-resp-switch button.active *{
  color:#fff!important;
  -webkit-text-fill-color:#fff!important;
  text-shadow:0 1px 1px rgba(26,34,74,.16)!important;
}
html body.patrol-mode.patrol-standalone.p26-product-shell.p27-product-shell #p7ResponsibilityGrid .p14-resp-switch button.active{
  background:linear-gradient(135deg,#5e76dc 0%,#7959c8 100%)!important;
  border-color:rgba(89,90,188,.22)!important;
  box-shadow:0 7px 18px rgba(84,76,173,.15)!important;
}
/* 2) Old sticky hero actions could be clipped by the rounded Hero mask. Reset the legacy position contract site-wide. */
html body.patrol-mode.patrol-standalone.p26-product-shell.p27-product-shell #patrolPage .p7-module-head>.patrol-module-actions{
  position:relative!important;
  top:auto!important;right:auto!important;bottom:auto!important;left:auto!important;
  z-index:2!important;
  display:flex!important;
  flex-wrap:wrap!important;
  align-items:center!important;
  justify-content:flex-end!important;
  gap:9px!important;
  max-width:100%!important;
  padding:0!important;
  margin:0!important;
  background:transparent!important;
  border:0!important;
  box-shadow:none!important;
  backdrop-filter:none!important;
  -webkit-backdrop-filter:none!important;
}
html body.patrol-mode.patrol-standalone.p26-product-shell.p27-product-shell #patrolPage .p7-module-head>.patrol-module-actions .btn{
  flex:0 0 auto!important;
  min-height:38px!important;
}
/* Long action groups stack before they can collide with copy or disappear under the Hero edge. */
@media(max-width:1280px){
 html body.patrol-mode.patrol-standalone.p26-product-shell.p27-product-shell #patrolPage .p7-module-head{
   grid-template-columns:minmax(0,1fr)!important;
   align-items:start!important;
   row-gap:14px!important;
 }
 html body.patrol-mode.patrol-standalone.p26-product-shell.p27-product-shell #patrolPage .p7-module-head>.grow{
   grid-column:1!important;grid-row:1!important;width:100%!important;
 }
 html body.patrol-mode.patrol-standalone.p26-product-shell.p27-product-shell #patrolPage .p7-module-head>.patrol-module-actions{
   grid-column:1!important;grid-row:2!important;justify-self:stretch!important;justify-content:flex-start!important;width:100%!important;
 }
 html body.patrol-mode.patrol-standalone.p26-product-shell.p27-product-shell #patrolDashboard>.p7-module-head>.patrol-schema-badge{
   grid-column:1!important;grid-row:3!important;justify-self:start!important;
 }
}
/* 3) Completeness/public status chips may contain real explanations; allow natural wrap rather than micro text. */
html body.patrol-mode.patrol-standalone.p26-product-shell.p27-product-shell #p15CompletenessBar{
  align-items:center!important;
  row-gap:8px!important;
}
html body.patrol-mode.patrol-standalone.p26-product-shell.p27-product-shell #p15CompletenessBar .p15-completeness-item{
  min-height:34px!important;
  white-space:normal!important;
  line-height:1.35!important;
}
html body.patrol-mode.patrol-standalone.p26-product-shell.p27-product-shell #p15CompletenessBar .p15-completeness-item :is(b,em){
  font-size:13px!important;
}
/* 4) Map is an interactive analysis surface, not a passive image. */
html body.patrol-mode.patrol-standalone.p26-product-shell.p27-product-shell #patrolProjectMapBoard,
html body.patrol-mode.patrol-standalone.p26-product-shell.p27-product-shell #patrolZoomMapBoard{
  cursor:pointer!important;
}
html body.patrol-mode.patrol-standalone.p26-product-shell.p27-product-shell #patrolAnalysisZone .patrol-map-priority-card,
html body.patrol-mode.patrol-standalone.p26-product-shell.p27-product-shell #patrolAnalysisZone [data-map-focus]{
  transition:transform .18s ease,border-color .18s ease,box-shadow .18s ease,background .18s ease!important;
}
@media(hover:hover){
 html body.patrol-mode.patrol-standalone.p26-product-shell.p27-product-shell #patrolAnalysisZone .patrol-map-priority-card:hover,
 html body.patrol-mode.patrol-standalone.p26-product-shell.p27-product-shell #patrolAnalysisZone [data-map-focus]:hover{
   transform:translateY(-1px)!important;
   box-shadow:0 10px 24px rgba(66,83,135,.09)!important;
 }
}
/* 5) Whole-site clickable surfaces get a subtle, consistent Melly-like response without turning the product into a neon dashboard. */
html body.patrol-mode.patrol-standalone.p26-product-shell.p27-product-shell #patrolPage :is(.btn,.p14-resp-switch button,.patrol-map-filter-group button,.p7-map-tabs button,.p7-detail-btn),
html body.patrol-mode.patrol-standalone.p26-product-shell.p27-product-shell .p7-topbar .btn{
  transition:transform .16s ease,box-shadow .18s ease,border-color .18s ease,background .18s ease,color .18s ease!important;
}
@media(hover:hover){
 html body.patrol-mode.patrol-standalone.p26-product-shell.p27-product-shell #patrolPage :is(.btn,.p14-resp-switch button,.patrol-map-filter-group button,.p7-map-tabs button,.p7-detail-btn):not(:disabled):hover,
 html body.patrol-mode.patrol-standalone.p26-product-shell.p27-product-shell .p7-topbar .btn:not(:disabled):hover{
   transform:translateY(-1px)!important;
 }
}
/* Keep all section/panel headings off rounded edges; match the P27 hero content line. */
html body.patrol-mode.patrol-standalone.p26-product-shell.p27-product-shell #patrolPage .patrol-panel>.patrol-panel-head,
html body.patrol-mode.patrol-standalone.p26-product-shell.p27-product-shell #patrolPage .p15-output-group>.patrol-panel-head{
  padding-left:22px!important;padding-right:22px!important;
}
@media(max-width:640px){
 html body.patrol-mode.patrol-standalone.p26-product-shell.p27-product-shell #patrolPage .patrol-panel>.patrol-panel-head,
 html body.patrol-mode.patrol-standalone.p26-product-shell.p27-product-shell #patrolPage .p15-output-group>.patrol-panel-head{padding-left:16px!important;padding-right:16px!important}
}
@media(prefers-reduced-motion:reduce){
 html body.patrol-mode.patrol-standalone.p26-product-shell.p27-product-shell *{transition:none!important;animation:none!important}
}

/* ================================================================
   P27 acceptance batch 3 — natural top chrome + whole-site polish.
   User-visible goal: the page top should feel like part of the same
   atmosphere, not a separate white title box. Keep data/features intact.
   ================================================================ */
:root{
  --p27-top-radius:22px;
  --p27-control-radius:13px;
  --p27-soft-line:rgba(83,103,160,.075);
  --p27-soft-shadow:0 8px 28px rgba(61,75,112,.045),0 1px 2px rgba(61,75,112,.025);
}

/* 1) Top context rail: softer, airier and continuous with the canvas. */
html body.patrol-mode.patrol-standalone.p26-product-shell.p27-product-shell .p7-topbar{
  height:auto!important;
  min-height:68px!important;
  padding:8px 12px 8px 20px!important;
  border-radius:var(--p27-top-radius)!important;
  overflow:visible!important;
  isolation:isolate!important;
  background:
    radial-gradient(circle at 8% 16%,rgba(96,151,246,.072),transparent 28%),
    radial-gradient(circle at 92% 0%,rgba(161,112,225,.065),transparent 29%),
    linear-gradient(118deg,rgba(255,255,255,.82),rgba(249,251,255,.74) 58%,rgba(251,248,255,.72))!important;
  border:1px solid rgba(102,119,165,.065)!important;
  box-shadow:var(--p27-soft-shadow),inset 0 1px 0 rgba(255,255,255,.82)!important;
  backdrop-filter:blur(26px) saturate(132%)!important;
  -webkit-backdrop-filter:blur(26px) saturate(132%)!important;
}
html body.patrol-mode.patrol-standalone.p26-product-shell.p27-product-shell .p7-topbar::before{
  content:""!important;
  position:absolute!important;
  inset:1px 22% auto 22px!important;
  height:1px!important;
  border-radius:999px!important;
  background:linear-gradient(90deg,rgba(255,255,255,.78),rgba(113,148,235,.15),rgba(169,121,225,.10),transparent)!important;
  pointer-events:none!important;
  z-index:-1!important;
}
html body.patrol-mode.patrol-standalone.p26-product-shell.p27-product-shell .p7-topbar::after{
  content:""!important;
  position:absolute!important;
  left:19px!important;right:19px!important;bottom:-9px!important;height:18px!important;
  background:linear-gradient(90deg,transparent,rgba(95,121,190,.045) 24%,rgba(128,101,203,.035) 74%,transparent)!important;
  filter:blur(10px)!important;
  pointer-events:none!important;
  z-index:-2!important;
}
html body.patrol-mode.patrol-standalone.p26-product-shell.p27-product-shell .p7-topbar-context{
  min-width:0!important;
  padding:0 8px 0 1px!important;
  display:flex!important;
  align-items:center!important;
}
html body.patrol-mode.patrol-standalone.p26-product-shell.p27-product-shell .p7-topbar-title-row{
  min-width:0!important;
  display:flex!important;
  align-items:center!important;
  gap:10px!important;
}
html body.patrol-mode.patrol-standalone.p26-product-shell.p27-product-shell .p7-topbar-title-row h1{
  margin:0!important;
  font-size:18.5px!important;
  line-height:1.25!important;
  font-weight:730!important;
  letter-spacing:-.022em!important;
  color:#22324c!important;
  white-space:nowrap!important;
}
html body.patrol-mode.patrol-standalone.p26-product-shell.p27-product-shell .p7-topbar-title-row span{
  margin:0!important;
  display:inline-flex!important;
  align-items:center!important;
  gap:9px!important;
  font-size:13px!important;
  line-height:1.35!important;
  color:#74809a!important;
  white-space:nowrap!important;
}
html body.patrol-mode.patrol-standalone.p26-product-shell.p27-product-shell .p7-topbar-title-row span::before{
  content:"";width:1px;height:14px;flex:none;border-radius:2px;
  background:linear-gradient(180deg,transparent,rgba(103,121,165,.20),transparent);
}
html body.patrol-mode.patrol-standalone.p26-product-shell.p27-product-shell .p7-topbar-actions{
  min-width:0!important;
  margin-left:auto!important;
  display:flex!important;
  align-items:center!important;
  justify-content:flex-end!important;
  gap:8px!important;
}
html body.patrol-mode.patrol-standalone.p26-product-shell.p27-product-shell .p7-period-chip{
  min-height:44px!important;height:44px!important;
  padding:6px 11px!important;
  border-radius:var(--p27-control-radius)!important;
  background:linear-gradient(145deg,rgba(255,255,255,.56),rgba(246,249,255,.48))!important;
  border:1px solid rgba(81,99,151,.065)!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.72)!important;
}
html body.patrol-mode.patrol-standalone.p26-product-shell.p27-product-shell .p7-period-chip span{
  font-size:12px!important;color:#7b8599!important;line-height:1.25!important
}
html body.patrol-mode.patrol-standalone.p26-product-shell.p27-product-shell .p7-period-chip strong{
  font-size:13px!important;color:#465572!important;line-height:1.25!important;font-weight:710!important
}
html body.patrol-mode.patrol-standalone.p26-product-shell.p27-product-shell .p7-compute-chip{
  min-height:44px!important;height:44px!important;
  padding:5px 9px!important;
  border:0!important;border-radius:12px!important;
  background:transparent!important;box-shadow:none!important;
}
html body.patrol-mode.patrol-standalone.p26-product-shell.p27-product-shell .p7-compute-chip i{
  width:8px!important;height:8px!important;box-shadow:0 0 0 4px rgba(38,170,125,.08)!important
}
html body.patrol-mode.patrol-standalone.p26-product-shell.p27-product-shell .p7-compute-chip strong{
  color:#46566f!important;font-size:12.5px!important;line-height:1.25!important;font-weight:690!important
}
html body.patrol-mode.patrol-standalone.p26-product-shell.p27-product-shell .p7-compute-chip small{
  color:#8390a2!important;font-size:12px!important;line-height:1.25!important
}
html body.patrol-mode.patrol-standalone.p26-product-shell.p27-product-shell .p7-top-action{
  min-height:44px!important;height:44px!important;
  padding:0 14px!important;
  border-radius:var(--p27-control-radius)!important;
  font-size:13px!important;font-weight:680!important;
  background:linear-gradient(145deg,rgba(255,255,255,.72),rgba(247,249,254,.62))!important;
  border:1px solid rgba(80,99,151,.075)!important;
  box-shadow:0 3px 11px rgba(58,72,110,.025),inset 0 1px 0 rgba(255,255,255,.82)!important;
}
html body.patrol-mode.patrol-standalone.p26-product-shell.p27-product-shell #p7TopOutputBtn{
  background:linear-gradient(135deg,#627ee5 0%,#706dde 48%,#7b5fcb 100%)!important;
  border-color:rgba(82,80,180,.17)!important;
  box-shadow:0 8px 20px rgba(86,78,190,.15),inset 0 1px 0 rgba(255,255,255,.23)!important;
}

/* 2) Main cards share the same softness. Avoid sudden white/grey slabs. */
html body.patrol-mode.patrol-standalone.p26-product-shell.p27-product-shell #patrolPage .patrol-panel{
  border-color:rgba(86,103,151,.07)!important;
  background:
    radial-gradient(circle at 100% 0%,rgba(108,142,232,.025),transparent 31%),
    linear-gradient(145deg,rgba(255,255,255,.925),rgba(249,251,255,.885))!important;
  box-shadow:0 10px 30px rgba(61,75,112,.045)!important;
}
html body.patrol-mode.patrol-standalone.p26-product-shell.p27-product-shell #patrolPage .patrol-panel-head{
  padding-top:16px!important;padding-bottom:14px!important;
  background:linear-gradient(105deg,rgba(251,253,255,.86),rgba(249,248,255,.68))!important;
  border-bottom-color:rgba(85,102,148,.06)!important;
}
html body.patrol-mode.patrol-standalone.p26-product-shell.p27-product-shell #patrolPage .patrol-panel-head :is(h2,h3,h4,strong){
  line-height:1.35!important;
}
html body.patrol-mode.patrol-standalone.p26-product-shell.p27-product-shell #patrolPage .patrol-panel-head small{
  line-height:1.5!important;color:#748098!important;
}

/* 3) Form controls and buttons: comfortable, readable and aligned. */
html body.patrol-mode.patrol-standalone.p26-product-shell.p27-product-shell #patrolPage :is(input:not([type=checkbox]):not([type=radio]),select,textarea){
  font-size:13.5px!important;
  color:#34445f!important;
  border-color:rgba(82,101,151,.10)!important;
  background-color:rgba(255,255,255,.84)!important;
}
html body.patrol-mode.patrol-standalone.p26-product-shell.p27-product-shell #patrolPage :is(input:not([type=checkbox]):not([type=radio]),select){min-height:38px!important}
html body.patrol-mode.patrol-standalone.p26-product-shell.p27-product-shell #patrolPage button:not(.p7-nav-arrow){font-size:13px!important}
html body.patrol-mode.patrol-standalone.p26-product-shell.p27-product-shell #patrolPage .btn{min-height:38px!important}

/* 4) Status/completeness rail: phrases are public copy, not debug chips. */
html body.patrol-mode.patrol-standalone.p26-product-shell.p27-product-shell #p15CompletenessBar{
  padding:9px 12px!important;
  border-color:rgba(86,103,151,.065)!important;
  background:linear-gradient(112deg,rgba(255,255,255,.78),rgba(246,249,255,.72) 60%,rgba(250,248,255,.69))!important;
  box-shadow:0 7px 20px rgba(61,75,112,.035)!important;
}
html body.patrol-mode.patrol-standalone.p26-product-shell.p27-product-shell #p15CompletenessBar .p15-completeness-item{
  padding:7px 10px!important;
  border-radius:12px!important;
  color:#516078!important;
  background:rgba(255,255,255,.72)!important;
  border-color:rgba(82,101,151,.065)!important;
}
html body.patrol-mode.patrol-standalone.p26-product-shell.p27-product-shell #p15CompletenessBar .p15-completeness-item b{
  color:#3f506b!important;font-weight:690!important;
}

/* 5) Tables: stable reading rhythm and no washed-out header text. */
html body.patrol-mode.patrol-standalone.p26-product-shell.p27-product-shell #patrolPage table thead th{
  color:#43536f!important;
  background:linear-gradient(180deg,#f8faff,#f3f6fc)!important;
  border-bottom-color:rgba(85,102,148,.08)!important;
}
html body.patrol-mode.patrol-standalone.p26-product-shell.p27-product-shell #patrolPage table tbody tr{
  transition:background-color .14s ease!important;
}
@media(hover:hover){
 html body.patrol-mode.patrol-standalone.p26-product-shell.p27-product-shell #patrolPage table tbody tr:hover{background:rgba(241,246,255,.52)!important}
}

/* 6) GIS: one connected analysis surface; keep the real base map untouched. */
html body.patrol-mode.patrol-standalone.p26-product-shell.p27-product-shell #patrolAnalysisZone .patrol-project-intelligence-map,
html body.patrol-mode.patrol-standalone.p26-product-shell.p27-product-shell #patrolAnalysisZone .patrol-store-intelligence-map{
  border-color:rgba(87,104,153,.065)!important;
  box-shadow:0 12px 34px rgba(61,75,112,.05)!important;
}
html body.patrol-mode.patrol-standalone.p26-product-shell.p27-product-shell #patrolAnalysisZone .patrol-map-intelligence-layout{
  gap:12px!important;
  background:
    radial-gradient(circle at 4% 5%,rgba(86,154,240,.045),transparent 28%),
    radial-gradient(circle at 97% 96%,rgba(150,107,220,.045),transparent 31%),
    linear-gradient(136deg,rgba(247,250,255,.78),rgba(250,248,255,.76))!important;
}
html body.patrol-mode.patrol-standalone.p26-product-shell.p27-product-shell #patrolAnalysisZone .patrol-map-canvas-shell{
  border-color:rgba(82,102,154,.075)!important;
  background:linear-gradient(145deg,rgba(255,255,255,.88),rgba(242,247,255,.80) 55%,rgba(248,244,255,.78))!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.92),0 8px 23px rgba(61,75,112,.045)!important;
}
html body.patrol-mode.patrol-standalone.p26-product-shell.p27-product-shell #patrolAnalysisZone .patrol-map-intelligence-panel :is(.patrol-map-intelligence-title,.p15-map-legend-compact,.patrol-map-insight-section,.p18-map-selection-dock,.patrol-map-metric-strip,.hf30-map-quickread){
  border-color:rgba(84,101,149,.065)!important;
  background:linear-gradient(145deg,rgba(255,255,255,.86),rgba(249,250,255,.80))!important;
  box-shadow:0 5px 15px rgba(61,75,112,.025)!important;
}

/* 7) Focus/hover: visible but restrained; never leave a mouse glow behind. */
html body.patrol-mode.patrol-standalone.p26-product-shell.p27-product-shell :is(button,a,input,select,textarea):focus:not(:focus-visible){outline:none!important;box-shadow:none!important}
html body.patrol-mode.patrol-standalone.p26-product-shell.p27-product-shell :is(button,a,input,select,textarea):focus-visible{
  outline:2px solid rgba(91,121,224,.48)!important;
  outline-offset:2px!important;
}

/* 8) Natural responsive collapse for the top rail. */
@media(max-width:1366px){
 html body.patrol-mode.patrol-standalone.p26-product-shell.p27-product-shell .p7-topbar-title-row span{display:none!important}
 html body.patrol-mode.patrol-standalone.p26-product-shell.p27-product-shell .p7-topbar{padding-left:16px!important}
}
@media(max-width:960px){
 html body.patrol-mode.patrol-standalone.p26-product-shell.p27-product-shell .p7-topbar{border-radius:18px!important;padding:7px 9px 7px 14px!important}
 html body.patrol-mode.patrol-standalone.p26-product-shell.p27-product-shell .p7-topbar-title-row h1{font-size:17px!important}
 html body.patrol-mode.patrol-standalone.p26-product-shell.p27-product-shell .p7-topbar-actions{gap:6px!important}
 html body.patrol-mode.patrol-standalone.p26-product-shell.p27-product-shell .p7-top-action{padding:0 11px!important}
}
@media(max-width:760px){
 html body.patrol-mode.patrol-standalone.p26-product-shell.p27-product-shell .p7-topbar{min-height:58px!important;border-radius:16px!important}
 html body.patrol-mode.patrol-standalone.p26-product-shell.p27-product-shell .p7-topbar-title-row h1{font-size:16px!important}
}

/* P27 batch 3 specificity hard-stop for the top chrome. */
html body.patrol-mode.patrol-standalone.p7-product-shell.p8-product-shell.p9-product-shell.p10-product-shell.p11-product-shell.p12-product-shell.p13-product-shell.p14-product-shell.p15-product-shell.p16-product-shell.p17-product-shell.p18-product-shell.p19-product-shell.p20-product-shell.p21-product-shell.p22-product-shell.p23-product-shell.p24-product-shell.p25-product-shell.p26-product-shell.p27-product-shell .p7-topbar{
  height:auto!important;min-height:68px!important;padding:8px 12px 8px 20px!important;border-radius:22px!important;overflow:visible!important;isolation:isolate!important;
  background:radial-gradient(circle at 8% 16%,rgba(96,151,246,.072),transparent 28%),radial-gradient(circle at 92% 0%,rgba(161,112,225,.065),transparent 29%),linear-gradient(118deg,rgba(255,255,255,.82),rgba(249,251,255,.74) 58%,rgba(251,248,255,.72))!important;
  border:1px solid rgba(102,119,165,.065)!important;box-shadow:0 8px 28px rgba(61,75,112,.045),0 1px 2px rgba(61,75,112,.025),inset 0 1px 0 rgba(255,255,255,.82)!important;
  backdrop-filter:blur(26px) saturate(132%)!important;-webkit-backdrop-filter:blur(26px) saturate(132%)!important
}
html body.patrol-mode.patrol-standalone.p7-product-shell.p8-product-shell.p9-product-shell.p10-product-shell.p11-product-shell.p12-product-shell.p13-product-shell.p14-product-shell.p15-product-shell.p16-product-shell.p17-product-shell.p18-product-shell.p19-product-shell.p20-product-shell.p21-product-shell.p22-product-shell.p23-product-shell.p24-product-shell.p25-product-shell.p26-product-shell.p27-product-shell .p7-topbar::after{
  left:19px!important;right:19px!important;bottom:-9px!important;width:auto!important;height:18px!important;background:linear-gradient(90deg,transparent,rgba(95,121,190,.045) 24%,rgba(128,101,203,.035) 74%,transparent)!important;filter:blur(10px)!important
}
html body.patrol-mode.patrol-standalone.p7-product-shell.p8-product-shell.p9-product-shell.p10-product-shell.p11-product-shell.p12-product-shell.p13-product-shell.p14-product-shell.p15-product-shell.p16-product-shell.p17-product-shell.p18-product-shell.p19-product-shell.p20-product-shell.p21-product-shell.p22-product-shell.p23-product-shell.p24-product-shell.p25-product-shell.p26-product-shell.p27-product-shell .p7-topbar-title-row h1{font-size:18.5px!important;line-height:1.25!important;font-weight:730!important;letter-spacing:-.022em!important;color:#22324c!important}
html body.patrol-mode.patrol-standalone.p7-product-shell.p8-product-shell.p9-product-shell.p10-product-shell.p11-product-shell.p12-product-shell.p13-product-shell.p14-product-shell.p15-product-shell.p16-product-shell.p17-product-shell.p18-product-shell.p19-product-shell.p20-product-shell.p21-product-shell.p22-product-shell.p23-product-shell.p24-product-shell.p25-product-shell.p26-product-shell.p27-product-shell .p7-topbar-title-row span{font-size:13px!important;line-height:1.35!important;color:#74809a!important}
html body.patrol-mode.patrol-standalone.p7-product-shell.p8-product-shell.p9-product-shell.p10-product-shell.p11-product-shell.p12-product-shell.p13-product-shell.p14-product-shell.p15-product-shell.p16-product-shell.p17-product-shell.p18-product-shell.p19-product-shell.p20-product-shell.p21-product-shell.p22-product-shell.p23-product-shell.p24-product-shell.p25-product-shell.p26-product-shell.p27-product-shell .p7-period-chip{min-height:44px!important;height:44px!important;padding:6px 11px!important;border-radius:13px!important;background:linear-gradient(145deg,rgba(255,255,255,.56),rgba(246,249,255,.48))!important;border:1px solid rgba(81,99,151,.065)!important;box-shadow:inset 0 1px 0 rgba(255,255,255,.72)!important}
html body.patrol-mode.patrol-standalone.p7-product-shell.p8-product-shell.p9-product-shell.p10-product-shell.p11-product-shell.p12-product-shell.p13-product-shell.p14-product-shell.p15-product-shell.p16-product-shell.p17-product-shell.p18-product-shell.p19-product-shell.p20-product-shell.p21-product-shell.p22-product-shell.p23-product-shell.p24-product-shell.p25-product-shell.p26-product-shell.p27-product-shell .p7-compute-chip{min-height:44px!important;height:44px!important;padding:5px 9px!important;border:0!important;border-radius:12px!important;background:transparent!important;box-shadow:none!important}
html body.patrol-mode.patrol-standalone.p7-product-shell.p8-product-shell.p9-product-shell.p10-product-shell.p11-product-shell.p12-product-shell.p13-product-shell.p14-product-shell.p15-product-shell.p16-product-shell.p17-product-shell.p18-product-shell.p19-product-shell.p20-product-shell.p21-product-shell.p22-product-shell.p23-product-shell.p24-product-shell.p25-product-shell.p26-product-shell.p27-product-shell .p7-top-action{min-height:44px!important;height:44px!important;padding:0 14px!important;border-radius:13px!important;font-size:13px!important;font-weight:680!important}
@media(max-width:1366px){html body.patrol-mode.patrol-standalone.p7-product-shell.p8-product-shell.p9-product-shell.p10-product-shell.p11-product-shell.p12-product-shell.p13-product-shell.p14-product-shell.p15-product-shell.p16-product-shell.p17-product-shell.p18-product-shell.p19-product-shell.p20-product-shell.p21-product-shell.p22-product-shell.p23-product-shell.p24-product-shell.p25-product-shell.p26-product-shell.p27-product-shell .p7-topbar-title-row span{display:none!important}}


/* P29 | visible-number hygiene + map feedback */
body.p29-product-shell #patrolLeadershipSummary .p15-management-brief p>b:first-child{
  display:none!important;
}
body.p29-product-shell #patrolAnalysisZone #patrolProjectBuildingPopup:not([hidden]){
  display:block!important;
  visibility:visible!important;
  opacity:1!important;
  pointer-events:auto!important;
}
body.p29-product-shell #patrolAnalysisZone #patrolProjectMapBoard{
  cursor:default;
}
body.p29-product-shell #patrolAnalysisZone .patrol-map-canvas-shell{
  scroll-margin-top:92px;
}
@media(max-width:900px){
  body.p29-product-shell #patrolAnalysisZone .patrol-map-canvas-shell{scroll-margin-top:116px}
}

/* P29 | restore the map detail popup as a natural light dialogue, not a dark side slab. */
html body.patrol-mode.patrol-standalone.p29-product-shell #patrolAnalysisZone #patrolProjectBuildingPopup:not([hidden]){
  position:absolute!important;
  left:14px!important;right:auto!important;top:14px!important;bottom:auto!important;
  width:min(400px,42%)!important;max-width:calc(100% - 28px)!important;
  height:auto!important;max-height:min(520px,68%)!important;overflow:auto!important;
  padding:12px!important;margin:0!important;
  border:1px solid rgba(91,111,165,.16)!important;border-radius:18px!important;
  background:linear-gradient(150deg,rgba(255,255,255,.985),rgba(249,251,255,.975) 58%,rgba(251,248,255,.97))!important;
  color:#26364f!important;
  box-shadow:0 18px 48px rgba(58,72,110,.16),0 2px 8px rgba(58,72,110,.08),inset 0 1px 0 rgba(255,255,255,.96)!important;
  backdrop-filter:blur(18px) saturate(120%)!important;-webkit-backdrop-filter:blur(18px) saturate(120%)!important;
}
html body.patrol-mode.patrol-standalone.p29-product-shell #patrolAnalysisZone #patrolProjectBuildingPopup .patrol-building-popup-head{
  top:-12px!important;margin:-12px 0 8px!important;padding:12px 2px 10px!important;
  background:rgba(252,253,255,.96)!important;border-bottom:1px solid rgba(91,111,165,.10)!important;
}
html body.patrol-mode.patrol-standalone.p29-product-shell #patrolAnalysisZone #patrolProjectBuildingPopup .patrol-building-popup-head strong{color:#23344e!important}
html body.patrol-mode.patrol-standalone.p29-product-shell #patrolAnalysisZone #patrolProjectBuildingPopup .patrol-building-popup-head small{color:#71809b!important}
html body.patrol-mode.patrol-standalone.p29-product-shell #patrolAnalysisZone #patrolProjectBuildingPopup .patrol-building-object{
  background:rgba(255,255,255,.86)!important;border:1px solid rgba(91,111,165,.11)!important;box-shadow:0 8px 24px rgba(58,72,110,.045)!important;
}
html body.patrol-mode.patrol-standalone.p29-product-shell #patrolAnalysisZone #patrolProjectBuildingPopup .patrol-building-object strong,
html body.patrol-mode.patrol-standalone.p29-product-shell #patrolAnalysisZone #patrolProjectBuildingPopup .patrol-building-object dd{color:#34455e!important}
html body.patrol-mode.patrol-standalone.p29-product-shell #patrolAnalysisZone #patrolProjectBuildingPopup .patrol-building-object dt{color:#75829a!important}
html body.patrol-mode.patrol-standalone.p29-product-shell #patrolAnalysisZone #patrolProjectBuildingPopup .patrol-building-pin-btn,
html body.patrol-mode.patrol-standalone.p29-product-shell #patrolAnalysisZone #patrolProjectBuildingPopup .patrol-building-popup-close{
  background:rgba(255,255,255,.90)!important;color:#4c5e7b!important;border-color:rgba(91,111,165,.14)!important;box-shadow:0 3px 12px rgba(58,72,110,.06)!important;
}
html body.patrol-mode.patrol-standalone.p29-product-shell #patrolAnalysisZone #patrolProjectBuildingPopup .patrol-building-pin-btn:hover,
html body.patrol-mode.patrol-standalone.p29-product-shell #patrolAnalysisZone #patrolProjectBuildingPopup .patrol-building-popup-close:hover{background:#f0f4ff!important;color:#395cc6!important}
@media(max-width:900px){
  html body.patrol-mode.patrol-standalone.p29-product-shell #patrolAnalysisZone #patrolProjectBuildingPopup:not([hidden]){
    left:10px!important;right:10px!important;top:auto!important;bottom:10px!important;width:auto!important;max-width:none!important;max-height:46%!important;border-radius:16px!important;
  }
}

/* P30 — use the same non-blocking map interaction pattern as the proven 06 system.
   The selected-place explanation is drawn in the canvas and mirrored in the
   right analysis rail; legacy HTML overlays must never cover map hit targets. */
body.p30-map-simple-interaction #patrolProjectBuildingPopup,
body.p30-map-simple-interaction #patrolProjectBuildingPopupCard,
body.p30-map-simple-interaction #patrolZoomBuildingPopup{
  display:none !important;
  pointer-events:none !important;
}
body.p30-map-simple-interaction #patrolProjectMapBoard{
  touch-action:manipulation;
}


/* P31 — breathing room + light full-map preview. */
body.p31-product-shell #patrolAnalysisZone .p7-map-tabs{
  margin:0 18px 14px!important;
}
body.p31-product-shell #patrolAnalysisZone .patrol-map-intelligence-head{
  padding:18px 20px!important;
}
body.p31-product-shell #patrolAnalysisZone .patrol-map-explore-bar{
  margin:0 14px 0!important;
  padding:14px 16px!important;
  border:1px solid rgba(91,111,165,.07)!important;
  border-radius:16px!important;
  background:linear-gradient(110deg,rgba(249,251,255,.94),rgba(250,248,255,.88))!important;
  box-sizing:border-box!important;
}
body.p31-product-shell #patrolAnalysisZone #patrolProjectMapFilterStatus{
  margin:8px 0 0!important;
  padding:8px 12px!important;
  min-height:34px!important;
  border:1px solid rgba(91,111,165,.075)!important;
  border-radius:11px!important;
  background:linear-gradient(135deg,rgba(255,255,255,.76),rgba(246,249,255,.74))!important;
  color:#596781!important;
  line-height:1.5!important;
  box-sizing:border-box!important;
}
body.p31-product-shell #patrolAnalysisZone .patrol-map-intelligence-layout{
  margin:12px 14px 0!important;
  padding:14px!important;
  border-radius:18px!important;
}
body.p31-product-shell #patrolAnalysisZone .patrol-map-reading-hint{
  margin:10px 2px 0!important;
  padding:10px 12px!important;
}
body.p31-product-shell #patrolAnalysisZone #patrolProjectMapConclusion,
body.p31-product-shell #patrolAnalysisZone #patrolStoreMapConclusion{
  margin:10px 14px 12px!important;
  padding:11px 14px!important;
  line-height:1.65!important;
  border-radius:15px!important;
  box-sizing:border-box!important;
}
body.p31-product-shell #patrolAnalysisZone .patrol-map-actions{
  margin:0 14px 14px!important;
  padding:10px 12px!important;
}

/* The zoom dialog must never inherit the historical dark generic-dialog skin. */
html body.patrol-mode.patrol-standalone.p31-product-shell #patrolMapPreviewDialog{
  width:min(96vw,1760px)!important;
  max-width:min(96vw,1760px)!important;
  height:94vh!important;
  max-height:94vh!important;
  padding:0!important;
  overflow:hidden!important;
  border:1px solid rgba(88,105,151,.12)!important;
  border-radius:22px!important;
  background:linear-gradient(145deg,#fbfcff,#f4f7fc 58%,#f8f5fc)!important;
  color:#26364f!important;
  box-shadow:0 28px 90px rgba(37,50,78,.24)!important;
}
html body.patrol-mode.patrol-standalone.p31-product-shell #patrolMapPreviewDialog::backdrop{
  background:rgba(35,46,68,.38)!important;
  backdrop-filter:blur(5px)!important;
  -webkit-backdrop-filter:blur(5px)!important;
}
html body.patrol-mode.patrol-standalone.p31-product-shell #patrolMapPreviewDialog .preview-dialog-head{
  min-height:66px!important;height:auto!important;
  padding:10px 14px 10px 18px!important;
  color:#283852!important;
  background:linear-gradient(115deg,rgba(255,255,255,.96),rgba(246,249,255,.93) 62%,rgba(249,246,255,.92))!important;
  border-bottom:1px solid rgba(88,105,151,.10)!important;
  box-shadow:0 5px 18px rgba(50,63,96,.045)!important;
}
html body.patrol-mode.patrol-standalone.p31-product-shell #patrolMapPreviewDialog .preview-dialog-head .btn{
  background:linear-gradient(145deg,#fff,#f4f7fc)!important;
  color:#50607b!important;
  border-color:rgba(88,105,151,.12)!important;
}
html body.patrol-mode.patrol-standalone.p31-product-shell #patrolMapPreviewDialog .patrol-map-preview-toolbar{color:#67758e!important}
html body.patrol-mode.patrol-standalone.p31-product-shell #patrolMapPreviewDialog .patrol-zoom-level{color:#3e5689!important}
html body.patrol-mode.patrol-standalone.p31-product-shell #patrolMapPreviewDialog .patrol-map-tool-hint{color:#7a869a!important}
html body.patrol-mode.patrol-standalone.p31-product-shell #patrolMapPreviewDialog .patrol-map-preview-body{
  display:flex!important;
  grid-template-columns:none!important;
  align-items:center!important;
  justify-content:center!important;
  height:calc(94vh - 66px)!important;
  max-height:calc(94vh - 66px)!important;
  padding:14px!important;
  overflow:hidden!important;
  background:
    radial-gradient(circle at 12% 8%,rgba(92,142,239,.07),transparent 30%),
    radial-gradient(circle at 94% 96%,rgba(145,100,214,.055),transparent 32%),
    linear-gradient(145deg,#f3f7fb,#f8f9fd)!important;
}
html body.patrol-mode.patrol-standalone.p31-product-shell #patrolMapPreviewDialog .patrol-building-popup-zoom{
  display:none!important;visibility:hidden!important;pointer-events:none!important;
}
html body.patrol-mode.patrol-standalone.p31-product-shell #patrolMapPreviewDialog .patrol-map-canvas-shell{
  flex:1 1 auto!important;
  width:100%!important;
  height:100%!important;
  min-width:0!important;min-height:0!important;
  margin:0!important;padding:12px!important;
  display:flex!important;align-items:center!important;justify-content:center!important;
  overflow:hidden!important;
  border:1px solid rgba(88,105,151,.10)!important;
  border-radius:18px!important;
  background:linear-gradient(145deg,rgba(255,255,255,.92),rgba(245,248,253,.88))!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.95),0 10px 30px rgba(52,67,102,.07)!important;
}
html body.patrol-mode.patrol-standalone.p31-product-shell #patrolMapPreviewDialog #patrolZoomMapBoard{
  display:block!important;
  width:auto!important;height:auto!important;
  max-width:100%!important;max-height:100%!important;
  aspect-ratio:5/4!important;
  margin:auto!important;
  background:#fbfcff!important;
  border-radius:14px!important;
  box-shadow:0 0 0 1px rgba(88,105,151,.07)!important;
  cursor:grab!important;touch-action:none!important;
}
html body.patrol-mode.patrol-standalone.p31-product-shell #patrolMapPreviewDialog #patrolZoomMapBoard:active{cursor:grabbing!important}
@media(max-width:900px){
 html body.patrol-mode.patrol-standalone.p31-product-shell #patrolMapPreviewDialog{width:100vw!important;max-width:100vw!important;height:100vh!important;max-height:100vh!important;border-radius:0!important}
 html body.patrol-mode.patrol-standalone.p31-product-shell #patrolMapPreviewDialog .patrol-map-preview-body{height:calc(100vh - 112px)!important;max-height:calc(100vh - 112px)!important;padding:8px!important}
}


/* ========================================================================
   P32 — whole-product visual system / contrast / spacing / GIS integration
   Design cues: MellyMusic environmental layers, Fluent neutral+brand roles,
   Ant Design semantic/data colors, ArcGIS-style dedicated map work surface.
   ======================================================================== */
html body.patrol-mode.patrol-standalone.p32-product-shell{
  --p32-ink:#20304a;
  --p32-text:#425471;
  --p32-muted:#6f7f98;
  --p32-faint:#8d98aa;
  --p32-line:rgba(82,101,151,.105);
  --p32-line-soft:rgba(82,101,151,.065);
  --p32-surface:rgba(255,255,255,.84);
  --p32-surface-strong:rgba(255,255,255,.94);
  --p32-surface-soft:rgba(248,251,255,.78);
  --p32-blue:#5c7eea;
  --p32-cyan:#45a9d6;
  --p32-violet:#8064df;
  --p32-magenta:#c568c8;
  --p32-green:#2f9b78;
  --p32-amber:#c58a45;
  --p32-red:#d96579;
  --p32-radius:22px;
  --p32-radius-sm:14px;
  --p32-shadow:0 16px 46px rgba(50,67,104,.075),0 2px 8px rgba(50,67,104,.028);
  --p32-shadow-soft:0 8px 26px rgba(50,67,104,.052);
  color:var(--p32-text)!important;
  background:
    radial-gradient(1000px 760px at -8% -2%,rgba(82,132,236,.14),transparent 60%),
    radial-gradient(900px 680px at 103% 2%,rgba(148,96,221,.115),transparent 61%),
    radial-gradient(860px 720px at 24% 110%,rgba(55,179,156,.09),transparent 58%),
    linear-gradient(145deg,#edf3f9 0%,#f6faff 42%,#f7f5fc 72%,#eff6f8 100%)!important;
  background-attachment:fixed!important;
}
html body.patrol-mode.patrol-standalone.p32-product-shell::before{
  content:"";position:fixed;inset:0;pointer-events:none;z-index:-1;
  background:
    radial-gradient(500px 300px at 20% 10%,rgba(255,255,255,.72),transparent 72%),
    radial-gradient(420px 280px at 78% 26%,rgba(255,255,255,.52),transparent 74%);
}

/* Shell and persistent controls: floating, continuous, never hard-white blocks. */
html body.patrol-mode.patrol-standalone.p32-product-shell .p7-sidebar{
  border:1px solid rgba(255,255,255,.76)!important;
  background:
    radial-gradient(circle at 15% 5%,rgba(96,139,235,.08),transparent 34%),
    linear-gradient(160deg,rgba(255,255,255,.88),rgba(246,250,255,.79) 58%,rgba(249,247,255,.76))!important;
  box-shadow:0 20px 56px rgba(47,62,96,.095),inset 0 1px 0 rgba(255,255,255,.92)!important;
  backdrop-filter:blur(22px) saturate(126%)!important;
  -webkit-backdrop-filter:blur(22px) saturate(126%)!important;
}
html body.patrol-mode.patrol-standalone.p32-product-shell .p7-side-brand{
  padding:18px 16px 16px!important;border-bottom:1px solid rgba(83,103,151,.075)!important;
}
html body.patrol-mode.patrol-standalone.p32-product-shell .p7-side-nav{padding:12px 10px!important}
html body.patrol-mode.patrol-standalone.p32-product-shell .p7-side-nav button,
html body.patrol-mode.patrol-standalone.p32-product-shell .p7-side-input{
  min-height:47px!important;margin:3px 0!important;padding:0 12px!important;border-radius:14px!important;
  color:#53637d!important;border:1px solid transparent!important;
  transition:transform .16s ease,background .16s ease,border-color .16s ease,box-shadow .16s ease!important;
}
html body.patrol-mode.patrol-standalone.p32-product-shell .p7-side-nav button.active{
  color:#3956a8!important;
  background:linear-gradient(120deg,rgba(92,126,234,.14),rgba(82,169,214,.085) 52%,rgba(128,100,223,.11))!important;
  border-color:rgba(91,119,210,.12)!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.84),0 7px 18px rgba(77,96,160,.06)!important;
}
@media(hover:hover){
 html body.patrol-mode.patrol-standalone.p32-product-shell .p7-side-nav button:not(.active):hover,
 html body.patrol-mode.patrol-standalone.p32-product-shell .p7-side-input:hover{
   transform:translateY(-1px);background:rgba(245,249,255,.80)!important;border-color:rgba(91,111,165,.08)!important;
 }
}
html body.patrol-mode.patrol-standalone.p32-product-shell .p7-side-foot{
  background:linear-gradient(180deg,rgba(255,255,255,.08),rgba(245,249,255,.58))!important;
  border-top-color:rgba(83,103,151,.07)!important;
}

html body.patrol-mode.patrol-standalone.p32-product-shell .p7-topbar{
  border:1px solid rgba(255,255,255,.80)!important;
  background:
    radial-gradient(circle at 80% 0%,rgba(139,103,224,.07),transparent 34%),
    linear-gradient(112deg,rgba(255,255,255,.88),rgba(247,251,255,.80) 55%,rgba(250,247,255,.78))!important;
  box-shadow:0 12px 34px rgba(47,62,96,.072),inset 0 1px 0 rgba(255,255,255,.94)!important;
  backdrop-filter:blur(22px) saturate(128%)!important;-webkit-backdrop-filter:blur(22px) saturate(128%)!important;
}
html body.patrol-mode.patrol-standalone.p32-product-shell .p7-topbar::before{
  background:linear-gradient(90deg,rgba(91,126,234,.38),rgba(68,169,214,.22) 46%,rgba(129,99,223,.30))!important;
  opacity:.46!important;
}
html body.patrol-mode.patrol-standalone.p32-product-shell .p7-topbar-title-row h1{color:var(--p32-ink)!important;font-weight:760!important;letter-spacing:-.025em!important}
html body.patrol-mode.patrol-standalone.p32-product-shell .p7-topbar-title-row span{color:#71809a!important}
html body.patrol-mode.patrol-standalone.p32-product-shell .p7-period-chip{
  background:linear-gradient(145deg,rgba(255,255,255,.82),rgba(241,247,255,.70))!important;
  border-color:rgba(85,105,157,.09)!important;box-shadow:inset 0 1px 0 rgba(255,255,255,.95)!important;
}
html body.patrol-mode.patrol-standalone.p32-product-shell .p7-period-chip span{color:#78859a!important}
html body.patrol-mode.patrol-standalone.p32-product-shell .p7-period-chip strong{color:#3e4f6d!important}
html body.patrol-mode.patrol-standalone.p32-product-shell .p7-compute-chip strong{color:#43536d!important}
html body.patrol-mode.patrol-standalone.p32-product-shell .p7-compute-chip small{color:#7c899e!important}

/* Data completeness rail: a soft bridge between top controls and content. */
html body.patrol-mode.patrol-standalone.p32-product-shell #p15CompletenessBar{
  margin-top:10px!important;padding:10px 12px!important;border-radius:17px!important;
  background:
    radial-gradient(circle at 4% 30%,rgba(79,147,235,.06),transparent 27%),
    linear-gradient(112deg,rgba(255,255,255,.78),rgba(244,249,255,.72) 58%,rgba(249,246,255,.70))!important;
  border:1px solid rgba(255,255,255,.78)!important;box-shadow:0 9px 25px rgba(54,69,104,.045),inset 0 1px 0 rgba(255,255,255,.92)!important;
}
html body.patrol-mode.patrol-standalone.p32-product-shell #p15CompletenessBar .p15-completeness-item{
  min-height:36px!important;padding:7px 11px!important;border-radius:12px!important;
  color:#596982!important;background:rgba(255,255,255,.66)!important;border-color:rgba(82,101,151,.07)!important;
}
html body.patrol-mode.patrol-standalone.p32-product-shell #p15CompletenessBar .p15-completeness-item b{color:#40516f!important}

/* Typography: hierarchy first; secondary text is never made unreadable just to look quiet. */
html body.patrol-mode.patrol-standalone.p32-product-shell #patrolPage{
  color:var(--p32-text)!important;
  font-family:-apple-system,BlinkMacSystemFont,"SF Pro Text","Segoe UI","PingFang SC","Microsoft YaHei UI","Microsoft YaHei",sans-serif!important;
}
html body.patrol-mode.patrol-standalone.p32-product-shell #patrolPage :is(h1,h2,h3,h4,strong){color:var(--p32-ink)}
html body.patrol-mode.patrol-standalone.p32-product-shell #patrolPage :is(p,small,.muted,.sub,.desc){line-height:1.58}
html body.patrol-mode.patrol-standalone.p32-product-shell #patrolPage small{color:var(--p32-muted)}

/* Module hero: atmospheric, spacious, clearly inside the same page. */
html body.patrol-mode.patrol-standalone.p32-product-shell #patrolPage .p7-module-head,
html body.patrol-mode.patrol-standalone.p32-product-shell #patrolInputZone .p7-input-heading{
  position:relative!important;overflow:hidden!important;
  margin-bottom:14px!important;padding:28px 32px!important;min-height:156px!important;
  border:1px solid rgba(255,255,255,.78)!important;border-radius:28px!important;
  background:
    radial-gradient(500px 210px at 4% 100%,rgba(99,130,238,.095),transparent 64%),
    radial-gradient(430px 220px at 84% 6%,rgba(145,94,219,.085),transparent 66%),
    linear-gradient(130deg,rgba(255,255,255,.90),rgba(247,251,255,.80) 54%,rgba(250,247,255,.78))!important;
  box-shadow:0 16px 44px rgba(52,68,104,.065),inset 0 1px 0 rgba(255,255,255,.95)!important;
}
html body.patrol-mode.patrol-standalone.p32-product-shell #patrolPage .p7-module-head::after,
html body.patrol-mode.patrol-standalone.p32-product-shell #patrolInputZone .p7-input-heading::after{
  content:"";position:absolute;left:32px;right:32px;top:0;height:2px;border-radius:0 0 999px 999px;
  background:linear-gradient(90deg,rgba(92,126,234,.45),rgba(66,171,213,.28),rgba(128,100,223,.40));opacity:.72;pointer-events:none;
}
html body.patrol-mode.patrol-standalone.p32-product-shell #patrolPage .p7-module-head h2,
html body.patrol-mode.patrol-standalone.p32-product-shell #patrolPage .p7-module-head h1,
html body.patrol-mode.patrol-standalone.p32-product-shell #patrolInputZone .p7-input-heading h2{
  color:#1e2d47!important;letter-spacing:-.035em!important;line-height:1.12!important;
}
html body.patrol-mode.patrol-standalone.p32-product-shell #patrolPage .p7-module-head p,
html body.patrol-mode.patrol-standalone.p32-product-shell #patrolInputZone .p7-input-heading p{color:#566985!important;font-size:14.5px!important;line-height:1.62!important;max-width:920px}
html body.patrol-mode.patrol-standalone.p32-product-shell #patrolPage .p7-module-kicker,
html body.patrol-mode.patrol-standalone.p32-product-shell #patrolPage .p7-module-head>span:first-child,
html body.patrol-mode.patrol-standalone.p32-product-shell #patrolInputZone .p7-input-kicker{
  color:#4760a3!important;background:linear-gradient(120deg,rgba(94,126,232,.11),rgba(129,100,223,.075))!important;
  border:1px solid rgba(93,120,205,.075)!important;border-radius:999px!important;padding:6px 11px!important;
}

/* Main panels and cards: neutral surfaces with restrained spectrum accents. */
html body.patrol-mode.patrol-standalone.p32-product-shell #patrolPage .patrol-panel,
html body.patrol-mode.patrol-standalone.p32-product-shell #patrolPage .p15-output-group,
html body.patrol-mode.patrol-standalone.p32-product-shell #patrolPage .p11-history-baseline-panel{
  border:1px solid rgba(255,255,255,.80)!important;border-radius:22px!important;
  background:
    radial-gradient(circle at 100% 0%,rgba(105,135,231,.035),transparent 28%),
    linear-gradient(145deg,rgba(255,255,255,.92),rgba(248,251,255,.85) 62%,rgba(250,248,255,.82))!important;
  box-shadow:var(--p32-shadow-soft)!important;
}
html body.patrol-mode.patrol-standalone.p32-product-shell #patrolPage .patrol-panel-head{
  min-height:64px!important;padding:17px 20px!important;
  border-bottom:1px solid rgba(82,101,151,.07)!important;
  background:linear-gradient(110deg,rgba(255,255,255,.72),rgba(245,249,255,.52) 58%,rgba(249,246,255,.46))!important;
}
html body.patrol-mode.patrol-standalone.p32-product-shell #patrolPage .patrol-panel-head h3{font-size:18px!important;line-height:1.3!important;color:#273954!important}
html body.patrol-mode.patrol-standalone.p32-product-shell #patrolPage .patrol-panel-head small{font-size:12.8px!important;color:#738099!important;line-height:1.52!important}
html body.patrol-mode.patrol-standalone.p32-product-shell #patrolPage .p24-panel-icon,
html body.patrol-mode.patrol-standalone.p32-product-shell #patrolPage .p24-kpi-icon,
html body.patrol-mode.patrol-standalone.p32-product-shell #patrolPage .p24-mini-icon,
html body.patrol-mode.patrol-standalone.p32-product-shell #patrolPage .p24-map-title-icon,
html body.patrol-mode.patrol-standalone.p32-product-shell #patrolPage .p24-insight-icon{
  color:#5e78d5!important;background:linear-gradient(145deg,#f7f9ff,#eef3ff)!important;
  border-color:rgba(91,111,165,.08)!important;box-shadow:0 5px 16px rgba(74,91,145,.055)!important;
}

/* Spectrum KPI cards: lively but calm. Text always remains dark/high-contrast. */
html body.patrol-mode.patrol-standalone.p32-product-shell #patrolPage :is(.p4-viz-kpis,.p7-domain-kpis,.p7-responsibility-kpis,.p11-history-metrics)>article{
  position:relative!important;overflow:hidden!important;min-height:104px!important;padding:17px 18px!important;
  border-color:rgba(82,101,151,.075)!important;background:linear-gradient(145deg,rgba(255,255,255,.93),rgba(247,250,255,.88))!important;
}
html body.patrol-mode.patrol-standalone.p32-product-shell #patrolPage :is(.p4-viz-kpis,.p7-domain-kpis,.p7-responsibility-kpis,.p11-history-metrics)>article::before{
  content:"";position:absolute;left:0;right:0;top:0;height:3px;background:var(--p32-card-accent,#5c7eea);opacity:.82;
}
html body.patrol-mode.patrol-standalone.p32-product-shell #patrolPage :is(.p4-viz-kpis,.p7-domain-kpis,.p7-responsibility-kpis,.p11-history-metrics)>article:nth-child(1){--p32-card-accent:#5c7eea;background:radial-gradient(circle at 100% 0%,rgba(92,126,234,.10),transparent 50%),linear-gradient(145deg,#fff,#f7f9ff)!important}
html body.patrol-mode.patrol-standalone.p32-product-shell #patrolPage :is(.p4-viz-kpis,.p7-domain-kpis,.p7-responsibility-kpis,.p11-history-metrics)>article:nth-child(2){--p32-card-accent:#d96579;background:radial-gradient(circle at 100% 0%,rgba(217,101,121,.095),transparent 50%),linear-gradient(145deg,#fff,#fff8fa)!important}
html body.patrol-mode.patrol-standalone.p32-product-shell #patrolPage :is(.p4-viz-kpis,.p7-domain-kpis,.p7-responsibility-kpis,.p11-history-metrics)>article:nth-child(3){--p32-card-accent:#c58a45;background:radial-gradient(circle at 100% 0%,rgba(197,138,69,.10),transparent 50%),linear-gradient(145deg,#fff,#fffaf3)!important}
html body.patrol-mode.patrol-standalone.p32-product-shell #patrolPage :is(.p4-viz-kpis,.p7-domain-kpis,.p7-responsibility-kpis,.p11-history-metrics)>article:nth-child(4){--p32-card-accent:#8064df;background:radial-gradient(circle at 100% 0%,rgba(128,100,223,.095),transparent 50%),linear-gradient(145deg,#fff,#faf8ff)!important}
html body.patrol-mode.patrol-standalone.p32-product-shell #patrolPage :is(.p4-viz-kpis,.p7-domain-kpis,.p7-responsibility-kpis,.p11-history-metrics)>article:nth-child(5){--p32-card-accent:#42a9c9;background:radial-gradient(circle at 100% 0%,rgba(66,169,201,.09),transparent 50%),linear-gradient(145deg,#fff,#f6fcff)!important}
html body.patrol-mode.patrol-standalone.p32-product-shell #patrolPage :is(.p4-viz-kpis,.p7-domain-kpis,.p7-responsibility-kpis,.p11-history-metrics)>article:nth-child(6){--p32-card-accent:#2f9b78;background:radial-gradient(circle at 100% 0%,rgba(47,155,120,.09),transparent 50%),linear-gradient(145deg,#fff,#f6fcfa)!important}
html body.patrol-mode.patrol-standalone.p32-product-shell #patrolPage :is(.p4-viz-kpis,.p7-domain-kpis,.p7-responsibility-kpis,.p11-history-metrics)>article :is(strong,b){color:#243651!important}
html body.patrol-mode.patrol-standalone.p32-product-shell #patrolPage :is(.p4-viz-kpis,.p7-domain-kpis,.p7-responsibility-kpis,.p11-history-metrics)>article :is(span,small){color:#687892!important}

/* Fix the reported history count card: colorful surface, clearly readable text. */
html body.patrol-mode.patrol-standalone.p32-product-shell #patrolCompareZone .p11-history-baseline-head{
  color:#273952!important;background:
    radial-gradient(circle at 12% 15%,rgba(91,128,235,.10),transparent 36%),
    radial-gradient(circle at 92% 4%,rgba(139,96,218,.09),transparent 40%),
    linear-gradient(125deg,#fbfdff,#f5f8ff 55%,#faf7ff)!important;
  border-bottom:1px solid rgba(82,101,151,.07)!important;
}
html body.patrol-mode.patrol-standalone.p32-product-shell #patrolCompareZone .p11-history-baseline-head :is(span,p){color:#63738d!important}
html body.patrol-mode.patrol-standalone.p32-product-shell #patrolCompareZone .p11-history-baseline-head h3{color:#263852!important}
html body.patrol-mode.patrol-standalone.p32-product-shell #patrolCompareZone .p11-history-count{
  min-width:118px!important;padding:16px 18px!important;border-radius:18px!important;border:1px solid rgba(255,255,255,.30)!important;
  background:linear-gradient(135deg,#5e7fe8 0%,#746ce5 50%,#8c62d9 100%)!important;
  box-shadow:0 14px 30px rgba(99,86,202,.20),inset 0 1px 0 rgba(255,255,255,.28)!important;
}
html body.patrol-mode.patrol-standalone.p32-product-shell #patrolCompareZone .p11-history-count strong{
  color:#fff!important;font-size:34px!important;text-shadow:0 1px 2px rgba(36,38,85,.18)!important;
}
html body.patrol-mode.patrol-standalone.p32-product-shell #patrolCompareZone .p11-history-count small{
  color:rgba(255,255,255,.94)!important;font-size:12.5px!important;font-weight:650!important;text-shadow:0 1px 2px rgba(36,38,85,.18)!important;
}

/* Buttons and high-frequency targets: easy to find, 42–44px, consistent states. */
html body.patrol-mode.patrol-standalone.p32-product-shell #patrolPage :is(.btn,.p14-resp-switch button,.patrol-map-filter-group button,.p7-map-tabs button,.p7-detail-btn),
html body.patrol-mode.patrol-standalone.p32-product-shell .p7-topbar .btn{
  min-height:42px!important;border-radius:13px!important;font-size:13.5px!important;font-weight:690!important;
  transition:transform .16s ease,box-shadow .16s ease,background .16s ease,border-color .16s ease!important;
}
html body.patrol-mode.patrol-standalone.p32-product-shell #patrolPage .btn.primary,
html body.patrol-mode.patrol-standalone.p32-product-shell .p7-topbar .btn.primary,
html body.patrol-mode.patrol-standalone.p32-product-shell #p7TopOutputBtn{
  color:#fff!important;text-shadow:0 1px 1px rgba(37,40,95,.12)!important;
  background:linear-gradient(135deg,#5b7de8 0%,#6678e7 35%,#7e65df 72%,#8c5fd4 100%)!important;
  border-color:rgba(79,82,185,.20)!important;
  box-shadow:0 10px 24px rgba(87,79,190,.18),inset 0 1px 0 rgba(255,255,255,.25)!important;
}
html body.patrol-mode.patrol-standalone.p32-product-shell #patrolPage .btn:not(.primary),
html body.patrol-mode.patrol-standalone.p32-product-shell .p7-topbar .btn:not(.primary){
  color:#4b5d79!important;background:linear-gradient(145deg,rgba(255,255,255,.86),rgba(244,248,255,.76))!important;
  border-color:rgba(82,101,151,.10)!important;box-shadow:0 5px 15px rgba(54,69,104,.045),inset 0 1px 0 rgba(255,255,255,.95)!important;
}
@media(hover:hover){
 html body.patrol-mode.patrol-standalone.p32-product-shell #patrolPage :is(.btn,.p14-resp-switch button,.patrol-map-filter-group button,.p7-map-tabs button,.p7-detail-btn):not(:disabled):hover,
 html body.patrol-mode.patrol-standalone.p32-product-shell .p7-topbar .btn:not(:disabled):hover{transform:translateY(-1px)!important;box-shadow:0 12px 26px rgba(54,69,104,.11)!important}
}
html body.patrol-mode.patrol-standalone.p32-product-shell #patrolPage :is(.btn,.p14-resp-switch button,.patrol-map-filter-group button,.p7-map-tabs button,.p7-detail-btn):active,
html body.patrol-mode.patrol-standalone.p32-product-shell .p7-topbar .btn:active{transform:scale(.985)!important}
html body.patrol-mode.patrol-standalone.p32-product-shell #patrolPage :is(input:not([type=checkbox]):not([type=radio]),select,textarea){
  min-height:42px!important;border-radius:12px!important;color:#344661!important;background:rgba(255,255,255,.88)!important;
  border-color:rgba(82,101,151,.11)!important;box-shadow:inset 0 1px 0 rgba(255,255,255,.92)!important;
}
html body.patrol-mode.patrol-standalone.p32-product-shell :is(button,a,input,select,textarea):focus-visible{
  outline:3px solid rgba(87,120,231,.20)!important;outline-offset:2px!important;box-shadow:0 0 0 1px rgba(81,112,216,.46)!important;
}

/* Active filters/tabs: stronger state, always readable. */
html body.patrol-mode.patrol-standalone.p32-product-shell #patrolPage :is(.p14-resp-switch button.active,.patrol-map-filter-group button.active,.p7-map-tabs button.active){
  color:#fff!important;background:linear-gradient(135deg,#5d7ee6,#7468df 64%,#8b61d4)!important;
  border-color:rgba(85,83,189,.18)!important;box-shadow:0 8px 19px rgba(88,78,185,.14)!important;
}
html body.patrol-mode.patrol-standalone.p32-product-shell #patrolPage :is(.p14-resp-switch button.active,.patrol-map-filter-group button.active,.p7-map-tabs button.active) *{color:inherit!important}

/* Tables and dense information: calm scan rhythm. */
html body.patrol-mode.patrol-standalone.p32-product-shell #patrolPage table{
  border-collapse:separate!important;border-spacing:0!important;background:rgba(255,255,255,.76)!important;
}
html body.patrol-mode.patrol-standalone.p32-product-shell #patrolPage table thead th{
  color:#40516c!important;font-size:12.8px!important;font-weight:750!important;
  background:linear-gradient(180deg,#f7f9ff,#f1f5fc)!important;border-bottom-color:rgba(82,101,151,.10)!important;
}
html body.patrol-mode.patrol-standalone.p32-product-shell #patrolPage table tbody td{color:#465874!important;border-bottom-color:rgba(82,101,151,.055)!important}
html body.patrol-mode.patrol-standalone.p32-product-shell #patrolPage table tbody tr:nth-child(even){background:rgba(247,250,255,.34)!important}
@media(hover:hover){html body.patrol-mode.patrol-standalone.p32-product-shell #patrolPage table tbody tr:hover{background:linear-gradient(90deg,rgba(237,244,255,.70),rgba(248,246,255,.55))!important}}

/* Output/quick-copy cards get a soft spectrum edge, not large heavy color blocks. */
html body.patrol-mode.patrol-standalone.p32-product-shell #patrolOutputZone :is(.p7-output-card,.p15-copy-card,.patrol-command-export-panel,.patrol-card-export-panel,.patrol-brief-panel,.p7-focus-export-panel,.patrol-writing-panel){
  border-color:rgba(82,101,151,.075)!important;background:linear-gradient(145deg,rgba(255,255,255,.94),rgba(247,250,255,.88))!important;
  box-shadow:0 8px 24px rgba(54,69,104,.045)!important;border-radius:18px!important;
}

/* GIS: one connected work surface. Real base map is untouched. */
html body.patrol-mode.patrol-standalone.p32-product-shell #patrolAnalysisZone .patrol-project-intelligence-map,
html body.patrol-mode.patrol-standalone.p32-product-shell #patrolAnalysisZone .patrol-store-intelligence-map{
  overflow:hidden!important;border:1px solid rgba(255,255,255,.82)!important;border-radius:24px!important;
  background:
    radial-gradient(circle at 4% 5%,rgba(75,151,232,.075),transparent 30%),
    radial-gradient(circle at 96% 94%,rgba(143,96,219,.065),transparent 32%),
    linear-gradient(145deg,rgba(249,252,255,.92),rgba(247,249,255,.88) 55%,rgba(250,247,255,.86))!important;
  box-shadow:0 18px 48px rgba(49,65,100,.075),inset 0 1px 0 rgba(255,255,255,.95)!important;
}
html body.patrol-mode.patrol-standalone.p32-product-shell #patrolAnalysisZone .patrol-map-intelligence-head{
  padding:20px 22px!important;background:linear-gradient(112deg,rgba(255,255,255,.76),rgba(245,250,255,.58),rgba(250,247,255,.54))!important;
  border-bottom:1px solid rgba(82,101,151,.07)!important;
}
html body.patrol-mode.patrol-standalone.p32-product-shell #patrolAnalysisZone .patrol-map-explore-bar{
  margin:14px 16px 0!important;padding:16px!important;border-radius:18px!important;
  background:linear-gradient(112deg,rgba(255,255,255,.82),rgba(242,248,255,.75) 55%,rgba(248,245,255,.72))!important;
  border:1px solid rgba(82,101,151,.075)!important;box-shadow:0 7px 20px rgba(54,69,104,.035)!important;
}
html body.patrol-mode.patrol-standalone.p32-product-shell #patrolAnalysisZone .patrol-map-filter-group button{
  min-height:40px!important;padding:0 12px!important;background:rgba(246,249,255,.84)!important;color:#526482!important;border-color:rgba(82,101,151,.065)!important;
}
html body.patrol-mode.patrol-standalone.p32-product-shell #patrolAnalysisZone .patrol-map-filter-group button.active{color:#fff!important;background:linear-gradient(135deg,#5c7ee6,#7468df)!important}
html body.patrol-mode.patrol-standalone.p32-product-shell #patrolAnalysisZone #patrolProjectMapFilterStatus{
  margin-top:10px!important;padding:10px 13px!important;color:#566783!important;background:rgba(248,251,255,.82)!important;border-radius:12px!important;
}
html body.patrol-mode.patrol-standalone.p32-product-shell #patrolAnalysisZone .patrol-map-intelligence-layout{
  gap:14px!important;margin:14px 16px 0!important;padding:16px!important;border:1px solid rgba(255,255,255,.82)!important;border-radius:21px!important;
  background:
    radial-gradient(circle at 0% 0%,rgba(80,151,235,.075),transparent 31%),
    radial-gradient(circle at 100% 100%,rgba(141,99,220,.065),transparent 33%),
    linear-gradient(136deg,rgba(241,247,253,.86),rgba(248,249,254,.82) 48%,rgba(248,245,252,.80))!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.90)!important;
}
html body.patrol-mode.patrol-standalone.p32-product-shell #patrolAnalysisZone .patrol-map-canvas-shell{
  padding:14px!important;border-radius:19px!important;border:1px solid rgba(89,108,159,.10)!important;
  background:linear-gradient(145deg,rgba(255,255,255,.95),rgba(244,248,254,.90))!important;
  box-shadow:0 12px 30px rgba(55,71,108,.065),inset 0 1px 0 rgba(255,255,255,.98)!important;
}
html body.patrol-mode.patrol-standalone.p32-product-shell #patrolAnalysisZone #patrolProjectMapBoard,
html body.patrol-mode.patrol-standalone.p32-product-shell #patrolAnalysisZone #patrolStoreMapBoard{
  border-radius:15px!important;background:#f7f9fd!important;box-shadow:0 0 0 1px rgba(88,105,151,.055)!important;
}
html body.patrol-mode.patrol-standalone.p32-product-shell #patrolAnalysisZone .patrol-map-intelligence-panel{
  gap:11px!important;padding:0!important;background:transparent!important;
}
html body.patrol-mode.patrol-standalone.p32-product-shell #patrolAnalysisZone .patrol-map-intelligence-panel :is(.patrol-map-intelligence-title,.p15-map-legend-compact,.patrol-map-insight-section,.p18-map-selection-dock,.patrol-map-metric-strip,.hf30-map-quickread,#p15MapSelectedCard){
  padding:14px 15px!important;border:1px solid rgba(255,255,255,.84)!important;border-radius:16px!important;
  background:linear-gradient(145deg,rgba(255,255,255,.92),rgba(247,250,255,.86))!important;
  box-shadow:0 7px 20px rgba(54,69,104,.045)!important;
}
html body.patrol-mode.patrol-standalone.p32-product-shell #patrolAnalysisZone .patrol-map-priority-row{
  min-height:68px!important;padding:11px 12px!important;border-radius:14px!important;background:rgba(255,255,255,.82)!important;border-color:rgba(82,101,151,.07)!important;
}
@media(hover:hover){html body.patrol-mode.patrol-standalone.p32-product-shell #patrolAnalysisZone .patrol-map-priority-row:hover{transform:translateY(-1px)!important;background:#fff!important;box-shadow:0 9px 22px rgba(54,69,104,.07)!important}}
html body.patrol-mode.patrol-standalone.p32-product-shell #patrolAnalysisZone #patrolProjectMapConclusion,
html body.patrol-mode.patrol-standalone.p32-product-shell #patrolAnalysisZone #patrolStoreMapConclusion{
  margin:12px 16px!important;padding:12px 15px!important;color:#52627d!important;border-radius:15px!important;
  background:linear-gradient(100deg,rgba(244,249,255,.80),rgba(250,247,255,.72))!important;border:1px solid rgba(82,101,151,.07)!important;
}
html body.patrol-mode.patrol-standalone.p32-product-shell #patrolAnalysisZone .patrol-map-actions{margin:0 16px 16px!important;padding:11px 12px!important}

/* Full-map preview remains light and now looks like the same product, not a separate app. */
html body.patrol-mode.patrol-standalone.p32-product-shell #patrolMapPreviewDialog{
  border:1px solid rgba(255,255,255,.80)!important;
  background:linear-gradient(145deg,#f8fbff,#f2f7fc 55%,#f8f5fc)!important;
  box-shadow:0 32px 100px rgba(38,51,81,.25)!important;
}
html body.patrol-mode.patrol-standalone.p32-product-shell #patrolMapPreviewDialog::backdrop{background:rgba(42,53,75,.28)!important;backdrop-filter:blur(7px)!important;-webkit-backdrop-filter:blur(7px)!important}
html body.patrol-mode.patrol-standalone.p32-product-shell #patrolMapPreviewDialog .preview-dialog-head{
  background:linear-gradient(112deg,rgba(255,255,255,.97),rgba(244,249,255,.94) 58%,rgba(249,246,255,.93))!important;
}
html body.patrol-mode.patrol-standalone.p32-product-shell #patrolMapPreviewDialog .patrol-map-preview-body{
  background:radial-gradient(circle at 6% 4%,rgba(81,149,235,.085),transparent 30%),radial-gradient(circle at 96% 94%,rgba(142,98,220,.07),transparent 32%),linear-gradient(145deg,#f1f7fc,#f8f9fd)!important;
}
html body.patrol-mode.patrol-standalone.p32-product-shell #patrolMapPreviewDialog .patrol-map-canvas-shell{padding:16px!important;background:linear-gradient(145deg,rgba(255,255,255,.96),rgba(243,248,253,.92))!important}

/* Broad spacing safety: avoid text or controls kissing card edges. */
html body.patrol-mode.patrol-standalone.p32-product-shell #patrolPage :is(.p7-empty-state,.p14-empty-data-state,.patrol-brief-panel,.patrol-writing-panel,.patrol-command-export-panel,.patrol-card-export-panel,.p7-focus-export-panel){padding-left:18px!important;padding-right:18px!important}
html body.patrol-mode.patrol-standalone.p32-product-shell #patrolPage :is(.p11-history-baseline-body,.patrol-panel-body,.p7-workspace-body){padding-left:max(18px,env(safe-area-inset-left))!important;padding-right:max(18px,env(safe-area-inset-right))!important}

/* Contrast locks on semantic surfaces — never dark-on-dark or light-on-light. */
html body.patrol-mode.patrol-standalone.p32-product-shell #patrolPage :is(.btn.primary,.p14-resp-switch button.active,.patrol-map-filter-group button.active,.p7-map-tabs button.active,.p11-history-count),
html body.patrol-mode.patrol-standalone.p32-product-shell #patrolPage :is(.btn.primary,.p14-resp-switch button.active,.patrol-map-filter-group button.active,.p7-map-tabs button.active,.p11-history-count) *{color:#fff!important}
html body.patrol-mode.patrol-standalone.p32-product-shell #patrolPage :is(.patrol-panel,.p7-module-head,.p7-input-heading,.p11-history-baseline-head,.patrol-map-intelligence-layout,.patrol-map-explore-bar) :is(h1,h2,h3,h4,strong){color:#243651!important}
html body.patrol-mode.patrol-standalone.p32-product-shell #patrolPage :is(.patrol-panel,.p7-module-head,.p7-input-heading,.p11-history-baseline-head,.patrol-map-intelligence-layout,.patrol-map-explore-bar) :is(p,small,span:not(.p7-status-badge):not(.p15-completeness-item)){color:#65758f}

/* Responsive: preserve comfortable type and spacing instead of shrinking to fit. */
@media(max-width:1200px){
 html body.patrol-mode.patrol-standalone.p32-product-shell #patrolPage .p7-module-head,
 html body.patrol-mode.patrol-standalone.p32-product-shell #patrolInputZone .p7-input-heading{padding:25px 26px!important;min-height:142px!important}
 html body.patrol-mode.patrol-standalone.p32-product-shell #patrolAnalysisZone .patrol-map-intelligence-layout{padding:13px!important;margin-left:12px!important;margin-right:12px!important}
}
@media(max-width:760px){
 html body.patrol-mode.patrol-standalone.p32-product-shell #patrolPage .p7-module-head,
 html body.patrol-mode.patrol-standalone.p32-product-shell #patrolInputZone .p7-input-heading{padding:22px 20px!important;min-height:132px!important;border-radius:22px!important}
 html body.patrol-mode.patrol-standalone.p32-product-shell #patrolPage .p7-module-head::after,
 html body.patrol-mode.patrol-standalone.p32-product-shell #patrolInputZone .p7-input-heading::after{left:20px;right:20px}
 html body.patrol-mode.patrol-standalone.p32-product-shell #patrolAnalysisZone .patrol-map-explore-bar{margin-left:10px!important;margin-right:10px!important;padding:12px!important}
 html body.patrol-mode.patrol-standalone.p32-product-shell #patrolAnalysisZone .patrol-map-intelligence-layout{margin-left:10px!important;margin-right:10px!important;padding:10px!important}
 html body.patrol-mode.patrol-standalone.p32-product-shell #patrolAnalysisZone #patrolProjectMapConclusion,
 html body.patrol-mode.patrol-standalone.p32-product-shell #patrolAnalysisZone #patrolStoreMapConclusion{margin-left:10px!important;margin-right:10px!important}
 html body.patrol-mode.patrol-standalone.p32-product-shell #patrolCompareZone .p11-history-count{min-width:104px!important;padding:13px 14px!important}
}
@media(prefers-reduced-motion:reduce){
 html body.patrol-mode.patrol-standalone.p32-product-shell *,html body.patrol-mode.patrol-standalone.p32-product-shell *::before,html body.patrol-mode.patrol-standalone.p32-product-shell *::after{transition:none!important;animation:none!important;scroll-behavior:auto!important}
}


/* P32 final contrast hard-stop — defeats the accumulated P20 microtype firewall. */
html body.patrol-mode.patrol-standalone.p7-product-shell.p8-product-shell.p9-product-shell.p10-product-shell.p11-product-shell.p12-product-shell.p13-product-shell.p14-product-shell.p15-product-shell.p16-product-shell.p17-product-shell.p18-product-shell.p19-product-shell.p20-product-shell.p21-product-shell.p22-product-shell.p23-product-shell.p24-product-shell.p25-product-shell.p26-product-shell.p27-product-shell.p30-product-shell.p31-product-shell.p32-product-shell #patrolPage #patrolCompareZone .p11-history-count,
html body.patrol-mode.patrol-standalone.p7-product-shell.p8-product-shell.p9-product-shell.p10-product-shell.p11-product-shell.p12-product-shell.p13-product-shell.p14-product-shell.p15-product-shell.p16-product-shell.p17-product-shell.p18-product-shell.p19-product-shell.p20-product-shell.p21-product-shell.p22-product-shell.p23-product-shell.p24-product-shell.p25-product-shell.p26-product-shell.p27-product-shell.p30-product-shell.p31-product-shell.p32-product-shell #patrolPage #patrolCompareZone .p11-history-count strong,
html body.patrol-mode.patrol-standalone.p7-product-shell.p8-product-shell.p9-product-shell.p10-product-shell.p11-product-shell.p12-product-shell.p13-product-shell.p14-product-shell.p15-product-shell.p16-product-shell.p17-product-shell.p18-product-shell.p19-product-shell.p20-product-shell.p21-product-shell.p22-product-shell.p23-product-shell.p24-product-shell.p25-product-shell.p26-product-shell.p27-product-shell.p30-product-shell.p31-product-shell.p32-product-shell #patrolPage #patrolCompareZone .p11-history-count small{
 color:#fff!important;-webkit-text-fill-color:#fff!important;text-shadow:0 1px 2px rgba(36,38,85,.18)!important;opacity:1!important;
}
html body.patrol-mode.patrol-standalone.p7-product-shell.p8-product-shell.p9-product-shell.p10-product-shell.p11-product-shell.p12-product-shell.p13-product-shell.p14-product-shell.p15-product-shell.p16-product-shell.p17-product-shell.p18-product-shell.p19-product-shell.p20-product-shell.p21-product-shell.p22-product-shell.p23-product-shell.p24-product-shell.p25-product-shell.p26-product-shell.p27-product-shell.p30-product-shell.p31-product-shell.p32-product-shell #patrolPage #patrolCompareZone .p11-history-count small{font-size:12.75px!important;font-weight:700!important}
html body.patrol-mode.patrol-standalone.p7-product-shell.p8-product-shell.p9-product-shell.p10-product-shell.p11-product-shell.p12-product-shell.p13-product-shell.p14-product-shell.p15-product-shell.p16-product-shell.p17-product-shell.p18-product-shell.p19-product-shell.p20-product-shell.p21-product-shell.p22-product-shell.p23-product-shell.p24-product-shell.p25-product-shell.p26-product-shell.p27-product-shell.p30-product-shell.p31-product-shell.p32-product-shell #patrolPage :is(.btn.primary,.p14-resp-switch button.active,.patrol-map-filter-group button.active,.p7-map-tabs button.active),
html body.patrol-mode.patrol-standalone.p7-product-shell.p8-product-shell.p9-product-shell.p10-product-shell.p11-product-shell.p12-product-shell.p13-product-shell.p14-product-shell.p15-product-shell.p16-product-shell.p17-product-shell.p18-product-shell.p19-product-shell.p20-product-shell.p21-product-shell.p22-product-shell.p23-product-shell.p24-product-shell.p25-product-shell.p26-product-shell.p27-product-shell.p30-product-shell.p31-product-shell.p32-product-shell #patrolPage :is(.btn.primary,.p14-resp-switch button.active,.patrol-map-filter-group button.active,.p7-map-tabs button.active) *{
 color:#fff!important;-webkit-text-fill-color:#fff!important;
}

/* P32 map filter count contrast lock after legacy P16/P21 decorators. */
html body.patrol-mode.patrol-standalone.p7-product-shell.p8-product-shell.p9-product-shell.p10-product-shell.p11-product-shell.p12-product-shell.p13-product-shell.p14-product-shell.p15-product-shell.p16-product-shell.p17-product-shell.p18-product-shell.p19-product-shell.p20-product-shell.p21-product-shell.p22-product-shell.p23-product-shell.p24-product-shell.p25-product-shell.p26-product-shell.p27-product-shell.p30-product-shell.p31-product-shell.p32-product-shell #patrolPage #patrolAnalysisZone .patrol-map-filter-group [data-project-map-filter].active b{color:#fff!important;-webkit-text-fill-color:#fff!important;background:rgba(255,255,255,.14)!important}

/* P32 final active-control surface hard-stop — background and text stay paired. */
html body.patrol-mode.patrol-standalone.p7-product-shell.p8-product-shell.p9-product-shell.p10-product-shell.p11-product-shell.p12-product-shell.p13-product-shell.p14-product-shell.p15-product-shell.p16-product-shell.p17-product-shell.p18-product-shell.p19-product-shell.p20-product-shell.p21-product-shell.p22-product-shell.p23-product-shell.p24-product-shell.p25-product-shell.p26-product-shell.p27-product-shell.p30-product-shell.p31-product-shell.p32-product-shell #patrolPage #patrolAnalysisZone .patrol-map-filter-group [data-project-map-filter].active,
html body.patrol-mode.patrol-standalone.p7-product-shell.p8-product-shell.p9-product-shell.p10-product-shell.p11-product-shell.p12-product-shell.p13-product-shell.p14-product-shell.p15-product-shell.p16-product-shell.p17-product-shell.p18-product-shell.p19-product-shell.p20-product-shell.p21-product-shell.p22-product-shell.p23-product-shell.p24-product-shell.p25-product-shell.p26-product-shell.p27-product-shell.p30-product-shell.p31-product-shell.p32-product-shell #patrolPage #patrolAnalysisZone .p7-map-tabs button.active,
html body.patrol-mode.patrol-standalone.p7-product-shell.p8-product-shell.p9-product-shell.p10-product-shell.p11-product-shell.p12-product-shell.p13-product-shell.p14-product-shell.p15-product-shell.p16-product-shell.p17-product-shell.p18-product-shell.p19-product-shell.p20-product-shell.p21-product-shell.p22-product-shell.p23-product-shell.p24-product-shell.p25-product-shell.p26-product-shell.p27-product-shell.p30-product-shell.p31-product-shell.p32-product-shell #patrolPage #p7ResponsibilityGrid .p14-resp-switch button.active{background:linear-gradient(135deg,#5c7ee6 0%,#7468df 58%,#8562d7 100%)!important;border-color:rgba(91,95,208,.22)!important;color:#fff!important;-webkit-text-fill-color:#fff!important;box-shadow:0 8px 20px rgba(91,101,201,.14)!important}
html body.patrol-mode.patrol-standalone.p7-product-shell.p8-product-shell.p9-product-shell.p10-product-shell.p11-product-shell.p12-product-shell.p13-product-shell.p14-product-shell.p15-product-shell.p16-product-shell.p17-product-shell.p18-product-shell.p19-product-shell.p20-product-shell.p21-product-shell.p22-product-shell.p23-product-shell.p24-product-shell.p25-product-shell.p26-product-shell.p27-product-shell.p30-product-shell.p31-product-shell.p32-product-shell #patrolPage #patrolAnalysisZone .patrol-map-filter-group [data-project-map-filter].active *,
html body.patrol-mode.patrol-standalone.p7-product-shell.p8-product-shell.p9-product-shell.p10-product-shell.p11-product-shell.p12-product-shell.p13-product-shell.p14-product-shell.p15-product-shell.p16-product-shell.p17-product-shell.p18-product-shell.p19-product-shell.p20-product-shell.p21-product-shell.p22-product-shell.p23-product-shell.p24-product-shell.p25-product-shell.p26-product-shell.p27-product-shell.p30-product-shell.p31-product-shell.p32-product-shell #patrolPage #patrolAnalysisZone .p7-map-tabs button.active *,
html body.patrol-mode.patrol-standalone.p7-product-shell.p8-product-shell.p9-product-shell.p10-product-shell.p11-product-shell.p12-product-shell.p13-product-shell.p14-product-shell.p15-product-shell.p16-product-shell.p17-product-shell.p18-product-shell.p19-product-shell.p20-product-shell.p21-product-shell.p22-product-shell.p23-product-shell.p24-product-shell.p25-product-shell.p26-product-shell.p27-product-shell.p30-product-shell.p31-product-shell.p32-product-shell #patrolPage #p7ResponsibilityGrid .p14-resp-switch button.active *{color:#fff!important;-webkit-text-fill-color:#fff!important}
html body.patrol-mode.patrol-standalone.p7-product-shell.p8-product-shell.p9-product-shell.p10-product-shell.p11-product-shell.p12-product-shell.p13-product-shell.p14-product-shell.p15-product-shell.p16-product-shell.p17-product-shell.p18-product-shell.p19-product-shell.p20-product-shell.p21-product-shell.p22-product-shell.p23-product-shell.p24-product-shell.p25-product-shell.p26-product-shell.p27-product-shell.p30-product-shell.p31-product-shell.p32-product-shell #patrolPage #patrolAnalysisZone .patrol-map-filter-group [data-project-map-filter].active b{background:rgba(255,255,255,.14)!important;border-radius:999px!important;padding:1px 5px!important}


/* ========================================================================
   P33 — Blue-white crystal memory-space / GIS reach closure
   Visual ratio: 75–80% cold white + glacier/sky blue; lavender only atmosphere.
   The spatial corridor lives behind the product surfaces; business content
   remains flat, legible and stable so the interface never becomes a 3D demo.
   ======================================================================== */
html body.patrol-mode.patrol-standalone.p33-product-shell{
  --p33-bg:#F8FBFF;
  --p33-glacier:#EAF5FF;
  --p33-cyan:#D8F5FF;
  --p33-sky:#BFDFFF;
  --p33-crystal:#A8D5FF;
  --p33-lavender:#C6B5FF;
  --p33-aurora:#A997FF;
  --p33-violet-hi:#DDD2FF;
  --p33-white:#FFFFFF;
  --p33-ink:#182C48;
  --p33-text:#405879;
  --p33-muted:#70839E;
  --p33-line:rgba(106,150,208,.105);
  --p33-line-soft:rgba(106,150,208,.065);
  --p33-parallax-x:0px;
  --p33-parallax-y:0px;
  color:var(--p33-text)!important;
  background:
    radial-gradient(900px 700px at 52% 12%,rgba(255,255,255,.98),transparent 62%),
    radial-gradient(1100px 780px at 7% -8%,rgba(168,213,255,.26),transparent 64%),
    radial-gradient(980px 720px at 104% 2%,rgba(198,181,255,.14),transparent 66%),
    radial-gradient(900px 760px at 82% 108%,rgba(216,245,255,.22),transparent 61%),
    linear-gradient(145deg,#F4F9FF 0%,#F8FBFF 42%,#F5FAFF 72%,#F8F7FF 100%)!important;
  background-attachment:fixed!important;
}
html body.patrol-mode.patrol-standalone.p33-product-shell::before{
  content:"";position:fixed;inset:-9%;pointer-events:none;z-index:-2;opacity:.72;
  transform:translate(var(--p33-parallax-x),var(--p33-parallax-y)) scale(1.035) rotate(-.35deg);
  transform-origin:56% 27%;
  background:
    radial-gradient(ellipse at 56% 27%,rgba(255,255,255,.98) 0 2.2%,rgba(216,245,255,.50) 7%,rgba(191,223,255,.20) 15%,transparent 31%),
    repeating-radial-gradient(ellipse at 56% 27%,transparent 0 74px,rgba(168,213,255,.105) 77px 79px,transparent 82px 124px,rgba(198,181,255,.060) 126px 128px,transparent 131px 178px),
    repeating-conic-gradient(from 205deg at 56% 27%,transparent 0deg 10deg,rgba(168,213,255,.075) 10.6deg 11.8deg,transparent 12.4deg 25deg,rgba(221,210,255,.050) 25.6deg 27deg,transparent 27.6deg 42deg);
  filter:blur(.15px) saturate(108%);
  -webkit-mask-image:radial-gradient(ellipse at 56% 27%,#000 0 74%,transparent 98%);
  mask-image:radial-gradient(ellipse at 56% 27%,#000 0 74%,transparent 98%);
  animation:p33CorridorBreath 30s ease-in-out infinite alternate;
}
html body.patrol-mode.patrol-standalone.p33-product-shell::after{
  content:"";position:fixed;inset:0;pointer-events:none;z-index:-1;
  background:
    radial-gradient(430px 250px at 56% 27%,rgba(255,255,255,.82),rgba(216,245,255,.17) 45%,transparent 78%),
    radial-gradient(760px 210px at 56% 98%,rgba(191,223,255,.16),transparent 72%),
    linear-gradient(180deg,transparent 62%,rgba(234,245,255,.10) 78%,rgba(255,255,255,.28) 100%);
  transform:translate(calc(var(--p33-parallax-x) * -.42),calc(var(--p33-parallax-y) * -.32));
  animation:p33Bloom 19s ease-in-out infinite alternate;
}
@keyframes p33CorridorBreath{from{opacity:.64;transform:translate(var(--p33-parallax-x),var(--p33-parallax-y)) scale(1.025) rotate(-.55deg)}to{opacity:.78;transform:translate(var(--p33-parallax-x),var(--p33-parallax-y)) scale(1.055) rotate(.28deg)}}
@keyframes p33Bloom{from{opacity:.70}to{opacity:.94}}

/* Logo becomes an identity object inside the product; it no longer dictates the product palette. */
html body.patrol-mode.patrol-standalone.p33-product-shell .p7-sidebar{
  border-color:rgba(255,255,255,.84)!important;
  background:linear-gradient(158deg,rgba(255,255,255,.91),rgba(244,250,255,.82) 66%,rgba(248,249,255,.80))!important;
  box-shadow:0 24px 64px rgba(54,86,127,.095),inset 0 1px 0 #fff!important;
  backdrop-filter:blur(24px) saturate(128%)!important;-webkit-backdrop-filter:blur(24px) saturate(128%)!important;
}
html body.patrol-mode.patrol-standalone.p33-product-shell .p7-side-brand{background:linear-gradient(145deg,rgba(255,255,255,.30),rgba(234,245,255,.16))!important}
html body.patrol-mode.patrol-standalone.p33-product-shell .p7-side-logo{filter:drop-shadow(0 7px 16px rgba(74,119,184,.13));}
html body.patrol-mode.patrol-standalone.p33-product-shell .p7-side-nav button.active{
  color:#315F9E!important;
  background:linear-gradient(118deg,rgba(168,213,255,.25),rgba(216,245,255,.19) 58%,rgba(198,181,255,.10))!important;
  border-color:rgba(122,170,229,.14)!important;box-shadow:0 8px 22px rgba(83,132,194,.065),inset 0 1px 0 rgba(255,255,255,.94)!important;
}
html body.patrol-mode.patrol-standalone.p33-product-shell .p7-topbar{
  border-color:rgba(255,255,255,.86)!important;
  background:linear-gradient(112deg,rgba(255,255,255,.92),rgba(239,248,255,.84) 64%,rgba(248,247,255,.80))!important;
  box-shadow:0 15px 38px rgba(55,86,126,.07),inset 0 1px 0 #fff!important;
}
html body.patrol-mode.patrol-standalone.p33-product-shell .p7-topbar::before{
  background:linear-gradient(90deg,rgba(89,153,239,.52),rgba(133,203,247,.30) 62%,rgba(169,151,255,.18))!important;opacity:.52!important;
}
html body.patrol-mode.patrol-standalone.p33-product-shell .p7-topbar-title-row h1{color:var(--p33-ink)!important}
html body.patrol-mode.patrol-standalone.p33-product-shell .p7-period-chip{background:linear-gradient(145deg,rgba(255,255,255,.90),rgba(234,245,255,.72))!important;border-color:rgba(111,157,214,.10)!important}
html body.patrol-mode.patrol-standalone.p33-product-shell .p7-period-chip :is(span,small){font-size:12.75px!important;line-height:1.25!important}

/* Hero: restrained memory-space depth, no heavy purple blocks. */
html body.patrol-mode.patrol-standalone.p33-product-shell #patrolPage .p7-module-head,
html body.patrol-mode.patrol-standalone.p33-product-shell #patrolInputZone .p7-input-heading{
  isolation:isolate!important;
  border-color:rgba(255,255,255,.88)!important;
  background:
    radial-gradient(520px 230px at 58% 8%,rgba(255,255,255,.94),transparent 66%),
    radial-gradient(560px 230px at 4% 112%,rgba(168,213,255,.18),transparent 67%),
    radial-gradient(380px 180px at 96% 0%,rgba(198,181,255,.095),transparent 70%),
    linear-gradient(128deg,rgba(255,255,255,.92),rgba(238,248,255,.82) 66%,rgba(249,248,255,.78))!important;
  box-shadow:0 18px 48px rgba(56,88,129,.065),inset 0 1px 0 #fff!important;
}
html body.patrol-mode.patrol-standalone.p33-product-shell #patrolPage .p7-module-head::before,
html body.patrol-mode.patrol-standalone.p33-product-shell #patrolInputZone .p7-input-heading::before{
  content:""!important;display:block!important;position:absolute!important;
  left:-8%!important;right:-8%!important;top:-25%!important;bottom:-25%!important;width:auto!important;height:auto!important;
  border-radius:0!important;z-index:-1!important;pointer-events:none!important;opacity:.50!important;
  background:
    radial-gradient(ellipse at 58% 28%,rgba(255,255,255,.72) 0 3%,transparent 12%),
    repeating-radial-gradient(ellipse at 58% 28%,transparent 0 46px,rgba(168,213,255,.095) 48px 50px,transparent 52px 88px,rgba(221,210,255,.043) 90px 92px,transparent 94px 132px)!important;
  transform:perspective(900px) rotateX(58deg) translateY(-12%)!important;transform-origin:58% 30%!important;
}
html body.patrol-mode.patrol-standalone.p33-product-shell #patrolPage .p7-module-head::after,
html body.patrol-mode.patrol-standalone.p33-product-shell #patrolInputZone .p7-input-heading::after{
  content:""!important;display:block!important;position:absolute!important;left:32px!important;right:32px!important;top:0!important;bottom:auto!important;
  width:auto!important;height:2px!important;border-radius:0 0 999px 999px!important;z-index:2!important;pointer-events:none!important;opacity:.62!important;
  background:linear-gradient(90deg,rgba(86,151,239,.58),rgba(123,199,247,.36) 76%,rgba(198,181,255,.11))!important;
}
html body.patrol-mode.patrol-standalone.p33-product-shell #patrolPage .p7-module-kicker,
html body.patrol-mode.patrol-standalone.p33-product-shell #patrolPage .p7-module-head>span:first-child,
html body.patrol-mode.patrol-standalone.p33-product-shell #patrolInputZone .p7-input-kicker{
  color:#3F6FA8!important;background:linear-gradient(120deg,rgba(168,213,255,.20),rgba(216,245,255,.18) 72%,rgba(198,181,255,.08))!important;border-color:rgba(111,158,216,.11)!important;
}

/* Business surfaces stay clear and physical over the dreamlike environmental layer. */
html body.patrol-mode.patrol-standalone.p33-product-shell #patrolPage :is(.patrol-panel,.p15-output-group,.p11-history-baseline-panel){
  border-color:rgba(255,255,255,.88)!important;
  background:linear-gradient(145deg,rgba(255,255,255,.94),rgba(244,250,255,.88) 72%,rgba(249,249,255,.84))!important;
  box-shadow:0 12px 34px rgba(55,87,128,.055),inset 0 1px 0 #fff!important;
}
html body.patrol-mode.patrol-standalone.p33-product-shell #patrolPage .patrol-panel-head{background:linear-gradient(110deg,rgba(255,255,255,.80),rgba(239,248,255,.60) 76%,rgba(248,247,255,.48))!important;border-bottom-color:rgba(100,146,204,.075)!important}
html body.patrol-mode.patrol-standalone.p33-product-shell #patrolPage .p24-panel-icon,
html body.patrol-mode.patrol-standalone.p33-product-shell #patrolPage .p24-kpi-icon,
html body.patrol-mode.patrol-standalone.p33-product-shell #patrolPage .p24-mini-icon,
html body.patrol-mode.patrol-standalone.p33-product-shell #patrolPage .p24-map-title-icon,
html body.patrol-mode.patrol-standalone.p33-product-shell #patrolPage .p24-insight-icon{
  color:#4F80C5!important;background:linear-gradient(145deg,#FBFDFF,#EAF5FF)!important;border-color:rgba(103,151,211,.095)!important;box-shadow:0 6px 18px rgba(70,118,179,.055)!important;
}

/* Blue-white becomes the action language. Lavender is only the final spectral hint. */
html body.patrol-mode.patrol-standalone.p33-product-shell #patrolPage .btn.primary,
html body.patrol-mode.patrol-standalone.p33-product-shell .p7-topbar .btn.primary,
html body.patrol-mode.patrol-standalone.p33-product-shell #p7TopOutputBtn{
  color:#fff!important;-webkit-text-fill-color:#fff!important;
  background:linear-gradient(135deg,#4D86E8 0%,#5E9FF0 48%,#76B8F4 82%,#A997FF 126%)!important;
  border-color:rgba(70,130,217,.30)!important;box-shadow:0 10px 24px rgba(66,125,208,.18),inset 0 1px 0 rgba(255,255,255,.30)!important;
}
html body.patrol-mode.patrol-standalone.p33-product-shell #patrolPage :is(.p14-resp-switch button.active,.patrol-map-filter-group button.active,.p7-map-tabs button.active){
  color:#fff!important;-webkit-text-fill-color:#fff!important;
  background:linear-gradient(135deg,#548CE8 0%,#65A7F0 64%,#9B9BF7 112%)!important;
  border-color:rgba(75,137,218,.25)!important;box-shadow:0 8px 20px rgba(67,128,205,.14)!important;
}
html body.patrol-mode.patrol-standalone.p33-product-shell #patrolPage :is(.p14-resp-switch button.active,.patrol-map-filter-group button.active,.p7-map-tabs button.active) *{color:#fff!important;-webkit-text-fill-color:#fff!important}

/* History's colorful count remains readable but is now predominantly ice blue. */
html body.patrol-mode.patrol-standalone.p33-product-shell #patrolCompareZone .p11-history-count{
  background:linear-gradient(135deg,#5C93EA 0%,#6DAEF3 58%,#A997FF 118%)!important;
  border-color:rgba(255,255,255,.38)!important;box-shadow:0 14px 30px rgba(76,135,213,.18),inset 0 1px 0 rgba(255,255,255,.32)!important;
}

/* GIS is part of the same product surface; no canvas callout is allowed to cover markers. */
html body.patrol-mode.patrol-standalone.p33-product-shell #patrolAnalysisZone :is(.patrol-project-intelligence-map,.patrol-store-intelligence-map){
  background:radial-gradient(circle at 4% 4%,rgba(168,213,255,.12),transparent 30%),radial-gradient(circle at 96% 96%,rgba(198,181,255,.07),transparent 34%),linear-gradient(145deg,rgba(250,253,255,.96),rgba(241,249,255,.91) 72%,rgba(249,248,255,.87))!important;
  border-color:rgba(255,255,255,.90)!important;box-shadow:0 20px 52px rgba(55,87,128,.07),inset 0 1px 0 #fff!important;
}
html body.patrol-mode.patrol-standalone.p33-product-shell #patrolAnalysisZone .patrol-map-explore-bar,
html body.patrol-mode.patrol-standalone.p33-product-shell #patrolAnalysisZone .patrol-map-intelligence-layout{
  background:radial-gradient(circle at 0 0,rgba(168,213,255,.11),transparent 34%),linear-gradient(135deg,rgba(248,252,255,.92),rgba(239,248,255,.86) 75%,rgba(248,247,255,.82))!important;
  border-color:rgba(111,157,214,.09)!important;
}
html body.patrol-mode.patrol-standalone.p33-product-shell #patrolAnalysisZone .patrol-map-canvas-shell{background:linear-gradient(145deg,rgba(255,255,255,.98),rgba(238,247,255,.93))!important;border-color:rgba(105,151,210,.11)!important;box-shadow:0 14px 34px rgba(55,88,130,.06),inset 0 1px 0 #fff!important}
html body.patrol-mode.patrol-standalone.p33-product-shell #patrolAnalysisZone #patrolProjectMapBoard,
html body.patrol-mode.patrol-standalone.p33-product-shell #patrolAnalysisZone #patrolStoreMapBoard{background:#F8FBFF!important;box-shadow:0 0 0 1px rgba(102,145,200,.06)!important}

/* Zoom details move into the header instead of being painted over map markers. */
html body.patrol-mode.patrol-standalone.p33-product-shell #patrolMapPreviewDialog{
  background:linear-gradient(145deg,#F8FBFF,#EEF7FF 68%,#F8F7FF)!important;border-color:rgba(255,255,255,.88)!important;box-shadow:0 34px 110px rgba(40,66,102,.22)!important;
}
html body.patrol-mode.patrol-standalone.p33-product-shell #patrolMapPreviewDialog::backdrop{background:rgba(53,77,105,.24)!important;backdrop-filter:blur(9px) saturate(112%)!important;-webkit-backdrop-filter:blur(9px) saturate(112%)!important}
html body.patrol-mode.patrol-standalone.p33-product-shell #patrolMapPreviewDialog .preview-dialog-head{background:linear-gradient(112deg,rgba(255,255,255,.98),rgba(238,248,255,.95) 72%,rgba(249,248,255,.92))!important;border-bottom-color:rgba(103,149,207,.10)!important}
html body.patrol-mode.patrol-standalone.p33-product-shell #patrolMapPreviewDialog .p33-preview-titleblock{display:flex;min-width:0;flex-direction:column;gap:3px;align-items:flex-start}
html body.patrol-mode.patrol-standalone.p33-product-shell #patrolMapPreviewDialog .p33-preview-titleblock strong{color:#203651!important;line-height:1.25;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:100%}
html body.patrol-mode.patrol-standalone.p33-product-shell #patrolMapPreviewDialog #p33ZoomSelection{display:block;max-width:min(56vw,760px);font-size:12.8px!important;font-weight:600;color:#70839B!important;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;line-height:1.25}
html body.patrol-mode.patrol-standalone.p33-product-shell #patrolMapPreviewDialog #p33ZoomSelection[data-state="selected"]{color:#416C9E!important}
html body.patrol-mode.patrol-standalone.p33-product-shell #patrolMapPreviewDialog .patrol-map-preview-body{background:radial-gradient(circle at 50% 0,rgba(255,255,255,.86),transparent 44%),radial-gradient(circle at 8% 6%,rgba(168,213,255,.13),transparent 34%),radial-gradient(circle at 96% 94%,rgba(198,181,255,.065),transparent 35%),linear-gradient(145deg,#EEF7FF,#F8FBFF)!important}
html body.patrol-mode.patrol-standalone.p33-product-shell #patrolMapPreviewDialog .patrol-map-canvas-shell{background:linear-gradient(145deg,rgba(255,255,255,.98),rgba(236,247,255,.94))!important;border-color:rgba(101,148,208,.10)!important}
html body.patrol-mode.patrol-standalone.p33-product-shell #patrolMapPreviewDialog #patrolZoomMapBoard{background:#F8FBFF!important}

@media(max-width:900px){html body.patrol-mode.patrol-standalone.p33-product-shell #patrolMapPreviewDialog #p33ZoomSelection{max-width:72vw}html body.patrol-mode.patrol-standalone.p33-product-shell #patrolMapPreviewDialog .p33-preview-titleblock{grid-column:1/-1}}
@media(prefers-reduced-motion:reduce){html body.patrol-mode.patrol-standalone.p33-product-shell::before,html body.patrol-mode.patrol-standalone.p33-product-shell::after{animation:none!important;transform:none!important}}

/* P33 final legibility/cascade closure */
html body.patrol-mode.patrol-standalone.p26-product-shell.p27-product-shell.p32-product-shell.p33-product-shell .p7-period-chip span{font-size:12.75px!important;line-height:1.25!important}
html body.patrol-mode.patrol-standalone.p26-product-shell.p27-product-shell.p32-product-shell.p33-product-shell #p7TopOutputBtn,
html body.patrol-mode.patrol-standalone.p26-product-shell.p27-product-shell.p32-product-shell.p33-product-shell #patrolPage #patrolDashboard .btn.primary{
 color:#fff!important;-webkit-text-fill-color:#fff!important;
 background:linear-gradient(135deg,#2F6DB5 0%,#3372BA 54%,#3676BE 100%)!important;
 border-color:rgba(47,109,181,.32)!important;box-shadow:0 10px 24px rgba(47,109,181,.16),inset 0 1px 0 rgba(255,255,255,.27)!important;
}

/* ========================================================================
   P34 — Integrated luminous spatial product system
   Product translation: blue-white high-energy spatial depth, restrained
   violet-blue aurora, crystal glass controls, solid business surfaces.
   Effects stay outside content hierarchy and never intercept pointer events.
   ======================================================================== */
html body.patrol-mode.patrol-standalone.p34-product-shell{
  --p34-white:#FFFFFF;
  --p34-snow:#FBFDFF;
  --p34-ice:#F3F9FF;
  --p34-glacier:#E8F5FF;
  --p34-cyan:#D9F7FF;
  --p34-sky:#CFE8FF;
  --p34-crystal:#AAD8FF;
  --p34-aurora:#C9C0FF;
  --p34-violet:#AFA6FA;
  --p34-blue:#4B8ED8;
  --p34-blue-strong:#2F70BB;
  --p34-blue-deep:#255E9E;
  --p34-ink:#16314E;
  --p34-text:#405A78;
  --p34-muted:#70849C;
  --p34-line:rgba(92,145,207,.13);
  --p34-line-soft:rgba(92,145,207,.075);
  --p34-shadow:rgba(45,82,126,.09);
  --p34-glow:rgba(104,181,246,.18);
  color:var(--p34-text)!important;
  background:
    radial-gradient(900px 620px at 58% 9%,rgba(255,255,255,1) 0%,rgba(248,252,255,.96) 43%,transparent 72%),
    radial-gradient(1050px 760px at -5% 13%,rgba(170,216,255,.30),transparent 66%),
    radial-gradient(940px 680px at 105% 8%,rgba(201,192,255,.16),transparent 69%),
    radial-gradient(960px 460px at 62% 104%,rgba(217,247,255,.28),transparent 68%),
    linear-gradient(150deg,#F4FAFF 0%,#FAFCFF 36%,#F4FAFF 69%,#F9F8FF 100%)!important;
  background-attachment:fixed!important;
  isolation:isolate;
  font-family:"Segoe UI Variable Text","SF Pro Text","PingFang SC","Microsoft YaHei UI","Microsoft YaHei",system-ui,sans-serif!important;
  -webkit-font-smoothing:antialiased;
  text-rendering:optimizeLegibility;
}
html body.patrol-mode.patrol-standalone.p34-product-shell::before,
html body.patrol-mode.patrol-standalone.p34-product-shell::after{display:none!important}

/* Global non-interactive spatial environment. */
html body.patrol-mode.patrol-standalone.p34-product-shell .p34-ambient-shell{
  position:fixed;inset:0;z-index:0;overflow:hidden;pointer-events:none;contain:strict;
}
html body.patrol-mode.patrol-standalone.p34-product-shell .p34-ambient-shell>i{position:absolute;display:block;pointer-events:none}
html body.patrol-mode.patrol-standalone.p34-product-shell .p34-ambient-core{
  inset:-22%;opacity:.72;transform-origin:59% 23%;
  transform:translate(var(--p33-parallax-x),var(--p33-parallax-y)) scale(1.04) rotate(-.5deg);
  background:
    radial-gradient(ellipse at 59% 23%,rgba(255,255,255,.98) 0 2.5%,rgba(217,247,255,.50) 8%,rgba(170,216,255,.18) 18%,transparent 35%),
    repeating-radial-gradient(ellipse at 59% 23%,transparent 0 72px,rgba(127,190,241,.085) 75px 77px,transparent 80px 118px,rgba(201,192,255,.040) 121px 123px,transparent 126px 170px),
    repeating-conic-gradient(from 214deg at 59% 23%,transparent 0deg 12deg,rgba(119,188,243,.050) 12.6deg 13.7deg,transparent 14.2deg 28deg,rgba(205,197,255,.030) 28.7deg 30deg,transparent 30.6deg 45deg);
  -webkit-mask-image:radial-gradient(ellipse at 59% 23%,#000 0 70%,rgba(0,0,0,.5) 84%,transparent 98%);
  mask-image:radial-gradient(ellipse at 59% 23%,#000 0 70%,rgba(0,0,0,.5) 84%,transparent 98%);
  animation:p34SpaceBreath 34s ease-in-out infinite alternate;
}
html body.patrol-mode.patrol-standalone.p34-product-shell .p34-ambient-ribbon{
  left:16vw;top:-10vh;width:104vw;height:66vh;border-radius:50%;opacity:.20;
  transform:translate(calc(var(--p33-parallax-x) * -.55),calc(var(--p33-parallax-y) * -.35)) rotate(-8deg);
  background:
    radial-gradient(ellipse at 42% 56%,transparent 0 42%,rgba(116,190,245,.20) 48%,rgba(216,247,255,.13) 54%,transparent 63%),
    radial-gradient(ellipse at 62% 46%,transparent 0 48%,rgba(201,192,255,.11) 54%,transparent 65%);
  filter:blur(16px);
  animation:p34RibbonDrift 27s ease-in-out infinite alternate;
}
html body.patrol-mode.patrol-standalone.p34-product-shell .p34-ambient-floor{
  left:15vw;right:-8vw;bottom:-41vh;height:68vh;border-radius:50%;opacity:.28;
  transform:perspective(980px) rotateX(67deg);transform-origin:50% 50%;
  background:
    radial-gradient(ellipse at 52% 38%,rgba(255,255,255,.76),rgba(207,232,255,.18) 35%,transparent 69%),
    repeating-radial-gradient(ellipse at 52% 38%,transparent 0 54px,rgba(112,180,236,.080) 56px 58px,transparent 60px 98px),
    linear-gradient(180deg,rgba(255,255,255,.20),rgba(207,232,255,.08));
  filter:blur(.25px);
}
html body.patrol-mode.patrol-standalone.p34-product-shell .p34-ambient-particles{
  inset:0;opacity:.25;
  background-image:
    radial-gradient(circle at 13% 18%,rgba(112,187,245,.55) 0 1px,transparent 1.6px),
    radial-gradient(circle at 32% 74%,rgba(182,205,255,.44) 0 1px,transparent 1.7px),
    radial-gradient(circle at 55% 33%,rgba(255,255,255,.96) 0 1px,transparent 1.8px),
    radial-gradient(circle at 73% 16%,rgba(154,213,250,.48) 0 1px,transparent 1.6px),
    radial-gradient(circle at 88% 68%,rgba(195,186,255,.38) 0 1px,transparent 1.7px),
    radial-gradient(circle at 62% 87%,rgba(130,202,246,.38) 0 1px,transparent 1.6px);
  background-size:420px 330px,510px 390px,610px 470px,470px 360px,560px 430px,680px 520px;
  animation:p34ParticleDrift 38s linear infinite alternate;
}
@keyframes p34SpaceBreath{from{opacity:.62;transform:translate(var(--p33-parallax-x),var(--p33-parallax-y)) scale(1.025) rotate(-.65deg)}to{opacity:.77;transform:translate(var(--p33-parallax-x),var(--p33-parallax-y)) scale(1.065) rotate(.32deg)}}
@keyframes p34RibbonDrift{from{opacity:.15;transform:translate(calc(var(--p33-parallax-x) * -.55),calc(var(--p33-parallax-y) * -.35)) rotate(-9deg) scale(.98)}to{opacity:.23;transform:translate(calc(var(--p33-parallax-x) * -.55 + 8px),calc(var(--p33-parallax-y) * -.35 + 5px)) rotate(-6deg) scale(1.02)}}
@keyframes p34ParticleDrift{from{transform:translate3d(0,0,0)}to{transform:translate3d(10px,-8px,0)}}

/* Main canvas lets the environment read through, while content remains solid. */
html body.patrol-mode.patrol-standalone.p34-product-shell #patrolPage.p7-main{
  position:relative!important;z-index:1!important;
  background:
    radial-gradient(720px 440px at 58% 0,rgba(255,255,255,.48),transparent 72%),
    linear-gradient(180deg,rgba(245,250,255,.52),rgba(244,249,255,.72) 58%,rgba(248,251,255,.78))!important;
}
html body.patrol-mode.patrol-standalone.p34-product-shell #patrolPage.p7-main>*{position:relative;z-index:1}

/* Shell: crystal controls suspended inside the same space. */
html body.patrol-mode.patrol-standalone.p34-product-shell .p7-sidebar{
  border:1px solid rgba(255,255,255,.82)!important;border-left:0!important;
  background:
    radial-gradient(240px 340px at 4% 8%,rgba(170,216,255,.18),transparent 70%),
    linear-gradient(168deg,rgba(255,255,255,.84),rgba(241,248,255,.74) 62%,rgba(248,248,255,.72))!important;
  box-shadow:18px 0 70px rgba(48,81,120,.075),inset -1px 0 0 rgba(125,179,231,.10),inset 0 1px 0 #fff!important;
  backdrop-filter:blur(30px) saturate(138%)!important;-webkit-backdrop-filter:blur(30px) saturate(138%)!important;
}
html body.patrol-mode.patrol-standalone.p34-product-shell .p7-side-brand{
  border-radius:0 0 20px 0!important;
  background:linear-gradient(145deg,rgba(255,255,255,.42),rgba(232,246,255,.18))!important;
  box-shadow:inset 0 -1px 0 rgba(108,160,218,.07)!important;
}
html body.patrol-mode.patrol-standalone.p34-product-shell .p7-side-logo{
  filter:drop-shadow(0 7px 15px rgba(66,130,201,.15)) drop-shadow(0 0 13px rgba(159,211,250,.13))!important;
}
html body.patrol-mode.patrol-standalone.p34-product-shell .p7-brand-text small{color:#71859A!important}
html body.patrol-mode.patrol-standalone.p34-product-shell .p7-brand-text strong{color:#1E3958!important;letter-spacing:-.015em}
html body.patrol-mode.patrol-standalone.p34-product-shell .p7-side-nav button,
html body.patrol-mode.patrol-standalone.p34-product-shell .p7-side-input{
  border:1px solid transparent!important;border-radius:13px!important;color:#50657E!important;
  transition:background .18s ease,border-color .18s ease,box-shadow .18s ease,transform .16s ease,color .16s ease!important;
}
html body.patrol-mode.patrol-standalone.p34-product-shell .p7-side-nav button:hover,
html body.patrol-mode.patrol-standalone.p34-product-shell .p7-side-input:hover{
  background:rgba(255,255,255,.56)!important;border-color:rgba(119,170,222,.08)!important;color:#315D90!important;transform:translateX(1px)!important;
}
html body.patrol-mode.patrol-standalone.p34-product-shell .p7-side-nav button.active{
  color:#2D65A6!important;
  background:linear-gradient(112deg,rgba(207,232,255,.64),rgba(232,247,255,.49) 62%,rgba(201,192,255,.17))!important;
  border-color:rgba(102,159,220,.16)!important;
  box-shadow:0 10px 28px rgba(62,121,187,.09),inset 0 1px 0 rgba(255,255,255,.95),inset 3px 0 0 rgba(75,142,216,.70)!important;
}
html body.patrol-mode.patrol-standalone.p34-product-shell .p7-side-nav button.active .p7-nav-icon{
  color:#3B7CC4!important;background:linear-gradient(145deg,#FFFFFF,#E5F4FF)!important;box-shadow:0 5px 14px rgba(61,126,199,.10)!important;
}
html body.patrol-mode.patrol-standalone.p34-product-shell .p7-side-foot{
  background:linear-gradient(145deg,rgba(255,255,255,.62),rgba(235,247,255,.38))!important;
  border-color:rgba(119,169,219,.09)!important;box-shadow:inset 0 1px 0 rgba(255,255,255,.88)!important;
}
html body.patrol-mode.patrol-standalone.p34-product-shell .p7-status-dot{box-shadow:0 0 0 4px rgba(70,206,169,.08),0 0 16px rgba(70,206,169,.18)!important}

html body.patrol-mode.patrol-standalone.p34-product-shell .p7-topbar{
  border:1px solid rgba(255,255,255,.84)!important;border-top:0!important;
  background:
    radial-gradient(420px 90px at 77% 0,rgba(207,232,255,.28),transparent 72%),
    linear-gradient(104deg,rgba(255,255,255,.84),rgba(241,249,255,.75) 66%,rgba(248,248,255,.72))!important;
  box-shadow:0 18px 48px rgba(45,78,118,.07),inset 0 -1px 0 rgba(101,155,214,.075),inset 0 1px 0 #fff!important;
  backdrop-filter:blur(30px) saturate(140%)!important;-webkit-backdrop-filter:blur(30px) saturate(140%)!important;
}
html body.patrol-mode.patrol-standalone.p34-product-shell .p7-topbar::before{
  height:2px!important;opacity:.62!important;
  background:linear-gradient(90deg,rgba(64,137,219,.68),rgba(112,194,242,.43) 58%,rgba(201,192,255,.17) 88%,transparent)!important;
  box-shadow:0 0 14px rgba(104,181,246,.12)!important;
}
html body.patrol-mode.patrol-standalone.p34-product-shell .p7-topbar-product{color:#8392A4!important}
html body.patrol-mode.patrol-standalone.p34-product-shell .p7-topbar-title-row h1{color:var(--p34-ink)!important;font-weight:760!important;letter-spacing:-.022em!important}
html body.patrol-mode.patrol-standalone.p34-product-shell .p7-topbar-title-row span{color:#6E829A!important}
html body.patrol-mode.patrol-standalone.p34-product-shell :is(.p7-period-chip,.p7-compute-chip){
  background:linear-gradient(145deg,rgba(255,255,255,.80),rgba(232,246,255,.55))!important;
  border:1px solid rgba(106,158,215,.10)!important;box-shadow:0 7px 20px rgba(54,98,151,.045),inset 0 1px 0 rgba(255,255,255,.92)!important;
}

/* Hero / module entry: luminous depth behind plain readable content. */
html body.patrol-mode.patrol-standalone.p34-product-shell #patrolPage .p7-module-head,
html body.patrol-mode.patrol-standalone.p34-product-shell #patrolInputZone .p7-input-heading{
  border:1px solid rgba(255,255,255,.90)!important;border-radius:28px!important;overflow:hidden!important;
  background:
    radial-gradient(680px 280px at 61% -22%,rgba(255,255,255,1),rgba(217,247,255,.34) 38%,transparent 70%),
    radial-gradient(420px 300px at 2% 90%,rgba(170,216,255,.16),transparent 70%),
    radial-gradient(440px 300px at 103% 8%,rgba(201,192,255,.11),transparent 72%),
    linear-gradient(123deg,rgba(255,255,255,.91),rgba(242,249,255,.84) 58%,rgba(249,248,255,.79))!important;
  box-shadow:0 22px 62px rgba(44,80,124,.08),0 0 0 1px rgba(207,232,255,.16),inset 0 1px 0 #fff!important;
}
html body.patrol-mode.patrol-standalone.p34-product-shell #patrolPage .p7-module-head::before,
html body.patrol-mode.patrol-standalone.p34-product-shell #patrolInputZone .p7-input-heading::before{
  content:""!important;display:block!important;position:absolute!important;left:34%!important;right:-12%!important;top:-116%!important;height:235%!important;width:auto!important;border-radius:50%!important;pointer-events:none!important;z-index:0!important;opacity:.55!important;
  background:
    radial-gradient(ellipse at 48% 47%,rgba(255,255,255,.78) 0 4%,transparent 18%),
    repeating-radial-gradient(ellipse at 48% 47%,transparent 0 42px,rgba(108,181,238,.090) 44px 46px,transparent 48px 77px,rgba(201,192,255,.034) 79px 81px,transparent 83px 112px)!important;
  transform:perspective(920px) rotateX(65deg) rotateZ(-4deg)!important;transform-origin:48% 47%!important;
}
html body.patrol-mode.patrol-standalone.p34-product-shell #patrolPage .p7-module-head::after,
html body.patrol-mode.patrol-standalone.p34-product-shell #patrolInputZone .p7-input-heading::after{
  content:""!important;display:block!important;position:absolute!important;left:30px!important;right:30px!important;top:0!important;height:2px!important;width:auto!important;border-radius:0 0 999px 999px!important;pointer-events:none!important;z-index:2!important;opacity:.82!important;
  background:linear-gradient(90deg,rgba(56,126,207,.72),rgba(106,190,239,.46) 62%,rgba(201,192,255,.16),transparent)!important;
  box-shadow:0 0 15px rgba(94,173,235,.14)!important;
}
html body.patrol-mode.patrol-standalone.p34-product-shell #patrolPage .p7-module-head>* ,
html body.patrol-mode.patrol-standalone.p34-product-shell #patrolInputZone .p7-input-heading>*{position:relative;z-index:1}
html body.patrol-mode.patrol-standalone.p34-product-shell #patrolPage .p7-module-head h2,
html body.patrol-mode.patrol-standalone.p34-product-shell #patrolInputZone .p7-input-heading h2{color:#152E49!important;font-weight:780!important;letter-spacing:-.035em!important}
html body.patrol-mode.patrol-standalone.p34-product-shell #patrolPage .p7-module-head p,
html body.patrol-mode.patrol-standalone.p34-product-shell #patrolInputZone .p7-input-heading p{color:#5F7590!important;line-height:1.65!important}
html body.patrol-mode.patrol-standalone.p34-product-shell #patrolPage :is(.p7-module-kicker,.patrol-section-kicker),
html body.patrol-mode.patrol-standalone.p34-product-shell #patrolInputZone .p7-input-kicker{
  color:#3E72A9!important;background:linear-gradient(120deg,rgba(207,232,255,.58),rgba(226,247,255,.44) 72%,rgba(201,192,255,.10))!important;
  border:1px solid rgba(97,155,215,.12)!important;box-shadow:inset 0 1px 0 rgba(255,255,255,.88)!important;
}

/* Crystal business surfaces: depth is in material/elevation, not busy borders. */
html body.patrol-mode.patrol-standalone.p34-product-shell #patrolPage :is(
  .patrol-panel,.p4-chart-panel,.p7-domain-workspace,.p7-domain-primary,.p7-responsibility-overview,
  .p15-output-group,.p11-history-baseline-panel,.patrol-compare-dashboard,.p7-input-workspace,
  .patrol-contract-card,.patrol-one-paste-card,.patrol-command-export-panel,.p7-focus-export-panel
){
  border:1px solid rgba(255,255,255,.90)!important;
  background:
    radial-gradient(380px 180px at 100% 0,rgba(207,232,255,.13),transparent 72%),
    linear-gradient(145deg,rgba(255,255,255,.91),rgba(246,251,255,.86) 72%,rgba(250,250,255,.82))!important;
  box-shadow:0 16px 44px rgba(44,78,119,.065),0 0 0 1px rgba(202,229,250,.08),inset 0 1px 0 #fff!important;
  backdrop-filter:blur(12px) saturate(112%)!important;-webkit-backdrop-filter:blur(12px) saturate(112%)!important;
}
html body.patrol-mode.patrol-standalone.p34-product-shell #patrolPage :is(.patrol-panel,.p4-chart-panel,.p15-output-group){border-radius:20px!important}
html body.patrol-mode.patrol-standalone.p34-product-shell #patrolPage .patrol-panel-head,
html body.patrol-mode.patrol-standalone.p34-product-shell #patrolPage .p15-output-group>header{
  background:linear-gradient(110deg,rgba(255,255,255,.76),rgba(236,247,255,.54) 72%,rgba(248,248,255,.45))!important;
  border-bottom-color:rgba(94,148,207,.075)!important;
}
html body.patrol-mode.patrol-standalone.p34-product-shell #patrolPage :is(.patrol-panel-head h3,.p4-chart-panel h3,.p15-output-group h3){color:#1D3857!important;letter-spacing:-.018em!important}
html body.patrol-mode.patrol-standalone.p34-product-shell #patrolPage :is(.patrol-panel-head small,.p4-chart-panel small,.p15-output-group small){color:#72869C!important}

/* KPI surfaces are richer without becoming dashboard neon. */
html body.patrol-mode.patrol-standalone.p34-product-shell #patrolPage :is(.p4-viz-kpis,.p7-domain-kpis,.p7-responsibility-kpis,.p11-history-metrics)>article{
  border:1px solid rgba(255,255,255,.90)!important;
  background:
    radial-gradient(180px 110px at 100% 0,rgba(170,216,255,.18),transparent 70%),
    linear-gradient(145deg,rgba(255,255,255,.92),rgba(244,250,255,.84))!important;
  box-shadow:0 14px 34px rgba(45,81,124,.055),inset 0 1px 0 #fff!important;
}
html body.patrol-mode.patrol-standalone.p34-product-shell #patrolPage :is(.p4-viz-kpis,.p7-domain-kpis,.p7-responsibility-kpis,.p11-history-metrics)>article::before{
  height:2px!important;opacity:.84!important;background:linear-gradient(90deg,#73B8F3,#91D7F4 62%,#C9C0FF)!important;box-shadow:0 0 14px rgba(98,179,239,.12)!important;
}
html body.patrol-mode.patrol-standalone.p34-product-shell #patrolPage :is(.p4-viz-kpis,.p7-domain-kpis,.p7-responsibility-kpis,.p11-history-metrics)>article strong{color:#183553!important;letter-spacing:-.035em!important}
html body.patrol-mode.patrol-standalone.p34-product-shell #patrolPage .p4-viz-kpis>article.attention::before{background:linear-gradient(90deg,#E6A15E,#F0BF70 64%,#D9B7A6)!important}

/* Data charts: professional tracks with controlled depth. */
html body.patrol-mode.patrol-standalone.p34-product-shell #patrolPage :is(.p4-stack,.patrol-change-bars,.p7-bar-chart){
  background:linear-gradient(180deg,rgba(226,239,250,.72),rgba(239,247,253,.92))!important;
  box-shadow:inset 0 1px 4px rgba(44,80,122,.07),0 1px 0 rgba(255,255,255,.88)!important;
}
html body.patrol-mode.patrol-standalone.p34-product-shell #patrolPage .p4-stack i{box-shadow:inset 0 1px 0 rgba(255,255,255,.36)!important}
html body.patrol-mode.patrol-standalone.p34-product-shell #patrolPage :is(.p4-stack-legend span,.patrol-compare-legend span,.patrol-schema-badge,.patrol-domain-chip){
  background:linear-gradient(145deg,rgba(255,255,255,.83),rgba(235,247,255,.58))!important;
  border-color:rgba(103,156,213,.10)!important;box-shadow:inset 0 1px 0 rgba(255,255,255,.88)!important;
}

/* Leadership, readiness and narrative strips become luminous information plates. */
html body.patrol-mode.patrol-standalone.p34-product-shell #patrolPage :is(
 .patrol-leadership-summary,.patrol-data-ready-bar,.patrol-snapshot-strip,.patrol-map-filter-status,
 .patrol-writing-note,.patrol-management-summary,.patrol-map-conclusion,.p7-filterbar
){
  border-color:rgba(101,154,211,.10)!important;
  background:linear-gradient(118deg,rgba(248,252,255,.90),rgba(232,246,255,.72) 70%,rgba(248,247,255,.66))!important;
  box-shadow:0 10px 28px rgba(45,81,123,.045),inset 0 1px 0 rgba(255,255,255,.90)!important;
}

/* Buttons: clear hierarchy, soft physical feedback, no neon outline. */
html body.patrol-mode.patrol-standalone.p34-product-shell :is(.btn,.p7-top-action,.p7-map-tabs button,.patrol-map-filter-group button,.p14-resp-switch button){
  min-height:42px!important;border-radius:13px!important;transition:transform .16s ease,box-shadow .18s ease,background .18s ease,border-color .18s ease!important;
}
html body.patrol-mode.patrol-standalone.p34-product-shell #patrolPage .btn:not(.primary),
html body.patrol-mode.patrol-standalone.p34-product-shell .p7-topbar .btn:not(.primary){
  color:#3E5E80!important;background:linear-gradient(145deg,rgba(255,255,255,.88),rgba(235,247,255,.66))!important;
  border:1px solid rgba(95,151,210,.12)!important;box-shadow:0 7px 18px rgba(48,90,140,.05),inset 0 1px 0 rgba(255,255,255,.95)!important;
}
html body.patrol-mode.patrol-standalone.p34-product-shell #patrolPage .btn.primary,
html body.patrol-mode.patrol-standalone.p34-product-shell .p7-topbar .btn.primary,
html body.patrol-mode.patrol-standalone.p34-product-shell #p7TopOutputBtn{
  color:#fff!important;-webkit-text-fill-color:#fff!important;
  background:linear-gradient(135deg,#2E6DB7 0%,#3783D3 52%,#4B9BE0 100%)!important;
  border:1px solid rgba(45,105,179,.28)!important;
  box-shadow:0 11px 26px rgba(46,112,185,.18),inset 0 1px 0 rgba(255,255,255,.30)!important;
}
html body.patrol-mode.patrol-standalone.p34-product-shell :is(.btn,.p7-map-tabs button,.patrol-map-filter-group button,.p14-resp-switch button):hover:not(:disabled){transform:translateY(-1px)!important;box-shadow:0 11px 27px rgba(45,91,145,.11)!important}
html body.patrol-mode.patrol-standalone.p34-product-shell :is(.btn,.p7-map-tabs button,.patrol-map-filter-group button,.p14-resp-switch button):active:not(:disabled){transform:scale(.982)!important}
html body.patrol-mode.patrol-standalone.p34-product-shell #patrolPage :is(.p14-resp-switch button.active,.patrol-map-filter-group button.active,.p7-map-tabs button.active){
  color:#fff!important;-webkit-text-fill-color:#fff!important;background:linear-gradient(135deg,#3476C1,#438ED8 68%,#649FE0)!important;
  border-color:rgba(46,112,185,.26)!important;box-shadow:0 9px 23px rgba(45,111,184,.16),inset 0 1px 0 rgba(255,255,255,.26)!important;
}
html body.patrol-mode.patrol-standalone.p34-product-shell #patrolPage :is(.p14-resp-switch button.active,.patrol-map-filter-group button.active,.p7-map-tabs button.active) *{color:#fff!important;-webkit-text-fill-color:#fff!important}

/* Tables: clean crystal sheets, no visual noise. */
html body.patrol-mode.patrol-standalone.p34-product-shell #patrolPage :is(.p7-table-wrap,.patrol-table,.p7-object-table-panel){
  border-color:rgba(99,151,208,.10)!important;box-shadow:0 12px 34px rgba(45,80,121,.045),inset 0 1px 0 rgba(255,255,255,.82)!important;
}
html body.patrol-mode.patrol-standalone.p34-product-shell #patrolPage table thead th{
  background:linear-gradient(180deg,rgba(241,248,255,.94),rgba(234,245,253,.88))!important;color:#45617F!important;border-bottom-color:rgba(91,145,202,.10)!important;
}
html body.patrol-mode.patrol-standalone.p34-product-shell #patrolPage table tbody tr:hover{background:rgba(226,243,255,.45)!important}

/* GIS — the map is the luminous focal plane; real base map pixels remain untouched. */
html body.patrol-mode.patrol-standalone.p34-product-shell #patrolAnalysisZone :is(.patrol-project-intelligence-map,.patrol-store-intelligence-map){
  position:relative!important;overflow:hidden!important;
  border:1px solid rgba(255,255,255,.94)!important;
  background:
    radial-gradient(760px 320px at 42% -12%,rgba(255,255,255,.95),rgba(217,247,255,.30) 46%,transparent 76%),
    radial-gradient(420px 360px at 101% 4%,rgba(201,192,255,.11),transparent 70%),
    linear-gradient(145deg,rgba(250,253,255,.94),rgba(238,248,255,.88) 72%,rgba(248,248,255,.84))!important;
  box-shadow:0 24px 70px rgba(42,76,116,.085),0 0 0 1px rgba(204,233,252,.13),inset 0 1px 0 #fff!important;
}
html body.patrol-mode.patrol-standalone.p34-product-shell #patrolAnalysisZone :is(.patrol-project-intelligence-map,.patrol-store-intelligence-map)::before{
  content:"";position:absolute;inset:0;pointer-events:none;z-index:0;opacity:.75;
  background:linear-gradient(90deg,rgba(93,166,229,.52),rgba(116,207,242,.34) 52%,rgba(201,192,255,.13),transparent) top/100% 2px no-repeat;
}
html body.patrol-mode.patrol-standalone.p34-product-shell #patrolAnalysisZone :is(.patrol-project-intelligence-map,.patrol-store-intelligence-map)>*{position:relative;z-index:1}
html body.patrol-mode.patrol-standalone.p34-product-shell #patrolAnalysisZone :is(.patrol-map-explore-bar,.patrol-map-intelligence-layout){
  border:1px solid rgba(255,255,255,.88)!important;
  background:
    radial-gradient(420px 180px at 0 0,rgba(207,232,255,.24),transparent 70%),
    linear-gradient(132deg,rgba(249,253,255,.88),rgba(234,247,255,.76) 74%,rgba(248,248,255,.72))!important;
  box-shadow:0 12px 32px rgba(46,82,124,.045),inset 0 1px 0 rgba(255,255,255,.92)!important;
}
html body.patrol-mode.patrol-standalone.p34-product-shell #patrolAnalysisZone .patrol-map-canvas-shell{
  position:relative!important;
  background:linear-gradient(145deg,rgba(255,255,255,.99),rgba(238,249,255,.96))!important;
  border:1px solid rgba(116,175,229,.17)!important;
  box-shadow:0 22px 58px rgba(46,87,134,.085),0 0 0 6px rgba(225,243,255,.34),0 0 42px rgba(124,196,245,.08),inset 0 1px 0 #fff!important;
}
html body.patrol-mode.patrol-standalone.p34-product-shell #patrolAnalysisZone .patrol-map-canvas-shell::after{
  content:"";position:absolute;inset:0;pointer-events:none;border-radius:inherit;
  box-shadow:inset 0 0 0 1px rgba(255,255,255,.72),inset 0 18px 38px rgba(207,232,255,.045)!important;
}
html body.patrol-mode.patrol-standalone.p34-product-shell #patrolAnalysisZone :is(.patrol-map-insight-section,.patrol-map-intelligence-panel,.patrol-map-rich-legend){
  border-color:rgba(99,154,211,.10)!important;
  background:linear-gradient(145deg,rgba(255,255,255,.88),rgba(238,249,255,.74))!important;
  box-shadow:0 12px 32px rgba(46,82,124,.05),inset 0 1px 0 rgba(255,255,255,.90)!important;
}
html body.patrol-mode.patrol-standalone.p34-product-shell #patrolAnalysisZone .patrol-map-reading-hint{color:#6B8098!important;background:rgba(239,248,255,.74)!important;border-color:rgba(100,154,211,.10)!important}
html body.patrol-mode.patrol-standalone.p34-product-shell #patrolAnalysisZone :is(#patrolProjectMapBoard,#patrolStoreMapBoard){background:#FBFDFF!important;filter:none!important}

/* Zoom remains a bright full-width operational map, now visually connected to GIS. */
html body.patrol-mode.patrol-standalone.p34-product-shell #patrolMapPreviewDialog{
  border:1px solid rgba(255,255,255,.94)!important;
  background:
    radial-gradient(720px 260px at 52% -8%,rgba(255,255,255,.98),rgba(217,247,255,.27) 48%,transparent 78%),
    linear-gradient(145deg,#F8FCFF,#EDF7FF 68%,#F8F8FF)!important;
  box-shadow:0 38px 120px rgba(34,63,98,.24),0 0 0 1px rgba(207,232,255,.22)!important;
}
html body.patrol-mode.patrol-standalone.p34-product-shell #patrolMapPreviewDialog::backdrop{background:rgba(55,78,105,.22)!important;backdrop-filter:blur(12px) saturate(112%)!important;-webkit-backdrop-filter:blur(12px) saturate(112%)!important}
html body.patrol-mode.patrol-standalone.p34-product-shell #patrolMapPreviewDialog .preview-dialog-head{
  background:linear-gradient(110deg,rgba(255,255,255,.97),rgba(235,247,255,.92) 72%,rgba(249,248,255,.90))!important;
  border-bottom-color:rgba(101,155,212,.10)!important;box-shadow:0 7px 22px rgba(48,84,126,.045)!important;
}
html body.patrol-mode.patrol-standalone.p34-product-shell #patrolMapPreviewDialog .patrol-map-preview-body{
  background:radial-gradient(620px 240px at 50% 0,rgba(255,255,255,.93),transparent 70%),linear-gradient(145deg,#ECF7FF,#F9FCFF)!important;
}
html body.patrol-mode.patrol-standalone.p34-product-shell #patrolMapPreviewDialog .patrol-map-canvas-shell{
  border-color:rgba(107,165,220,.16)!important;background:#FBFDFF!important;
  box-shadow:0 24px 64px rgba(45,84,130,.10),0 0 0 6px rgba(224,243,255,.32),inset 0 1px 0 #fff!important;
}
html body.patrol-mode.patrol-standalone.p34-product-shell #patrolMapPreviewDialog #p33ZoomSelection{font-size:13px!important;color:#667E97!important}
html body.patrol-mode.patrol-standalone.p34-product-shell #patrolMapPreviewDialog #p33ZoomSelection[data-state="selected"]{color:#326DA8!important;font-weight:650!important}

/* Small corner details and feedback. */
html body.patrol-mode.patrol-standalone.p34-product-shell #patrolPage :is(.patrol-schema-badge,.p7-domain-chip,.patrol-pin-count,.p7-period-chip){border-radius:999px!important}
html body.patrol-mode.patrol-standalone.p34-product-shell #patrolPage :is(.p24-panel-icon,.p24-kpi-icon,.p24-mini-icon,.p24-map-title-icon,.p24-insight-icon){
  color:#3978B9!important;background:linear-gradient(145deg,#FFFFFF,#E7F5FF)!important;border-color:rgba(95,153,212,.11)!important;
  box-shadow:0 7px 18px rgba(54,111,174,.07),inset 0 1px 0 #fff!important;
}
html body.patrol-mode.patrol-standalone.p34-product-shell :focus-visible{outline:2px solid rgba(51,126,202,.82)!important;outline-offset:3px!important;box-shadow:0 0 0 4px rgba(133,200,246,.16)!important}

/* Typography and spacing stability. */
html body.patrol-mode.patrol-standalone.p34-product-shell #patrolPage :is(p,small,td,th,button,input,select,textarea){text-shadow:none!important}
html body.patrol-mode.patrol-standalone.p34-product-shell #patrolPage :is(p,td){line-height:1.58!important}
html body.patrol-mode.patrol-standalone.p34-product-shell #patrolPage :is(.patrol-panel,.p4-chart-panel,.patrol-map-intelligence-panel){overflow-wrap:anywhere}

@media(max-width:1200px){
  html body.patrol-mode.patrol-standalone.p34-product-shell .p34-ambient-core{opacity:.54}
  html body.patrol-mode.patrol-standalone.p34-product-shell .p34-ambient-ribbon{opacity:.12}
  html body.patrol-mode.patrol-standalone.p34-product-shell #patrolPage .p7-module-head,
  html body.patrol-mode.patrol-standalone.p34-product-shell #patrolInputZone .p7-input-heading{border-radius:24px!important}
}
@media(max-width:900px){
  html body.patrol-mode.patrol-standalone.p34-product-shell .p34-ambient-ribbon,
  html body.patrol-mode.patrol-standalone.p34-product-shell .p34-ambient-particles{display:none!important}
  html body.patrol-mode.patrol-standalone.p34-product-shell .p34-ambient-core{opacity:.38}
  html body.patrol-mode.patrol-standalone.p34-product-shell .p34-ambient-floor{opacity:.16}
  html body.patrol-mode.patrol-standalone.p34-product-shell #patrolAnalysisZone .patrol-map-canvas-shell{box-shadow:0 16px 40px rgba(46,87,134,.07),0 0 0 3px rgba(225,243,255,.28),inset 0 1px 0 #fff!important}
}
@media(max-width:640px){
  html body.patrol-mode.patrol-standalone.p34-product-shell .p34-ambient-floor{display:none!important}
  html body.patrol-mode.patrol-standalone.p34-product-shell #patrolPage .p7-module-head,
  html body.patrol-mode.patrol-standalone.p34-product-shell #patrolInputZone .p7-input-heading{border-radius:20px!important}
}
@media(prefers-reduced-motion:reduce){
  html body.patrol-mode.patrol-standalone.p34-product-shell .p34-ambient-shell>*{animation:none!important;transform:none!important}
  html body.patrol-mode.patrol-standalone.p34-product-shell :is(.btn,.p7-side-nav button,.p7-side-input){transition:none!important}
}


/* ==========================================================================
   P35 | Mature GIS inspector + typed governance analysis
   ========================================================================== */
html body.patrol-mode.patrol-standalone.p35-product-shell .patrol-map-canvas-shell{isolation:isolate}
html body.patrol-mode.patrol-standalone.p35-product-shell .p35-map-detail-layer{position:absolute;inset:0;z-index:8;pointer-events:none;overflow:visible;border-radius:inherit}
html body.patrol-mode.patrol-standalone.p35-product-shell .p35-detail-leader{position:absolute;inset:0;width:100%;height:100%;overflow:visible;pointer-events:none}
html body.patrol-mode.patrol-standalone.p35-product-shell .p35-detail-leader .under{stroke:rgba(255,255,255,.98);stroke-width:6.5;stroke-linecap:round}
html body.patrol-mode.patrol-standalone.p35-product-shell .p35-detail-leader .main{stroke:rgba(70,132,194,.82);stroke-width:2.2;stroke-linecap:round}
html body.patrol-mode.patrol-standalone.p35-product-shell .p35-detail-leader circle{fill:#fff;stroke:rgba(61,127,194,.9);stroke-width:2}
html body.patrol-mode.patrol-standalone.p35-product-shell .p35-map-detail-card{position:absolute;box-sizing:border-box;max-width:min(440px,calc(100% - 20px));max-height:min(470px,calc(100% - 20px));overflow:hidden;pointer-events:auto;border-radius:20px;border:1px solid rgba(108,163,218,.25);background:linear-gradient(145deg,rgba(255,255,255,.985),rgba(240,249,255,.965) 70%,rgba(247,245,255,.96));box-shadow:0 20px 52px rgba(40,74,112,.16),0 0 0 1px rgba(255,255,255,.82),0 0 34px rgba(113,191,240,.10);color:#20364f;backdrop-filter:blur(18px) saturate(112%);-webkit-backdrop-filter:blur(18px) saturate(112%)}
html body.patrol-mode.patrol-standalone.p35-product-shell .p35-map-detail-card::before{content:"";display:block;height:3px;background:linear-gradient(90deg,#68A8E7,#79D0F1 55%,rgba(179,165,246,.68));opacity:.9}
html body.patrol-mode.patrol-standalone.p35-product-shell .p35-detail-head{display:flex;align-items:flex-start;gap:10px;padding:14px 15px 10px;border-bottom:1px solid rgba(119,166,211,.13);background:radial-gradient(240px 90px at 20% 0,rgba(201,235,255,.38),transparent 75%)}
html body.patrol-mode.patrol-standalone.p35-product-shell .p35-detail-head>div{min-width:0;flex:1}
html body.patrol-mode.patrol-standalone.p35-product-shell .p35-detail-head span{display:block;font-size:12.75px;font-weight:800;letter-spacing:.03em;color:#4F82B4;margin-bottom:3px}
html body.patrol-mode.patrol-standalone.p35-product-shell .p35-detail-head strong{display:block;font-size:17px;line-height:1.35;color:#173957;overflow-wrap:anywhere}
html body.patrol-mode.patrol-standalone.p35-product-shell .p35-detail-head small{display:block;margin-top:4px;font-size:13px;line-height:1.45;color:#6B7E91;overflow-wrap:anywhere}
html body.patrol-mode.patrol-standalone.p35-product-shell .p35-detail-close{width:34px;height:34px;min-width:34px;border:0;border-radius:11px;background:rgba(232,244,253,.88);color:#416B93;font-size:21px;line-height:1;cursor:pointer;box-shadow:inset 0 0 0 1px rgba(104,159,211,.12)}
html body.patrol-mode.patrol-standalone.p35-product-shell .p35-detail-close:hover{background:#E5F3FE;transform:translateY(-1px)}
html body.patrol-mode.patrol-standalone.p35-product-shell .p35-detail-responsibility{display:grid;grid-template-columns:auto 1fr;gap:7px 10px;align-items:center;margin:10px 14px 7px;padding:9px 11px;border-radius:13px;background:linear-gradient(120deg,rgba(232,246,255,.82),rgba(247,249,255,.78));border:1px solid rgba(113,164,214,.12)}
html body.patrol-mode.patrol-standalone.p35-product-shell .p35-detail-responsibility span{font-size:12.75px;color:#6D8195}
html body.patrol-mode.patrol-standalone.p35-product-shell .p35-detail-responsibility b{font-size:13.25px;color:#284968;overflow-wrap:anywhere}
html body.patrol-mode.patrol-standalone.p35-product-shell .p35-detail-chips{display:flex;flex-wrap:wrap;gap:6px;padding:0 14px 9px}
html body.patrol-mode.patrol-standalone.p35-product-shell .p35-detail-chips span{font-size:12.75px;font-weight:750;padding:4px 8px;border-radius:999px;background:#EEF7FF;color:#3C6F9F;border:1px solid rgba(93,154,211,.13)}
html body.patrol-mode.patrol-standalone.p35-product-shell .p35-detail-chips span.project{background:rgba(231,244,255,.9);color:#356C9F}
html body.patrol-mode.patrol-standalone.p35-product-shell .p35-detail-chips span.store{background:rgba(235,249,251,.92);color:#39797F}
html body.patrol-mode.patrol-standalone.p35-product-shell .p35-detail-scroll{overflow:auto;max-height:330px;padding:0 12px 13px;scrollbar-width:thin;scrollbar-color:#BCD7EC transparent}
html body.patrol-mode.patrol-standalone.p35-product-shell .p35-detail-section{padding:9px 0 2px;border-top:1px solid rgba(112,158,203,.10)}
html body.patrol-mode.patrol-standalone.p35-product-shell .p35-detail-section:first-child{border-top:0}
html body.patrol-mode.patrol-standalone.p35-product-shell .p35-detail-section-head{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:0 3px 6px}
html body.patrol-mode.patrol-standalone.p35-product-shell .p35-detail-section-head b{font-size:13.5px;color:#365B7E}
html body.patrol-mode.patrol-standalone.p35-product-shell .p35-detail-section-head span{font-size:12.75px;font-weight:800;color:#6282A0}
html body.patrol-mode.patrol-standalone.p35-product-shell .p35-detail-object{margin:5px 0;padding:9px 10px;border-radius:13px;background:rgba(255,255,255,.78);border:1px solid rgba(109,158,205,.10);box-shadow:0 5px 15px rgba(51,92,133,.035)}
html body.patrol-mode.patrol-standalone.p35-product-shell .p35-detail-object-title{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:6px;align-items:start}
html body.patrol-mode.patrol-standalone.p35-product-shell .p35-dash{font-size:14px;font-weight:900;color:#5C91C3;line-height:1.45}
html body.patrol-mode.patrol-standalone.p35-product-shell .p35-detail-object-title b{font-size:13.25px;line-height:1.45;color:#274761;overflow-wrap:anywhere}
html body.patrol-mode.patrol-standalone.p35-product-shell .p35-detail-object-title em{font-style:normal;font-size:11.75px;font-weight:800;white-space:nowrap;padding:2px 6px;border-radius:999px;background:#EAF5FF;color:#4A79A7}
html body.patrol-mode.patrol-standalone.p35-product-shell .p35-detail-object.store .p35-detail-object-title em{background:#ECF9FA;color:#4B7D81}
html body.patrol-mode.patrol-standalone.p35-product-shell .p35-detail-object>small{display:block;margin:3px 0 5px 18px;font-size:12.75px;line-height:1.45;color:#6C7F91;overflow-wrap:anywhere}
html body.patrol-mode.patrol-standalone.p35-product-shell .p35-detail-object-meta{display:flex;flex-wrap:wrap;gap:5px;margin-left:18px}
html body.patrol-mode.patrol-standalone.p35-product-shell .p35-detail-object-meta span{font-size:11.75px;padding:2px 6px;border-radius:7px;background:rgba(239,246,252,.9);color:#64798B}
html body.patrol-mode.patrol-standalone.p35-product-shell .p35-detail-more{margin:6px 0 2px;border-radius:11px;background:rgba(235,246,255,.55);border:1px solid rgba(102,159,214,.10)}
html body.patrol-mode.patrol-standalone.p35-product-shell .p35-detail-more summary{cursor:pointer;padding:8px 10px;font-size:12.75px;font-weight:800;color:#4777A3;list-style-position:inside}
html body.patrol-mode.patrol-standalone.p35-product-shell .p35-detail-more>div{padding:0 6px 5px}
html body.patrol-mode.patrol-standalone.p35-product-shell .p35-detail-empty{font-size:12.75px;color:#8190A0;padding:7px 4px 9px}
html body.patrol-mode.patrol-standalone.p35-product-shell :is(.p35-domain-type-summary,.p35-map-type-summary){display:flex;align-items:center;flex-wrap:wrap;gap:7px;margin:0 0 11px;padding:8px 10px;border-radius:14px;background:linear-gradient(120deg,rgba(238,248,255,.88),rgba(248,250,255,.80));border:1px solid rgba(105,159,211,.10)}
html body.patrol-mode.patrol-standalone.p35-product-shell .p35-domain-type-summary{margin:0 0 12px}
html body.patrol-mode.patrol-standalone.p35-product-shell :is(.p35-domain-type-summary,.p35-map-type-summary)>.p35-type-label{font-size:12.75px;font-weight:750;color:#73879A;margin-right:2px}
html body.patrol-mode.patrol-standalone.p35-product-shell :is(.p35-domain-type-summary,.p35-map-type-summary)>b{display:inline-flex;align-items:center;gap:5px;font-size:12.75px;color:#426989;padding:4px 8px;border-radius:999px;background:rgba(255,255,255,.80);border:1px solid rgba(108,159,205,.10)}
html body.patrol-mode.patrol-standalone.p35-product-shell :is(.p35-domain-type-summary,.p35-map-type-summary)>b i{width:6px;height:6px;border-radius:50%;background:#70AADE;box-shadow:0 0 9px rgba(91,164,224,.28)}
html body.patrol-mode.patrol-standalone.p35-product-shell :is(.p35-domain-type-summary,.p35-map-type-summary)>b[data-kind="sporadic"] i{background:#8D86DF}
html body.patrol-mode.patrol-standalone.p35-product-shell :is(.p35-domain-type-summary,.p35-map-type-summary)>b strong{font-size:13px;color:#244C70}
html body.patrol-mode.patrol-standalone.p35-product-shell #patrolAnalysisZone .patrol-map-canvas-shell{overflow:hidden}
html body.patrol-mode.patrol-standalone.p35-product-shell #patrolMapPreviewDialog .patrol-map-canvas-shell{overflow:hidden}
html body.patrol-mode.patrol-standalone.p35-product-shell :is(#patrolProjectMapBoard,#patrolStoreMapBoard,#patrolZoomMapBoard){position:relative;z-index:1}
html body.patrol-mode.patrol-standalone.p35-product-shell .p35-map-detail-layer{z-index:4}
html body.patrol-mode.patrol-standalone.p35-product-shell .p35-map-detail-card{z-index:2}
html body.patrol-mode.patrol-standalone.p35-product-shell .p35-detail-leader{z-index:1}
@media(max-width:900px){html body.patrol-mode.patrol-standalone.p35-product-shell .p35-map-detail-card{max-width:min(380px,calc(100% - 16px));max-height:min(430px,calc(100% - 16px))}html body.patrol-mode.patrol-standalone.p35-product-shell .p35-detail-scroll{max-height:285px}}

/* P35 callout placement uses the complete GIS work surface, mirroring the proven 06 behavior. */
html body.patrol-mode.patrol-standalone.p35-product-shell #patrolAnalysisZone .patrol-map-intelligence-layout,
html body.patrol-mode.patrol-standalone.p35-product-shell #patrolMapPreviewDialog .patrol-map-preview-body{position:relative!important;overflow:visible!important}
html body.patrol-mode.patrol-standalone.p35-product-shell #patrolAnalysisZone .p35-map-detail-layer,
html body.patrol-mode.patrol-standalone.p35-product-shell #patrolMapPreviewDialog .p35-map-detail-layer{z-index:24}
html body.patrol-mode.patrol-standalone.p35-product-shell #patrolAnalysisZone .p35-map-detail-card{max-width:min(390px,calc(100% - 20px));max-height:min(430px,calc(100% - 20px))}
html body.patrol-mode.patrol-standalone.p35-product-shell .p35-detail-scroll{max-height:278px}

/* P35 formal project-type analysis chart: small projects and sporadic work are distinct business types. */
html body.patrol-mode.patrol-standalone.p35-product-shell .p35-domain-type-summary{display:block!important;margin:0 0 14px!important;padding:14px 15px!important;border-radius:18px!important;background:linear-gradient(135deg,rgba(246,251,255,.96),rgba(236,247,255,.91) 58%,rgba(245,242,255,.88))!important;border:1px solid rgba(92,151,207,.12)!important;box-shadow:0 14px 34px rgba(72,119,164,.07),inset 0 1px 0 rgba(255,255,255,.92)!important}
html body.patrol-mode.patrol-standalone.p35-product-shell .p35-type-chart-head{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;margin-bottom:12px}
html body.patrol-mode.patrol-standalone.p35-product-shell .p35-type-chart-head>div{min-width:0}
html body.patrol-mode.patrol-standalone.p35-product-shell .p35-type-chart-head b{display:block;font-size:14px;line-height:1.35;color:#254B6C}
html body.patrol-mode.patrol-standalone.p35-product-shell .p35-type-chart-head small{display:block;margin-top:3px;font-size:12.75px;line-height:1.45;color:#73879A}
html body.patrol-mode.patrol-standalone.p35-product-shell .p35-type-chart-head>strong{font-size:18px;line-height:1;color:#245B8A;white-space:nowrap}
html body.patrol-mode.patrol-standalone.p35-product-shell .p35-type-chart-body{display:grid;gap:9px}
html body.patrol-mode.patrol-standalone.p35-product-shell .p35-type-chart-row{display:grid;grid-template-columns:minmax(82px,112px) minmax(110px,1fr) 52px 52px;gap:9px;align-items:center}
html body.patrol-mode.patrol-standalone.p35-product-shell .p35-type-chart-name{display:flex;align-items:center;gap:7px;min-width:0}
html body.patrol-mode.patrol-standalone.p35-product-shell .p35-type-chart-name i{width:8px;height:8px;flex:0 0 8px;border-radius:50%;background:#5F9FD7;box-shadow:0 0 12px rgba(80,157,221,.26)}
html body.patrol-mode.patrol-standalone.p35-product-shell .p35-type-chart-row[data-kind="sporadic"] .p35-type-chart-name i{background:#918ADF;box-shadow:0 0 12px rgba(145,138,223,.24)}
html body.patrol-mode.patrol-standalone.p35-product-shell .p35-type-chart-name span{font-size:13px;font-weight:760;color:#3C617F;white-space:nowrap}
html body.patrol-mode.patrol-standalone.p35-product-shell .p35-type-chart-track{height:9px;overflow:hidden;border-radius:999px;background:rgba(139,181,218,.14);box-shadow:inset 0 1px 2px rgba(52,91,127,.05)}
html body.patrol-mode.patrol-standalone.p35-product-shell .p35-type-chart-track em{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,#4C8DC8,#75B6E7);box-shadow:0 0 15px rgba(83,158,217,.20)}
html body.patrol-mode.patrol-standalone.p35-product-shell .p35-type-chart-row[data-kind="sporadic"] .p35-type-chart-track em{background:linear-gradient(90deg,#7D86D8,#AAA0EB);box-shadow:0 0 15px rgba(133,126,218,.18)}
html body.patrol-mode.patrol-standalone.p35-product-shell .p35-type-chart-row>strong{font-size:13px;text-align:right;color:#315A7B;white-space:nowrap}
html body.patrol-mode.patrol-standalone.p35-product-shell .p35-type-chart-row>small{font-size:12.75px;text-align:right;color:#7A8D9E;white-space:nowrap}
html body.patrol-mode.patrol-standalone.p35-product-shell .p35-type-chart-empty{font-size:13px;color:#7D8E9E;padding:3px 0}
/* Keep every newly introduced popup label above the standing 12.5px readability gate. */
html body.patrol-mode.patrol-standalone.p35-product-shell .p35-detail-object-title em{font-size:12.75px!important}
html body.patrol-mode.patrol-standalone.p35-product-shell .p35-detail-object-meta span{font-size:12.75px!important}
@media(max-width:700px){html body.patrol-mode.patrol-standalone.p35-product-shell .p35-type-chart-row{grid-template-columns:94px minmax(90px,1fr) 48px}.p35-type-chart-row>small{display:none}}

/* P35 final callout line hard-stop: SVG polyline must never create a filled polygon. */
html body.patrol-mode.patrol-standalone.p35-product-shell .p35-detail-leader polyline{fill:none!important}


/* P36 | atomic GIS detail scene, constrained placement and render stability */
html body.patrol-mode.patrol-standalone.p36-product-shell .p36-atomic-detail-layer{
  pointer-events:none!important;overflow:hidden!important;contain:paint!important;
}
html body.patrol-mode.patrol-standalone.p36-product-shell .p36-atomic-detail-layer[hidden],
html body.patrol-mode.patrol-standalone.p36-product-shell .p36-atomic-detail-layer .p35-map-detail-card[hidden],
html body.patrol-mode.patrol-standalone.p36-product-shell .p36-atomic-detail-layer .p35-detail-leader[hidden]{display:none!important}
html body.patrol-mode.patrol-standalone.p36-product-shell .p36-atomic-detail-layer .p35-detail-leader{overflow:hidden!important;pointer-events:none!important;fill:none!important}
html body.patrol-mode.patrol-standalone.p36-product-shell .p36-atomic-detail-layer .p35-map-detail-card{pointer-events:auto!important;transform:none!important;min-width:0!important}
html body.patrol-mode.patrol-standalone.p36-product-shell #patrolAnalysisZone .patrol-map-canvas-shell,
html body.patrol-mode.patrol-standalone.p36-product-shell #patrolMapPreviewDialog .patrol-map-canvas-shell{isolation:isolate!important}
html body.patrol-mode.patrol-standalone.p36-product-shell #patrolAnalysisZone .patrol-map-intelligence-layout,
html body.patrol-mode.patrol-standalone.p36-product-shell #patrolMapPreviewDialog .patrol-map-preview-body{position:relative!important}
@media(max-width:640px){html body.patrol-mode.patrol-standalone.p36-product-shell .p36-atomic-detail-layer .p35-map-detail-card{border-radius:16px!important}.p36-product-shell .p35-detail-scroll{max-height:250px!important}}

html body.patrol-mode.patrol-standalone.p36-product-shell #patrolMapPreviewDialog .p35-map-detail-card{max-width:min(330px,calc(100% - 18px))!important;max-height:min(320px,calc(100% - 18px))!important}
html body.patrol-mode.patrol-standalone.p36-product-shell #patrolMapPreviewDialog .p35-detail-scroll{max-height:208px!important}


/* P36 readable dynamic-data floor: do not pass responsive layout by shrinking text. */
html body.patrol-mode.patrol-standalone.p36-product-shell :is(.p14-project-scope-note,.p15-data-gap-note){font-size:13px!important;line-height:1.55!important}
html body.patrol-mode.patrol-standalone.p36-product-shell .p9-responsibility-table,
html body.patrol-mode.patrol-standalone.p36-product-shell .p9-responsibility-table :is(thead,tbody,tr,th,td){font-size:13px!important;line-height:1.45!important}

/* P36 final readability gate: dynamic responsibility table + GIS current-point header */
.p36-product-shell .p9-responsibility-table{font-size:13px!important}
.p36-product-shell .p15-map-card-head span{font-size:13px!important}


/* ==========================================================================
   P37 | true Canvas display ratio + visual leader frame ownership
   The main canvas was still inheriting P18 height:100%, stretching 1600x1280
   into tall arbitrary rectangles. Keep CSS geometry at the same 5:4 ratio as
   the backing canvas; width changes, height follows naturally.
   ========================================================================== */
html body.patrol-mode.patrol-standalone.p37-product-shell #patrolAnalysisZone .patrol-map-canvas-shell{
  min-height:0!important;height:auto!important;align-self:start!important;overflow:hidden!important;
}
html body.patrol-mode.patrol-standalone.p37-product-shell #patrolAnalysisZone #patrolProjectMapBoard,
html body.patrol-mode.patrol-standalone.p37-product-shell #patrolAnalysisZone #patrolStoreMapBoard{
  display:block!important;width:100%!important;height:auto!important;min-height:0!important;max-height:none!important;
  aspect-ratio:5/4!important;object-fit:contain!important;
}
html body.patrol-mode.patrol-standalone.p37-product-shell .p36-atomic-detail-layer .p35-detail-leader{
  position:absolute!important;inset:0!important;width:100%!important;height:100%!important;overflow:hidden!important;
}


/* P38 | visible marker circle is the only leader attachment geometry.
   Hit target stays generous, but no longer participates in visual placement. */
html body.patrol-mode.patrol-standalone.p38-product-shell .p36-atomic-detail-layer .p35-detail-leader circle{
  r:3.5px;
}

/* P39 | exact radial marker-to-leader attachment; presentation inherits P38. */
html body.patrol-mode.patrol-standalone.p39-product-shell .p36-atomic-detail-layer .p35-detail-leader{pointer-events:none;}


/* ==========================================================================
   P40 | Silk performance + bounded GIS detail + output-center performance
   ========================================================================== */
html body.patrol-mode.patrol-standalone.p40-product-shell{
  background-attachment:scroll!important;
}
html body.patrol-mode.patrol-standalone.p40-product-shell .p7-sidebar,
html body.patrol-mode.patrol-standalone.p40-product-shell .p7-topbar{
  backdrop-filter:blur(14px) saturate(118%)!important;
  -webkit-backdrop-filter:blur(14px) saturate(118%)!important;
}
html body.patrol-mode.patrol-standalone.p40-product-shell.p40-scrolling .p7-sidebar,
html body.patrol-mode.patrol-standalone.p40-product-shell.p40-scrolling .p7-topbar,
html body.patrol-mode.patrol-standalone.p40-product-shell.p40-scrolling #patrolMapPreviewDialog::backdrop{
  backdrop-filter:none!important;-webkit-backdrop-filter:none!important;
}
html body.patrol-mode.patrol-standalone.p40-product-shell.p40-scrolling .p34-ambient-shell>*{
  animation-play-state:paused!important;
}
html body.patrol-mode.patrol-standalone.p40-product-shell .p34-ambient-ribbon{filter:blur(9px)!important;opacity:.13!important}
html body.patrol-mode.patrol-standalone.p40-product-shell #patrolOutputZone>.patrol-panel,
html body.patrol-mode.patrol-standalone.p40-product-shell #patrolOutputZone>.patrol-copy-grid,
html body.patrol-mode.patrol-standalone.p40-product-shell #patrolOutputZone>.p7-output-guide{
  content-visibility:auto;contain-intrinsic-size:420px;contain:layout paint style;
}
html body.patrol-mode.patrol-standalone.p40-product-shell #patrolOutputZone .patrol-copy-card,
html body.patrol-mode.patrol-standalone.p40-product-shell #patrolOutputZone .p7-output-guide>article{
  contain:layout paint;transform:translateZ(0);
}
html body.patrol-mode.patrol-standalone.p40-product-shell.p40-scrolling #patrolOutputZone :is(.patrol-panel,.patrol-copy-card,.p7-output-guide>article){
  box-shadow:none!important;transition:none!important;
}
/* Map detail stays in the map stage. The right-side legend / analysis rail remains readable. */
html body.patrol-mode.patrol-standalone.p40-product-shell #patrolAnalysisZone .p35-map-detail-layer{z-index:18!important}
html body.patrol-mode.patrol-standalone.p40-product-shell .p36-atomic-detail-layer .p35-map-detail-card{
  display:flex!important;flex-direction:column!important;
  max-width:min(360px,calc(100% - 16px))!important;
  max-height:min(460px,calc(100% - 16px))!important;
  border-radius:18px!important;
  backdrop-filter:blur(10px) saturate(108%)!important;
  -webkit-backdrop-filter:blur(10px) saturate(108%)!important;
  box-shadow:0 14px 34px rgba(42,78,119,.13),0 0 0 1px rgba(255,255,255,.74)!important;
  contain:layout paint style!important;
}
html body.patrol-mode.patrol-standalone.p40-product-shell .p36-atomic-detail-layer .p35-detail-scroll{
  flex:1 1 auto!important;min-height:0!important;max-height:none!important;
  overflow:auto!important;overscroll-behavior:contain!important;scrollbar-gutter:stable;
  padding-bottom:14px!important;
}
html body.patrol-mode.patrol-standalone.p40-product-shell .p35-detail-head{flex:0 0 auto!important}
html body.patrol-mode.patrol-standalone.p40-product-shell .p35-detail-responsibility,
html body.patrol-mode.patrol-standalone.p40-product-shell .p35-detail-chips{flex:0 0 auto!important}
html body.patrol-mode.patrol-standalone.p40-product-shell .p35-detail-object{padding:9px 10px!important;margin-bottom:7px!important}
html body.patrol-mode.patrol-standalone.p40-product-shell .p35-detail-section-head{position:sticky;top:0;z-index:1;background:rgba(247,251,255,.94);backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px)}
html body.patrol-mode.patrol-standalone.p40-product-shell #patrolMapPreviewDialog .p35-map-detail-card{max-width:min(350px,calc(100% - 16px))!important;max-height:min(440px,calc(100% - 16px))!important}
html body.patrol-mode.patrol-standalone.p40-product-shell #patrolMapPreviewDialog .p35-detail-scroll{max-height:none!important}
/* Distribution label now has enough room for grid + staff. */
html body.patrol-mode.patrol-standalone.p40-product-shell #p7ProjectGridChart .p7-bar-row{grid-template-columns:minmax(200px,1.4fr) minmax(180px,2.2fr) 62px minmax(116px,1fr)!important}
html body.patrol-mode.patrol-standalone.p40-product-shell #p7ProjectGridChart .p7-bar-row>span:first-child{font-weight:760!important;color:#294D73!important;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
/* After clear, raw input must be visible and immediately editable. */
html body.patrol-mode.patrol-standalone.p40-product-shell #patrolInputZone:not(.p15-input-ready) #patrolInput,
html body.patrol-mode.patrol-standalone.p40-product-shell #patrolInput.p15-raw-open{display:block!important;opacity:1!important;max-height:430px!important}
@media(max-width:900px){
 html body.patrol-mode.patrol-standalone.p40-product-shell .p36-atomic-detail-layer .p35-map-detail-card{max-width:min(330px,calc(100% - 12px))!important;max-height:min(420px,calc(100% - 12px))!important}
 html body.patrol-mode.patrol-standalone.p40-product-shell #p7ProjectGridChart .p7-bar-row{grid-template-columns:minmax(160px,1.2fr) minmax(120px,1.6fr) 58px minmax(100px,1fr)!important}
}
@media(prefers-reduced-motion:reduce){html body.patrol-mode.patrol-standalone.p40-product-shell .p34-ambient-shell>*{animation:none!important;transform:none!important}}


/* P42 — intelligent public presentation + performance closure. */
body.p42-product-shell #p11StoreEmptyState{display:none!important}
body.p42-product-shell #p7StoreWorkspace.p11-empty-domain>#p11StoreEmptyState{display:block!important}
body.p42-product-shell .p42-store-data-note{display:grid;gap:7px;min-height:116px;padding:22px 24px;border:1px solid rgba(80,140,201,.13);border-radius:18px;background:linear-gradient(135deg,#f3f9ff,#f8f5ff);box-shadow:0 10px 26px rgba(59,98,145,.06)}
body.p42-product-shell .p42-store-data-note b{font-size:16px;color:#24415f}
body.p42-product-shell .p42-store-data-note span{font-size:13px;line-height:1.7;color:#60738a}
body.p42-product-shell .p42-store-bar .p7-bar-track{height:12px;border-radius:999px;background:rgba(222,231,239,.78);overflow:hidden}
body.p42-product-shell .p42-store-bar .p7-bar-track i{border-radius:999px;box-shadow:0 2px 7px rgba(44,99,160,.12)}
body.p42-product-shell .p42-store-bar strong{font-size:14px}
body.p42-product-shell .p42-store-bar small{min-width:52px;text-align:right;color:#718096}
body.p42-product-shell .p35-map-detail-card{max-width:338px!important;box-shadow:0 16px 36px rgba(45,74,120,.14),0 5px 14px rgba(26,45,86,.08)!important;backdrop-filter:blur(12px) saturate(1.04)!important;-webkit-backdrop-filter:blur(12px) saturate(1.04)!important}
body.p42-product-shell .p35-map-detail-layer svg .under{opacity:.10!important}
body.p42-product-shell #patrolOutputZone .patrol-panel,body.p42-product-shell #patrolOutputZone .patrol-copy-card{content-visibility:auto;contain-intrinsic-size:220px;contain:layout paint style}
body.p42-product-shell.p40-scrolling .p34-ambient-shell,body.p42-product-shell.p40-scrolling .p33-memory-space-shell{visibility:hidden!important}
body.p42-product-shell.p40-scrolling *{scroll-behavior:auto!important}
body.p42-product-shell #p7StoreWorkspace .p7-analysis-split,body.p42-product-shell #p7StoreWorkspace .p7-object-table-panel{background:linear-gradient(145deg,rgba(255,255,255,.96),rgba(246,250,255,.94))!important}
body.p42-product-shell #p7StoreWorkspace .p7-domain-kpis article:nth-child(1){border-top:3px solid #4D8EFF!important;background:linear-gradient(145deg,#f5f9ff,#edf5ff)!important}
body.p42-product-shell #p7StoreWorkspace .p7-domain-kpis article:nth-child(2){border-top:3px solid #23B7D1!important;background:linear-gradient(145deg,#f3fdff,#ecfbff)!important}
body.p42-product-shell #p7StoreWorkspace .p7-domain-kpis article:nth-child(3){border-top:3px solid #7A6CF0!important;background:linear-gradient(145deg,#faf8ff,#f3f0ff)!important}
body.p42-product-shell #p7StoreWorkspace .p7-domain-kpis article:nth-child(4){border-top:3px solid #ED667A!important;background:linear-gradient(145deg,#fff8fa,#fff1f4)!important}
body.p42-product-shell #p7StoreWorkspace .p7-domain-kpis article:nth-child(5){border-top:3px solid #F0A13B!important;background:linear-gradient(145deg,#fffaf3,#fff5e8)!important}
body.p42-product-shell #p7StoreWorkspace .p7-domain-kpis article:nth-child(6){border-top:3px solid #42AA78!important;background:linear-gradient(145deg,#f5fcf8,#eefaf4)!important}

/* P42 | whole-site intelligent spectrum polish: colorful, clear, low-jank. */
html body.patrol-mode.patrol-standalone.p42-product-shell #patrolPage{
  --p42-blue:#4D8EFF;--p42-cyan:#25B7D3;--p42-violet:#7B6DF0;--p42-coral:#ED667A;
  --p42-amber:#F0A13B;--p42-green:#42AA78;--p42-magenta:#C65DD5;
}
html body.patrol-mode.patrol-standalone.p42-product-shell :is(.p7-domain-kpis,.p7-responsibility-kpis,.patrol-kpi-grid,.p6-summary-grid)>article{
  position:relative;overflow:hidden;border:1px solid rgba(91,140,195,.10)!important;
  box-shadow:0 9px 24px rgba(50,87,133,.055)!important;
}
html body.patrol-mode.patrol-standalone.p42-product-shell :is(.p7-domain-kpis,.p7-responsibility-kpis,.patrol-kpi-grid,.p6-summary-grid)>article::after{
  content:"";position:absolute;width:72px;height:72px;border-radius:50%;right:-22px;top:-28px;background:currentColor;opacity:.07;pointer-events:none
}
html body.patrol-mode.patrol-standalone.p42-product-shell :is(.p7-domain-kpis,.p7-responsibility-kpis,.patrol-kpi-grid,.p6-summary-grid)>article:nth-child(7n+1){color:var(--p42-blue);background:linear-gradient(145deg,#fff,#F0F6FF)!important}
html body.patrol-mode.patrol-standalone.p42-product-shell :is(.p7-domain-kpis,.p7-responsibility-kpis,.patrol-kpi-grid,.p6-summary-grid)>article:nth-child(7n+2){color:var(--p42-cyan);background:linear-gradient(145deg,#fff,#EFFCFF)!important}
html body.patrol-mode.patrol-standalone.p42-product-shell :is(.p7-domain-kpis,.p7-responsibility-kpis,.patrol-kpi-grid,.p6-summary-grid)>article:nth-child(7n+3){color:var(--p42-violet);background:linear-gradient(145deg,#fff,#F5F2FF)!important}
html body.patrol-mode.patrol-standalone.p42-product-shell :is(.p7-domain-kpis,.p7-responsibility-kpis,.patrol-kpi-grid,.p6-summary-grid)>article:nth-child(7n+4){color:var(--p42-coral);background:linear-gradient(145deg,#fff,#FFF3F6)!important}
html body.patrol-mode.patrol-standalone.p42-product-shell :is(.p7-domain-kpis,.p7-responsibility-kpis,.patrol-kpi-grid,.p6-summary-grid)>article:nth-child(7n+5){color:var(--p42-amber);background:linear-gradient(145deg,#fff,#FFF8EC)!important}
html body.patrol-mode.patrol-standalone.p42-product-shell :is(.p7-domain-kpis,.p7-responsibility-kpis,.patrol-kpi-grid,.p6-summary-grid)>article:nth-child(7n+6){color:var(--p42-green);background:linear-gradient(145deg,#fff,#F0FAF5)!important}
html body.patrol-mode.patrol-standalone.p42-product-shell :is(.p7-domain-kpis,.p7-responsibility-kpis,.patrol-kpi-grid,.p6-summary-grid)>article:nth-child(7n+7){color:var(--p42-magenta);background:linear-gradient(145deg,#fff,#FBF1FC)!important}
html body.patrol-mode.patrol-standalone.p42-product-shell :is(.p7-domain-kpis,.p7-responsibility-kpis,.patrol-kpi-grid,.p6-summary-grid)>article :is(strong,b){color:#193651!important}
html body.patrol-mode.patrol-standalone.p42-product-shell .p7-bar-row{border-radius:11px;padding:7px 8px;transition:none!important}
html body.patrol-mode.patrol-standalone.p42-product-shell .p7-bar-row:nth-child(6n+1) .p7-bar-track i{background:linear-gradient(90deg,#4D8EFF,#69A5FF)!important}
html body.patrol-mode.patrol-standalone.p42-product-shell .p7-bar-row:nth-child(6n+2) .p7-bar-track i{background:linear-gradient(90deg,#25B7D3,#5CD1DF)!important}
html body.patrol-mode.patrol-standalone.p42-product-shell .p7-bar-row:nth-child(6n+3) .p7-bar-track i{background:linear-gradient(90deg,#7B6DF0,#9B8DF6)!important}
html body.patrol-mode.patrol-standalone.p42-product-shell .p7-bar-row:nth-child(6n+4) .p7-bar-track i{background:linear-gradient(90deg,#ED667A,#F08C9B)!important}
html body.patrol-mode.patrol-standalone.p42-product-shell .p7-bar-row:nth-child(6n+5) .p7-bar-track i{background:linear-gradient(90deg,#F0A13B,#F5BD70)!important}
html body.patrol-mode.patrol-standalone.p42-product-shell .p7-bar-row:nth-child(6n+6) .p7-bar-track i{background:linear-gradient(90deg,#42AA78,#6CC296)!important}
html body.patrol-mode.patrol-standalone.p42-product-shell :is(.patrol-panel,.p7-panel,.p7-analysis-split>*,.p7-object-table-panel){
  box-shadow:0 11px 30px rgba(47,82,128,.045)!important;
}
html body.patrol-mode.patrol-standalone.p42-product-shell .p35-map-detail-card{
  transform:translateZ(0);transition:opacity .08s linear!important;
}
html body.patrol-mode.patrol-standalone.p42-product-shell .p35-detail-scroll{scroll-behavior:auto!important}
html body.patrol-mode.patrol-standalone.p42-product-shell #patrolOutputZone{contain:layout style}
html body.patrol-mode.patrol-standalone.p42-product-shell.p40-scrolling :is(.p7-sidebar,.p7-topbar,.patrol-panel,.p7-panel,.p35-map-detail-card){
  box-shadow:none!important;backdrop-filter:none!important;-webkit-backdrop-filter:none!important;transition:none!important
}
html body.patrol-mode.patrol-standalone.p42-product-shell.p40-scrolling :is(.p34-ambient-ribbon,.p34-ambient-shell,.p33-memory-space-shell){display:none!important}
@media(max-width:760px){
 html body.patrol-mode.patrol-standalone.p42-product-shell .p35-map-detail-card{max-width:min(310px,calc(100% - 10px))!important}
}

/* ==========================================================================
   P43 — whole-product experience review
   Static visual depth, low-cost interaction, stronger information hierarchy.
   ========================================================================== */
html body.patrol-mode.patrol-standalone.p43-product-shell{
  --p43-blue:#4F8CFF;--p43-cyan:#22B8CF;--p43-violet:#7B6CF2;--p43-coral:#EF667B;
  --p43-amber:#F2A23A;--p43-green:#42AE7B;--p43-magenta:#D05EC9;--p43-ink:#16324C;
  --p43-text:#425C72;--p43-muted:#71859A;--p43-line:rgba(80,124,174,.14);
  background:
    radial-gradient(circle at 13% 9%,rgba(86,181,255,.13),transparent 25%),
    radial-gradient(circle at 88% 18%,rgba(139,111,241,.11),transparent 28%),
    radial-gradient(circle at 54% 94%,rgba(38,188,192,.08),transparent 31%),
    linear-gradient(145deg,#F6FBFF 0%,#F8FBFF 47%,#F8F5FF 100%)!important;
}
html body.patrol-mode.patrol-standalone.p43-product-shell .p34-ambient-shell *,
html body.patrol-mode.patrol-standalone.p43-product-shell .p33-memory-space-shell *,
html body.patrol-mode.patrol-standalone.p43-product-shell::before,
html body.patrol-mode.patrol-standalone.p43-product-shell::after{animation:none!important}
html body.patrol-mode.patrol-standalone.p43-product-shell :is(.p34-ambient-shell,.p33-memory-space-shell){opacity:.48!important;pointer-events:none!important}

/* Large surfaces use static translucency rather than expensive full-page blur. */
html body.patrol-mode.patrol-standalone.p43-product-shell :is(
  .patrol-panel,.p7-panel,.p7-domain-workspace,.patrol-dashboard,.patrol-analysis-zone,.patrol-output-zone,
  .p7-object-table-panel,.p7-analysis-split>*,.p7-responsibility-overview,.p7-output-guide>article
){
  backdrop-filter:none!important;-webkit-backdrop-filter:none!important;
  box-shadow:0 10px 28px rgba(41,77,121,.055)!important;
}
html body.patrol-mode.patrol-standalone.p43-product-shell :is(.patrol-panel,.p7-panel,.p7-object-table-panel,.p7-analysis-split>*){
  border-color:var(--p43-line)!important;background:linear-gradient(145deg,rgba(255,255,255,.985),rgba(248,251,255,.965))!important;
}
html body.patrol-mode.patrol-standalone.p43-product-shell .p7-topbar,
html body.patrol-mode.patrol-standalone.p43-product-shell .p7-sidebar{
  background:rgba(249,252,255,.985)!important;backdrop-filter:none!important;-webkit-backdrop-filter:none!important;
  box-shadow:0 8px 24px rgba(43,76,117,.06)!important
}
html body.patrol-mode.patrol-standalone.p43-product-shell .p7-module-head{
  margin-bottom:14px!important;padding:20px 24px!important;border:1px solid rgba(82,137,194,.12)!important;
  border-radius:22px!important;background:
    linear-gradient(112deg,rgba(255,255,255,.98),rgba(244,250,255,.98) 54%,rgba(249,246,255,.98))!important;
  box-shadow:0 8px 26px rgba(48,89,137,.055)!important
}
html body.patrol-mode.patrol-standalone.p43-product-shell .p7-module-head h2{color:#163550!important;letter-spacing:-.03em}
html body.patrol-mode.patrol-standalone.p43-product-shell .p7-module-head p{color:#667C91!important;line-height:1.65!important}

/* Smart one-glance briefing inserted at the top of each working page. */
html body.patrol-mode.patrol-standalone.p43-product-shell .p43-smart-brief{
  display:grid;gap:10px;margin:0 0 16px;padding:12px;border:1px solid rgba(86,137,193,.12);border-radius:20px;
  background:linear-gradient(125deg,#F5FAFF,#FBFDFF 54%,#F8F5FF);box-shadow:0 7px 22px rgba(58,95,139,.045)
}
html body.patrol-mode.patrol-standalone.p43-product-shell .p43-brief-items{display:grid;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:10px}
html body.patrol-mode.patrol-standalone.p43-product-shell .p43-brief-items>div{
  position:relative;min-height:82px;padding:14px 16px 13px 18px;border:1px solid rgba(80,128,180,.10);border-radius:15px;background:rgba(255,255,255,.82);overflow:hidden
}
html body.patrol-mode.patrol-standalone.p43-product-shell .p43-brief-items>div::before{content:"";position:absolute;left:0;top:0;bottom:0;width:4px;background:var(--p43-accent,var(--p43-blue))}
html body.patrol-mode.patrol-standalone.p43-product-shell .p43-brief-items span{display:block;font-size:13px;font-weight:700;color:#71859A}
html body.patrol-mode.patrol-standalone.p43-product-shell .p43-brief-items b{display:block;margin-top:5px;font-size:18px;line-height:1.25;color:#183852}
html body.patrol-mode.patrol-standalone.p43-product-shell .p43-brief-items small{display:block;margin-top:4px;font-size:13px;line-height:1.45;color:#667C91}
html body.patrol-mode.patrol-standalone.p43-product-shell .p43-smart-brief>p{margin:0;padding:2px 6px 1px;font-size:13px;line-height:1.6;color:#5F768B}

/* KPI system: colorful meaning, not decorative noise. */
html body.patrol-mode.patrol-standalone.p43-product-shell :is(.p7-domain-kpis,.p7-responsibility-kpis){gap:12px!important;grid-template-columns:repeat(auto-fit,minmax(170px,1fr))!important}
html body.patrol-mode.patrol-standalone.p43-product-shell :is(.p7-domain-kpis,.p7-responsibility-kpis)>article{
  min-height:112px!important;padding:17px 18px!important;border-radius:18px!important;box-shadow:0 7px 20px rgba(44,80,124,.045)!important;transform:none!important
}
html body.patrol-mode.patrol-standalone.p43-product-shell :is(.p7-domain-kpis,.p7-responsibility-kpis)>article span{font-size:13px!important;color:#6A8094!important;font-weight:720!important}
html body.patrol-mode.patrol-standalone.p43-product-shell :is(.p7-domain-kpis,.p7-responsibility-kpis)>article strong{font-size:27px!important;line-height:1.12!important;margin-top:5px!important;color:#173751!important}
html body.patrol-mode.patrol-standalone.p43-product-shell :is(.p7-domain-kpis,.p7-responsibility-kpis)>article small{font-size:13px!important;line-height:1.5!important;color:#71859A!important}

/* Distribution charts become dense but readable: grid and staff stay together. */
html body.patrol-mode.patrol-standalone.p43-product-shell .p7-bar-chart{display:grid;gap:6px;max-height:560px;overflow:auto;overscroll-behavior:contain;scrollbar-gutter:stable}
html body.patrol-mode.patrol-standalone.p43-product-shell .p7-bar-row{
  grid-template-columns:minmax(150px,1.25fr) minmax(160px,2fr) 62px minmax(150px,1.45fr)!important;
  min-height:49px;padding:7px 9px!important;border:1px solid transparent;border-radius:12px!important;background:rgba(249,252,255,.72)
}
html body.patrol-mode.patrol-standalone.p43-product-shell .p7-bar-row:hover{border-color:rgba(79,140,255,.16);background:#F7FBFF;transform:none!important}
html body.patrol-mode.patrol-standalone.p43-product-shell .p43-grid-row>span:first-child{display:grid;gap:1px;min-width:0}
html body.patrol-mode.patrol-standalone.p43-product-shell .p43-grid-row>span:first-child b{font-size:14px;color:#284E71;white-space:nowrap}
html body.patrol-mode.patrol-standalone.p43-product-shell .p43-grid-row>span:first-child small{font-size:12.5px;color:#70849A;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
html body.patrol-mode.patrol-standalone.p43-product-shell .p7-bar-track{height:11px!important;background:#E9EFF5!important;border-radius:999px!important;overflow:hidden}
html body.patrol-mode.patrol-standalone.p43-product-shell .p7-bar-track i{border-radius:999px!important;box-shadow:none!important}
html body.patrol-mode.patrol-standalone.p43-product-shell .p7-bar-row>small:last-child{font-size:12.5px!important;line-height:1.35;color:#667D92!important}

/* Store readiness: object domain and patrol domain are visually separated. */
html body.patrol-mode.patrol-standalone.p43-product-shell .p43-store-readiness{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}
html body.patrol-mode.patrol-standalone.p43-product-shell .p43-store-readiness>div{display:grid;grid-template-columns:1fr auto;gap:3px 10px;align-items:center;padding:13px 14px;border-radius:13px;border:1px solid rgba(77,139,194,.11);background:#F8FBFF}
html body.patrol-mode.patrol-standalone.p43-product-shell .p43-store-readiness>div.ready{background:linear-gradient(135deg,#F1FBF7,#F7FDFA)}
html body.patrol-mode.patrol-standalone.p43-product-shell .p43-store-readiness>div.pending{background:linear-gradient(135deg,#FFF9EF,#FFFDF8)}
html body.patrol-mode.patrol-standalone.p43-product-shell .p43-store-readiness span{font-size:12.5px;font-weight:720;color:#6C8093}
html body.patrol-mode.patrol-standalone.p43-product-shell .p43-store-readiness b{font-size:15px;color:#21415D}
html body.patrol-mode.patrol-standalone.p43-product-shell .p43-store-readiness small{grid-column:1/-1;font-size:13px;color:#74879A}
html body.patrol-mode.patrol-standalone.p43-product-shell .p43-data-explain{margin:10px 0 0;padding:12px 14px;border-radius:13px;background:#F4F8FC;font-size:13px;line-height:1.6;color:#60768B}

/* Responsibility becomes a useful card atlas rather than a wide dense ledger. */
html body.patrol-mode.patrol-standalone.p43-product-shell .p43-responsibility-cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:11px}
html body.patrol-mode.patrol-standalone.p43-product-shell .p43-responsibility-card{
  position:relative;display:grid;gap:8px;min-height:152px;padding:15px 16px 14px;border:1px solid rgba(82,132,185,.12);border-radius:16px;
  background:linear-gradient(145deg,#FFFFFF,#F7FAFF);content-visibility:auto;contain-intrinsic-size:160px;contain:layout paint style;overflow:hidden
}
html body.patrol-mode.patrol-standalone.p43-product-shell .p43-responsibility-card::before{content:"";position:absolute;left:0;top:0;bottom:0;width:4px;background:var(--p43-accent,#4F8CFF)}
html body.patrol-mode.patrol-standalone.p43-product-shell .p43-responsibility-card.danger{background:linear-gradient(145deg,#FFFFFF,#FFF4F6)}
html body.patrol-mode.patrol-standalone.p43-product-shell .p43-responsibility-card.warn{background:linear-gradient(145deg,#FFFFFF,#FFF9EF)}
html body.patrol-mode.patrol-standalone.p43-product-shell .p43-responsibility-card.pending{background:linear-gradient(145deg,#FFFFFF,#F7F3FF)}
html body.patrol-mode.patrol-standalone.p43-product-shell .p43-responsibility-card header{display:flex;align-items:center;gap:9px;min-width:0}
html body.patrol-mode.patrol-standalone.p43-product-shell .p43-responsibility-card header b{font-size:16px;color:#183A56;white-space:nowrap}
html body.patrol-mode.patrol-standalone.p43-product-shell .p43-responsibility-card header span{min-width:0;padding:3px 8px;border-radius:999px;background:rgba(79,140,255,.09);font-size:13px;font-weight:720;color:#43617B;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
html body.patrol-mode.patrol-standalone.p43-product-shell .p43-resp-count{font-size:13px;font-weight:700;color:#61788D}
html body.patrol-mode.patrol-standalone.p43-product-shell .p43-resp-reg{display:grid;grid-template-columns:minmax(76px,120px) 1fr;gap:10px;align-items:center}
html body.patrol-mode.patrol-standalone.p43-product-shell .p43-resp-reg i{display:block;height:8px;background:#E9EFF5;border-radius:999px;overflow:hidden}
html body.patrol-mode.patrol-standalone.p43-product-shell .p43-resp-reg i b{display:block;height:100%;border-radius:999px;background:linear-gradient(90deg,#42AE7B,#71C79D)}
html body.patrol-mode.patrol-standalone.p43-product-shell .p43-resp-reg span{font-size:12.5px;line-height:1.4;color:#5D748A}
html body.patrol-mode.patrol-standalone.p43-product-shell .p43-responsibility-card footer{margin-top:auto;padding-top:8px;border-top:1px solid rgba(92,134,177,.10);font-size:12.5px;font-weight:760;color:#42637F}
html body.patrol-mode.patrol-standalone.p43-product-shell .p43-responsibility-card.danger footer{color:#C34E62}
html body.patrol-mode.patrol-standalone.p43-product-shell .p43-responsibility-card.warn footer{color:#B87722}

/* GIS: one current detail, near-field, no glass lag. */
html body.patrol-mode.patrol-standalone.p43-product-shell .p35-map-detail-layer{contain:layout paint style;pointer-events:none!important}
html body.patrol-mode.patrol-standalone.p43-product-shell .p35-map-detail-card{
  max-width:332px!important;border:1px solid rgba(75,139,203,.18)!important;border-radius:18px!important;
  background:linear-gradient(145deg,rgba(251,254,255,.995),rgba(245,250,255,.995))!important;
  backdrop-filter:none!important;-webkit-backdrop-filter:none!important;box-shadow:0 16px 38px rgba(36,69,112,.13)!important;
  transform:translate3d(0,0,0);transition:opacity .055s linear!important;overflow:hidden;scrollbar-gutter:stable
}
html body.patrol-mode.patrol-standalone.p43-product-shell .p35-map-detail-card .p35-detail-section-head{background:#F7FBFF!important;backdrop-filter:none!important;-webkit-backdrop-filter:none!important}
html body.patrol-mode.patrol-standalone.p43-product-shell .p35-detail-scroll{overscroll-behavior:contain;scroll-behavior:auto!important;scrollbar-width:thin}
html body.patrol-mode.patrol-standalone.p43-product-shell .p35-map-detail-layer svg{filter:none!important}
html body.patrol-mode.patrol-standalone.p43-product-shell .p35-map-detail-layer svg .under{opacity:.07!important}

/* Output center is a practical product, not a hidden developer toolbox. */
html body.patrol-mode.patrol-standalone.p43-product-shell #patrolOutputZone .p7-output-guide{display:grid!important;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin-bottom:14px!important}
html body.patrol-mode.patrol-standalone.p43-product-shell #patrolOutputZone .p7-output-guide>article{display:grid!important;gap:5px!important;min-height:114px!important;padding:16px 17px!important;border:1px solid rgba(79,133,190,.12)!important;border-radius:17px!important;background:linear-gradient(145deg,#FFFFFF,#F4F9FF)!important}
html body.patrol-mode.patrol-standalone.p43-product-shell #patrolOutputZone .p7-output-guide>article:nth-child(2){background:linear-gradient(145deg,#FFFFFF,#F5F2FF)!important}
html body.patrol-mode.patrol-standalone.p43-product-shell #patrolOutputZone .p7-output-guide>article:nth-child(3){background:linear-gradient(145deg,#FFFFFF,#F0FBF7)!important}
html body.patrol-mode.patrol-standalone.p43-product-shell #patrolOutputZone .p7-output-guide>article:nth-child(4){background:linear-gradient(145deg,#FFFFFF,#FFF8EE)!important}
html body.patrol-mode.patrol-standalone.p43-product-shell #patrolOutputZone .p7-output-guide span{font-size:12.5px;font-weight:760;color:#70859A}
html body.patrol-mode.patrol-standalone.p43-product-shell #patrolOutputZone .p7-output-guide b{font-size:15px;color:#1F405C}
html body.patrol-mode.patrol-standalone.p43-product-shell #patrolOutputZone .p7-output-guide small{font-size:12.5px;line-height:1.55;color:#718397}
html body.patrol-mode.patrol-standalone.p43-product-shell #patrolOutputZone :is(.patrol-panel,.patrol-copy-card){content-visibility:auto;contain-intrinsic-size:240px;contain:layout paint style}

/* Tables favor scan speed; sticky headers and buttons remain obvious. */
html body.patrol-mode.patrol-standalone.p43-product-shell :is(.p7-object-table-panel,.p9-responsibility-table-wrap){contain:layout paint style}
html body.patrol-mode.patrol-standalone.p43-product-shell table{border-collapse:separate;border-spacing:0}
html body.patrol-mode.patrol-standalone.p43-product-shell thead th{background:#F4F8FC!important;color:#526B82!important;font-weight:760!important}
html body.patrol-mode.patrol-standalone.p43-product-shell tbody tr{transition:background-color .08s linear!important}
html body.patrol-mode.patrol-standalone.p43-product-shell tbody tr:hover{background:#F7FBFF!important}
html body.patrol-mode.patrol-standalone.p43-product-shell .p7-detail-btn{min-height:36px!important;border-radius:10px!important}

/* Buttons feel quick rather than floaty. */
html body.patrol-mode.patrol-standalone.p43-product-shell .btn,
html body.patrol-mode.patrol-standalone.p43-product-shell .p7-side-nav button,
html body.patrol-mode.patrol-standalone.p43-product-shell .p7-map-tabs button{
  transition:background-color .09s linear,border-color .09s linear,color .09s linear,transform .09s ease!important;box-shadow:none!important
}
html body.patrol-mode.patrol-standalone.p43-product-shell .btn:hover{transform:translateY(-1px)!important}
html body.patrol-mode.patrol-standalone.p43-product-shell .btn:active{transform:translateY(0) scale(.985)!important}

/* Scrolling is the highest-priority interaction: strip repaint-heavy decoration immediately. */
html body.patrol-mode.patrol-standalone.p43-product-shell.p40-scrolling :is(.p7-sidebar,.p7-topbar,.patrol-panel,.p7-panel,.p35-map-detail-card,.p43-smart-brief,.p43-responsibility-card){
  box-shadow:none!important;filter:none!important;backdrop-filter:none!important;-webkit-backdrop-filter:none!important;transition:none!important
}
html body.patrol-mode.patrol-standalone.p43-product-shell.p40-scrolling :is(.p34-ambient-shell,.p33-memory-space-shell){display:none!important}

@media(max-width:1200px){
 html body.patrol-mode.patrol-standalone.p43-product-shell .p43-responsibility-cards{grid-template-columns:repeat(2,minmax(0,1fr))}
 html body.patrol-mode.patrol-standalone.p43-product-shell #patrolOutputZone .p7-output-guide{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:900px){
 html body.patrol-mode.patrol-standalone.p43-product-shell .p43-brief-items{grid-template-columns:1fr}
 html body.patrol-mode.patrol-standalone.p43-product-shell .p43-responsibility-cards{grid-template-columns:1fr}
 html body.patrol-mode.patrol-standalone.p43-product-shell .p7-bar-row{grid-template-columns:minmax(132px,1.25fr) minmax(108px,1.5fr) 54px minmax(118px,1.2fr)!important}
}
@media(max-width:640px){
 html body.patrol-mode.patrol-standalone.p43-product-shell #patrolOutputZone .p7-output-guide{grid-template-columns:1fr}
 html body.patrol-mode.patrol-standalone.p43-product-shell .p43-store-readiness{grid-template-columns:1fr}
 html body.patrol-mode.patrol-standalone.p43-product-shell .p35-map-detail-card{max-width:min(306px,calc(100% - 10px))!important}
}
@media(prefers-reduced-motion:reduce){
 html body.patrol-mode.patrol-standalone.p43-product-shell *{scroll-behavior:auto!important}
}

/* P43 final action/navigation clarity layer. */
html body.patrol-mode.patrol-standalone.p43-product-shell .p7-side-nav button{position:relative}
html body.patrol-mode.patrol-standalone.p43-product-shell .p43-nav-badge{
  margin-left:auto;min-width:24px;padding:3px 7px;border-radius:999px;background:#EEF5FF;color:#4B72A2;font-size:13px;font-weight:800;line-height:1.15;text-align:center;white-space:nowrap
}
html body.patrol-mode.patrol-standalone.p43-product-shell .p43-nav-badge.cyan{background:#EAFBFD;color:#26879A}
html body.patrol-mode.patrol-standalone.p43-product-shell .p43-nav-badge.warn{background:#FFF3DE;color:#A86E20}
html body.patrol-mode.patrol-standalone.p43-product-shell .p7-side-nav button.active .p43-nav-badge{background:rgba(255,255,255,.82);color:#3B6EA8}

html body.patrol-mode.patrol-standalone.p43-product-shell .p43-action-ribbon{
  display:grid;gap:10px;margin:0 0 14px;padding:15px 16px 16px;border:1px solid rgba(88,139,198,.12);border-radius:19px;
  background:linear-gradient(135deg,rgba(250,253,255,.97),rgba(246,250,255,.96) 50%,rgba(249,247,255,.96));box-shadow:0 12px 28px rgba(46,87,132,.07)
}
html body.patrol-mode.patrol-standalone.p43-product-shell .p43-action-ribbon>header{display:flex;align-items:end;justify-content:space-between;gap:12px;padding:0 2px}
html body.patrol-mode.patrol-standalone.p43-product-shell .p43-action-ribbon>header div{display:flex;align-items:baseline;gap:10px;min-width:0}
html body.patrol-mode.patrol-standalone.p43-product-shell .p43-action-ribbon>header span{font-size:12.5px;font-weight:800;color:#66809A}
html body.patrol-mode.patrol-standalone.p43-product-shell .p43-action-ribbon>header b{font-size:16px;color:#1E405D}
html body.patrol-mode.patrol-standalone.p43-product-shell .p43-action-ribbon>header small{font-size:12.5px;color:#8091A3}
html body.patrol-mode.patrol-standalone.p43-product-shell .p43-action-ribbon>div{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:9px}
html body.patrol-mode.patrol-standalone.p43-product-shell .p43-action-ribbon button{
  position:relative;display:grid;grid-template-columns:30px minmax(0,1fr) auto;grid-template-rows:auto auto;column-gap:9px;row-gap:3px;align-items:center;min-height:86px;padding:13px 13px 12px;
  border:1px solid rgba(89,137,190,.12);border-radius:15px;background:linear-gradient(145deg,#FFFFFF,#F4F9FF);color:#1E405D;text-align:left;cursor:pointer;box-shadow:none;transition:transform .08s ease,border-color .08s linear,background-color .08s linear
}
html body.patrol-mode.patrol-standalone.p43-product-shell .p43-action-ribbon button.warn{background:linear-gradient(145deg,#FFFFFF,#FFF8EE)}
html body.patrol-mode.patrol-standalone.p43-product-shell .p43-action-ribbon button.danger{background:linear-gradient(145deg,#FFFFFF,#FFF4F6)}
html body.patrol-mode.patrol-standalone.p43-product-shell .p43-action-ribbon button.violet{background:linear-gradient(145deg,#FFFFFF,#F7F3FF)}
html body.patrol-mode.patrol-standalone.p43-product-shell .p43-action-ribbon button.cyan{background:linear-gradient(145deg,#FFFFFF,#ECFBFF)}
html body.patrol-mode.patrol-standalone.p43-product-shell .p43-action-ribbon button.good{background:linear-gradient(145deg,#FFFFFF,#F1FAF6)}
html body.patrol-mode.patrol-standalone.p43-product-shell .p43-action-ribbon button:hover{transform:translateY(-1px);border-color:rgba(70,126,188,.24)}
html body.patrol-mode.patrol-standalone.p43-product-shell .p43-action-ribbon button em{grid-row:1/3;display:grid;place-items:center;width:28px;height:28px;border-radius:9px;background:#EEF5FF;color:#4F83C6;font-size:13px;font-style:normal;font-weight:900}
html body.patrol-mode.patrol-standalone.p43-product-shell .p43-action-ribbon button.danger em{background:#FFE9ED;color:#D5566A}
html body.patrol-mode.patrol-standalone.p43-product-shell .p43-action-ribbon button.warn em{background:#FFF0D7;color:#B77923}
html body.patrol-mode.patrol-standalone.p43-product-shell .p43-action-ribbon button.violet em{background:#EFEAFF;color:#765FD5}
html body.patrol-mode.patrol-standalone.p43-product-shell .p43-action-ribbon button.cyan em{background:#E3F9FC;color:#268DA2}
html body.patrol-mode.patrol-standalone.p43-product-shell .p43-action-ribbon button span{min-width:0}
html body.patrol-mode.patrol-standalone.p43-product-shell .p43-action-ribbon button span b{display:block;font-size:14px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
html body.patrol-mode.patrol-standalone.p43-product-shell .p43-action-ribbon button span small{display:block;margin-top:4px;font-size:13px;line-height:1.4;color:#718599}
html body.patrol-mode.patrol-standalone.p43-product-shell .p43-action-ribbon button strong{font-size:17px;color:#244D72;white-space:nowrap}
html body.patrol-mode.patrol-standalone.p43-product-shell .p43-action-ribbon button i{grid-column:3;grid-row:2;font-size:13px;font-style:normal;font-weight:800;color:#5D84AB;text-align:right}

/* High density pages should stay visually rich but cheap to paint. */
html body.patrol-mode.patrol-standalone.p43-product-shell :is(#p7ProjectWorkspace,#p7StoreWorkspace,#patrolPersonZone,#patrolOutputZone) .patrol-panel{content-visibility:auto;contain-intrinsic-size:260px}
html body.patrol-mode.patrol-standalone.p43-product-shell :is(.p43-smart-brief,.p43-action-ribbon,.p7-kpis article,.p43-responsibility-card){isolation:isolate}
html body.patrol-mode.patrol-standalone.p43-product-shell .p7-kpis article{min-height:106px}
html body.patrol-mode.patrol-standalone.p43-product-shell .p7-kpis article strong{font-variant-numeric:tabular-nums}

@media(max-width:1280px){
 html body.patrol-mode.patrol-standalone.p43-product-shell .p43-action-ribbon>div{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:760px){
 html body.patrol-mode.patrol-standalone.p43-product-shell .p43-action-ribbon>header{align-items:flex-start;flex-direction:column;gap:3px}
 html body.patrol-mode.patrol-standalone.p43-product-shell .p43-action-ribbon>div{grid-template-columns:1fr}
 html body.patrol-mode.patrol-standalone.p43-product-shell .p43-nav-badge{display:none}
}


/* ==========================================================================
   P44 — product-language, hierarchy and performance deep convergence.
   Less card soup; stronger story; static high-quality surfaces.
   ========================================================================== */
html body.patrol-mode.patrol-standalone.p44-product-shell{
  --p44-blue:#4C86F7;--p44-cyan:#22B7CA;--p44-violet:#796BE8;--p44-coral:#EC6376;
  --p44-amber:#EFA039;--p44-green:#3FA977;--p44-ink:#173650;--p44-text:#405B72;--p44-muted:#74879A;
  --p44-line:rgba(70,117,168,.13);--p44-shadow:0 10px 30px rgba(42,76,117,.055);
  background:
    radial-gradient(circle at 8% 5%,rgba(80,167,255,.12),transparent 26%),
    radial-gradient(circle at 90% 14%,rgba(127,108,235,.10),transparent 29%),
    radial-gradient(circle at 50% 102%,rgba(39,185,191,.07),transparent 30%),
    linear-gradient(150deg,#F7FBFF 0%,#FAFCFF 48%,#F8F5FF 100%)!important;
}
html body.patrol-mode.patrol-standalone.p44-product-shell :is(.p34-ambient-shell,.p33-memory-space-shell){opacity:.32!important}
html body.patrol-mode.patrol-standalone.p44-product-shell :is(.patrol-panel,.p7-panel,.p7-object-table-panel,.p7-analysis-split>*){
  background:#fff!important;border:1px solid var(--p44-line)!important;box-shadow:var(--p44-shadow)!important;border-radius:20px!important;
}
html body.patrol-mode.patrol-standalone.p44-product-shell .p7-module-head{
  position:relative;margin:0 0 12px!important;padding:19px 22px 18px 26px!important;border:0!important;border-radius:18px!important;
  background:linear-gradient(105deg,rgba(255,255,255,.99),rgba(247,251,255,.985) 68%,rgba(249,247,255,.985))!important;
  box-shadow:0 1px 0 rgba(72,119,171,.10),0 8px 26px rgba(48,82,124,.04)!important;overflow:hidden
}
html body.patrol-mode.patrol-standalone.p44-product-shell .p7-module-head::before{content:"";position:absolute;left:0;top:18px;bottom:18px;width:4px;border-radius:0 4px 4px 0;background:linear-gradient(#4C86F7,#22B7CA 52%,#796BE8)}
html body.patrol-mode.patrol-standalone.p44-product-shell .p7-module-head .section-number{display:grid!important;place-items:center;width:32px!important;height:32px!important;min-width:32px!important;border:0!important;border-radius:10px!important;background:#EEF5FF!important;color:#4E79AF!important;font-size:13px!important;box-shadow:none!important}
html body.patrol-mode.patrol-standalone.p44-product-shell .p7-module-head h2{font-size:28px!important;line-height:1.15!important;letter-spacing:-.035em!important;color:var(--p44-ink)!important}
html body.patrol-mode.patrol-standalone.p44-product-shell .p7-module-head p{margin-top:5px!important;max-width:820px;color:#677D91!important;line-height:1.55!important}

/* One-glance rail: one surface, separators, no nested-card noise. */
html body.patrol-mode.patrol-standalone.p44-product-shell .p43-smart-brief{
  margin:0 0 13px;padding:0;border:1px solid rgba(73,125,184,.12);border-radius:18px;background:linear-gradient(110deg,#F9FCFF,#FFFFFF 55%,#FAF8FF);box-shadow:0 6px 20px rgba(52,86,129,.035);overflow:hidden
}
html body.patrol-mode.patrol-standalone.p44-product-shell .p43-brief-items{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:0!important}
html body.patrol-mode.patrol-standalone.p44-product-shell .p43-brief-items>div{
  min-height:76px;padding:13px 16px 12px 18px!important;border:0!important;border-radius:0!important;background:transparent!important;box-shadow:none!important;overflow:visible!important
}
html body.patrol-mode.patrol-standalone.p44-product-shell .p43-brief-items>div+div{border-left:1px solid rgba(77,126,178,.10)!important}
html body.patrol-mode.patrol-standalone.p44-product-shell .p43-brief-items>div::before{top:14px!important;bottom:14px!important;width:3px!important;border-radius:3px!important}
html body.patrol-mode.patrol-standalone.p44-product-shell .p43-brief-items span{font-size:13px!important;color:#71869A!important}
html body.patrol-mode.patrol-standalone.p44-product-shell .p43-brief-items b{margin-top:4px!important;font-size:18px!important;color:#183A56!important;white-space:normal!important}
html body.patrol-mode.patrol-standalone.p44-product-shell .p43-brief-items small{margin-top:3px!important;font-size:13px!important;line-height:1.35!important;color:#687F94!important}
html body.patrol-mode.patrol-standalone.p44-product-shell .p43-smart-brief>p{margin:0!important;padding:9px 18px 10px!important;border-top:1px solid rgba(79,129,181,.09);background:rgba(243,248,255,.50);font-size:13px!important;line-height:1.48!important;color:#5E778D!important}

/* Current-priority deck: three strong actions instead of a second dashboard. */
html body.patrol-mode.patrol-standalone.p44-product-shell .p44-action-deck{padding:13px 14px 14px!important;border-radius:18px!important;background:#fff!important;box-shadow:0 7px 22px rgba(45,78,119,.04)!important}
html body.patrol-mode.patrol-standalone.p44-product-shell .p44-action-deck>div{grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:10px!important}
html body.patrol-mode.patrol-standalone.p44-product-shell .p44-action-deck button{min-height:92px!important;padding:13px 14px!important;border-radius:16px!important;background:#FBFDFF!important;border-color:rgba(76,130,187,.12)!important}
html body.patrol-mode.patrol-standalone.p44-product-shell .p44-action-deck button.danger{background:linear-gradient(135deg,#FFF,#FFF5F7)!important}
html body.patrol-mode.patrol-standalone.p44-product-shell .p44-action-deck button.warn{background:linear-gradient(135deg,#FFF,#FFF9EF)!important}
html body.patrol-mode.patrol-standalone.p44-product-shell .p44-action-deck button.violet{background:linear-gradient(135deg,#FFF,#F8F5FF)!important}
html body.patrol-mode.patrol-standalone.p44-product-shell .p44-action-deck button.cyan{background:linear-gradient(135deg,#FFF,#EFFBFD)!important}
html body.patrol-mode.patrol-standalone.p44-product-shell .p44-action-deck button.good{background:linear-gradient(135deg,#FFF,#F1FAF6)!important}

/* KPI cards: stronger numbers, lighter framing, color as signal. */
html body.patrol-mode.patrol-standalone.p44-product-shell :is(.p7-domain-kpis,.p7-responsibility-kpis)>article{
  position:relative;min-height:102px!important;padding:16px 18px!important;border:1px solid rgba(78,126,178,.11)!important;border-radius:17px!important;background:#fff!important;box-shadow:0 5px 18px rgba(45,78,119,.035)!important;overflow:hidden
}
html body.patrol-mode.patrol-standalone.p44-product-shell :is(.p7-domain-kpis,.p7-responsibility-kpis)>article::after{content:"";position:absolute;left:0;right:0;top:0;height:3px;background:linear-gradient(90deg,var(--p44-blue),var(--p44-cyan));opacity:.75}
html body.patrol-mode.patrol-standalone.p44-product-shell :is(.p7-domain-kpis,.p7-responsibility-kpis)>article:nth-child(3n+2)::after{background:linear-gradient(90deg,var(--p44-coral),var(--p44-amber))}
html body.patrol-mode.patrol-standalone.p44-product-shell :is(.p7-domain-kpis,.p7-responsibility-kpis)>article:nth-child(3n)::after{background:linear-gradient(90deg,var(--p44-violet),var(--p44-green))}
html body.patrol-mode.patrol-standalone.p44-product-shell :is(.p7-domain-kpis,.p7-responsibility-kpis)>article strong{font-size:29px!important;color:#173A57!important}

/* Chart rows read like compact data stories. */
html body.patrol-mode.patrol-standalone.p44-product-shell .p7-bar-chart{gap:5px!important}
html body.patrol-mode.patrol-standalone.p44-product-shell .p7-bar-row{min-height:52px!important;padding:8px 10px!important;border:0!important;border-bottom:1px solid rgba(79,126,176,.08)!important;border-radius:0!important;background:transparent!important}
html body.patrol-mode.patrol-standalone.p44-product-shell .p7-bar-row:hover{background:#F8FBFF!important}
html body.patrol-mode.patrol-standalone.p44-product-shell .p7-bar-track{height:9px!important;border-radius:999px!important;background:#E9EFF5!important;overflow:hidden}
html body.patrol-mode.patrol-standalone.p44-product-shell .p7-bar-track i{border-radius:999px!important}
html body.patrol-mode.patrol-standalone.p44-product-shell .p43-grid-row>span b{font-size:14px!important;color:#23445F!important}
html body.patrol-mode.patrol-standalone.p44-product-shell .p43-grid-row>span small{font-size:13px!important;color:#718599!important}

/* Responsibility: grid and person form one identity block. */
html body.patrol-mode.patrol-standalone.p44-product-shell .p43-responsibility-cards{gap:11px!important}
html body.patrol-mode.patrol-standalone.p44-product-shell .p43-responsibility-card{min-height:174px!important;padding:16px 17px 15px!important;border-radius:17px!important;border-color:rgba(79,128,178,.12)!important;background:#fff!important;box-shadow:0 6px 20px rgba(43,78,119,.04)!important}
html body.patrol-mode.patrol-standalone.p44-product-shell .p43-responsibility-card header{display:flex!important;align-items:center!important;justify-content:flex-start!important;gap:9px!important;flex-wrap:wrap!important}
html body.patrol-mode.patrol-standalone.p44-product-shell .p43-responsibility-card header b{font-size:18px!important;color:#193B57!important}
html body.patrol-mode.patrol-standalone.p44-product-shell .p43-responsibility-card header span{font-size:14px!important;font-weight:780!important;color:#3F6484!important;background:#EEF5FF!important;padding:5px 9px!important;border-radius:999px!important}
html body.patrol-mode.patrol-standalone.p44-product-shell .p43-responsibility-card footer{margin-top:auto!important;padding-top:9px!important;border-top:1px solid rgba(78,125,176,.08)!important;font-size:13px!important;font-weight:720!important}

/* Store readiness is a compact availability matrix, not an error state. */
html body.patrol-mode.patrol-standalone.p44-product-shell .p43-store-readiness{gap:9px!important}
html body.patrol-mode.patrol-standalone.p44-product-shell .p43-store-readiness>div{min-height:86px!important;border-radius:15px!important;background:#fff!important;box-shadow:none!important;border:1px solid rgba(79,127,177,.11)!important}
html body.patrol-mode.patrol-standalone.p44-product-shell .p43-store-readiness>div.ready{border-top:3px solid var(--p44-green)!important}
html body.patrol-mode.patrol-standalone.p44-product-shell .p43-store-readiness>div.pending{border-top:3px solid var(--p44-amber)!important}

/* GIS: map is the hero, analysis rail is secondary but readable. */
html body.patrol-mode.patrol-standalone.p44-product-shell .patrol-map-panel{padding:16px!important}
html body.patrol-mode.patrol-standalone.p44-product-shell .patrol-map-intelligence-layout{gap:14px!important}
html body.patrol-mode.patrol-standalone.p44-product-shell .patrol-map-canvas-shell{border:1px solid rgba(75,124,176,.14)!important;border-radius:18px!important;background:#F8FBFF!important;box-shadow:inset 0 0 0 1px rgba(255,255,255,.75),0 8px 26px rgba(46,79,119,.035)!important;overflow:hidden}
html body.patrol-mode.patrol-standalone.p44-product-shell .patrol-map-intelligence-panel{border-radius:18px!important;border:1px solid rgba(76,126,179,.12)!important;background:linear-gradient(145deg,#FBFDFF,#F8FAFF)!important;box-shadow:none!important}
html body.patrol-mode.patrol-standalone.p44-product-shell .patrol-map-insight-section{border-top:1px solid rgba(79,128,177,.09)!important;padding-top:13px!important;margin-top:12px!important}
html body.patrol-mode.patrol-standalone.p44-product-shell .p35-map-detail-card{max-width:332px!important;border-radius:18px!important;background:rgba(250,253,255,.985)!important;box-shadow:0 14px 38px rgba(39,75,120,.13)!important;backdrop-filter:none!important;-webkit-backdrop-filter:none!important}
html body.patrol-mode.patrol-standalone.p44-product-shell .p35-detail-scroll{max-height:min(52vh,430px)!important}

/* Results center: deliverables feel like products, not settings cards. */
html body.patrol-mode.patrol-standalone.p44-product-shell #patrolOutputZone .p7-output-guide{gap:11px!important}
html body.patrol-mode.patrol-standalone.p44-product-shell #patrolOutputZone .p7-output-guide>article{position:relative;min-height:118px!important;padding:18px 18px 16px 22px!important;border:1px solid rgba(77,127,179,.11)!important;border-radius:18px!important;background:#fff!important;box-shadow:0 6px 20px rgba(43,78,119,.035)!important;overflow:hidden}
html body.patrol-mode.patrol-standalone.p44-product-shell #patrolOutputZone .p7-output-guide>article::before{content:"";position:absolute;left:0;top:0;bottom:0;width:4px;background:linear-gradient(var(--p44-blue),var(--p44-cyan))}
html body.patrol-mode.patrol-standalone.p44-product-shell #patrolOutputZone .p7-output-guide>article:nth-child(2)::before{background:linear-gradient(var(--p44-violet),var(--p44-coral))}
html body.patrol-mode.patrol-standalone.p44-product-shell #patrolOutputZone .p7-output-guide>article:nth-child(3)::before{background:linear-gradient(var(--p44-green),var(--p44-cyan))}
html body.patrol-mode.patrol-standalone.p44-product-shell #patrolOutputZone .p7-output-guide>article:nth-child(4)::before{background:linear-gradient(var(--p44-amber),var(--p44-coral))}
html body.patrol-mode.patrol-standalone.p44-product-shell #patrolOutputZone .p7-output-guide b{font-size:16px!important;color:#1B3E5A!important}
html body.patrol-mode.patrol-standalone.p44-product-shell #patrolOutputZone .p7-output-guide small{font-size:13px!important;line-height:1.5!important}

/* Tables: scan faster, feel quieter. */
html body.patrol-mode.patrol-standalone.p44-product-shell .p7-filterbar{padding:12px 14px!important;background:#FAFCFF!important;border-bottom:1px solid rgba(76,125,176,.10)!important}
html body.patrol-mode.patrol-standalone.p44-product-shell thead th{height:44px!important;background:#F4F8FC!important;color:#526A81!important;font-size:13px!important}
html body.patrol-mode.patrol-standalone.p44-product-shell tbody td{padding-top:11px!important;padding-bottom:11px!important;border-bottom-color:rgba(83,129,177,.075)!important}
html body.patrol-mode.patrol-standalone.p44-product-shell tbody tr:hover{background:#F8FBFF!important}

/* No expensive transitions during the core workflows. */
html body.patrol-mode.patrol-standalone.p44-product-shell :is(.patrol-panel,.p7-panel,.p43-smart-brief,.p43-responsibility-card,.p7-bar-row,.p35-map-detail-card){transition:none!important}
html body.patrol-mode.patrol-standalone.p44-product-shell .btn{transition:background-color .08s linear,border-color .08s linear,color .08s linear,transform .08s ease!important}
html body.patrol-mode.patrol-standalone.p44-product-shell.p40-scrolling :is(.p34-ambient-shell,.p33-memory-space-shell){display:none!important}
html body.patrol-mode.patrol-standalone.p44-product-shell.p40-scrolling *{scroll-behavior:auto!important}

@media(max-width:1280px){html body.patrol-mode.patrol-standalone.p44-product-shell .p44-action-deck>div{grid-template-columns:1fr!important}}
@media(max-width:900px){html body.patrol-mode.patrol-standalone.p44-product-shell .p43-brief-items{grid-template-columns:1fr 1fr!important}html body.patrol-mode.patrol-standalone.p44-product-shell .p43-brief-items>div:nth-child(odd){border-left:0!important}html body.patrol-mode.patrol-standalone.p44-product-shell .p43-brief-items>div:nth-child(n+3){border-top:1px solid rgba(77,126,178,.10)!important}}
@media(max-width:640px){html body.patrol-mode.patrol-standalone.p44-product-shell .p43-brief-items{grid-template-columns:1fr!important}html body.patrol-mode.patrol-standalone.p44-product-shell .p43-brief-items>div+div{border-left:0!important;border-top:1px solid rgba(77,126,178,.10)!important}html body.patrol-mode.patrol-standalone.p44-product-shell .p35-map-detail-card{max-width:min(304px,calc(100% - 8px))!important}}


/* ======================================================================
   P46 — super-intelligent hierarchy + layout hard-gates + 60fps surfaces
   ====================================================================== */
html body.patrol-mode.patrol-standalone.p46-product-shell{
  --p46-ink:#17344f;--p46-text:#47627a;--p46-muted:#72869a;--p46-line:rgba(77,126,174,.13);
  --p46-blue:#4f8cff;--p46-cyan:#20b9d2;--p46-violet:#7769ee;--p46-coral:#ef687e;--p46-amber:#f0a33c;--p46-green:#3ead7a;
  text-rendering:optimizeLegibility;
}
html body.patrol-mode.patrol-standalone.p46-product-shell #patrolPage :is(.patrol-panel,.p7-panel,.p43-smart-brief,.p43-responsibility-card,.p7-kpis article,.p35-map-detail-card,.p7-table-wrap,.table-wrap){
  backdrop-filter:none!important;-webkit-backdrop-filter:none!important;filter:none!important;
}
html body.patrol-mode.patrol-standalone.p46-product-shell #patrolPage :is(.patrol-panel,.p7-panel,.p43-responsibility-card,.p7-kpis article){box-shadow:0 7px 22px rgba(42,78,119,.045)!important}
html body.patrol-mode.patrol-standalone.p46-product-shell #patrolPage :is(.p7-table-wrap,.table-wrap,.p43-responsibility-cards,.p7-output-grid,.patrol-results-grid){content-visibility:auto;contain-intrinsic-size:720px}
html body.patrol-mode.patrol-standalone.p46-product-shell #patrolPage :is(.p7-module-head,.patrol-panel-head,.p7-input-heading)>*{min-width:0}
html body.patrol-mode.patrol-standalone.p46-product-shell #patrolPage :is(h1,h2,h3,.p7-module-head h2,.patrol-panel-head h3){text-wrap:balance;line-height:1.18;letter-spacing:-.015em}
html body.patrol-mode.patrol-standalone.p46-product-shell #patrolPage :is(p,small,td,th,button,label,select,input,textarea){line-height:1.48}
html body.patrol-mode.patrol-standalone.p46-product-shell #patrolPage :is(.patrol-panel-head small,.p7-module-head p,.p7-table-meta,.p43-responsibility-card footer,.p46-brief-lead span,.p46-smart-action small,.p46-smart-action em){font-size:max(13px,0.78rem)!important}
html body.patrol-mode.patrol-standalone.p46-product-shell #patrolPage :is(button,.btn,select,input){min-height:40px}
html body.patrol-mode.patrol-standalone.p46-product-shell #patrolPage :is(.btn.primary,#patrolAnalyzeBtn,#p7TopOutputBtn){min-height:42px;font-weight:760}

html body.patrol-mode.patrol-standalone.p46-product-shell .p43-smart-brief.p46-smart-brief{
  display:grid!important;grid-template-columns:minmax(0,1.35fr) minmax(330px,.9fr)!important;gap:18px!important;
  padding:18px 20px!important;border-radius:20px!important;border:1px solid var(--p46-line)!important;
  background:linear-gradient(135deg,rgba(255,255,255,.98),rgba(244,250,255,.96) 56%,rgba(248,245,255,.94))!important;
  box-shadow:0 10px 30px rgba(48,86,128,.055)!important;align-items:stretch!important;
}
html body.patrol-mode.patrol-standalone.p46-product-shell .p46-brief-lead{display:flex;flex-direction:column;justify-content:center;gap:7px;min-width:0;padding:2px 4px}
html body.patrol-mode.patrol-standalone.p46-product-shell .p46-brief-lead>span{color:#4b7bae;font-weight:800;letter-spacing:.08em}
html body.patrol-mode.patrol-standalone.p46-product-shell .p46-brief-lead>strong{font-size:16px;line-height:1.68;font-weight:730;color:var(--p46-ink);overflow-wrap:anywhere}
html body.patrol-mode.patrol-standalone.p46-product-shell .p46-brief-actions{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px;min-width:0}
html body.patrol-mode.patrol-standalone.p46-product-shell .p46-smart-action{
  appearance:none;border:1px solid rgba(83,130,178,.11);background:#fff;border-radius:15px;padding:12px 11px;min-width:0;min-height:92px;
  display:grid;grid-template-columns:4px minmax(0,1fr) 18px;gap:9px;align-items:center;text-align:left;color:var(--p46-ink);cursor:pointer;
  box-shadow:0 4px 14px rgba(37,73,112,.035);transition:transform .12s ease,box-shadow .12s ease,border-color .12s ease!important;
}
html body.patrol-mode.patrol-standalone.p46-product-shell .p46-smart-action:hover{transform:translateY(-1px);box-shadow:0 7px 20px rgba(37,73,112,.065);border-color:rgba(79,140,255,.22)}
html body.patrol-mode.patrol-standalone.p46-product-shell .p46-smart-action>i{align-self:stretch;border-radius:999px;background:var(--p46-blue)}
html body.patrol-mode.patrol-standalone.p46-product-shell .p46-smart-action.danger>i{background:var(--p46-coral)}
html body.patrol-mode.patrol-standalone.p46-product-shell .p46-smart-action.warn>i,.p46-smart-action.amber>i{background:var(--p46-amber)}
html body.patrol-mode.patrol-standalone.p46-product-shell .p46-smart-action.violet>i{background:var(--p46-violet)}
html body.patrol-mode.patrol-standalone.p46-product-shell .p46-smart-action.cyan>i{background:var(--p46-cyan)}
html body.patrol-mode.patrol-standalone.p46-product-shell .p46-smart-action.good>i{background:var(--p46-green)}
html body.patrol-mode.patrol-standalone.p46-product-shell .p46-smart-action>span{min-width:0;display:grid;gap:3px}
html body.patrol-mode.patrol-standalone.p46-product-shell .p46-smart-action small{color:var(--p46-muted);font-weight:700}
html body.patrol-mode.patrol-standalone.p46-product-shell .p46-smart-action b{font-size:18px;line-height:1.15;color:var(--p46-ink);font-weight:860}
html body.patrol-mode.patrol-standalone.p46-product-shell .p46-smart-action em{font-style:normal;color:var(--p46-text);font-weight:620;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;overflow:hidden}
html body.patrol-mode.patrol-standalone.p46-product-shell .p46-smart-action svg{width:17px;height:17px;fill:none;stroke:#7b93aa;stroke-width:1.8}

html body.patrol-mode.patrol-standalone.p46-product-shell .p43-responsibility-cards{grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:14px!important}
html body.patrol-mode.patrol-standalone.p46-product-shell .p43-responsibility-card{min-height:184px!important;padding:17px 18px 16px!important;border-radius:19px!important;display:flex!important;flex-direction:column!important;gap:11px!important}
html body.patrol-mode.patrol-standalone.p46-product-shell .p43-responsibility-card header{display:grid!important;grid-template-columns:auto minmax(0,1fr)!important;gap:8px 10px!important;align-items:center!important}
html body.patrol-mode.patrol-standalone.p46-product-shell .p43-responsibility-card header b{font-size:19px!important;line-height:1.2!important}
html body.patrol-mode.patrol-standalone.p46-product-shell .p43-responsibility-card header span{font-size:14px!important;line-height:1.3!important;white-space:normal!important;overflow:visible!important;text-overflow:clip!important;padding:5px 9px!important;justify-self:start!important}
html body.patrol-mode.patrol-standalone.p46-product-shell .p43-resp-count{font-size:14px!important;color:#47647d!important;font-weight:700!important}
html body.patrol-mode.patrol-standalone.p46-product-shell .p43-resp-reg{display:grid!important;grid-template-columns:minmax(80px,1fr)!important;gap:8px!important}
html body.patrol-mode.patrol-standalone.p46-product-shell .p43-resp-reg>span{font-size:13px!important;color:#5c748a!important;overflow-wrap:anywhere}
html body.patrol-mode.patrol-standalone.p46-product-shell .p43-responsibility-card footer{font-size:13px!important;line-height:1.5!important;margin-top:auto!important}

html body.patrol-mode.patrol-standalone.p46-product-shell .p46-table-shell{border:1px solid rgba(75,125,174,.10)!important;border-radius:18px!important;overflow:auto!important;background:rgba(255,255,255,.985)!important;box-shadow:0 7px 22px rgba(38,74,113,.035)!important}
html body.patrol-mode.patrol-standalone.p46-product-shell .p46-table-shell table{border-collapse:separate!important;border-spacing:0!important;width:100%!important;table-layout:auto!important}
html body.patrol-mode.patrol-standalone.p46-product-shell .p46-table-shell th{position:sticky;top:0;z-index:2;background:#f7fbff!important;color:#47637a!important;font-size:13px!important;font-weight:800!important;vertical-align:middle!important;padding:12px 14px!important;border-bottom:1px solid rgba(76,124,171,.12)!important;white-space:nowrap}
html body.patrol-mode.patrol-standalone.p46-product-shell .p46-table-shell td{font-size:13.5px!important;vertical-align:middle!important;padding:11px 14px!important;border-bottom:1px solid rgba(76,124,171,.075)!important;line-height:1.5!important}
html body.patrol-mode.patrol-standalone.p46-product-shell .p46-table-shell tbody tr{height:54px}
html body.patrol-mode.patrol-standalone.p46-product-shell .p46-table-shell tbody tr:hover{background:rgba(79,140,255,.035)!important}

html body.patrol-mode.patrol-standalone.p46-product-shell .p35-map-detail-card{border-radius:18px!important;box-shadow:0 12px 32px rgba(34,69,109,.12)!important;backdrop-filter:none!important;-webkit-backdrop-filter:none!important;contain:layout paint style!important}
html body.patrol-mode.patrol-standalone.p46-product-shell .p35-map-detail-card :is(.p35-detail-list,.p35-detail-section){scrollbar-width:thin;scrollbar-color:rgba(86,130,173,.28) transparent}
html body.patrol-mode.patrol-standalone.p46-product-shell.p40-scrolling :is(.p34-ambient-shell,.p33-memory-rings,.p43-smart-brief,.p43-responsibility-card,.p7-kpis article){animation-play-state:paused!important;transition:none!important;box-shadow:none!important}

@media (max-width:1180px){html body.patrol-mode.patrol-standalone.p46-product-shell .p43-smart-brief.p46-smart-brief{grid-template-columns:1fr!important}html body.patrol-mode.patrol-standalone.p46-product-shell .p46-brief-actions{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media (max-width:900px){html body.patrol-mode.patrol-standalone.p46-product-shell .p43-responsibility-cards{grid-template-columns:repeat(2,minmax(0,1fr))!important}html body.patrol-mode.patrol-standalone.p46-product-shell .p46-brief-actions{grid-template-columns:1fr!important}.p46-smart-action{min-height:76px!important}}
@media (max-width:640px){html body.patrol-mode.patrol-standalone.p46-product-shell .p43-responsibility-cards{grid-template-columns:1fr!important}html body.patrol-mode.patrol-standalone.p46-product-shell .p43-smart-brief.p46-smart-brief{padding:15px!important;border-radius:17px!important}}
@media (prefers-reduced-motion:reduce){html body.patrol-mode.patrol-standalone.p46-product-shell *{scroll-behavior:auto!important}}

/* P46-R2 — intelligent layout discipline: no holes, no false dark emphasis, no cramped copy. */
html body.patrol-mode.patrol-standalone.p46-product-shell :is(#p7ProjectWorkspace .p7-domain-kpis,#p7StoreWorkspace .p7-domain-kpis,#patrolPersonZone .p7-responsibility-kpis){
  display:grid!important;grid-template-columns:repeat(auto-fit,minmax(205px,1fr))!important;gap:0!important;align-items:stretch!important;
  border:1px solid rgba(74,123,171,.11)!important;border-radius:21px!important;overflow:hidden!important;background:rgba(255,255,255,.93)!important;
}
html body.patrol-mode.patrol-standalone.p46-product-shell :is(#p7ProjectWorkspace .p7-domain-kpis,#p7StoreWorkspace .p7-domain-kpis,#patrolPersonZone .p7-responsibility-kpis)>article{
  min-height:132px!important;border:0!important;border-right:1px solid rgba(74,123,171,.10)!important;border-bottom:1px solid rgba(74,123,171,.10)!important;border-radius:0!important;
  box-shadow:none!important;background:linear-gradient(145deg,#fff,#f7fbff)!important;padding:20px 21px 18px!important;
}
html body.patrol-mode.patrol-standalone.p46-product-shell :is(#p7ProjectWorkspace .p7-domain-kpis,#p7StoreWorkspace .p7-domain-kpis,#patrolPersonZone .p7-responsibility-kpis)>article:nth-child(5n+1){background:linear-gradient(145deg,#fff,#f1f7ff)!important}
html body.patrol-mode.patrol-standalone.p46-product-shell :is(#p7ProjectWorkspace .p7-domain-kpis,#p7StoreWorkspace .p7-domain-kpis,#patrolPersonZone .p7-responsibility-kpis)>article:nth-child(5n+2){background:linear-gradient(145deg,#fff,#effbfc)!important}
html body.patrol-mode.patrol-standalone.p46-product-shell :is(#p7ProjectWorkspace .p7-domain-kpis,#p7StoreWorkspace .p7-domain-kpis,#patrolPersonZone .p7-responsibility-kpis)>article:nth-child(5n+3){background:linear-gradient(145deg,#fff,#fff5f7)!important}
html body.patrol-mode.patrol-standalone.p46-product-shell :is(#p7ProjectWorkspace .p7-domain-kpis,#p7StoreWorkspace .p7-domain-kpis,#patrolPersonZone .p7-responsibility-kpis)>article:nth-child(5n+4){background:linear-gradient(145deg,#fff,#fff9ef)!important}
html body.patrol-mode.patrol-standalone.p46-product-shell :is(#p7ProjectWorkspace .p7-domain-kpis,#p7StoreWorkspace .p7-domain-kpis,#patrolPersonZone .p7-responsibility-kpis)>article:nth-child(5n){background:linear-gradient(145deg,#fff,#f7f4ff)!important}
html body.patrol-mode.patrol-standalone.p46-product-shell :is(#p7ProjectWorkspace .p7-domain-kpis,#p7StoreWorkspace .p7-domain-kpis,#patrolPersonZone .p7-responsibility-kpis)>article strong{font-size:34px!important;line-height:1.08!important;margin-top:12px!important;color:#173a57!important}
html body.patrol-mode.patrol-standalone.p46-product-shell :is(#p7ProjectWorkspace .p7-domain-kpis,#p7StoreWorkspace .p7-domain-kpis,#patrolPersonZone .p7-responsibility-kpis)>article>span{font-size:14px!important;font-weight:760!important;color:#587087!important}
html body.patrol-mode.patrol-standalone.p46-product-shell :is(#p7ProjectWorkspace .p7-domain-kpis,#p7StoreWorkspace .p7-domain-kpis,#patrolPersonZone .p7-responsibility-kpis)>article>small{font-size:13px!important;line-height:1.5!important;color:#71869a!important;margin-top:8px!important}
html body.patrol-mode.patrol-standalone.p46-product-shell .p46-zero-kpi{display:none!important}

html body.patrol-mode.patrol-standalone.p46-product-shell #p15CompletenessBar{align-items:center!important;gap:9px!important;padding:10px 13px!important}
html body.patrol-mode.patrol-standalone.p46-product-shell #p15CompletenessBar .p15-completeness-item{min-height:34px!important;padding:7px 11px!important;display:inline-flex!important;align-items:center!important;gap:6px!important}
html body.patrol-mode.patrol-standalone.p46-product-shell #p15CompletenessBar .p15-completeness-item em{font-size:13px!important;white-space:nowrap!important}
html body.patrol-mode.patrol-standalone.p46-product-shell #p15CompletenessBar>small{margin-left:auto!important;max-width:560px!important;text-align:right!important;line-height:1.45!important;color:#6a7e91!important}

html body.patrol-mode.patrol-standalone.p46-product-shell .p43-smart-brief.p46-smart-brief{grid-template-columns:minmax(0,1.5fr) minmax(420px,1fr)!important}
html body.patrol-mode.patrol-standalone.p46-product-shell .p46-brief-actions{grid-template-columns:repeat(3,minmax(125px,1fr))!important}
html body.patrol-mode.patrol-standalone.p46-product-shell .p46-smart-action{min-height:96px!important;padding:12px 12px!important}
html body.patrol-mode.patrol-standalone.p46-product-shell .p46-smart-action em{-webkit-line-clamp:2!important;font-size:13px!important;line-height:1.42!important}
html body.patrol-mode.patrol-standalone.p46-product-shell .p46-smart-action b{font-size:18px!important}

html body.patrol-mode.patrol-standalone.p46-product-shell #patrolOutputZone .p7-output-group{border-radius:22px!important;border:1px solid rgba(74,124,173,.10)!important;background:linear-gradient(145deg,rgba(255,255,255,.98),rgba(247,251,255,.96))!important;box-shadow:0 8px 26px rgba(44,79,119,.04)!important;overflow:hidden!important}
html body.patrol-mode.patrol-standalone.p46-product-shell #patrolOutputZone .p7-output-group-head{padding:18px 20px!important;background:linear-gradient(90deg,rgba(239,247,255,.9),rgba(249,246,255,.72))!important;border-bottom:1px solid rgba(76,125,176,.09)!important}

@media (max-width:1280px){
 html body.patrol-mode.patrol-standalone.p46-product-shell .p43-smart-brief.p46-smart-brief{grid-template-columns:1fr!important}
 html body.patrol-mode.patrol-standalone.p46-product-shell .p46-brief-actions{grid-template-columns:repeat(3,minmax(0,1fr))!important}
 html body.patrol-mode.patrol-standalone.p46-product-shell #p15CompletenessBar>small{max-width:430px!important}
}
@media (max-width:900px){
 html body.patrol-mode.patrol-standalone.p46-product-shell :is(#p7ProjectWorkspace .p7-domain-kpis,#p7StoreWorkspace .p7-domain-kpis,#patrolPersonZone .p7-responsibility-kpis){grid-template-columns:repeat(2,minmax(0,1fr))!important}
 html body.patrol-mode.patrol-standalone.p46-product-shell #p15CompletenessBar{flex-wrap:wrap!important}
 html body.patrol-mode.patrol-standalone.p46-product-shell #p15CompletenessBar>small{max-width:none!important;width:100%!important;text-align:left!important;margin-left:0!important}
 html body.patrol-mode.patrol-standalone.p46-product-shell .p46-brief-actions{grid-template-columns:1fr!important}
}
@media (max-width:640px){
 html body.patrol-mode.patrol-standalone.p46-product-shell :is(#p7ProjectWorkspace .p7-domain-kpis,#p7StoreWorkspace .p7-domain-kpis,#patrolPersonZone .p7-responsibility-kpis){grid-template-columns:1fr!important}
 html body.patrol-mode.patrol-standalone.p46-product-shell .p46-smart-action{min-height:82px!important}
}

/* P46 FINAL-R3 — strict readable badge/icon geometry. */
html body.patrol-mode.patrol-standalone.p46-product-shell #patrolPage .p7-gap-item>i{
  width:30px!important;height:30px!important;min-width:30px!important;font-size:13px!important;line-height:1!important;border-radius:9px!important;
}
html body.patrol-mode.patrol-standalone.p46-product-shell #patrolPage .p7-gap-item b{font-size:13px!important;line-height:1.35!important}
html body.patrol-mode.patrol-standalone.p46-product-shell #patrolPage .p7-gap-item small{font-size:13px!important;line-height:1.42!important}
html body.patrol-mode.patrol-standalone.p46-product-shell #patrolPage .p15-gap-priority small,
html body.patrol-mode.patrol-standalone.p46-product-shell #patrolPage .p15-copy-gap,
html body.patrol-mode.patrol-standalone.p46-product-shell #patrolPage .p4-priority-row small,
html body.patrol-mode.patrol-standalone.p46-product-shell #patrolPage .p4-priority-row>i{font-size:13px!important;line-height:1.35!important}
html body.patrol-mode.patrol-standalone.p46-product-shell #patrolPage .p15-gap-priority::before{font-size:13px!important;width:26px!important;height:26px!important}
html body.patrol-mode.patrol-standalone.p46-product-shell #patrolPage .p7-bar-row>span,
html body.patrol-mode.patrol-standalone.p46-product-shell #patrolPage .p7-bar-row strong,
html body.patrol-mode.patrol-standalone.p46-product-shell #patrolPage .p7-bar-row small{font-size:13px!important;line-height:1.4!important}
html body.patrol-mode.patrol-standalone.p46-product-shell #patrolPage .p7-bar-row{grid-template-columns:minmax(118px,190px) minmax(140px,1fr) auto!important;gap:11px!important;min-height:30px}

/* P46 FINAL-R4 — table readability and strict public typography. */
html body.patrol-mode.patrol-standalone.p46-product-shell #p7ProjectTableStatus,
html body.patrol-mode.patrol-standalone.p46-product-shell #p7ProjectTableCount,
html body.patrol-mode.patrol-standalone.p46-product-shell #p7StoreTableStatus,
html body.patrol-mode.patrol-standalone.p46-product-shell #p7StoreTableCount{font-size:13px!important;line-height:1.45!important}
html body.patrol-mode.patrol-standalone.p46-product-shell #patrolPage .p15-project-address-cell,
html body.patrol-mode.patrol-standalone.p46-product-shell #patrolPage .p16-project-address{max-width:260px!important}
html body.patrol-mode.patrol-standalone.p46-product-shell #patrolPage .p15-project-address-cell .p7-cell-main>b,
html body.patrol-mode.patrol-standalone.p46-product-shell #patrolPage .p16-project-address .p7-cell-main>b{
  display:block!important;max-width:250px!important;white-space:normal!important;overflow:visible!important;text-overflow:clip!important;line-height:1.42!important;overflow-wrap:anywhere!important;
}
html body.patrol-mode.patrol-standalone.p46-product-shell #patrolPage .p7-object-table td,
html body.patrol-mode.patrol-standalone.p46-product-shell #patrolPage .p7-object-table th{font-size:13px!important;line-height:1.42!important}
html body.patrol-mode.patrol-standalone.p46-product-shell #patrolPage .p7-cell-main b{font-size:13px!important;line-height:1.42!important}
html body.patrol-mode.patrol-standalone.p46-product-shell #patrolPage .p7-cell-main small{font-size:13px!important;line-height:1.38!important}
html body.patrol-mode.patrol-standalone.p46-product-shell #patrolPage .p7-status-badge,
html body.patrol-mode.patrol-standalone.p46-product-shell #patrolPage .p7-detail-btn{font-size:13px!important;line-height:1.3!important;min-height:30px!important}
@media(max-width:900px){
 html body.patrol-mode.patrol-standalone.p46-product-shell #patrolPage .p7-table-wrap{overflow-x:auto!important;overscroll-behavior-inline:contain;scrollbar-gutter:stable}
 html body.patrol-mode.patrol-standalone.p46-product-shell #patrolPage .p7-object-table{min-width:1080px!important}
}

/* P46 FINAL-R5 — beat historical P18 table specificity. */
html body.patrol-mode.patrol-standalone.p46-product-shell #patrolPage #p7ProjectWorkspace #p7ProjectTableStatus,
html body.patrol-mode.patrol-standalone.p46-product-shell #patrolPage #p7ProjectWorkspace #p7ProjectTableCount,
html body.patrol-mode.patrol-standalone.p46-product-shell #patrolPage #p7StoreWorkspace #p7StoreTableStatus,
html body.patrol-mode.patrol-standalone.p46-product-shell #patrolPage #p7StoreWorkspace #p7StoreTableCount{font-size:13px!important;line-height:1.45!important}

/* P46 FINAL-R6 — input view is always immediately paste-ready. */
html body.patrol-mode.patrol-standalone.p46-product-shell[data-p7-view="input"] #patrolInputZone #patrolInput,
html body.patrol-mode.patrol-standalone.p46-product-shell.patrol-editing-data #patrolInputZone #patrolInput{
  display:block!important;opacity:1!important;visibility:visible!important;pointer-events:auto!important;min-height:300px!important;max-height:min(46vh,520px)!important;
}

/* P46 FINAL-R7 — output header and narrow-width layout hard gate. */
@media (max-width:1400px){
 html body.patrol-mode.patrol-standalone.p46-product-shell #patrolOutputZone .patrol-panel-head{
   grid-template-columns:32px minmax(0,1fr)!important;
   gap:10px 12px!important;align-items:start!important;
 }
 html body.patrol-mode.patrol-standalone.p46-product-shell #patrolOutputZone .patrol-panel-head>div:nth-child(2){
   min-width:0!important;width:auto!important;max-width:none!important;
 }
 html body.patrol-mode.patrol-standalone.p46-product-shell #patrolOutputZone .patrol-panel-head>div:nth-child(3){
   grid-column:1 / -1!important;display:flex!important;flex-wrap:wrap!important;gap:8px!important;
   width:100%!important;min-width:0!important;justify-content:flex-start!important;
 }
 html body.patrol-mode.patrol-standalone.p46-product-shell #patrolOutputZone .patrol-panel-head h3{
   width:auto!important;min-width:0!important;white-space:normal!important;overflow:visible!important;text-overflow:clip!important;
 }
}


/* ======================================================================
   P46-R8 — smart chrome, compact input workflow, scan-friendly geometry
   ====================================================================== */
html body.patrol-mode.patrol-standalone.p46-product-shell .p7-topbar{
  display:grid!important;grid-template-columns:minmax(245px,.78fr) minmax(360px,1.18fr) auto!important;
  align-items:center!important;gap:14px!important;padding:11px 16px 11px 18px!important;
  min-height:78px!important;border-bottom:1px solid rgba(69,118,170,.10)!important;
  background:linear-gradient(100deg,rgba(255,255,255,.985),rgba(246,251,255,.98) 58%,rgba(250,247,255,.975))!important;
  box-shadow:0 5px 22px rgba(44,78,116,.045)!important;backdrop-filter:none!important;-webkit-backdrop-filter:none!important;
}
html body.patrol-mode.patrol-standalone.p46-product-shell .p7-topbar-context{min-width:0!important;gap:2px!important}
html body.patrol-mode.patrol-standalone.p46-product-shell .p7-topbar-product{font-size:12.5px!important;letter-spacing:.06em!important;color:#7b8fa2!important}
html body.patrol-mode.patrol-standalone.p46-product-shell .p7-topbar-title-row{display:flex!important;align-items:baseline!important;gap:9px!important;min-width:0!important}
html body.patrol-mode.patrol-standalone.p46-product-shell .p7-topbar-title-row h1{font-size:22px!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important}
html body.patrol-mode.patrol-standalone.p46-product-shell .p7-topbar-title-row span{font-size:13px!important;white-space:nowrap!important;color:#758a9e!important}
html body.patrol-mode.patrol-standalone.p46-product-shell .p7-topbar-actions{display:flex!important;align-items:center!important;justify-content:flex-end!important;gap:8px!important;min-width:0!important}
html body.patrol-mode.patrol-standalone.p46-product-shell .p7-topbar :is(.p7-period-chip,.p7-compute-chip){min-height:48px!important;padding:7px 10px!important;border-radius:14px!important;background:rgba(255,255,255,.86)!important;box-shadow:none!important;border:1px solid rgba(74,121,169,.09)!important}

html body.patrol-mode.patrol-standalone.p46-product-shell .p46-context-rail{
  min-width:0;display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:11px;padding:8px 9px 8px 13px;
  border:1px solid rgba(78,132,185,.12);border-radius:16px;background:linear-gradient(115deg,rgba(239,247,255,.9),rgba(249,247,255,.88));
  box-shadow:inset 0 1px 0 rgba(255,255,255,.75);overflow:hidden;
}
html body.patrol-mode.patrol-standalone.p46-product-shell .p46-context-copy{min-width:0;display:grid;gap:2px}
html body.patrol-mode.patrol-standalone.p46-product-shell .p46-context-copy>span{font-size:12.5px;line-height:1.3;color:#4f80b2;font-weight:850;letter-spacing:.05em}
html body.patrol-mode.patrol-standalone.p46-product-shell .p46-context-copy>strong{font-size:13px;line-height:1.48;color:#3f5b74;font-weight:680;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
html body.patrol-mode.patrol-standalone.p46-product-shell .p46-context-next{
  appearance:none;min-height:46px;max-width:210px;display:grid;grid-template-columns:minmax(0,1fr) 16px;grid-template-rows:auto auto;column-gap:8px;align-content:center;
  border:0;border-radius:12px;background:#fff;padding:7px 9px 7px 11px;text-align:left;color:#315371;cursor:pointer;box-shadow:0 4px 12px rgba(47,83,119,.05);
  transition:transform .13s ease,box-shadow .13s ease!important;
}
html body.patrol-mode.patrol-standalone.p46-product-shell .p46-context-next:hover{transform:translateY(-1px);box-shadow:0 7px 18px rgba(47,83,119,.08)}
html body.patrol-mode.patrol-standalone.p46-product-shell .p46-context-next small{grid-column:1;font-size:12.5px;line-height:1.15;color:#8a99a8;font-weight:720}
html body.patrol-mode.patrol-standalone.p46-product-shell .p46-context-next b{grid-column:1;font-size:13px;line-height:1.3;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
html body.patrol-mode.patrol-standalone.p46-product-shell .p46-context-next svg{grid-column:2;grid-row:1/3;width:16px;height:16px;align-self:center;fill:none;stroke:#68829a;stroke-width:1.8}
html body.patrol-mode.patrol-standalone.p46-product-shell .p46-command-btn{
  min-height:40px!important;padding:0 10px!important;border:1px solid rgba(79,127,175,.12)!important;border-radius:12px!important;background:rgba(255,255,255,.9)!important;
  display:inline-flex;align-items:center;gap:7px;color:#42647f;font-size:13px;font-weight:760;cursor:pointer;white-space:nowrap;
}
html body.patrol-mode.patrol-standalone.p46-product-shell :is(.p46-command-btn,.p46-command-palette) kbd{font:700 12.5px/1.1 ui-monospace,SFMono-Regular,Consolas,monospace;color:#6f8294;background:#f4f7fa;border:1px solid #e1e8ef;border-bottom-color:#ccd7e2;border-radius:6px;padding:3px 5px;white-space:nowrap}

html body.patrol-mode.patrol-standalone.p46-product-shell .p7-sidebar{border-right:1px solid rgba(71,119,167,.09)!important;background:linear-gradient(180deg,rgba(250,253,255,.99),rgba(246,250,255,.985) 57%,rgba(250,247,255,.98))!important;box-shadow:5px 0 24px rgba(45,76,111,.035)!important;backdrop-filter:none!important;-webkit-backdrop-filter:none!important}
html body.patrol-mode.patrol-standalone.p46-product-shell .p7-side-nav{gap:4px!important}
html body.patrol-mode.patrol-standalone.p46-product-shell .p7-side-nav button{min-height:47px!important;border-radius:13px!important;margin-inline:8px!important;padding-inline:11px!important;transition:transform .12s ease,background .12s ease!important}
html body.patrol-mode.patrol-standalone.p46-product-shell .p7-side-nav button:hover{transform:translateX(1px)}
html body.patrol-mode.patrol-standalone.p46-product-shell .p7-side-nav button.active{background:linear-gradient(100deg,#edf5ff,#f4f0ff)!important;box-shadow:inset 3px 0 0 #558eff!important}
html body.patrol-mode.patrol-standalone.p46-product-shell .p7-side-nav button.active .p7-nav-label{color:#2f567b!important;font-weight:820!important}

html body.patrol-mode.patrol-standalone.p46-product-shell #patrolInputZone{gap:16px!important}
html body.patrol-mode.patrol-standalone.p46-product-shell #patrolInputZone .p7-input-heading{padding:21px 23px!important;min-height:0!important;border-radius:22px!important}
html body.patrol-mode.patrol-standalone.p46-product-shell #patrolInputZone .p7-input-heading h2{font-size:27px!important}
html body.patrol-mode.patrol-standalone.p46-product-shell #patrolInputZone .p7-input-heading p{margin-top:5px!important;max-width:760px!important;font-size:13.5px!important;line-height:1.55!important}
html body.patrol-mode.patrol-standalone.p46-product-shell #patrolInputZone .p7-input-trust{gap:7px!important;align-self:center!important}
html body.patrol-mode.patrol-standalone.p46-product-shell #patrolInputZone .p7-input-trust span{min-height:32px!important;padding:6px 9px!important;font-size:12.5px!important;border-radius:10px!important}
html body.patrol-mode.patrol-standalone.p46-product-shell #patrolInputZone .patrol-one-paste-grid{
  display:grid!important;grid-template-columns:minmax(0,1.35fr) minmax(380px,.75fr)!important;gap:16px!important;align-items:start!important;
}
html body.patrol-mode.patrol-standalone.p46-product-shell #patrolInputZone .patrol-one-paste-card,
html body.patrol-mode.patrol-standalone.p46-product-shell #patrolInputZone .p7-input-guide{border-radius:21px!important;border:1px solid rgba(73,122,171,.10)!important;box-shadow:0 8px 28px rgba(41,76,115,.04)!important;background:rgba(255,255,255,.965)!important}
html body.patrol-mode.patrol-standalone.p46-product-shell #patrolInputZone .patrol-one-paste-card{padding:18px!important}
html body.patrol-mode.patrol-standalone.p46-product-shell #patrolInputZone .patrol-one-paste-head{margin-bottom:10px!important}
html body.patrol-mode.patrol-standalone.p46-product-shell #patrolInputZone .patrol-one-paste-head strong{font-size:16px!important;color:#24445f!important}
html body.patrol-mode.patrol-standalone.p46-product-shell #patrolInputZone .patrol-one-paste-head small{font-size:13px!important;line-height:1.5!important;color:#74889b!important}
html body.patrol-mode.patrol-standalone.p46-product-shell #patrolInputZone #patrolInput{min-height:330px!important;max-height:min(48vh,520px)!important;padding:15px 16px!important;font-size:13.5px!important;line-height:1.62!important;border-radius:15px!important;border:1px solid #dbe7f2!important;background:#fbfdff!important;resize:vertical!important;box-shadow:inset 0 1px 2px rgba(34,66,101,.025)!important}
html body.patrol-mode.patrol-standalone.p46-product-shell #patrolInputZone #patrolInput:focus{border-color:#83abf6!important;box-shadow:0 0 0 3px rgba(79,140,255,.10)!important;outline:none!important}
html body.patrol-mode.patrol-standalone.p46-product-shell #patrolInputZone .input-actions{gap:8px!important;margin-top:11px!important;flex-wrap:wrap!important}
html body.patrol-mode.patrol-standalone.p46-product-shell #patrolInputZone :is(#patrolPackageCheck,#patrolImportStatus){font-size:12.5px!important;line-height:1.45!important;min-height:34px!important;padding:7px 10px!important}
html body.patrol-mode.patrol-standalone.p46-product-shell #patrolInputZone .p7-input-guide{padding:17px!important;position:sticky!important;top:95px!important}
html body.patrol-mode.patrol-standalone.p46-product-shell #patrolInputZone .p7-guide-head{margin-bottom:12px!important}
html body.patrol-mode.patrol-standalone.p46-product-shell #patrolInputZone .p7-guide-head span{font-size:12.5px!important;color:#7790a6!important}
html body.patrol-mode.patrol-standalone.p46-product-shell #patrolInputZone .p7-guide-head strong{font-size:18px!important;color:#264966!important}
html body.patrol-mode.patrol-standalone.p46-product-shell #patrolInputZone .p7-guide-grid{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:8px!important}
html body.patrol-mode.patrol-standalone.p46-product-shell #patrolInputZone .p7-guide-grid article{min-height:78px!important;padding:11px 12px!important;border-radius:13px!important;background:linear-gradient(145deg,#f9fcff,#f7f5ff)!important;border:1px solid rgba(80,130,180,.075)!important;display:grid!important;align-content:center!important;gap:3px!important}
html body.patrol-mode.patrol-standalone.p46-product-shell #patrolInputZone .p7-guide-grid b{font-size:13.5px!important;color:#3b5b75!important}
html body.patrol-mode.patrol-standalone.p46-product-shell #patrolInputZone .p7-guide-grid small{font-size:12.5px!important;line-height:1.4!important;color:#778a9c!important}
html body.patrol-mode.patrol-standalone.p46-product-shell #patrolInputZone .p7-input-guide>p{font-size:12.5px!important;line-height:1.5!important;margin:11px 2px 0!important;color:#71869a!important}

html body.patrol-mode.patrol-standalone.p46-product-shell #patrolPage .p7-module-head{
  display:grid!important;grid-template-columns:36px minmax(0,1fr) auto!important;align-items:start!important;gap:10px 14px!important;
  padding:18px 20px!important;min-height:0!important;border-radius:20px!important;
}
html body.patrol-mode.patrol-standalone.p46-product-shell #patrolPage .p7-module-head .section-number{grid-row:1 / span 2!important}
html body.patrol-mode.patrol-standalone.p46-product-shell #patrolPage .p7-module-head .grow{min-width:0!important}
html body.patrol-mode.patrol-standalone.p46-product-shell #patrolPage .p7-module-head h2{font-size:26px!important}
html body.patrol-mode.patrol-standalone.p46-product-shell #patrolPage .p7-module-head p{font-size:13.5px!important;line-height:1.55!important;max-width:820px!important}
html body.patrol-mode.patrol-standalone.p46-product-shell #patrolPage .p7-module-head .patrol-module-actions{display:flex!important;justify-content:flex-end!important;align-items:center!important;gap:7px!important;flex-wrap:wrap!important;max-width:640px!important}
html body.patrol-mode.patrol-standalone.p46-product-shell #patrolPage .p7-module-head>.patrol-schema-badge{grid-column:3!important;justify-self:end!important;margin-top:2px!important}

html body.patrol-mode.patrol-standalone.p46-product-shell #patrolPage :is(.p7-table-wrap,.table-wrap,.p46-table-shell){scrollbar-gutter:stable both-edges;overscroll-behavior-inline:contain}
html body.patrol-mode.patrol-standalone.p46-product-shell #patrolPage .p46-table-shell tbody tr:nth-child(even){background:rgba(245,249,253,.56)}
html body.patrol-mode.patrol-standalone.p46-product-shell #patrolPage .p46-table-shell tbody tr:hover{background:rgba(79,140,255,.055)!important}
html body.patrol-mode.patrol-standalone.p46-product-shell #patrolPage .p46-table-shell :is(th,td){min-width:0!important}
html body.patrol-mode.patrol-standalone.p46-product-shell #patrolPage .p7-cell-main{min-width:0!important;max-width:100%!important}
html body.patrol-mode.patrol-standalone.p46-product-shell #patrolPage .p7-cell-main :is(b,small){overflow-wrap:anywhere!important}

html body.patrol-mode.patrol-standalone.p46-product-shell .p46-view-enter{animation:p46ViewEnter .18s cubic-bezier(.2,.75,.25,1) both}
@keyframes p46ViewEnter{from{opacity:.55;transform:translateY(4px)}to{opacity:1;transform:none}}
html body.patrol-mode.patrol-standalone.p46-product-shell :is(button,.btn,input,textarea,select,[tabindex]):focus-visible{outline:3px solid rgba(79,140,255,.18)!important;outline-offset:2px!important}

html body.patrol-mode.patrol-standalone.p46-product-shell .p46-command-palette{width:min(700px,calc(100vw - 32px));max-height:min(720px,calc(100vh - 34px));padding:0;border:0;border-radius:23px;background:transparent;box-shadow:none;overflow:visible}
html body.patrol-mode.patrol-standalone.p46-product-shell .p46-command-palette::backdrop{background:rgba(24,43,65,.28)}
html body.patrol-mode.patrol-standalone.p46-product-shell .p46-command-shell{overflow:hidden;border-radius:23px;border:1px solid rgba(80,126,173,.16);background:linear-gradient(145deg,#fff,#f8fbff 60%,#faf8ff);box-shadow:0 28px 80px rgba(32,61,92,.20)}
html body.patrol-mode.patrol-standalone.p46-product-shell .p46-command-shell>header{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;padding:20px 21px 13px}
html body.patrol-mode.patrol-standalone.p46-product-shell .p46-command-shell>header span{font-size:12.5px;color:#628ab3;font-weight:850;letter-spacing:.07em}
html body.patrol-mode.patrol-standalone.p46-product-shell .p46-command-shell>header h2{margin:4px 0 0;font-size:22px;line-height:1.2;color:#244660;letter-spacing:-.02em}
html body.patrol-mode.patrol-standalone.p46-product-shell .p46-command-shell>header button{width:38px;height:38px;min-height:38px;border:0;border-radius:11px;background:#f1f5f9;color:#71879a;font-size:24px;line-height:1;cursor:pointer}
html body.patrol-mode.patrol-standalone.p46-product-shell .p46-command-search{margin:0 20px 13px;min-height:48px;display:grid;grid-template-columns:20px minmax(0,1fr) auto;gap:10px;align-items:center;padding:0 12px;border:1px solid #dae6f0;border-radius:14px;background:#fff}
html body.patrol-mode.patrol-standalone.p46-product-shell .p46-command-search svg{width:18px;height:18px;fill:none;stroke:#7d93a6;stroke-width:1.8}
html body.patrol-mode.patrol-standalone.p46-product-shell .p46-command-search input{min-height:44px!important;border:0!important;outline:0!important;box-shadow:none!important;background:transparent!important;font-size:14px!important;color:#34546e!important}
html body.patrol-mode.patrol-standalone.p46-product-shell .p46-command-list{max-height:min(430px,55vh);overflow:auto;padding:0 12px 12px;display:grid;gap:4px}
html body.patrol-mode.patrol-standalone.p46-product-shell .p46-command-list button{min-height:64px;padding:8px 10px;border:0;border-radius:13px;background:transparent;display:grid;grid-template-columns:36px minmax(0,1fr) auto;gap:10px;align-items:center;text-align:left;cursor:pointer;color:#35566f}
html body.patrol-mode.patrol-standalone.p46-product-shell .p46-command-list button:hover,
html body.patrol-mode.patrol-standalone.p46-product-shell .p46-command-list button:focus-visible{background:linear-gradient(90deg,#eef6ff,#f7f4ff)}
html body.patrol-mode.patrol-standalone.p46-product-shell .p46-command-list button>i{width:34px;height:34px;border-radius:10px;display:grid;place-items:center;background:#edf5ff;color:#4f81b5;font-style:normal;font-size:13px;font-weight:900}
html body.patrol-mode.patrol-standalone.p46-product-shell .p46-command-list button>span{min-width:0;display:grid;gap:2px}
html body.patrol-mode.patrol-standalone.p46-product-shell .p46-command-list button b{font-size:14px;color:#31526d}
html body.patrol-mode.patrol-standalone.p46-product-shell .p46-command-list button small{font-size:12.5px;line-height:1.35;color:#7a8fa2;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
html body.patrol-mode.patrol-standalone.p46-product-shell .p46-command-shell>footer{display:flex;justify-content:space-between;gap:14px;padding:11px 20px 14px;border-top:1px solid rgba(75,123,171,.09);font-size:12.5px;color:#8595a4}

@media(max-width:1540px){
 html body.patrol-mode.patrol-standalone.p46-product-shell .p7-topbar{grid-template-columns:minmax(230px,.72fr) minmax(320px,1fr) auto!important}
 html body.patrol-mode.patrol-standalone.p46-product-shell .p46-context-copy>strong{max-width:560px}
 html body.patrol-mode.patrol-standalone.p46-product-shell .p7-topbar :is(.p7-period-chip,.p7-compute-chip){display:none!important}
}
@media(max-width:1260px){
 html body.patrol-mode.patrol-standalone.p46-product-shell .p7-topbar{grid-template-columns:minmax(240px,1fr) auto!important;grid-template-rows:auto auto!important}
 html body.patrol-mode.patrol-standalone.p46-product-shell .p46-context-rail{grid-column:1 / -1!important;grid-row:2!important}
 html body.patrol-mode.patrol-standalone.p46-product-shell #patrolInputZone .patrol-one-paste-grid{grid-template-columns:1fr!important}
 html body.patrol-mode.patrol-standalone.p46-product-shell #patrolInputZone .p7-input-guide{position:static!important}
 html body.patrol-mode.patrol-standalone.p46-product-shell #patrolInputZone .p7-guide-grid{grid-template-columns:repeat(3,minmax(0,1fr))!important}
}
@media(max-width:980px){
 html body.patrol-mode.patrol-standalone.p46-product-shell .p46-command-btn>span{display:none}
 html body.patrol-mode.patrol-standalone.p46-product-shell #patrolPage .p7-module-head{grid-template-columns:34px minmax(0,1fr)!important}
 html body.patrol-mode.patrol-standalone.p46-product-shell #patrolPage .p7-module-head .patrol-module-actions,
 html body.patrol-mode.patrol-standalone.p46-product-shell #patrolPage .p7-module-head>.patrol-schema-badge{grid-column:1 / -1!important;justify-self:stretch!important;max-width:none!important;justify-content:flex-start!important}
 html body.patrol-mode.patrol-standalone.p46-product-shell #patrolInputZone .p7-guide-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}
}
@media(max-width:700px){
 html body.patrol-mode.patrol-standalone.p46-product-shell .p7-topbar{padding:9px 10px!important;gap:8px!important}
 html body.patrol-mode.patrol-standalone.p46-product-shell .p7-topbar-title-row span{display:none!important}
 html body.patrol-mode.patrol-standalone.p46-product-shell .p7-topbar-title-row h1{font-size:18px!important}
 html body.patrol-mode.patrol-standalone.p46-product-shell .p7-topbar-actions .p7-top-action span{display:none!important}
 html body.patrol-mode.patrol-standalone.p46-product-shell .p46-context-rail{grid-template-columns:1fr!important;padding:9px 10px!important}
 html body.patrol-mode.patrol-standalone.p46-product-shell .p46-context-copy>strong{white-space:normal;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;overflow:hidden}
 html body.patrol-mode.patrol-standalone.p46-product-shell .p46-context-next{max-width:none;width:100%}
 html body.patrol-mode.patrol-standalone.p46-product-shell #patrolInputZone .p7-input-heading{padding:17px!important}
 html body.patrol-mode.patrol-standalone.p46-product-shell #patrolInputZone .p7-input-heading h2{font-size:23px!important}
 html body.patrol-mode.patrol-standalone.p46-product-shell #patrolInputZone .p7-input-trust{display:none!important}
 html body.patrol-mode.patrol-standalone.p46-product-shell #patrolInputZone .p7-guide-grid{grid-template-columns:1fr!important}
 html body.patrol-mode.patrol-standalone.p46-product-shell #patrolInputZone .p7-guide-grid article{min-height:66px!important}
 html body.patrol-mode.patrol-standalone.p46-product-shell .p46-command-shell>footer{flex-direction:column;gap:3px}
}
@media(prefers-reduced-motion:reduce){
 html body.patrol-mode.patrol-standalone.p46-product-shell .p46-view-enter{animation:none!important}
 html body.patrol-mode.patrol-standalone.p46-product-shell :is(.p46-context-next,.p46-smart-action,.p7-side-nav button){transition:none!important;transform:none!important}
}

/* P46-R9 — beat historical input-guide specificity and align status geometry. */
html body.patrol-mode.patrol-standalone.p46-product-shell #patrolPage #patrolInputZone .patrol-contract-card.p7-input-guide>.p7-guide-head>span{
  font-size:12.5px!important;line-height:1.35!important;color:#7790a6!important;font-weight:800!important;
}
html body.patrol-mode.patrol-standalone.p46-product-shell #patrolPage #patrolInputZone .patrol-contract-card.p7-input-guide>.p7-guide-grid{
  display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:8px!important;padding:0!important;width:100%!important;
}
html body.patrol-mode.patrol-standalone.p46-product-shell #patrolPage #patrolInputZone .patrol-contract-card.p7-input-guide>.p7-guide-grid>article{
  width:auto!important;min-width:0!important;min-height:88px!important;padding:11px 11px 11px 13px!important;border:1px solid rgba(80,130,180,.075)!important;border-radius:13px!important;
  background:linear-gradient(145deg,#f9fcff,#f7f5ff)!important;display:grid!important;grid-template-columns:36px minmax(0,1fr)!important;grid-template-rows:auto auto!important;
  align-items:center!important;column-gap:9px!important;row-gap:2px!important;
}
html body.patrol-mode.patrol-standalone.p46-product-shell #patrolPage #patrolInputZone .patrol-contract-card.p7-input-guide>.p7-guide-grid>article>.p24-mini-icon{
  grid-column:1!important;grid-row:1 / 3!important;width:34px!important;height:34px!important;min-width:34px!important;margin:0!important;border-radius:10px!important;
}
html body.patrol-mode.patrol-standalone.p46-product-shell #patrolPage #patrolInputZone .patrol-contract-card.p7-input-guide>.p7-guide-grid>article>b{
  grid-column:2!important;grid-row:1!important;font-size:13.5px!important;line-height:1.35!important;word-break:normal!important;
}
html body.patrol-mode.patrol-standalone.p46-product-shell #patrolPage #patrolInputZone .patrol-contract-card.p7-input-guide>.p7-guide-grid>article>small{
  grid-column:2!important;grid-row:2!important;font-size:12.5px!important;line-height:1.42!important;word-break:normal!important;
}
html body.patrol-mode.patrol-standalone.p46-product-shell #patrolPage #patrolInputZone :is(#patrolPackageCheck,#patrolImportStatus){
  position:relative!important;display:flex!important;align-items:center!important;padding:7px 10px 7px 36px!important;overflow:hidden!important;
}
html body.patrol-mode.patrol-standalone.p46-product-shell #patrolPage #patrolInputZone :is(#patrolPackageCheck,#patrolImportStatus)::before{
  position:absolute!important;left:10px!important;top:50%!important;transform:translateY(-50%)!important;width:18px!important;height:18px!important;min-width:18px!important;
  display:grid!important;place-items:center!important;margin:0!important;border-radius:7px!important;font-size:12.5px!important;line-height:1!important;
}
@media(max-width:1260px){
 html body.patrol-mode.patrol-standalone.p46-product-shell #patrolPage #patrolInputZone .patrol-contract-card.p7-input-guide>.p7-guide-grid{grid-template-columns:repeat(3,minmax(0,1fr))!important}
}
@media(max-width:900px){
 html body.patrol-mode.patrol-standalone.p46-product-shell #patrolPage #patrolInputZone .patrol-contract-card.p7-input-guide>.p7-guide-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}
}
@media(max-width:640px){
 html body.patrol-mode.patrol-standalone.p46-product-shell #patrolPage #patrolInputZone .patrol-contract-card.p7-input-guide>.p7-guide-grid{grid-template-columns:1fr!important}
}

/* P46-R10 — module-head grid ownership; historical generations may not collapse the title column. */
html body.patrol-mode.patrol-standalone.p46-product-shell #patrolPage#patrolPage .p7-module-head{
  display:grid!important;grid-template-columns:36px minmax(0,1fr) minmax(300px,auto)!important;grid-auto-rows:auto!important;align-items:start!important;gap:8px 14px!important;
}
html body.patrol-mode.patrol-standalone.p46-product-shell #patrolPage#patrolPage .p7-module-head>.section-number{
  display:grid!important;grid-column:1!important;grid-row:1!important;align-self:start!important;position:relative!important;
}
html body.patrol-mode.patrol-standalone.p46-product-shell #patrolPage#patrolPage .p7-module-head>.grow{
  grid-column:2!important;grid-row:1 / span 2!important;width:auto!important;min-width:0!important;max-width:none!important;align-self:start!important;
}
html body.patrol-mode.patrol-standalone.p46-product-shell #patrolPage#patrolPage .p7-module-head>.patrol-module-actions{
  grid-column:3!important;grid-row:1!important;width:auto!important;min-width:0!important;max-width:640px!important;margin:0!important;justify-self:end!important;align-self:start!important;
}
html body.patrol-mode.patrol-standalone.p46-product-shell #patrolPage#patrolPage .p7-module-head>.patrol-schema-badge{
  grid-column:3!important;grid-row:2!important;position:static!important;inset:auto!important;width:auto!important;min-width:0!important;max-width:100%!important;margin:0!important;justify-self:end!important;align-self:start!important;
}
@media(max-width:1180px){
 html body.patrol-mode.patrol-standalone.p46-product-shell #patrolPage#patrolPage .p7-module-head{grid-template-columns:34px minmax(0,1fr)!important}
 html body.patrol-mode.patrol-standalone.p46-product-shell #patrolPage#patrolPage .p7-module-head>.grow{grid-column:2!important;grid-row:1!important}
 html body.patrol-mode.patrol-standalone.p46-product-shell #patrolPage#patrolPage .p7-module-head>.patrol-module-actions{grid-column:1 / -1!important;grid-row:2!important;width:100%!important;max-width:none!important;justify-self:stretch!important;justify-content:flex-start!important;margin:0!important}
 html body.patrol-mode.patrol-standalone.p46-product-shell #patrolPage#patrolPage .p7-module-head>.patrol-schema-badge{grid-column:1 / -1!important;grid-row:3!important;justify-self:start!important}
}
@media(max-width:700px){
 html body.patrol-mode.patrol-standalone.p46-product-shell #patrolPage#patrolPage .p7-module-head{grid-template-columns:32px minmax(0,1fr)!important;padding:16px!important;gap:8px 10px!important}
 html body.patrol-mode.patrol-standalone.p46-product-shell #patrolPage#patrolPage .p7-module-head>.patrol-module-actions .btn{min-height:38px!important}
}

/* P46-R11 — no screenshot/scroll blanks on core workspaces; unequal panels do not stretch into fake empty cards. */
html body.patrol-mode.patrol-standalone.p46-product-shell #patrolPage#patrolPage :is(#p7ProjectWorkspace,#p7StoreWorkspace,#patrolPersonZone) :is(.p7-table-wrap,.table-wrap,.p43-responsibility-cards,.p43-responsibility-card){
  content-visibility:visible!important;contain-intrinsic-size:auto!important;contain:none!important;
}
html body.patrol-mode.patrol-standalone.p46-product-shell #patrolPage#patrolPage :is(#p7ProjectWorkspace,#p7StoreWorkspace)>.p7-analysis-split{
  align-items:start!important;
}
html body.patrol-mode.patrol-standalone.p46-product-shell #patrolPage#patrolPage :is(#p7ProjectWorkspace,#p7StoreWorkspace)>.p7-analysis-split>.patrol-panel{
  align-self:start!important;height:auto!important;min-height:0!important;content-visibility:visible!important;contain:none!important;
}
html body.patrol-mode.patrol-standalone.p46-product-shell #patrolPage#patrolPage #p7StoreWorkspace .p7-domain-kpis>article:first-child{
  background:linear-gradient(145deg,#ffffff,#eef8ff)!important;color:#173a57!important;
}
html body.patrol-mode.patrol-standalone.p46-product-shell #patrolPage#patrolPage #p7StoreWorkspace .p7-domain-kpis>article:first-child :is(span,strong,small){
  color:inherit!important;
}


/* P46-R12 — visible-type floor + explicit-scroll audit semantics. */
html body.patrol-mode.patrol-standalone.p46-product-shell #patrolPage#patrolPage .p7-pagination span,
html body.patrol-mode.patrol-standalone.p46-product-shell #patrolPage#patrolPage .hf32-map-conclusion :is(b,p),
html body.patrol-mode.patrol-standalone.p46-product-shell #patrolPage#patrolPage #patrolOutputZone .p7-output-guide span,
html body.patrol-mode.patrol-standalone.p46-product-shell #patrolPage#patrolPage #patrolOutputZone .p7-output-guide small,
html body.patrol-mode.patrol-standalone.p46-product-shell #patrolPage#patrolPage #patrolOutputZone .patrol-copy-card>span{
  font-size:13px!important;line-height:1.45!important;
}
html body.patrol-mode.patrol-standalone.p46-product-shell #patrolPage#patrolPage #patrolOutputZone .p7-output-guide b{font-size:16px!important;line-height:1.35!important}

/* P46-R13 — object-detail tables are primary work surfaces; never defer their paint. */
html body.patrol-mode.patrol-standalone.p46-product-shell #patrolPage#patrolPage :is(#p7ProjectWorkspace,#p7StoreWorkspace)>.p7-object-table-panel{
  content-visibility:visible!important;contain-intrinsic-size:auto!important;contain:none!important;
}


/* P47 — intelligent focus + zero-blank work surfaces + density/readability convergence. */
html body.patrol-mode.patrol-standalone.p47-product-shell{
  --p47-ink:#173851;--p47-text:#47657d;--p47-muted:#72879a;--p47-line:rgba(72,121,169,.105);
}
html body.patrol-mode.patrol-standalone.p47-product-shell .p7-topbar{grid-template-columns:minmax(260px,.72fr) minmax(480px,1.55fr) auto!important;gap:10px 14px!important;padding:10px 14px!important;background:rgba(250,253,255,.94)!important;border-bottom-color:rgba(70,118,164,.09)!important;box-shadow:0 8px 30px rgba(42,77,112,.035)!important;backdrop-filter:none!important}
html body.patrol-mode.patrol-standalone.p47-product-shell .p7-topbar .p7-compute-chip{display:none!important}
html body.patrol-mode.patrol-standalone.p47-product-shell .p7-topbar-title-row{gap:8px!important}
html body.patrol-mode.patrol-standalone.p47-product-shell .p7-topbar-title-row h1{font-size:20px!important;letter-spacing:-.025em!important}
html body.patrol-mode.patrol-standalone.p47-product-shell .p7-topbar-title-row span{font-size:12.5px!important;color:#73899d!important}
html body.patrol-mode.patrol-standalone.p47-product-shell .p46-context-rail{min-width:0!important;display:grid!important;grid-template-columns:minmax(0,1fr) auto!important;align-items:center!important;gap:12px!important;padding:8px 9px 8px 13px!important;border:1px solid rgba(73,124,174,.09)!important;border-radius:16px!important;background:linear-gradient(110deg,rgba(242,249,255,.92),rgba(249,252,255,.97) 58%,rgba(248,246,255,.78))!important;box-shadow:none!important}
html body.patrol-mode.patrol-standalone.p47-product-shell .p46-context-copy{display:grid!important;grid-template-columns:auto minmax(0,1fr)!important;align-items:center!important;gap:8px!important;min-width:0!important}
html body.patrol-mode.patrol-standalone.p47-product-shell .p46-context-copy>span{font-size:12.5px!important;white-space:nowrap!important;padding:4px 7px!important;border-radius:8px!important;background:#fff!important;color:#5c83a7!important;border:1px solid rgba(79,140,255,.09)!important}
html body.patrol-mode.patrol-standalone.p47-product-shell .p46-context-copy>strong{font-size:13px!important;line-height:1.45!important;color:#47647d!important;font-weight:690!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important}
html body.patrol-mode.patrol-standalone.p47-product-shell .p46-context-next{min-height:40px!important;max-width:260px!important;padding:7px 10px 7px 12px!important;border-radius:12px!important;background:#fff!important;border:1px solid rgba(76,128,180,.12)!important;box-shadow:none!important}
html body.patrol-mode.patrol-standalone.p47-product-shell .p46-context-next small{font-size:12.5px!important}
html body.patrol-mode.patrol-standalone.p47-product-shell .p46-context-next b{font-size:13px!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important}
html body.patrol-mode.patrol-standalone.p47-product-shell .p47-command-btn{background:#edf5ff!important;border-color:rgba(74,126,180,.12)!important;color:#3d6c98!important;box-shadow:none!important}

html body.patrol-mode.patrol-standalone.p47-product-shell #p43ActionRibbon{display:none!important}
html body.patrol-mode.patrol-standalone.p47-product-shell .p43-smart-brief.p47-smart-brief{display:grid!important;grid-template-columns:minmax(0,1.55fr) minmax(360px,.75fr)!important;gap:0!important;padding:0!important;border:1px solid var(--p47-line)!important;border-radius:20px!important;overflow:hidden!important;background:rgba(255,255,255,.95)!important;box-shadow:0 8px 28px rgba(37,72,108,.035)!important}
html body.patrol-mode.patrol-standalone.p47-product-shell .p47-brief-lead{padding:18px 20px!important;min-width:0!important;border-right:1px solid var(--p47-line)!important;background:linear-gradient(135deg,#fbfdff,#f7fbff)!important}
html body.patrol-mode.patrol-standalone.p47-product-shell .p47-brief-lead>span{font-size:12.5px!important;color:#6690b7!important;font-weight:850!important;letter-spacing:.06em!important}
html body.patrol-mode.patrol-standalone.p47-product-shell .p47-brief-lead>strong{font-size:14px!important;line-height:1.65!important;color:#35556f!important;font-weight:710!important;margin-top:6px!important;display:block!important}
html body.patrol-mode.patrol-standalone.p47-product-shell .p47-brief-next{padding:10px!important;display:grid!important;align-content:center!important;gap:6px!important;background:#fff!important}
html body.patrol-mode.patrol-standalone.p47-product-shell .p47-primary-action{width:100%!important;min-height:70px!important;padding:10px 12px!important;border:0!important;border-radius:13px!important;display:grid!important;grid-template-columns:minmax(0,1fr) auto!important;align-items:center!important;gap:9px!important;text-align:left!important;cursor:pointer!important;background:linear-gradient(135deg,#f5f9ff,#eef6ff)!important;color:#345b7c!important;box-shadow:none!important}
html body.patrol-mode.patrol-standalone.p47-product-shell .p47-primary-action.danger{background:linear-gradient(135deg,#fff8fa,#fff0f3)!important}.p47-primary-action.warn{background:linear-gradient(135deg,#fffdf8,#fff7e9)!important}.p47-primary-action.violet{background:linear-gradient(135deg,#fbf9ff,#f4f0ff)!important}
html body.patrol-mode.patrol-standalone.p47-product-shell .p47-primary-action span{min-width:0!important;display:grid!important;gap:2px!important}
html body.patrol-mode.patrol-standalone.p47-product-shell .p47-primary-action small{font-size:12.5px!important;color:#71889c!important;font-weight:760!important}
html body.patrol-mode.patrol-standalone.p47-product-shell .p47-primary-action b{font-size:15px!important;line-height:1.3!important;color:#284b66!important;font-weight:850!important}
html body.patrol-mode.patrol-standalone.p47-product-shell .p47-primary-action em{font-size:12.5px!important;line-height:1.4!important;color:#6b8092!important;font-style:normal!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important}
html body.patrol-mode.patrol-standalone.p47-product-shell .p47-primary-action svg{width:18px!important;height:18px!important;fill:none!important;stroke:#6d8ba5!important;stroke-width:1.8!important}
html body.patrol-mode.patrol-standalone.p47-product-shell .p47-secondary-actions{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:5px!important}
html body.patrol-mode.patrol-standalone.p47-product-shell .p47-secondary-actions button{min-height:38px!important;padding:6px 8px!important;border:1px solid rgba(77,128,177,.08)!important;border-radius:10px!important;background:#fbfdff!important;display:grid!important;grid-template-columns:7px minmax(0,1fr) auto!important;align-items:center!important;gap:6px!important;color:#58738b!important;cursor:pointer!important}
html body.patrol-mode.patrol-standalone.p47-product-shell .p47-secondary-actions i{width:6px;height:6px;border-radius:50%;background:#62a0ef}.p47-secondary-actions i.warn{background:#eda841}.p47-secondary-actions i.violet{background:#8b75e9}.p47-secondary-actions i.danger{background:#e66d80}.p47-secondary-actions i.amber{background:#d9a138}
html body.patrol-mode.patrol-standalone.p47-product-shell .p47-secondary-actions span{font-size:12.5px!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important}.p47-secondary-actions b{font-size:12.5px!important;color:#345974!important}

html body.patrol-mode.patrol-standalone.p47-product-shell .p47-focus-bar{min-height:48px;margin:0 0 12px;padding:8px 10px 8px 13px;border:1px solid rgba(79,140,255,.12);border-radius:14px;background:linear-gradient(110deg,#f3f8ff,#f8fbff 70%,#faf8ff);display:flex;align-items:center;justify-content:space-between;gap:12px;box-shadow:none}
html body.patrol-mode.patrol-standalone.p47-product-shell .p47-focus-bar>span{min-width:0;display:flex;align-items:center;gap:7px;flex-wrap:wrap}.p47-focus-bar i{width:7px;height:7px;border-radius:50%;background:#4f8cff;box-shadow:0 0 0 4px rgba(79,140,255,.10)}
html body.patrol-mode.patrol-standalone.p47-product-shell .p47-focus-bar b{font-size:12.5px;color:#6b89a5}.p47-focus-bar strong{font-size:13.5px;color:#2f5779}.p47-focus-bar em{font-size:12.5px;color:#74899a;font-style:normal}
html body.patrol-mode.patrol-standalone.p47-product-shell .p47-focus-bar button{min-height:34px;padding:5px 9px;border:1px solid rgba(77,128,177,.11);border-radius:9px;background:#fff;color:#59758d;font-size:12.5px;font-weight:760;cursor:pointer;white-space:nowrap}

html body.patrol-mode.patrol-standalone.p47-product-shell #p7StoreFilters .p47-store-status-filter{display:flex!important}
html body.patrol-mode.patrol-standalone.p47-product-shell .p46-table-shell tbody tr:nth-child(even){background:rgba(244,249,253,.66)!important}
html body.patrol-mode.patrol-standalone.p47-product-shell .p46-table-shell tbody tr:hover{background:rgba(79,140,255,.075)!important}
html body.patrol-mode.patrol-standalone.p47-product-shell .p46-table-shell :is(td,th){font-variant-numeric:tabular-nums!important}
html body.patrol-mode.patrol-standalone.p47-product-shell .p7-filterbar{gap:7px!important;padding:9px!important;border-radius:16px!important;background:rgba(248,251,254,.84)!important}
html body.patrol-mode.patrol-standalone.p47-product-shell .p7-filterbar label{min-height:39px!important;border-radius:10px!important}.p7-filterbar select,.p7-filterbar input{font-size:13px!important}

html body.patrol-mode.patrol-standalone.p47-product-shell #patrolPersonZone.p47-focus-attention .p43-responsibility-card.good{display:none!important}
html body.patrol-mode.patrol-standalone.p47-product-shell #patrolPersonZone.p47-focus-attention .p43-responsibility-cards{grid-template-columns:repeat(auto-fit,minmax(280px,1fr))!important}

html body.patrol-mode.patrol-standalone.p47-product-shell :is(#p15OutputNow,#p15OutputImages,#p15OutputArchive).p47-output-immediate,
html body.patrol-mode.patrol-standalone.p47-product-shell :is(#p15OutputNow,#p15OutputImages,#p15OutputArchive).p47-output-immediate *,
html body.patrol-mode.patrol-standalone.p47-product-shell :is(#p15OutputNow,#p15OutputImages,#p15OutputArchive).p47-output-immediate .patrol-panel{
  content-visibility:visible!important;contain:none!important;
}
html body.patrol-mode.patrol-standalone.p47-product-shell :is(#p15OutputNow,#p15OutputImages,#p15OutputArchive).p47-output-immediate .patrol-panel{height:auto!important;min-height:0!important;align-self:start!important}
html body.patrol-mode.patrol-standalone.p47-product-shell #p15OutputArchive.p47-output-immediate .patrol-writing-panel{display:block!important;visibility:visible!important;opacity:1!important;min-height:220px!important}

html body.patrol-mode.patrol-standalone.p47-product-shell #patrolCompareZone.p47-history-single :is(.patrol-compare-autoload,.patrol-compare-dashboard,.p11-history-baseline,.p25-history-flow){display:none!important}
html body.patrol-mode.patrol-standalone.p47-product-shell .p47-history-baseline{display:grid!important;grid-template-columns:minmax(0,1.2fr) minmax(380px,.8fr)!important;gap:13px!important;padding:18px!important;border:1px solid var(--p47-line)!important;border-radius:20px!important;background:linear-gradient(135deg,#fff,#f8fbff 62%,#faf8ff)!important;box-shadow:0 8px 26px rgba(38,73,110,.035)!important}
html body.patrol-mode.patrol-standalone.p47-product-shell .p47-history-copy{padding:4px 5px!important}.p47-history-copy>span{font-size:12.5px!important;font-weight:850!important;color:#6c91b2!important;letter-spacing:.06em}.p47-history-copy h3{margin:7px 0 7px!important;font-size:22px!important;line-height:1.25!important;color:#294b65!important}.p47-history-copy p{margin:0!important;font-size:13.5px!important;line-height:1.65!important;color:#60778b!important;max-width:760px!important}
html body.patrol-mode.patrol-standalone.p47-product-shell .p47-history-snapshot{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:1px!important;overflow:hidden!important;border:1px solid rgba(77,128,177,.09)!important;border-radius:15px!important;background:rgba(77,128,177,.09)!important}.p47-history-snapshot article{min-height:112px!important;padding:14px!important;background:#fff!important;display:grid!important;align-content:center!important;gap:5px!important}.p47-history-snapshot span{font-size:12.5px!important;color:#6e8497!important;font-weight:760!important}.p47-history-snapshot strong{font-size:27px!important;line-height:1!important;color:#254b69!important;font-weight:880!important}.p47-history-snapshot small{font-size:12.5px!important;color:#8395a4!important;line-height:1.35!important}
html body.patrol-mode.patrol-standalone.p47-product-shell .p47-history-next{grid-column:1/-1;padding:11px 13px;border-radius:13px;background:#f4f8fc;display:flex;gap:9px;align-items:baseline;flex-wrap:wrap}.p47-history-next b{font-size:13px;color:#456883}.p47-history-next span{font-size:12.5px;line-height:1.5;color:#708497}

html body.patrol-mode.patrol-standalone.p47-product-shell .p47-command-palette{max-height:min(760px,calc(100vh - 24px))!important}
html body.patrol-mode.patrol-standalone.p47-product-shell .p47-command-palette .p46-command-shell{max-height:min(750px,calc(100vh - 24px))!important;display:grid!important;grid-template-rows:auto auto minmax(0,1fr) auto!important}
html body.patrol-mode.patrol-standalone.p47-product-shell .p47-command-palette .p46-command-list{max-height:none!important;min-height:0!important;overflow:auto!important;padding:0 12px 12px!important;display:block!important}
html body.patrol-mode.patrol-standalone.p47-product-shell .p47-command-group{display:grid!important;gap:4px!important;margin-bottom:10px!important}.p47-command-group>span{padding:6px 9px 3px;font-size:12.5px;font-weight:850;color:#7590a7;letter-spacing:.05em}.p47-command-group>button{width:100%;margin-bottom:3px}.p47-command-icon{font-style:normal!important;font-size:12px!important;font-weight:900!important;background:#edf5ff!important;color:#4d81b1!important}.p47-command-icon.danger{background:#fff0f3!important;color:#c45d70!important}.p47-command-icon.warn{background:#fff7e8!important;color:#b9822e!important}.p47-command-icon.violet{background:#f3efff!important;color:#725fc6!important}

@media(max-width:1360px){html body.patrol-mode.patrol-standalone.p47-product-shell .p7-topbar{grid-template-columns:minmax(220px,.65fr) minmax(360px,1.2fr) auto!important}.p46-context-copy>strong{white-space:normal!important;display:-webkit-box!important;-webkit-box-orient:vertical!important;-webkit-line-clamp:2!important}.p47-smart-brief{grid-template-columns:1fr minmax(330px,.68fr)!important}}
@media(max-width:1050px){html body.patrol-mode.patrol-standalone.p47-product-shell .p7-topbar{grid-template-columns:minmax(0,1fr) auto!important}.p46-context-rail{grid-column:1/-1!important;grid-row:2!important}.p7-topbar-actions{grid-column:2!important;grid-row:1!important}.p43-smart-brief.p47-smart-brief{grid-template-columns:1fr!important}.p47-brief-lead{border-right:0!important;border-bottom:1px solid var(--p47-line)!important}.p47-history-baseline{grid-template-columns:1fr!important}}
@media(max-width:760px){html body.patrol-mode.patrol-standalone.p47-product-shell .p46-context-copy{grid-template-columns:1fr!important}.p46-context-copy>strong{white-space:normal!important}.p46-context-next{max-width:none!important;width:100%!important}.p46-context-rail{grid-template-columns:1fr!important}.p47-secondary-actions{grid-template-columns:1fr!important}.p47-focus-bar{align-items:flex-start!important;flex-direction:column!important}.p47-focus-bar button{align-self:flex-start!important}.p47-history-snapshot{grid-template-columns:1fr!important}.p47-command-palette .p46-command-shell>header h2{font-size:19px!important}}
@media(prefers-reduced-motion:reduce){html body.patrol-mode.patrol-standalone.p47-product-shell *{animation:none!important;transition:none!important;scroll-behavior:auto!important}}


/* P48 — unified product architecture / semantic icon system / decisive workbench. */
html body.patrol-mode.patrol-standalone.p48-product-shell{
  --p48-ink:#172A43;--p48-text:#304A64;--p48-muted:#71869A;--p48-line:rgba(74,121,168,.12);
  --p48-blue:#3D82D3;--p48-cyan:#28AFC7;--p48-violet:#7367D8;--p48-coral:#D96678;--p48-amber:#D99A3D;--p48-green:#3A9A76;
}
html body.patrol-mode.patrol-standalone.p48-product-shell .p48-icon{display:block;width:20px;height:20px;flex:0 0 auto;overflow:visible}

/* Sidebar: one clear workflow, one icon language, no redundant chevrons. */
html body.patrol-mode.patrol-standalone.p48-product-shell .p7-sidebar{padding:0 13px 14px!important;width:190px!important;border-radius:27px!important;background:linear-gradient(180deg,rgba(255,255,255,.95),rgba(249,252,255,.92))!important;border:1px solid rgba(92,139,184,.11)!important;box-shadow:0 16px 44px rgba(50,84,124,.09)!important}
html body.patrol-mode.patrol-standalone.p48-product-shell .p7-side-brand{margin:0 -13px 10px!important;padding:15px 15px 13px!important;min-height:86px!important;border-bottom:1px solid rgba(82,126,169,.09)!important;border-radius:27px 27px 20px 20px!important}
html body.patrol-mode.patrol-standalone.p48-product-shell .p7-side-nav{display:block!important;padding:0!important;overflow:visible!important}
html body.patrol-mode.patrol-standalone.p48-product-shell .p48-nav-group{display:grid!important;gap:3px!important;margin:0 0 7px!important}
html body.patrol-mode.patrol-standalone.p48-product-shell .p48-nav-group-label{font-size:12.5px!important;line-height:1.2!important;font-weight:780!important;letter-spacing:.04em!important;color:#8A9AAC!important;padding:6px 11px 4px!important}
html body.patrol-mode.patrol-standalone.p48-product-shell .p7-side-nav .p48-nav-item,html body.patrol-mode.patrol-standalone.p48-product-shell .p7-side-input.p48-nav-item{display:grid!important;grid-template-columns:28px minmax(0,1fr) auto!important;align-items:center!important;gap:7px!important;min-height:44px!important;padding:7px 10px!important;margin:0!important;border-radius:13px!important;color:#526A82!important;border:1px solid transparent!important;background:transparent!important;box-shadow:none!important;overflow:hidden!important}
html body.patrol-mode.patrol-standalone.p48-product-shell .p7-side-nav .p48-nav-item:hover,html body.patrol-mode.patrol-standalone.p48-product-shell .p7-side-input.p48-nav-item:hover{background:#F5F9FD!important;color:#315D89!important}
html body.patrol-mode.patrol-standalone.p48-product-shell .p7-side-nav .p48-nav-item.active,html body.patrol-mode.patrol-standalone.p48-product-shell .p7-side-input.p48-nav-item.active{background:linear-gradient(135deg,#EEF5FF,#F4F1FF)!important;color:#3D6FAE!important;border-color:rgba(80,127,190,.14)!important;box-shadow:inset 3px 0 0 #5A8FE1!important}
html body.patrol-mode.patrol-standalone.p48-product-shell .p7-nav-icon{width:28px!important;height:28px!important;border-radius:9px!important;display:grid!important;place-items:center!important;background:#F2F7FC!important;color:#6E8AA5!important;border:1px solid rgba(92,140,185,.08)!important}
html body.patrol-mode.patrol-standalone.p48-product-shell .active>.p7-nav-icon{background:#E7F0FF!important;color:#477DC5!important;border-color:rgba(78,127,190,.12)!important}
html body.patrol-mode.patrol-standalone.p48-product-shell .p7-nav-icon .p48-icon{width:17px;height:17px}
html body.patrol-mode.patrol-standalone.p48-product-shell .p7-nav-label{font-size:14px!important;font-weight:720!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important;min-width:0!important}
html body.patrol-mode.patrol-standalone.p48-product-shell .p43-nav-badge{position:static!important;justify-self:end!important;min-width:28px!important;max-width:46px!important;height:23px!important;padding:0 6px!important;border-radius:999px!important;font-size:12.5px!important;line-height:23px!important;text-align:center!important;overflow:visible!important;white-space:nowrap!important;transform:none!important;margin:0!important}
html body.patrol-mode.patrol-standalone.p48-product-shell .p7-nav-arrow{display:none!important}
html body.patrol-mode.patrol-standalone.p48-product-shell .p7-side-separator{margin:8px 1px!important}
html body.patrol-mode.patrol-standalone.p48-product-shell .p7-side-input{margin:0!important}
html body.patrol-mode.patrol-standalone.p48-product-shell .p7-side-foot{margin-top:auto!important;padding:10px 5px 0!important}

/* Topbar: remove duplicate module title/output entry; preserve one judgement rail and global controls. */
html body.patrol-mode.patrol-standalone.p48-product-shell .p7-topbar.p48-topbar{display:grid!important;grid-template-columns:minmax(0,1fr) auto!important;align-items:center!important;gap:12px!important;min-height:72px!important;height:auto!important;padding:9px 12px!important;border-radius:24px!important;background:rgba(251,253,255,.94)!important;box-shadow:0 12px 34px rgba(48,82,123,.075)!important;border:1px solid rgba(85,130,178,.10)!important}
html body.patrol-mode.patrol-standalone.p48-product-shell .p7-topbar-context{display:none!important}
html body.patrol-mode.patrol-standalone.p48-product-shell #p46ContextRail{width:auto!important;min-width:0!important;max-width:none!important;min-height:52px!important;padding:7px 8px 7px 12px!important;border-radius:16px!important;display:grid!important;grid-template-columns:auto minmax(0,1fr) auto!important;align-items:center!important;gap:9px!important;background:linear-gradient(135deg,#F6FAFF,#FBFCFF)!important;border:1px solid rgba(85,131,179,.10)!important;box-shadow:none!important}
html body.patrol-mode.patrol-standalone.p48-product-shell #p46ContextRail .p46-context-tag{font-size:12.5px!important;white-space:nowrap!important;background:#EAF3FF!important;color:#4E78A5!important;border:0!important;padding:6px 8px!important;border-radius:10px!important}
html body.patrol-mode.patrol-standalone.p48-product-shell #p46ContextRail .p46-context-copy{min-width:0!important;display:block!important}
html body.patrol-mode.patrol-standalone.p48-product-shell #p46ContextRail .p46-context-copy strong{font-size:13px!important;line-height:1.45!important;color:#3E5871!important;display:block!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important}
html body.patrol-mode.patrol-standalone.p48-product-shell #p46ContextRail .p46-context-copy small{display:none!important}
html body.patrol-mode.patrol-standalone.p48-product-shell .p48-context-next{min-width:126px!important;max-width:190px!important;min-height:38px!important;padding:6px 9px 6px 11px!important;border-radius:12px!important;background:#fff!important;border:1px solid rgba(85,131,179,.12)!important;box-shadow:none!important;display:grid!important;grid-template-columns:minmax(0,1fr) 16px!important;grid-template-rows:auto auto!important;gap:1px 5px!important}
html body.patrol-mode.patrol-standalone.p48-product-shell .p48-context-next small{font-size:12.5px!important;line-height:1!important;color:#8798A9!important;grid-column:1!important}.p48-context-next b{font-size:13px!important;line-height:1.2!important;color:#2E5276!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important;grid-column:1!important}.p48-context-next .p48-icon{grid-column:2!important;grid-row:1/3!important;width:15px!important;height:15px!important;align-self:center!important;color:#718AA1!important}
html body.patrol-mode.patrol-standalone.p48-product-shell .p7-topbar-actions{display:flex!important;align-items:center!important;gap:7px!important;min-width:0!important;flex-wrap:nowrap!important}
html body.patrol-mode.patrol-standalone.p48-product-shell .p48-command-btn,html body.patrol-mode.patrol-standalone.p48-product-shell .p48-top-import{min-height:40px!important;height:40px!important;border-radius:12px!important;padding:0 11px!important;display:inline-flex!important;align-items:center!important;gap:7px!important;white-space:nowrap!important;background:#fff!important;color:#42627F!important;border:1px solid rgba(82,128,174,.12)!important;box-shadow:none!important}
html body.patrol-mode.patrol-standalone.p48-product-shell .p48-command-btn .p48-icon,html body.patrol-mode.patrol-standalone.p48-product-shell .p48-top-import .p48-icon{width:17px;height:17px;color:#5481AD}
html body.patrol-mode.patrol-standalone.p48-product-shell .p48-command-btn kbd{font-size:12.5px!important;padding:2px 6px!important;border-radius:7px!important;background:#F1F5F9!important;color:#70869A!important;border:1px solid #E1E8EF!important}
html body.patrol-mode.patrol-standalone.p48-product-shell .p7-period-chip{height:40px!important;min-height:40px!important;padding:5px 10px!important;border-radius:12px!important;background:#F7FAFD!important;border:1px solid rgba(82,128,174,.10)!important;box-shadow:none!important;min-width:112px!important}
html body.patrol-mode.patrol-standalone.p48-product-shell .p7-period-chip span{font-size:12.5px!important}.p7-period-chip strong{font-size:12.5px!important}
html body.patrol-mode.patrol-standalone.p48-product-shell .p48-truth-chip{height:40px!important;display:flex!important;align-items:center!important;gap:5px!important;padding:0 9px!important;border-radius:12px!important;background:#F3FAF7!important;color:#3F735F!important;border:1px solid rgba(62,151,112,.13)!important;white-space:nowrap!important}.p48-truth-chip.missing{background:#FFF9EF!important;color:#8A682F!important;border-color:rgba(210,151,55,.17)!important}.p48-truth-chip .p48-icon{width:16px;height:16px}.p48-truth-chip span{font-size:12.5px!important;color:inherit!important;opacity:.78}.p48-truth-chip b{font-size:12.5px!important;color:inherit!important}
html body.patrol-mode.patrol-standalone.p48-product-shell #p7TopOutputBtn{display:none!important}

/* Module shell: title lives only in hero; reduce vertical chrome and strengthen geometry. */
html body.patrol-mode.patrol-standalone.p48-product-shell #patrolPage{padding-top:92px!important}
html body.patrol-mode.patrol-standalone.p48-product-shell #patrolPage .p7-module-head{min-height:132px!important;padding:22px 26px!important;border-radius:24px!important;align-content:center!important;gap:10px 18px!important;box-shadow:0 10px 30px rgba(47,80,120,.045)!important}
html body.patrol-mode.patrol-standalone.p48-product-shell #patrolPage .p7-module-head h2{font-size:38px!important;line-height:1.05!important;letter-spacing:-.035em!important;color:#192942!important}
html body.patrol-mode.patrol-standalone.p48-product-shell #patrolPage .p7-module-head p{font-size:14.5px!important;line-height:1.55!important;max-width:760px!important;color:#61768A!important}
html body.patrol-mode.patrol-standalone.p48-product-shell #patrolPage .p7-module-head .btn{min-height:40px!important;border-radius:12px!important;padding:0 14px!important}
html body.patrol-mode.patrol-standalone.p48-product-shell #p15CompletenessBar.p48-overview-data-state{margin:10px 0 0!important;min-height:44px!important;padding:6px 9px!important;border-radius:15px!important;background:rgba(249,252,255,.88)!important;border:1px solid rgba(82,128,174,.09)!important;box-shadow:none!important}
html body.patrol-mode.patrol-standalone.p48-product-shell #p15CompletenessBar.p48-overview-data-state .p15-completeness-item{min-height:30px!important;padding:5px 9px!important;border:0!important;background:transparent!important;box-shadow:none!important}.p48-overview-data-state>small{font-size:12.5px!important;line-height:1.35!important;max-width:470px!important}

/* Smart brief becomes a compact task center rather than another dashboard row. */
html body.patrol-mode.patrol-standalone.p48-product-shell .p43-smart-brief.p48-smart-brief{display:grid!important;grid-template-columns:minmax(300px,.9fr) minmax(520px,1.45fr)!important;gap:0!important;padding:0!important;min-height:116px!important;border-radius:19px!important;background:#fff!important;border:1px solid rgba(79,126,174,.10)!important;box-shadow:0 7px 24px rgba(43,77,118,.04)!important;overflow:hidden!important}
html body.patrol-mode.patrol-standalone.p48-product-shell .p48-brief-summary{display:grid!important;grid-template-columns:38px minmax(0,1fr)!important;gap:11px!important;align-items:center!important;padding:18px 20px!important;background:linear-gradient(145deg,#FAFDFF,#F4F9FF)!important;border-right:1px solid rgba(82,128,174,.09)!important}.p48-brief-icon{width:38px;height:38px;border-radius:12px;display:grid;place-items:center;background:#EAF4FF;color:#4B7FBA}.p48-brief-icon .p48-icon{width:20px;height:20px}.p48-brief-summary div{min-width:0}.p48-brief-summary small{display:block;font-size:12.5px!important;font-weight:820!important;color:#6F8AA4!important;margin-bottom:5px!important}.p48-brief-summary strong{display:block;font-size:14.5px!important;line-height:1.55!important;color:#2A4C6A!important;font-weight:800!important}.p48-brief-summary em{display:block;font-size:12.5px!important;line-height:1.4!important;color:#8294A5!important;font-style:normal!important;margin-top:6px!important}
html body.patrol-mode.patrol-standalone.p48-product-shell .p48-task-center{padding:13px 14px!important;display:grid!important;gap:7px!important;align-content:center!important}.p48-task-center-title{font-size:12.5px!important;font-weight:830!important;color:#7B8FA3!important;padding:0 3px!important}.p48-task-list{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:7px!important}.p48-task{min-width:0!important;min-height:72px!important;border:1px solid rgba(82,128,174,.10)!important;border-radius:14px!important;padding:9px 9px!important;background:#FBFDFF!important;display:grid!important;grid-template-columns:28px minmax(0,1fr) auto 14px!important;gap:7px!important;align-items:center!important;text-align:left!important;color:#45647F!important;box-shadow:none!important;transition:transform .13s ease,background .13s ease,border-color .13s ease!important}.p48-task:hover{transform:translateY(-1px)!important;background:#F6FAFE!important;border-color:rgba(74,126,181,.18)!important}.p48-task.primary{background:linear-gradient(135deg,#FFF8FA,#FFFDFD)!important;border-color:rgba(210,91,113,.14)!important}.p48-task-icon{width:28px;height:28px;border-radius:9px;display:grid;place-items:center;background:#EEF5FF;color:#5A83AF}.p48-task.danger .p48-task-icon{background:#FFF0F3;color:#C05A70}.p48-task.warn .p48-task-icon{background:#FFF7E8;color:#B27D2D}.p48-task.violet .p48-task-icon{background:#F3EFFF;color:#7060C5}.p48-task.good .p48-task-icon{background:#EDF9F3;color:#3D916E}.p48-task-icon .p48-icon{width:16px;height:16px}.p48-task-copy{min-width:0;display:grid!important;gap:1px!important}.p48-task-copy small{font-size:12.5px!important;color:#8A9BAA!important}.p48-task-copy b{font-size:13px!important;color:#34536E!important;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.p48-task-copy em{font-size:12.5px!important;color:#8193A4!important;font-style:normal;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.p48-task>strong{font-size:13px!important;color:#365A78!important;white-space:nowrap}.p48-task-arrow .p48-icon{width:13px;height:13px;color:#8DA0B2}
html body.patrol-mode.patrol-standalone.p48-product-shell #p43ActionRibbon,html body.patrol-mode.patrol-standalone.p48-product-shell #patrolDashboard .hf31-action-section-title,html body.patrol-mode.patrol-standalone.p48-product-shell #patrolActionHighlights{display:none!important}

/* Semantic KPI icons: no generic line-chart glyph repeated on every statistic. */
html body.patrol-mode.patrol-standalone.p48-product-shell :is(#p7ProjectWorkspace .p7-domain-kpis,#p7StoreWorkspace .p7-domain-kpis,#patrolPersonZone .p7-responsibility-kpis)>article{position:relative!important;min-height:124px!important;padding:17px 52px 16px 19px!important}
html body.patrol-mode.patrol-standalone.p48-product-shell .p48-kpi-icon{position:absolute!important;right:13px!important;top:13px!important;width:32px!important;height:32px!important;border-radius:10px!important;display:grid!important;place-items:center!important;background:rgba(237,246,255,.88)!important;color:#5D82A7!important;border:1px solid rgba(82,128,174,.10)!important;font-style:normal!important}.p48-kpi-icon .p48-icon{width:17px;height:17px}
html body.patrol-mode.patrol-standalone.p48-product-shell :is(#p7ProjectWorkspace .p7-domain-kpis,#p7StoreWorkspace .p7-domain-kpis,#patrolPersonZone .p7-responsibility-kpis)>article strong{font-size:32px!important;margin-top:10px!important}
html body.patrol-mode.patrol-standalone.p48-product-shell :is(#p7ProjectWorkspace .p7-domain-kpis,#p7StoreWorkspace .p7-domain-kpis,#patrolPersonZone .p7-responsibility-kpis)>article>small{margin-top:7px!important}

/* Focus state: explicit, compact, and icon-led. */
html body.patrol-mode.patrol-standalone.p48-product-shell .p48-focus-bar{min-height:48px!important;padding:7px 10px!important;border-radius:14px!important;background:linear-gradient(135deg,#F5FAFF,#FBFDFF)!important;border:1px solid rgba(74,126,181,.12)!important;box-shadow:none!important}.p48-focus-bar>span{display:flex!important;align-items:center!important;gap:7px!important;min-width:0!important}.p48-focus-icon{width:27px;height:27px;border-radius:9px;display:grid;place-items:center;background:#EAF4FF;color:#4C7FB5}.p48-focus-icon .p48-icon{width:15px;height:15px}.p48-focus-bar b,.p48-focus-bar strong{font-size:13px!important}.p48-focus-bar em{font-size:12.5px!important;color:#7C90A4!important;font-style:normal!important}.p48-focus-bar [data-p47-clear-focus]{min-height:34px!important;padding:0 10px!important;border-radius:10px!important;display:inline-flex!important;align-items:center!important;gap:5px!important}.p48-focus-bar [data-p47-clear-focus] .p48-icon{width:14px;height:14px}

/* Command palette: proper vector iconography and clearer hierarchy. */
html body.patrol-mode.patrol-standalone.p48-product-shell .p48-command-palette{border-radius:22px!important;border:1px solid rgba(77,124,171,.14)!important;background:#FBFDFF!important;box-shadow:0 30px 80px rgba(30,61,96,.20)!important}
html body.patrol-mode.patrol-standalone.p48-product-shell .p48-command-group>span{font-size:12.5px!important;padding:7px 10px 4px!important;color:#8093A6!important}.p48-command-group>button{grid-template-columns:34px minmax(0,1fr) auto!important;min-height:58px!important;border-radius:13px!important;padding:8px 10px!important}.p48-command-icon{width:34px!important;height:34px!important;border-radius:10px!important;display:grid!important;place-items:center!important;background:#EDF5FF!important;color:#4D7FB2!important;font-style:normal!important}.p48-command-icon .p48-icon{width:18px;height:18px}.p48-command-icon.danger{background:#FFF0F3!important;color:#C05B71!important}.p48-command-icon.warn{background:#FFF7E8!important;color:#B27D2D!important}.p48-command-icon.violet{background:#F3EFFF!important;color:#7060C5!important}.p48-command-icon.cyan{background:#ECFAFC!important;color:#318AA0!important}.p48-command-icon.module{background:#F1F5FA!important;color:#607D99!important}.p48-command-group>button span b{font-size:13.5px!important}.p48-command-group>button span small{font-size:12.5px!important}.p48-command-group>button kbd{font-size:12.5px!important}
html body.patrol-mode.patrol-standalone.p48-product-shell .p46-command-search .p48-icon{width:18px;height:18px;color:#7890A5}

/* Tables/panels: scan-first, restrained edges. */
html body.patrol-mode.patrol-standalone.p48-product-shell #patrolPage :is(.p7-object-table-panel,.patrol-panel,.p7-analysis-split>*){border-color:rgba(78,124,170,.09)!important;box-shadow:0 8px 26px rgba(43,77,118,.035)!important}
html body.patrol-mode.patrol-standalone.p48-product-shell #patrolPage table tbody tr:nth-child(even){background:rgba(246,250,254,.62)!important}html body.patrol-mode.patrol-standalone.p48-product-shell #patrolPage table tbody tr:hover{background:#F0F7FF!important}html body.patrol-mode.patrol-standalone.p48-product-shell #patrolPage table th{font-size:12.5px!important;letter-spacing:.01em!important}html body.patrol-mode.patrol-standalone.p48-product-shell #patrolPage table td{font-size:13px!important;line-height:1.45!important;font-variant-numeric:tabular-nums!important}
html body.patrol-mode.patrol-standalone.p48-product-shell .p48-attention-btn{display:inline-flex!important;align-items:center!important;gap:6px!important}.p48-attention-btn .p48-icon{width:16px;height:16px}

/* Responsive: wrappers disappear into compact mobile nav; geometry reflows instead of shrinking text. */
@media (max-width:1320px){
 html body.patrol-mode.patrol-standalone.p48-product-shell .p48-truth-chip span{display:none!important}
 html body.patrol-mode.patrol-standalone.p48-product-shell .p48-command-btn span{display:none!important}
 html body.patrol-mode.patrol-standalone.p48-product-shell .p48-task-copy em{display:none!important}
 html body.patrol-mode.patrol-standalone.p48-product-shell .p43-smart-brief.p48-smart-brief{grid-template-columns:minmax(260px,.75fr) minmax(460px,1.35fr)!important}
}
@media (max-width:1100px){
 html body.patrol-mode.patrol-standalone.p48-product-shell .p7-topbar.p48-topbar{grid-template-columns:minmax(0,1fr) auto!important;gap:8px!important}
 html body.patrol-mode.patrol-standalone.p48-product-shell #p46ContextRail .p46-context-copy strong{max-width:420px!important}
 html body.patrol-mode.patrol-standalone.p48-product-shell .p48-truth-chip{display:none!important}
 html body.patrol-mode.patrol-standalone.p48-product-shell .p43-smart-brief.p48-smart-brief{grid-template-columns:1fr!important}.p48-brief-summary{border-right:0!important;border-bottom:1px solid rgba(82,128,174,.09)!important}.p48-task-list{grid-template-columns:repeat(3,minmax(0,1fr))!important}
}
@media (max-width:900px){
 html body.patrol-mode.patrol-standalone.p48-product-shell .p48-nav-group{display:contents!important}.p48-nav-group-label{display:none!important}
 html body.patrol-mode.patrol-standalone.p48-product-shell .p7-sidebar{padding:8px!important;width:auto!important}
 html body.patrol-mode.patrol-standalone.p48-product-shell .p7-side-nav .p48-nav-item,html body.patrol-mode.patrol-standalone.p48-product-shell .p7-side-input.p48-nav-item{min-height:42px!important}
 html body.patrol-mode.patrol-standalone.p48-product-shell .p7-topbar.p48-topbar{grid-template-columns:minmax(0,1fr) auto!important;padding:8px!important;min-height:66px!important}
 html body.patrol-mode.patrol-standalone.p48-product-shell #p46ContextRail{min-height:48px!important;grid-template-columns:auto minmax(0,1fr)!important}.p48-context-next{display:none!important}
 html body.patrol-mode.patrol-standalone.p48-product-shell .p7-period-chip{display:none!important}
 html body.patrol-mode.patrol-standalone.p48-product-shell #patrolPage{padding-top:82px!important}
 html body.patrol-mode.patrol-standalone.p48-product-shell #patrolPage .p7-module-head{min-height:118px!important;padding:18px 20px!important}.p7-module-head h2{font-size:34px!important}
 html body.patrol-mode.patrol-standalone.p48-product-shell .p48-task-list{grid-template-columns:1fr!important}.p48-task{min-height:60px!important;grid-template-columns:28px minmax(0,1fr) auto 14px!important}.p48-task-copy em{display:block!important}
}
@media (max-width:640px){
 html body.patrol-mode.patrol-standalone.p48-product-shell .p7-topbar.p48-topbar{grid-template-columns:minmax(0,1fr) 42px!important}.p48-top-import{width:40px!important;padding:0!important;justify-content:center!important}.p48-top-import span{display:none!important}.p48-command-btn{width:40px!important;padding:0!important;justify-content:center!important}.p48-command-btn kbd,.p48-command-btn span{display:none!important}
 html body.patrol-mode.patrol-standalone.p48-product-shell #p46ContextRail{grid-template-columns:auto minmax(0,1fr)!important;padding:6px 8px!important}.p46-context-tag{display:none!important}.p46-context-copy strong{font-size:12.5px!important;max-width:none!important}
 html body.patrol-mode.patrol-standalone.p48-product-shell #patrolPage .p7-module-head{min-height:108px!important;padding:16px 16px!important;border-radius:19px!important}.p7-module-head h2{font-size:30px!important}.p7-module-head p{font-size:13.5px!important}
 html body.patrol-mode.patrol-standalone.p48-product-shell .p48-brief-summary{padding:14px!important;grid-template-columns:32px minmax(0,1fr)!important}.p48-brief-icon{width:32px;height:32px}.p48-brief-summary em{display:none!important}.p48-task-center{padding:11px!important}.p48-task-copy em{display:none!important}
 html body.patrol-mode.patrol-standalone.p48-product-shell #p15CompletenessBar.p48-overview-data-state>small{display:none!important}
}
@media (prefers-reduced-motion:reduce){html body.patrol-mode.patrol-standalone.p48-product-shell .p48-task{transition:none!important}}


/* P48 specificity closure — legacy P18/P27 selectors must never repaint P48 controls. */
html body.patrol-mode.patrol-standalone.p46-product-shell.p47-product-shell.p48-product-shell .p7-topbar.p48-topbar .p7-topbar-context{display:none!important}
html body.patrol-mode.patrol-standalone.p46-product-shell.p47-product-shell.p48-product-shell #patrolPage .p43-smart-brief.p48-smart-brief .p48-task{background:#FBFDFF!important;border:1px solid rgba(82,128,174,.10)!important;color:#45647F!important;box-shadow:none!important}
html body.patrol-mode.patrol-standalone.p46-product-shell.p47-product-shell.p48-product-shell #patrolPage .p43-smart-brief.p48-smart-brief .p48-task.primary{background:linear-gradient(135deg,#FFF9FB,#FFFDFD)!important;border-color:rgba(210,91,113,.15)!important;color:#34536E!important}
html body.patrol-mode.patrol-standalone.p46-product-shell.p47-product-shell.p48-product-shell #patrolPage .p43-smart-brief.p48-smart-brief .p48-task.primary:hover{background:linear-gradient(135deg,#FFF5F8,#FFFBFC)!important;border-color:rgba(210,91,113,.22)!important}
html body.patrol-mode.patrol-standalone.p46-product-shell.p47-product-shell.p48-product-shell #patrolPage .p43-smart-brief.p48-smart-brief .p48-task :is(small,b,em,strong){-webkit-text-fill-color:currentColor!important}
html body.patrol-mode.patrol-standalone.p46-product-shell.p47-product-shell.p48-product-shell #patrolPage .p43-smart-brief.p48-smart-brief .p48-task-copy small{color:#8A9BAA!important}
html body.patrol-mode.patrol-standalone.p46-product-shell.p47-product-shell.p48-product-shell #patrolPage .p43-smart-brief.p48-smart-brief .p48-task-copy b{color:#34536E!important}
html body.patrol-mode.patrol-standalone.p46-product-shell.p47-product-shell.p48-product-shell #patrolPage .p43-smart-brief.p48-smart-brief .p48-task-copy em{color:#8193A4!important}
html body.patrol-mode.patrol-standalone.p46-product-shell.p47-product-shell.p48-product-shell #patrolPage .p43-smart-brief.p48-smart-brief .p48-task>strong{color:#365A78!important}
html body.patrol-mode.patrol-standalone.p46-product-shell.p47-product-shell.p48-product-shell #patrolDashboard .p48-kpi-card{position:relative!important;padding-right:54px!important}
html body.patrol-mode.patrol-standalone.p46-product-shell.p47-product-shell.p48-product-shell #patrolDashboard .p48-kpi-card>.p48-kpi-icon{position:absolute!important;right:13px!important;top:13px!important;width:32px!important;height:32px!important;border-radius:10px!important;display:grid!important;place-items:center!important;background:rgba(237,246,255,.92)!important;color:#5D82A7!important;border:1px solid rgba(82,128,174,.10)!important}
html body.patrol-mode.patrol-standalone.p46-product-shell.p47-product-shell.p48-product-shell #patrolDashboard .p48-kpi-card>.p48-kpi-icon .p48-icon{width:17px!important;height:17px!important}

html body.patrol-mode.patrol-standalone.p46-product-shell.p47-product-shell.p48-product-shell #p46ContextRail .p48-context-next{display:none!important}
html body.patrol-mode.patrol-standalone.p46-product-shell.p47-product-shell.p48-product-shell #p46ContextRail{grid-template-columns:auto minmax(0,1fr)!important}
html body.patrol-mode.patrol-standalone.p46-product-shell.p47-product-shell.p48-product-shell #p46ContextRail .p46-context-copy strong{white-space:nowrap!important;text-overflow:ellipsis!important;overflow:hidden!important}


/* P48 adaptive task density, semantic module actions, and truthful history planning. */
html body.patrol-mode.patrol-standalone.p48-product-shell .p48-smart-brief[data-p48-tasks="1"] .p48-task-list{grid-template-columns:1fr!important}
html body.patrol-mode.patrol-standalone.p48-product-shell .p48-smart-brief[data-p48-tasks="2"] .p48-task-list{grid-template-columns:repeat(2,minmax(0,1fr))!important}
html body.patrol-mode.patrol-standalone.p48-product-shell .p48-module-action{display:inline-flex!important;align-items:center!important;gap:7px!important}
html body.patrol-mode.patrol-standalone.p48-product-shell .p48-module-action .p48-icon{width:16px!important;height:16px!important;flex:0 0 auto!important}
html body.patrol-mode.patrol-standalone.p48-product-shell #p47HistoryBaseline.p47-history-baseline{display:grid!important;gap:16px!important;padding:22px!important;border-radius:22px!important;background:linear-gradient(145deg,#FBFDFF,#F7FAFF)!important;border:1px solid rgba(77,124,171,.10)!important;box-shadow:0 10px 30px rgba(43,77,118,.04)!important}
html body.patrol-mode.patrol-standalone.p48-product-shell .p48-history-plan{display:grid!important;gap:12px!important;padding-top:14px!important;border-top:1px solid rgba(82,128,174,.10)!important}
html body.patrol-mode.patrol-standalone.p48-product-shell .p48-history-plan-head{display:flex!important;align-items:center!important;gap:10px!important}.p48-history-plan-head>.p48-icon{width:32px!important;height:32px!important;padding:7px!important;box-sizing:border-box!important;border-radius:10px!important;background:#EAF4FF!important;color:#4C7FB5!important}.p48-history-plan-head div{display:grid!important;gap:2px!important}.p48-history-plan-head small{font-size:12.5px!important;color:#7F93A6!important}.p48-history-plan-head strong{font-size:15px!important;color:#294C6B!important}
html body.patrol-mode.patrol-standalone.p48-product-shell .p48-history-plan-grid{display:grid!important;grid-template-columns:repeat(4,minmax(0,1fr))!important;gap:9px!important}.p48-history-plan-grid article{min-height:100px!important;padding:13px!important;border-radius:14px!important;background:#fff!important;border:1px solid rgba(82,128,174,.09)!important;display:grid!important;grid-template-columns:24px minmax(0,1fr)!important;grid-template-rows:auto auto!important;column-gap:8px!important;align-content:center!important}.p48-history-plan-grid article>.p48-icon{width:20px!important;height:20px!important;color:#6687A8!important;grid-row:1/3!important}.p48-history-plan-grid b{font-size:13.5px!important;color:#355570!important}.p48-history-plan-grid span{font-size:12.5px!important;line-height:1.45!important;color:#7B8FA2!important}
@media (max-width:1100px){html body.patrol-mode.patrol-standalone.p48-product-shell .p48-history-plan-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}}
@media (max-width:640px){html body.patrol-mode.patrol-standalone.p48-product-shell .p48-history-plan-grid{grid-template-columns:1fr!important}}


/* P49 — real GIS click / callout visibility hardening. */
html body.patrol-mode.patrol-standalone.p49-product-shell #patrolAnalysisZone canvas[data-p49-stable-map="1"]{
  touch-action:manipulation!important;cursor:default;outline:none!important;scroll-margin:0!important;
}
html body.patrol-mode.patrol-standalone.p49-product-shell #patrolAnalysisZone canvas[data-p49-stable-map="1"]:focus-visible{
  outline:3px solid rgba(56,132,214,.28)!important;outline-offset:3px!important;
}
html body.patrol-mode.patrol-standalone.p49-product-shell .p36-atomic-detail-layer:not([hidden]){
  display:block!important;visibility:visible!important;pointer-events:none!important;
}
html body.patrol-mode.patrol-standalone.p49-product-shell .p36-atomic-detail-layer:not([hidden]) .p35-map-detail-card:not([hidden]){
  display:flex!important;visibility:visible!important;opacity:1!important;pointer-events:auto!important;
}
html body.patrol-mode.patrol-standalone.p49-product-shell .p36-atomic-detail-layer:not([hidden]) .p35-detail-leader:not([hidden]){
  display:block!important;visibility:visible!important;opacity:1!important;pointer-events:none!important;
}

/* P49 final callout geometry: compact enough to keep all sequence markers physically reachable. */
html body.patrol-mode.patrol-standalone.p49-product-shell #patrolAnalysisZone .p36-atomic-detail-layer .p35-map-detail-card{
  max-width:300px!important;max-height:340px!important;
}
html body.patrol-mode.patrol-standalone.p49-product-shell #patrolAnalysisZone .p36-atomic-detail-layer .p35-detail-scroll{
  max-height:none!important;overflow:auto!important;overscroll-behavior:contain!important;
}


/* P49 responsive detail dock: when the map column is narrow, the full object
   dialog moves directly below the canvas instead of covering sequence markers.
   The click stays at the same document position; only content below the map grows. */
html body.patrol-mode.patrol-standalone.p49-product-shell #patrolAnalysisZone .patrol-map-visual-column.p49-detail-dock-host{align-self:start!important}
html body.patrol-mode.patrol-standalone.p49-product-shell #patrolAnalysisZone .p36-atomic-detail-layer.p49-detail-dock:not([hidden]){
  position:relative!important;inset:auto!important;width:auto!important;height:auto!important;min-height:0!important;margin:12px 0 0!important;padding:0!important;overflow:visible!important;display:block!important;visibility:visible!important;pointer-events:none!important;contain:layout paint style!important;
}
html body.patrol-mode.patrol-standalone.p49-product-shell #patrolAnalysisZone .p36-atomic-detail-layer.p49-detail-dock .p35-detail-leader{display:none!important}
html body.patrol-mode.patrol-standalone.p49-product-shell #patrolAnalysisZone .p36-atomic-detail-layer.p49-detail-dock .p35-map-detail-card:not([hidden]){
  position:relative!important;left:auto!important;top:auto!important;width:100%!important;max-width:none!important;max-height:min(350px,calc(100vh - 120px))!important;margin:0!important;border-radius:18px!important;display:flex!important;visibility:visible!important;opacity:1!important;pointer-events:auto!important;box-sizing:border-box!important;
}
@media(max-width:700px){
 html body.patrol-mode.patrol-standalone.p49-product-shell #patrolAnalysisZone .p36-atomic-detail-layer.p49-detail-dock .p35-map-detail-card:not([hidden]){max-height:min(330px,calc(100vh - 110px))!important;border-radius:16px!important}
}


/* P50 | GIS detail dialog readability + store structure polish */
html body.patrol-mode.patrol-standalone.p50-product-shell .p35-detail-leader .under,
html body.patrol-mode.patrol-standalone.p49-product-shell .p35-detail-leader .under{stroke:rgba(255,255,255,.96)!important;stroke-width:5.6!important;opacity:.92!important}
html body.patrol-mode.patrol-standalone.p50-product-shell .p35-detail-leader .main,
html body.patrol-mode.patrol-standalone.p49-product-shell .p35-detail-leader .main{stroke:rgba(88,137,188,.72)!important;stroke-width:2!important;opacity:.82!important}
html body.patrol-mode.patrol-standalone.p50-product-shell .p35-detail-leader circle,
html body.patrol-mode.patrol-standalone.p49-product-shell .p35-detail-leader circle{fill:#fff!important;stroke:rgba(88,137,188,.9)!important;stroke-width:1.8!important}
html body.patrol-mode.patrol-standalone.p50-product-shell .p35-map-detail-card,
html body.patrol-mode.patrol-standalone.p49-product-shell .p35-map-detail-card{max-width:min(500px,calc(100% - 18px))!important;max-height:min(560px,calc(100% - 18px))!important;border-radius:22px!important;border:1px solid rgba(115,164,205,.22)!important;background:linear-gradient(180deg,rgba(255,255,255,.985),rgba(246,251,255,.975) 56%,rgba(248,250,255,.97))!important;box-shadow:0 22px 56px rgba(42,74,107,.16),0 0 0 1px rgba(255,255,255,.84)!important}
html body.patrol-mode.patrol-standalone.p50-product-shell .p35-detail-head,
html body.patrol-mode.patrol-standalone.p49-product-shell .p35-detail-head{gap:12px!important;padding:16px 18px 12px!important;background:radial-gradient(260px 110px at 16% 0,rgba(197,231,255,.40),transparent 74%)!important}
html body.patrol-mode.patrol-standalone.p50-product-shell .p35-detail-head strong,
html body.patrol-mode.patrol-standalone.p49-product-shell .p35-detail-head strong{font-size:19px!important;line-height:1.38!important;color:#173b56!important}
html body.patrol-mode.patrol-standalone.p50-product-shell .p35-detail-head small,
html body.patrol-mode.patrol-standalone.p49-product-shell .p35-detail-head small{font-size:13.5px!important;line-height:1.5!important;color:#6a7d90!important}
html body.patrol-mode.patrol-standalone.p50-product-shell .p35-detail-close,
html body.patrol-mode.patrol-standalone.p49-product-shell .p35-detail-close{width:38px!important;height:38px!important;min-width:38px!important;border-radius:12px!important;background:rgba(236,245,252,.96)!important;color:#446f95!important;box-shadow:inset 0 0 0 1px rgba(117,164,207,.14)!important}
html body.patrol-mode.patrol-standalone.p50-product-shell .p50-detail-meta,
html body.patrol-mode.patrol-standalone.p49-product-shell .p50-detail-meta{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:10px!important;padding:10px 16px 4px!important}
html body.patrol-mode.patrol-standalone.p50-product-shell .p50-detail-meta-item,
html body.patrol-mode.patrol-standalone.p49-product-shell .p50-detail-meta-item{display:grid!important;gap:5px!important;padding:11px 12px!important;border-radius:14px!important;border:1px solid rgba(125,173,215,.14)!important;background:linear-gradient(180deg,rgba(235,246,255,.76),rgba(248,251,255,.92))!important;min-width:0!important}
html body.patrol-mode.patrol-standalone.p50-product-shell .p50-detail-meta-item small,
html body.patrol-mode.patrol-standalone.p49-product-shell .p50-detail-meta-item small{margin:0!important;font-size:12px!important;line-height:1.35!important;color:#6c8196!important}
html body.patrol-mode.patrol-standalone.p50-product-shell .p50-detail-meta-item b,
html body.patrol-mode.patrol-standalone.p49-product-shell .p50-detail-meta-item b{font-size:14px!important;line-height:1.5!important;color:#274867!important;font-weight:800!important;white-space:normal!important;word-break:break-word!important}
html body.patrol-mode.patrol-standalone.p50-product-shell .p35-detail-chips,
html body.patrol-mode.patrol-standalone.p49-product-shell .p35-detail-chips{padding:2px 16px 10px!important;gap:7px!important}
html body.patrol-mode.patrol-standalone.p50-product-shell .p35-detail-chips span,
html body.patrol-mode.patrol-standalone.p49-product-shell .p35-detail-chips span{padding:5px 10px!important;font-size:12.5px!important;border-radius:999px!important}
html body.patrol-mode.patrol-standalone.p50-product-shell .p35-detail-scroll,
html body.patrol-mode.patrol-standalone.p49-product-shell .p35-detail-scroll{max-height:430px!important;padding:0 14px 16px!important;scrollbar-width:thin!important}
html body.patrol-mode.patrol-standalone.p50-product-shell .p35-detail-section,
html body.patrol-mode.patrol-standalone.p49-product-shell .p35-detail-section{padding:11px 0 4px!important}
html body.patrol-mode.patrol-standalone.p50-product-shell .p35-detail-section-head,
html body.patrol-mode.patrol-standalone.p49-product-shell .p35-detail-section-head{padding:0 2px 8px!important}
html body.patrol-mode.patrol-standalone.p50-product-shell .p35-detail-section-head b,
html body.patrol-mode.patrol-standalone.p49-product-shell .p35-detail-section-head b{font-size:14px!important;color:#335877!important}
html body.patrol-mode.patrol-standalone.p50-product-shell .p35-detail-section-head span,
html body.patrol-mode.patrol-standalone.p49-product-shell .p35-detail-section-head span{font-size:12.5px!important;color:#6a86a1!important}
html body.patrol-mode.patrol-standalone.p50-product-shell .p35-detail-object,
html body.patrol-mode.patrol-standalone.p49-product-shell .p35-detail-object{margin:7px 0!important;padding:11px 12px!important;border-radius:14px!important;background:rgba(255,255,255,.88)!important;border:1px solid rgba(116,165,208,.11)!important;box-shadow:0 6px 16px rgba(56,95,132,.04)!important}
html body.patrol-mode.patrol-standalone.p50-product-shell .p35-detail-object-title,
html body.patrol-mode.patrol-standalone.p49-product-shell .p35-detail-object-title{gap:7px!important}
html body.patrol-mode.patrol-standalone.p50-product-shell .p35-detail-object-title b,
html body.patrol-mode.patrol-standalone.p49-product-shell .p35-detail-object-title b{font-size:13.5px!important;line-height:1.5!important}
html body.patrol-mode.patrol-standalone.p50-product-shell .p35-detail-object>small,
html body.patrol-mode.patrol-standalone.p49-product-shell .p35-detail-object>small{margin:4px 0 6px 18px!important;font-size:12.75px!important;line-height:1.5!important}
html body.patrol-mode.patrol-standalone.p50-product-shell .p35-detail-object-meta,
html body.patrol-mode.patrol-standalone.p49-product-shell .p35-detail-object-meta{gap:6px!important;margin-left:18px!important}
html body.patrol-mode.patrol-standalone.p50-product-shell .p35-detail-object-meta span,
html body.patrol-mode.patrol-standalone.p49-product-shell .p35-detail-object-meta span{font-size:12px!important;padding:3px 7px!important;border-radius:8px!important;background:rgba(239,246,252,.92)!important;color:#62798d!important}
html body.patrol-mode.patrol-standalone.p50-product-shell .p35-detail-more,
html body.patrol-mode.patrol-standalone.p49-product-shell .p35-detail-more{margin:8px 0 2px!important;border-radius:12px!important;background:rgba(237,246,255,.68)!important}
html body.patrol-mode.patrol-standalone.p50-product-shell .p35-detail-more summary,
html body.patrol-mode.patrol-standalone.p49-product-shell .p35-detail-more summary{padding:10px 12px!important;font-size:12.75px!important}

html body.patrol-mode.patrol-standalone.p50-product-shell #p7StoreTypeChart,
html body.patrol-mode.patrol-standalone.p49-product-shell #p7StoreTypeChart{display:grid!important;gap:12px!important}
html body.patrol-mode.patrol-standalone.p50-product-shell #p7StoreTypeChart .p7-bar-row,
html body.patrol-mode.patrol-standalone.p49-product-shell #p7StoreTypeChart .p7-bar-row{grid-template-columns:minmax(130px,180px) minmax(0,1fr) auto!important;gap:10px 14px!important;align-items:center!important;padding:12px 14px!important;border-radius:16px!important;border:1px solid #dbe6e0!important;background:linear-gradient(180deg,#f8fbfa,#f3f7f5)!important;box-shadow:0 4px 12px rgba(44,76,70,.035)!important}
html body.patrol-mode.patrol-standalone.p50-product-shell #p7StoreTypeChart .p7-bar-row>span,
html body.patrol-mode.patrol-standalone.p49-product-shell #p7StoreTypeChart .p7-bar-row>span{font-size:14px!important;font-weight:760!important;color:#29474c!important}
html body.patrol-mode.patrol-standalone.p50-product-shell #p7StoreTypeChart .p7-bar-track,
html body.patrol-mode.patrol-standalone.p49-product-shell #p7StoreTypeChart .p7-bar-track{height:10px!important;border-radius:999px!important;background:#e7edeb!important;box-shadow:inset 0 1px 2px rgba(70,96,88,.07)!important}
html body.patrol-mode.patrol-standalone.p50-product-shell #p7StoreTypeChart .p7-bar-track i,
html body.patrol-mode.patrol-standalone.p49-product-shell #p7StoreTypeChart .p7-bar-track i{border-radius:inherit!important;background:linear-gradient(90deg,#6f968d,#86aea2)!important;box-shadow:0 3px 10px rgba(111,150,141,.18)!important}
html body.patrol-mode.patrol-standalone.p50-product-shell #p7StoreTypeChart .p7-bar-row strong,
html body.patrol-mode.patrol-standalone.p49-product-shell #p7StoreTypeChart .p7-bar-row strong{font-size:14px!important;font-weight:800!important;color:#234147!important}
html body.patrol-mode.patrol-standalone.p50-product-shell #p7StoreTypeChart .p7-bar-row small,
html body.patrol-mode.patrol-standalone.p49-product-shell #p7StoreTypeChart .p7-bar-row small{grid-column:2/4!important;font-size:12px!important;line-height:1.35!important;color:#70848a!important}

@media(max-width:760px){
  html body.patrol-mode.patrol-standalone.p50-product-shell .p50-detail-meta,
  html body.patrol-mode.patrol-standalone.p49-product-shell .p50-detail-meta{grid-template-columns:1fr!important}
  html body.patrol-mode.patrol-standalone.p50-product-shell .p35-map-detail-card,
  html body.patrol-mode.patrol-standalone.p49-product-shell .p35-map-detail-card{max-width:min(94vw,420px)!important}
  html body.patrol-mode.patrol-standalone.p50-product-shell .p35-detail-scroll,
  html body.patrol-mode.patrol-standalone.p49-product-shell .p35-detail-scroll{max-height:320px!important}
  html body.patrol-mode.patrol-standalone.p50-product-shell #p7StoreTypeChart .p7-bar-row,
  html body.patrol-mode.patrol-standalone.p49-product-shell #p7StoreTypeChart .p7-bar-row{grid-template-columns:minmax(110px,1fr) minmax(0,1fr) auto!important}
}


/* P51 | mature callout system + multi-pin toolbar + store structure visual correction */
html body.patrol-mode.patrol-standalone.p51-product-shell .p51-pin-toolbar{display:grid!important;grid-template-columns:auto auto auto auto auto minmax(220px,1fr)!important;align-items:center!important;gap:10px!important;margin:0 0 12px!important;padding:11px 13px!important;border:1px solid rgba(91,143,190,.13)!important;border-radius:15px!important;background:linear-gradient(180deg,rgba(252,254,255,.96),rgba(246,250,255,.94))!important;box-shadow:0 5px 18px rgba(50,84,120,.04)!important}
html body.p51-product-shell .p51-pin-toolbar-title{display:flex!important;align-items:baseline!important;gap:8px!important;white-space:nowrap!important}
html body.p51-product-shell .p51-pin-toolbar-title strong{font-size:14px!important;color:#294760!important;font-weight:850!important}
html body.p51-product-shell .p51-pin-toolbar .patrol-pin-count{min-height:0!important;padding:0!important;background:transparent!important;color:#60778b!important;font-size:12.5px!important;font-weight:700!important}
html body.p51-product-shell .p51-pin-toolbar .btn{min-height:36px!important;padding:7px 12px!important;border-radius:10px!important;box-shadow:none!important}
html body.p51-product-shell .p51-pin-toolbar .btn:disabled{opacity:.42!important}
html body.p51-product-shell .p51-pin-toolbar-hint{justify-self:end!important;text-align:right!important;font-size:12.5px!important;line-height:1.45!important;color:#6f8394!important}
html body.p51-product-shell .p51-legacy-pin-control{display:none!important}

html body.patrol-mode.patrol-standalone.p51-product-shell .p35-map-detail-card{max-width:min(460px,calc(100% - 18px))!important;max-height:min(540px,calc(100% - 18px))!important;border-radius:18px!important;border:1px solid rgba(94,148,197,.22)!important;background:linear-gradient(180deg,rgba(255,255,255,.992),rgba(247,251,255,.982))!important;box-shadow:0 18px 48px rgba(46,78,112,.14),0 0 0 1px rgba(255,255,255,.88)!important;backdrop-filter:none!important;-webkit-backdrop-filter:none!important}
html body.p51-product-shell .p35-map-detail-card::before{height:2px!important;background:linear-gradient(90deg,#6CAAE5,#75C0E8,#9B9BE7)!important;opacity:.82!important}
html body.p51-product-shell .p35-detail-head{padding:14px 15px 11px!important;background:linear-gradient(180deg,rgba(239,248,255,.72),rgba(255,255,255,.55))!important}
html body.p51-product-shell .p35-detail-head span{font-size:12.5px!important;color:#5885ae!important}
html body.p51-product-shell .p35-detail-head strong{font-size:17.5px!important;line-height:1.35!important;color:#183b57!important}
html body.p51-product-shell .p35-detail-head small{font-size:12.75px!important;line-height:1.45!important;color:#718394!important}
html body.p51-product-shell .p51-detail-stats{display:flex!important;flex-wrap:wrap!important;gap:6px!important;padding:10px 14px 5px!important}
html body.p51-product-shell .p51-detail-stats span{padding:4px 8px!important;border-radius:999px!important;background:#F1F7FC!important;border:1px solid rgba(93,148,196,.11)!important;color:#4E718F!important;font-size:12px!important;font-weight:750!important;white-space:nowrap!important}
html body.p51-product-shell .p51-detail-responsibility{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:8px!important;padding:5px 14px 8px!important}
html body.p51-product-shell .p51-detail-responsibility>div{min-width:0!important;display:grid!important;grid-template-columns:auto minmax(0,1fr)!important;align-items:center!important;gap:7px!important;padding:8px 10px!important;border:1px solid rgba(103,153,196,.12)!important;border-radius:11px!important;background:rgba(245,250,255,.86)!important}
html body.p51-product-shell .p51-detail-responsibility small{margin:0!important;font-size:11.75px!important;color:#758798!important;white-space:nowrap!important}
html body.p51-product-shell .p51-detail-responsibility b{min-width:0!important;font-size:12.75px!important;color:#31516d!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important}
html body.p51-product-shell .p35-detail-chips{padding:0 14px 8px!important}
html body.p51-product-shell .p35-detail-scroll{max-height:380px!important;padding:0 12px 13px!important}
html body.p51-product-shell .p35-detail-object{margin:5px 0!important;padding:9px 10px!important;border-radius:11px!important;background:#fff!important;border-color:rgba(102,151,193,.10)!important;box-shadow:none!important}
html body.p51-product-shell .p35-detail-object-title b{font-size:12.75px!important;line-height:1.42!important}
html body.p51-product-shell .p35-detail-object>small{font-size:12px!important;line-height:1.42!important}
html body.p51-product-shell .p35-detail-object-meta span{font-size:11.75px!important;background:#F3F7FA!important}
html body.p51-product-shell .p35-detail-more{background:#F3F8FC!important;border-color:rgba(102,151,193,.10)!important}
html body.p51-product-shell .p35-detail-leader .under{stroke:rgba(255,255,255,.98)!important;stroke-width:5.2!important}
html body.p51-product-shell .p35-detail-leader .main{stroke:rgba(78,132,181,.72)!important;stroke-width:1.9!important}

/* The blue slab in the user's screenshot came from P34's generic .p7-bar-chart background. P51 explicitly removes it for the store structure. */
html body.patrol-mode.patrol-standalone.p51-product-shell #p7StoreWorkspace .p7-analysis-split>.patrol-panel:first-child{background:linear-gradient(180deg,#FFFFFF,#FBFDFF)!important;border-color:rgba(84,136,181,.10)!important;box-shadow:0 8px 24px rgba(48,80,115,.035)!important}
html body.patrol-mode.patrol-standalone.p51-product-shell #p7StoreTypeChart{background:transparent!important;box-shadow:none!important;border:0!important;padding:4px 0 0!important;gap:0!important;max-height:560px!important;scrollbar-color:#D3DFE9 transparent!important}
html body.patrol-mode.patrol-standalone.p51-product-shell #p7StoreTypeChart .p51-store-type-row{grid-template-columns:minmax(130px,175px) minmax(180px,1fr) 64px 58px!important;min-height:58px!important;padding:9px 10px!important;border:0!important;border-bottom:1px solid rgba(83,132,176,.075)!important;border-radius:0!important;background:transparent!important;box-shadow:none!important;gap:9px 13px!important}
html body.p51-product-shell #p7StoreTypeChart .p51-store-type-row:hover{background:linear-gradient(90deg,rgba(239,247,255,.64),rgba(249,247,255,.34))!important}
html body.p51-product-shell #p7StoreTypeChart .p51-store-type-row>span{font-size:13.5px!important;font-weight:750!important;color:#314F68!important}
html body.p51-product-shell #p7StoreTypeChart .p7-bar-track{height:8px!important;background:#EDF2F5!important;box-shadow:none!important}
html body.p51-product-shell #p7StoreTypeChart .p7-bar-track i{background:var(--p51-store-color)!important;box-shadow:none!important;opacity:.84!important}
html body.p51-product-shell #p7StoreTypeChart .p51-store-type-row strong{font-size:13px!important;color:#29445C!important;text-align:right!important}
html body.p51-product-shell #p7StoreTypeChart .p51-store-type-row small{grid-column:auto!important;font-size:12px!important;color:#7B8D9C!important;text-align:right!important}

@media(max-width:1180px){html body.p51-product-shell .p51-pin-toolbar{grid-template-columns:auto repeat(2,minmax(0,1fr))!important}.p51-product-shell .p51-pin-toolbar-title,.p51-product-shell .p51-pin-toolbar-hint{grid-column:1/-1!important;justify-self:start!important;text-align:left!important}.p51-product-shell .p51-pin-toolbar .btn{width:100%!important}}
@media(max-width:760px){html body.p51-product-shell .p51-pin-toolbar{grid-template-columns:1fr 1fr!important}.p51-product-shell .p51-detail-responsibility{grid-template-columns:1fr!important}.p51-product-shell .p35-detail-scroll{max-height:300px!important}.p51-product-shell #p7StoreTypeChart .p51-store-type-row{grid-template-columns:minmax(100px,1fr) minmax(110px,1fr) 54px!important}.p51-product-shell #p7StoreTypeChart .p51-store-type-row small{grid-column:2/4!important;text-align:left!important}}

/* P51 compact selected callout — follows accepted 06 map language, keeps patrol palette. */
html body.patrol-mode.patrol-standalone.p51-product-shell .p35-map-detail-card{max-width:min(350px,calc(100% - 14px))!important;max-height:min(330px,calc(100% - 14px))!important;border-radius:15px!important;backdrop-filter:none!important;-webkit-backdrop-filter:none!important;box-shadow:0 12px 30px rgba(52,84,116,.14),0 0 0 1px rgba(255,255,255,.84)!important;background:linear-gradient(180deg,rgba(253,255,255,.992),rgba(247,251,255,.985))!important}
html body.patrol-mode.patrol-standalone.p51-product-shell .p51-compact-callout .p35-detail-head{padding:12px 13px 9px!important;gap:9px!important;background:linear-gradient(180deg,rgba(239,248,255,.78),rgba(253,255,255,.28))!important}
html body.patrol-mode.patrol-standalone.p51-product-shell .p51-compact-callout .p35-detail-head span{font-size:12.5px!important;margin-bottom:2px!important;color:#567EA2!important}
html body.patrol-mode.patrol-standalone.p51-product-shell .p51-compact-callout .p35-detail-head strong{font-size:16px!important;line-height:1.35!important;color:#1E405C!important}
html body.patrol-mode.patrol-standalone.p51-product-shell .p51-compact-callout .p35-detail-head small{font-size:12.5px!important;line-height:1.4!important;margin-top:3px!important;color:#718493!important;display:-webkit-box!important;-webkit-line-clamp:2!important;-webkit-box-orient:vertical!important;overflow:hidden!important}
html body.patrol-mode.patrol-standalone.p51-product-shell .p51-compact-callout .p35-detail-close{width:32px!important;height:32px!important;min-width:32px!important;border-radius:10px!important;font-size:18px!important}
html body.patrol-mode.patrol-standalone.p51-product-shell .p51-compact-stats{display:flex!important;align-items:center!important;gap:7px!important;flex-wrap:wrap!important;padding:8px 13px 6px!important;color:#487263!important}
html body.patrol-mode.patrol-standalone.p51-product-shell .p51-compact-stats b{font-size:12.25px!important;line-height:1.35!important;font-weight:760!important;color:#477365!important;white-space:nowrap!important}
html body.patrol-mode.patrol-standalone.p51-product-shell .p51-compact-stats i{width:1px!important;height:12px!important;background:#D9E4E9!important}
html body.patrol-mode.patrol-standalone.p51-product-shell .p51-compact-responsibility{display:grid!important;grid-template-columns:minmax(0,1fr) minmax(0,1fr)!important;gap:8px!important;margin:0 13px 7px!important;padding:7px 9px!important;border-radius:10px!important;background:#F6FAFC!important;border:1px solid #E4ECF1!important}
html body.patrol-mode.patrol-standalone.p51-product-shell .p51-compact-responsibility span{min-width:0!important;font-size:12px!important;color:#6C7F8E!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important}
html body.patrol-mode.patrol-standalone.p51-product-shell .p51-compact-responsibility b{font-size:12.25px!important;color:#31536E!important;font-weight:780!important}
html body.patrol-mode.patrol-standalone.p51-product-shell .p51-compact-objects{display:grid!important;gap:4px!important;padding:0 13px 11px!important;border-top:1px solid rgba(111,151,184,.10)!important;padding-top:7px!important}
html body.patrol-mode.patrol-standalone.p51-product-shell .p51-compact-object{display:grid!important;grid-template-columns:auto minmax(0,1fr) auto!important;gap:5px!important;align-items:center!important;min-width:0!important}
html body.patrol-mode.patrol-standalone.p51-product-shell .p51-compact-object>span{font-size:12px!important;color:#5D8CB5!important}
html body.patrol-mode.patrol-standalone.p51-product-shell .p51-compact-object>b{font-size:12.25px!important;line-height:1.35!important;color:#405B70!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important}
html body.patrol-mode.patrol-standalone.p51-product-shell .p51-compact-object>em{font-style:normal!important;font-size:11.75px!important;color:#668197!important;white-space:nowrap!important}
html body.patrol-mode.patrol-standalone.p51-product-shell .p51-compact-objects>small{font-size:11.75px!important;line-height:1.35!important;color:#8797A4!important}
html body.patrol-mode.patrol-standalone.p51-product-shell .p51-compact-empty{font-size:12px!important;color:#8797A4!important}
html body.patrol-mode.patrol-standalone.p51-product-shell #p7StoreWorkspace .p7-analysis-split>article:first-child #p7StoreTypeChart{background:none!important;background-color:transparent!important;background-image:none!important;box-shadow:none!important;border:0!important}
@media(max-width:760px){html body.p51-product-shell .p51-compact-responsibility{grid-template-columns:1fr!important}.p51-product-shell .p35-map-detail-card{max-width:min(330px,calc(100% - 12px))!important}}
html body.patrol-mode.patrol-standalone.p49-product-shell.p51-product-shell #patrolAnalysisZone .p36-atomic-detail-layer .p35-map-detail-card{max-width:min(350px,calc(100% - 14px))!important;max-height:min(330px,calc(100% - 14px))!important}
html body.p51-product-shell .p35-map-detail-card.p51-density-tight .p51-compact-objects{display:none!important}
html body.p51-product-shell .p35-map-detail-card.p51-density-tight .p35-detail-head small{-webkit-line-clamp:1!important}
html body.p51-product-shell .p35-map-detail-card.p51-density-tight .p35-detail-head{padding-bottom:8px!important}
html body.p51-product-shell .p35-map-detail-card.p51-density-mini .p51-compact-objects{display:none!important}
html body.p51-product-shell .p35-map-detail-card.p51-density-mini .p35-detail-head small{display:none!important}
html body.p51-product-shell .p35-map-detail-card.p51-density-mini .p51-compact-stats{padding-top:7px!important;padding-bottom:5px!important}
html body.p51-product-shell .p35-map-detail-card.p51-density-mini .p51-compact-responsibility{margin-bottom:9px!important;padding:6px 8px!important}
html body.p51-product-shell #p7StoreTypeChart{overflow-x:hidden!important}
html body.p51-product-shell #p7StoreTypeChart .p51-store-type-row{min-width:0!important;width:100%!important;box-sizing:border-box!important}
html body.p51-product-shell #p7StoreTypeChart .p51-store-type-row>span{min-width:0!important;overflow:hidden!important;text-overflow:ellipsis!important;white-space:nowrap!important}


html body.p52-product-shell #p7StoreTypeChart{background:transparent!important;background-image:none!important;box-shadow:none!important}

/* P53 | plain-language numeric semantics: longer labels must remain readable. */
html body.p53-product-shell #patrolPage .p7-domain-kpis>article>span,
html body.p53-product-shell #patrolPage .p7-responsibility-kpis>article>span{
  white-space:normal!important;overflow:visible!important;text-overflow:clip!important;
  line-height:1.42!important;font-size:13px!important;max-width:calc(100% - 42px)!important
}
html body.p53-product-shell #patrolPage .p7-domain-kpis>article>strong{
  white-space:normal!important;line-height:1.15!important;font-size:28px!important
}
html body.p53-product-shell #patrolPage .p7-domain-kpis>article>small{
  font-size:13px!important;line-height:1.52!important;color:#63778b!important
}
html body.p53-product-shell #p46ContextJudgement{
  white-space:normal!important;overflow:visible!important;text-overflow:clip!important;
  line-height:1.45!important;min-width:0!important
}
html body.p53-product-shell .p43-smart-brief strong,
html body.p53-product-shell .p46-smart-brief strong,
html body.p53-product-shell .p47-smart-brief strong,
html body.p53-product-shell .p48-smart-brief strong{
  white-space:normal!important;overflow:visible!important;text-overflow:clip!important;line-height:1.5!important
}
html body.p53-product-shell .p47-primary-action b,
html body.p53-product-shell .p47-secondary-actions span{
  white-space:normal!important;line-height:1.42!important
}
@media(max-width:900px){
  html body.p53-product-shell #patrolPage .p7-domain-kpis{grid-template-columns:repeat(2,minmax(0,1fr))!important}
}
@media(max-width:640px){
  html body.p53-product-shell #patrolPage .p7-domain-kpis{grid-template-columns:1fr!important}
}

/* P54 — clean focus sheet and stable full-language public layout. */
html body.p54-product-shell .p19-priority-sheet{
  border:0!important;padding:0!important;margin:0!important;background:rgba(34,45,66,.16)!important;
  width:100vw!important;height:100vh!important;max-width:none!important;max-height:none!important;overflow:hidden!important;
  backdrop-filter:blur(9px)!important;-webkit-backdrop-filter:blur(9px)!important;
}
html body.p54-product-shell .p19-priority-sheet-card{
  position:fixed!important;right:18px!important;top:18px!important;bottom:18px!important;left:auto!important;
  width:min(720px,calc(100vw - 36px))!important;height:auto!important;max-height:none!important;
  display:grid!important;grid-template-rows:auto minmax(0,1fr)!important;overflow:hidden!important;
  border:1px solid rgba(110,151,203,.16)!important;border-radius:26px!important;
  background:linear-gradient(180deg,rgba(252,253,255,.985),rgba(246,249,254,.985))!important;
  box-shadow:0 26px 80px rgba(45,65,95,.18)!important;color:#263f57!important;
}
html body.p54-product-shell .p19-priority-sheet-head{
  position:relative!important;display:flex!important;align-items:flex-start!important;justify-content:space-between!important;gap:18px!important;
  padding:22px 24px 18px!important;margin:0!important;border-bottom:1px solid rgba(101,140,184,.12)!important;
  background:linear-gradient(180deg,#fff,rgba(249,251,255,.92))!important;
}
html body.p54-product-shell .p19-priority-sheet-head>div{min-width:0!important;display:block!important;position:static!important;transform:none!important}
html body.p54-product-shell .p19-priority-sheet-head span{display:block!important;margin:0 0 5px!important;font-size:12px!important;line-height:1.4!important;color:#557488!important;letter-spacing:.06em!important;position:static!important;transform:none!important}
html body.p54-product-shell .p19-priority-sheet-head strong{display:block!important;margin:0!important;font-size:26px!important;line-height:1.25!important;color:#203d55!important;letter-spacing:-.02em!important;position:static!important;transform:none!important}
html body.p54-product-shell .p19-priority-sheet-head small{display:block!important;margin:6px 0 0!important;font-size:13px!important;line-height:1.45!important;color:#718497!important;position:static!important;transform:none!important}
html body.p54-product-shell .p19-priority-sheet-close{flex:0 0 auto!important;width:46px!important;height:46px!important;display:grid!important;place-items:center!important;margin:0!important;padding:0!important;border-radius:15px!important;border:1px solid rgba(103,142,184,.15)!important;background:#fff!important;color:#28465e!important;font-size:22px!important;line-height:1!important;box-shadow:none!important;position:static!important;transform:none!important}
html body.p54-product-shell .p19-priority-sheet-list{
  position:static!important;display:grid!important;grid-template-columns:1fr!important;align-content:start!important;gap:10px!important;
  min-height:0!important;overflow:auto!important;padding:16px 18px 24px!important;margin:0!important;background:transparent!important;
}
html body.p54-product-shell .p54-priority-row{
  position:static!important;transform:none!important;width:100%!important;min-height:94px!important;height:auto!important;box-sizing:border-box!important;
  display:grid!important;grid-template-columns:54px minmax(0,1fr) minmax(148px,auto)!important;gap:14px!important;align-items:center!important;
  margin:0!important;padding:15px 16px!important;border:1px solid rgba(99,141,190,.13)!important;border-radius:18px!important;
  background:linear-gradient(180deg,#fff,#f9fbff)!important;box-shadow:0 7px 18px rgba(69,91,124,.045)!important;color:#263f57!important;text-align:left!important;cursor:pointer!important;
}
html body.p54-product-shell .p54-priority-row:hover{border-color:rgba(80,133,195,.28)!important;background:linear-gradient(180deg,#fbfdff,#f6f9ff)!important;box-shadow:0 10px 24px rgba(69,91,124,.075)!important;transform:none!important}
html body.p54-product-shell .p54-priority-row.is-selected{border-color:rgba(73,129,195,.38)!important;box-shadow:inset 3px 0 0 #5e8fc6,0 10px 24px rgba(69,91,124,.07)!important;background:#f8fbff!important}
html body.p54-product-shell .p54-priority-row.is-static{cursor:default!important;background:#fbfcfe!important}
html body.p54-product-shell .p54-priority-no{
  position:static!important;transform:none!important;display:grid!important;place-items:center!important;width:50px!important;height:50px!important;margin:0!important;padding:0 7px!important;
  border-radius:15px!important;background:linear-gradient(180deg,#eff5ff,#e9f1ff)!important;border:1px solid rgba(91,139,194,.16)!important;
  color:#527caf!important;font-size:18px!important;line-height:1!important;font-weight:800!important;white-space:nowrap!important;box-sizing:border-box!important;
}
html body.p54-product-shell .p54-priority-main{position:static!important;transform:none!important;display:grid!important;gap:5px!important;min-width:0!important;margin:0!important;padding:0!important}
html body.p54-product-shell .p54-priority-main b{position:static!important;transform:none!important;display:block!important;margin:0!important;font-size:17px!important;line-height:1.4!important;color:#213e58!important;white-space:normal!important;overflow:visible!important;text-overflow:clip!important;word-break:break-word!important}
html body.p54-product-shell .p54-priority-main small{position:static!important;transform:none!important;display:block!important;margin:0!important;font-size:13px!important;line-height:1.55!important;color:#697e92!important;white-space:normal!important;overflow:visible!important;text-overflow:clip!important;word-break:break-word!important}
html body.p54-product-shell .p54-priority-state{position:static!important;transform:none!important;align-self:center!important;justify-self:end!important;display:block!important;max-width:190px!important;margin:0!important;padding:8px 11px!important;border-radius:999px!important;background:#edf5ff!important;border:1px solid rgba(92,142,202,.13)!important;color:#4b78a8!important;font-size:12px!important;line-height:1.35!important;font-weight:760!important;white-space:normal!important;text-align:center!important}
html body.p54-product-shell .p54-priority-row.severity-zero .p54-priority-state{background:#fff0f2!important;color:#ae5b6e!important;border-color:rgba(195,104,124,.16)!important}
html body.p54-product-shell .p54-priority-row.severity-one .p54-priority-state{background:#fff7ea!important;color:#9f6e30!important;border-color:rgba(197,138,69,.16)!important}
html body.p54-product-shell .p54-priority-row.severity-rect .p54-priority-state{background:#f5efff!important;color:#775eb6!important;border-color:rgba(125,99,191,.15)!important}
html body.p54-product-shell .p54-priority-row.severity-good .p54-priority-state{background:#eef6ff!important;color:#4b78a8!important}
html body.p54-product-shell .p54-priority-row *{box-sizing:border-box!important}
html body.p54-product-shell #p51PinToolbarHint{font-size:13px!important;line-height:1.55!important;white-space:normal!important}
@media(max-width:760px){
 html body.p54-product-shell .p19-priority-sheet-card{left:8px!important;right:8px!important;top:8px!important;bottom:8px!important;width:auto!important;border-radius:22px!important}
 html body.p54-product-shell .p19-priority-sheet-head{padding:18px!important}
 html body.p54-product-shell .p19-priority-sheet-list{padding:12px!important}
 html body.p54-product-shell .p54-priority-row{grid-template-columns:46px minmax(0,1fr)!important;gap:11px!important;padding:13px!important}
 html body.p54-product-shell .p54-priority-no{width:44px!important;height:44px!important;font-size:16px!important}
 html body.p54-product-shell .p54-priority-state{grid-column:2!important;justify-self:start!important;max-width:100%!important}
}

/* P54 inherits the P53 long-language readability rules explicitly. */
html body.p54-product-shell #patrolPage .p7-domain-kpis>article>span,
html body.p54-product-shell #patrolPage .p7-responsibility-kpis>article>span{
  white-space:normal!important;overflow:visible!important;text-overflow:clip!important;
  line-height:1.42!important;font-size:13px!important;max-width:calc(100% - 42px)!important
}
html body.p54-product-shell #patrolPage .p7-domain-kpis>article>strong{
  white-space:normal!important;line-height:1.15!important;font-size:28px!important
}
html body.p54-product-shell #patrolPage .p7-domain-kpis>article>small{
  font-size:13px!important;line-height:1.52!important;color:#63778b!important
}
html body.p54-product-shell #p46ContextJudgement{
  white-space:normal!important;overflow:visible!important;text-overflow:clip!important;
  line-height:1.45!important;min-width:0!important
}
html body.p54-product-shell .p43-smart-brief strong,
html body.p54-product-shell .p46-smart-brief strong,
html body.p54-product-shell .p47-smart-brief strong,
html body.p54-product-shell .p48-smart-brief strong{
  white-space:normal!important;overflow:visible!important;text-overflow:clip!important;line-height:1.5!important
}
html body.p54-product-shell .p47-primary-action b,
html body.p54-product-shell .p47-secondary-actions span{white-space:normal!important;line-height:1.42!important}
@media(max-width:900px){html body.p54-product-shell #patrolPage .p7-domain-kpis{grid-template-columns:repeat(2,minmax(0,1fr))!important}}
@media(max-width:640px){html body.p54-product-shell #patrolPage .p7-domain-kpis{grid-template-columns:1fr!important}}

/* P54 priority rows must grow with long public-language text; never clip or stack. */
html body.p54-product-shell .p54-priority-row{
  height:max-content!important;min-height:104px!important;align-items:start!important
}
html body.p54-product-shell .p54-priority-no,
html body.p54-product-shell .p54-priority-state{align-self:start!important}


/* P54 closure hardening — full semantic text must never be ellipsized again. */
html body.patrol-mode.patrol-standalone.p46-product-shell.p47-product-shell.p48-product-shell.p54-product-shell .p7-topbar.p48-topbar{
  align-items:stretch!important;min-height:78px!important
}
html body.patrol-mode.patrol-standalone.p46-product-shell.p47-product-shell.p48-product-shell.p54-product-shell #p46ContextRail{
  min-height:60px!important;height:auto!important;align-items:center!important
}
html body.patrol-mode.patrol-standalone.p46-product-shell.p47-product-shell.p48-product-shell.p54-product-shell #p46ContextRail .p46-context-copy strong,
html body.patrol-mode.patrol-standalone.p46-product-shell.p47-product-shell.p48-product-shell.p54-product-shell #p46ContextJudgement{
  white-space:normal!important;overflow:visible!important;text-overflow:clip!important;
  display:block!important;max-width:none!important;line-height:1.48!important;word-break:break-word!important
}
html body.patrol-mode.patrol-standalone.p54-product-shell #patrolAnalysisZone .patrol-map-filter-group{
  display:flex!important;flex-wrap:wrap!important;gap:8px!important;align-items:center!important
}
html body.patrol-mode.patrol-standalone.p54-product-shell #patrolAnalysisZone .patrol-map-filter-group button{
  width:auto!important;max-width:100%!important;height:auto!important;min-height:40px!important;
  padding:7px 10px!important;line-height:1.35!important;white-space:normal!important;text-align:left!important
}
html body.patrol-mode.patrol-standalone.p54-product-shell #patrolAnalysisZone .patrol-map-filter-group button b{
  display:inline-block!important;white-space:nowrap!important;margin-left:3px!important
}
@media(max-width:900px){
 html body.patrol-mode.patrol-standalone.p46-product-shell.p47-product-shell.p48-product-shell.p54-product-shell .p7-topbar.p48-topbar{min-height:72px!important}
}

/* ========================================================================
   P56 — full-site layout convergence, responsibility clarity, no fake waiting
   ======================================================================== */
html body.p56-product-shell #patrolPersonZone .p7-legacy-responsibility-action{display:none!important}
html body.p56-product-shell #patrolPersonZone .p7-module-head{align-items:flex-start!important;gap:22px!important}
html body.p56-product-shell #patrolPersonZone .p7-responsibility-actions{display:flex!important;flex-wrap:wrap!important;gap:8px!important;justify-content:flex-end!important;max-width:620px!important}
html body.p56-product-shell #patrolPersonZone .p7-responsibility-overview{display:grid!important;gap:18px!important;margin-top:16px!important}
html body.p56-product-shell #p7ResponsibilityKpis{display:grid!important;grid-template-columns:repeat(5,minmax(0,1fr))!important;gap:12px!important;padding:0!important}
html body.p56-product-shell #p7ResponsibilityKpis>article{min-width:0!important;padding:16px 17px!important;border:1px solid rgba(102,145,195,.14)!important;border-radius:16px!important;background:linear-gradient(145deg,rgba(255,255,255,.98),rgba(245,250,255,.92))!important;box-shadow:0 10px 26px rgba(81,118,157,.07)!important}
html body.p56-product-shell #p7ResponsibilityKpis>article span{display:block!important;font-size:13px!important;line-height:1.35!important;color:#637C92!important;margin-bottom:7px!important}
html body.p56-product-shell #p7ResponsibilityKpis>article strong{display:block!important;font-size:27px!important;line-height:1.12!important;color:#233E57!important;font-variant-numeric:tabular-nums!important;margin-bottom:7px!important}
html body.p56-product-shell #p7ResponsibilityKpis>article small{display:block!important;font-size:13px!important;line-height:1.45!important;color:#70889B!important;white-space:normal!important}
html body.p56-product-shell #p7ResponsibilityKpis>article.attention{background:linear-gradient(145deg,#FFF8F4,#FFFDFB)!important;border-color:rgba(223,133,105,.20)!important}
html body.p56-product-shell .p56-responsibility-grid{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:14px!important;padding:2px!important}
html body.p56-product-shell .p56-resp-card{min-width:0!important;border:1px solid rgba(97,142,190,.16)!important;border-radius:17px!important;background:rgba(255,255,255,.96)!important;box-shadow:0 10px 28px rgba(73,111,151,.07)!important;overflow:hidden!important;position:relative!important}
html body.p56-product-shell .p56-resp-card:before{content:""!important;position:absolute!important;inset:0 auto 0 0!important;width:4px!important;background:#62A3E7!important}
html body.p56-product-shell .p56-resp-card.danger:before{background:#E36F7C!important}
html body.p56-product-shell .p56-resp-card.warn:before{background:#E2A249!important}
html body.p56-product-shell .p56-resp-card.good:before{background:#5FAE83!important}
html body.p56-product-shell .p56-resp-card>header{display:flex!important;justify-content:space-between!important;gap:14px!important;align-items:flex-start!important;padding:15px 17px 11px 19px!important;border-bottom:1px solid rgba(99,142,188,.10)!important}
html body.p56-product-shell .p56-resp-card>header>div{display:grid!important;gap:4px!important;min-width:0!important}
html body.p56-product-shell .p56-resp-card>header b{font-size:17px!important;line-height:1.28!important;color:#223F59!important;white-space:normal!important}
html body.p56-product-shell .p56-resp-card>header span{font-size:13px!important;line-height:1.35!important;color:#63809A!important}
html body.p56-product-shell .p56-resp-card>header em{font-style:normal!important;font-size:13px!important;font-weight:700!important;color:#4F728E!important;white-space:nowrap!important;background:#F2F7FC!important;border-radius:999px!important;padding:5px 9px!important}
html body.p56-product-shell .p56-resp-facts{display:grid!important;gap:0!important;padding:5px 17px 4px 19px!important}
html body.p56-product-shell .p56-resp-facts p{display:grid!important;grid-template-columns:78px minmax(0,1fr)!important;gap:10px!important;margin:0!important;padding:9px 0!important;border-bottom:1px dashed rgba(104,144,184,.12)!important;align-items:start!important}
html body.p56-product-shell .p56-resp-facts p:last-child{border-bottom:0!important}
html body.p56-product-shell .p56-resp-facts span{font-size:13px!important;color:#758B9E!important;line-height:1.45!important}
html body.p56-product-shell .p56-resp-facts b{font-size:13px!important;color:#36546E!important;line-height:1.5!important;font-weight:650!important;white-space:normal!important;word-break:break-word!important}
html body.p56-product-shell .p56-resp-card>footer{display:grid!important;grid-template-columns:62px minmax(0,1fr)!important;gap:10px!important;padding:12px 17px 14px 19px!important;background:linear-gradient(90deg,rgba(242,248,255,.82),rgba(249,247,255,.76))!important}
html body.p56-product-shell .p56-resp-card>footer span{font-size:13px!important;color:#69849A!important}
html body.p56-product-shell .p56-resp-card>footer b{font-size:13px!important;line-height:1.5!important;color:#2E5875!important;white-space:normal!important}
html body.p56-product-shell .p56-state-card{display:grid!important;gap:7px!important;padding:18px!important;border:1px solid rgba(97,142,190,.16)!important;border-radius:16px!important;background:#FBFDFF!important}
html body.p56-product-shell .p56-state-card b{font-size:16px!important;color:#284861!important}
html body.p56-product-shell .p56-state-card span{font-size:13px!important;line-height:1.55!important;color:#698198!important}
html body.p56-product-shell .p56-history-state{display:grid!important;grid-template-columns:minmax(0,1.1fr) minmax(420px,.9fr)!important;gap:20px!important;padding:24px!important;margin:16px 0!important;border:1px solid rgba(94,142,196,.16)!important;border-radius:22px!important;background:linear-gradient(135deg,rgba(255,255,255,.98),rgba(243,250,255,.94),rgba(249,246,255,.92))!important;box-shadow:0 16px 38px rgba(75,113,151,.07)!important}
html body.p56-product-shell .p56-history-state>div:first-child span{display:block!important;font-size:13px!important;color:#6686A0!important;margin-bottom:7px!important}
html body.p56-product-shell .p56-history-state h3{font-size:24px!important;line-height:1.3!important;color:#223F59!important;margin:0 0 10px!important}
html body.p56-product-shell .p56-history-state p{font-size:14px!important;line-height:1.65!important;color:#617B91!important;margin:0!important}
html body.p56-product-shell .p56-history-facts{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:10px!important}
html body.p56-product-shell .p56-history-facts article{display:grid!important;gap:5px!important;padding:13px!important;border-radius:14px!important;background:rgba(255,255,255,.88)!important;border:1px solid rgba(104,146,192,.12)!important}
html body.p56-product-shell .p56-history-facts span{font-size:13px!important;color:#70879A!important}
html body.p56-product-shell .p56-history-facts b{font-size:20px!important;color:#2B4A63!important;font-variant-numeric:tabular-nums!important}
html body.p56-product-shell .p56-hidden{display:none!important}
html body.p56-product-shell .patrol-empty-card b+span{display:block!important;margin-top:5px!important;font-size:13px!important;line-height:1.55!important;color:#6A8297!important}
html body.p56-product-shell #patrolAnalysisZone .patrol-map-actions{display:flex!important;flex-wrap:wrap!important;gap:8px!important;align-items:center!important}
html body.p56-product-shell #patrolAnalysisZone .patrol-map-actions button{white-space:normal!important;min-height:40px!important;line-height:1.35!important}
html body.p56-product-shell #patrolProjectMapPngBtn,
html body.p56-product-shell #patrolStoreMapPngBtn{background:linear-gradient(135deg,#397DC9,#4F98E1)!important;color:#fff!important;border-color:transparent!important}
@media(max-width:1280px){
 html body.p56-product-shell #p7ResponsibilityKpis{grid-template-columns:repeat(3,minmax(0,1fr))!important}
 html body.p56-product-shell .p56-responsibility-grid{grid-template-columns:1fr!important}
 html body.p56-product-shell .p56-history-state{grid-template-columns:1fr!important}
}
@media(max-width:760px){
 html body.p56-product-shell #p7ResponsibilityKpis{grid-template-columns:repeat(2,minmax(0,1fr))!important}
 html body.p56-product-shell .p56-resp-card>header{flex-direction:column!important}
 html body.p56-product-shell .p56-resp-card>header em{white-space:normal!important}
 html body.p56-product-shell .p56-resp-facts p{grid-template-columns:1fr!important;gap:3px!important}
 html body.p56-product-shell .p56-history-facts{grid-template-columns:1fr!important}
}
@media(max-width:520px){html body.p56-product-shell #p7ResponsibilityKpis{grid-template-columns:1fr!important}}

/* ========================================================================
   P57 — responsibility direct model + unified 06-style map callouts
   ======================================================================== */
html body.p57-product-shell #patrolPersonZone,
html body.p57-product-shell #p7ResponsibilityOverview,
html body.p57-product-shell #p7ResponsibilityGrid{content-visibility:visible!important;contain:none!important}
html body.p57-product-shell #patrolPersonZone .p7-legacy-responsibility-action{display:none!important}
html body.p57-product-shell #patrolPersonZone .p7-module-head{display:grid!important;grid-template-columns:minmax(0,1fr) auto!important;gap:20px!important;align-items:start!important}
html body.p57-product-shell #patrolPersonZone .p7-responsibility-actions{display:flex!important;flex-wrap:wrap!important;justify-content:flex-end!important;gap:8px!important;max-width:640px!important}
html body.p57-product-shell #p7ResponsibilityOverview{display:grid!important;gap:16px!important;margin-top:16px!important;min-height:0!important;height:auto!important;background:transparent!important}
html body.p57-product-shell .p57-responsibility-explain{display:grid!important;grid-template-columns:minmax(0,1fr) minmax(260px,340px)!important;gap:20px!important;align-items:center!important;padding:20px 22px!important;border:1px solid rgba(91,142,196,.16)!important;border-radius:20px!important;background:linear-gradient(135deg,rgba(255,255,255,.98),rgba(241,249,255,.96),rgba(248,246,255,.94))!important;box-shadow:0 14px 34px rgba(72,112,153,.07)!important}
html body.p57-product-shell .p57-responsibility-explain>div:first-child>span{display:block!important;margin-bottom:6px!important;color:#5D85AA!important;font-size:13px!important;font-weight:800!important}
html body.p57-product-shell .p57-responsibility-explain h3{margin:0 0 8px!important;color:#203E59!important;font-size:19px!important;line-height:1.42!important;letter-spacing:0!important}
html body.p57-product-shell .p57-responsibility-explain p{margin:0!important;color:#647D93!important;font-size:13px!important;line-height:1.62!important;white-space:normal!important}
html body.p57-product-shell .p57-resp-explain-count{display:grid!important;grid-template-columns:auto 1fr!important;column-gap:10px!important;row-gap:4px!important;align-items:end!important;padding:16px 18px!important;border-radius:16px!important;background:rgba(255,255,255,.88)!important;border:1px solid rgba(100,148,198,.13)!important}
html body.p57-product-shell .p57-resp-explain-count b{font-size:38px!important;line-height:1!important;color:#347DC2!important;font-variant-numeric:tabular-nums!important}
html body.p57-product-shell .p57-resp-explain-count span{font-size:14px!important;font-weight:800!important;color:#35536B!important;padding-bottom:3px!important}
html body.p57-product-shell .p57-resp-explain-count small{grid-column:1/-1!important;font-size:13px!important;line-height:1.45!important;color:#6C8296!important}
html body.p57-product-shell #p7ResponsibilityKpis{display:grid!important;grid-template-columns:repeat(5,minmax(0,1fr))!important;gap:12px!important;padding:0!important;margin:0!important}
html body.p57-product-shell #p7ResponsibilityKpis>article{display:block!important;min-width:0!important;padding:15px 16px!important;border:1px solid rgba(99,145,194,.14)!important;border-radius:16px!important;background:rgba(255,255,255,.95)!important;box-shadow:0 8px 22px rgba(78,116,154,.055)!important}
html body.p57-product-shell #p7ResponsibilityKpis>article.attention{background:linear-gradient(145deg,#FFF8F1,#FFFDFC)!important;border-color:rgba(218,147,75,.20)!important}
html body.p57-product-shell #p7ResponsibilityKpis span{display:block!important;font-size:13px!important;line-height:1.35!important;color:#6B8195!important;margin:0 0 6px!important}
html body.p57-product-shell #p7ResponsibilityKpis strong{display:block!important;font-size:28px!important;line-height:1.08!important;color:#23445E!important;font-variant-numeric:tabular-nums!important;margin:0 0 6px!important}
html body.p57-product-shell #p7ResponsibilityKpis small{display:block!important;font-size:13px!important;line-height:1.48!important;color:#70879B!important;white-space:normal!important}
html body.p57-product-shell .p57-responsibility-list{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:14px!important;align-items:start!important;padding:0!important}
html body.p57-product-shell .p57-resp-row{position:relative!important;display:grid!important;grid-template-rows:auto auto auto!important;min-width:0!important;overflow:hidden!important;border:1px solid rgba(95,142,192,.15)!important;border-radius:17px!important;background:rgba(255,255,255,.97)!important;box-shadow:0 10px 26px rgba(73,111,150,.06)!important}
html body.p57-product-shell .p57-resp-row:before{content:""!important;position:absolute!important;inset:0 auto 0 0!important;width:4px!important;background:#62A4E7!important}
html body.p57-product-shell .p57-resp-row.danger:before{background:#E16F7B!important}
html body.p57-product-shell .p57-resp-row.warn:before{background:#DFA147!important}
html body.p57-product-shell .p57-resp-row.good:before{background:#61A981!important}
html body.p57-product-shell .p57-resp-row>header{display:flex!important;justify-content:space-between!important;align-items:flex-start!important;gap:14px!important;padding:14px 16px 11px 19px!important;border-bottom:1px solid rgba(100,145,190,.10)!important}
html body.p57-product-shell .p57-resp-row>header>div:first-child{display:grid!important;gap:3px!important;min-width:0!important}
html body.p57-product-shell .p57-resp-row>header b{font-size:17px!important;line-height:1.3!important;color:#223F59!important;white-space:normal!important}
html body.p57-product-shell .p57-resp-row>header span{font-size:13px!important;line-height:1.4!important;color:#638098!important}
html body.p57-product-shell .p57-resp-counts{display:flex!important;flex-wrap:wrap!important;gap:6px!important;justify-content:flex-end!important}
html body.p57-product-shell .p57-resp-counts em{font-style:normal!important;font-size:13px!important;font-weight:750!important;color:#4C718F!important;background:#F1F7FC!important;border:1px solid rgba(94,144,195,.10)!important;border-radius:999px!important;padding:4px 8px!important;white-space:nowrap!important}
html body.p57-product-shell .p57-resp-body{display:grid!important;padding:4px 16px 5px 19px!important}
html body.p57-product-shell .p57-resp-body p{display:grid!important;grid-template-columns:74px minmax(0,1fr)!important;gap:10px!important;align-items:start!important;margin:0!important;padding:8px 0!important;border-bottom:1px dashed rgba(104,145,185,.12)!important}
html body.p57-product-shell .p57-resp-body p:last-child{border-bottom:0!important}
html body.p57-product-shell .p57-resp-body span{font-size:13px!important;color:#758B9D!important;line-height:1.48!important}
html body.p57-product-shell .p57-resp-body b{font-size:13px!important;line-height:1.52!important;font-weight:650!important;color:#36546E!important;white-space:normal!important;word-break:break-word!important}
html body.p57-product-shell .p57-resp-row>footer{display:grid!important;grid-template-columns:54px minmax(0,1fr)!important;gap:10px!important;align-items:start!important;padding:11px 16px 13px 19px!important;background:linear-gradient(90deg,rgba(241,248,255,.82),rgba(249,247,255,.72))!important}
html body.p57-product-shell .p57-resp-row>footer span{font-size:13px!important;color:#6A8498!important;line-height:1.48!important}
html body.p57-product-shell .p57-resp-row>footer b{font-size:13px!important;line-height:1.5!important;color:#2E5875!important;white-space:normal!important}
html body.p57-product-shell .p57-resp-empty{display:grid!important;gap:6px!important;padding:18px!important;border:1px solid rgba(95,142,192,.14)!important;border-radius:16px!important;background:#FBFDFF!important}
html body.p57-product-shell .p57-resp-empty b{font-size:16px!important;color:#284861!important}
html body.p57-product-shell .p57-resp-empty span{font-size:13px!important;line-height:1.55!important;color:#6B8296!important}
html body.p57-product-shell .p57-history-state{display:grid!important;grid-template-columns:minmax(0,1.1fr) minmax(390px,.9fr)!important;gap:20px!important;padding:23px!important;margin:16px 0!important;border:1px solid rgba(93,142,195,.16)!important;border-radius:21px!important;background:linear-gradient(135deg,#FFFFFF,#F2FAFF,#FAF7FF)!important;box-shadow:0 14px 34px rgba(73,111,150,.06)!important}
html body.p57-product-shell .p57-history-state>div:first-child span{display:block!important;font-size:13px!important;color:#6686A0!important;margin-bottom:6px!important}
html body.p57-product-shell .p57-history-state h3{font-size:22px!important;line-height:1.35!important;color:#223F59!important;margin:0 0 9px!important}
html body.p57-product-shell .p57-history-state p{font-size:14px!important;line-height:1.62!important;color:#617B91!important;margin:0!important}
html body.p57-product-shell .p57-history-facts{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:9px!important}
html body.p57-product-shell .p57-history-facts article{display:grid!important;gap:4px!important;padding:12px!important;border-radius:13px!important;background:rgba(255,255,255,.90)!important;border:1px solid rgba(104,146,192,.12)!important}
html body.p57-product-shell .p57-history-facts span{font-size:13px!important;color:#70879A!important}
html body.p57-product-shell .p57-history-facts b{font-size:19px!important;color:#2B4A63!important;font-variant-numeric:tabular-nums!important}
html body.p57-product-shell .p57-hidden{display:none!important}
html body.p57-product-shell #patrolAnalysisZone .patrol-map-actions{display:flex!important;flex-wrap:wrap!important;gap:8px!important;align-items:center!important}
html body.p57-product-shell #patrolAnalysisZone .patrol-map-actions button{min-height:40px!important;height:auto!important;white-space:normal!important;line-height:1.35!important}
html body.p57-product-shell #patrolProjectMapPngBtn,
html body.p57-product-shell #patrolStoreMapPngBtn{background:linear-gradient(135deg,#3479C4,#559DE3)!important;color:#fff!important;border-color:transparent!important}
@media(max-width:1280px){
 html body.p57-product-shell .p57-responsibility-explain{grid-template-columns:1fr!important}
 html body.p57-product-shell #p7ResponsibilityKpis{grid-template-columns:repeat(3,minmax(0,1fr))!important}
 html body.p57-product-shell .p57-responsibility-list{grid-template-columns:1fr!important}
 html body.p57-product-shell .p57-history-state{grid-template-columns:1fr!important}
}
@media(max-width:760px){
 html body.p57-product-shell #patrolPersonZone .p7-module-head{grid-template-columns:1fr!important}
 html body.p57-product-shell #patrolPersonZone .p7-responsibility-actions{justify-content:flex-start!important;max-width:none!important}
 html body.p57-product-shell #p7ResponsibilityKpis{grid-template-columns:repeat(2,minmax(0,1fr))!important}
 html body.p57-product-shell .p57-resp-row>header{flex-direction:column!important}
 html body.p57-product-shell .p57-resp-counts{justify-content:flex-start!important}
 html body.p57-product-shell .p57-resp-body p{grid-template-columns:1fr!important;gap:3px!important}
 html body.p57-product-shell .p57-history-facts{grid-template-columns:1fr!important}
}
@media(max-width:520px){html body.p57-product-shell #p7ResponsibilityKpis{grid-template-columns:1fr!important}}


/* P58 premium GIS / export finishing layer */
body.p58-product-shell #p51PinToolbarHint{white-space:normal;line-height:1.55;overflow-wrap:anywhere}
body.p58-product-shell .patrol-map-actions{align-items:center}
body.p58-product-shell .patrol-map-actions .btn{min-height:38px}


/* ========================================================================
   P59 — readable GIS, whole-map viewer, responsibility tiers, module export
   ======================================================================== */
html body.patrol-mode.patrol-standalone.p59-product-shell #p7ProjectGridChart .p7-bar-row{padding-left:12px!important}
html body.patrol-mode.patrol-standalone.p59-product-shell #p7ProjectGridChart .p7-bar-row::before,
html body.patrol-mode.patrol-standalone.p59-product-shell #p7ProjectGapList .p15-gap-priority::before{display:none!important;content:none!important}
html body.patrol-mode.patrol-standalone.p59-product-shell #p7ProjectGapList .p15-gap-priority{padding-left:14px!important;border-left:4px solid #8fb7df!important}
html body.patrol-mode.patrol-standalone.p59-product-shell #p7ProjectGapList .p15-gap-priority.danger{border-left-color:#dc737d!important}
html body.patrol-mode.patrol-standalone.p59-product-shell #p7ProjectGapList .p15-gap-priority.warn{border-left-color:#d8a14e!important}
html body.patrol-mode.patrol-standalone.p59-product-shell #p7ProjectGapList .p15-gap-priority.good{border-left-color:#69a782!important}
/* Project KPI row: match the calmer sizing already working well on the store page. */
html body.patrol-mode.patrol-standalone.p59-product-shell #p7ProjectWorkspace .p7-domain-kpis>article{min-height:112px!important;padding:15px 18px!important}
html body.patrol-mode.patrol-standalone.p59-product-shell #p7ProjectWorkspace .p7-domain-kpis>article>strong{font-size:26px!important;line-height:1.12!important;letter-spacing:-.025em!important;margin-top:8px!important}
html body.patrol-mode.patrol-standalone.p59-product-shell #p7ProjectWorkspace .p7-domain-kpis>article>span{font-size:13.5px!important;line-height:1.4!important}
html body.patrol-mode.patrol-standalone.p59-product-shell #p7ProjectWorkspace .p7-domain-kpis>article>small{font-size:12.8px!important;line-height:1.48!important;margin-top:6px!important}
/* Responsibility: explicitly grouped, no mystery ordering. */
html body.patrol-mode.patrol-standalone.p59-product-shell .p59-responsibility-explain{grid-template-columns:minmax(0,1fr) auto!important;align-items:stretch!important}
html body.patrol-mode.patrol-standalone.p59-product-shell .p59-responsibility-explain h3{font-size:19px!important}
html body.patrol-mode.patrol-standalone.p59-product-shell .p59-responsibility-explain p{font-size:13.5px!important;line-height:1.72!important}
html body.patrol-mode.patrol-standalone.p59-product-shell .p59-tier-summary{display:grid!important;grid-template-columns:repeat(3,minmax(92px,1fr))!important;gap:9px!important;min-width:330px!important}
html body.patrol-mode.patrol-standalone.p59-product-shell .p59-tier-summary>span{display:grid!important;place-items:center!important;align-content:center!important;gap:3px!important;border-radius:16px!important;padding:14px 10px!important;border:1px solid rgba(91,139,188,.13)!important;background:#f6faff!important}
html body.patrol-mode.patrol-standalone.p59-product-shell .p59-tier-summary .t1{background:#fff4f5!important;border-color:rgba(220,105,118,.18)!important}
html body.patrol-mode.patrol-standalone.p59-product-shell .p59-tier-summary .t2{background:#fff8ed!important;border-color:rgba(206,151,69,.18)!important}
html body.patrol-mode.patrol-standalone.p59-product-shell .p59-tier-summary .t3{background:#f2faf6!important;border-color:rgba(86,157,118,.16)!important}
html body.patrol-mode.patrol-standalone.p59-product-shell .p59-tier-summary b{font-size:27px!important;line-height:1!important;color:#274965!important}
html body.patrol-mode.patrol-standalone.p59-product-shell .p59-tier-summary small{font-size:12.5px!important;color:#70879a!important}
html body.patrol-mode.patrol-standalone.p59-product-shell .p59-responsibility-tiers{display:grid!important;gap:22px!important}
html body.patrol-mode.patrol-standalone.p59-product-shell .p59-resp-tier{display:grid!important;gap:12px!important;padding:16px!important;border:1px solid rgba(84,132,181,.13)!important;border-radius:20px!important;background:rgba(249,252,255,.82)!important}
html body.patrol-mode.patrol-standalone.p59-product-shell .p59-resp-tier>header{display:flex!important;justify-content:space-between!important;align-items:center!important;gap:18px!important;padding:2px 3px 4px!important}
html body.patrol-mode.patrol-standalone.p59-product-shell .p59-resp-tier>header>div{min-width:0!important}
html body.patrol-mode.patrol-standalone.p59-product-shell .p59-resp-tier>header span{display:inline-block!important;font-size:12px!important;font-weight:800!important;padding:4px 8px!important;border-radius:999px!important;background:#eef5fd!important;color:#5b7e9d!important}
html body.patrol-mode.patrol-standalone.p59-product-shell .p59-resp-tier.tier-1>header span{background:#fff0f2!important;color:#bd5b68!important}
html body.patrol-mode.patrol-standalone.p59-product-shell .p59-resp-tier.tier-2>header span{background:#fff4df!important;color:#a9762c!important}
html body.patrol-mode.patrol-standalone.p59-product-shell .p59-resp-tier.tier-3>header span{background:#eef8f2!important;color:#508369!important}
html body.patrol-mode.patrol-standalone.p59-product-shell .p59-resp-tier>header h4{margin:6px 0 3px!important;font-size:18px!important;color:#24435d!important}
html body.patrol-mode.patrol-standalone.p59-product-shell .p59-resp-tier>header p{margin:0!important;font-size:13px!important;line-height:1.55!important;color:#708598!important}
html body.patrol-mode.patrol-standalone.p59-product-shell .p59-resp-tier>header>strong{font-size:13px!important;color:#56738c!important;white-space:nowrap!important}
html body.patrol-mode.patrol-standalone.p59-product-shell .p59-tier-reason{display:grid!important;grid-template-columns:auto minmax(0,1fr)!important;gap:9px!important;align-items:start!important;margin:9px 18px 0!important;padding:9px 10px!important;border-radius:12px!important;background:#f6f9fd!important}
html body.patrol-mode.patrol-standalone.p59-product-shell .p59-tier-reason span{font-size:12px!important;font-weight:800!important;color:#5f7e98!important;white-space:nowrap!important}
html body.patrol-mode.patrol-standalone.p59-product-shell .p59-tier-reason b{font-size:12.5px!important;line-height:1.5!important;color:#3d5b73!important}
/* Whole-map HD viewer: the composed canvas itself scales; no geometry rerender. */
html body.patrol-mode.patrol-standalone.p59-product-shell #patrolMapPreviewDialog{width:min(98vw,1900px)!important;max-width:min(98vw,1900px)!important;height:96vh!important;max-height:96vh!important}
html body.patrol-mode.patrol-standalone.p59-product-shell #patrolMapPreviewDialog .patrol-map-preview-body{display:block!important;position:relative!important;height:calc(96vh - 78px)!important;max-height:none!important;overflow:auto!important;padding:12px!important;background:linear-gradient(145deg,#eef7ff,#f9fbff)!important;scrollbar-gutter:stable both-edges!important}
html body.patrol-mode.patrol-standalone.p59-product-shell #patrolMapPreviewDialog .patrol-building-popup-zoom{display:none!important}
html body.patrol-mode.patrol-standalone.p59-product-shell #patrolMapPreviewDialog .patrol-map-canvas-shell{display:block!important;width:max-content!important;height:max-content!important;min-width:100%!important;min-height:100%!important;padding:12px!important;margin:0!important;overflow:visible!important;background:transparent!important}
html body.patrol-mode.patrol-standalone.p59-product-shell #patrolZoomMapBoard{display:block!important;margin:auto!important;width:auto;height:auto;max-width:none!important;max-height:none!important;aspect-ratio:5/4!important;object-fit:contain!important;box-shadow:0 14px 38px rgba(57,95,133,.12)!important;border-radius:16px!important;background:#fff!important}
html body.patrol-mode.patrol-standalone.p59-product-shell #patrolMapPreviewDialog .patrol-map-tool-hint{font-size:12.5px!important;color:#647e94!important;white-space:normal!important;max-width:390px!important}
/* Module-level export controls: visible but quiet; text labels, no invented abbreviation icons. */
html body.patrol-mode.patrol-standalone.p59-product-shell .p59-panel-export-tools{margin-left:auto!important;display:flex!important;align-items:center!important;gap:6px!important;flex-wrap:wrap!important}
html body.patrol-mode.patrol-standalone.p59-product-shell .p59-panel-export-tools>span{font-size:12px!important;color:#8191a0!important;margin-right:2px!important}
html body.patrol-mode.patrol-standalone.p59-product-shell .p59-panel-export-tools button,
html body.patrol-mode.patrol-standalone.p59-product-shell .p59-standalone-export-tools button{appearance:none!important;border:1px solid rgba(81,130,181,.18)!important;border-radius:9px!important;background:#f7fbff!important;color:#4d7190!important;font:700 12px/1 "Microsoft YaHei",sans-serif!important;padding:7px 9px!important;cursor:pointer!important;min-height:30px!important}
html body.patrol-mode.patrol-standalone.p59-product-shell .p59-panel-export-tools button:hover,
html body.patrol-mode.patrol-standalone.p59-product-shell .p59-standalone-export-tools button:hover{background:#edf6ff!important;border-color:rgba(71,130,193,.3)!important;color:#34658d!important}
html body.patrol-mode.patrol-standalone.p59-product-shell .p59-standalone-export-tools{display:flex!important;align-items:center!important;justify-content:space-between!important;gap:12px!important;margin:3px 0 8px!important;padding:0 2px!important}
html body.patrol-mode.patrol-standalone.p59-product-shell .p59-standalone-export-tools>span{font-size:12.5px!important;font-weight:750!important;color:#6c8497!important}
html body.patrol-mode.patrol-standalone.p59-product-shell .p59-standalone-export-tools>div{display:flex!important;gap:6px!important}
@media(max-width:900px){html body.patrol-mode.patrol-standalone.p59-product-shell .p59-responsibility-explain{grid-template-columns:1fr!important}html body.patrol-mode.patrol-standalone.p59-product-shell .p59-tier-summary{min-width:0!important}html body.patrol-mode.patrol-standalone.p59-product-shell .p59-resp-tier>header{align-items:flex-start!important;flex-direction:column!important}html body.patrol-mode.patrol-standalone.p59-product-shell .p59-panel-export-tools{width:100%!important;margin:8px 0 0!important}html body.patrol-mode.patrol-standalone.p59-product-shell #patrolMapPreviewDialog .patrol-map-preview-body{height:calc(100vh - 118px)!important}}
/* P59 final specificity guard: project KPI sizing must beat the old P19 two-ID 44px rule. */
html body.patrol-mode.patrol-standalone.p59-product-shell #patrolPage#patrolPage #p7ProjectWorkspace #p7ProjectKpis.p7-domain-kpis>article>strong{font-size:26px!important;line-height:1.12!important;margin-top:8px!important}
html body.patrol-mode.patrol-standalone.p59-product-shell #patrolPage#patrolPage #p7ProjectWorkspace #p7ProjectKpis.p7-domain-kpis>article>span{font-size:13.5px!important;line-height:1.4!important}
html body.patrol-mode.patrol-standalone.p59-product-shell #patrolPage#patrolPage #p7ProjectWorkspace #p7ProjectKpis.p7-domain-kpis>article>small{font-size:12.8px!important;line-height:1.48!important}
/* Remove legacy text-glyph pseudo-icons when the adjacent Chinese text already states the meaning. */
html body.patrol-mode.patrol-standalone.p59-product-shell #p15ResponsibilityAnchor::before,
html body.patrol-mode.patrol-standalone.p59-product-shell #p7ProjectWorkspace :is(.p15-scope-note,.p15-project-scope-note,.p15-project-governance-note,.p16-project-scope-note)::before,
html body.patrol-mode.patrol-standalone.p59-product-shell #p7ProjectWorkspace #p14ProjectMetricScope::before,
html body.patrol-mode.patrol-standalone.p59-product-shell #p7ProjectWorkspace #p15ProjectDataGapNote::before{display:none!important;content:none!important}
html body.patrol-mode.patrol-standalone.p59-product-shell #p7ProjectWorkspace :is(.p15-scope-note,.p15-project-scope-note,.p15-project-governance-note,.p16-project-scope-note),
html body.patrol-mode.patrol-standalone.p59-product-shell #p7ProjectWorkspace :is(#p14ProjectMetricScope,#p15ProjectDataGapNote){padding-left:14px!important}

/* ========================================================================
   P60 — GIS global routing / whole-map fit / clarity convergence
   ======================================================================== */
body.p60-product-shell #patrolPinnedCount{
  min-width:0!important;
  white-space:normal!important;
  line-height:1.45!important;
  text-align:left!important;
}
body.p60-product-shell #p51PinToolbarHint{
  white-space:normal!important;
  overflow:visible!important;
  text-overflow:clip!important;
  line-height:1.55!important;
}
body.p60-product-shell #patrolProjectMapZoomBtn,
body.p60-product-shell #patrolStoreMapZoomBtn{
  min-width:118px!important;
}
body.p60-product-shell #patrolMapPreviewDialog{
  width:min(98vw,1880px)!important;
  height:min(97vh,1180px)!important;
  max-width:none!important;
  max-height:none!important;
  overflow:hidden!important;
  background:linear-gradient(150deg,rgba(248,252,255,.995),rgba(244,249,255,.995) 58%,rgba(249,247,255,.995))!important;
}
body.p60-product-shell #patrolMapPreviewDialog .patrol-map-preview-body{
  position:relative!important;
  overflow:auto!important;
  min-height:0!important;
  overscroll-behavior:contain!important;
  padding:12px!important;
  background:linear-gradient(145deg,rgba(241,248,255,.92),rgba(250,252,255,.96))!important;
  scrollbar-gutter:stable both-edges;
}
body.p60-product-shell #patrolMapPreviewDialog .patrol-map-canvas-shell,
body.p60-product-shell #patrolMapPreviewDialog .p17-map-canvas-shell{
  min-width:100%!important;
  min-height:100%!important;
}
body.p60-product-shell #patrolZoomMapBoard{
  display:block!important;
  flex:0 0 auto!important;
  object-fit:contain!important;
  image-rendering:auto!important;
  background:#fff!important;
  box-shadow:0 16px 42px rgba(73,112,150,.13)!important;
  border:1px solid rgba(94,145,192,.20)!important;
  border-radius:14px!important;
  transform:none!important;
}
body.p60-product-shell #patrolMapPreviewDialog .patrol-map-preview-toolbar{
  position:relative!important;
  z-index:3!important;
  flex-wrap:wrap!important;
  gap:8px!important;
}
body.p60-product-shell #patrolMapPreviewDialog .patrol-map-tool-hint,
body.p60-product-shell #p33ZoomSelection{
  white-space:normal!important;
  line-height:1.55!important;
}
body.p60-product-shell #patrolProjectMapBoard,
body.p60-product-shell #patrolStoreMapBoard{
  aspect-ratio:5/4!important;
  height:auto!important;
}
body.p60-product-shell .p59-no-text-icon::before,
body.p60-product-shell #p7ProjectGridChart .p7-bar-row::before{
  display:none!important;
  content:none!important;
}
@media(max-width:900px){
 body.p60-product-shell #patrolMapPreviewDialog{width:99vw!important;height:98vh!important;border-radius:18px!important}
 body.p60-product-shell #patrolMapPreviewDialog .patrol-map-preview-body{padding:8px!important}
}
body.p60-product-shell .p60-pin-batch-bar{
  display:flex;
  align-items:center;
  justify-content:flex-end;
  gap:8px;
  flex-wrap:wrap;
  width:100%;
  margin-top:6px;
  padding-top:8px;
  border-top:1px solid rgba(95,142,187,.13);
}
body.p60-product-shell .p60-pin-batch-bar[hidden]{display:none!important}
body.p60-product-shell .p60-pin-batch-bar span{
  color:#5d7690;
  font-size:13px;
  font-weight:650;
  line-height:1.45;
}
body.p60-product-shell .p60-pin-batch-bar button{
  min-height:34px;
  padding:0 12px;
  border-radius:10px;
  border:1px solid rgba(86,139,194,.22);
  background:rgba(255,255,255,.86);
  color:#3f6585;
  font-size:13px;
  font-weight:700;
}
body.p60-product-shell .p60-pin-batch-bar button:disabled{opacity:.42;cursor:default}

/* P60 GIS batch jump + map entrance clarity */
body.p60-product-shell .p60-pin-batch-bar{display:flex;align-items:center;gap:8px;flex-wrap:wrap}
body.p60-product-shell .p60-pin-batch-bar[hidden]{display:none!important}
body.p60-product-shell .p60-pin-batch-jump{display:inline-flex;align-items:center;gap:7px;font-size:13px;color:#5b7087;white-space:nowrap}
body.p60-product-shell .p60-pin-batch-jump select{min-height:34px;padding:5px 30px 5px 10px;border:1px solid rgba(115,153,196,.28);border-radius:10px;background:#fff;color:#274760;font:600 13px/1.2 "Microsoft YaHei",sans-serif;box-shadow:0 5px 16px rgba(73,119,169,.06)}
body.p60-product-shell .p60-pin-batch-bar>span{flex:1 1 420px;min-width:260px;line-height:1.55}
@media(max-width:760px){body.p60-product-shell .p60-pin-batch-bar>span{flex-basis:100%;min-width:0;order:-1}body.p60-product-shell .p60-pin-batch-jump{flex:1 1 auto}}


/* ========================================================================
   P61 — GIS zero-cover callouts, association spotlight, dense-map focus
   ======================================================================== */
body.p61-product-shell #patrolPinnedCount,
body.p61-product-shell #p51PinToolbarHint{white-space:normal!important;overflow:visible!important;text-overflow:clip!important;line-height:1.55!important}
body.p61-product-shell .p61-pin-batch-bar{display:flex;align-items:center;justify-content:flex-end;gap:8px;flex-wrap:wrap;width:100%;margin-top:7px;padding-top:9px;border-top:1px solid rgba(95,142,187,.14)}
body.p61-product-shell .p61-pin-batch-bar[hidden]{display:none!important}
body.p61-product-shell .p61-pin-batch-bar>span{flex:1 1 430px;min-width:260px;color:#536f8a;font-size:13px;font-weight:650;line-height:1.55}
body.p61-product-shell .p61-pin-batch-bar button{min-height:36px;padding:0 13px;border-radius:11px;border:1px solid rgba(86,139,194,.23);background:rgba(255,255,255,.92);color:#365f82;font-size:13px;font-weight:750;box-shadow:0 5px 15px rgba(67,112,163,.05)}
body.p61-product-shell .p61-pin-batch-bar button:hover:not(:disabled){border-color:rgba(62,126,196,.40);background:#fff;transform:translateY(-1px)}
body.p61-product-shell .p61-pin-batch-bar button:disabled{opacity:.40;cursor:default;transform:none}
body.p61-product-shell .p61-pin-batch-jump{display:inline-flex;align-items:center;gap:7px;font-size:13px;color:#536f8a;white-space:nowrap}
body.p61-product-shell .p61-pin-batch-jump select{min-height:36px;max-width:330px;padding:5px 31px 5px 11px;border:1px solid rgba(115,153,196,.29);border-radius:11px;background:#fff;color:#274760;font:650 13px/1.2 "Microsoft YaHei",sans-serif;box-shadow:0 5px 16px rgba(73,119,169,.06)}
body.p61-product-shell #patrolMapPreviewDialog .patrol-map-tool-hint{font-size:13px!important;color:#607a94!important}
body.p61-product-shell #patrolZoomMapBoard[data-p61-hd="1"]{user-select:none!important;-webkit-user-select:none!important}
@media(max-width:760px){body.p61-product-shell .p61-pin-batch-bar>span{flex-basis:100%;min-width:0;order:-1}body.p61-product-shell .p61-pin-batch-jump{flex:1 1 100%;white-space:normal}body.p61-product-shell .p61-pin-batch-jump select{max-width:min(100%,360px);flex:1 1 auto}}


/* P62 — GIS association clarity / true-HD viewer */
body.p62-product-shell #p61PinBatchBar{border-color:rgba(93,151,212,.20);background:linear-gradient(135deg,rgba(248,252,255,.96),rgba(243,249,255,.91));}
body.p62-product-shell #p51PinToolbarHint{line-height:1.55;}
body.p62-product-shell #patrolMapPreviewDialog .patrol-map-tool-hint{font-weight:600;color:#55728d;}
body.p62-product-shell #patrolMapPreviewDialog canvas[data-p62-hd="1"]{image-rendering:auto;}

/* P63: GIS text-boundary and click-performance stabilization; visual authority inherits P62. */

/* P64 — readable outcomes and compact, consistent export controls */
html body.patrol-mode.patrol-standalone.p64-product-shell .p64-panel-export-tools{margin-left:auto!important;display:flex!important;align-items:center!important;gap:7px!important;flex-wrap:wrap!important}
html body.patrol-mode.patrol-standalone.p64-product-shell .p64-panel-export-tools>span{font-size:13px!important;font-weight:700!important;color:#71889b!important;margin-right:2px!important}
html body.patrol-mode.patrol-standalone.p64-product-shell .p64-panel-export-tools button,
html body.patrol-mode.patrol-standalone.p64-product-shell .p64-standalone-export-tools button{appearance:none!important;border:1px solid rgba(70,126,184,.2)!important;border-radius:10px!important;background:linear-gradient(180deg,#fbfdff,#f1f7ff)!important;color:#426b8e!important;font:750 13px/1 "Microsoft YaHei",sans-serif!important;padding:8px 11px!important;cursor:pointer!important;min-height:34px!important;box-shadow:0 4px 12px rgba(55,111,166,.06)!important}
html body.patrol-mode.patrol-standalone.p64-product-shell .p64-panel-export-tools button:hover,
html body.patrol-mode.patrol-standalone.p64-product-shell .p64-standalone-export-tools button:hover{background:#eaf5ff!important;border-color:rgba(57,119,184,.32)!important;color:#2e628d!important;transform:translateY(-1px)!important}
html body.patrol-mode.patrol-standalone.p64-product-shell .p64-standalone-export-tools{display:flex!important;align-items:center!important;justify-content:space-between!important;gap:14px!important;margin:5px 0 10px!important;padding:0 2px!important}
html body.patrol-mode.patrol-standalone.p64-product-shell .p64-standalone-export-tools>span{font-size:13px!important;font-weight:750!important;color:#627d94!important}
html body.patrol-mode.patrol-standalone.p64-product-shell .p64-standalone-export-tools>div{display:flex!important;gap:7px!important}
@media(max-width:900px){html body.patrol-mode.patrol-standalone.p64-product-shell .p64-panel-export-tools{width:100%!important;margin:8px 0 0!important}html body.patrol-mode.patrol-standalone.p64-product-shell .p64-standalone-export-tools{align-items:flex-start!important;flex-direction:column!important}}

/* ======================================================================
   P65 — map-first reading surface + no-clipping actions + export dedupe
   ====================================================================== */
html body.patrol-mode.patrol-standalone.p65-product-shell #patrolAnalysisZone .patrol-map-intelligence-layout{
  grid-template-columns:minmax(0,1fr)!important;gap:16px!important;align-items:start!important;
}
html body.patrol-mode.patrol-standalone.p65-product-shell #patrolAnalysisZone .patrol-map-visual-column{min-width:0!important;width:100%!important}
html body.patrol-mode.patrol-standalone.p65-product-shell #patrolAnalysisZone .patrol-map-canvas-shell{width:100%!important;max-width:none!important}
html body.patrol-mode.patrol-standalone.p65-product-shell #patrolAnalysisZone :is(#patrolProjectMapBoard,#patrolStoreMapBoard){width:100%!important;height:auto!important;aspect-ratio:5/4!important;display:block!important;max-width:none!important}
html body.patrol-mode.patrol-standalone.p65-product-shell #patrolAnalysisZone .patrol-map-intelligence-panel{
  width:100%!important;max-width:none!important;display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:12px!important;align-items:start!important;padding:14px!important;
}
html body.patrol-mode.patrol-standalone.p65-product-shell #patrolAnalysisZone .patrol-map-intelligence-panel>.patrol-map-intelligence-title,
html body.patrol-mode.patrol-standalone.p65-product-shell #patrolAnalysisZone .patrol-map-intelligence-panel>.patrol-map-metric-strip,
html body.patrol-mode.patrol-standalone.p65-product-shell #patrolAnalysisZone .patrol-map-intelligence-panel>.hf30-map-quickread{grid-column:1/-1!important}
html body.patrol-mode.patrol-standalone.p65-product-shell #patrolAnalysisZone .patrol-map-insight-section{margin:0!important;min-height:0!important;height:auto!important}
html body.patrol-mode.patrol-standalone.p65-product-shell #patrolAnalysisZone .patrol-map-priority-row small{white-space:normal!important;overflow:visible!important;text-overflow:clip!important;display:block!important;line-height:1.45!important;min-height:0!important;max-height:none!important}
html body.patrol-mode.patrol-standalone.p65-product-shell #patrolAnalysisZone .patrol-map-priority-row{height:auto!important;min-height:68px!important;align-items:start!important}
@media(max-width:1180px){html body.patrol-mode.patrol-standalone.p65-product-shell #patrolAnalysisZone .patrol-map-intelligence-panel{grid-template-columns:repeat(2,minmax(0,1fr))!important}}
@media(max-width:760px){html body.patrol-mode.patrol-standalone.p65-product-shell #patrolAnalysisZone .patrol-map-intelligence-panel{grid-template-columns:1fr!important}}

html body.patrol-mode.patrol-standalone.p65-product-shell .p48-task{grid-template-columns:30px minmax(0,1fr) 16px!important;grid-auto-rows:auto!important;min-height:94px!important;padding:11px 12px!important;align-items:start!important}
html body.patrol-mode.patrol-standalone.p65-product-shell .p48-task-icon{grid-column:1!important;grid-row:1 / span 3!important;align-self:start!important;margin-top:3px!important}
html body.patrol-mode.patrol-standalone.p65-product-shell .p48-task-copy{grid-column:2!important;grid-row:1 / span 2!important;gap:3px!important}
html body.patrol-mode.patrol-standalone.p65-product-shell .p48-task-copy b,
html body.patrol-mode.patrol-standalone.p65-product-shell .p48-task-copy em{white-space:normal!important;overflow:visible!important;text-overflow:clip!important;display:-webkit-box!important;-webkit-box-orient:vertical!important;-webkit-line-clamp:2!important;line-height:1.4!important}
html body.patrol-mode.patrol-standalone.p65-product-shell .p48-task>strong{grid-column:2!important;grid-row:3!important;justify-self:start!important;margin-top:3px!important;font-size:13.5px!important}
html body.patrol-mode.patrol-standalone.p65-product-shell .p48-task-arrow{grid-column:3!important;grid-row:1 / span 3!important;align-self:center!important}

html body.patrol-mode.patrol-standalone.p65-product-shell .p59-panel-export-tools,
html body.patrol-mode.patrol-standalone.p65-product-shell .p59-standalone-export-tools{display:none!important}
html body.patrol-mode.patrol-standalone.p65-product-shell .p64-panel-export-tools,
html body.patrol-mode.patrol-standalone.p65-product-shell .p64-standalone-export-tools{min-width:max-content!important;width:auto!important;max-width:100%!important;writing-mode:horizontal-tb!important;white-space:nowrap!important;flex-wrap:nowrap!important}
html body.patrol-mode.patrol-standalone.p65-product-shell .p64-panel-export-tools span,
html body.patrol-mode.patrol-standalone.p65-product-shell .p64-standalone-export-tools span{font-size:13px!important;white-space:nowrap!important}
html body.patrol-mode.patrol-standalone.p65-product-shell #patrolOutputZone .patrol-schema-badge{width:auto!important;min-width:max-content!important;max-width:none!important;white-space:nowrap!important;overflow:visible!important;text-overflow:clip!important;padding-inline:10px!important}

/* P65 responsive readability follow-up: no leaf text clipping at working widths */
html body.patrol-mode.patrol-standalone.p65-product-shell .p15-completeness-bar small,
html body.patrol-mode.patrol-standalone.p65-product-shell .patrol-progress-card.na b,
html body.patrol-mode.patrol-standalone.p65-product-shell .p4-viz-kpis small{
  white-space:normal!important;overflow:visible!important;text-overflow:clip!important;height:auto!important;max-height:none!important;line-height:1.45!important;
}
html body.patrol-mode.patrol-standalone.p65-product-shell #patrolProgressStatus{
  width:auto!important;min-width:min(100%,180px)!important;max-width:100%!important;white-space:normal!important;overflow:visible!important;text-overflow:clip!important;line-height:1.4!important;height:auto!important;
}
@media(max-width:1350px){
 html body.patrol-mode.patrol-standalone.p65-product-shell .p48-task-list{grid-template-columns:repeat(2,minmax(0,1fr))!important}
 html body.patrol-mode.patrol-standalone.p65-product-shell .p48-task{min-height:108px!important}
 html body.patrol-mode.patrol-standalone.p65-product-shell .p48-task-copy b,
 html body.patrol-mode.patrol-standalone.p65-product-shell .p48-task-copy em{-webkit-line-clamp:3!important}
}
@media(max-width:760px){
 html body.patrol-mode.patrol-standalone.p65-product-shell .p48-task-list{grid-template-columns:1fr!important}
 html body.patrol-mode.patrol-standalone.p65-product-shell .p48-task{min-height:0!important}
 html body.patrol-mode.patrol-standalone.p65-product-shell .p48-history-plan-grid{grid-template-columns:1fr!important;gap:10px!important}
 html body.patrol-mode.patrol-standalone.p65-product-shell .p48-history-plan-grid span{display:block!important;width:auto!important;min-width:0!important;height:auto!important;white-space:normal!important;writing-mode:horizontal-tb!important;overflow:visible!important;text-overflow:clip!important;line-height:1.5!important}
}
@media(max-width:1350px){
 html body.patrol-mode.patrol-standalone.p65-product-shell .patrol-progress-overview{grid-template-columns:repeat(2,minmax(0,1fr))!important}
}
@media(max-width:760px){
 html body.patrol-mode.patrol-standalone.p65-product-shell .patrol-progress-overview{grid-template-columns:1fr!important}
 html body.patrol-mode.patrol-standalone.p65-product-shell .patrol-progress-overview-panel>.patrol-panel-head{display:grid!important;grid-template-columns:1fr!important;gap:9px!important;align-items:start!important}
 html body.patrol-mode.patrol-standalone.p65-product-shell .patrol-progress-overview-panel #patrolProgressStatus{justify-self:start!important;width:auto!important;min-width:0!important}
 html body.patrol-mode.patrol-standalone.p65-product-shell .patrol-progress-overview-panel .p64-panel-export-tools{justify-self:start!important;width:auto!important;margin:0!important}
 html body.patrol-mode.patrol-standalone.p65-product-shell .p47-history-baseline{grid-template-columns:1fr!important;gap:14px!important}
 html body.patrol-mode.patrol-standalone.p65-product-shell .p48-history-plan,
 html body.patrol-mode.patrol-standalone.p65-product-shell .p48-history-plan-grid{width:100%!important;min-width:0!important;max-width:none!important;grid-template-columns:1fr!important}
 html body.patrol-mode.patrol-standalone.p65-product-shell .p48-history-plan-grid article{width:100%!important;min-width:0!important;display:grid!important;grid-template-columns:24px minmax(0,1fr)!important;grid-template-rows:auto auto!important;column-gap:9px!important}
 html body.patrol-mode.patrol-standalone.p65-product-shell .p48-history-plan-grid article svg{grid-column:1!important;grid-row:1 / span 2!important}
 html body.patrol-mode.patrol-standalone.p65-product-shell .p48-history-plan-grid article b,
 html body.patrol-mode.patrol-standalone.p65-product-shell .p48-history-plan-grid article span{grid-column:2!important;width:auto!important;min-width:0!important}
}
@media(max-width:1350px){
 html body.patrol-mode.patrol-standalone.p65-product-shell .patrol-progress-card footer{display:grid!important;grid-template-columns:1fr!important;gap:3px!important;align-items:start!important}
 html body.patrol-mode.patrol-standalone.p65-product-shell .patrol-progress-card footer b,
 html body.patrol-mode.patrol-standalone.p65-product-shell .patrol-progress-card footer span{width:auto!important;min-width:0!important;white-space:normal!important;text-align:left!important}
}
@media(max-width:1000px){
 html body.patrol-mode.patrol-standalone.p65-product-shell .patrol-progress-overview-panel>.patrol-panel-head{display:grid!important;grid-template-columns:1fr!important;gap:9px!important;align-items:start!important}
 html body.patrol-mode.patrol-standalone.p65-product-shell .patrol-progress-overview-panel #patrolProgressStatus{justify-self:start!important;width:auto!important;min-width:0!important;height:auto!important}
 html body.patrol-mode.patrol-standalone.p65-product-shell .patrol-progress-overview-panel .p64-panel-export-tools{justify-self:start!important;width:auto!important;margin:0!important}
}

/* P65 final table readability safeguard: long addresses wrap inside their cell. */
html body.patrol-mode.patrol-standalone.p65-product-shell .p7-object-table .p7-cell-main b,
html body.patrol-mode.patrol-standalone.p65-product-shell .p7-object-table :is(.p16-project-address,.p16-project-name) b{overflow-wrap:anywhere!important;word-break:break-word!important;white-space:normal!important;max-width:100%!important;}

/* P65 final narrow-column text integrity: long Chinese addresses must wrap inside table cells. */
html body.p65-product-shell .p7-object-table .p16-project-address .p7-cell-main > b,
html body.p65-product-shell .p7-object-table .p16-project-name .p7-cell-main > b {
  display:block !important;
  width:100% !important;
  max-width:100% !important;
  min-width:0 !important;
  overflow-wrap:anywhere !important;
  word-break:break-word !important;
  white-space:normal !important;
}


/* ======================================================================
   P66 — leadership-ready language + store grid distribution + GIS layout closure
   ====================================================================== */
html body.patrol-mode.patrol-standalone.p66-product-shell .p66-store-analysis-grid{grid-template-columns:repeat(3,minmax(0,1fr))!important;align-items:start!important}
html body.patrol-mode.patrol-standalone.p66-product-shell .p66-store-grid-chart .p7-bar-row>span{display:grid!important;gap:2px!important;min-width:0!important}
html body.patrol-mode.patrol-standalone.p66-product-shell .p66-store-grid-chart .p7-bar-row>span b{font-size:13.5px!important;line-height:1.35!important;color:#29465f!important;white-space:normal!important}
html body.patrol-mode.patrol-standalone.p66-product-shell .p66-store-grid-chart .p7-bar-row>span small{font-size:12.8px!important;line-height:1.35!important;color:#71869a!important;white-space:normal!important;overflow:visible!important;text-overflow:clip!important}
html body.patrol-mode.patrol-standalone.p66-product-shell #patrolAnalysisZone .patrol-map-intelligence-panel{grid-auto-flow:row!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;width:100%!important;align-items:start!important}
html body.patrol-mode.patrol-standalone.p66-product-shell #patrolAnalysisZone .patrol-map-intelligence-panel>.patrol-map-insight-section{display:block!important;width:100%!important;max-width:none!important;min-width:0!important}
html body.patrol-mode.patrol-standalone.p66-product-shell #patrolAnalysisZone .patrol-map-intelligence-panel>.patrol-map-intelligence-title,
html body.patrol-mode.patrol-standalone.p66-product-shell #patrolAnalysisZone .patrol-map-intelligence-panel>.patrol-map-metric-strip,
html body.patrol-mode.patrol-standalone.p66-product-shell #patrolAnalysisZone .patrol-map-intelligence-panel>.hf30-map-quickread{grid-column:1/-1!important;width:100%!important}
html body.patrol-mode.patrol-standalone.p66-product-shell #patrolAnalysisZone :is(.patrol-map-insight-section h4,.patrol-map-intelligence-title span){font-size:15px!important;line-height:1.35!important}
html body.patrol-mode.patrol-standalone.p66-product-shell #patrolAnalysisZone :is(.patrol-map-insight-section small,.patrol-map-priority-row small,.patrol-map-narrative){font-size:13px!important;line-height:1.5!important;white-space:normal!important;overflow:visible!important;text-overflow:clip!important}
html body.patrol-mode.patrol-standalone.p66-product-shell #patrolAnalysisZone .patrol-map-priority-row{min-height:72px!important;height:auto!important}
@media(max-width:1180px){html body.patrol-mode.patrol-standalone.p66-product-shell .p66-store-analysis-grid,html body.patrol-mode.patrol-standalone.p66-product-shell #patrolAnalysisZone .patrol-map-intelligence-panel{grid-template-columns:repeat(2,minmax(0,1fr))!important}}
@media(max-width:760px){html body.patrol-mode.patrol-standalone.p66-product-shell .p66-store-analysis-grid,html body.patrol-mode.patrol-standalone.p66-product-shell #patrolAnalysisZone .patrol-map-intelligence-panel{grid-template-columns:1fr!important}}

/* P66 live GIS detail dock: map for spatial relation, full readable records below. */
html body.patrol-mode.patrol-standalone.p66-product-shell .p66-map-detail-dock{margin-top:16px;padding:18px;border:1px solid rgba(64,121,174,.15);border-radius:18px;background:linear-gradient(135deg,rgba(248,252,255,.98),rgba(250,248,255,.96));box-shadow:0 10px 26px rgba(70,116,156,.06)}
html body.patrol-mode.patrol-standalone.p66-product-shell .p66-map-detail-empty{display:grid;gap:5px;padding:14px 16px;border-radius:14px;background:#fff;color:#516b80}
html body.patrol-mode.patrol-standalone.p66-product-shell .p66-map-detail-empty b{font-size:14px;line-height:1.5;color:#31516a}
html body.patrol-mode.patrol-standalone.p66-product-shell .p66-map-detail-empty span{font-size:13px;line-height:1.5}
html body.patrol-mode.patrol-standalone.p66-product-shell .p66-map-detail-head{display:flex;align-items:end;justify-content:space-between;gap:16px;margin-bottom:14px}
html body.patrol-mode.patrol-standalone.p66-product-shell .p66-map-detail-head span{font-size:12.8px;font-weight:800;color:#5c7b93}
html body.patrol-mode.patrol-standalone.p66-product-shell .p66-map-detail-head h4{margin:2px 0 3px;font-size:18px;line-height:1.35;color:#24465f}
html body.patrol-mode.patrol-standalone.p66-product-shell .p66-map-detail-head p{margin:0;font-size:13px;line-height:1.55;color:#6d8294}
html body.patrol-mode.patrol-standalone.p66-product-shell .p66-map-detail-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;align-items:start}
html body.patrol-mode.patrol-standalone.p66-product-shell .p66-map-detail-card{position:relative;min-width:0;padding:15px 16px 16px 18px;border:1px solid rgba(72,129,181,.16);border-radius:15px;background:#fff;box-shadow:0 7px 18px rgba(63,111,151,.045);overflow:hidden}
html body.patrol-mode.patrol-standalone.p66-product-shell .p66-map-detail-card:before{content:"";position:absolute;inset:0 auto 0 0;width:4px;background:var(--p66-accent,#4f8fda)}
html body.patrol-mode.patrol-standalone.p66-product-shell .p66-map-detail-card header{display:grid;grid-template-columns:32px minmax(0,1fr);gap:9px;align-items:start}
html body.patrol-mode.patrol-standalone.p66-product-shell .p66-map-detail-card header i{display:grid;place-items:center;width:30px;height:24px;border-radius:12px;background:var(--p66-accent,#4f8fda);color:#fff;font-style:normal;font-weight:900;font-size:12.5px}
html body.patrol-mode.patrol-standalone.p66-product-shell .p66-map-detail-card header b{display:block;font-size:14.2px;line-height:1.45;color:#294b65;white-space:normal;overflow:visible;text-overflow:clip}
html body.patrol-mode.patrol-standalone.p66-product-shell .p66-map-detail-card header small{display:block;margin-top:3px;font-size:12.8px;line-height:1.5;color:#708596;white-space:normal;overflow:visible;text-overflow:clip}
html body.patrol-mode.patrol-standalone.p66-product-shell .p66-map-detail-section{display:flex;align-items:center;justify-content:space-between;gap:8px;margin:11px 0 7px;padding-top:10px;border-top:1px solid rgba(77,126,168,.12)}
html body.patrol-mode.patrol-standalone.p66-product-shell .p66-map-detail-section span,html body.patrol-mode.patrol-standalone.p66-product-shell .p66-map-detail-section strong{font-size:12.8px;line-height:1.4;color:#47725e}
html body.patrol-mode.patrol-standalone.p66-product-shell .p66-map-detail-card ol{margin:0;padding-left:20px;display:grid;gap:5px}
html body.patrol-mode.patrol-standalone.p66-product-shell .p66-map-detail-card li{font-size:13px;line-height:1.52;color:#405a6d;white-space:normal;overflow-wrap:anywhere}
@media(max-width:1180px){html body.patrol-mode.patrol-standalone.p66-product-shell .p66-map-detail-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:760px){html body.patrol-mode.patrol-standalone.p66-product-shell .p66-map-detail-grid{grid-template-columns:1fr}html body.patrol-mode.patrol-standalone.p66-product-shell .p66-map-detail-dock{padding:14px}}

/* P67 functional-first: progress and unfinished work are primary; decorative structure is secondary. */
html body.p67-functional-first .p7-module-head{padding-top:22px!important;padding-bottom:22px!important;min-height:0!important}
html body.p67-functional-first .p7-module-head .grow p{max-width:920px!important;color:#61788d!important}
html body.p67-functional-first #p35ProjectTypeSummary{display:none!important}
html body.p67-functional-first #p7ProjectGridChart,
html body.p67-functional-first #p7StoreGridChart{display:block!important;min-height:0!important;background:transparent!important;overflow:visible!important}
.p67-progress-legend{display:flex;align-items:center;gap:14px;flex-wrap:wrap;padding:2px 2px 12px;color:#61778a;font-size:12.8px}
.p67-progress-legend span{display:inline-flex;align-items:center;gap:6px}.p67-progress-legend span i{width:9px;height:9px;border-radius:50%}.p67-progress-legend .zero{background:#cf6072}.p67-progress-legend .one{background:#c58a38}.p67-progress-legend .two{background:#4c9a72}.p67-progress-legend em{margin-left:auto;font-style:normal;color:#7a8da0}
.p67-progress-list{display:grid;gap:10px}.p67-progress-row{border:1px solid #dce8f1;border-radius:14px;background:#fff;padding:14px 15px 12px;box-shadow:none!important}.p67-progress-row header{display:flex;align-items:flex-start;justify-content:space-between;gap:14px}.p67-progress-row header div{min-width:0}.p67-progress-row header b{display:block;color:#24465f;font-size:14.5px}.p67-progress-row header small{display:block;margin-top:3px;color:#71879a;font-size:12.5px}.p67-progress-row header>strong{white-space:nowrap;color:#35566f;font-size:13px}
.p67-stack,.p67-store-progress,.p67-store-object-line{height:9px;margin:10px 0;border-radius:999px;background:#eaf0f5;overflow:hidden;display:flex}.p67-stack i,.p67-store-progress i{display:block;height:100%}.p67-stack .zero{background:#cf6072}.p67-stack .one{background:#c58a38}.p67-stack .two{background:#4c9a72}.p67-store-progress i{background:#3f9b78}.p67-store-object-line{background:linear-gradient(90deg,#d8e7ef,#eef4f7)}
.p67-progress-facts{display:flex;gap:7px 14px;flex-wrap:wrap;color:#657c90;font-size:12.3px}.p67-progress-facts b{color:#294b65;font-variant-numeric:tabular-nums}.p67-progress-row footer{display:grid;grid-template-columns:auto minmax(0,1fr);gap:9px;margin-top:10px;padding-top:9px;border-top:1px solid #edf2f6}.p67-progress-row footer span{color:#7890a2;font-size:12px;font-weight:750}.p67-progress-row footer b{color:#466278;font-size:12.5px;line-height:1.45}.p67-progress-row.danger{border-left:4px solid #cf6072}.p67-progress-row.warn{border-left:4px solid #c58a38}.p67-progress-row.good{border-left:4px solid #4c9a72}.p67-progress-row.unknown{border-left:4px solid #8ca2b4}
.p67-data-gap,.p67-state-card{border:1px solid #e0e9f0;border-radius:14px;background:#f8fbfd;padding:15px 16px;margin-bottom:10px}.p67-data-gap{background:#fff9ef;border-color:#f0dfbd}.p67-data-gap b,.p67-state-card b{display:block;color:#2d4d65;font-size:14px}.p67-data-gap span,.p67-state-card span{display:block;margin-top:5px;color:#657d90;font-size:12.7px;line-height:1.6}.p67-state-card.good{background:#f2faf6;border-color:#d7eadf}.p67-state-card.warn{background:#fff9ef;border-color:#f0dfbd}
.p67-work-list{display:grid;gap:9px}.p67-work-list article{display:grid;grid-template-columns:30px minmax(0,1fr);gap:10px;padding:12px;border:1px solid #dfe9f1;border-radius:13px;background:#fff}.p67-work-list article>em{display:grid;place-items:center;width:28px;height:28px;border-radius:8px;background:#edf4fb;color:#3e78c4;font-style:normal;font-weight:850;font-size:12px}.p67-work-list b{display:block;color:#284861;font-size:13.5px}.p67-work-list small{display:block;margin:3px 0 7px;color:#788d9e;font-size:12px}.p67-work-list p{margin:3px 0;color:#526e83;font-size:12.2px;line-height:1.45}.p67-work-list p span{display:inline-block;min-width:68px;color:#73899a;font-weight:800}.p67-more-note{margin-top:9px;color:#71879a;font-size:12.3px}
html body.p67-functional-first .p66-store-analysis-grid{grid-template-columns:minmax(0,1.25fr) minmax(0,.95fr)!important}.p66-store-analysis-grid>.patrol-panel:nth-child(1){order:1;grid-row:span 2}.p66-store-analysis-grid>.patrol-panel:nth-child(3){order:2}.p66-store-analysis-grid>.patrol-panel:nth-child(2){order:3}
html body.p67-functional-first #p7StoreTypeChart{opacity:.92}
@media(max-width:1180px){html body.p67-functional-first .p66-store-analysis-grid{grid-template-columns:1fr!important}.p66-store-analysis-grid>.patrol-panel{grid-row:auto!important}.p67-progress-legend em{margin-left:0;width:100%}}

/* P67 functional closure: progress must never be clipped by historical chart shells. */
html body.p67-functional-first .p67-progress-panel,
html body.p67-functional-first .p67-work-panel{height:auto!important;max-height:none!important;overflow:visible!important;align-self:start!important}
html body.p67-functional-first :is(#p7ProjectGridChart,#p7StoreGridChart,#p7ProjectGapList,#p7StoreGapList){height:auto!important;max-height:none!important;min-height:0!important;overflow:visible!important}
html body.p67-functional-first .p67-progress-list{max-height:none!important;overflow:visible!important}
.p67-clear-strip{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-top:10px;padding:12px 14px;border:1px solid #d8e9df;border-radius:13px;background:#f4faf7}
.p67-clear-strip>div{min-width:0}.p67-clear-strip b{display:block;color:#315f4a;font-size:13.5px;line-height:1.45}.p67-clear-strip span{display:block;margin-top:3px;color:#6a8377;font-size:12.5px;line-height:1.5;white-space:normal;overflow-wrap:anywhere}.p67-clear-strip>strong{flex:0 0 auto;color:#3d8060;font-size:12.8px}
.p67-baseline-head{display:flex;align-items:flex-start;justify-content:space-between;gap:14px;margin:13px 1px 8px}.p67-baseline-head b{font-size:13.8px;color:#31516a}.p67-baseline-head span{font-size:12.5px;line-height:1.5;color:#71879a;text-align:right;max-width:72%}
.p67-baseline-list{display:grid;gap:7px}.p67-baseline-list>div{display:grid;grid-template-columns:minmax(0,1fr) auto auto;align-items:center;gap:12px;padding:10px 12px;border:1px solid #e1eaf1;border-radius:11px;background:#fff}.p67-baseline-list span{min-width:0}.p67-baseline-list span b{display:block;font-size:13.2px;color:#2d4d65}.p67-baseline-list span small{display:block;margin-top:2px;font-size:12.5px;color:#758a9b}.p67-baseline-list strong{font-size:12.8px;color:#426078;white-space:nowrap}.p67-baseline-list em{font-size:12.5px;color:#71879a;font-style:normal;white-space:nowrap}
/* P67 visible text floor: no tiny functional metadata. */
html body.p67-functional-first :is(.p67-progress-facts,.p67-progress-row footer span,.p67-progress-row footer b,.p67-work-list small,.p67-work-list p,.p67-more-note,.p67-data-gap span,.p67-state-card span){font-size:12.5px!important}
@media(max-width:760px){.p67-clear-strip,.p67-baseline-head{flex-direction:column;align-items:flex-start}.p67-baseline-head span{max-width:none;text-align:left}.p67-baseline-list>div{grid-template-columns:minmax(0,1fr) auto}.p67-baseline-list em{grid-column:1/-1}}

/* P67 final text floor for inherited module export labels. */
html body.p67-functional-first .p59-panel-export-tools>span{font-size:13px!important;line-height:1.35!important}

html body.patrol-mode.patrol-standalone.p59-product-shell.p67-functional-first .p59-panel-export-tools>span{font-size:13px!important;line-height:1.35!important}


/* P68 — core-purpose reset: inventory + grid patrol progress + map support */
html body.p68-core-first{--p68-line:#DDE8F1;--p68-text:#24465F;--p68-muted:#6B8193;--p68-soft:#F7FAFD}
html body.p68-core-first .p7-side-nav button[data-p7-view="history"]{display:none!important}
html body.p68-core-first #p7TopOutputBtn{display:none!important}
html body.p68-core-first #patrolDashboard>.p4-viz-board,
html body.p68-core-first #patrolDashboard>.patrol-leadership-summary,
html body.p68-core-first #patrolDashboard>.hf31-action-section-title,
html body.p68-core-first #patrolDashboard>.patrol-action-highlights,
html body.p68-core-first #patrolDashboard>.patrol-progress-overview-panel,
html body.p68-core-first #patrolDashboard>.patrol-domain-structure-grid,
html body.p68-core-first #patrolDashboard>.patrol-macro-narrative,
html body.p68-core-first #patrolDashboard>.patrol-identity-strip{display:none!important}
html body.p68-core-first #patrolDashboard .p7-module-head #patrolExportCommunityPngBtn,
html body.p68-core-first #patrolDashboard .p7-module-head #patrolExportCommunityJpgBtn,
html body.p68-core-first #patrolDashboard .p7-module-head #patrolExportReportBtnTop{display:none!important}
html body.p68-core-first .p68-core-overview{display:grid;gap:18px;margin-top:18px}
html body.p68-core-first .p68-core-intro{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:22px 26px;border:1px solid var(--p68-line);border-radius:20px;background:linear-gradient(135deg,#F7FBFF,#F8F7FF);box-shadow:none}
html body.p68-core-first .p68-core-intro span{display:block;font-size:13px;font-weight:800;color:#4F78A0;letter-spacing:.04em}
html body.p68-core-first .p68-core-intro h3{margin:5px 0 7px;font-size:22px;line-height:1.3;color:var(--p68-text)}
html body.p68-core-first .p68-core-intro p{margin:0;color:var(--p68-muted);font-size:14px;line-height:1.7}
html body.p68-core-first .p68-core-intro button,
html body.p68-core-first .p68-core-tasks header button,
html body.p68-core-first .p68-output-secondary button{border:1px solid #BCD2E4;background:#fff;color:#315E84;border-radius:12px;padding:10px 15px;font-weight:750;cursor:pointer;white-space:nowrap}
html body.p68-core-first .p68-core-cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
html body.p68-core-first .p68-core-cards>article{border:1px solid var(--p68-line);border-radius:18px;background:#fff;padding:20px 22px;box-shadow:none;cursor:pointer;min-width:0}
html body.p68-core-first .p68-core-cards>article:hover{border-color:#AFC9DD;background:#FBFDFF}
html body.p68-core-first .p68-core-cards header{display:flex;justify-content:space-between;align-items:baseline;gap:12px}
html body.p68-core-first .p68-core-cards header span{font-size:15px;font-weight:850;color:#45657D}
html body.p68-core-first .p68-core-cards header strong{font-size:30px;color:#245F95;font-variant-numeric:tabular-nums}
html body.p68-core-first .p68-core-cards header em{font-style:normal;font-size:13px;color:#72889A;margin-left:5px}
html body.p68-core-first .p68-core-cards p{margin:16px 0 7px;font-size:14px;line-height:1.6;color:#3C5C73;font-weight:700}
html body.p68-core-first .p68-core-cards small{display:block;min-height:40px;font-size:13px;line-height:1.6;color:#718698}
html body.p68-core-first .p68-core-cards footer{display:flex;align-items:flex-end;justify-content:space-between;gap:12px;margin-top:14px;padding-top:13px;border-top:1px solid #EDF2F6;color:#61798C;font-size:13px;line-height:1.5}
html body.p68-core-first .p68-core-cards footer b{color:#2A70A8;white-space:nowrap}
html body.p68-core-first .p68-core-tasks{border:1px solid var(--p68-line);border-radius:20px;background:#fff;padding:22px 24px}
html body.p68-core-first .p68-core-tasks>header{display:flex;align-items:center;justify-content:space-between;gap:18px;margin-bottom:14px}
html body.p68-core-first .p68-core-tasks>header span{font-size:13px;font-weight:800;color:#627C90}
html body.p68-core-first .p68-core-tasks>header h4{margin:4px 0 0;font-size:20px;color:var(--p68-text)}
html body.p68-core-first .p68-task-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
html body.p68-core-first .p68-task-list article{display:grid;grid-template-columns:28px minmax(0,1.2fr) minmax(130px,.75fr) minmax(150px,.8fr);align-items:center;gap:12px;border-top:1px solid #EDF2F6;padding:12px 4px;min-width:0}
html body.p68-core-first .p68-task-list article:nth-child(-n+2){border-top:0}
html body.p68-core-first .p68-task-list em{width:24px;height:24px;border-radius:8px;display:grid;place-items:center;background:#EEF5FB;color:#3E7199;font-style:normal;font-size:12px;font-weight:850}
html body.p68-core-first .p68-task-list b{display:block;color:#274B63;font-size:13.5px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
html body.p68-core-first .p68-task-list small{display:block;margin-top:3px;color:#7A8F9F;font-size:12.8px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
html body.p68-core-first .p68-task-list p{margin:0;color:#5E7182;font-size:13px}
html body.p68-core-first .p68-task-list>article>strong{font-size:13px;color:#A66C2C;text-align:right}
html body.p68-core-first .p68-task-more,.p68-core-first .p68-core-ok{margin-top:12px;padding:12px 14px;border-radius:12px;background:#F7FAFD;color:#607789;font-size:13px}
html body.p68-core-first .p68-data-note{display:flex;align-items:flex-start;gap:14px;margin:10px 0 16px;padding:14px 16px;border:1px solid #DCE8F1;border-radius:14px;background:#F8FBFE;color:#577082}
html body.p68-core-first .p68-data-note b{color:#315B78;white-space:nowrap;font-size:13.5px}
html body.p68-core-first .p68-data-note span{font-size:13.2px;line-height:1.65}
html body.p68-core-first .p68-data-note.warn{background:#FFF9EF;border-color:#F0DFC2}.p68-core-first .p68-data-note.warn b{color:#9A6828}
html body.p68-core-first .p68-data-note.ok{background:#F4FBF7;border-color:#D4EADC}.p68-core-first .p68-data-note.ok b{color:#337557}
html body.p68-core-first #patrolProjectDomain .p68-unavailable{display:none!important}
html body.p68-core-first #p7ProjectWorkspace .p7-analysis-split{grid-template-columns:minmax(0,1.22fr) minmax(0,.78fr)!important;align-items:start}
html body.p68-core-first #p7StoreWorkspace .p66-store-analysis-grid{grid-template-columns:minmax(0,1.25fr) minmax(0,.75fr)!important;align-items:start}
html body.p68-core-first #p7StoreWorkspace .p66-store-analysis-grid>.patrol-panel:nth-child(1){grid-row:span 2!important}
html body.p68-core-first #p7StoreWorkspace .p68-support-panel{opacity:.86}
html body.p68-core-first #patrolPersonZone .p68-legacy-detail{display:none!important}
html body.p68-core-first #patrolPersonZone .p7-responsibility-actions #p7ToggleResponsibilityDetailsBtn{display:none!important}
html body.p68-core-first #patrolAnalysisZone .p68-gis-secondary{display:none!important}
html body.p68-core-first #patrolAnalysisZone .patrol-map-panel{box-shadow:none!important;border-color:#DDE8F1!important}
html body.p68-core-first #patrolAnalysisZone .p68-map-actions{gap:8px!important}
html body.p68-core-first #patrolAnalysisZone .p68-map-actions .btn:not(:first-child):not(.primary){display:none!important}
html body.p68-core-first .p68-output-secondary{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:12px 16px;margin:10px 0 18px;border:1px solid #DFE8F0;border-radius:14px;background:#F8FBFE;color:#697F91;font-size:13px}
html body.p68-core-first #patrolOutputZone .patrol-copy-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}
html body.p68-core-first .p7-module-head{border-bottom:1px solid #EDF2F6!important}
html body.p68-core-first .p7-module-head .patrol-module-actions{gap:8px!important}
@media(max-width:1180px){html body.p68-core-first .p68-core-cards{grid-template-columns:1fr 1fr}.p68-core-first .p68-core-cards>article:last-child{grid-column:1/-1}.p68-core-first .p68-task-list{grid-template-columns:1fr}.p68-core-first .p68-task-list article:nth-child(2){border-top:1px solid #EDF2F6}.p68-core-first #p7ProjectWorkspace .p7-analysis-split,.p68-core-first #p7StoreWorkspace .p66-store-analysis-grid{grid-template-columns:1fr!important}.p68-core-first #p7StoreWorkspace .p66-store-analysis-grid>.patrol-panel:nth-child(1){grid-row:auto!important}}
@media(max-width:760px){html body.p68-core-first .p68-core-intro,.p68-core-first .p68-core-tasks>header,.p68-core-first .p68-output-secondary{align-items:flex-start;flex-direction:column}.p68-core-first .p68-core-cards{grid-template-columns:1fr}.p68-core-first .p68-core-cards>article:last-child{grid-column:auto}.p68-core-first .p68-task-list article{grid-template-columns:28px 1fr;align-items:start}.p68-core-first .p68-task-list article p,.p68-core-first .p68-task-list>article>strong{grid-column:2;text-align:left}.p68-core-first .p68-data-note{flex-direction:column;gap:5px}}

/* P68 final simplification: auxiliary analysis stays available but does not occupy the main work surface. */
html body.p68-core-first #p7StoreWorkspace .p68-support-panel{display:none!important}
html body.p68-core-first.p68-show-support #p7StoreWorkspace .p68-support-panel{display:block!important;opacity:1!important}
html body.p68-core-first #p68StoreSupportToggle{margin:-2px 0 14px auto;display:block!important;border:1px solid #D1E0EB!important;background:#F8FBFE!important;color:#4E6E86!important;box-shadow:none!important}
html body.p68-core-first #patrolAnalysisZone .patrol-map-intelligence-panel,
html body.p68-core-first #patrolAnalysisZone .patrol-map-reading-hint,
html body.p68-core-first #patrolAnalysisZone .patrol-map-conclusion-primary{display:none!important}
html body.p68-core-first #patrolAnalysisZone .patrol-map-panel>.patrol-panel-head small{max-width:820px!important}

/* P68 results page: four primary outputs, everything else stays optional. */
html body.p68-core-first #patrolOutputZone .p68-output-legacy{display:none!important}
html body.p68-core-first.p68-show-output-tools #patrolOutputZone .p68-output-legacy{display:block!important}
html body.p68-core-first .p68-output-core{margin:12px 0 18px;padding:20px 22px;border:1px solid #DDE8F1;border-radius:18px;background:#fff}
html body.p68-core-first .p68-output-core>header{display:flex;align-items:flex-start;justify-content:space-between;gap:20px;margin-bottom:16px}
html body.p68-core-first .p68-output-core>header span{font-size:13px;font-weight:800;color:#607A90}
html body.p68-core-first .p68-output-core>header h3{margin:4px 0 6px;font-size:21px;color:#24465F}
html body.p68-core-first .p68-output-core>header p{margin:0;font-size:13.5px;color:#708598;line-height:1.6}
html body.p68-core-first .p68-output-core>header button{border:1px solid #C9DBE8;background:#F8FBFE;color:#45677F;border-radius:11px;padding:9px 13px;font-weight:750;white-space:nowrap;cursor:pointer}
html body.p68-core-first .p68-output-core-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}
html body.p68-core-first .p68-output-core-grid button{display:flex;flex-direction:column;align-items:flex-start;gap:5px;text-align:left;border:1px solid #DDE8F1;border-radius:14px;background:#FAFCFE;padding:16px 17px;min-height:82px;cursor:pointer;color:#31566F}
html body.p68-core-first .p68-output-core-grid button:hover{background:#F4F9FD;border-color:#BDD3E3}
html body.p68-core-first .p68-output-core-grid b{font-size:15px;color:#274E68}
html body.p68-core-first .p68-output-core-grid span{font-size:12.8px;color:#71879A;line-height:1.45}
@media(max-width:1100px){html body.p68-core-first .p68-output-core-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:680px){html body.p68-core-first .p68-output-core>header{flex-direction:column}html body.p68-core-first .p68-output-core-grid{grid-template-columns:1fr}}


/* P69 — statistical period / zero-as-zero / compact execution view */
.p69-period-bar{position:sticky;top:10px;z-index:18;display:flex;align-items:center;justify-content:space-between;gap:16px;margin:0 0 18px;padding:12px 16px;border:1px solid rgba(69,127,181,.18);border-radius:16px;background:rgba(249,252,255,.96);box-shadow:0 10px 26px rgba(40,82,122,.08);backdrop-filter:blur(8px)}
.p69-period-bar[hidden]{display:none!important}.p69-period-bar.stale{border-color:rgba(201,134,66,.28);background:rgba(255,251,244,.98)}
.p69-period-main{display:flex;align-items:center;gap:10px;min-width:0}.p69-period-main label{display:flex;align-items:center;gap:9px;font-size:13px;font-weight:800;color:#37546b;white-space:nowrap}
.p69-period-main select,.p69-period-main input{min-height:38px;border:1px solid #d5e2ed;border-radius:10px;background:#fff;color:#24465f;font:700 13px "Microsoft YaHei",sans-serif;padding:0 10px}
.p69-custom-dates{display:flex;align-items:center;gap:7px;color:#718699;font-size:12.8px}
.p69-period-status{display:flex;align-items:center;justify-content:flex-end;gap:10px;min-width:0;font-size:12.5px;color:#60788b;flex-wrap:wrap}
.p69-period-status b{color:#234963;font-size:13.5px}.p69-period-status em{font-style:normal;padding:5px 9px;border-radius:999px;background:#edf6ff;color:#3972a6;font-weight:700}.p69-period-bar.stale .p69-period-status em{background:#fff2df;color:#9b682b}
.p69-period-explain{display:flex;justify-content:space-between;gap:14px;align-items:flex-start;margin-bottom:12px;padding:10px 12px;border-radius:12px;background:#f3f8fc;color:#587188;font-size:12.8px;line-height:1.55}
.p69-period-explain b{color:#264c67;white-space:nowrap}.p69-ranking-panel{margin-top:16px}.p69-ranking-meta{display:flex;gap:10px;align-items:center;flex-wrap:wrap;padding:10px 12px;margin-bottom:12px;border-radius:12px;background:#f5f9fc;font-size:12.5px;color:#61788b}
.p69-ranking-meta b{font-size:13.5px;color:#254b65}.p69-ranking-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}.p69-ranking-grid section{min-width:0;border:1px solid #e1eaf1;border-radius:14px;overflow:hidden;background:#fff}.p69-ranking-grid h4{margin:0;padding:13px 14px;background:#f7fafc;color:#274b63;font-size:14px}
.p69-ranking-grid table{width:100%;border-collapse:collapse;table-layout:auto}.p69-ranking-grid th,.p69-ranking-grid td{padding:9px 10px;border-top:1px solid #edf1f4;text-align:left;font-size:12.8px;color:#455f72;vertical-align:middle}.p69-ranking-grid th{font-weight:800;color:#607486;background:#fbfcfd}.p69-ranking-grid td b{display:block;color:#24465f;font-size:13px}.p69-ranking-grid td small{display:block;color:#80909d;margin-top:2px}
.p69-zero-ranking{margin:10px 12px 0;padding:8px 10px;border-radius:10px;background:#fff7e9;color:#916429;font-size:12.5px;font-weight:700}
.p69-stat-ui .p68-legacy-detail{display:none!important}.p69-stat-ui #p69PeriodRanking{display:block!important}
@media (max-width:1100px){.p69-period-bar{position:relative;top:auto;align-items:flex-start;flex-direction:column}.p69-period-status{justify-content:flex-start}.p69-ranking-grid{grid-template-columns:1fr}}
@media (max-width:700px){.p69-period-main{width:100%;align-items:flex-start;flex-direction:column}.p69-custom-dates{width:100%;flex-wrap:wrap}.p69-period-main select,.p69-period-main input{width:100%}.p69-period-main label{width:100%;justify-content:space-between}.p69-period-status{gap:6px}.p69-ranking-grid th,.p69-ranking-grid td{font-size:12.5px;padding:8px 7px}}


/* P70 — validated quick periods + restrained game-like progress meters */
.p70-period-bar{align-items:stretch!important;flex-direction:column!important;gap:10px!important;padding:14px 16px!important}
.p70-period-main{display:grid!important;grid-template-columns:auto minmax(0,1fr) auto;align-items:center!important;gap:10px 14px!important;width:100%!important}
.p70-period-heading{display:grid;gap:2px;min-width:112px}.p70-period-heading b{font-size:14px;color:#254962}.p70-period-heading span{font-size:11.5px;color:#7890a2;white-space:nowrap}
.p70-period-presets{display:flex;flex-wrap:wrap;gap:7px;min-width:0}
.p70-period-presets button{appearance:none;border:1px solid #d7e4ee;border-radius:10px;background:#fff;color:#48667d;min-height:34px;padding:0 12px;font:750 12.5px "Microsoft YaHei",sans-serif;cursor:pointer;transition:border-color .16s ease,box-shadow .16s ease,transform .16s ease,background .16s ease}
.p70-period-presets button:hover{border-color:#9dc5e7;box-shadow:0 3px 10px rgba(39,104,163,.08)}.p70-period-presets button:active{transform:translateY(1px)}
.p70-period-presets button.active{border-color:#5b9bd3;background:linear-gradient(180deg,#eef7ff,#e6f2ff);color:#1f6098;box-shadow:inset 0 0 0 1px rgba(91,155,211,.12),0 4px 12px rgba(56,118,174,.10)}
.p70-custom-dates{display:flex!important;align-items:center;gap:7px;justify-content:flex-end;white-space:nowrap}.p70-custom-dates label{display:flex!important;align-items:center!important;gap:6px!important;width:auto!important;font-weight:700!important;color:#698195!important}.p70-custom-dates label span{font-size:11.5px}.p70-custom-dates i{font-style:normal;color:#92a4b2}.p70-custom-dates em{font-style:normal;padding:5px 8px;border-radius:999px;background:#f0f5f9;color:#71879a;font-size:11px;font-weight:750}.p70-custom-dates input{width:142px!important;min-height:36px!important}
.p70-custom-dates input.invalid{border-color:#d86b62!important;background:#fff7f6!important;box-shadow:0 0 0 3px rgba(216,107,98,.10)!important}
.p70-period-error{grid-column:1/-1;padding:9px 12px;border:1px solid #efd0cb;border-radius:10px;background:#fff6f4;color:#a34840;font-size:12.5px;line-height:1.5;font-weight:700}.p70-period-bar.invalid{border-color:#e6b9b2!important;background:rgba(255,250,248,.98)!important}.p70-period-bar.invalid .p70-custom-dates em{background:#fff0ed;color:#a34840}
.p70-period-bar .p69-period-status{border-top:1px solid #e9f0f5;padding-top:9px;justify-content:flex-start!important}.p70-period-bar .p69-period-status>em{margin-left:auto}
.p70-progress-list .p67-progress-row{gap:11px!important}.p70-meter{display:grid;gap:6px;min-width:0}.p70-meter-head{display:flex;align-items:center;justify-content:space-between;gap:10px}.p70-meter-head span{font-size:11.5px;color:#6a8193;font-weight:750}.p70-meter-head b{font-size:12.5px;color:#2f526c;white-space:nowrap}
.p70-meter-track{position:relative;height:14px;border:1px solid #dbe6ef;border-radius:999px;overflow:hidden;background:repeating-linear-gradient(90deg,#edf3f7 0,#edf3f7 calc(10% - 1px),#dfe9f0 calc(10% - 1px),#dfe9f0 10%);box-shadow:inset 0 1px 2px rgba(34,64,87,.06)}
.p70-meter-track i{position:absolute;inset:0 auto 0 0;width:var(--p70-progress,0%);border-radius:999px;background:linear-gradient(90deg,#3f87cf,#62b8e7);box-shadow:0 0 10px rgba(68,145,207,.18);transition:width .38s cubic-bezier(.2,.8,.2,1)}.p70-meter-track i:after{content:"";position:absolute;inset:1px 2px auto;height:3px;border-radius:999px;background:rgba(255,255,255,.42)}.p70-meter-track u{position:absolute;inset:0;background:repeating-linear-gradient(90deg,transparent 0,transparent calc(10% - 1px),rgba(255,255,255,.42) calc(10% - 1px),rgba(255,255,255,.42) 10%);pointer-events:none}
.p70-meter.good .p70-meter-track i{background:linear-gradient(90deg,#44a879,#68c99d)}.p70-meter.warn .p70-meter-track i{background:linear-gradient(90deg,#d58c43,#edbd66)}.p70-meter.cyan .p70-meter-track i{background:linear-gradient(90deg,#2c9cae,#5bcbd0)}.p70-meter.muted .p70-meter-track i{background:#b8c5ce;box-shadow:none}
.p70-ranking-panel .p69-ranking-grid section{overflow:auto}.p70-ranking-panel .p69-ranking-grid table{min-width:650px}.p70-rank-meter-cell{min-width:190px!important}.p70-rank-meter-cell .p70-meter{min-width:176px}.p70-rank-badge{display:inline-grid;place-items:center;min-width:32px;height:28px;padding:0 7px;border:1px solid #dbe5ed;border-radius:9px;background:#f5f8fa;color:#617687;font-size:12px;font-weight:850}.p70-rank-badge.top1{background:#fff5d9;border-color:#ecd48b;color:#8a6a18}.p70-rank-badge.top2{background:#f2f5f8;border-color:#cdd7df;color:#60717e}.p70-rank-badge.top3{background:#fff0e5;border-color:#e4c4aa;color:#96613d}
@media(max-width:1450px){.p70-period-main{grid-template-columns:auto 1fr}.p70-custom-dates{grid-column:1/-1;justify-content:flex-start}.p70-period-heading span{white-space:normal}}
@media(max-width:900px){.p70-period-main{grid-template-columns:1fr}.p70-period-heading,.p70-period-presets,.p70-custom-dates{grid-column:1}.p70-custom-dates{flex-wrap:wrap}.p70-period-presets button{flex:1 0 auto;min-width:78px}.p70-period-bar .p69-period-status>em{margin-left:0}.p70-period-bar .p69-period-status{flex-direction:column;align-items:flex-start!important}}
@media(max-width:560px){.p70-custom-dates label{width:100%!important;justify-content:space-between!important}.p70-custom-dates input{width:min(70vw,220px)!important}.p70-custom-dates i{display:none}.p70-period-presets button{min-width:calc(33.333% - 7px);padding:0 8px}.p70-rank-meter-cell{min-width:165px!important}}

.p70-responsibility-overview{display:grid;gap:12px}.p70-responsibility-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.p70-responsibility-grid>article{display:grid;gap:12px;padding:15px;border:1px solid #e0e9f0;border-radius:14px;background:#fbfdff}.p70-responsibility-grid>article>header{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.p70-responsibility-grid>article>header div{display:grid;gap:2px}.p70-responsibility-grid>article>header b{font-size:14px;color:#294e68}.p70-responsibility-grid>article>header span{font-size:12.5px;color:#70879a}.p70-responsibility-grid>article>header strong{font-size:11.5px;color:#71879a;font-weight:750}.p70-resp-domain{display:grid;grid-template-columns:1fr 1fr;gap:14px}.p70-resp-domain>div{display:grid;gap:7px;min-width:0}.p70-resp-domain small{font-size:11.5px;color:#718598;line-height:1.45}
@media(max-width:1100px){.p70-responsibility-grid{grid-template-columns:1fr}}@media(max-width:650px){.p70-resp-domain{grid-template-columns:1fr}.p70-responsibility-grid>article>header{flex-direction:column}.p70-responsibility-grid>article>header strong{white-space:normal}}


/* P71 — ranking alignment + period-switch performance */
.p71-smooth-period-ui .p69-period-bar{backdrop-filter:none!important;-webkit-backdrop-filter:none!important;background:#fbfdff!important}
.p71-period-updating .p70-meter-track i{transition:none!important}
.p71-ranking-grid{align-items:start!important;gap:16px!important}
.p71-ranking-grid>section{display:grid!important;grid-template-rows:auto 1fr!important;min-width:0!important;overflow:hidden!important;border-color:#dfe9f1!important;box-shadow:0 8px 22px rgba(45,82,112,.045)!important}
.p71-ranking-head{min-height:72px;padding:12px 14px 11px;background:linear-gradient(180deg,#f8fbfd,#f5f9fc);border-bottom:1px solid #e5edf3;display:flex;flex-direction:column;justify-content:center;gap:4px}
.p71-ranking-head h4{margin:0!important;padding:0!important;background:none!important;font-size:14.5px!important;line-height:1.35;color:#244861!important}
.p71-ranking-head span{font-size:12.5px;line-height:1.35;color:#71889a;font-weight:650;min-height:17px}
.p71-ranking-grid table{width:100%!important;min-width:650px!important;table-layout:fixed!important;border-collapse:collapse!important}
.p71-ranking-grid .p71-col-rank{width:10%}.p71-ranking-grid .p71-col-person{width:22%}.p71-ranking-grid .p71-col-progress{width:32%}.p71-ranking-grid .p71-col-done{width:16%}.p71-ranking-grid .p71-col-gap{width:20%}
.p71-ranking-grid th,.p71-ranking-grid td{box-sizing:border-box!important;height:62px;padding:9px 10px!important;vertical-align:middle!important;overflow:hidden}
.p71-ranking-grid thead th{height:46px!important;background:#fbfcfe!important;color:#5d7487!important;font-size:12.8px!important;white-space:nowrap}
.p71-ranking-grid tbody tr:nth-child(even){background:#fbfdff}.p71-ranking-grid tbody tr:hover{background:#f5faff}
.p71-rank-person{display:flex;flex-direction:column;justify-content:center;min-width:0;gap:2px}.p71-rank-person b{font-size:13.2px!important;line-height:1.35;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.p71-rank-person small{font-size:12.5px!important;line-height:1.3;margin:0!important;white-space:nowrap}
.p71-ranking-grid td>b{font-size:13px!important;line-height:1.3;color:#2c506a}.p71-ranking-grid td>small{font-size:12.2px!important;line-height:1.25;margin-top:3px!important;color:#7b8f9f}
.p71-ranking-grid .p70-rank-meter-cell{min-width:0!important}.p71-ranking-grid .p70-rank-meter-cell .p70-meter{min-width:0!important;width:100%}.p71-ranking-grid .p70-meter-head{min-height:18px}.p71-ranking-grid .p70-meter-track{height:13px}
.p71-smooth-period-ui .p70-responsibility-grid>article{contain:layout paint style}.p71-smooth-period-ui .p70-responsibility-grid>article,.p71-smooth-period-ui .p67-progress-list>article{content-visibility:auto;contain-intrinsic-size:auto 210px}
.p71-smooth-period-ui .p69-ranking-meta{margin-bottom:14px;padding:9px 12px;background:#f7fafc;border:1px solid #e7eef4}
@media(max-width:1100px){.p71-ranking-grid{grid-template-columns:1fr!important}.p71-ranking-grid>section{overflow:auto!important}.p71-ranking-head{min-height:64px}}
@media(max-width:700px){.p71-ranking-grid table{min-width:620px!important}.p71-ranking-grid th,.p71-ranking-grid td{height:58px;padding:8px!important}}


/* P72 — runtime isolation / compact paint boundaries. */
.p72-runtime-ui .p71-ranking-grid>section{contain:layout paint style}
.p72-runtime-ui .p70-responsibility-grid>article,
.p72-runtime-ui .p67-progress-list>article,
.p72-runtime-ui .p67-work-list>article{contain:layout paint style}
.p72-runtime-ui .p67-work-list>article{content-visibility:auto;contain-intrinsic-size:auto 104px}
.p72-runtime-ui .p69-ranking-panel,
.p72-runtime-ui #p7ProjectGridChart,
.p72-runtime-ui #p7StoreGridChart{isolation:isolate}
.p72-runtime-ui.p71-period-updating *,
.p72-runtime-ui .p71-period-updating *{scroll-behavior:auto!important}


/* P73 hotfix — ranking notice alignment + anti-squeeze guards */
.p7-module-head,.patrol-panel-head,.section-head,.patrol-panel-head>div,.p7-module-head .grow,.section-head .grow{min-width:0!important}
.p7-module-head p,.patrol-panel-head small,.section-head p,.p69-ranking-meta span{overflow-wrap:anywhere}
.p71-ranking-grid>section{display:grid!important;grid-template-rows:auto 1fr!important}
.p71-ranking-head{min-height:118px!important;padding:14px 14px 12px!important;display:grid!important;grid-template-rows:auto auto!important;align-content:start!important;gap:8px!important}
.p71-ranking-head-main{display:grid!important;gap:4px;min-width:0}
.p71-ranking-sub{font-size:12.5px!important;line-height:1.35!important;color:#71889a!important;font-weight:650!important;min-height:17px!important}
.p71-ranking-note{display:flex;align-items:flex-start;min-height:38px;padding:8px 10px;border-radius:10px;background:#f7efdf;border:1px solid #ecdcb7;color:#8a6630;font-size:12.5px;line-height:1.45;font-weight:650;box-sizing:border-box}
.p71-ranking-note.placeholder{visibility:hidden}
.p71-ranking-grid table{min-width:0!important}
.p71-ranking-grid th,.p71-ranking-grid td{overflow:hidden;text-overflow:ellipsis}
.p71-ranking-grid thead th{white-space:nowrap}
.p71-ranking-grid td>b,.p71-ranking-grid td>small,.p71-rank-person b,.p71-rank-person small{overflow:hidden;text-overflow:ellipsis}
.p71-ranking-grid .p70-rank-meter-cell{min-width:0!important}
.p70-meter,.p70-meter-head,.p70-meter-track{min-width:0!important}
.p70-meter-head{display:grid!important;grid-template-columns:minmax(0,1fr) auto!important;align-items:start!important;gap:10px!important}
.p70-meter-head span{min-width:0!important;white-space:normal!important;line-height:1.35!important;overflow-wrap:anywhere}
.p70-meter-head b{text-align:right!important;white-space:nowrap!important}
.p70-responsibility-grid>article{overflow:hidden!important}
.p70-responsibility-grid>article>header{display:grid!important;grid-template-columns:minmax(0,1fr) auto!important;align-items:start!important;gap:12px!important}
.p70-responsibility-grid>article>header div{min-width:0!important}
.p70-responsibility-grid>article>header b,.p70-responsibility-grid>article>header span{overflow-wrap:anywhere}
.p70-responsibility-grid>article>header strong{min-width:0!important;max-width:220px!important;text-align:right!important;white-space:normal!important;line-height:1.35!important}
.p70-resp-domain,.p70-resp-domain>div{min-width:0!important}
@media(max-width:1180px){.p70-responsibility-grid>article>header{grid-template-columns:minmax(0,1fr)!important}.p70-responsibility-grid>article>header strong{max-width:none!important;text-align:left!important}}
@media(max-width:860px){.p71-ranking-head{min-height:132px!important}.p71-ranking-grid thead th{white-space:normal!important;line-height:1.3!important;height:auto!important;min-height:46px!important}.p71-ranking-grid th,.p71-ranking-grid td{height:auto!important}.p70-meter-head{grid-template-columns:minmax(0,1fr)!important}.p70-meter-head b{text-align:left!important}.p70-responsibility-grid>article>header{grid-template-columns:minmax(0,1fr)!important}.p70-responsibility-grid>article>header strong{text-align:left!important;max-width:none!important}}


/* P74 hotfix — full-site anti-overflow hardening */
.p69-ranking-meta,.p71-ranking-grid,.p70-responsibility-grid,.p67-progress-list,.p48-brief-summary,.p7-table-footer,.patrol-panel-head,.p70-meter-head{min-width:0!important}
.p69-ranking-meta>*,.p71-ranking-grid>section,.p70-responsibility-grid>article,.p67-progress-row,.p48-brief-summary div,.p7-table-footer>*,.patrol-panel-head>*{min-width:0!important}
.p69-ranking-meta span,.patrol-panel-head small,.p48-brief-summary strong,.p48-brief-summary em,.p67-progress-row footer b,.p67-progress-facts span,.p70-resp-domain small{overflow-wrap:anywhere!important}
.p67-progress-row header{display:grid!important;grid-template-columns:minmax(0,1fr) auto!important;align-items:start!important;gap:12px!important}
.p67-progress-row header>strong{display:block;max-width:220px!important;white-space:normal!important;text-align:right!important;line-height:1.35!important}
.p67-progress-row header b,.p67-progress-row header small{overflow-wrap:anywhere!important}
.p70-card-count{display:grid!important;gap:2px!important;justify-items:end!important;min-width:0!important;max-width:220px!important;font-size:11.5px!important;color:#71879a!important;font-weight:750!important;line-height:1.35!important;text-align:right!important;white-space:normal!important}
.p70-card-count span{display:block!important}
.p70-responsibility-grid>article>header strong{max-width:none!important}
.p70-responsibility-grid>article>header b,.p70-responsibility-grid>article>header span,.p70-resp-domain small{overflow-wrap:anywhere!important}
.p70-resp-domain>div .p70-meter-head span{max-width:none!important}
.p48-brief-summary strong,.p48-brief-summary em{white-space:normal!important}
.p7-table-footer{display:grid!important;grid-template-columns:minmax(0,1fr) auto!important;align-items:center!important}
.p7-table-footer .p7-pagination{justify-self:end!important}
.p69-ranking-meta{align-items:flex-start!important}
.p69-ranking-meta span{white-space:normal!important;line-height:1.4!important}
.p71-ranking-grid .p71-col-rank{width:72px!important}
.p71-ranking-grid .p71-col-person{width:24%!important}
.p71-ranking-grid .p71-col-progress{width:30%!important}
.p71-ranking-grid .p71-col-done{width:18%!important}
.p71-ranking-grid .p71-col-gap{width:18%!important}
.p71-ranking-grid td>b,.p71-ranking-grid td>small,.p71-rank-person b,.p71-rank-person small{white-space:normal!important;overflow-wrap:anywhere!important}
@media(max-width:1180px){
  .p67-progress-row header,.p70-responsibility-grid>article>header,.p7-table-footer,.patrol-panel-head{grid-template-columns:minmax(0,1fr)!important}
  .p67-progress-row header>strong,.p70-card-count{max-width:none!important;text-align:left!important;justify-items:start!important}
  .p7-table-footer .p7-pagination{justify-self:start!important}
}
@media(max-width:980px){
  .p69-ranking-meta{display:grid!important;grid-template-columns:minmax(0,1fr)!important;gap:6px!important}
  .p71-ranking-grid .p71-col-rank{width:68px!important}
  .p71-ranking-grid .p71-col-person{width:26%!important}
  .p71-ranking-grid .p71-col-progress{width:28%!important}
  .p71-ranking-grid .p71-col-done{width:18%!important}
  .p71-ranking-grid .p71-col-gap{width:18%!important}
}


/* P75 — component-aware layout contract and full-site clipping closure */
html body.p76-layout-stable .p7-main,
html body.p76-layout-stable .p7-module-head,
html body.p76-layout-stable .patrol-panel,
html body.p76-layout-stable .p68-core-intro,
html body.p76-layout-stable .p68-core-cards>article,
html body.p76-layout-stable .p68-core-tasks,
html body.p76-layout-stable .p68-data-note,
html body.p76-layout-stable .p68-output-secondary,
html body.p76-layout-stable .p67-progress-row,
html body.p76-layout-stable .p70-responsibility-grid>article,
html body.p76-layout-stable .p71-ranking-grid>section{box-sizing:border-box;max-width:100%;min-width:0}
html body.p76-layout-stable .p7-module-head{flex-wrap:wrap!important;align-items:flex-start!important}
html body.p76-layout-stable .p7-module-head .grow{flex:1 1 420px!important;min-width:0!important}
html body.p76-layout-stable .p7-module-head .patrol-module-actions{display:flex!important;flex:0 1 auto!important;flex-wrap:wrap!important;justify-content:flex-end!important;max-width:100%!important;min-width:0!important}
html body.p76-layout-stable .p7-module-head h2,
html body.p76-layout-stable .p7-module-head p,
html body.p76-layout-stable .patrol-panel-head h3,
html body.p76-layout-stable .patrol-panel-head small{max-width:100%!important;white-space:normal!important;overflow:visible!important;text-overflow:clip!important;overflow-wrap:anywhere!important}
html body.p76-layout-stable .p68-core-intro,
html body.p76-layout-stable .p68-core-tasks>header,
html body.p76-layout-stable .p68-output-secondary{flex-wrap:wrap!important}
html body.p76-layout-stable .p68-core-intro>div,
html body.p76-layout-stable .p68-core-tasks>header>div,
html body.p76-layout-stable .p68-output-secondary>*{min-width:0!important}
html body.p76-layout-stable .p68-task-list b,
html body.p76-layout-stable .p68-task-list small{white-space:normal!important;overflow:visible!important;text-overflow:clip!important;overflow-wrap:anywhere!important}
html body.p76-layout-stable .p68-data-note b{white-space:normal!important;flex:0 1 auto!important}
html body.p76-layout-stable .p68-data-note span{min-width:0!important;overflow-wrap:anywhere!important}
html body.p76-layout-stable .p67-progress-row,
html body.p76-layout-stable .p70-responsibility-grid>article,
html body.p76-layout-stable .p71-ranking-grid>section{container-type:inline-size}
html body.p76-layout-stable .p71-ranking-grid>section{container-name:p76rank}
html body.p76-layout-stable .p70-responsibility-grid>article{container-name:p76resp}
html body.p76-layout-stable .p67-progress-row{container-name:p76progress}
html body.p76-layout-stable .p71-ranking-grid table{width:100%!important;max-width:100%!important;min-width:0!important}
html body.p76-layout-stable .p71-ranking-grid th,
html body.p76-layout-stable .p71-ranking-grid td{min-width:0!important;overflow:hidden!important;text-overflow:ellipsis!important}
html body.p76-layout-stable .p71-ranking-grid .p70-meter-head{grid-template-columns:minmax(0,1fr) auto!important}
html body.p76-layout-stable .p71-ranking-note{width:100%!important;max-width:100%!important;overflow-wrap:anywhere!important}
html body.p76-layout-stable .p70-card-count{max-width:100%!important}
html body.p76-layout-stable .p70-resp-domain{grid-template-columns:repeat(2,minmax(0,1fr))!important}
html body.p76-layout-stable .p76-needs-stack.p7-module-head .patrol-module-actions{flex:1 1 100%!important;justify-content:flex-start!important}
html body.p76-layout-stable .p76-needs-stack.patrol-panel-head,
html body.p76-layout-stable .p76-needs-stack.p68-data-note,
html body.p76-layout-stable .p76-needs-stack.p68-output-secondary,
html body.p76-layout-stable .p76-needs-stack.p68-core-intro{display:flex!important;flex-direction:column!important;align-items:flex-start!important}
html body.p76-layout-stable .p76-needs-stack.p67-progress-row>header,
html body.p76-layout-stable .p70-responsibility-grid>article.p76-needs-stack>header{grid-template-columns:minmax(0,1fr)!important}
html body.p76-layout-stable .p70-responsibility-grid>article.p76-needs-stack .p70-card-count{justify-items:start!important;text-align:left!important}
html body.p76-layout-stable .p71-ranking-grid>section.p76-needs-stack{overflow-x:auto!important}
@container p76rank (max-width:720px){
  .p71-ranking-head{min-height:0!important;height:auto!important}
  .p71-ranking-grid thead th{white-space:normal!important;line-height:1.3!important;height:auto!important;min-height:46px!important}
  .p71-ranking-grid th,.p71-ranking-grid td{height:auto!important;min-height:58px!important}
  .p71-ranking-grid .p70-meter-head{grid-template-columns:minmax(0,1fr)!important;gap:3px!important}
  .p71-ranking-grid .p70-meter-head b{text-align:left!important}
}
@container p76resp (max-width:680px){
  .p70-responsibility-grid>article>header{grid-template-columns:minmax(0,1fr)!important}
  .p70-responsibility-grid>article .p70-card-count{justify-items:start!important;text-align:left!important}
  .p70-responsibility-grid>article .p70-resp-domain{grid-template-columns:minmax(0,1fr)!important}
}
@container p76progress (max-width:620px){
  .p67-progress-row>header{grid-template-columns:minmax(0,1fr)!important}
  .p67-progress-row>header>strong{text-align:left!important;max-width:none!important}
  .p67-progress-row footer{grid-template-columns:minmax(0,1fr)!important}
}
@media(max-width:760px){
  html body.p76-layout-stable .p7-module-head .grow{flex-basis:100%!important}
  html body.p76-layout-stable .p7-module-head .patrol-module-actions{flex:1 1 100%!important;justify-content:flex-start!important}
  html body.p76-layout-stable .p7-module-head .patrol-module-actions .btn{flex:1 1 150px!important}
}


/* P76 — component resilience / residual clipping closure */
html body.p76-layout-stable .p68-core-cards>article,
html body.p76-layout-stable .p68-task-list>article,
html body.p76-layout-stable .p67-baseline-list>div,
html body.p76-layout-stable .p68-output-core,
html body.p76-layout-stable .p69-period-bar,
html body.p76-layout-stable .p48-task-list{container-type:inline-size}
html body.p76-layout-stable .p68-core-cards>article{container-name:p76overviewcard}
html body.p76-layout-stable .p68-task-list>article{container-name:p76taskrow}
html body.p76-layout-stable .p67-baseline-list>div{container-name:p76baseline}
html body.p76-layout-stable .p68-output-core{container-name:p76output}
html body.p76-layout-stable .p69-period-bar{container-name:p76period}
html body.p76-layout-stable .p48-task-list{container-name:p76legacytasks}

/* visible business text should wrap before it clips */
html body.p76-layout-stable .p68-core-cards header,
html body.p76-layout-stable .p68-core-cards footer,
html body.p76-layout-stable .p67-baseline-list>div,
html body.p76-layout-stable .p69-period-explain,
html body.p76-layout-stable .p43-responsibility-card header{min-width:0}
html body.p76-layout-stable .p68-core-cards header span,
html body.p76-layout-stable .p68-core-cards header strong,
html body.p76-layout-stable .p68-core-cards footer,
html body.p76-layout-stable .p68-core-cards footer b,
html body.p76-layout-stable .p67-baseline-list strong,
html body.p76-layout-stable .p67-baseline-list em,
html body.p76-layout-stable .p69-period-explain b,
html body.p76-layout-stable .p70-period-heading span,
html body.p76-layout-stable .p43-responsibility-card header b,
html body.p76-layout-stable .p43-responsibility-card header span,
html body.p76-layout-stable .p48-task-copy b,
html body.p76-layout-stable .p48-task-copy em{white-space:normal!important;overflow:visible!important;text-overflow:clip!important;overflow-wrap:anywhere!important}
html body.p76-layout-stable .p68-core-intro button,
html body.p76-layout-stable .p68-core-tasks header button,
html body.p76-layout-stable .p68-output-secondary button,
html body.p76-layout-stable .p68-output-core>header button{white-space:normal!important;overflow-wrap:anywhere!important;text-align:center}
html body.p76-layout-stable .p70-custom-dates{white-space:normal!important;flex-wrap:wrap!important;min-width:0!important}
html body.p76-layout-stable .p70-custom-dates label{min-width:0!important;flex:1 1 174px!important}
html body.p76-layout-stable .p70-custom-dates input{min-width:0!important;max-width:100%!important}
html body.p76-layout-stable .p70-period-heading{min-width:0!important}
html body.p76-layout-stable .p69-period-explain{flex-wrap:wrap!important}
html body.p76-layout-stable .p43-responsibility-card header{flex-wrap:wrap!important}

/* stack class fallbacks use hysteresis in JS, avoiding add/remove oscillation */
html body.p76-layout-stable .p68-core-cards>article.p76-needs-stack header,
html body.p76-layout-stable .p68-core-cards>article.p76-needs-stack footer{display:grid!important;grid-template-columns:minmax(0,1fr)!important;justify-items:start!important;align-items:start!important}
html body.p76-layout-stable .p68-task-list>article.p76-needs-stack{grid-template-columns:28px minmax(0,1fr)!important;align-items:start!important}
html body.p76-layout-stable .p68-task-list>article.p76-needs-stack p,
html body.p76-layout-stable .p68-task-list>article.p76-needs-stack>strong{grid-column:2!important;text-align:left!important}
html body.p76-layout-stable .p67-baseline-list>div.p76-needs-stack{grid-template-columns:minmax(0,1fr)!important;align-items:start!important}
html body.p76-layout-stable .p68-output-core.p76-needs-stack>header{flex-direction:column!important;align-items:flex-start!important}
html body.p76-layout-stable .p69-period-bar.p76-needs-stack .p70-period-main{grid-template-columns:minmax(0,1fr)!important}
html body.p76-layout-stable .p69-period-bar.p76-needs-stack .p70-period-heading,
html body.p76-layout-stable .p69-period-bar.p76-needs-stack .p70-period-presets,
html body.p76-layout-stable .p69-period-bar.p76-needs-stack .p70-custom-dates{grid-column:1!important;justify-content:flex-start!important}

@container p76overviewcard (max-width:460px){
  .p68-core-cards>article header,.p68-core-cards>article footer{display:grid!important;grid-template-columns:minmax(0,1fr)!important;justify-items:start!important;align-items:start!important}
  .p68-core-cards>article footer b{white-space:normal!important}
  .p68-core-cards>article small{min-height:0!important}
}
@container p76taskrow (max-width:650px){
  .p68-task-list>article{grid-template-columns:28px minmax(0,1fr)!important;align-items:start!important}
  .p68-task-list>article p,.p68-task-list>article>strong{grid-column:2!important;text-align:left!important}
}
@container p76baseline (max-width:600px){
  .p67-baseline-list>div{grid-template-columns:minmax(0,1fr)!important;align-items:start!important}
  .p67-baseline-list strong,.p67-baseline-list em{white-space:normal!important;text-align:left!important}
}
@container p76output (max-width:980px){
  .p68-output-core>header{flex-direction:column!important;align-items:flex-start!important}
  .p68-output-core-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}
}
@container p76output (max-width:560px){.p68-output-core-grid{grid-template-columns:minmax(0,1fr)!important}}
@container p76period (max-width:1180px){
  .p70-period-main{grid-template-columns:minmax(0,1fr)!important}
  .p70-period-heading,.p70-period-presets,.p70-custom-dates{grid-column:1!important}
  .p70-custom-dates{justify-content:flex-start!important}
  .p70-period-heading span{white-space:normal!important}
}
@container p76period (max-width:720px){
  .p70-period-presets button{flex:1 1 82px!important}
  .p70-custom-dates label{flex:1 1 100%!important;justify-content:space-between!important}
  .p70-custom-dates input{width:min(68vw,220px)!important}
  .p70-period-bar .p69-period-status{align-items:flex-start!important;flex-direction:column!important}
  .p70-period-bar .p69-period-status>em{margin-left:0!important}
}
@container p76legacytasks (max-width:720px){
  .p48-task{grid-template-columns:28px minmax(0,1fr) 14px!important;align-items:start!important}
  .p48-task>strong{grid-column:2!important;justify-self:start!important;white-space:normal!important}
  .p48-task-arrow{grid-column:3!important;grid-row:1 / span 2!important}
}
@container p76rank (max-width:560px){
  .p71-ranking-grid>section{overflow-x:auto!important}
  .p71-ranking-grid table{min-width:620px!important}
}


/* P77 — startup/input/chrome component resilience */
html body.p77-layout-stable .p7-topbar{container-type:inline-size;container-name:p77topbar;min-width:0!important}
html body.p77-layout-stable #patrolInputZone{container-type:inline-size;container-name:p77input;min-width:0!important;max-width:100%!important}
html body.p77-layout-stable .patrol-one-paste-grid,
html body.p77-layout-stable .patrol-one-paste-card,
html body.p77-layout-stable .p7-input-guide,
html body.p77-layout-stable .p7-topbar-context,
html body.p77-layout-stable .p7-topbar-title-row,
html body.p77-layout-stable .p7-topbar-actions{min-width:0!important;max-width:100%!important;box-sizing:border-box}
html body.p77-layout-stable .p7-input-guide p,
html body.p77-layout-stable .p7-guide-grid b,
html body.p77-layout-stable .p7-guide-grid small,
html body.p77-layout-stable .p15-input-format span,
html body.p77-layout-stable #p15InputLive b,
html body.p77-layout-stable #p15InputLive small{white-space:normal!important;overflow:visible!important;text-overflow:clip!important;overflow-wrap:anywhere!important}
html body.p77-layout-stable .p7-topbar.p76-needs-stack .p7-topbar-context{display:none!important}
html body.p77-layout-stable .patrol-one-paste-grid.p76-needs-stack{grid-template-columns:minmax(0,1fr)!important}
html body.p77-layout-stable .patrol-one-paste-grid.p76-needs-stack>*{min-width:0!important}
@container p77input (max-width:980px){
  .patrol-one-paste-grid{grid-template-columns:minmax(0,1fr)!important}
  .p7-input-workspace{justify-content:flex-start!important}
}
@container p77input (max-width:620px){
  .p7-guide-grid{grid-template-columns:minmax(0,1fr)!important}
  .patrol-one-paste-actions{display:grid!important;grid-template-columns:minmax(0,1fr)!important}
  .patrol-one-paste-actions .btn{width:100%!important;white-space:normal!important}
}
@container p77topbar (max-width:900px){
  .p7-topbar-product,.p7-topbar-title-row>span,.p7-period-chip{display:none!important}
  .p7-topbar-actions{gap:7px!important}
  .p7-top-action{min-width:0!important;padding-inline:10px!important}
}
@container p77topbar (max-width:620px){
  .p7-topbar-context{display:none!important}
  .p7-topbar-actions{margin-left:auto!important;width:100%!important;justify-content:flex-end!important}
  .p7-top-action{flex:0 1 auto!important;white-space:normal!important;line-height:1.2!important}
}

/* P77 geometry firewall — sidebar and work surface may never overlap */
@media (min-width:1101px){
  html body.patrol-mode.patrol-standalone.p77-layout-stable #patrolPage.p7-main{margin-left:226px!important}
}
@media (max-width:1100px){
  html body.patrol-mode.patrol-standalone.p77-layout-stable .p7-sidebar{left:10px!important;right:auto!important;width:68px!important;padding:8px!important}
  html body.patrol-mode.patrol-standalone.p77-layout-stable .p7-side-brand{margin:0!important;padding:10px 0!important;min-height:68px!important;justify-content:center!important;gap:0!important}
  html body.patrol-mode.patrol-standalone.p77-layout-stable .p7-brand-text,
  html body.patrol-mode.patrol-standalone.p77-layout-stable .p7-nav-label,
  html body.patrol-mode.patrol-standalone.p77-layout-stable .p48-nav-group-label,
  html body.patrol-mode.patrol-standalone.p77-layout-stable .p43-nav-badge,
  html body.patrol-mode.patrol-standalone.p77-layout-stable .p7-side-foot{display:none!important}
  html body.patrol-mode.patrol-standalone.p77-layout-stable .p7-side-nav{padding:0!important}
  html body.patrol-mode.patrol-standalone.p77-layout-stable .p7-side-nav .p48-nav-item,
  html body.patrol-mode.patrol-standalone.p77-layout-stable .p7-side-input.p48-nav-item,
  html body.patrol-mode.patrol-standalone.p77-layout-stable .p7-side-input{display:grid!important;grid-template-columns:minmax(0,1fr)!important;place-items:center!important;padding:6px!important;margin:0!important;width:100%!important;gap:0!important}
  html body.patrol-mode.patrol-standalone.p77-layout-stable .p7-nav-icon{margin:0!important}
  html body.patrol-mode.patrol-standalone.p77-layout-stable .p7-topbar{left:88px!important;right:10px!important;width:auto!important}
  html body.patrol-mode.patrol-standalone.p77-layout-stable #patrolPage.p7-main{margin-left:88px!important;margin-right:10px!important;width:auto!important;max-width:none!important}
}

/* P77 final chrome geometry lock — outrank legacy P9/P16/P48 !important rules */
@media (min-width:1101px){
  html body.patrol-mode.patrol-standalone.p7-product-shell.p9-product-shell.p16-product-shell.p48-product-shell.p77-layout-stable #patrolPage.patrol-page.p7-main{
    margin-left:226px!important;
    margin-right:0!important;
    width:calc(100% - 226px)!important;
    max-width:none!important;
  }
}
@media (max-width:1100px){
  html body.patrol-mode.patrol-standalone.p7-product-shell.p9-product-shell.p16-product-shell.p48-product-shell.p77-layout-stable .p7-sidebar{
    left:10px!important;right:auto!important;width:68px!important;max-width:68px!important;padding:8px!important;
  }
  html body.patrol-mode.patrol-standalone.p7-product-shell.p9-product-shell.p16-product-shell.p48-product-shell.p77-layout-stable .p7-side-brand{
    margin:0!important;padding:10px 0!important;min-height:68px!important;justify-content:center!important;gap:0!important;
  }
  html body.patrol-mode.patrol-standalone.p7-product-shell.p9-product-shell.p16-product-shell.p48-product-shell.p77-layout-stable .p7-brand-text,
  html body.patrol-mode.patrol-standalone.p7-product-shell.p9-product-shell.p16-product-shell.p48-product-shell.p77-layout-stable .p7-nav-label,
  html body.patrol-mode.patrol-standalone.p7-product-shell.p9-product-shell.p16-product-shell.p48-product-shell.p77-layout-stable .p48-nav-group-label,
  html body.patrol-mode.patrol-standalone.p7-product-shell.p9-product-shell.p16-product-shell.p48-product-shell.p77-layout-stable .p43-nav-badge,
  html body.patrol-mode.patrol-standalone.p7-product-shell.p9-product-shell.p16-product-shell.p48-product-shell.p77-layout-stable .p7-side-foot{display:none!important}
  html body.patrol-mode.patrol-standalone.p7-product-shell.p9-product-shell.p16-product-shell.p48-product-shell.p77-layout-stable .p7-side-nav{padding:0!important}
  html body.patrol-mode.patrol-standalone.p7-product-shell.p9-product-shell.p16-product-shell.p48-product-shell.p77-layout-stable .p7-side-nav .p48-nav-item,
  html body.patrol-mode.patrol-standalone.p7-product-shell.p9-product-shell.p16-product-shell.p48-product-shell.p77-layout-stable .p7-side-input.p48-nav-item,
  html body.patrol-mode.patrol-standalone.p7-product-shell.p9-product-shell.p16-product-shell.p48-product-shell.p77-layout-stable .p7-side-input{
    display:grid!important;grid-template-columns:minmax(0,1fr)!important;place-items:center!important;padding:6px!important;margin:0!important;width:100%!important;gap:0!important;
  }
  html body.patrol-mode.patrol-standalone.p7-product-shell.p9-product-shell.p16-product-shell.p48-product-shell.p77-layout-stable .p7-nav-icon{margin:0!important}
  html body.patrol-mode.patrol-standalone.p7-product-shell.p9-product-shell.p16-product-shell.p48-product-shell.p77-layout-stable .p7-topbar{
    left:88px!important;right:10px!important;width:auto!important;max-width:none!important;
  }
  html body.patrol-mode.patrol-standalone.p7-product-shell.p9-product-shell.p16-product-shell.p48-product-shell.p77-layout-stable #patrolPage.patrol-page.p7-main{
    margin-left:88px!important;margin-right:10px!important;width:auto!important;max-width:none!important;
  }
}


/* P78 — ranking header structural root fix: no extra notice row */
html body.p78-ranking-head-compact .p71-ranking-grid>section{grid-template-rows:auto 1fr!important}
html body.p78-ranking-head-compact .p71-ranking-head{height:72px!important;min-height:72px!important;max-height:72px!important;padding:12px 14px 11px!important;display:flex!important;flex-direction:column!important;justify-content:center!important;align-content:normal!important;gap:0!important;overflow:hidden!important;box-sizing:border-box!important}
html body.p78-ranking-head-compact .p71-ranking-head-main{display:grid!important;grid-template-rows:auto auto!important;gap:4px!important;min-width:0!important;width:100%!important}
html body.p78-ranking-head-compact .p71-ranking-head h4{margin:0!important;padding:0!important;line-height:1.35!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important}
html body.p78-ranking-head-compact .p71-ranking-sub{display:block!important;min-height:17px!important;line-height:17px!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important}
html body.p78-ranking-head-compact .p78-rank-state.tied{color:#9a6a25!important;font-weight:760!important}
html body.p78-ranking-head-compact .p71-ranking-note,html body.p78-ranking-head-compact .p69-zero-ranking{display:none!important}
html body.p78-ranking-head-compact .p71-ranking-grid>section>table{margin-top:0!important}
html body.p78-ranking-head-compact .p71-ranking-grid>section>table>thead>tr>th{vertical-align:middle!important}
@container p75-rank (max-width:560px){
 html body.p78-ranking-head-compact .p71-ranking-head{height:72px!important;min-height:72px!important;max-height:72px!important}
}


/* P79 — ranking mirror structure hardening */
html body.p79-ranking-mirror .p69-zero-ranking,
html body.p79-ranking-mirror .p71-ranking-note,
html body.p79-ranking-mirror .p79-ranking-grid > section > .p69-zero-ranking,
html body.p79-ranking-mirror .p79-ranking-grid > section > .p71-ranking-note{display:none!important}
html body.p79-ranking-mirror .p79-ranking-grid{align-items:start!important}
html body.p79-ranking-mirror .p79-ranking-grid>section{display:grid!important;grid-template-rows:72px auto!important;align-content:start!important;overflow:hidden!important}
html body.p79-ranking-mirror .p71-ranking-head{height:72px!important;min-height:72px!important;max-height:72px!important;padding:12px 14px 11px!important;display:flex!important;flex-direction:column!important;justify-content:center!important;gap:4px!important;overflow:hidden!important;box-sizing:border-box!important}
html body.p79-ranking-mirror .p71-ranking-head-main{display:grid!important;grid-template-rows:auto auto!important;gap:4px!important;min-width:0!important;width:100%!important}
html body.p79-ranking-mirror .p71-ranking-head h4{margin:0!important;padding:0!important;line-height:1.35!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important}
html body.p79-ranking-mirror .p71-ranking-sub{display:block!important;min-height:17px!important;line-height:17px!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important;color:#71889a!important;font-weight:650!important}
html body.p79-ranking-mirror .p78-rank-state.tied{color:#9a6a25!important;font-weight:760!important}
html body.p79-ranking-mirror .p79-ranking-grid table{margin-top:0!important}
html body.p79-ranking-mirror .p79-ranking-grid thead th{vertical-align:middle!important}
html body.p79-ranking-mirror .p79-ranking-grid>section>*{min-width:0!important}
@media(max-width:1100px){html body.p79-ranking-mirror .p79-ranking-grid>section{grid-template-rows:72px auto!important}}


/* P80 — strict ranking mirror: title -> table header -> rows */
html body.p80-ranking-mirror .p80-ranking-grid{align-items:start!important}
html body.p80-ranking-mirror .p80-ranking-grid>section{display:grid!important;grid-template-rows:58px auto!important;align-content:start!important;overflow:hidden!important}
html body.p80-ranking-mirror .p80-ranking-grid .p71-ranking-head{height:58px!important;min-height:58px!important;max-height:58px!important;padding:0 14px!important;display:flex!important;align-items:center!important;justify-content:flex-start!important;overflow:hidden!important;box-sizing:border-box!important}
html body.p80-ranking-mirror .p80-ranking-grid .p71-ranking-head h4{margin:0!important;padding:0!important;line-height:1.35!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important}
html body.p80-ranking-mirror .p80-ranking-grid .p71-ranking-sub,
html body.p80-ranking-mirror .p80-ranking-grid .p71-ranking-note,
html body.p80-ranking-mirror .p80-ranking-grid .p69-zero-ranking{display:none!important}
html body.p80-ranking-mirror .p80-ranking-grid table{margin:0!important}
html body.p80-ranking-mirror .p80-ranking-grid thead th{height:46px!important;vertical-align:middle!important}
html body.p80-ranking-mirror .p80-ranking-grid>section>*{min-width:0!important}
@media(max-width:1100px){html body.p80-ranking-mirror .p80-ranking-grid>section{grid-template-rows:58px auto!important}}
