:root{--navy:var(--brand-navy);--red:var(--brand-red);--muted:var(--ink-soft)}
.px button,.px input,.px select,.px textarea{font:inherit}
.px button{cursor:pointer;border:1px solid var(--line);background:white;color:var(--ink);border-radius:5px;padding:9px 13px}
.px button:hover{background:#edf1f9}
.px button.primary{background:var(--navy);color:white;border-color:var(--navy)}
.px button.danger{color:#c00}
.px .preview{font-size:12px;background:#fff4d5;padding:7px 12px;border-radius:30px;color:#76550c}
.px h1{font-size:25px;margin:0 0 7px}
.px h2{font-size:18px;margin:0}
.px h3{font-size:15px;margin:0 0 15px}
.px .muted{color:var(--muted);line-height:1.55}
.px small{font-size:12px}
.px .row{display:flex;gap:12px;align-items:center}
.px .between{justify-content:space-between}
.px .toolbar{margin:23px 0 17px}
.px .toolbar input{max-width:400px;flex:1}
.px .card{background:white;border:1px solid var(--line);border-radius:7px;padding:20px;margin-bottom:16px}
.px .kpis{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin:20px 0}
.px .kpis .card{margin:0}
.px .number{font-size:29px;font-weight:650;display:block;margin:7px 0}
.px .badge{display:inline-block;border-radius:20px;padding:5px 9px;font-size:12px;background:#edf1fa;color:var(--navy)}
.px .green{background:#e4f4eb;color:#22734f}
.px .amber{background:#fff2d6;color:#976315}
.px .red{background:#fde7e9;color:#b21d34}
.px .tabs{display:flex;gap:4px;flex-wrap:wrap;border-bottom:1px solid var(--line);margin:22px 0 20px}
.px .tabs button{border:0;background:transparent;border-radius:0;padding:12px 14px}
.px .tabs button.active{border-bottom:3px solid var(--navy);font-weight:650}
.px .steps{display:flex;gap:0;margin-top:24px;overflow:auto}
.px .step{flex:1;min-width:115px;text-align:center;font-size:12px;color:var(--muted);border-top:3px solid #d8deea;padding-top:12px}
.px .step.done{border-color:#369578;color:#28775e}
.px .step.now{border-color:var(--red);color:var(--red);font-weight:650}
.px .grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
.px .three{grid-template-columns:repeat(3,minmax(0,1fr))}
.px .tablewrap{overflow:auto}
.px table{border-collapse:collapse;width:100%;font-size:13px}
.px th{text-align:left;background:#f6f8fc;color:#60708e;font-size:12px;padding:14px 12px;border-bottom:1px solid var(--line)}
.px td{padding:15px 12px;border-bottom:1px solid #e6ebf3}
.px .clickrow{cursor:pointer}
.px .clickrow:hover{background:#f7f9fd}
.px input,.px textarea,.px select{width:100%;padding:10px 11px;border:1px solid var(--line);border-radius:5px;background:#fafbfe;color:var(--ink)}
.px label{display:block;font-size:12px;color:#60708e;margin-bottom:6px}
.px textarea{min-height:90px;resize:vertical}
.px .field{margin-bottom:14px}
.px .note{border-left:3px solid #d7a441;background:#fff9eb;padding:12px 16px;line-height:1.55;font-size:13px;margin:16px 0}
.px .suppliercard .row{margin-bottom:12px}
.px .suppliercard p{margin:9px 0}
.px .productpic{font-size:40px;background:#f3f5fa;text-align:center;padding:15px;border-radius:5px;margin-bottom:15px}
.px .history{border-left:2px solid #dce3f0;margin-left:6px;padding-left:20px}
.px .history div{margin-bottom:23px}
.px .file{display:flex;justify-content:space-between;align-items:center;gap:15px;padding:12px 0;border-bottom:1px solid var(--line)}
.px .file:last-child{border:0}
dialog.px{border:1px solid var(--line);border-radius:9px;color:var(--ink);width:min(680px,94vw);padding:25px;box-shadow:0 20px 90px #18284830}
dialog.px::backdrop{background:#14233b77}
.px .dialog-actions{display:flex;justify-content:flex-end;gap:10px;margin-top:20px}
.px .linkbutton{border:0;padding:0;background:transparent;color:#254d97;text-align:left}
.px .toast{position:fixed;bottom:25px;right:25px;background:#22325c;color:white;padding:15px 22px;border-radius:7px;z-index:100}
.px .headingactions{flex-wrap:wrap}
.px .empty{padding:35px;text-align:center;color:var(--muted)}
.px .grid,.px .three{grid-template-columns:1fr}
.px .kpis{grid-template-columns:repeat(2,1fr)}
.px .preview{max-width:180px}
.px .row{flex-wrap:wrap}
.px{max-width:100%}.px .grid{align-items:start}@media(max-width:900px){.px .grid{grid-template-columns:1fr}.px .kpis{grid-template-columns:repeat(2,1fr)}}

.px .project-audit-list{display:block;padding:6px 18px 16px}.px .project-audit-list .occ-item{display:block;margin:10px 0;padding:12px 14px;border-left:3px solid var(--accent);background:var(--paper);overflow-wrap:anywhere}.px .project-audit-meta{color:var(--ink-soft);font-size:12px;margin-top:5px}
