.tf-selection-action,.tf-notice,.tf-dialog,.tf-admin{font-family:Inter,Noto Sans JP,sans-serif;color:var(--vaki-ink-950);font-size:1rem;line-height:1.5}.tf-selection-action{position:fixed;z-index:100;max-width:calc(100vw - 1rem)}.tf-selection-action[hidden]{display:none}.tf-selection-action .tf-button{max-width:100%;box-shadow:0 4px 12px #0f172a1f}.tf-notice{position:fixed;right:max(.75rem,env(safe-area-inset-right));bottom:max(.75rem,env(safe-area-inset-bottom));z-index:100;max-width:min(26rem,calc(100vw - 1.5rem));padding:.75rem;background:var(--vaki-surface-0);border:1px solid var(--vaki-ink-500);border-radius:.75rem;box-shadow:0 4px 12px #0f172a14;overflow-wrap:anywhere}.tf-dialog{max-width:42rem;padding:1.5rem;background:var(--vaki-surface-0);border-radius:1rem}.tf-dialog h2,.tf-admin h2{font-size:1.5rem;font-weight:600;line-height:1.3;margin:0 0 .75rem}.tf-dialog .tf-field,.tf-dialog fieldset{margin-top:1rem}.tf-field{display:flex;flex-direction:column;gap:.375rem;font-weight:500;min-width:0}.tf-label{font-size:.875rem;font-weight:600;margin:.75rem 0 .25rem}.tf-help{font-size:.875rem;font-weight:400;color:var(--vaki-ink-700);display:block}.tf-input{width:100%;min-width:0;min-height:2.75rem;padding:.5rem .75rem;font:inherit;font-weight:400;color:var(--vaki-ink-950);background:var(--vaki-surface-0);border:1px solid var(--vaki-ink-500);border-radius:.5rem}textarea.tf-input{resize:vertical}.tf-context{background:var(--vaki-surface-50);white-space:pre-wrap}.tf-button{display:inline-flex;align-items:center;justify-content:center;min-height:2.75rem;padding:.5rem .75rem;font:inherit;font-size:.875rem;font-weight:500;text-align:center;color:var(--vaki-ink-950);background:var(--vaki-surface-0);border:1px solid var(--vaki-ink-500);border-radius:.5rem;white-space:normal}.tf-button:hover:not(:disabled),.tf-choice:hover{background:var(--vaki-surface-100)}.tf-button:disabled{opacity:.6;cursor:not-allowed}.tf-primary{color:#fff;background:var(--vaki-support-500);border-color:var(--vaki-support-500)}.tf-primary:hover:not(:disabled){color:var(--vaki-ink-950);background:var(--vaki-surface-100)}.tf-button:focus-visible,.tf-input:focus-visible,.tf-choice:focus-visible,.tf-link:focus-visible,.tf-admin summary:focus-visible,.tf-dialog summary:focus-visible,.tf-check input:focus-visible,.tf-radio input:focus-visible{outline:2px solid var(--vaki-ink-950);outline-offset:3px}.tf-actions{display:flex;align-items:center;flex-wrap:wrap;gap:.5rem;margin-top:.75rem}.tf-original{margin:0;padding:.75rem;background:var(--vaki-surface-50);border-radius:.5rem;white-space:pre-wrap;overflow-wrap:anywhere;font-weight:400}.tf-selection,.tf-help{overflow-wrap:anywhere}.tf-choice-list{max-height:45svh;overflow:auto;margin:1rem 0}.tf-choice{display:block;width:100%;min-height:2.75rem;padding:.75rem;border-bottom:1px solid var(--vaki-surface-100);text-align:left;overflow-wrap:anywhere}.tf-radio,.tf-check{display:flex;align-items:center;gap:.75rem;min-height:2.75rem;cursor:pointer}.tf-radio{align-items:flex-start;padding:.5rem 0}.tf-radio input,.tf-check input{flex:0 0 auto;width:1.125rem;height:1.125rem;margin-top:.25rem;accent-color:var(--vaki-support-500)}.tf-error{color:#9f1239;margin:.75rem 0}.tf-link{display:block;min-height:2.75rem;padding:.5rem;text-decoration:underline;text-underline-offset:.2em}.tf-admin{min-width:0;scroll-margin-top:1.5rem}.tf-admin-content{min-width:0;overflow-wrap:anywhere}.tf-admin .tf-button{max-width:100%;overflow-wrap:anywhere}.tf-unread-badge{display:inline-flex;margin-left:.75rem;padding:.25rem .5rem;border-radius:.5rem;background:var(--vaki-surface-100);color:var(--vaki-ink-700);font-size:.875rem;font-weight:500;vertical-align:middle;overflow-wrap:anywhere}.tf-filters{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));align-items:end;gap:1rem;margin:1.5rem 0}.tf-state{margin-top:1rem;padding:1rem;background:var(--vaki-surface-50);border-radius:.5rem}.tf-dialog details{margin:1rem 0;overflow-wrap:anywhere}.tf-dialog summary{min-height:2.75rem;padding:.5rem 0;cursor:pointer}@media(max-width:700px){.tf-filters{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:420px){.tf-filters{grid-template-columns:minmax(0,1fr)}.tf-dialog{padding:1rem}.tf-unread-badge{display:block;width:-moz-fit-content;width:fit-content;margin:.5rem 0 0}}
