.financial-pie-workspace { display:grid; grid-template-columns:minmax(360px,.9fr) minmax(440px,1.1fr); gap:22px; align-items:start; }
.financial-pie-preview-panel,.financial-pie-editor { min-width:0; border:1px solid #dce4ed; border-radius:14px; background:#fff; box-shadow:0 8px 24px rgba(23,44,76,.06); }
.financial-pie-preview-panel { padding:18px; }
.financial-pie-panel-heading { display:flex; align-items:center; justify-content:space-between; margin-bottom:10px; }
.financial-pie-panel-heading p { margin:0; font-weight:750; }
.financial-pie-panel-heading small { color:#718096; }
.financial-pie-canvas-wrap { position:relative; width:min(100%,480px); aspect-ratio:1; margin:0 auto 14px; }
.financial-pie-canvas-wrap canvas { display:block; width:100%!important; height:100%!important; }
.financial-pie-open-image { width:100%; }
.financial-pie-editor { padding:18px; }
.financial-pie-settings { display:grid; grid-template-columns:minmax(0,1.4fr) minmax(150px,.6fr); gap:10px; margin-bottom:14px; }
.financial-pie-field { display:grid; grid-template-columns:auto minmax(0,1fr); align-items:center; gap:8px; }
.financial-pie-field label { color:#43536a; font-size:13px; font-weight:750; }
.financial-pie-editor input,.financial-pie-editor select { width:100%; min-width:0; height:40px; padding:7px 10px; border:1px solid #cbd6e3; border-radius:8px; background:#fff; color:#172033; }
.financial-pie-editor input:focus,.financial-pie-editor select:focus { border-color:#4b8bec; outline:3px solid rgba(75,139,236,.16); }
.financial-pie-table-heading,.financial-pie-row { display:grid; grid-template-columns:120px minmax(0,1fr) 88px; gap:8px; align-items:center; }
.financial-pie-table-heading { margin-bottom:6px; color:#64748b; font-size:12px; font-weight:700; }
.financial-pie-table-heading span:nth-child(2) { grid-column:2; }
.financial-pie-item-list { display:grid; gap:7px; }
.financial-pie-empty { margin:0; padding:16px; border:1px dashed #cbd6e3; border-radius:9px; color:#718096; font-size:13px; text-align:center; }
.financial-pie-row input[type="number"] { font-variant-numeric:tabular-nums; }
.financial-pie-new-row { margin-top:8px; padding-top:8px; border-top:1px solid #e6ebf1; }
.financial-pie-icon-action,.financial-pie-primary,.financial-pie-secondary,.financial-pie-danger,.financial-pie-copy,.financial-pie-twitter { display:inline-flex; align-items:center; justify-content:center; gap:7px; min-height:40px; padding:8px 12px; border:1px solid transparent; border-radius:8px; font-weight:700; line-height:1.2; text-decoration:none; white-space:nowrap; }
.financial-pie-primary,.financial-pie-icon-action.is-add { border-color:#0b63ce; background:#0b63ce; color:#fff; }
.financial-pie-primary:hover,.financial-pie-icon-action.is-add:hover { background:#0959b9; }
.financial-pie-secondary { border-color:#cbd6e3; background:#f8fafc; color:#29405c; }
.financial-pie-secondary:hover { border-color:#8eabc9; background:#f2f6fa; }
.financial-pie-danger,.financial-pie-icon-action.is-delete { border-color:#f1c7cb; background:#fff5f5; color:#b4232d; }
.financial-pie-danger:hover,.financial-pie-icon-action.is-delete:hover { background:#fdebed; }
.financial-pie-icon-action .material-icons { font-size:18px; }
.financial-pie-editor-actions { display:grid; grid-template-columns:1fr 1fr; gap:8px; margin-top:14px; }
.financial-pie-url-panel { display:grid; grid-template-columns:auto minmax(0,1fr); gap:9px; margin-top:14px; padding-top:14px; border-top:1px solid #e6ebf1; }
.financial-pie-generated-controls { display:grid; grid-template-columns:minmax(0,1fr) 40px; min-width:0; }
.financial-pie-generated-controls input { border-radius:8px 0 0 8px; background:#f8fafc; font-size:12px; }
.financial-pie-copy { min-width:40px; padding:7px; border-color:#cbd6e3; border-inline-start:0; border-radius:0 8px 8px 0; background:#fff; color:#29405c; }
.financial-pie-copy .material-icons { font-size:18px; }
.financial-pie-twitter { grid-column:1/-1; background:#111827; color:#fff; }
.financial-pie-twitter:hover { background:#273244; color:#fff; }
.financial-pie-x-mark { font-family:Arial,sans-serif; font-weight:800; }
.financial-pie-status { grid-column:1/-1; min-height:0; margin:0; color:#2563eb; font-size:12px; }
.financial-pie-status:empty { display:none; }
.financial-pie-editor button:focus-visible,.financial-pie-twitter:focus-visible { outline:3px solid #8ab0f8; outline-offset:2px; }
@media (max-width:900px) {
  .financial-pie-workspace { grid-template-columns:minmax(300px,.9fr) minmax(390px,1.1fr); gap:16px; }
  .financial-pie-preview-panel,.financial-pie-editor { padding:14px; }
  .financial-pie-settings { grid-template-columns:minmax(0,1fr); }
  .financial-pie-table-heading,.financial-pie-row { grid-template-columns:106px minmax(0,1fr) 76px; }
  .financial-pie-icon-action { padding-inline:8px; }
}
@media (max-width:760px) {
  .financial-pie-workspace { grid-template-columns:minmax(0,1fr); }
  .financial-pie-preview-panel,.financial-pie-editor { padding:14px; border-radius:11px; }
  .financial-pie-canvas-wrap { width:min(100%,420px); }
  .financial-pie-settings { grid-template-columns:minmax(0,1fr) minmax(0,1fr); margin-bottom:12px; }
  .financial-pie-field { grid-template-columns:1fr; gap:3px; }
  .financial-pie-editor-actions { margin-top:12px; }
  .financial-pie-url-panel { margin-top:12px; padding-top:12px; }
}
@media (max-width:480px) {
  .financial-pie-preview-panel { padding:10px; }
  .financial-pie-editor { padding:12px 10px; }
  .financial-pie-panel-heading { margin:0 2px 4px; }
  .financial-pie-canvas-wrap { margin-bottom:8px; }
  .financial-pie-settings { gap:6px; }
  .financial-pie-table-heading,.financial-pie-row { grid-template-columns:90px minmax(0,1fr) 40px; gap:5px; }
  .financial-pie-editor input,.financial-pie-editor select { height:38px; padding:6px 7px; font-size:14px; }
  .financial-pie-icon-action { width:40px; min-width:40px; padding:6px; }
  .financial-pie-icon-action>span:last-child { display:none; }
  .financial-pie-editor-actions { grid-template-columns:minmax(0,1fr) minmax(0,1fr); gap:6px; }
  .financial-pie-editor-actions button { min-width:0; padding:7px 6px; font-size:12px; white-space:normal; }
  .financial-pie-editor-actions .material-icons { display:none; }
  .financial-pie-url-panel { grid-template-columns:112px minmax(0,1fr); gap:6px; }
  .financial-pie-url-panel>.financial-pie-primary { padding-inline:7px; font-size:13px; }
  .financial-pie-url-panel>.financial-pie-primary .material-icons { display:none; }
  .financial-pie-twitter { min-height:38px; font-size:13px; }
}
