.prose table{width:100%;border-collapse:collapse;font-size:15px;display:block;overflow-x:auto}.prose td,.prose th{text-align:left;padding:12px 14px;border-bottom:1px solid var(--line);vertical-align:top}.prose thead th{background:var(--band,#f4f6f9);font-size:13px;text-transform:uppercase;letter-spacing:.05em;color:var(--ink-3)}.prose h2{font-size:clamp(22px,2.4vw,28px);letter-spacing:-.015em}.prose blockquote{margin:0;padding:12px 16px;border-left:3px solid var(--navy);background:var(--navy-tint);border-radius:8px;color:var(--ink)}.prose input[type=file].input{padding:8px;font:inherit;color:var(--ink,#0a1a2f)}.prose input[type=file].input::-webkit-file-upload-button{margin-right:12px;padding:10px 16px;border:0;border-radius:10px;background:var(--navy,#0b2545);color:#fff;font:inherit;font-weight:600;cursor:pointer;-webkit-transition:background-color .16s ease;transition:background-color .16s ease}.prose input[type=file].input::file-selector-button{margin-right:12px;padding:10px 16px;border:0;border-radius:10px;background:var(--navy,#0b2545);color:#fff;font:inherit;font-weight:600;cursor:pointer;transition:background-color .16s ease}.prose input[type=file].input::-webkit-file-upload-button:hover{background:#12345e}.prose input[type=file].input::file-selector-button:hover{background:#12345e}.prose select.input{font:inherit}.ul{display:grid;grid-gap:14px;gap:14px}.ul-progress{margin:0}.ul-bar{height:6px;border-radius:99px;background:var(--line,#dbe3ee);overflow:hidden}.ul-bar span{display:block;height:100%;background:var(--navy,#0b2545);transition:width .3s var(--ease-out,ease-out)}.prose ol.ul-list{list-style:none;padding:0;margin:8px 0 0;display:grid;grid-gap:10px;gap:10px}.ul-item{display:grid;grid-template-columns:28px minmax(0,1fr);grid-gap:12px;gap:12px;padding:16px;border:1px solid var(--line,#dbe3ee);border-radius:14px;background:#fff;margin:0}.ul-item.is-done{border-color:#b9d3c3;background:#f6fbf8}.ul-check{width:28px;height:28px;border-radius:50%;border:1.5px solid var(--line,#c4cfdd);display:grid;place-items:center;font-weight:700;font-size:15px}.is-done .ul-check{background:#1f7a4d;border-color:#1f7a4d;color:#fff}.ul-body{display:grid;grid-gap:6px;gap:6px;justify-items:start;min-width:0}.prose .ul-body p{margin:0}.ul-title{line-height:1.35}.ul-tag{display:inline-block;margin-left:6px;padding:1px 8px;border-radius:99px;font-size:12px;font-weight:600;vertical-align:2px;background:#eef2f7;color:#45556b}.is-done .ul-tag{background:#dcefe3;color:#1f6a44}.ul-hint{font-size:14.5px;color:#4a5a70}.prose ul.ul-files{margin:2px 0 0;padding-left:18px;font-size:14px;overflow-wrap:anywhere}.ul-err{color:#b42318;font-size:14px}.ul-btn{min-height:40px;padding:0 16px;font-size:15px;margin-top:4px}.ul-btn-quiet{background:#fff;color:var(--navy,#0b2545);box-shadow:inset 0 0 0 1.5px var(--navy,#0b2545)}.ul-btn:disabled{opacity:.55;cursor:progress}.ul-describe{display:grid;grid-gap:4px;gap:4px;width:100%;max-width:420px;font-size:14.5px}.cc{position:fixed;z-index:60;left:50%;transform:translateX(-50%);bottom:calc(env(safe-area-inset-bottom, 0px) + 16px);width:min(560px,calc(100% - 24px));background:#fff;color:var(--ink,#1a2430);border:1px solid var(--line,#dbe3ee);border-top:3px solid var(--gold,#c9a664);border-radius:12px;box-shadow:0 18px 48px rgba(7,31,58,.22);padding:18px 20px;display:grid;grid-gap:10px;gap:10px;font-size:15px}.cc-title{margin:0;font-family:var(--serif,Georgia,serif);font-size:20px;color:var(--navy,#071f3a)}.cc-body{margin:0;line-height:1.5;color:var(--ink-2,#3c4a5c)}.cc-body a{color:var(--navy,#071f3a)}.cc-btns{display:flex;flex-wrap:wrap;gap:8px;align-items:center}.cc-btns .btn{min-height:42px;padding:0 18px;font-size:15px}.cc-btns .btn-solid{flex:1 1 140px}.cc-link{background:none;color:var(--navy,#071f3a);text-decoration:underline;text-underline-offset:3px;padding:0 8px}.cc-panel{display:grid;grid-gap:8px;gap:8px;border-top:1px solid var(--line,#dbe3ee);padding-top:10px}.cc-row{display:grid;grid-template-columns:20px minmax(0,1fr);grid-gap:10px;gap:10px;align-items:start;cursor:pointer}.cc-row input{margin-top:3px;width:18px;height:18px;accent-color:var(--navy,#071f3a)}.cc-row span{display:grid;grid-gap:2px;gap:2px}.cc-row small{color:var(--ink-3,#566377);font-size:13.5px}@media (max-width:900px){.cc{bottom:calc(env(safe-area-inset-bottom, 0px) + 88px)}}