:root{
  --aki-sim-deep:#124f49;
  --aki-sim-main:#1f766b;
  --aki-sim-main2:#2b8c7e;
  --aki-sim-accent:#ff8b43;
  --aki-sim-accent2:#e87330;
  --aki-sim-bg:#f4faf8;
  --aki-sim-soft:#eaf6f2;
  --aki-sim-border:#cfe1dc;
  --aki-sim-text:#173f3b;
  --aki-sim-sub:#647873;
}

.akihojo-kotoie-page{background:var(--aki-sim-bg);color:var(--aki-sim-text);min-height:100vh;padding-bottom:56px}
.akihojo-kotoie-page-inner{padding-top:18px}
.akihojo-kotoie-page-head{margin:24px 0 22px}
.akihojo-kotoie-page-head>p:first-child{margin:0 0 7px;color:var(--aki-sim-main);font-weight:800;font-size:13px}
.akihojo-kotoie-page-head h1{margin:0;color:#16443e;font-size:clamp(28px,4vw,44px);line-height:1.22;letter-spacing:.01em}
.akihojo-kotoie-page-head>p:last-child{margin:10px 0 0;color:#61736f;font-size:14px;line-height:1.85}

.akihojo-kotoie-steps{position:sticky;top:0;z-index:90;margin:0 0 18px!important;background:#fff;border:1px solid var(--aki-sim-border);box-shadow:0 6px 18px rgba(16,70,61,.06)}
.admin-bar .akihojo-kotoie-steps{top:32px}
.akihojo-kotoie-steps li.is-done b{font-size:0}
.akihojo-kotoie-steps li.is-done b:after{content:'✓';font-size:13px}
.akihojo-kotoie-steps li.is-done{background:#edf8f4;color:#277264}
.akihojo-kotoie-steps li.is-current{background:#def2eb;color:#135f54}
.akihojo-sim-stack{display:grid;grid-template-columns:minmax(0,1fr);row-gap:0;align-items:start;isolation:isolate}
/* Structural spacer: do not rely on margin/gap between the selected subsidy and calculator. */
.akihojo-sim-stack-spacer{display:block!important;grid-column:1/-1;width:100%;height:34px;min-height:34px;overflow:hidden;pointer-events:none;visibility:hidden}
.akihojo-kotoie-program{margin:0!important;position:relative;z-index:1;float:none!important;clear:both;width:100%;transform:none!important}
.akihojo-kotoie-shell{display:block;clear:both;position:relative;z-index:1;margin:0!important;float:none!important;width:100%;transform:none!important}

/* Kotoie engine, Akihojo composition. The engine stays in the DOM; only the visible shell is rearranged. */
.akihojo-kotoie-shell .kot-reform222-sim{margin:0!important;padding:0!important;background:transparent!important;font-family:inherit}
/* Kotoie standalone adds margin-top:-30px!important to .kotoie-estimate--embedded .kot-reform222-sim.
   Its selector can win when Kotoie CSS is printed after this page stylesheet. Use a more specific
   page-scoped reset so the structural spacer remains a real 34px/22px gap on PC/SP. */
.akihojo-sim-stack > .akihojo-kotoie-shell .kotoie-estimate--embedded.kotoie-estimate--standalone .kot-reform222-sim{
  margin-top:0!important;margin-right:0!important;margin-bottom:0!important;margin-left:0!important;
  padding-top:0!important;padding-right:0!important;padding-bottom:0!important;padding-left:0!important;
  transform:none!important;
}
.akihojo-sim-stack > .akihojo-kotoie-shell .kotoie-estimate--embedded.kotoie-estimate--standalone{margin:0!important;padding:0!important;transform:none!important}
.akihojo-kotoie-shell .kot-reform222-wrap{
  --kot-navi-main:var(--aki-sim-main);
  --kot-navi-dark:var(--aki-sim-deep);
  --kot-navi-accent:var(--aki-sim-accent);
  --kot-navi-accent-dark:var(--aki-sim-accent2);
  --kot-navi-soft:#f7fcfa;
  --kot-navi-soft2:var(--aki-sim-soft);
  --kot-navi-border:var(--aki-sim-border);
  --kot-navi-text:var(--aki-sim-text);
  --kot-navi-sub:var(--aki-sim-sub);
  max-width:none;margin:0;background:transparent;border:0;box-shadow:none;border-radius:0;overflow:visible;
  display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:16px 20px;align-items:start;
}

/* Akihojo page already has a title. Start the Kotoie interaction with the budget card only. */
.akihojo-kotoie-shell .kot-reform222-head{display:none!important}
.akihojo-kotoie-shell .kot-reform222-budget-box,
.akihojo-condition-review,
.akihojo-kotoie-shell .kot-reform222-result{
  grid-column:1;background:#fff;border:1px solid #d3e3df;border-radius:16px;margin:0!important;min-width:0;
}
.akihojo-kotoie-shell .kot-reform222-budget-box{padding:20px 22px;cursor:pointer;min-width:0;overflow:hidden;box-sizing:border-box}
.akihojo-kotoie-shell .kot-reform222-budget-title{color:var(--aki-sim-deep)!important;font-size:17px!important;font-weight:900!important}
.akihojo-kotoie-shell .kot-reform222-budget-input{position:relative;display:flex!important;align-items:center!important;justify-content:center!important;gap:8px!important;max-width:260px;margin-left:auto;margin-right:auto}
.akihojo-kotoie-shell .kot-reform222-budget-input:after{content:none!important}
.akihojo-kotoie-shell .kot-reform222-budget-input input{width:120px!important;min-width:0!important;cursor:pointer!important;padding:10px 12px!important;background:#fff!important;border-color:#bed8d2!important;color:var(--aki-sim-deep)!important;font-weight:900!important;caret-color:transparent!important;user-select:none!important}
.akihojo-kotoie-shell .kot-reform222-budget-input span{position:static!important;flex:0 0 auto!important;white-space:nowrap!important;margin:0!important}
.akihojo-kotoie-shell .kot-reform222-budget-input input:focus{border-color:var(--aki-sim-main2)!important;box-shadow:0 0 0 3px rgba(43,140,126,.13)!important}

/* Keep the original Kotoie controls available to its calculator/comparison engine but not user-visible. */
.akihojo-kotoie-shell .kot-reform222-form{
  grid-column:1!important;height:0!important;min-height:0!important;overflow:hidden!important;opacity:0!important;
  pointer-events:none!important;margin:0!important;padding:0!important;border:0!important;box-shadow:none!important;
}
.akihojo-kotoie-shell .kot-reform222-result{padding:22px 20px 24px;text-align:center;scroll-margin-top:118px}
.akihojo-kotoie-shell .kot-reform222-result.akihojo-result-is-calculated{display:block!important}
.akihojo-kotoie-shell .kot-reform222-badge{background:var(--aki-sim-main)!important}
.akihojo-kotoie-shell .kotEstimateHub__titleAccent{color:var(--aki-sim-accent2)!important}
.akihojo-kotoie-shell a{color:var(--aki-sim-main)}
.akihojo-kotoie-shell .kot-result-heading,.akihojo-kotoie-shell .kot-estimate-basis__heading{border-color:var(--aki-sim-main)!important}
.akihojo-kotoie-shell .kot-reform222-form label span{border-left-color:var(--aki-sim-accent)!important}
.akihojo-kotoie-shell .kot-reform222-form>button,.akihojo-kotoie-shell .kot-reform222-cta{background:var(--aki-sim-accent)!important;box-shadow:0 4px 0 var(--aki-sim-accent2)!important}
.akihojo-kotoie-shell .kot-average-price,.akihojo-kotoie-shell .kot-minmax-area,.akihojo-kotoie-shell .kot-detail-box,.akihojo-kotoie-shell .kot-result-support,.akihojo-kotoie-shell .kot-condition-compare,.akihojo-kotoie-shell .kot-provider-comparison{border-color:#d3e3df!important}
.akihojo-kotoie-shell [data-kotoie-subsidy-guide]{display:none!important}
.akihojo-kotoie-shell .kot-cv-balloon{border-color:#f1c39e!important;background:#fff8f1!important;color:#9a4b1e!important;font-size:16px!important}
/* Match the balloon tail to the balloon body; Kotoie normally uses the same background colour. */
.akihojo-kotoie-shell .kot-cv-balloon:after{border-color:#fff8f1 transparent transparent transparent!important}
/* Keep Kotoie's original CTA typography (24px desktop / 16px mobile). */
.akihojo-kotoie-shell .kot-reform222-cta{font-size:24px!important}
.akihojo-kotoie-shell .kot-reform222-cta span{background:#fff!important;color:var(--aki-sim-accent2)!important}
.akihojo-kotoie-shell .kot-reform222-cta:after{content:none!important}

/* Main-page selected-condition review after the modal has been completed. */
.akihojo-condition-review{display:none;padding:18px 20px}
.akihojo-condition-review.is-visible{display:block}
.akihojo-condition-review__head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:12px}
.akihojo-condition-review__head strong{display:block;color:var(--aki-sim-deep);font-size:17px}
.akihojo-condition-review__head p{margin:4px 0 0;color:var(--aki-sim-sub);font-size:12px;line-height:1.6}
.akihojo-condition-review__mode{display:none;flex:0 0 auto;padding:5px 9px;border-radius:999px;background:#fff1e7;color:#b75820;font-size:11px;font-weight:900}
.akihojo-condition-review.is-comparison .akihojo-condition-review__mode{display:inline-flex}
.akihojo-condition-review__list{border:1px solid var(--aki-sim-border);border-radius:12px;overflow:hidden;background:#fff}
.akihojo-condition-review__item{display:grid;grid-template-columns:150px minmax(0,1fr) auto;gap:14px;align-items:center;padding:12px 14px;border-top:1px solid #edf2f0}
.akihojo-condition-review__item:first-child{border-top:0}
.akihojo-condition-review__label{color:#70807c;font-size:12px;font-weight:800}
.akihojo-condition-review__value{color:#173f3b;font-size:14px;font-weight:900;line-height:1.45}
.akihojo-condition-review__change{border:1px solid #c8ded9;border-radius:999px;background:#fff;color:var(--aki-sim-main);padding:8px 13px;font-size:12px;font-weight:900;cursor:pointer;white-space:nowrap}
.akihojo-condition-review.is-comparison .akihojo-condition-review__change{border-color:#f0b588;background:#fff8f2;color:#b85b24}
.akihojo-condition-review__action{display:none;width:100%;margin:14px 0 0!important;border:0!important;border-radius:11px!important;background:var(--aki-sim-main)!important;color:#fff!important;padding:14px 18px!important;font-size:15px!important;font-weight:900!important;box-shadow:none!important;cursor:pointer}
.akihojo-condition-review__action.is-visible{display:block}
.akihojo-condition-review__action::after{content:" ▶";font-size:13px}
.akihojo-condition-review.is-comparison .akihojo-condition-review__action{background:var(--aki-sim-accent)!important}
.akihojo-condition-review__cancel{display:none;width:100%;margin:9px 0 0!important;border:1px solid #efc79f!important;border-radius:11px!important;background:#fffdf9!important;color:#8d4c25!important;padding:12px 16px!important;font-size:13px!important;font-weight:900!important;box-shadow:none!important;cursor:pointer}
.akihojo-condition-review__cancel.is-visible{display:flex;align-items:center;justify-content:center;gap:7px}
.akihojo-condition-review__cancel::before{content:'×';display:inline-flex;align-items:center;justify-content:center;width:20px;height:20px;flex:0 0 20px;border-radius:50%;background:#fbe8d7;color:#9b5429;font-size:15px;line-height:1;font-weight:900}
.akihojo-condition-review__cancel::after{content:none!important;display:none!important}
.akihojo-condition-review__cancel:hover{border-color:#efb98e!important;background:#fff8f2!important;color:#a95524!important}

/* Compact desktop amount rail. */
.akihojo-estimate-rail{grid-column:2;grid-row:1 / span 20;position:sticky;top:94px;background:#fff;border:1px solid #d1e2de;border-radius:16px;padding:16px;box-shadow:0 8px 24px rgba(12,63,55,.07)}
.admin-bar .akihojo-estimate-rail{top:126px}
.akihojo-estimate-rail__head span{display:block;color:var(--aki-sim-main);font-size:11px;font-weight:900}.akihojo-estimate-rail__head strong{display:block;margin-top:3px;color:var(--aki-sim-deep);font-size:16px}
.akihojo-estimate-rail__body{margin-top:13px;display:grid;gap:9px}.akihojo-estimate-rail__row{padding:12px;border:1px solid #dbe9e5;border-radius:11px;background:#fbfefd}.akihojo-estimate-rail__row span{display:block;color:#71817d;font-size:11px;font-weight:800}.akihojo-estimate-rail__row strong{display:block;margin-top:5px;color:var(--aki-sim-deep);font-size:21px;line-height:1.25}.akihojo-estimate-rail__row.is-net{background:#eaf7f3;border-color:#b6dcd2}.akihojo-estimate-rail__row.is-net strong{color:#0e6559;font-size:24px}.akihojo-estimate-rail__note{margin:11px 1px 0;color:#798884;font-size:10px;line-height:1.6}.akihojo-estimate-rail.is-empty .akihojo-estimate-rail__row.is-net strong{color:#9aa9a5}

/* Subsidy result stays at the very bottom of Kotoie's result area. */
.akihojo-kotoie-subsidy-result{margin-top:18px;padding:18px;border:1px solid #f0c79f;border-radius:14px;background:#fffaf4;text-align:left}
.akihojo-kotoie-subsidy-result>span{display:block;color:#b75d25;font-size:11px;font-weight:900}.akihojo-kotoie-subsidy-result h3{margin:4px 0 12px;color:#173f3b;font-size:19px}.akihojo-net-tabs{display:grid;grid-template-columns:repeat(3,1fr);margin:0 0 12px;border:1px solid #d6e6e2;border-radius:10px;overflow:hidden;background:#fff}.akihojo-net-tabs button{border:0;border-left:1px solid #e5eeeb;background:#fff;color:#617570;padding:10px 6px;font-size:12px;font-weight:900;cursor:pointer}.akihojo-net-tabs button:first-child{border-left:0}.akihojo-net-tabs button.is-active{background:var(--aki-sim-main);color:#fff}.akihojo-kotoie-subsidy-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.akihojo-kotoie-subsidy-grid>div{padding:11px;border:1px solid #eadfd3;border-radius:10px;background:#fff}.akihojo-kotoie-subsidy-grid span{display:block;color:#776d64;font-size:10px;font-weight:800}.akihojo-kotoie-subsidy-grid strong{display:block;margin-top:4px;color:#173f3b;font-size:16px}.akihojo-kotoie-subsidy-grid .is-subsidy strong{color:#d86d31}.akihojo-kotoie-subsidy-grid .is-net{background:#eaf7f3;border-color:#aad9cd}.akihojo-kotoie-subsidy-grid .is-net strong{color:#0c6659;font-size:20px}.akihojo-kotoie-subsidy-note{margin:11px 0 0;color:#766f68;font-size:10px;line-height:1.65}.akihojo-kotoie-subsidy-loading{margin-top:14px;padding:13px;border-radius:10px;background:#f0f8f6;color:#27695f;font-size:12px;font-weight:800}

/* Modal: Kotoie-style budget-first step flow, recolored for Akihojo. */
.akihojo-estimate-modal[hidden]{display:none!important}
.akihojo-estimate-modal{position:fixed;inset:0;z-index:100000;display:flex;align-items:center;justify-content:center;padding:20px}
.akihojo-estimate-modal__backdrop{position:absolute;inset:0;border:0;background:rgba(28,35,33,.58);cursor:pointer}
.akihojo-estimate-modal__panel{position:relative;z-index:1;width:min(680px,100%);max-height:min(860px,calc(100vh - 40px));display:flex;flex-direction:column;background:#fffdfa;border-radius:22px;box-shadow:0 24px 70px rgba(5,35,31,.30);overflow:hidden}
.akihojo-estimate-modal__head{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:20px 24px 17px;border-bottom:1px solid #e4ece9;background:#fffdfa}
.akihojo-estimate-modal__kicker{display:block;color:var(--aki-sim-accent2);font-size:13px;font-weight:900;letter-spacing:.01em}
.akihojo-estimate-modal__head strong{display:block;margin-top:5px;color:#2b2622;font-size:22px;line-height:1.35}
.akihojo-estimate-modal__close{flex:0 0 44px;width:44px;height:44px;border:0;border-radius:50%;background:#eef8f5;color:var(--aki-sim-deep);font-size:26px;font-weight:800;line-height:1;cursor:pointer}
.akihojo-estimate-modal__progress{padding:13px 24px 0;background:#fffdfa}
.akihojo-estimate-modal__progress strong{display:block;color:#6c6965;font-size:12px;font-weight:900}
.akihojo-estimate-modal__progress>div{height:6px;margin-top:8px;border-radius:999px;background:#e9efed;overflow:hidden}
.akihojo-estimate-modal__progress span{display:block;width:0;height:100%;border-radius:inherit;background:linear-gradient(90deg,var(--aki-sim-main),var(--aki-sim-accent));transition:width .22s ease}
.akihojo-estimate-modal__body{flex:1;min-height:0;padding:18px 24px 20px;overflow:auto}
.akihojo-estimate-modal__section-title{margin:0;color:#2f2924;font-size:20px;line-height:1.4}.akihojo-estimate-modal__section-lead{margin:7px 0 16px;color:#716b65;font-size:13px;line-height:1.7;font-weight:700}
.akihojo-estimate-modal__choices{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
.akihojo-estimate-choice{display:flex;align-items:center;min-height:58px;width:100%;padding:13px 15px;border:1px solid #d3e1dd;border-radius:13px;background:#fff;color:#2f2b27;text-align:left;font-size:14px;font-weight:900;line-height:1.45;cursor:pointer;transition:border-color .15s,background .15s,box-shadow .15s}
.akihojo-estimate-choice:hover{border-color:#8fc5b9;background:#f6fbfa}.akihojo-estimate-choice.is-current{border:2px solid var(--aki-sim-accent);background:#fff7ef;box-shadow:0 0 0 4px rgba(255,139,67,.10)}
.akihojo-estimate-modal__number{display:flex;align-items:center;gap:10px;padding:8px 0}.akihojo-estimate-modal__number-field{position:relative;flex:1}.akihojo-estimate-modal__number input{width:100%;padding:15px 56px 15px 16px;border:1px solid #bfd7d1;border-radius:12px;background:#fff;color:#173f3b;font-size:20px;font-weight:900;outline:none}.akihojo-estimate-modal__number input:focus{border-color:var(--aki-sim-main);box-shadow:0 0 0 4px rgba(31,118,107,.10)}.akihojo-estimate-modal__unit{position:absolute;right:16px;top:50%;transform:translateY(-50%);color:#6f7c78;font-size:13px;font-weight:900}.akihojo-estimate-modal__hint{margin:9px 0 0;color:#7b817f;font-size:11px;line-height:1.6}
.akihojo-estimate-modal__validation{margin:10px 0 0;padding:10px 12px;border:1px solid #efc5a4;border-radius:10px;background:#fff7ef;color:#98501f;font-size:12px;font-weight:800;line-height:1.65}
.akihojo-estimate-modal__validation[hidden]{display:none!important}

.akihojo-estimate-modal__review{border:1px solid #e0e8e5;border-radius:14px;overflow:hidden;background:#fff}.akihojo-estimate-modal__review-row{display:grid;grid-template-columns:150px minmax(0,1fr) auto;gap:12px;align-items:center;padding:13px 14px;border-top:1px solid #edf1f0}.akihojo-estimate-modal__review-row:first-child{border-top:0}.akihojo-estimate-modal__review-label{color:#746c65;font-size:12px;font-weight:800}.akihojo-estimate-modal__review-value{color:#292622;font-size:14px;font-weight:900;line-height:1.45}.akihojo-estimate-modal__review-change{border:1px solid #d2ddd9;border-radius:999px;background:#fff;color:var(--aki-sim-main);padding:8px 15px;font-size:12px;font-weight:900;cursor:pointer}.akihojo-estimate-modal.is-comparison .akihojo-estimate-modal__review-change{border-color:#f0b588;background:#fff8f2;color:#b85b24}.akihojo-estimate-modal__review-mode{display:none;margin:0 0 10px;padding:8px 11px;border-radius:10px;background:#fff4ea;color:#a95625;font-size:12px;font-weight:900}.akihojo-estimate-modal.is-comparison .akihojo-estimate-modal__review-mode{display:block}
.akihojo-estimate-modal__footer{display:flex;justify-content:flex-end;gap:10px;padding:14px 24px 18px;border-top:1px solid #e7ecea;background:#fffdfa}.akihojo-estimate-modal__back,.akihojo-estimate-modal__next{min-height:46px;border-radius:999px;padding:0 22px;font-size:14px;font-weight:900;cursor:pointer}.akihojo-estimate-modal__back{border:1px solid #cddbd7;background:#fff;color:#40544f}.akihojo-estimate-modal__next{border:0;background:var(--aki-sim-accent);color:#fff;min-width:100px}.akihojo-estimate-modal__next[disabled]{opacity:.45;cursor:not-allowed}.akihojo-estimate-modal__next.is-calculate{min-width:250px}
.akihojo-modal-open{overflow:hidden!important}

@media(max-width:900px){
  .akihojo-sim-stack-spacer{height:22px;min-height:22px}
  .akihojo-kotoie-shell .kot-reform222-wrap{display:block}.akihojo-kotoie-shell .kot-reform222-budget-box,.akihojo-condition-review,.akihojo-kotoie-shell .kot-reform222-result{margin-bottom:14px!important}.akihojo-estimate-rail{display:none!important}.akihojo-kotoie-page{padding-bottom:30px}.akihojo-kotoie-page-head h1{font-size:28px}.akihojo-kotoie-steps{margin-left:-2px!important;margin-right:-2px!important}.admin-bar .akihojo-kotoie-steps{top:46px}.akihojo-kotoie-subsidy-grid{grid-template-columns:1fr}.akihojo-kotoie-subsidy-grid>div{display:flex;align-items:center;justify-content:space-between}.akihojo-kotoie-subsidy-grid strong{margin:0;font-size:17px}.akihojo-kotoie-subsidy-grid .is-net strong{font-size:20px}.akihojo-net-tabs button{font-size:11px;padding:9px 3px}
}
@media(max-width:640px){
  .akihojo-kotoie-shell .kot-reform222-budget-input{max-width:230px;gap:7px!important}.akihojo-kotoie-shell .kot-reform222-budget-input input{width:126px!important;max-width:calc(100% - 56px)!important;padding:10px 12px!important}.akihojo-kotoie-shell .kot-reform222-budget-input span{font-size:16px!important}

  .akihojo-estimate-modal{align-items:flex-end;padding:0}.akihojo-estimate-modal__panel{width:100%;max-height:92vh;border-radius:20px 20px 0 0}.akihojo-estimate-modal__head{padding:16px 16px 13px}.akihojo-estimate-modal__head strong{font-size:19px}.akihojo-estimate-modal__progress{padding:11px 16px 0}.akihojo-estimate-modal__body{padding:15px 16px 18px}.akihojo-estimate-modal__choices{grid-template-columns:1fr}.akihojo-estimate-choice{min-height:54px}.akihojo-estimate-modal__footer{padding:12px 16px 16px}.akihojo-estimate-modal__back,.akihojo-estimate-modal__next{padding:0 17px}.akihojo-estimate-modal__next.is-calculate{min-width:0;flex:1}.akihojo-estimate-modal__review-row{grid-template-columns:1fr auto;gap:7px 10px}.akihojo-estimate-modal__review-label{grid-column:1}.akihojo-estimate-modal__review-value{grid-column:1}.akihojo-estimate-modal__review-change{grid-column:2;grid-row:1 / span 2}.akihojo-condition-review{padding:15px 14px}.akihojo-condition-review__item{grid-template-columns:1fr auto;gap:5px 9px;padding:11px 12px}.akihojo-condition-review__label{grid-column:1}.akihojo-condition-review__value{grid-column:1}.akihojo-condition-review__change{grid-column:2;grid-row:1 / span 2}.akihojo-kotoie-shell .kot-reform222-budget-box{padding:16px 14px}
}

@media(max-width:600px){
  .akihojo-kotoie-shell .kot-cv-balloon{font-size:14px!important}
  .akihojo-kotoie-shell .kot-reform222-cta{font-size:16px!important}
}
@media(max-width:782px){.admin-bar .akihojo-kotoie-steps{top:46px}}

/* ======================================================================
 * v0.1.74 - richer but still budget-first simulator hero
 * ====================================================================== */
.akihojo-kotoie-page-head{
  position:relative;
  display:grid;
  grid-template-columns:minmax(0,1fr) 180px;
  gap:24px;
  align-items:center;
  margin:18px 0 18px;
  padding:26px 28px;
  border:1px solid #cfe2dc;
  border-radius:22px;
  background:
    radial-gradient(circle at 88% 18%,rgba(255,139,67,.12),transparent 25%),
    linear-gradient(135deg,#ffffff 0%,#f1faf7 72%,#fff8f1 100%);
  box-shadow:0 10px 28px rgba(18,79,73,.055);
  overflow:hidden;
}
.akihojo-kotoie-page-head__copy{position:relative;z-index:2;min-width:0}
.akihojo-kotoie-page-head>p:first-child{display:none}
.akihojo-kotoie-page-head__eyebrow{
  display:inline-flex!important;
  align-items:center;
  width:auto;
  margin:0 0 9px!important;
  padding:6px 10px;
  border-radius:999px;
  background:#e6f5f0;
  color:var(--aki-sim-main)!important;
  font-size:12px!important;
  line-height:1.2;
  font-weight:900!important;
}
.akihojo-kotoie-page-head h1{max-width:850px;font-size:clamp(30px,3.5vw,44px);letter-spacing:-.02em}
.akihojo-kotoie-page-head__lead{max-width:860px;margin:11px 0 0!important;color:#566d67!important;font-size:14px!important;line-height:1.85!important}
.akihojo-kotoie-page-head__benefits{
  display:flex;
  flex-wrap:wrap;
  gap:7px 8px;
  margin-top:15px;
}
.akihojo-kotoie-page-head__benefits span{
  display:inline-flex;
  align-items:center;
  gap:6px;
  min-height:30px;
  padding:6px 10px;
  border:1px solid #d4e6e1;
  border-radius:999px;
  background:rgba(255,255,255,.86);
  color:#365f56;
  font-size:11px;
  line-height:1.35;
  font-weight:850;
}
.akihojo-kotoie-page-head__benefits b{color:#1d7a68;font-size:12px}
.akihojo-kotoie-page-head__guide{
  position:relative;
  z-index:1;
  min-height:154px;
  display:flex;
  align-items:flex-end;
  justify-content:center;
}
.akihojo-kotoie-page-head__guide img{
  display:block;
  width:150px;
  max-width:100%;
  height:auto;
  object-fit:contain;
  filter:drop-shadow(0 8px 14px rgba(18,79,73,.08));
}
.akihojo-kotoie-page-head__guide span{
  position:absolute;
  right:0;
  top:0;
  padding:8px 10px;
  border:1px solid #edc99f;
  border-radius:12px 12px 12px 3px;
  background:#fffaf4;
  color:#9a5529;
  font-size:10px;
  line-height:1.45;
  font-weight:900;
  text-align:center;
  box-shadow:0 5px 12px rgba(130,75,31,.05);
}
@media(max-width:900px){
  .akihojo-kotoie-page-head{
    grid-template-columns:1fr;
    gap:0;
    padding:22px 22px 20px;
    border-radius:20px;
  }
  .akihojo-kotoie-page-head__guide{display:none}
  .akihojo-kotoie-page-head h1{font-size:30px}
}
@media(max-width:640px){
  .akihojo-kotoie-page-inner{padding-top:12px}
  .akihojo-sim-breadcrumb{margin-bottom:18px}
  .akihojo-kotoie-page-head{
    margin:10px 0 16px;
    padding:18px 16px 17px;
    border-radius:18px;
  }
  .akihojo-kotoie-page-head__eyebrow{margin-bottom:8px!important;font-size:11px!important}
  .akihojo-kotoie-page-head h1{font-size:27px;line-height:1.32;letter-spacing:-.025em}
  .akihojo-kotoie-page-head__lead{font-size:13px!important;line-height:1.8!important}
  .akihojo-kotoie-page-head__benefits{display:grid;grid-template-columns:1fr;gap:6px;margin-top:13px}
  .akihojo-kotoie-page-head__benefits span{min-height:0;padding:6px 9px;font-size:10.5px}
}


/* ======================================================================
 * v0.1.75 - stronger first budget state / collapse it after calculation
 * ====================================================================== */
.akihojo-kotoie-shell .kot-reform222-budget-box {
  min-height:190px;
  padding:34px 24px 32px;
  display:flex;
  flex-direction:column;
  justify-content:center;
}
/* Once a real estimate exists, the budget-entry card has completed its job.
   Budget remains editable from the visible condition review's "変更" control. */
.akihojo-kotoie-shell.akihojo-has-calculated-result .kot-reform222-budget-box {
  display:none !important;
}
@media (max-width:767px) {
  .akihojo-kotoie-shell .kot-reform222-budget-box {
    min-height:210px;
    padding:28px 16px 27px;
  }
}

/* ======================================================================
 * v0.1.76 - rebalance first view / reliable post-calc budget collapse
 * ====================================================================== */
.akihojo-kotoie-page-head {
  grid-template-columns:minmax(0,1fr) 156px;
  gap:20px;
  margin:18px 0 16px;
  padding:24px 26px 23px;
}
.akihojo-kotoie-page-head h1 {
  max-width:820px;
  font-size:clamp(30px,3.15vw,40px);
  line-height:1.2;
}
.akihojo-kotoie-page-head__lead {
  max-width:790px;
  margin-top:10px!important;
  font-size:14px!important;
  line-height:1.75!important;
}
.akihojo-kotoie-page-head__benefits {
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  max-width:700px;
  gap:7px;
  margin-top:14px;
}
.akihojo-kotoie-page-head__benefits span {
  justify-content:center;
  min-height:36px;
  padding:7px 9px;
  text-align:center;
  font-size:11px;
}
.akihojo-kotoie-page-head__guide {
  min-height:138px;
}
.akihojo-kotoie-page-head__guide img {
  width:132px;
}
.akihojo-kotoie-page-head__guide span {
  right:0;
  top:2px;
  min-width:76px;
  padding:7px 9px;
  font-size:9.5px;
}
.akihojo-kotoie-steps {
  margin-bottom:16px!important;
}
/* The first card is deliberately the only large input surface before the modal
   starts. v0.1.75 intended this sizing, but the appended rules were not parsed correctly by browsers. */
.akihojo-kotoie-shell .kot-reform222-budget-box {
  min-height:205px;
  padding:38px 24px 36px;
}
.akihojo-kotoie-shell.akihojo-has-calculated-result .kot-reform222-budget-box,
.akihojo-kotoie-shell .kot-reform222-budget-box[aria-hidden="true"] {
  display:none!important;
}

@media (max-width:900px) {
  .akihojo-kotoie-page-head {
    margin:12px 0 14px;
    padding:19px 18px 18px;
  }
  .akihojo-kotoie-page-head h1 {
    font-size:28px;
  }
}
@media (max-width:640px) {
  .akihojo-kotoie-page-inner { padding-top:10px; }
  .akihojo-sim-breadcrumb { margin-bottom:14px; }
  .akihojo-kotoie-page-head {
    margin:8px 0 12px;
    padding:16px 14px 15px;
    border-radius:17px;
  }
  .akihojo-kotoie-page-head__eyebrow {
    margin-bottom:7px!important;
    padding:5px 9px;
    font-size:10.5px!important;
  }
  .akihojo-kotoie-page-head h1 {
    font-size:24px;
    line-height:1.28;
  }
  .akihojo-kotoie-page-head__lead {
    margin-top:9px!important;
    font-size:12.5px!important;
    line-height:1.72!important;
  }
  .akihojo-kotoie-page-head__benefits {
    grid-template-columns:repeat(3,minmax(0,1fr));
    gap:5px;
    margin-top:11px;
  }
  .akihojo-kotoie-page-head__benefits span {
    min-height:46px;
    padding:6px 4px;
    gap:3px;
    flex-direction:column;
    justify-content:center;
    border-radius:12px;
    font-size:9.5px;
    line-height:1.35;
  }
  .akihojo-kotoie-page-head__benefits b {
    font-size:10px;
    line-height:1;
  }
  .akihojo-kotoie-steps {
    margin-bottom:14px!important;
  }
  .akihojo-kotoie-shell .kot-reform222-budget-box {
    min-height:220px;
    padding:34px 15px 32px;
  }
  .akihojo-kotoie-shell .kot-reform222-budget-title {
    margin-bottom:16px!important;
    font-size:18px!important;
    line-height:1.45!important;
  }
}

/* ======================================================================
 * v0.1.77 - integrate Aki-suke into the simulator hero on PC/SP
 * ====================================================================== */
.akihojo-kotoie-page-head{
  grid-template-columns:minmax(0,1fr) 226px;
  gap:24px;
  align-items:stretch;
}
.akihojo-kotoie-page-head__copy{
  display:flex;
  min-width:0;
  flex-direction:column;
  justify-content:center;
}
.akihojo-kotoie-page-head__guide{
  position:relative;
  display:flex!important;
  min-height:170px;
  padding:4px 2px 0;
  flex-direction:column;
  align-items:center;
  justify-content:flex-end;
  isolation:isolate;
}
.akihojo-kotoie-page-head__guide:before{
  content:'';
  position:absolute;
  z-index:-1;
  right:6px;
  bottom:1px;
  width:172px;
  height:138px;
  border-radius:55% 45% 46% 54% / 52% 48% 52% 48%;
  background:linear-gradient(145deg,rgba(255,247,238,.78),rgba(232,247,242,.84));
  border:1px solid rgba(214,229,223,.72);
}
.akihojo-kotoie-page-head__guide img{
  position:relative;
  z-index:2;
  display:block;
  width:126px;
  max-width:none;
  height:auto;
  margin:0 5px -2px auto;
  object-fit:contain;
  filter:drop-shadow(0 7px 12px rgba(18,79,73,.07));
}
.akihojo-kotoie-page-head__guide-bubble{
  position:absolute;
  z-index:3;
  left:0;
  top:13px;
  width:154px;
  padding:10px 12px 9px;
  border:1px solid #e8c8a8;
  border-radius:15px 15px 5px 15px;
  background:#fffdf9;
  color:#76513a;
  box-shadow:0 7px 18px rgba(113,76,45,.06);
  text-align:left;
}
.akihojo-kotoie-page-head__guide-bubble:after{
  content:'';
  position:absolute;
  right:-8px;
  bottom:14px;
  width:15px;
  height:15px;
  border-right:1px solid #e8c8a8;
  border-bottom:1px solid #e8c8a8;
  background:#fffdf9;
  transform:rotate(-45deg);
}
.akihojo-kotoie-page-head__guide-bubble strong{
  display:block;
  color:#9c542b;
  font-size:12px;
  line-height:1.35;
  font-weight:900;
}
.akihojo-kotoie-page-head__guide-bubble span{
  position:static!important;
  display:block;
  min-width:0!important;
  margin:3px 0 0!important;
  padding:0!important;
  border:0!important;
  border-radius:0!important;
  background:transparent!important;
  box-shadow:none!important;
  color:#5d655f!important;
  font-size:10px!important;
  line-height:1.45!important;
  font-weight:800!important;
  text-align:left!important;
}

@media(max-width:900px){
  .akihojo-kotoie-page-head{
    display:block;
  }
  .akihojo-kotoie-page-head__guide{
    display:flex!important;
    min-height:0;
    margin-top:13px;
    padding:11px 0 0;
    border-top:1px solid rgba(207,226,220,.72);
    flex-direction:row;
    align-items:center;
    justify-content:flex-end;
    gap:8px;
  }
  .akihojo-kotoie-page-head__guide:before{content:none}
  .akihojo-kotoie-page-head__guide img{
    order:2;
    flex:0 0 auto;
    width:84px;
    margin:0 3px -4px 0;
  }
  .akihojo-kotoie-page-head__guide-bubble{
    position:relative;
    left:auto;
    top:auto;
    order:1;
    width:auto;
    max-width:190px;
    margin:0;
    padding:9px 11px 8px;
  }
  .akihojo-kotoie-page-head__guide-bubble:after{
    right:-7px;
    bottom:15px;
    width:13px;
    height:13px;
  }
}
@media(max-width:640px){
  .akihojo-kotoie-page-head__guide{
    margin-top:11px;
    padding-top:9px;
  }
  .akihojo-kotoie-page-head__guide img{width:74px}
  .akihojo-kotoie-page-head__guide-bubble{max-width:178px;padding:8px 10px 7px}
  .akihojo-kotoie-page-head__guide-bubble strong{font-size:11px}
  .akihojo-kotoie-page-head__guide-bubble span{font-size:9.5px!important}
}

/* ======================================================================
 * v0.1.78 - make the Aki-suke guide read as one speech/character unit
 * ====================================================================== */
@media (min-width:901px) {
  .akihojo-kotoie-page-head__guide {
    min-height:172px;
    padding:0 4px;
    justify-content:flex-end;
  }
  .akihojo-kotoie-page-head__guide:before {
    right:2px;
    bottom:0;
    width:184px;
    height:145px;
    border-radius:50% 50% 45% 55% / 52% 48% 52% 48%;
    background:linear-gradient(145deg,rgba(255,248,240,.76),rgba(234,248,243,.9));
  }
  .akihojo-kotoie-page-head__guide img {
    width:128px;
    margin:0 10px -2px auto;
  }
  .akihojo-kotoie-page-head__guide-bubble {
    left:7px;
    top:8px;
    width:164px;
    padding:10px 12px 9px;
    border-radius:15px;
  }
  .akihojo-kotoie-page-head__guide-bubble:after {
    right:27px;
    bottom:-8px;
    width:14px;
    height:14px;
    border-right:1px solid #e8c8a8;
    border-bottom:1px solid #e8c8a8;
    background:#fffdf9;
    transform:rotate(45deg);
  }
}

@media (max-width:900px) {
  .akihojo-kotoie-page-head__guide-bubble:after {
    right:-7px;
    bottom:14px;
    width:13px;
    height:13px;
    transform:rotate(-45deg);
  }
}


/* ======================================================================
 * v0.1.86 - budget launcher belongs to the hero; result-only step/summary
 * ====================================================================== */
.akihojo-kotoie-page-head__budget{
  grid-column:1 / -1;
  width:100%;
  margin-top:4px;
  padding:18px 18px 2px;
  border-top:1px solid rgba(190,218,210,.92);
  text-align:center;
  cursor:pointer;
  box-sizing:border-box;
}
.akihojo-kotoie-page-head__budget[hidden]{display:none!important}
.akihojo-kotoie-page-head__budget-title{
  margin:0 0 11px!important;
  color:var(--aki-sim-deep)!important;
  font-size:18px!important;
  line-height:1.45!important;
  font-weight:900!important;
  letter-spacing:.01em;
}
.akihojo-kotoie-page-head__budget-input{
  display:flex;
  align-items:center;
  justify-content:center;
  gap:10px;
  margin:0 auto;
}
.akihojo-kotoie-page-head__budget-input input{
  width:132px;
  height:50px;
  margin:0;
  padding:0 14px;
  border:2px solid #b9d8d0;
  border-radius:12px;
  background:#fff;
  color:var(--aki-sim-deep);
  box-shadow:none;
  outline:none;
  text-align:right;
  font:900 19px/1 inherit;
  cursor:pointer;
  caret-color:transparent;
}
.akihojo-kotoie-page-head__budget-input input::placeholder{color:#c8bda9;opacity:1}
.akihojo-kotoie-page-head__budget-input span{
  color:var(--aki-sim-deep);
  font-size:21px;
  line-height:1;
  font-weight:900;
  white-space:nowrap;
}
.akihojo-kotoie-page-head__budget-note{
  margin:11px 0 0!important;
  color:#70817c!important;
  font-size:12px!important;
  line-height:1.65!important;
}
.akihojo-kotoie-page-head__budget:hover .akihojo-kotoie-page-head__budget-input input,
.akihojo-kotoie-page-head__budget:focus-within .akihojo-kotoie-page-head__budget-input input{
  border-color:var(--aki-sim-main2);
  box-shadow:0 0 0 4px rgba(43,140,126,.09);
}
/* The real Kotoie budget control stays in the DOM as the calculation source,
   but the visible launcher is now the hero-integrated control above. */
.akihojo-kotoie-shell .kot-reform222-budget-box{display:none!important}

/* The sticky flow and desktop summary are result navigation, not first-view UI. */
.akihojo-kotoie-steps[hidden],
.akihojo-estimate-rail[hidden]{display:none!important}
.akihojo-kotoie-steps:not([hidden]){display:flex}
@media(min-width:901px){
  .akihojo-estimate-rail:not([hidden]){display:block}
}

@media(max-width:900px){
  .akihojo-kotoie-page-head__budget{
    margin-top:12px;
    padding:16px 8px 1px;
  }
  .akihojo-kotoie-page-head__budget-title{
    margin-bottom:10px!important;
    font-size:17px!important;
  }
  .akihojo-kotoie-page-head__budget-input input{
    width:128px;
    height:48px;
    font-size:18px;
  }
  .akihojo-kotoie-page-head__budget-input span{font-size:20px}
  .akihojo-kotoie-page-head__budget-note{font-size:11.5px!important}
  .akihojo-estimate-rail{display:none!important}
}
@media(max-width:640px){
  /* On mobile the DOM order is copy -> Aki-suke -> budget, exactly matching
     the requested first-view flow. */
  .akihojo-kotoie-page-head__budget{
    margin-top:10px;
    padding:15px 2px 0;
  }
  .akihojo-kotoie-page-head__budget-title{
    font-size:16px!important;
    line-height:1.45!important;
  }
  .akihojo-kotoie-page-head__budget-input{gap:8px}
  .akihojo-kotoie-page-head__budget-input input{
    width:122px;
    height:48px;
    padding:0 12px;
    border-radius:11px;
    font-size:18px;
  }
  .akihojo-kotoie-page-head__budget-input span{font-size:19px}
  .akihojo-kotoie-page-head__budget-note{
    max-width:310px;
    margin:10px auto 0!important;
    font-size:11px!important;
    line-height:1.65!important;
  }
}

/* ======================================================================
 * v0.1.87 - selected subsidy belongs directly below the hero budget input
 * ====================================================================== */
.akihojo-kotoie-page-head__program{
  grid-column:1 / -1;
  width:100%;
  margin:16px 0 0!important;
  box-sizing:border-box;
  text-align:left;
}
.akihojo-kotoie-page-head__budget + .akihojo-kotoie-page-head__program{
  margin-top:16px!important;
}
@media(max-width:900px){
  .akihojo-kotoie-page-head__program{
    margin-top:14px!important;
  }
}
@media(max-width:640px){
  .akihojo-kotoie-page-head__program{
    margin-top:13px!important;
    padding:16px!important;
    border-radius:14px!important;
  }
  .akihojo-kotoie-page-head__program h2{
    margin:10px 0 13px!important;
    font-size:19px!important;
    line-height:1.4!important;
  }
}


/* ======================================================================
 * v0.1.88 - integrated subsidy information inside the simulator hero
 * The selected subsidy is part of one continuous first-view composition:
 * budget -> divider -> subsidy information.  Remove the nested outer card.
 * ====================================================================== */
.akihojo-kotoie-page-head__program{
  margin-top:18px!important;
  padding:18px 0 0!important;
  border:0!important;
  border-top:1px solid rgba(190,218,210,.92)!important;
  border-radius:0!important;
  background:transparent!important;
  box-shadow:none!important;
}
.akihojo-kotoie-page-head__program > div:first-child,
.akihojo-kotoie-page-head__program h2,
.akihojo-kotoie-page-head__program dl{
  margin-left:0!important;
  margin-right:0!important;
}
.akihojo-kotoie-page-head__program h2{
  margin-top:11px!important;
  margin-bottom:15px!important;
}
/* Keep the compact three-value panel as the information grouping; only the
   redundant outer subsidy-card frame is removed. */
.akihojo-kotoie-page-head__program dl{
  background:rgba(255,255,255,.76)!important;
}
@media(max-width:640px){
  .akihojo-kotoie-page-head__program{
    margin-top:16px!important;
    padding:17px 0 0!important;
    border-radius:0!important;
  }
  .akihojo-kotoie-page-head__program h2{
    margin:10px 0 13px!important;
    font-size:19px!important;
    line-height:1.4!important;
  }
}

/* ======================================================================
 * v0.1.92 - clearer, better balanced first-view budget entry
 * Desktop separates copy and amount; mobile keeps a strong vertical focus.
 * ====================================================================== */
.akihojo-kotoie-page-head__budget{
  display:grid!important;
  grid-template-columns:minmax(0,1fr) auto!important;
  grid-template-areas:
    "budget-title budget-input"
    "budget-note  budget-input"!important;
  column-gap:28px!important;
  row-gap:5px!important;
  align-items:center!important;
  margin-top:10px!important;
  padding:19px 22px!important;
  border-top:1px solid rgba(166,205,195,.95)!important;
  border-radius:15px!important;
  background:rgba(255,255,255,.70)!important;
  box-shadow:inset 0 0 0 1px rgba(190,218,210,.76)!important;
  text-align:left!important;
}
.akihojo-kotoie-page-head__budget-title{
  grid-area:budget-title!important;
  margin:0!important;
  color:#124f49!important;
  font-size:20px!important;
  line-height:1.35!important;
  font-weight:900!important;
  letter-spacing:.015em!important;
}
.akihojo-kotoie-page-head__budget-input{
  grid-area:budget-input!important;
  display:flex!important;
  align-items:center!important;
  justify-content:flex-end!important;
  gap:10px!important;
  margin:0!important;
  padding:5px 8px 5px 5px!important;
  border-radius:15px!important;
  background:#eef8f5!important;
}
.akihojo-kotoie-page-head__budget-input input{
  width:154px!important;
  height:56px!important;
  padding:0 15px!important;
  border:2px solid #6fb7a8!important;
  border-radius:12px!important;
  background:#fff!important;
  color:#124f49!important;
  box-shadow:0 2px 5px rgba(18,79,73,.06)!important;
  font-size:20px!important;
  font-weight:900!important;
}
.akihojo-kotoie-page-head__budget-input input::placeholder{
  color:#b7a98f!important;
  opacity:1!important;
}
.akihojo-kotoie-page-head__budget-input span{
  color:#124f49!important;
  font-size:23px!important;
  line-height:1!important;
  font-weight:900!important;
  letter-spacing:.01em!important;
}
.akihojo-kotoie-page-head__budget-note{
  grid-area:budget-note!important;
  margin:0!important;
  color:#5b716b!important;
  font-size:13px!important;
  line-height:1.6!important;
  font-weight:600!important;
}
.akihojo-kotoie-page-head__budget:hover,
.akihojo-kotoie-page-head__budget:focus-within{
  background:rgba(255,255,255,.86)!important;
  box-shadow:inset 0 0 0 1px rgba(111,183,168,.9),0 6px 16px rgba(18,79,73,.05)!important;
}
.akihojo-kotoie-page-head__budget:hover .akihojo-kotoie-page-head__budget-input input,
.akihojo-kotoie-page-head__budget:focus-within .akihojo-kotoie-page-head__budget-input input{
  border-color:#247d6e!important;
  box-shadow:0 0 0 4px rgba(43,140,126,.10)!important;
}

@media(max-width:900px){
  .akihojo-kotoie-page-head__budget{
    display:block!important;
    margin-top:12px!important;
    padding:18px 14px 16px!important;
    text-align:center!important;
  }
  .akihojo-kotoie-page-head__budget-title{
    margin:0 0 12px!important;
    font-size:18px!important;
    line-height:1.45!important;
  }
  .akihojo-kotoie-page-head__budget-input{
    display:inline-flex!important;
    justify-content:center!important;
    margin:0 auto!important;
    padding:5px 8px 5px 5px!important;
  }
  .akihojo-kotoie-page-head__budget-input input{
    width:142px!important;
    height:54px!important;
    font-size:19px!important;
  }
  .akihojo-kotoie-page-head__budget-input span{
    font-size:22px!important;
  }
  .akihojo-kotoie-page-head__budget-note{
    max-width:390px!important;
    margin:11px auto 0!important;
    font-size:12.5px!important;
    line-height:1.65!important;
  }
}
@media(max-width:640px){
  .akihojo-kotoie-page-head__budget{
    margin-top:11px!important;
    padding:17px 12px 15px!important;
    border-radius:14px!important;
  }
  .akihojo-kotoie-page-head__budget-title{
    margin-bottom:11px!important;
    font-size:17px!important;
  }
  .akihojo-kotoie-page-head__budget-input input{
    width:136px!important;
    height:52px!important;
    padding:0 13px!important;
    font-size:18px!important;
  }
  .akihojo-kotoie-page-head__budget-input span{
    font-size:21px!important;
  }
  .akihojo-kotoie-page-head__budget-note{
    max-width:320px!important;
    margin-top:10px!important;
    font-size:12px!important;
  }
}


/* ======================================================================
 * v0.1.93 — amount icons for summary rail and net-cost values
 * ====================================================================== */
.akihojo-amount-icon{
  display:grid!important;
  place-items:center;
  width:30px;
  height:30px;
  flex:0 0 30px;
  border-radius:50%;
  background:#eaf6f2;
  color:#237765!important;
}
.akihojo-amount-icon svg{width:17px;height:17px;display:block}
.akihojo-amount-icon.is-subsidy{background:#fff0e5;color:#d36b2d!important}
.akihojo-amount-icon.is-net{background:#def1eb;color:#11695a!important}
.akihojo-estimate-rail__row>strong,
.akihojo-kotoie-subsidy-grid>div>strong{
  display:flex!important;
  align-items:center!important;
  gap:9px!important;
}
.akihojo-estimate-rail__row>strong>em,
.akihojo-kotoie-subsidy-grid>div>strong>em{
  color:inherit;
  font:inherit;
  font-style:normal;
  line-height:inherit;
}
.akihojo-estimate-rail__row>strong{margin-top:7px!important}
.akihojo-kotoie-subsidy-grid>div>strong{margin-top:7px!important}
.akihojo-kotoie-subsidy-grid .is-subsidy .akihojo-amount-icon{background:#fff0e5;color:#d86d31!important}
.akihojo-kotoie-subsidy-grid .is-net .akihojo-amount-icon{background:#dff2ec;color:#0c6659!important}
@media(max-width:640px){
  .akihojo-amount-icon{width:27px;height:27px;flex-basis:27px}
  .akihojo-amount-icon svg{width:15px;height:15px}
  .akihojo-kotoie-subsidy-grid>div>strong{gap:7px!important}
}


/* Tochikatsuhojo brand-only override: layout/behavior above is the Akihojo canonical simulator CSS. */
:root{
  --aki-sim-deep:#0B3A68;
  --aki-sim-main:#197747;
  --aki-sim-main2:#23865A;
  --aki-sim-accent:#F59E0B;
  --aki-sim-accent2:#D97706;
  --aki-sim-bg:#f4faf7;
  --aki-sim-soft:#eaf5ef;
  --aki-sim-border:#cfe2d8;
  --aki-sim-text:#183f35;
  --aki-sim-sub:#667a73;
}


/* v0.1.35 - multi-program subsidy calculation without changing the canonical simulator layout. */
.tochikatsuhojo-multi-scheme-sim{grid-column:1 / -1;margin:16px 0 0;padding:16px;border:1px solid #d4e5df;border-radius:14px;background:rgba(255,255,255,.82)}
.tochikatsuhojo-multi-scheme-sim__head>span{display:block;color:#197747;font-size:11px;font-weight:900}.tochikatsuhojo-multi-scheme-sim__head h3{margin:4px 0 4px!important;color:#183f35!important;font-size:18px!important;line-height:1.4!important}.tochikatsuhojo-multi-scheme-sim__head p{margin:0!important;color:#697c76!important;font-size:11.5px!important;line-height:1.7!important}
.tochikatsuhojo-multi-scheme-sim__choices{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px;margin-top:13px}.tochikatsuhojo-multi-scheme-sim__choice{display:block;width:100%;min-height:72px;padding:12px 13px;border:1px solid #cee0da;border-radius:12px;background:#fff;color:#244d45;text-align:left;cursor:pointer;box-shadow:none}.tochikatsuhojo-multi-scheme-sim__choice strong{display:block;color:#173f3b;font-size:13px;line-height:1.45}.tochikatsuhojo-multi-scheme-sim__choice span{display:block;margin-top:5px;color:#6c7e79;font-size:10.5px;line-height:1.55}.tochikatsuhojo-multi-scheme-sim__choice:hover{border-color:#78b8a7;background:#f8fcfb}.tochikatsuhojo-multi-scheme-sim__choice.is-current{border:2px solid #f59e0b;background:#fff9ef;box-shadow:0 0 0 3px rgba(245,158,11,.09)}
.tochikatsuhojo-multi-scheme-sim__input{margin-top:13px;padding:13px;border:1px solid #cfe2dc;border-radius:12px;background:#f8fcfb}.tochikatsuhojo-multi-scheme-sim__input[hidden]{display:none!important}.tochikatsuhojo-multi-scheme-sim__input>label{display:block;color:#2e5f55;font-size:12px;font-weight:900}.tochikatsuhojo-multi-scheme-sim__input>div{display:flex;align-items:center;gap:8px;margin-top:8px}.tochikatsuhojo-multi-scheme-sim__input input{width:160px;max-width:70%;height:44px;padding:0 12px;border:1px solid #a9cec4;border-radius:10px;background:#fff;color:#173f3b;font-size:18px;font-weight:900;text-align:right}.tochikatsuhojo-multi-scheme-sim__input>div span{color:#335d54;font-size:14px;font-weight:900}.tochikatsuhojo-multi-scheme-sim__input p{margin:8px 0 0!important;color:#7b817f!important;font-size:10.5px!important;line-height:1.6!important}.tochikatsuhojo-multi-scheme-sim__guide{margin:11px 1px 0!important;color:#6f7f7a!important;font-size:10.5px!important;line-height:1.7!important}.tochikatsuhojo-multi-scheme-sim__validation{margin:9px 0 0!important;padding:9px 11px;border:1px solid #efc5a4;border-radius:9px;background:#fff6ed;color:#9c5424!important;font-size:11px!important;font-weight:850!important}.tochikatsuhojo-multi-scheme-sim__validation[hidden]{display:none!important}
.akihojo-kotoie-subsidy-grid.has-basis{grid-template-columns:repeat(4,minmax(0,1fr))}.akihojo-kotoie-subsidy-grid .is-basis{background:#f7fbfa;border-color:#d6e6e2}.akihojo-kotoie-subsidy-selected{display:inline-flex;margin:-2px 0 11px;padding:5px 9px;border-radius:999px;background:#eef8f5;color:#176a5b;font-size:11px;line-height:1.3}
@media(max-width:900px){.akihojo-kotoie-subsidy-grid.has-basis{grid-template-columns:1fr}.tochikatsuhojo-multi-scheme-sim__choices{grid-template-columns:1fr}}
@media(max-width:640px){.tochikatsuhojo-multi-scheme-sim{padding:13px}.tochikatsuhojo-multi-scheme-sim__head h3{font-size:16px!important}.tochikatsuhojo-multi-scheme-sim__choice{min-height:0}.tochikatsuhojo-multi-scheme-sim__input input{width:140px;max-width:76%}}

/* ======================================================================
 * v0.1.36 - distinguish direct cost subsidies from tax/employment support.
 * The simulator always estimates the project cost first. Only direct cost
 * subsidies reduce the displayed net burden; other support is shown separately.
 * ====================================================================== */
.tochikatsuhojo-multi-scheme-sim__head strong{color:#245c51;font-weight:900}
.tochikatsuhojo-multi-scheme-sim__impact{display:inline-flex;width:max-content;margin:0 0 7px;padding:3px 7px;border-radius:999px;font-size:9.5px;line-height:1.25;font-weight:900;font-style:normal}
.tochikatsuhojo-multi-scheme-sim__impact.is-direct_cost{background:#e9f7ef;color:#18784e;border:1px solid #c9e7d7}
.tochikatsuhojo-multi-scheme-sim__impact.is-support_effect{background:#fff4df;color:#9a6211;border:1px solid #efd7a6}
.tochikatsuhojo-multi-scheme-sim__impact-note{margin-top:10px!important;padding:9px 10px;border-radius:9px;font-size:10.5px!important;font-weight:800!important;line-height:1.6!important}
.tochikatsuhojo-multi-scheme-sim__impact-note.is-direct-cost{background:#edf8f2;color:#24604c!important;border:1px solid #cde7d8}
.tochikatsuhojo-multi-scheme-sim__impact-note.is-support-effect{background:#fff8e9;color:#825b1e!important;border:1px solid #ecd9ae}
.akihojo-kotoie-subsidy-grid.is-support-effect.has-basis{grid-template-columns:repeat(3,minmax(0,1fr))}
.akihojo-kotoie-subsidy-grid.is-support-effect:not(.has-basis){grid-template-columns:repeat(2,minmax(0,1fr))}
.akihojo-kotoie-support-effect-note{display:flex;gap:9px;align-items:flex-start;margin:12px 0 0;padding:11px 12px;border:1px solid #ecd9ae;border-radius:10px;background:#fff8e9;color:#684d25;font-size:11px;line-height:1.6}
.akihojo-kotoie-support-effect-note strong{flex:0 0 auto;color:#9a6211;font-weight:900}
.akihojo-kotoie-support-effect-note span{min-width:0}
.akihojo-kotoie-page-head__program.is-multi-summary{margin-top:16px!important}
.akihojo-kotoie-page-head__program.is-multi-summary + .tochikatsuhojo-multi-scheme-sim{margin-top:16px}
@media(max-width:900px){
  .akihojo-kotoie-subsidy-grid.is-support-effect.has-basis,.akihojo-kotoie-subsidy-grid.is-support-effect:not(.has-basis){grid-template-columns:1fr}
  .akihojo-kotoie-support-effect-note{display:block}
  .akihojo-kotoie-support-effect-note strong{display:block;margin-bottom:4px}
}

/* ======================================================================
 * v0.1.37 - authoritative numeric support summary for multi-program pages.
 * Keep formulas in Core; only sanitized rate/limit text is rendered here.
 * ====================================================================== */
.akihojo-kotoie-page-head__program.is-multi-summary dd[data-tkh-program-rate-summary],
.akihojo-kotoie-page-head__program.is-multi-summary dd[data-tkh-program-limit-summary]{overflow-wrap:anywhere;word-break:normal}

/* v0.1.38 - data-first subsidy facts before simulator input. */
.tochikatsuhojo-sim-data-first__eyebrow{margin:0 0 8px!important;color:#197747!important;font-size:11px!important;font-weight:900!important;letter-spacing:.02em}
.akihojo-kotoie-page-head__program.is-data-first .tochikatsuhojo-sim-data-first__grid{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr));gap:0!important;margin-top:14px!important;border:1px solid #d7e7e1;border-radius:12px;overflow:hidden;background:#fff}
.akihojo-kotoie-page-head__program.is-data-first .tochikatsuhojo-sim-data-first__grid>div{display:block!important;min-width:0;padding:12px 13px!important;border-right:1px solid #e2ece8;border-bottom:1px solid #e2ece8;background:#fff}
.akihojo-kotoie-page-head__program.is-data-first .tochikatsuhojo-sim-data-first__grid>div:nth-child(3n){border-right:0}
.akihojo-kotoie-page-head__program.is-data-first .tochikatsuhojo-sim-data-first__grid>div:nth-last-child(-n+3){border-bottom:0}
.akihojo-kotoie-page-head__program.is-data-first .tochikatsuhojo-sim-data-first__grid dt{margin:0 0 5px!important;color:#6f817b!important;font-size:10px!important;font-weight:800!important}
.akihojo-kotoie-page-head__program.is-data-first .tochikatsuhojo-sim-data-first__grid dd{margin:0!important;color:#173f3b!important;font-size:13px!important;font-weight:900!important;line-height:1.55!important;overflow-wrap:anywhere}
.tochikatsuhojo-sim-data-first__note{margin:9px 1px 0!important;color:#768580!important;font-size:10px!important;line-height:1.65!important}

.tochikatsuhojo-multi-scheme-sim__choice{padding:13px 14px 12px}
.tochikatsuhojo-multi-scheme-sim__choice>strong{font-size:14px!important}
.tochikatsuhojo-multi-scheme-sim__choice-facts{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px!important;margin-top:10px!important;color:inherit!important;font-size:inherit!important;line-height:inherit!important}
.tochikatsuhojo-multi-scheme-sim__choice-fact{display:block!important;margin:0!important;padding:8px 9px!important;border:1px solid #e0ebe7;border-radius:8px;background:#f9fcfb;color:inherit!important;font-size:inherit!important;line-height:1.45!important}
.tochikatsuhojo-multi-scheme-sim__choice-fact.is-wide{grid-column:1 / -1}
.tochikatsuhojo-multi-scheme-sim__choice-fact b{display:block;color:#6c7e79;font-size:9.5px;font-weight:850;line-height:1.35}
.tochikatsuhojo-multi-scheme-sim__choice-fact em{display:block;margin-top:3px;color:#214c43;font-size:10.5px;font-weight:850;font-style:normal;line-height:1.5;overflow-wrap:anywhere}
.tochikatsuhojo-multi-scheme-sim__choice-action{display:inline-flex!important;width:max-content!important;margin:10px 0 0!important;padding:5px 10px!important;border-radius:999px;background:#edf7f3;color:#16754b!important;font-size:9.5px!important;font-weight:900!important;line-height:1.25!important}
.tochikatsuhojo-multi-scheme-sim__choice.is-current .tochikatsuhojo-multi-scheme-sim__choice-action{background:#f59e0b;color:#fff!important}

@media(max-width:760px){
  .akihojo-kotoie-page-head__program.is-data-first .tochikatsuhojo-sim-data-first__grid{grid-template-columns:1fr}
  .akihojo-kotoie-page-head__program.is-data-first .tochikatsuhojo-sim-data-first__grid>div{border-right:0!important;border-bottom:1px solid #e2ece8!important}
  .akihojo-kotoie-page-head__program.is-data-first .tochikatsuhojo-sim-data-first__grid>div:last-child{border-bottom:0!important}
  .tochikatsuhojo-multi-scheme-sim__choice-facts{grid-template-columns:1fr}
  .tochikatsuhojo-multi-scheme-sim__choice-fact.is-wide{grid-column:auto}
}

/* ======================================================================
 * v0.1.41 — live sticky repair + compact 3-step design
 * Native sticky failed in the production Kotoie/WordPress layout. JS now
 * provides fixed/bottom fallbacks; these rules provide the stable visuals.
 * ====================================================================== */
.akihojo-kotoie-page-inner{position:relative}
.akihojo-kotoie-shell .kot-reform222-wrap{position:relative}

.akihojo-kotoie-steps,
.akihojo-kotoie-steps:not([hidden]){
  position:relative;
  top:auto;
  z-index:900;
  display:grid!important;
  grid-template-columns:repeat(3,minmax(0,1fr));
  width:100%;
  min-height:48px;
  margin:0 0 16px!important;
  padding:0!important;
  list-style:none!important;
  overflow:hidden;
  border:1px solid #c9ddd7;
  border-radius:12px;
  background:#fff;
  box-shadow:0 5px 16px rgba(16,70,61,.07);
  box-sizing:border-box;
}
.akihojo-kotoie-steps li{
  min-width:0;
  margin:0!important;
  padding:9px 10px!important;
  display:flex;
  align-items:center;
  justify-content:center;
  gap:7px;
  border:0!important;
  border-left:1px solid #e0ebe8!important;
  background:#fff;
  color:#5f746f;
  font-size:12px;
  line-height:1.2;
  font-weight:900;
  text-align:center;
  box-sizing:border-box;
}
.akihojo-kotoie-steps li:first-child{border-left:0!important}
.akihojo-kotoie-steps li b{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  width:23px;
  height:23px;
  flex:0 0 23px;
  border:1px solid #b9d6cf;
  border-radius:50%;
  background:#f7fbfa;
  color:#31796d;
  font-size:11px;
  line-height:1;
  font-weight:900;
  box-sizing:border-box;
}
.akihojo-kotoie-steps li span{display:block;min-width:0;white-space:nowrap}
.akihojo-kotoie-steps li.is-current{background:#e9f6f2;color:#135f54}
.akihojo-kotoie-steps li.is-current b{border-color:#1f766b;background:#1f766b;color:#fff}
.akihojo-kotoie-steps li.is-done{background:#f3faf7;color:#347267}
.akihojo-kotoie-steps li.is-done b{border-color:#b8d9d0;background:#dff1eb;color:#17695d}
.akihojo-kotoie-steps.is-fixed-fallback{
  position:fixed!important;
  right:auto!important;
  margin:0!important;
  z-index:99990!important;
  box-shadow:0 8px 22px rgba(16,70,61,.14);
}
.akihojo-kotoie-steps-placeholder{display:block;width:100%;margin:0;padding:0;border:0;pointer-events:none}
.akihojo-kotoie-steps-placeholder[hidden]{display:none!important}

/* Desktop amount summary: JS fixed fallback, then absolute stop at result end. */
.akihojo-estimate-rail{position:relative;top:auto}
.akihojo-estimate-rail.is-fixed-fallback{
  position:fixed!important;
  right:auto!important;
  bottom:auto!important;
  z-index:99970!important;
  margin:0!important;
  box-sizing:border-box;
}
.akihojo-estimate-rail.is-bottom-fallback{
  position:absolute!important;
  left:auto!important;
  top:auto!important;
  z-index:40!important;
  margin:0!important;
  box-sizing:border-box;
}

@media(max-width:900px){
  .akihojo-kotoie-steps,
  .akihojo-kotoie-steps:not([hidden]){
    min-height:42px;
    margin-bottom:12px!important;
    border-radius:10px;
  }
  .akihojo-kotoie-steps li{
    gap:4px;
    padding:7px 4px!important;
    font-size:10.5px;
  }
  .akihojo-kotoie-steps li b{
    width:20px;height:20px;flex-basis:20px;font-size:10px;
  }
  .akihojo-kotoie-steps.is-fixed-fallback{margin:0!important}
}
@media(max-width:360px){
  .akihojo-kotoie-steps li{gap:3px;padding-left:2px!important;padding-right:2px!important;font-size:9.5px}
  .akihojo-kotoie-steps li b{width:18px;height:18px;flex-basis:18px;font-size:9px}
}
/* Neutralize legacy native-sticky admin offsets while elements are in normal flow. */
.admin-bar .akihojo-kotoie-steps:not(.is-fixed-fallback){top:auto!important}
.admin-bar .akihojo-estimate-rail:not(.is-fixed-fallback){top:auto!important}

/* ======================================================================
 * v0.4.4 — category-first Jinsere estimate / single Roll-kun bubble
 * ====================================================================== */
.jinsere-estimate-page .jinsere-estimate-guide{
  position:relative!important;display:flex!important;flex-direction:column!important;
  align-items:center!important;justify-content:flex-end!important;gap:0!important;text-align:center!important;
}
.jinsere-estimate-page .jinsere-estimate-guide>img{order:2!important;margin:0 auto!important}
.jinsere-estimate-page .jinsere-estimate-guide>.akihojo-kotoie-page-head__guide-bubble{
  order:1!important;position:relative!important;left:auto!important;right:auto!important;top:auto!important;bottom:auto!important;
  width:auto!important;max-width:210px!important;margin:0 auto 8px!important;padding:10px 13px!important;
  border:1px solid #bfded3!important;border-radius:15px!important;background:#fff!important;
  color:#176b58!important;box-shadow:0 7px 18px rgba(21,77,62,.07)!important;text-align:center!important;
}
.jinsere-estimate-page .jinsere-estimate-guide>.akihojo-kotoie-page-head__guide-bubble:after{
  content:''!important;position:absolute!important;left:50%!important;right:auto!important;top:auto!important;bottom:-7px!important;
  width:13px!important;height:13px!important;border-right:1px solid #bfded3!important;border-bottom:1px solid #bfded3!important;
  background:#fff!important;transform:translateX(-50%) rotate(45deg)!important;
}
.jinsere-estimate-page .jinsere-estimate-guide>.akihojo-kotoie-page-head__guide-bubble strong{
  display:block!important;color:#176b58!important;font-size:12px!important;line-height:1.45!important;font-weight:950!important;
}
/* Prevent legacy direct-span speech bubble rules from creating a second bubble. */
.jinsere-estimate-page .jinsere-estimate-guide>span{display:none!important}

.jinsere-estimate-category-picker{
  grid-column:1/-1;margin-top:5px;padding:20px;border:1px solid #cfe2dc;border-radius:17px;background:rgba(255,255,255,.92)
}
.jinsere-estimate-category-picker__head{display:flex;align-items:flex-end;justify-content:space-between;gap:18px;margin-bottom:14px}
.jinsere-estimate-category-picker__head>div>span{display:block;margin-bottom:4px;color:#187b68;font-size:9px;font-weight:950;letter-spacing:.12em}
.jinsere-estimate-category-picker__head h2{margin:0!important;color:#17483c;font-size:20px!important;line-height:1.45!important;font-weight:950!important}
.jinsere-estimate-category-picker__head p{margin:0;color:#6f807a;font-size:10.5px;line-height:1.65;text-align:right}
.jinsere-estimate-category-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:9px}
.jinsere-estimate-category-card{
  position:relative;min-width:0;min-height:116px;display:flex;flex-direction:column;align-items:center;justify-content:center;
  gap:4px;padding:13px 28px 12px 12px;border:1px solid #d4e5df;border-radius:14px;background:#fff;
  color:#264f44!important;text-decoration:none!important;box-shadow:none;transition:.15s ease
}
.jinsere-estimate-category-card:hover{border-color:#73b89f;background:#f5fbf8;transform:translateY(-1px)}
.jinsere-estimate-category-card.is-active{border:2px solid #2f9b79;background:#eff8f4;box-shadow:0 0 0 3px rgba(47,155,121,.08)}
.jinsere-estimate-category-card__icon{width:40px;height:40px;display:grid;place-items:center;margin-bottom:2px;border-radius:12px;background:#edf8f3;color:#187b68}
.jinsere-estimate-category-card__icon svg{width:22px;height:22px}
.jinsere-estimate-category-card strong{display:block;max-width:100%;font-size:12px;line-height:1.4;text-align:center;font-weight:950}
.jinsere-estimate-category-card small{display:block;max-width:100%;color:#72847d;font-size:8.5px;line-height:1.45;text-align:center}
.jinsere-estimate-category-card>i{position:absolute;right:11px;top:50%;transform:translateY(-50%);color:#198364;font-size:20px;font-style:normal}
.jinsere-estimate-selected-category{display:flex;align-items:center;justify-content:center;gap:8px;margin:0 0 12px}
.jinsere-estimate-selected-category span{padding:4px 7px;border-radius:999px;background:#e9f6f1;color:#187b68;font-size:9px;font-weight:900}
.jinsere-estimate-selected-category strong{color:#17483c;font-size:12px;font-weight:950}
.jinsere-estimate-selected-category a{color:#187b68!important;font-size:9px;font-weight:900;text-decoration:underline!important;text-underline-offset:2px}
.jinsere-estimate-note.is-before-category{margin-top:0}

@media(max-width:900px){
  .jinsere-estimate-category-picker__head{display:block}.jinsere-estimate-category-picker__head p{margin-top:5px;text-align:left}
  .jinsere-estimate-category-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .jinsere-estimate-page .jinsere-estimate-guide{flex-direction:row!important;justify-content:center!important;gap:8px!important}
  .jinsere-estimate-page .jinsere-estimate-guide>img{order:2!important;width:86px!important}
  .jinsere-estimate-page .jinsere-estimate-guide>.akihojo-kotoie-page-head__guide-bubble{order:1!important;margin:0!important;max-width:205px!important}
  .jinsere-estimate-page .jinsere-estimate-guide>.akihojo-kotoie-page-head__guide-bubble:after{left:auto!important;right:-7px!important;bottom:16px!important;transform:rotate(-45deg)!important}
}
@media(max-width:640px){
  .jinsere-estimate-category-picker{padding:14px 12px}.jinsere-estimate-category-picker__head h2{font-size:17px!important}
  .jinsere-estimate-category-grid{gap:7px}.jinsere-estimate-category-card{min-height:105px;padding:11px 22px 10px 8px;border-radius:12px}
  .jinsere-estimate-category-card__icon{width:36px;height:36px}.jinsere-estimate-category-card__icon svg{width:20px;height:20px}
  .jinsere-estimate-category-card strong{font-size:10.5px}.jinsere-estimate-category-card small{font-size:7.8px}
  .jinsere-estimate-selected-category{flex-wrap:wrap}
}


/* ======================================================================
 * v0.4.15 — KOTOIE exterior estimate category groups
 * ====================================================================== */
.jinsere-estimate-category-groups{
  display:grid;
  gap:16px;
}
.jinsere-estimate-category-group{
  margin:0;
  padding:0;
}
.jinsere-estimate-category-group>h3{
  margin:0 0 9px!important;
  padding:8px 12px!important;
  border:0!important;
  border-radius:10px!important;
  background:#f4f1e9!important;
  color:#5a493b!important;
  font-size:11px!important;
  line-height:1.4!important;
  font-weight:950!important;
  letter-spacing:.02em!important;
}
.jinsere-estimate-category-group .jinsere-estimate-category-grid{
  grid-template-columns:repeat(4,minmax(0,1fr));
}
.jinsere-estimate-category-group .jinsere-estimate-category-card{
  min-height:102px;
}
@media(max-width:900px){
  .jinsere-estimate-category-group .jinsere-estimate-category-grid{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
}
@media(max-width:640px){
  .jinsere-estimate-category-groups{gap:13px}
  .jinsere-estimate-category-group>h3{
    margin-bottom:7px!important;
    padding:7px 10px!important;
    font-size:10.5px!important;
  }
  .jinsere-estimate-category-group .jinsere-estimate-category-card{
    min-height:96px;
  }
}


/* ======================================================================
 * v0.4.34 — confirmed-condition card fills the left column
 * ====================================================================== */
/* Kotoie's standalone stylesheet adds horizontal insets to the confirmed
   condition panel.  On Jinsere this panel is already inside the simulator's
   left grid column, so those insets made it look narrower than the result
   card.  Fill the left column exactly on desktop and mobile. */
.jinsere-estimate-page .akihojo-kotoie-shell .kotEstimateConditionMenu{
  grid-column:1!important;
  width:100%!important;
  max-width:none!important;
  margin:0 0 18px!important;
  box-sizing:border-box!important;
}
@media(max-width:900px){
  .jinsere-estimate-page .akihojo-kotoie-shell .kotEstimateConditionMenu{
    width:100%!important;
    max-width:100%!important;
    margin:0 0 14px!important;
  }
}
