/* SmartPOS 2.0 Phase 2 — scoped layout. Keeps legacy POS styles intact. */
.p2-screen{max-width:1500px;margin:0 auto;padding:clamp(16px,2.4vw,32px);color:#263045;font-family:inherit}
.p2-head{display:flex;justify-content:space-between;align-items:center;gap:16px;margin-bottom:26px}
.p2-head small{color:#955577;font-weight:800;font-size:11px;letter-spacing:.13em}
.p2-head h1{font-size:clamp(25px,3vw,34px);font-weight:750;margin:5px 0 8px;line-height:1.16}
.p2-head p,.p2-panel p{color:#718095;font-size:14px;line-height:1.55;margin-bottom:14px}
.p2-columns{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.35fr);gap:20px;align-items:start;margin-bottom:20px}
.p2-panel{background:#fff;border:1px solid #e7e9ef;box-shadow:0 6px 24px #182d4807;border-radius:16px;padding:clamp(16px,2vw,26px);margin-bottom:20px;min-width:0}
.p2-panel h2{font-size:18px;font-weight:700;margin-bottom:8px;color:#273147}.p2-panel h3{font-size:15px;font-weight:650;margin:22px 0 10px}
.p2-panel label{display:block;margin:12px 0;color:#4b5769;font-size:12px;font-weight:700}
.p2-panel input:not([type=checkbox]),.p2-panel select{width:100%;display:block;margin-top:6px;padding:11px 13px;background:#fff;color:#273147;border:1px solid #dce1e8;border-radius:9px;font-size:14px;min-width:0}
.p2-panel input:focus,.p2-panel select:focus{outline:2px solid #b57b9b;outline-offset:1px}
.p2-line-grid{display:grid;grid-template-columns:minmax(0,2fr) minmax(75px,.65fr) minmax(90px,.8fr);gap:10px}
.p2-button{background:#955577;border:1px solid #955577;color:white;font-weight:700;font-size:13px;border-radius:9px;padding:10px 15px;cursor:pointer;white-space:nowrap}
.p2-button:hover{background:#774261}.p2-button:disabled{opacity:.5;cursor:not-allowed}
.p2-outline{background:white;color:#814563}.p2-outline:hover{color:white}
.p2-link{border:0;background:transparent;color:#925476;font-weight:700;cursor:pointer;padding:7px 9px;font-size:12px}
.p2-link:hover{text-decoration:underline}.p2-link:disabled{opacity:.4}
.p2-scroll{max-width:100%;overflow:auto;border:1px solid #eceff3;border-radius:11px;margin-top:14px}
.p2-table{border-collapse:collapse;width:100%;font-size:13px;text-align:left;min-width:520px}
.p2-table th{background:#f9f7fa;color:#626b7a;font-size:11px;text-transform:uppercase;letter-spacing:.035em;font-weight:800;white-space:nowrap}
.p2-table th,.p2-table td{padding:12px 13px;border-bottom:1px solid #eef0f4;vertical-align:middle}
.p2-table tr:last-child td{border-bottom:0}.p2-table td small{display:block;color:#86919d;font-size:11px;margin-top:3px}
.p2-pill{font-weight:700;font-size:11px;border-radius:99px;background:#f4eef3;color:#925476;padding:5px 9px}
.p2-alert{padding:12px 16px;margin:10px 0 20px;border-radius:10px;font-size:13px}
.p2-error{background:#fff0f0;color:#a53d43;border:1px solid #f3d0d2}
.p2-success{background:#ebf8f0;color:#23784b;border:1px solid #d2ebdb}
.p2-check{display:flex!important;align-items:center;gap:9px;font-size:13px!important}.p2-check input{width:18px;height:18px}
.p2-kpis{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:15px;margin:20px 0}
.p2-kpis>div{background:#fff;border:1px solid #e8e9ef;box-shadow:0 2px 14px #182d4805;border-radius:13px;padding:21px}
.p2-kpis span{font-size:12px;color:#738095;display:block}.p2-kpis strong{display:block;font-size:24px;color:#29374c;word-break:break-word;margin-top:7px}
.p2-date-bar{display:flex;gap:13px;align-items:end;flex-wrap:wrap}.p2-date-bar label{margin:0}.p2-date-bar input{min-width:150px}
.p2-confirm{background:#faf7f9;border-radius:12px;padding:14px;margin-top:16px}
@media(max-width:950px){.p2-columns{grid-template-columns:1fr}.p2-kpis{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:580px){.p2-head{align-items:flex-start;flex-direction:column}.p2-kpis{grid-template-columns:1fr 1fr}.p2-kpis strong{font-size:20px}.p2-line-grid{grid-template-columns:1fr 1fr}.p2-line-grid label:first-child{grid-column:span 2}.p2-screen{padding:14px}}
@media print{.p2-head button,.p2-date-bar,.p2-button,.p2-link{display:none!important}.p2-panel{box-shadow:none;border:0}.p2-scroll{overflow:visible}.p2-table{font-size:10px}}

/* Phase 2 completed document layouts */
.p2-report-brand {display:flex;align-items:center;gap:1rem;padding:1rem 0;border-bottom:2px solid #d9c9d0;margin-bottom:1rem;}
.p2-report-brand img {height:64px;width:64px;object-fit:contain;}
.p2-report-brand h2 {font-size:1.4rem;margin:0;line-height:1.4;}
.p2-report-brand p,.p2-report-brand small {margin:0;color:#536077;}
.p2-invoice {max-width:850px;margin:1rem auto;background:#fff;color:#172033;padding:2rem;border:1px solid #e3e6ec;border-radius:12px;}
.p2-invoice hr {border:0;border-top:1px solid #e3e6ec;margin:1rem 0;}
@media print {.p2-invoice,.p2-report-print {max-width:none!important;box-shadow:none!important;border:0!important;color:#111!important;background:#fff!important;}}
