*,:before,:after{box-sizing:border-box}body{margin:0;padding:0}.app{color:#1a1a1a;background:#f5f5f5;flex-direction:column;min-height:100vh;font-family:system-ui,-apple-system,sans-serif;display:flex}.app-header{color:#fff;background:#1a3a5c;justify-content:space-between;align-items:center;gap:1rem;padding:.75rem 1.5rem;display:flex}.app-header-left{flex-direction:column;gap:.1rem;display:flex}.app-header h1{margin:0;font-size:1.4rem;font-weight:700}.app-subtitle{opacity:.75;font-size:.9rem}.app-main{flex:1;grid-template-columns:1fr 1fr;gap:1rem;min-height:0;padding:1rem;display:grid}@media (width<=900px){.app-main{grid-template-columns:1fr}}.left-pane{flex-direction:column;display:flex}.yaml-editor{flex-direction:column;height:100%;min-height:500px;display:flex}.yaml-toolbar{justify-content:space-between;align-items:center;margin-bottom:.4rem;display:flex}.yaml-label{text-transform:uppercase;letter-spacing:.06em;color:#555;font-size:.8rem;font-weight:600}.yaml-textarea{resize:vertical;box-sizing:border-box;background:#fff;border:1px solid #ccc;border-radius:6px;outline:none;flex:1;width:100%;min-height:480px;padding:.75rem;font-family:Menlo,Consolas,Monaco,monospace;font-size:.8rem;line-height:1.5;transition:border-color .15s}.yaml-textarea:focus{border-color:#3b82f6}.yaml-textarea--error{border-color:#ef4444}.yaml-parse-error{color:#ef4444;background:#fff1f1;border:1px solid #fecaca;border-radius:4px;margin-top:.4rem;padding:.4rem .6rem;font-size:.8rem}.btn{cursor:pointer;border:none;border-radius:6px;padding:.45rem 1.1rem;font-size:.88rem;font-weight:600;transition:background .15s,opacity .15s}.btn:disabled{opacity:.5;cursor:not-allowed}.btn-primary{color:#fff;background:#1a3a5c}.btn-primary:not(:disabled):hover{background:#254e7a}.right-pane{flex-direction:column;gap:.75rem;display:flex;overflow-y:auto}.result-panel{background:#fff;border:1px solid #ddd;border-radius:8px;overflow:hidden}.panel-header{cursor:pointer;text-align:left;background:#f0f4f8;border:none;align-items:center;gap:.5rem;width:100%;padding:.6rem .9rem;font-size:.9rem;font-weight:600;transition:background .1s;display:flex}.panel-header:hover{background:#e2eaf3}.panel-title{flex:1}.panel-chevron{color:#888;font-size:.7rem}.panel-badge{text-transform:uppercase;letter-spacing:.05em;border-radius:999px;padding:.15rem .45rem;font-size:.7rem;font-weight:700}.badge-ok{color:#166534;background:#dcfce7}.badge-err{color:#991b1b;background:#fee2e2}.panel-body{padding:.75rem}.panel-loading,.panel-empty{color:#888;padding:.5rem 0;font-size:.85rem}.panel-error{color:#b91c1c;background:#fff1f1;border:1px solid #fecaca;border-radius:4px;padding:.5rem .75rem;font-size:.85rem}.json-pre{white-space:pre;background:#fafafa;border:1px solid #eee;border-radius:4px;max-height:500px;margin:0;padding:.6rem .8rem;font-family:Menlo,Consolas,Monaco,monospace;font-size:.77rem;line-height:1.55;overflow:auto}.json-key{color:#0550ae}.json-string{color:#0a7d4c}.json-number{color:#905}.json-bool{color:#d56b0b;font-weight:700}.json-null{color:#999;font-style:italic}.yaml-toolbar{flex-wrap:wrap;gap:.5rem}.yaml-toolbar-right{align-items:center;gap:.4rem;display:flex}.yaml-year-label{color:#666;font-size:.78rem;font-weight:600}.yaml-year-select{cursor:pointer;background:#fff;border:1px solid #ccc;border-radius:5px;outline:none;padding:.3rem .5rem;font-size:.82rem}.yaml-year-select:focus{border-color:#3b82f6}.btn-secondary{color:#1a3a5c;background:#f0f4f8;border:1px solid #c8d8e8}.btn-secondary:not(:disabled):hover{background:#dde8f3}.yaml-textarea--dragging{background:#eff6ff;border-color:#3b82f6}.panel-header-row{background:#f0f4f8;border-bottom:1px solid #e0e8f0;align-items:center;display:flex}.panel-header{border-bottom:none;flex:1}.panel-actions{align-items:center;gap:.2rem;padding:0 .5rem;display:flex}.btn-view-toggle{cursor:pointer;color:#555;background:0 0;border:1px solid #0000;border-radius:4px;padding:.2rem .45rem;font-family:Menlo,Consolas,monospace;font-size:.78rem;line-height:1;transition:background .1s,border-color .1s}.btn-view-toggle:hover{background:#e2eaf3;border-color:#b8cfe0}.btn-view-toggle--active{color:#fff;background:#1a3a5c;border-color:#1a3a5c}.btn-copy{cursor:pointer;color:#555;background:0 0;border:1px solid #0000;border-radius:4px;padding:.2rem .45rem;font-size:.85rem;line-height:1;transition:background .1s}.btn-copy:hover{background:#e2eaf3;border-color:#b8cfe0}.panel-formatted{overflow-x:auto}.hh-view{flex-direction:column;gap:.75rem;display:flex}.hh-persons{flex-wrap:wrap;gap:.75rem;display:flex}.hh-card{background:#f8fafc;border:1px solid #e2eaf3;border-radius:6px;flex:1;min-width:180px;padding:.65rem .8rem}.hh-card-role{text-transform:uppercase;letter-spacing:.06em;color:#1a3a5c;margin-bottom:.2rem;font-size:.7rem;font-weight:700}.hh-card-name{color:#1a1a1a;margin-bottom:.3rem;font-size:1rem;font-weight:600}.hh-card-detail{color:#555;margin-bottom:.15rem;font-size:.8rem}.hh-employer-list{border-top:1px solid #e2eaf3;margin-top:.4rem;padding-top:.35rem}.hh-section{background:#f8fafc;border:1px solid #e2eaf3;border-radius:6px;padding:.55rem .75rem}.hh-section-title{text-transform:uppercase;letter-spacing:.06em;color:#1a3a5c;margin-bottom:.35rem;font-size:.72rem;font-weight:700}.hh-card-row{color:#333;justify-content:space-between;gap:.5rem;padding:.1rem 0;font-size:.82rem;display:flex}.hh-card-row--total{border-top:1px solid #dde8f3;margin-top:.2rem;padding-top:.25rem;font-weight:600}.decl-table{border-collapse:collapse;width:100%;font-size:.82rem}.decl-table .decl-label{color:#333;padding:.18rem 0}.decl-table .decl-value{text-align:right;white-space:nowrap;color:#1a1a1a;padding:.18rem 0 .18rem 1rem;font-family:Menlo,Consolas,Monaco,monospace;font-size:.8rem}.decl-title-row td{color:#1a3a5c;border-bottom:2px solid #1a3a5c;padding:.5rem 0 .35rem;font-size:.88rem;font-weight:700}.decl-section-row td{text-transform:uppercase;letter-spacing:.07em;color:#1a3a5c;border-top:1px solid #e2eaf3;padding:.65rem 0 .2rem;font-size:.72rem;font-weight:700}.decl-section-row:first-child td{border-top:none}.decl-row--indent .decl-label{color:#555;padding-left:1.2rem}.decl-row--bold td{font-weight:600}.decl-sep-row td{border-bottom:1px solid #e2eaf3;padding:.25rem 0}.decl-total-row td{border-top:1px solid #c8d8e8;padding-top:.25rem;font-weight:600}.decl-settlement-row td{border-radius:4px;padding:.4rem .5rem;font-size:.88rem;font-weight:700}.decl-settlement--refund td{color:#166534;background:#dcfce7}.decl-settlement--pay td{color:#991b1b;background:#fee2e2}.analysis-table{border-collapse:collapse;width:100%;font-size:.82rem}.analysis-label{color:#333;width:55%;padding:.18rem 0}.analysis-value{text-align:right;white-space:nowrap;color:#1a1a1a;padding:.18rem 0 .18rem .75rem;font-family:Menlo,Consolas,Monaco,monospace;font-size:.8rem}.analysis-header-row .analysis-value{text-transform:uppercase;letter-spacing:.06em;color:#1a3a5c;padding-bottom:.25rem;font-family:system-ui,-apple-system,sans-serif;font-size:.72rem;font-weight:700}.analysis-section-row td{text-transform:uppercase;letter-spacing:.07em;color:#1a3a5c;padding:.65rem 0 .2rem;font-size:.72rem;font-weight:700}.analysis-row--indent .analysis-label{color:#555;padding-left:1.2rem}.analysis-sep-row td{border-bottom:1px solid #e2eaf3;padding:.3rem 0}.analysis-total-row td{border-top:1px solid #c8d8e8;padding-top:.25rem;font-weight:600}.analysis-net-row td{background:#f0f4f8;border-radius:4px;padding:.35rem .5rem;font-size:.88rem;font-weight:700}.analysis-net-row .analysis-label{color:#1a3a5c}.input-pane{flex-direction:column;height:100%;display:flex}.input-pane-tabs{border-bottom:2px solid #d0dce8;flex-shrink:0;gap:0;margin-bottom:0;display:flex}.tab-btn{cursor:pointer;color:#5a7080;background:0 0;border:none;border-bottom:2px solid #0000;align-items:center;gap:.35rem;margin-bottom:-2px;padding:.45rem 1.1rem;font-size:.85rem;font-weight:500;transition:color .15s,border-color .15s;display:flex}.tab-btn:hover:not(:disabled){color:#1a3a5c}.tab-btn--active{color:#1a6faf;border-bottom-color:#1a6faf;font-weight:600}.tab-btn:disabled{opacity:.45;cursor:not-allowed}.tab-badge{border-radius:.6rem;justify-content:center;align-items:center;min-width:1.2rem;height:1.2rem;padding:0 .3rem;font-size:.7rem;font-weight:700;display:inline-flex}.tab-badge--error{color:#fff;background:#e53e3e}.yaml-dirty-bar{background:#fffbec;border-bottom:1px solid #f6c440;flex-wrap:wrap;flex-shrink:0;align-items:center;gap:.5rem;padding:.5rem .75rem;display:flex}.yaml-dirty-msg{color:#855a00;flex:1;font-size:.82rem}.yaml-validate-btn{color:#fff;cursor:pointer;background:#1a6faf;border:none;border-radius:4px;padding:.25rem .8rem;font-size:.82rem;font-weight:600}.yaml-validate-btn:hover{background:#155a8a}.yaml-parse-error{color:#c0392b;background:#fdf3f3;border-radius:4px;width:100%;padding:.25rem .5rem;font-family:monospace;font-size:.78rem}.input-pane-content{flex-direction:column;flex:1;display:flex;overflow-y:auto}.form-editor{flex-direction:column;gap:0;padding:.5rem .25rem 2rem;display:flex}.form-section{border:1px solid #d8e6f0;border-radius:6px;margin-bottom:.6rem;overflow:hidden}.form-section-header{cursor:pointer;text-align:left;color:#1a3a5c;background:#f5f8fb;border:none;align-items:center;gap:.5rem;width:100%;padding:.55rem .75rem;font-size:.85rem;font-weight:600;transition:background .12s;display:flex}.form-section-header:hover{background:#e8f0f8}.form-section-chevron{color:#6a90b0;flex-shrink:0;font-size:.7rem}.form-section-title{flex:1}.form-section-badge{color:#1a6faf;background:#1a6faf20;border-radius:10px;margin-left:auto;padding:.1rem .5rem;font-size:.72rem;font-weight:600}.form-section-actions{margin-left:.5rem}.form-section-body{background:#fff;flex-direction:column;gap:.4rem;padding:.75rem .75rem .5rem;display:flex}.form-section-hint{color:#5a7080;margin:0 0 .25rem;font-size:.78rem;line-height:1.4}.form-card{border:1px solid #e0eaf4;border-radius:5px;margin-bottom:.4rem;overflow:hidden}.form-card-header{background:#f0f5fa;align-items:center;gap:.5rem;padding:.35rem .6rem;display:flex}.form-card-title{color:#2c5282;flex:1;font-size:.8rem;font-weight:600}.form-card-remove{cursor:pointer;color:#c0392b;background:0 0;border:none;border-radius:3px;padding:.1rem .3rem;font-size:.78rem;line-height:1}.form-card-remove:hover{background:#fdf3f3}.form-card-body{flex-direction:column;gap:.35rem;padding:.5rem .6rem .4rem;display:flex}.form-field{flex-direction:column;flex:1;gap:.2rem;min-width:0;display:flex}.form-field--inline{min-width:120px}.form-field-label{color:#4a6070;font-size:.75rem;font-weight:500}.form-field-input{position:relative}.form-field-err{color:#c0392b;font-size:.7rem}.form-field-hint{color:#7090a0;font-size:.7rem}.form-field--error .form-field-label{color:#c0392b}.form-input,.form-select{color:#1a2a36;box-sizing:border-box;background:#fff;border:1px solid #ccd8e4;border-radius:4px;width:100%;padding:.3rem .5rem;font-size:.82rem;transition:border-color .15s}.form-input:focus,.form-select:focus{border-color:#1a6faf;outline:none;box-shadow:0 0 0 2px #1a6faf20}.form-input--err{border-color:#e53e3e}.form-checkbox{color:#1a3a5c;cursor:pointer;-webkit-user-select:none;user-select:none;align-items:center;gap:.45rem;font-size:.82rem;display:flex}.form-checkbox input[type=checkbox]{accent-color:#1a6faf;cursor:pointer;flex-shrink:0;width:14px;height:14px}.form-row{flex-wrap:wrap;align-items:flex-start;gap:.5rem;display:flex}.form-sub-title{color:#4a6a8a;text-transform:uppercase;letter-spacing:.04em;border-bottom:1px solid #e0eaf4;margin:.4rem 0 .15rem;padding-bottom:.2rem;font-size:.75rem;font-weight:600}.form-add-btn{color:#1a6faf;cursor:pointer;background:#f0f6fc;border:1px dashed #a0c0e0;border-radius:4px;align-items:center;gap:.3rem;margin-top:.2rem;padding:.28rem .7rem;font-size:.78rem;font-weight:500;transition:background .12s,border-color .12s;display:inline-flex}.form-add-btn:hover{background:#def;border-color:#1a6faf}.form-partner-toggle{background:#f8fafc;border:1px solid #d8e6f0;border-radius:6px;margin-bottom:.6rem;padding:.5rem .75rem}.form-mode-buttons{border:1px solid #c8d8e8;border-radius:4px;display:flex;overflow:hidden}.form-mode-btn{color:#4a6a8a;cursor:pointer;background:#f5f8fb;border:none;padding:.28rem .75rem;font-size:.8rem;font-weight:500;transition:background .12s,color .12s}.form-mode-btn:not(:first-child){border-left:1px solid #c8d8e8}.form-mode-btn--active{color:#fff;background:#1a6faf;font-weight:600}.form-mode-btn:hover:not(.form-mode-btn--active){background:#e0ecf8}.form-submit-bar{border-top:1px solid #e0eaf4;justify-content:flex-end;margin-top:.5rem;padding:.75rem .75rem 0;display:flex}.calculate-btn{color:#fff;cursor:pointer;background:#1a6faf;border:none;border-radius:5px;padding:.5rem 1.4rem;font-size:.88rem;font-weight:600;transition:background .15s}.calculate-btn:hover:not(:disabled){background:#155a8a}.calculate-btn:disabled{opacity:.55;cursor:not-allowed}.lang-switcher{border:1px solid #ffffff59;border-radius:5px;flex-shrink:0;display:flex;overflow:hidden}.lang-btn{color:#ffffffbf;cursor:pointer;background:#ffffff1f;border:none;padding:.3rem .65rem;font-size:.78rem;font-weight:500;transition:background .12s}.lang-btn:not(:first-child){border-left:1px solid #ffffff40}.lang-btn--active{color:#fff;background:#ffffff47;font-weight:700}.lang-btn:hover:not(.lang-btn--active){color:#fff;background:#fff3}
