:root{--bg:#f4f7fb;--surface:#ffffff;--surface-alt:#f8fafd;--ink:#17233b;--ink-secondary:#41506b;--muted:#8694ab;--line:#e2e9f2;--line-strong:#c9d5e5;--primary:#1d4ed8;--primary-hover:#1e40af;--accent:#2563eb;--accent-strong:#1d4ed8;--accent-soft:rgba(37,99,235,0.12);--success:#16815d;--success-soft:#eefaf5;--danger:#dc2626;--danger-soft:#fff1f2;--radius:10px;--radius-lg:16px;--shadow-sm:0 1px 2px rgba(23,35,59,0.04),0 1px 1px rgba(23,35,59,0.03);--shadow-md:0 12px 32px rgba(29,78,216,0.14);--font-data:ui-monospace,SFMono-Regular,Menlo,monospace;--font-body:-apple-system,BlinkMacSystemFont,"PingFang SC","Hiragino Sans GB","Microsoft YaHei",sans-serif}*{box-sizing:border-box}html{-webkit-text-size-adjust:100%}body{min-height:100vh;margin:0;background:var(--bg);color:var(--ink);font-family:var(--font-body);font-size:15px;line-height:1.5;overscroll-behavior-y:contain;-webkit-font-smoothing:antialiased}button,input,select,textarea{font:inherit}button{border:0;cursor:pointer;touch-action:manipulation}input,select,textarea{width:100%;min-height:48px;padding:11px 14px;border:1px solid var(--line-strong);border-radius:var(--radius);outline:none;background:var(--surface);color:var(--ink);font-size:16px;touch-action:manipulation}input::placeholder,textarea::placeholder{color:#aab6c9}input:focus,select:focus,textarea:focus{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-soft)}textarea{resize:vertical}::selection{background:rgba(37,99,235,.16)}.contract-image-picker,.contract-remark-image-picker,button,input,select,textarea{transition:border-color .16s ease-out,box-shadow .16s ease-out,background-color .16s ease-out,color .16s ease-out,opacity .16s ease-out}.app-shell{width:min(100% - 32px,680px);margin:0 auto;padding:20px 0 40px}.app-header{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:16px}.app-header strong{display:block;font-size:1.06rem;letter-spacing:-.01em}.app-header>span{flex:0 0 auto;padding:5px 10px;border:1px solid var(--line);border-radius:999px;background:var(--surface);color:var(--ink-secondary);font-size:.74rem;font-weight:600}.eyebrow{margin:0;color:var(--accent);font-family:var(--font-data);font-size:.66rem;font-weight:700;letter-spacing:.14em}.hero-panel,.panel{border:1px solid var(--line);border-radius:var(--radius-lg);background:var(--surface);box-shadow:var(--shadow-sm)}.hero-panel{display:grid;gap:6px;margin-bottom:16px;padding:22px 20px}.hero-panel h1{margin:4px 0 2px;font-size:1.42rem;font-weight:700;line-height:1.2;letter-spacing:-.02em}.hero-panel p:last-child{margin:0;color:var(--muted);font-size:.86rem}.contract-studio{display:grid;grid-template-columns:1fr;gap:16px;align-items:start;padding-bottom:calc(92px + env(safe-area-inset-bottom, 0px))}.contract-form-panel,.contract-preview-panel{width:100%;max-width:860px;margin-inline:auto;padding:20px 18px}.contract-preview-head,.contract-section-heading{display:flex;align-items:center;gap:12px}.contract-section-heading h2{margin:2px 0 0;font-size:1.02rem;letter-spacing:-.01em}.contract-form-heading{width:100%}.contract-clear-button{min-height:42px;margin-left:auto;padding:.5rem .85rem;font-size:.82rem}.contract-step{display:grid;flex:0 0 36px;height:36px;place-items:center;border-radius:999px;background:var(--accent-soft);color:var(--accent-strong);font-family:var(--font-data);font-size:.72rem;font-weight:700}.contract-form{display:grid;gap:18px;margin-top:22px}.contract-form-grid{display:grid;grid-template-columns:1fr;gap:14px}.contract-form label{display:grid;gap:7px;color:var(--ink-secondary);font-size:.84rem;font-weight:600}.contract-form label>span{display:flex;align-items:center;justify-content:flex-start;gap:6px}.contract-form label em{color:var(--danger);font-family:var(--font-data);font-size:1rem;font-style:normal;font-weight:700;line-height:1}.contract-form-field{grid-column:1/-1}.contract-form textarea{min-height:108px;line-height:1.6}.contract-form small{justify-self:end;color:var(--muted);font-family:var(--font-data);font-size:.7rem}.contract-copy-settings{border:1px solid var(--line);border-radius:var(--radius);background:var(--surface-alt)}.contract-copy-settings summary{display:flex;min-height:48px;align-items:center;justify-content:space-between;gap:12px;padding:12px 14px;color:var(--ink-secondary);cursor:pointer;font-size:.9rem;font-weight:650;list-style:none}.contract-copy-settings summary::-webkit-details-marker{display:none}.contract-copy-settings summary:focus-visible{border-radius:var(--radius);outline:3px solid var(--accent-soft);outline-offset:2px}.contract-copy-settings summary i{width:9px;height:9px;flex:0 0 9px;border-right:2px solid;border-bottom:2px solid;transform:rotate(45deg) translate(-2px,2px);transition:transform .18s ease-out}.contract-copy-settings[open] summary i{transform:rotate(225deg) translate(-2px,2px)}.contract-copy-fields{display:grid;gap:14px;padding:4px 14px 14px;border-top:1px solid var(--line)}.contract-copy-fields label:first-child{padding-top:12px}.contract-copy-fields textarea{min-height:76px}.contract-product-block,.contract-product-list,.contract-products-field{display:grid}.contract-product-list,.contract-products-field{gap:12px}.contract-products-heading>div{display:flex;align-items:baseline;flex-wrap:wrap;gap:8px}.contract-product-add{width:100%;min-height:50px;gap:8px;padding:.65rem 1rem;border-style:dashed;background:transparent;color:var(--accent);font-size:.84rem;font-weight:700}.contract-product-add:focus-visible,.contract-product-add:hover{border-color:var(--accent);background:var(--accent-soft);color:var(--accent)}.contract-product-add:focus-visible{outline:3px solid var(--accent-soft);outline-offset:2px}.contract-product-add-icon{display:inline-grid;width:24px;height:24px;place-items:center;border-radius:50%;background:var(--accent-soft);color:var(--accent);font-size:1.2rem;font-weight:500;line-height:1}.contract-product-add:disabled{cursor:not-allowed;opacity:.5}.contract-product-add:disabled .contract-product-add-icon{background:var(--line);color:var(--muted)}.contract-product-block{min-width:0;gap:12px;margin:0;padding:14px;border:1px solid var(--line-strong);border-radius:var(--radius);background:var(--surface-alt)}.contract-product-block legend{padding:0 6px;color:var(--ink);font-size:.84rem;font-weight:700}.contract-product-block-head{display:flex;min-height:24px;align-items:center;justify-content:space-between;gap:12px;color:var(--muted);font-size:.74rem}.contract-product-remove{flex:0 0 auto;min-height:36px;padding:4px;background:transparent;color:var(--danger);font-size:.78rem;font-weight:650}.contract-product-remove:focus-visible{border-radius:4px;outline:3px solid var(--accent-soft);outline-offset:2px}.contract-product-number-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.contract-image-field{position:relative;display:grid;gap:8px}.contract-field-label{display:flex;align-items:center;justify-content:space-between;color:var(--ink-secondary);font-size:.84rem;font-weight:600}.contract-field-label>span{display:inline-flex;align-items:center;gap:6px}.contract-field-label em{color:var(--danger);font-family:var(--font-data);font-size:1rem;font-style:normal;font-weight:700;line-height:1}.contract-image-picker{min-height:132px;display:grid;place-items:center;gap:6px;padding:18px;border:1.5px dashed var(--line-strong);border-radius:var(--radius);background:var(--surface-alt);color:var(--ink-secondary);text-align:center}.contract-image-picker:focus-visible,.contract-image-picker:hover{border-color:var(--accent);background:#f5f8fe;outline:none;box-shadow:0 0 0 3px var(--accent-soft)}.contract-image-picker strong{color:var(--ink);font-size:.92rem}.contract-image-picker span{max-width:100%;overflow:hidden;color:var(--muted);font-size:.76rem;text-overflow:ellipsis;white-space:nowrap}.contract-image-picker.has-image{grid-template-columns:100px minmax(0,1fr);grid-template-rows:auto auto;justify-items:start;min-height:132px;text-align:left}.contract-image-picker img{width:100px;height:100px;grid-row:1/3;object-fit:contain;border:1px solid var(--line);border-radius:6px;background:white}.contract-image-remove{justify-self:end;min-height:44px;padding:8px 4px;background:transparent;color:var(--danger);font-size:.82rem;font-weight:600}.contract-remarks-field{display:grid;gap:12px}.contract-remarks-label{display:flex;align-items:baseline;flex-wrap:wrap;gap:8px}.contract-remark-images small,.contract-remarks-label small{color:var(--muted);font-size:.72rem;font-weight:500}.contract-remark-list{display:grid;gap:12px}.contract-remark-block{min-width:0;margin:0;padding:14px;border:1px solid var(--line);border-radius:var(--radius);background:var(--surface-alt)}.contract-remark-block legend{padding:0 6px;color:var(--ink-secondary);font-size:.78rem;font-weight:700}.contract-remark-block-head,.contract-remark-images-head{display:flex;align-items:center;justify-content:space-between;gap:8px}.contract-remark-block-head{margin-bottom:10px;color:var(--muted);font-size:.76rem}.contract-remark-block-actions,.contract-remark-image-actions{display:flex;align-items:center;flex-wrap:wrap;justify-content:flex-end;gap:8px}.contract-icon-button{display:inline-grid;min-width:48px;min-height:36px;padding:0 10px;place-items:center;border:1px solid var(--line-strong);border-radius:8px;background:var(--surface);color:var(--ink-secondary);font-size:.74rem;font-weight:700;line-height:1}.contract-icon-button:disabled{cursor:not-allowed;opacity:.4}.contract-icon-button:focus-visible,.contract-icon-button:hover:not(:disabled){border-color:var(--accent);color:var(--accent);outline:none}.contract-remark-delete{min-height:36px;padding:6px 2px;background:transparent;color:var(--danger);font-size:.76rem;font-weight:650}.contract-remark-delete:focus-visible,.contract-remark-image-picker:focus-visible{outline:3px solid var(--accent-soft);outline-offset:2px}.contract-remark-text-label{gap:6px!important;color:var(--ink-secondary);font-size:.78rem!important}.contract-remark-text-label textarea{min-height:80px}.contract-remark-images{display:grid;gap:8px;margin-top:12px}.contract-remark-images-head{color:var(--ink-secondary);font-size:.78rem}.contract-remark-image-count{color:var(--muted);font-family:var(--font-data);font-size:.7rem}.contract-remark-image-picker{min-height:48px;padding:10px 12px;border:1.5px dashed var(--line-strong);border-radius:var(--radius);background:var(--surface);color:var(--ink-secondary);font-size:.82rem;text-align:left}.contract-remark-image-picker:hover{border-color:var(--accent);background:#f5f8fe}.contract-remark-image-list{display:grid;grid-template-columns:1fr;gap:8px}.contract-remark-image-item{display:grid;grid-template-columns:48px minmax(0,1fr);gap:4px 8px;align-items:center;min-width:0;padding:8px;border:1px solid var(--line);border-radius:8px;background:var(--surface)}.contract-remark-image-item img{width:48px;height:48px;grid-row:1/3;object-fit:contain;border:1px solid var(--line);border-radius:4px;background:white}.contract-remark-image-item>span{overflow:hidden;color:var(--muted);font-size:.7rem;text-overflow:ellipsis;white-space:nowrap}.contract-remark-image-actions{justify-content:flex-start}.contract-remarks-empty{margin:0;padding:16px 14px;border:1px dashed var(--line-strong);border-radius:var(--radius);color:var(--muted);font-size:.8rem;text-align:center}.contract-wecom-section{display:grid;gap:14px;margin-top:16px;padding:16px;border:1px solid #dde8e1;border-radius:var(--radius-lg);background:#f8fbf9}.contract-wecom-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;padding-bottom:12px;border-bottom:1px solid #e2efe7}.contract-wecom-heading h3{margin:3px 0 0;color:var(--ink);font-size:.98rem}.contract-wecom-heading>span{flex:0 0 auto;padding:4px 9px;border:1px solid #bcdcc9;border-radius:999px;color:var(--success);font-size:.7rem;font-weight:700}.contract-wecom-kicker{margin:0;color:var(--success);font-family:var(--font-data);font-size:.65rem;font-weight:700;letter-spacing:.08em}.contract-wecom-grid{display:grid;grid-template-columns:1fr;gap:12px}.contract-wecom-grid label,.contract-wecom-readonly{display:grid;align-content:start;gap:7px;min-width:0;color:var(--ink-secondary);font-size:.84rem;font-weight:600}.contract-wecom-grid label>span,.contract-wecom-readonly>span{display:flex;align-items:center;gap:6px}.contract-wecom-grid label em{color:var(--danger);font-family:var(--font-data);font-size:1rem;font-style:normal;font-weight:700;line-height:1}.contract-wecom-readonly output{display:flex;min-height:48px;align-items:center;padding:11px 14px;border:1px solid #d8e9de;border-radius:var(--radius);background:#f0f8f3;color:var(--ink);font-weight:700}.contract-wecom-note{grid-column:1/-1}.contract-wecom-note small{color:var(--muted);font-size:.72rem;font-weight:500}.contract-wecom-note textarea{min-height:82px}.contract-wecom-status{margin:0;padding:10px 12px;border:1px solid;border-radius:var(--radius);font-size:.84rem;font-weight:650}.contract-wecom-status.is-ready,.contract-wecom-status.is-submitting{border-color:#bfdbfe;background:#eff6ff;color:#1d4ed8}.contract-wecom-status.is-success{border-color:#b7dcca;background:var(--success-soft);color:var(--success)}.contract-wecom-status.is-error{border-color:#fecdd3;background:var(--danger-soft);color:var(--danger)}.contract-wecom-status.is-uncertain{border-color:#f3d18a;background:#fff8e6;color:#8a5b00}.contract-form-error{margin:0;padding:10px 12px;border:1px solid #fecdd3;border-radius:var(--radius);background:var(--danger-soft);color:var(--danger);font-size:.84rem;font-weight:600}.primary-button,.secondary-button{display:inline-flex;align-items:center;justify-content:center;min-height:48px;padding:.62rem 1.1rem;border-radius:12px;font-size:.95rem;font-weight:650;text-decoration:none}.primary-button{background:var(--primary);color:white}.primary-button:hover{background:var(--primary-hover)}.primary-button:active{transform:scale(.99)}.secondary-button{border:1px solid var(--line-strong);background:var(--surface);color:var(--ink-secondary)}.secondary-button:hover{border-color:var(--accent);color:var(--accent)}.contract-generate-button{width:100%;min-height:50px}.contract-generate-button:disabled{cursor:not-allowed;opacity:.58}.contract-generate-button--inline{display:none}.contract-action-bar{position:fixed;inset-inline:0;bottom:0;z-index:40;display:flex;gap:10px;padding:10px 16px calc(10px + env(safe-area-inset-bottom, 0px));border-top:1px solid var(--line);background:rgba(255,255,255,.92);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px)}.contract-action-bar .contract-generate-button{box-shadow:var(--shadow-md)}.contract-local-note{margin:18px 0 0;padding-top:16px;border-top:1px solid var(--line);color:var(--muted);font-size:.78rem}.contract-preview-panel{min-width:0}.contract-preview-head{justify-content:space-between;gap:12px;margin-bottom:18px}.contract-download-button{flex:0 0 auto;min-height:44px}.contract-download-actions{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:8px}.contract-preview-confirm{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-top:14px;padding:14px;border:1px solid #c7e1d1;border-radius:var(--radius);background:var(--success-soft)}.contract-preview-confirm strong{color:var(--ink);font-size:.9rem}.contract-preview-confirm p{margin:3px 0 0;color:var(--ink-secondary);font-size:.78rem}.contract-wecom-submit-button{flex:0 0 auto;min-width:180px}.contract-wecom-submit-button:disabled{cursor:not-allowed;opacity:.58}.contract-save-note{margin:12px 0 0;color:var(--muted);font-size:.78rem;text-align:center}.contract-save-note span{color:var(--danger);font-weight:700}.contract-preview-stage{min-height:240px;display:grid;place-items:center;padding:14px;overflow:hidden;border:1px solid var(--line);border-radius:var(--radius);background-color:#eef2f8;background-image:linear-gradient(rgba(65,80,107,.06) 1px,transparent 0),linear-gradient(90deg,rgba(65,80,107,.06) 1px,transparent 0);background-size:22px 22px}.contract-preview-stage.is-ready{place-items:start center}.contract-preview-stage img{display:block;width:100%;height:auto;border:1px solid var(--line-strong);background:white;box-shadow:0 14px 36px rgba(15,23,42,.14)}.contract-preview-empty{display:grid;justify-items:center;max-width:330px;text-align:center}.contract-preview-empty>span{display:grid;width:72px;height:72px;margin-bottom:18px;place-items:center;border:2px solid rgba(225,29,46,.55);border-radius:50%;color:rgba(225,29,46,.68);font-family:Songti SC,SimSun,serif;font-size:1rem;font-weight:700;transform:rotate(-8deg)}.contract-preview-empty strong{font-size:.96rem}.contract-preview-empty p{margin:8px 0 0;color:var(--muted);font-size:.8rem}@media (min-width:640px){.contract-form-grid{gap:16px}.contract-form-grid,.contract-wecom-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.contract-wecom-grid{gap:14px}.contract-wecom-note{grid-column:1/-1}.contract-remark-image-list{grid-template-columns:repeat(auto-fill,minmax(220px,1fr))}.contract-preview-stage{min-height:360px;padding:24px}}@media (min-width:1024px){.app-shell{width:min(100% - 48px,920px);padding:40px 0 72px}.app-header{margin-bottom:22px}.app-header strong{font-size:1.22rem}.hero-panel{margin-bottom:22px;padding:30px 34px}.hero-panel h1{font-size:clamp(1.7rem,3vw,2.15rem)}.hero-panel p:last-child{font-size:.92rem}.contract-studio{gap:22px;padding-bottom:0}.contract-form-panel,.contract-preview-panel{padding:26px}.contract-generate-button--inline{display:inline-flex}.contract-action-bar{display:none}.contract-preview-stage{min-height:470px;padding:30px}.contract-field-label,.contract-remark-block-head,.contract-wecom-heading{align-items:center}}@media (min-width:1280px){.app-shell{width:min(100% - 64px,1280px)}.contract-studio{grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr);gap:24px}.contract-form-panel,.contract-preview-panel{max-width:none;margin-inline:0}.contract-preview-panel{position:sticky;top:24px}.contract-preview-stage{min-height:420px}}@media (max-width:639px){.contract-field-label,.contract-preview-head,.contract-remark-block-head,.contract-wecom-heading{align-items:flex-start}.contract-download-actions{justify-content:flex-start}.contract-preview-confirm{align-items:stretch;flex-direction:column}.contract-wecom-submit-button{width:100%}}@media (prefers-reduced-motion:reduce){*,:after,:before{scroll-behavior:auto!important;transition-duration:.01ms!important}}.contracts-app-shell{min-width:0}.contracts-header-account{display:flex;min-width:0;align-items:center;justify-content:flex-end;gap:8px}.contracts-user-name{display:block;max-width:min(46vw,220px);overflow:hidden;padding:5px 10px;border:1px solid var(--line);border-radius:999px;background:var(--surface);color:var(--ink-secondary);font-size:.74rem;font-weight:600;text-overflow:ellipsis;white-space:nowrap}.contracts-user-name:focus-visible,.contracts-user-name:hover,.contracts-user-name[aria-expanded=true]{border-color:var(--accent);color:var(--accent);outline:none}.contracts-user-name:focus-visible{box-shadow:0 0 0 3px var(--accent-soft)}.contracts-sign-out{min-height:36px;padding:4px 2px;background:transparent;color:var(--muted);font-size:.78rem;font-weight:650;white-space:nowrap}.contracts-sign-out:focus-visible,.contracts-sign-out:hover{color:var(--accent);outline:none}.contracts-sign-out:disabled{cursor:not-allowed;opacity:.55}.contracts-profile-overlay{position:fixed;z-index:100;inset:0;display:grid;place-items:center;padding:20px;background:rgba(23,35,59,.36)}.contracts-profile-modal{width:min(100%,440px);max-height:min(720px,calc(100vh - 40px));overflow-y:auto;padding:24px;border:1px solid var(--line);border-radius:var(--radius-lg);background:var(--surface);box-shadow:0 24px 64px rgba(23,35,59,.22)}.contracts-profile-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:16px}.contracts-profile-heading h2{margin:4px 0 0;font-size:1.18rem;line-height:1.25}.contracts-profile-close{display:grid;width:36px;height:36px;flex:0 0 36px;place-items:center;border:1px solid var(--line);border-radius:50%;background:var(--surface-alt);color:var(--ink-secondary);font-size:1.4rem;line-height:1}.contracts-profile-close:focus-visible,.contracts-profile-close:hover{border-color:var(--accent);color:var(--accent);outline:none}.contracts-profile-close:focus-visible{box-shadow:0 0 0 3px var(--accent-soft)}.contracts-profile-close:disabled{cursor:wait;opacity:.55}.contracts-profile-form{display:grid;gap:14px;margin-top:22px}.contracts-profile-form label{display:grid;gap:7px;color:var(--ink-secondary);font-size:.84rem;font-weight:600}.contracts-profile-form label>span{display:flex;align-items:baseline;justify-content:space-between;gap:8px}.contracts-profile-form label small{color:var(--muted);font-size:.72rem;font-weight:500}.contracts-profile-hint{margin:0 0 2px;color:var(--muted);font-size:.82rem;line-height:1.6}.contracts-password-form{margin-top:24px;padding-top:20px;border-top:1px solid var(--line)}.contracts-profile-section-heading{display:flex;align-items:baseline;justify-content:space-between;gap:12px}.contracts-profile-section-heading h3{margin:0;color:var(--ink);font-size:1rem}.contracts-profile-section-heading small{color:var(--muted);font-size:.72rem;font-weight:500}.contracts-profile-success{margin:0;padding:10px 12px;border:1px solid rgba(24,142,91,.28);border-radius:var(--radius-sm);background:rgba(24,142,91,.08);color:#147447;font-size:.82rem;line-height:1.45}.contracts-profile-actions{display:flex;justify-content:flex-end;gap:10px;margin-top:4px}.contracts-profile-actions .primary-button,.contracts-profile-actions .secondary-button{min-width:112px}.contracts-history-panel,.contracts-login-panel,.contracts-status-panel{margin-bottom:16px;padding:20px 18px}.contracts-type-tabs{display:flex;gap:6px;margin-bottom:16px;padding:4px;border:1px solid var(--line);border-radius:var(--radius-lg);background:var(--surface-alt)}.contracts-type-tab{flex:1 1;min-height:44px;padding:0 12px;border:1px solid transparent;border-radius:var(--radius);background:transparent;color:var(--ink-secondary);font-size:.88rem;font-weight:700}.contracts-type-tab:focus-visible,.contracts-type-tab:hover{color:var(--accent);outline:none}.contracts-type-tab:focus-visible{box-shadow:0 0 0 3px var(--accent-soft)}.contracts-type-tab.is-active{border-color:var(--line-strong);background:var(--surface);color:var(--accent-strong);box-shadow:var(--shadow-sm)}.contracts-login-intro{margin:16px 0 0;color:var(--muted);font-size:.82rem}.contracts-login-form{display:grid;gap:14px;margin-top:18px}.contracts-login-form label{display:grid;gap:7px;color:var(--ink-secondary);font-size:.84rem;font-weight:600}.contracts-login-form label small{color:var(--muted);font-size:.72rem;font-weight:500}.contracts-login-button{width:100%;margin-top:2px}.contracts-history-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.contracts-history-error{margin-top:16px}.contracts-history-list{display:grid;gap:8px;margin:18px 0 0;padding:0;list-style:none}.contracts-history-item{display:flex;width:100%;min-width:0;align-items:center;justify-content:space-between;gap:12px;padding:12px;border:1px solid var(--line);border-radius:var(--radius);background:var(--surface-alt);color:var(--ink);text-align:left}.contracts-history-item.is-active,.contracts-history-item:focus-visible,.contracts-history-item:hover{border-color:var(--accent);background:#f5f8fe;outline:none}.contracts-history-item:disabled{cursor:wait;opacity:.68}.contracts-history-item-main{display:grid;min-width:0;gap:2px}.contracts-history-item-main span,.contracts-history-item-main strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.contracts-history-item-main strong{font-size:.88rem}.contracts-history-item-main span,.contracts-history-item-time{color:var(--muted);font-size:.76rem}.contracts-history-item-loading,.contracts-history-item-time{flex:0 0 auto;white-space:nowrap}.contracts-history-item-loading{display:inline-flex;align-items:center;gap:7px;color:var(--accent);font-size:.76rem;font-weight:700}.contracts-history-spinner{width:14px;height:14px;flex:0 0 14px;border:2px solid var(--accent-soft);border-top-color:var(--accent);border-radius:50%;animation:contracts-history-spin .72s linear infinite}@keyframes contracts-history-spin{to{transform:rotate(1turn)}}@media (prefers-reduced-motion:reduce){.contracts-history-spinner{animation:none}}.contracts-history-state,.contracts-status-panel p{margin:16px 0 0;color:var(--muted);font-size:.82rem}.contracts-status-panel strong{font-size:.92rem}@media (min-width:640px){.contracts-type-tabs{margin-bottom:18px}.contracts-history-panel,.contracts-login-panel,.contracts-status-panel{padding:24px}.contracts-login-form{max-width:520px}}@media (min-width:1024px){.contracts-history-panel,.contracts-login-panel,.contracts-status-panel{margin-bottom:22px;padding:26px}}@media (max-width:639px){.contracts-history-heading{flex-direction:column}.contract-clear-button{min-width:104px}.contracts-profile-overlay{align-items:center;padding:12px}.contracts-profile-modal{max-height:calc(100vh - 24px);padding:20px}.contracts-profile-actions{flex-direction:column-reverse}.contracts-profile-actions .primary-button,.contracts-profile-actions .secondary-button{width:100%}}