#p-layout{margin:26px 0;padding:26px;background:#fff;border:1px solid var(--line,#dbe6e4);border-radius:12px;scroll-margin-top:20px}
.layout-settings,.layout-palette,.layout-actions{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin:16px 0}.layout-settings .control{min-width:180px}.layout-settings .control:first-child{flex:1}
.layout-palette{padding:15px;background:#f0f7f5;border-radius:8px}.layout-palette .button{cursor:grab}.layout-palette strong{margin-right:10px}
.layout-canvas{overflow:auto;padding:18px;background:#f6f8f8;border:1px solid #dce6e3;border-radius:8px}.layout-canvas>h3{margin:0 0 16px}.layout-band{display:flex;align-items:flex-start;gap:10px;min-width:min-content}
.layout-card{flex:1;min-width:240px;background:white;border:1px solid #bbd4cf;border-radius:7px;overflow:hidden}.layout-card-head{display:flex;align-items:center;gap:6px;padding:10px;background:#e9f3f0;cursor:grab}.layout-card-head strong{flex:1}.layout-card-head .button{padding:4px 6px}.layout-card-settings{padding:10px;display:flex;gap:8px;align-items:center}.layout-card-settings input[type=text]{width:100%;min-width:80px}.layout-card-settings label{white-space:nowrap}
.layout-drop{display:flex;align-items:center;justify-content:center;text-align:center;color:#678c84;border:1px dashed #abc9c2;border-radius:5px;background:#fafdfe;min-height:34px;margin:9px 0;font-size:12px;cursor:pointer}.layout-drop.side{width:28px;flex:0 0 28px;min-height:110px;margin:0;writing-mode:vertical-rl;letter-spacing:2px}.layout-drop.p-over{background:#d7eee7;border:2px solid #12786f;color:#12786f}.layout-card small{display:block;padding:9px;color:var(--muted)}
.layout-preview-table{overflow:auto;max-height:330px}.layout-preview-table table{border-collapse:collapse;width:100%;font-size:12px;white-space:nowrap}.layout-preview-table td,.layout-preview-table th{border:1px solid #e0e8e6;padding:8px 10px;text-align:left}.layout-preview-table th{background:#12786f;color:white;font-weight:500}.layout-preview-table .p-num{text-align:right}.layout-preview-table .p-total td{background:#dce8f6}.layout-preview-table caption{text-align:left;padding:8px;color:var(--muted)}
.layout-drop:not(.side){width:100%;min-height:42px}.layout-drop.side{width:42px;flex-basis:42px}.layout-card-head,.layout-palette .button{user-select:none}
.layout-card.preview{min-width:260px}.layout-card.preview h3{font-size:14px;margin:0;padding:12px;background:#254f53;color:#fff}.layout-result .layout-band{gap:22px;margin-bottom:24px}.layout-help{font-size:13px;line-height:1.8;color:var(--muted)}
@media(max-width:1000px){.p-zones{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:680px){#p-layout{padding:15px}.layout-settings{align-items:stretch;flex-direction:column}.layout-card-head{flex-wrap:wrap}}
