.fb-calculator {
  --fb-ink:#302e33;--fb-sub:#6f6a70;--fb-soft:#f7f5f2;--fb-border:#e9e4dd;
  --fb-gold:#b89c6c;--fb-gold-deep:#8f7146;--fb-white:#fff;
  box-sizing:border-box;container-type:inline-size;container-name:flis;
  width:100%;max-width:1120px;margin:0 auto;overflow:hidden;border:1px solid #e7e3dd;
  border-radius:17px;background:#f8f7f5;color:var(--fb-ink);font:14px/1.5 Inter,Arial,sans-serif;
  box-shadow:0 15px 45px rgba(35,31,31,.045);isolation:isolate;
}
.fb-calculator *, .fb-calculator *::before,.fb-calculator *::after{box-sizing:border-box}
.fb-calculator [hidden]{display:none!important}
.fb-calculator button,.fb-calculator input,.fb-calculator select{font:inherit}
.fb-calculator button{cursor:pointer}
.fb-calculator :is(button,input,select,summary):focus-visible{outline:3px solid #b89c6c7d;outline-offset:2px}
.fb-header{display:flex;align-items:center;justify-content:space-between;gap:22px;padding:23px 28px;background:#3d3c44;color:#fff}
.fb-logo{display:block;max-width:174px;height:auto;max-height:30px;object-fit:contain;object-position:left}
.fb-brand-text{color:#e0c79e;letter-spacing:.17em;font-size:11px;font-weight:800}
.fb-header h2{margin:11px 0 4px;font:700 clamp(21px,2.5vw,28px)/1.2 Inter,Arial,sans-serif;letter-spacing:-.037em;color:#fff}
.fb-header p{margin:0;color:#dedbdc;font-size:12px}
.fb-header-mark{padding:7px 12px;border:1px solid #777178;border-radius:50px;color:#eee3cf;font-size:11px;font-weight:600;white-space:nowrap}
.fb-grid{display:grid;grid-template-columns:minmax(280px,350px) minmax(0,1fr);align-items:start;gap:18px;padding:18px}
.fb-form,.fb-drawing,.fb-summary,.fb-breakdown{min-width:0;border:1px solid var(--fb-border);border-radius:13px;background:#fff}
.fb-form{padding:20px}
.fb-main{display:flex;flex-direction:column;gap:13px;min-width:0}
.fb-section-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:0 0 13px}
.fb-section-head h3{margin:0;font-size:15px;font-weight:750;letter-spacing:-.025em}
.fb-step{display:inline-grid;place-items:center;width:25px;height:25px;flex:0 0 25px;margin-right:7px;border-radius:7px;background:#f4eee5;color:#92734b;font-size:11px;font-weight:800}
.fb-section-label{display:flex;align-items:center}
.fb-section-divider{height:1px;background:#eeeae5;margin:20px 0}
.fb-cols{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:11px}
.fb-field{display:block;min-width:0;margin:0 0 12px}
.fb-field-label{display:block;margin-bottom:5px;color:#635c62;font-size:11px;font-weight:700}
.fb-control{display:flex;align-items:center;height:44px;min-width:0;border:1px solid #ded9d3;border-radius:9px;background:#fff;transition:border-color .16s,box-shadow .16s}
.fb-control:focus-within{border-color:var(--fb-gold);box-shadow:0 0 0 3px #b89c6c21}
.fb-control:has(input[aria-invalid="true"]){border-color:#b36c68}
.fb-control input{width:100%;min-width:0;height:100%;border:0;outline:0!important;padding:0 11px;border-radius:9px;background:transparent;color:#322f34;font-size:16px;font-weight:650;font-variant-numeric:tabular-nums}
.fb-unit{display:grid;place-items:center;align-self:stretch;padding:0 11px;border-left:1px solid #e9e5e0;color:#827980;font-size:11px;font-weight:700}
.fb-toggle{display:flex;align-items:center;justify-content:space-between;gap:9px;padding:10px 11px;margin:2px 0 12px;background:#f8f6f2;border-radius:9px;color:#494349;font-size:12px;font-weight:700;cursor:pointer}
.fb-toggle input{width:19px;height:19px;margin:0;accent-color:#9c7c4d;flex-shrink:0}
.fb-pattern-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin:6px 0 12px}
.fb-pattern{min-width:0;display:flex;flex-direction:column;gap:6px;align-items:center;padding:6px;border:1px solid #e5e0d8;border-radius:10px;background:#fff;color:#5b5459}
.fb-pattern[aria-pressed="true"]{border-color:#ae8d59;background:#faf5ed;box-shadow:inset 0 0 0 1px #ae8d59}
.fb-pattern svg{display:block;width:100%;height:67px;border-radius:5px;background:#eee6dd}
.fb-pattern span{white-space:nowrap;font-size:10.5px;font-weight:700}
.fb-field-select{width:100%;height:43px;padding:0 12px;border:1px solid #dfdad3;border-radius:9px;background:#fff;color:#494349;font-size:12px;font-weight:650}
.fb-segments{display:flex;gap:3px;padding:3px;border:1px solid #e4dfd9;border-radius:10px;background:#f5f3ef}
.fb-segments button{flex:1;min-width:0;min-height:36px;border:0;border-radius:7px;background:transparent;color:#6e686c;font-size:12px;font-weight:700}
.fb-segments button[aria-pressed="true"]{background:#fff;color:#3b373a;box-shadow:0 1px 4px #27201a1c}
.fb-advanced{margin-top:11px;border:1px solid #e7e0d7;border-radius:11px;background:#faf9f7;overflow:hidden}
.fb-advanced summary{display:flex;align-items:center;justify-content:space-between;gap:9px;list-style:none;cursor:pointer;padding:13px 14px;font-size:12px;font-weight:750;color:#51494c}
.fb-advanced summary::-webkit-details-marker,.fb-breakdown summary::-webkit-details-marker{display:none}
.fb-chevron{width:15px;height:15px;flex-shrink:0;transition:transform .2s}
.fb-advanced[open] .fb-chevron,.fb-breakdown[open] .fb-chevron{transform:rotate(180deg)}
.fb-advanced-body{padding:4px 13px 14px;border-top:1px solid #eae4dc}
.fb-advanced-note{margin:6px 0 0;color:#867e80;font-size:11px;line-height:1.5}
.fb-actions{display:flex;gap:9px;margin-top:13px}
.fb-actions button{flex:1;min-width:0;padding:10px 8px;border-radius:9px;font-size:11px;font-weight:700}
.fb-example{background:#f3ecdf;border:1px solid #e4d5bd;color:#745b39}
.fb-reset{background:#fff;border:1px solid #e5ded6;color:#6d6368}
.fb-summary{display:grid;grid-template-columns:1fr 1fr 1fr;gap:0;overflow:hidden}
.fb-stat{min-width:0;padding:15px 16px}
.fb-stat+.fb-stat{border-left:1px solid #eee8e1}
.fb-stat-label{display:block;color:#797076;font-size:10px;font-weight:750;letter-spacing:.035em;text-transform:uppercase}
.fb-stat-value{display:flex;flex-wrap:wrap;align-items:baseline;gap:4px;margin-top:7px;color:#3c383c;font-size:26px;font-weight:800;letter-spacing:-.055em;font-variant-numeric:tabular-nums;line-height:1.15}
.fb-stat-value small{font-size:11px;letter-spacing:0;font-weight:600}
.fb-stat-primary{background:#3d3c44}
.fb-stat-primary .fb-stat-label{color:#d8d1d0}
.fb-stat-primary .fb-stat-value{color:#fff}
.fb-stat-note{display:block;margin-top:5px;color:#a09a9a;font-size:10px;line-height:1.4}
.fb-stat-primary .fb-stat-note{color:#ded5d3}
.fb-drawing{overflow:hidden}
.fb-drawing-header{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:14px 16px 10px}
.fb-drawing-header h3{margin:0;font-size:14px}
.fb-drawing-header p{margin:2px 0 0;color:#898186;font-size:11px}
.fb-view-tabs{display:flex;gap:3px;padding:3px;border-radius:8px;background:#f3f1ed;border:1px solid #e7e2db}
.fb-view-tabs button{min-height:34px;padding:5px 11px;border:0;border-radius:6px;background:transparent;color:#686067;font-size:11px;font-weight:700}
.fb-view-tabs button[aria-pressed="true"]{background:#fff;color:#373339;box-shadow:0 1px 4px #3027251a}
.fb-canvas-shell{position:relative;margin:0 13px;border:1px solid #e7e3de;border-radius:10px;background-color:#fbfaf8;background-image:radial-gradient(#e9e3dc .7px,transparent .7px);background-size:17px 17px;overflow:hidden;min-height:275px;display:flex;align-items:center;justify-content:center;touch-action:none;cursor:grab;user-select:none}
.fb-canvas-shell[data-dragging="true"]{cursor:grabbing}
.fb-canvas-shell svg[data-fb-diagram]{display:block;width:100%;height:auto;max-height:355px;min-height:240px;overflow:visible;transform-origin:50% 50%;will-change:transform}
.fb-canvas-tag{position:absolute;top:10px;right:10px;padding:5px 9px;border:1px solid #e7ded2;border-radius:6px;background:#fffdfaeb;color:#7c6c57;font-size:9px;font-weight:800;pointer-events:none}
.fb-drawing-footer{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:10px 14px 9px}
.fb-drawing-caption{color:#7c737b;font-size:10px;line-height:1.4}
.fb-short-notice{margin:0;padding:1px 15px 13px;color:#7a706f;font-size:10px;line-height:1.45}
.fb-short-notice strong{color:#5f5456}
.fb-zoom{display:flex;gap:5px;flex-shrink:0}
.fb-zoom button{height:34px;min-width:34px;border:1px solid #e3ded7;border-radius:8px;background:#fff;color:#564d54;font-weight:800;font-size:17px}
.fb-zoom button[data-fb-zoom="reset"]{padding:0 9px;font-size:10px}
.fb-breakdown{overflow:hidden}
.fb-breakdown summary{display:flex;align-items:center;justify-content:space-between;gap:9px;padding:14px 17px;list-style:none;cursor:pointer;font-size:12px;font-weight:750;color:#484148}
.fb-breakdown-content{padding:0 16px 16px;border-top:1px solid #f0ece6}
.fb-breakdown-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 16px}
.fb-detail{display:flex;align-items:baseline;justify-content:space-between;gap:10px;padding:12px 0;border-bottom:1px solid #f0ece6}
.fb-detail span{color:#766e74;font-size:11px}
.fb-detail strong{white-space:nowrap;font-size:13px;font-variant-numeric:tabular-nums}
.fb-disclaimer{display:flex;gap:10px;margin-top:14px;padding:12px 13px;border:1px solid #e8ddcc;border-radius:9px;background:#fbf8f3;color:#73645e;font-size:11px;line-height:1.65}
.fb-disclaimer-mark{flex:0 0 17px;font-size:16px;color:#9c7d51;font-weight:800}
.fb-disclaimer strong{color:#484041}
.fb-disclaimer-more{display:block;margin-top:5px}
.fb-screenreader{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
@container flis (max-width:820px){
  .fb-grid{grid-template-columns:minmax(0,1fr);gap:12px;padding:12px}
  .fb-form{padding:16px}
  .fb-header{padding:18px}
  .fb-header-mark{display:none}
  .fb-header h2{margin-top:11px;font-size:23px}
  .fb-stat{padding:14px 12px}
  .fb-stat-value{font-size:23px}
  .fb-canvas-shell{min-height:240px}
  .fb-canvas-shell svg[data-fb-diagram]{min-height:215px;max-height:330px}
  .fb-breakdown-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@container flis (max-width:450px){
  .fb-header{padding:17px 16px}
  .fb-logo{max-width:147px}
  .fb-header h2{font-size:21px}
  .fb-header p{font-size:11px}
  .fb-grid{padding:9px;gap:10px}
  .fb-form{padding:14px}
  .fb-section-divider{margin:16px 0}
  .fb-pattern svg{height:53px}
  .fb-pattern span{font-size:10px}
  .fb-summary{grid-template-columns:repeat(2,minmax(0,1fr))}
  .fb-stat{padding:13px 12px}
  .fb-stat-primary{grid-column:span 1}
  .fb-stat:last-child{grid-column:1/-1;display:flex;align-items:center;justify-content:space-between;gap:8px;border-top:1px solid #eee8e1;border-left:0;padding:9px 12px}
  .fb-stat:last-child .fb-stat-value{margin:0;font-size:20px}
  .fb-stat:last-child .fb-stat-note{display:none}
  .fb-canvas-shell{margin:0 10px;min-height:205px}
  .fb-canvas-shell svg[data-fb-diagram]{min-height:190px}
  .fb-drawing-header{padding:13px 11px 9px}
  .fb-drawing-header h3{font-size:13px}
  .fb-drawing-header p{display:none}
  .fb-drawing-footer{padding:9px 10px 12px}
  .fb-breakdown-grid{grid-template-columns:1fr}
  .fb-detail{padding:9px 0}
}
@media(prefers-reduced-motion:reduce){.fb-calculator *{transition:none!important}}
