.ti-card { background:#fff; border:1.5px solid #e5e7eb; border-radius:14px; padding:14px; margin:10px 0 14px; color:#111827; }
.proposal-collapse { margin-bottom:10px; border:1.5px solid #e5e7eb; border-radius:14px; background:#fff; min-width:0; }
.proposal-collapse > summary { padding:16px; cursor:pointer; font-size:14px; font-weight:800; color:#1e3a8a; overflow-wrap:anywhere; }
.proposal-collapse > summary:focus-visible { outline:3px solid #93c5fd; outline-offset:2px; border-radius:14px; }
.proposal-collapse[open] > summary { border-bottom:1px solid #e5e7eb; }
.proposal-collapse-body { padding:12px; }
.proposal-collapse .ti-card { border:0; margin:0; }
.proposal-collapse .ti-title { display:none; }
.acc-quantity { display:inline-flex; align-items:center; gap:4px; margin-left:4px; font:inherit; }
.acc-quantity input { box-sizing:border-box; width:36px; min-height:32px; padding:6px 4px; border:1px solid #86efac; border-radius:12px; background:#fff; color:#166534; font:inherit; font-weight:700; text-align:center; appearance:textfield; -moz-appearance:textfield; }
.acc-quantity input::-webkit-inner-spin-button, .acc-quantity input::-webkit-outer-spin-button { -webkit-appearance:none; margin:0; }
.acc-quantity input:focus-visible { outline:3px solid #2563eb; outline-offset:2px; }
.ti-head { display:flex; align-items:flex-start; justify-content:space-between; gap:10px; flex-wrap:wrap; margin-bottom:6px; }
.ti-title { font-size:13px; font-weight:800; text-transform:uppercase; letter-spacing:.05em; color:#1e3a8a; margin:0; }
.ti-sub { font-size:11px; color:#6b7280; margin:2px 0 0; line-height:1.4; }
.ti-shared { display:flex; align-items:center; gap:8px; min-height:40px; padding:6px 10px; border:1.5px solid #bfdbfe; border-radius:10px; background:#eff6ff; font-size:12px; font-weight:700; color:#1d4ed8; cursor:pointer; }
.ti-shared input { width:18px; height:18px; accent-color:#1d4ed8; margin:0; }
.ti-shared-note { font-size:11px; line-height:1.45; background:#eff6ff; color:#1e40af; border-left:3px solid #3b82f6; border-radius:6px; padding:8px 10px; margin:8px 0; }
.ti-notice { font-size:11px; line-height:1.45; color:#78350f; background:#fffbeb; border:1px solid #fde68a; border-radius:8px; padding:8px 10px; margin:6px 0 10px; }
.ti-field { padding:10px 0; border-top:1px solid #f3f4f6; }
.ti-field:first-of-type { border-top:none; }
.ti-label { display:flex; justify-content:space-between; align-items:baseline; gap:6px; font-size:12px; font-weight:700; color:#374151; margin-bottom:5px; }
.ti-src { font-size:10px; font-weight:700; color:#6b7280; text-transform:uppercase; letter-spacing:.04em; }
.ti-input { width:100%; box-sizing:border-box; border:1.5px solid #e5e7eb; border-radius:10px; padding:10px 12px; font-size:16px; color:#111827; background:#f9fafb; font-family:inherit; outline:none; }
.ti-input:focus { border-color:#3b82f6; background:#fff; }
.ti-input:focus-visible { outline:3px solid #93c5fd; outline-offset:1px; }
textarea.ti-input { min-height:80px; resize:vertical; line-height:1.4; }
.ti-sugs { display:flex; flex-wrap:wrap; gap:6px; margin-top:7px; }
.ti-sugs-label { width:100%; font-size:10px; color:#9ca3af; font-weight:700; text-transform:uppercase; letter-spacing:.05em; }
.ti-sug { display:flex; flex-direction:column; align-items:flex-start; max-width:100%; min-height:40px; padding:6px 10px; border:1.5px dashed #cbd5e1; border-radius:10px; background:#fff; color:#374151; font:inherit; font-size:12px; text-align:left; cursor:pointer; overflow-wrap:anywhere; }
.ti-sug small { font-size:10px; font-weight:700; color:#6b7280; text-transform:uppercase; letter-spacing:.04em; }
.ti-sug[aria-pressed="true"] { border-style:solid; border-color:#166534; background:#f0fdf4; color:#14532d; }
.ti-sug[aria-pressed="true"] small { color:#166534; }
.ti-sug:focus-visible, .ti-shared:focus-within { outline:3px solid #2563eb; outline-offset:2px; }
@media (max-width:380px){ .ti-card{padding:12px} .ti-shared{width:100%} }
