.portal{color:var(--foreground);background:var(--background);min-height:100dvh;font-size:14px}.portal *,.portal :before,.portal :after{box-sizing:border-box}.portal a{color:var(--primary)}.portal button,.portal .p-button,.portal input,.portal select,.portal textarea{font:inherit;scroll-margin-bottom:170px}.portal button,.portal .p-button{border:1px solid var(--border-strong);background:var(--surface-1);min-height:44px;color:var(--foreground);cursor:pointer;border-radius:8px;justify-content:center;align-items:center;gap:8px;padding:9px 15px;font-weight:600;text-decoration:none;display:inline-flex}.portal button:hover,.portal .p-button:hover{background:var(--surface-2)}.portal button.primary,.portal .p-button.primary{background:var(--primary);color:var(--primary-foreground);border-color:var(--primary)}.portal button.primary:hover{background:var(--primary-hover)}.portal button.danger{color:var(--danger)}.portal button:disabled{opacity:.5;cursor:not-allowed}.portal input,.portal select,.portal textarea{border:1px solid var(--border-strong);background:var(--surface-1);width:100%;min-width:0;min-height:44px;color:var(--foreground);border-radius:8px;padding:9px 11px}.portal input[type=checkbox]{width:20px;min-height:20px}.portal input::placeholder,.portal textarea::placeholder{color:var(--muted)}.portal label{color:var(--foreground-soft);gap:6px;font-size:13px;display:grid}.portal h1{letter-spacing:-.025em;margin:0 0 6px;font-size:clamp(22px,3vw,28px);font-weight:650}.portal h2{margin:0 0 10px;font-size:19px;font-weight:650}.portal p{line-height:1.6}.portal :focus-visible{outline:2px solid var(--primary);outline-offset:3px}.p-header{background:var(--surface-1);border-bottom:1px solid var(--border);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;padding:16px max(16px,50vw - 700px);display:flex}.p-brand{align-items:center;gap:12px;min-width:0;display:flex}.p-brand svg{color:var(--primary);flex:none}.p-brand strong{overflow-wrap:anywhere;font-size:17px;display:block}.p-brand small{color:var(--muted);font-size:12px;display:block}.p-nav{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.p-main{width:min(1400px,100%);margin:0 auto;padding:28px 20px 160px}.p-page-title{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;margin-bottom:24px;display:flex}.p-muted{color:var(--muted)}.p-card{background:var(--surface-1);border:1px solid var(--border);border-radius:12px;padding:20px}.p-stack{gap:16px;display:grid}.p-toolbar{flex-wrap:wrap;align-items:end;gap:12px;margin:20px 0;display:flex}.p-toolbar>label{flex:150px}.p-toolbar>label:first-child{flex:2 240px}.p-notice,.p-error,.p-success{border:1px solid var(--border);overflow-wrap:anywhere;border-radius:8px;margin:12px 0;padding:12px 16px}.p-notice{background:var(--accent-blue-bg);color:var(--foreground-soft);border-left:3px solid var(--primary)}.p-error{background:var(--danger-bg);color:var(--danger-strong);border-color:var(--danger)}.p-success{background:var(--success-bg);color:var(--success-strong)}.p-badge{border:1px solid var(--border);color:var(--foreground-soft);background:var(--surface-2);white-space:nowrap;border-radius:20px;padding:4px 9px;font-size:12px;display:inline-flex}.p-badge.confirmed,.p-badge.approved,.p-badge.invoiced{background:var(--success-bg);color:var(--success-strong)}.p-badge.pending,.p-badge.received,.p-badge.reviewing{background:var(--warning-bg);color:var(--warning-strong)}.p-badge.rejected,.p-badge.cancelled,.p-badge.suspended{background:var(--danger-bg);color:var(--danger-strong)}.p-table-wrap{border:1px solid var(--border);background:var(--surface-1);border-radius:12px;overflow:auto}.p-table{border-collapse:collapse;text-align:left;width:100%}.p-table th{color:var(--muted);background:var(--surface-2);padding:12px;font-size:12px;font-weight:600}.p-table td{border-top:1px solid var(--border);vertical-align:middle;padding:12px}.p-table tbody tr:nth-child(2n){background:var(--surface-2)}.p-table .p-num{text-align:right;font-variant-numeric:tabular-nums;white-space:nowrap}.p-description{overflow-wrap:anywhere;font-weight:600}.p-code{color:var(--muted);overflow-wrap:anywhere;font-size:12px}.p-quantity{justify-content:flex-end;align-items:center;gap:6px;display:flex}.p-quantity input{text-align:right;width:80px}.p-quantity button{padding:8px}.p-pagination{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;margin:16px 0;display:flex}.p-pagination select{width:auto}.p-bottom{z-index:15;background:var(--surface-1);border-top:1px solid var(--border);padding:14px max(20px, calc((100vw - 1360px) / 2)) max(14px, env(safe-area-inset-bottom));box-shadow:var(--shadow-elevated);justify-content:space-between;align-items:center;gap:12px;display:flex;position:fixed;bottom:0;left:0;right:0}.p-bottom strong{color:var(--primary);font-size:22px;display:block}.p-breakdown{flex-wrap:wrap;gap:0 12px;display:flex}.p-breakdown span{white-space:nowrap}.p-total{text-align:right;font-variant-numeric:tabular-nums;gap:6px;display:grid}.p-total>div{justify-content:space-between;gap:24px;display:flex}.p-total .grand{border-top:1px solid var(--border);padding-top:10px;font-size:21px;font-weight:700}.p-dialog{border:1px solid var(--border);background:var(--surface-1);width:min(960px,100vw - 24px);max-height:calc(100dvh - 32px);color:var(--foreground);box-shadow:var(--shadow-elevated-lg);border-radius:14px;margin:auto;padding:0}.p-dialog::backdrop{background:#00000080}.p-dialog .dialog-head{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;gap:12px;padding:16px 20px;display:flex}.p-dialog .dialog-body{max-height:calc(100dvh - 150px);padding:20px;overflow:auto}.p-auth{max-width:470px;margin:20px auto}.p-auth .p-card{padding:28px}.p-form-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;display:grid}.p-form-grid .wide{grid-column:1/-1}.p-empty{text-align:center;color:var(--muted);padding:48px 20px}.p-actions{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.p-tabs{flex-wrap:wrap;gap:8px;margin:20px 0;display:flex}.p-tabs .active{background:var(--accent-blue-bg);color:var(--primary);border-color:var(--primary)}.p-history{gap:12px;padding:0;list-style:none;display:grid}.p-history li{border-left:3px solid var(--border-strong);background:var(--surface-2);border-radius:0 6px 6px 0;padding:10px 14px}.p-history time{color:var(--muted);font-size:12px;display:block}.p-admin{border-radius:12px;min-height:0}.p-admin .p-main{padding:24px 20px}@media (max-width:767px){.p-main{padding:22px 12px 165px}.p-header{padding:12px}.p-nav{width:100%}.p-nav a,.p-nav button{flex:1}.p-catalog thead{display:none}.p-catalog tr{border-top:1px solid var(--border);grid-template-columns:minmax(0,1fr) auto;gap:10px;padding:12px;display:grid}.p-catalog td{border:0;padding:0;display:block}.p-catalog .product{grid-column:1/-1}.p-catalog .taxonomy{color:var(--muted);grid-column:1/-1;font-size:12px}.p-catalog .stock{text-align:left;font-size:12px}.p-catalog .price{text-align:left}.p-catalog .quantity-cell{grid-area:3/2/5;align-self:center}.p-bottom{padding:12px 14px max(12px, env(safe-area-inset-bottom))}.p-bottom strong{font-size:18px}.p-bottom .p-muted{font-size:12px}.p-bottom button{max-width:55%}.p-form-grid{grid-template-columns:1fr}.p-auth .p-card{padding:20px}.p-dialog{border-radius:16px 16px 0 0;width:100%;max-height:94dvh;margin:auto 0 0}.p-dialog .dialog-body{max-height:calc(94dvh - 90px);padding:14px}.p-compact-table{min-width:590px}.p-admin .p-main{padding:16px 10px}}
