body.kp-shell main.container,body.kp-shell #content{background:transparent!important;border:0!important;box-shadow:none!important;min-height:0!important;padding:0!important;border-radius:0!important;margin:0 auto!important;max-width:1240px!important;width:100%;box-sizing:border-box}body.kp-shell #planner-root{padding:0;margin:0;min-width:0}.kp-page{--kp-ink:#142236;--kp-muted:#5f6d80;--kp-line:#dce3ec;--kp-accent:#2359a8;--kp-bg:#f3f6fa;color:var(--kp-ink);max-width:1200px;margin:auto;padding:26px 22px 42px;text-align:left;line-height:1.55}.kp-page *{box-sizing:border-box}.kp-page :is(h1,h2,h3,h4,p){margin-top:0}.kp-page a{color:var(--kp-accent);text-underline-offset:3px}.kp-page button,.kp-page input,.kp-page select{font:inherit;color:inherit;min-height:39px;border:1px solid var(--kp-line);border-radius:7px;background:#fff;padding:8px 10px;max-width:100%}.kp-page button{cursor:pointer}.kp-page button:hover:not(:disabled){border-color:var(--kp-accent);color:var(--kp-accent)}.kp-page button:disabled{cursor:not-allowed;color:#758297;background:#f1f3f6}.kp-page :is(a,button,select,input):focus-visible{outline:3px solid #75a8ef;outline-offset:2px}.kp-page select,.kp-page input{width:100%;min-width:0}.kp-page label{display:flex;flex-direction:column;gap:4px;font-size:12px;font-weight:650;min-width:0}.kp-head{display:flex;justify-content:space-between;gap:28px;align-items:end;margin-bottom:20px}.kp-head h1{font-size:clamp(27px,3vw,35px);line-height:1.25;margin-bottom:8px}.kp-head p{font-size:14px;color:var(--kp-muted);margin-bottom:0;max-width:660px}.kp-head .kp-eyebrow{text-transform:uppercase;font-size:10px;font-weight:700;letter-spacing:.14em;margin-bottom:5px;color:#8a672e}.kp-head nav{display:flex;gap:12px;flex-wrap:wrap;font-size:12px;flex-shrink:0}.kp-saved{display:grid;grid-template-columns:minmax(170px,1fr) minmax(180px,1.3fr) auto;gap:10px;background:#fff;border:1px solid var(--kp-line);padding:14px;border-radius:9px;align-items:end}.kp-save-actions{display:flex;gap:6px}.kp-save-actions button{font-size:12px;white-space:nowrap}.kp-save-actions button:first-child{background:var(--kp-accent);color:#fff;border-color:var(--kp-accent)}.kp-saved>p{grid-column:1/-1;color:var(--kp-muted);font-size:11px;margin:0}.kp-message{font-size:12px;color:var(--kp-accent);min-height:0;margin:8px 0 16px}.kp-message:empty{margin:14px 0}.kp-workspace{display:grid;grid-template-columns:340px minmax(0,1fr);gap:24px;align-items:start}.kp-inputs{min-width:0}.kp-section{border:1px solid var(--kp-line);background:#fff;padding:17px;border-radius:9px;margin-bottom:16px}.kp-page h2{font-size:18px;line-height:1.4;margin-bottom:12px;display:flex;align-items:center;gap:8px}.kp-page h2>span{width:23px;height:23px;border-radius:50%;background:#e9eff8;display:inline-flex;align-items:center;justify-content:center;font-size:12px;color:var(--kp-accent);flex:none}.kp-page h3{font-size:15px;line-height:1.4;margin-bottom:10px}.kp-help{font-size:11px;line-height:1.65;color:var(--kp-muted);margin-bottom:10px}.kp-empty{font-size:12px;color:var(--kp-muted);line-height:1.7;margin:10px 0}.kp-current-list,.kp-goals{list-style:none;padding:0;margin:0 0 15px}.kp-current-list li,.kp-goals li{display:flex;align-items:end;gap:6px;border-bottom:1px solid #e9edf3;padding:9px 0}.kp-current-list li:first-child,.kp-goals li:first-child{padding-top:0}.kp-current-list label,.kp-goals label{flex:1;min-width:0}.kp-current-list label>span,.kp-goals label>span{line-height:1.4;overflow-wrap:anywhere}.kp-icon-button{font-size:18px!important;width:32px;min-width:32px;min-height:36px!important;padding:3px!important;margin-bottom:1px}.kp-needs-current{border-left:3px solid #c3984c;padding-left:9px!important;background:#fffcf6}.kp-add-state summary{font-size:12px;font-weight:650;color:var(--kp-accent);cursor:pointer;padding:4px 0}.kp-add-state[open] summary{margin-bottom:10px}.kp-picker{min-width:0}.kp-picker>label{margin:9px 0}.kp-picker-filter{display:grid;grid-template-columns:minmax(0,1fr) 92px;gap:7px;align-items:end}.kp-picker-level{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:7px;align-items:end}.kp-picker-level>button{font-size:12px;background:#edf3fc;border-color:#c5d6ee;color:var(--kp-accent);font-weight:650}.kp-output{min-width:0;scroll-margin-top:80px;outline:none}.kp-section-title{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:10px}.kp-section-title h2,.kp-section-title h3{margin:0}.kp-section-title>span{font-size:12px;color:var(--kp-muted)}.kp-badge{display:inline-block;font-size:10px!important;font-weight:650;border:1px solid #d9e2ed;border-radius:30px;padding:4px 9px;white-space:nowrap;line-height:1.4;background:#eef3f9}.kp-badge-exact{color:#1c684e!important;background:#eaf5ee;border-color:#c7e3d0}.kp-badge-partial,.kp-badge-blocked,.kp-badge-invalid{color:#865f1c!important;background:#fff8e9;border-color:#ecd8ad}.kp-notice{margin:16px 0;border-left:3px solid #b48b3d;background:#fffaf0;padding:12px 14px}.kp-notice strong{font-size:13px}.kp-notice p{font-size:12px;color:#6c614c;margin:5px 0 8px}.kp-notice>div{display:flex;flex-wrap:wrap;gap:5px}.kp-notice button{min-height:29px;padding:4px 7px;font-size:11px;background:#fff;border-color:#e6d9ba}.kp-plan-empty{padding:28px 20px;background:#f3f6fa;border-radius:8px;color:var(--kp-muted);font-size:14px;text-align:center;margin:18px 0}.kp-issues{border-bottom:1px solid var(--kp-line);padding:9px 0;margin-bottom:16px;font-size:12px}.kp-issues summary{cursor:pointer;color:#7e642d;font-weight:650}.kp-issues ul{padding-left:19px;max-height:220px;overflow:auto;color:var(--kp-muted);font-size:11px;overflow-wrap:anywhere}.kp-totals{margin:18px 0 22px}.kp-totals>dl{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1px;border:1px solid var(--kp-line);background:var(--kp-line);border-radius:8px;overflow:hidden;margin:0 0 10px}.kp-totals>dl>div{background:#fff;padding:11px 12px;min-width:0}.kp-totals dt{font-size:11px;line-height:1.4;color:var(--kp-muted)}.kp-totals dd{font-size:17px;font-weight:700;text-align:right;margin:6px 0 2px;font-variant-numeric:tabular-nums;overflow-wrap:anywhere}.kp-totals small{display:block;text-align:right;font-size:9px;color:var(--kp-muted)}.kp-totals .kp-help{margin:5px 0}.kp-steps>ol{padding:0;list-style:none;margin:12px 0}.kp-step{border:1px solid var(--kp-line);border-radius:9px;background:#fff;padding:14px;margin-bottom:10px;min-width:0}.kp-step-head{display:flex;gap:10px;align-items:start}.kp-step-index{flex:none;width:24px;height:24px;display:flex;justify-content:center;align-items:center;border-radius:5px;background:#edf2f8;color:#64758c;font-size:12px;font-variant-numeric:tabular-nums}.kp-step-head>div{flex:1;min-width:0}.kp-step h4{font-size:14px;line-height:1.5;margin:0}.kp-step h4 b{font-size:12px;color:var(--kp-accent);white-space:nowrap;margin-left:3px}.kp-step-head p{font-size:10px;color:var(--kp-muted);margin:2px 0 0}.kp-step-head>button{font-size:11px;min-height:33px;padding:6px 8px;max-width:130px;line-height:1.3}.kp-step-data{margin-top:11px;display:grid;grid-template-columns:1fr 1fr;gap:14px}.kp-step-costs{margin:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:4px 14px}.kp-step-costs>div{display:flex;justify-content:space-between;gap:8px;min-width:0;font-size:11px}.kp-step-costs dt{color:var(--kp-muted);white-space:nowrap}.kp-step-costs dd{font-variant-numeric:tabular-nums;margin:0;text-align:right;overflow-wrap:anywhere}.kp-requirements{border-left:1px solid #e7ebf1;padding-left:12px;font-size:11px;line-height:1.65}.kp-requirements strong{font-size:10px;color:var(--kp-muted)}.kp-requirements ul{padding-left:13px;margin:4px 0 0}.kp-requirements p{font-size:11px;color:var(--kp-muted);margin:4px 0 0}.kp-requirements small{color:#956419}.kp-more{display:block;margin:15px auto;font-size:12px!important}.kp-sr-only{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
@media(max-width:1040px){.kp-workspace{grid-template-columns:300px minmax(0,1fr);gap:18px}.kp-page{padding-inline:18px}.kp-head{display:block}.kp-head nav{margin-top:12px}.kp-totals>dl{grid-template-columns:repeat(2,minmax(0,1fr))}.kp-step-data{grid-template-columns:1fr;gap:10px}.kp-requirements{border-left:0;border-top:1px solid #e7ebf1;padding-left:0;padding-top:8px}.kp-step-costs{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:760px){.kp-page{padding:15px 15px 30px}.kp-head{margin-bottom:14px}.kp-head h1{font-size:27px;margin-bottom:6px}.kp-head p{font-size:13px}.kp-head nav{gap:13px;margin-top:10px;font-size:11px}.kp-head .kp-eyebrow{font-size:9px}.kp-saved{grid-template-columns:1fr 1fr;padding:12px;gap:8px}.kp-save-actions{grid-column:1/-1}.kp-save-actions button{flex:1}.kp-saved>p{font-size:10px}.kp-workspace{display:block}.kp-section{padding:14px;margin-bottom:13px}.kp-page h2{font-size:17px}.kp-current-list,.kp-goals{margin-bottom:12px}.kp-current-list label,.kp-goals label{display:grid;grid-template-columns:minmax(0,1fr) minmax(120px,45%);align-items:center;gap:10px;font-size:12px}.kp-current-list select,.kp-goals select{font-size:12px}.kp-picker-filter{grid-template-columns:minmax(0,1fr) 95px}.kp-output{margin-top:22px}.kp-totals{margin:14px 0 20px}.kp-step{padding:12px}.kp-step-head{gap:7px}.kp-step h4{font-size:13px}.kp-step-head>button{font-size:10px;max-width:90px;min-width:60px}.kp-step-index{width:21px;height:21px;font-size:11px}.kp-step-data{margin-top:10px}.kp-step-costs{gap:5px 15px}.kp-section-title{gap:8px}.kp-badge{font-size:9px!important}.kp-notice{padding:11px}.kp-notice p{font-size:11px}}

body.kp-shell .lang-pill[data-lang='zh-TW']{display:none!important}
html:has(body.kp-shell){height:auto!important;min-height:100%;overflow-y:auto!important;overflow-x:hidden!important}
body.kp-shell{height:auto!important;min-height:100vh;max-height:none!important;overflow-y:visible!important;overflow-x:clip!important}
