html,body{width:100%;height:100%}input::-ms-clear,input::-ms-reveal{display:none}*,*:before,*:after{box-sizing:border-box}html{font-family:sans-serif;line-height:1.15;-webkit-text-size-adjust:100%;-ms-text-size-adjust:100%;-ms-overflow-style:scrollbar;-webkit-tap-highlight-color:rgba(0,0,0,0)}body{margin:0}[tabindex="-1"]:focus{outline:none}hr{box-sizing:content-box;height:0;overflow:visible}h1,h2,h3,h4,h5,h6{margin-top:0;margin-bottom:.5em;font-weight:500}p{margin-top:0;margin-bottom:1em}abbr[title],abbr[data-original-title]{-webkit-text-decoration:underline dotted;text-decoration:underline dotted;border-bottom:0;cursor:help}address{margin-bottom:1em;font-style:normal;line-height:inherit}input[type=text],input[type=password],input[type=number],textarea{-webkit-appearance:none}ol,ul,dl{margin-top:0;margin-bottom:1em}ol ol,ul ul,ol ul,ul ol{margin-bottom:0}dt{font-weight:500}dd{margin-bottom:.5em;margin-left:0}blockquote{margin:0 0 1em}dfn{font-style:italic}b,strong{font-weight:bolder}small{font-size:80%}sub,sup{position:relative;font-size:75%;line-height:0;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}pre,code,kbd,samp{font-size:1em;font-family:SFMono-Regular,Consolas,Liberation Mono,Menlo,Courier,monospace}pre{margin-top:0;margin-bottom:1em;overflow:auto}figure{margin:0 0 1em}img{vertical-align:middle;border-style:none}a,area,button,[role=button],input:not([type=range]),label,select,summary,textarea{touch-action:manipulation}table{border-collapse:collapse}caption{padding-top:.75em;padding-bottom:.3em;text-align:left;caption-side:bottom}input,button,select,optgroup,textarea{margin:0;color:inherit;font-size:inherit;font-family:inherit;line-height:inherit}button,input{overflow:visible}button,select{text-transform:none}button,html [type=button],[type=reset],[type=submit]{-webkit-appearance:button}button::-moz-focus-inner,[type=button]::-moz-focus-inner,[type=reset]::-moz-focus-inner,[type=submit]::-moz-focus-inner{padding:0;border-style:none}input[type=radio],input[type=checkbox]{box-sizing:border-box;padding:0}input[type=date],input[type=time],input[type=datetime-local],input[type=month]{-webkit-appearance:listbox}textarea{overflow:auto;resize:vertical}fieldset{min-width:0;margin:0;padding:0;border:0}legend{display:block;width:100%;max-width:100%;margin-bottom:.5em;padding:0;color:inherit;font-size:1.5em;line-height:inherit;white-space:normal}progress{vertical-align:baseline}[type=number]::-webkit-inner-spin-button,[type=number]::-webkit-outer-spin-button{height:auto}[type=search]{outline-offset:-2px;-webkit-appearance:none}[type=search]::-webkit-search-cancel-button,[type=search]::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{font:inherit;-webkit-appearance:button}output{display:inline-block}summary{display:list-item}template{display:none}[hidden]{display:none!important}:root{color:#1f2937;background:#f3f6fb;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}*{box-sizing:border-box}body{margin:0;min-width:360px;min-height:100vh;background:linear-gradient(180deg,#eef3fb,#f6f8fc 42%,#edf2f8)}body:before{position:fixed;inset:0;pointer-events:none;content:"";background:linear-gradient(90deg,rgba(31,94,255,.05),transparent 34%),radial-gradient(circle at 88% 6%,rgba(15,118,110,.08),transparent 24%)}.app-shell{min-height:100vh;background:transparent}.app-header{height:auto;min-height:128px;padding:32px clamp(18px,4vw,56px);display:flex;align-items:stretch;justify-content:space-between;gap:24px;color:#172033;background:linear-gradient(135deg,#fff,#f8fbff,#eef5ff);border-bottom:1px solid #d8e0ec;box-shadow:0 12px 32px #0f172a0f}.app-header h1.ant-typography{margin:0;color:#111827;font-size:clamp(2rem,3vw,3.4rem);line-height:1.08;letter-spacing:-.035em}.header-title-only{display:inline-flex;align-items:center}.top-nav-wrap{min-width:min(820px,100%);display:grid;gap:8px;align-content:center}.top-nav-kicker{color:#1d4ed8;font-size:.78rem;font-weight:900;letter-spacing:.08em;text-transform:uppercase}.top-nav-menu{min-width:0;border:1px solid #dbeafe;border-radius:12px;background:#ffffffb8;padding:0 8px}.top-nav-menu.ant-menu-horizontal{line-height:44px}.top-nav-menu .ant-menu-item{border-radius:10px;font-weight:900}.top-nav-menu .ant-menu-item-selected{background:#eff6ff}.app-header .ant-typography{max-width:760px;color:#5f6f86;font-size:1rem}.app-content{position:relative;z-index:1;width:min(1680px,100%);margin:-28px auto 0;padding:0 clamp(16px,3vw,40px) 48px}.panel-card{border:1px solid #d9e2ef;border-radius:14px;background:#fff;box-shadow:0 16px 40px #0f172a12}.input-card{position:relative}.section-title{width:100%;margin-bottom:18px;padding-bottom:12px;border-bottom:1px solid #e5ebf3;color:#111827;font-size:1rem;font-weight:900}.section-title .anticon{display:inline-flex;align-items:center;justify-content:center;width:32px;height:32px;border-radius:8px;color:#fff;background:linear-gradient(135deg,#1f5eff,#0f62fe)}.fold-panel{margin-top:18px;border:1px solid #d9e2ef;border-radius:14px;background:#fff}.inline-fold{overflow:hidden}.fold-header{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:14px 16px}.section-fold-header{padding:0 0 12px;border-bottom:1px solid #e5ebf3}.section-fold-header .section-title{margin-bottom:0;padding-bottom:0;border-bottom:0}.fold-title{width:auto;margin-bottom:0;padding-bottom:0;border-bottom:0}.fold-header .ant-btn{flex:0 0 auto;border-color:#bfdbfe;color:#1d4ed8;font-weight:800}.fold-placeholder{padding:16px;border:1px dashed #cbd5e1;border-radius:12px;color:#64748b;background:#f8fafc}.full{width:100%}.form-divider{margin:8px 0 20px;color:#64748b!important;font-size:.86rem!important;font-weight:900}.feature-intro{display:grid;grid-template-columns:auto minmax(0,1fr);gap:14px;align-items:start;margin:-2px 0 20px;padding:16px;border:1px solid #dbeafe;border-radius:14px;background:linear-gradient(135deg,#eff6ff,#fff 74%),radial-gradient(circle at top right,rgba(31,94,255,.12),transparent 34%)}.feature-icon{width:42px;height:42px;display:grid;place-items:center;border-radius:12px;color:#fff;background:linear-gradient(135deg,#1f5eff,#0f62fe);box-shadow:0 10px 20px #1f5eff2e}.feature-kicker{display:inline-block;margin-bottom:4px;color:#1d4ed8;font-size:.78rem;font-weight:900;letter-spacing:.06em}.feature-intro h4.ant-typography{margin:0 0 6px;color:#0f172a;font-weight:900}.feature-intro .ant-typography{margin-bottom:0;color:#475569}.product-lookup-card{display:grid;gap:14px;margin-bottom:22px;padding:16px;border:1px solid #d9e2ef;border-radius:14px;background:linear-gradient(135deg,#fff,#f8fbff 76%),radial-gradient(circle at top right,rgba(15,118,110,.1),transparent 32%)}.product-lookup-heading{display:grid;gap:6px}.product-lookup-heading .anticon{color:#0f766e;font-size:1.1rem}.product-source-badge{display:inline-flex;margin-left:6px;padding:2px 7px;border-radius:999px;color:#b42318;background:#fff1f2;font-size:.82rem;font-weight:900}.product-lookup-actions{display:flex;flex-wrap:wrap;gap:12px;align-items:center;justify-content:space-between}.query-input-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px}.product-lookup-output{margin:0;padding:12px;border:1px solid #dbeafe;border-radius:10px;color:#1e293b;background:#f8fafc;white-space:pre-wrap;word-break:break-word;font-family:Cascadia Mono,Consolas,monospace;font-size:.82rem;line-height:1.55}.history-hint{display:block;margin-top:6px;font-size:.78rem}.barcode-scanner{display:grid;gap:14px}.barcode-video-wrap{position:relative;overflow:hidden;min-height:280px;border:1px solid #dbeafe;border-radius:14px;background:linear-gradient(135deg,#0f172a,#1e293b)}.barcode-video{width:100%;min-height:280px;display:block;object-fit:cover}.barcode-frame{position:absolute;inset:24%;border:2px solid #38bdf8;border-radius:14px;box-shadow:0 0 0 999px #0f172a52,0 0 24px #38bdf861;pointer-events:none}.calculator-form .ant-form-item{margin-bottom:12px}.calculator-grid{align-items:flex-start}.calculator-grid+.calculator-grid{margin-top:2px}.ant-form-item-label>label{color:#334155!important;font-weight:800}.ant-input-number,.ant-select-selector{min-height:42px}.result-card{min-height:420px}.empty-state{min-height:350px;display:grid;place-items:center;align-content:center;gap:12px;text-align:center;color:#5d7484}.empty-state .anticon{width:76px;height:76px;display:grid;place-items:center;border-radius:18px;color:#1f5eff;background:#eff6ff;font-size:2rem}.empty-state h3.ant-typography{margin:0;color:#111827}.tag-row{display:flex;flex-wrap:wrap;gap:10px;margin-top:18px}.tag-row .ant-tag{padding:5px 10px;border-radius:6px;font-weight:800}.fee-result-inline{margin-top:16px;padding:16px 18px;border:1px solid #cfe1ff;border-radius:14px;background:linear-gradient(135deg,#f8fbff,#fff 72%),radial-gradient(circle at top right,rgba(31,94,255,.1),transparent 34%)}.fee-result-inline .ant-statistic-content{font-size:1.32rem;line-height:1.1}.compact-tags{margin-top:12px;gap:8px}.compact-tags .ant-tag{margin-inline-end:0}.sipp-summary{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:18px;margin-top:18px;padding:18px;border:1px solid #b7e4d8;border-radius:14px;background:linear-gradient(135deg,#f0fdfa,#fff 70%),radial-gradient(circle at top right,rgba(15,118,110,.12),transparent 30%)}.sipp-summary h4.ant-typography{margin:8px 0 6px;color:#0f172a}.mini-title{margin:0;color:#0f766e;font-weight:900}.mini-title .anticon{color:#0f766e}.sipp-money{min-width:150px;display:grid;align-content:center;gap:4px;padding:14px 16px;border:1px solid #99f6e4;border-radius:12px;text-align:right;background:#fff}.sipp-money strong{color:#0f766e;font-size:1.8rem;line-height:1}.sipp-fit-report{display:grid;gap:16px;margin-top:0;padding:18px;border-top:1px solid #b7e4d8;border-right:0;border-bottom:0;border-left:0;border-radius:0;background:linear-gradient(135deg,#f0fdfa,#fff 72%),radial-gradient(circle at top right,rgba(15,118,110,.12),transparent 32%)}.sipp-fit-header{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:18px;align-items:start}.sipp-fit-header h4.ant-typography{margin:8px 0 6px;color:#0f172a}.sipp-program-grid{margin-top:2px}.sipp-program-card{min-height:132px;padding:16px;border:1px solid #dbeafe;border-radius:12px;background:#ffffffd1}.sipp-program-card h5.ant-typography{margin:10px 0 8px;color:#0f172a;font-weight:900}.sipp-fit-table{overflow:hidden;border:1px solid #dce8f3;border-radius:12px}.rule-pass{color:#166534;font-weight:700}.rule-fail{color:#b42318;font-weight:800}.sipp-rule-notes{display:grid;gap:8px;margin:0;padding:14px 16px 14px 34px;border:1px solid #e2e8f0;border-radius:12px;color:#334155;background:#fff}.notes-card{margin-top:18px;border-radius:10px}.notes-card ul{margin:0;padding-left:18px}.bottom-grid{margin-top:24px}.insight-card{height:100%;background:linear-gradient(145deg,#f8fbff,#fff)}.reference-card{background:linear-gradient(180deg,#fff,#fbfdff)}.suggestion-list{display:grid;gap:12px;margin-top:16px}.suggestion-card{display:grid;grid-template-columns:auto minmax(0,1fr);gap:8px 10px;padding:14px;border:1px solid #dbeafe;border-radius:12px;background:#f8fbff}.suggestion-card .ant-typography{grid-column:1 / -1;color:#475569}.diagnostics-report{display:grid;gap:16px}.diagnostic-section{padding:16px;border:1px solid #e2e8f0;border-radius:14px;background:#fff}.diagnostic-section h5.ant-typography{margin:0 0 12px;color:#0f172a;font-weight:900}.diagnostic-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.diagnostic-grid.compact{grid-template-columns:repeat(4,minmax(0,1fr))}.diagnostic-row{display:grid;gap:4px;padding:12px;border:1px solid #e8edf5;border-radius:10px;background:#f8fafc}.diagnostic-row strong{color:#0f172a;font-size:.98rem}.list-section{height:100%}.list-section ul{display:grid;gap:8px;margin:0;padding-left:18px;color:#334155}.optimization-section{background:linear-gradient(145deg,#f8fbff,#fff)}.optimization-summary{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}.optimization-summary>div,.priority-change{display:grid;gap:5px;padding:12px;border:1px solid #dbeafe;border-radius:10px;background:#eff6ff}.optimization-summary strong,.priority-change strong{color:#1d4ed8;font-size:1rem}.priority-change{grid-template-columns:minmax(0,1fr) auto;align-items:center;margin-top:12px;background:#f0fdfa;border-color:#99f6e4}.optimization-plans{display:grid;gap:12px;margin-top:14px}.optimization-plan{padding:14px;border:1px solid #e2e8f0;border-radius:12px;background:#fff}.plan-head{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:8px}.optimization-plan .ant-typography{margin-bottom:8px}.plan-line{display:block;color:#475569;font-weight:700}.empty-mini{min-height:260px;display:grid;place-items:center;padding:24px;border:1px dashed #cbd5e1;border-radius:14px;color:#64748b;text-align:center;background:#f8fafc}.highlight-row>td{background:#dbeafe!important;color:#0f172a;font-weight:800}.highlight-row>td:first-child{box-shadow:inset 4px 0 #1f5eff}.highlight-row:hover>td{background:#cfe1ff!important}.tool-page{display:grid;gap:24px}.tool-hero{background:linear-gradient(135deg,#fff,#f8fbff 70%),radial-gradient(circle at top right,rgba(31,94,255,.12),transparent 32%)}.tool-hero h2.ant-typography{margin:0 0 6px;color:#0f172a;font-weight:900}.tool-hero .ant-typography{margin-bottom:0;color:#475569}.tool-hero-icon{width:46px;height:46px;display:grid;place-items:center;border-radius:13px;color:#fff;background:linear-gradient(135deg,#1f5eff,#0f766e);box-shadow:0 12px 24px #1f5eff33;font-size:1.25rem}.tool-result-card{display:grid;gap:16px}.tool-metric{display:grid;gap:5px;height:100%;padding:13px;border:1px solid #dbeafe;border-radius:12px;background:#f8fbff}.tool-metric strong{color:#0f172a;font-size:1rem}.tool-stat-row{margin-top:16px}.ant-card .ant-card-body{padding:24px}.ant-btn-primary{box-shadow:0 8px 18px #1f5eff2e}.ant-statistic-title{color:#64748b;font-weight:700}.ant-table{color:#263244}.ant-table-thead>tr>th{color:#334155!important;background:#f8fafc!important;font-weight:800!important}.ant-table-tbody>tr>td{border-color:#e8edf5!important}@media(max-width:900px){.app-header{align-items:flex-start;flex-direction:column}.top-nav-wrap{width:100%}.top-nav-menu{overflow-x:auto}.input-card{position:static}.sipp-summary,.sipp-fit-header{grid-template-columns:1fr}.sipp-money{text-align:left}.diagnostic-grid,.diagnostic-grid.compact,.optimization-summary,.priority-change,.query-input-row{grid-template-columns:1fr}}
