:root{--t-bg:#f3f4f6;--t-surface:#fff;--t-ink:#15202b;--t-text-2:#4b5563;--t-text-3:#6b7280;--t-border:#e5e7eb;--t-border-strong:#d1d5db;--t-accent:#1e5aa8;--t-accent-soft:#eff6ff;--t-accent-ink:#1e3a8a;--t-info-bg:#dbeafe;--t-info-ink:#1e40af;--t-warn-bg:#fef3c7;--t-warn-ink:#92400e;--t-ok-bg:#dcfce7;--t-ok-ink:#166534;--t-ok-border:#bbf7d0;--t-error-bg:#fef2f2;--t-error-border:#fecaca;--t-error-ink:#991b1b;--t-error-strong:#b91c1c;--t-neutral-bg:#f3f4f6;--t-neutral-ink:#374151;--t-tile-bg:#cbd5e1;--t-tile-ink:#475569;--t-tile-border:#94a3b8;--t-radius:12px;--t-radius-lg:16px}*{box-sizing:border-box}html,body,#root{height:100%}body{background:var(--t-bg);color:var(--t-ink);-webkit-font-smoothing:antialiased;margin:0;font-family:Inter,system-ui,-apple-system,Segoe UI,Roboto,sans-serif}a{color:var(--t-accent)}button,input,select,textarea{font-family:inherit}input,select,textarea{border:1px solid var(--t-border-strong);border-radius:var(--t-radius);width:100%;height:52px;color:var(--t-ink);background:var(--t-surface);padding:0 14px;font-size:16px}input:focus,select:focus,textarea:focus,button:focus-visible,a:focus-visible{outline:2px solid var(--t-accent);outline-offset:2px}.t-screen{background:var(--t-surface);flex-direction:column;max-width:480px;min-height:100%;margin:0 auto;display:flex}.t-screen--grey{background:var(--t-bg)}.t-header{background:var(--t-surface);padding:calc(24px + env(safe-area-inset-top)) 24px 16px;border-bottom:1px solid var(--t-border)}.t-content{flex-direction:column;flex:1;gap:16px;padding:20px 24px;display:flex}.t-card{background:var(--t-surface);border:1px solid var(--t-border);border-radius:var(--t-radius-lg)}.t-btn{border-radius:var(--t-radius);cursor:pointer;border:1px solid #0000;justify-content:center;align-items:center;gap:8px;width:100%;height:52px;padding:0 16px;font-size:16px;font-weight:600;text-decoration:none;display:flex}.t-btn--primary{background:var(--t-accent);color:var(--t-surface)}.t-btn--primary:disabled{opacity:.55;cursor:not-allowed}.t-btn--secondary{background:var(--t-surface);color:var(--t-ink);border-color:var(--t-border-strong)}.t-btn--ghost{color:var(--t-accent);background:0 0;height:44px;font-size:14px}.t-label{color:var(--t-neutral-ink);margin-bottom:8px;font-size:13px;font-weight:600;display:block}.t-hint{color:var(--t-text-3);margin:0;font-size:12px;line-height:16px}.t-muted{color:var(--t-text-3)}.t-pill{border-radius:999px;align-items:center;padding:5px 10px;font-size:12px;font-weight:600;display:inline-flex}.t-alert{border-radius:var(--t-radius);gap:10px;padding:12px 14px;font-size:13px;line-height:18px;display:flex}.t-alert--error{background:var(--t-error-bg);border:1px solid var(--t-error-border);color:var(--t-error-ink)}.t-alert--info{background:var(--t-accent-soft);color:var(--t-accent-ink);border:1px solid #bfdbfe}.t-nav{background:var(--t-surface);border-top:1px solid var(--t-border);padding:10px 12px calc(12px + env(safe-area-inset-bottom));grid-template-columns:repeat(4,minmax(0,1fr));gap:4px;display:grid;position:sticky;bottom:0}.t-nav a{min-height:44px;color:var(--t-text-3);flex-direction:column;align-items:center;gap:4px;padding:6px 0;font-size:11px;font-weight:500;text-decoration:none;display:flex}.t-nav a[aria-current=page]{color:var(--t-accent);font-weight:600}.t-nav-icon{display:inline-flex;position:relative}.t-nav-badge{background:var(--t-error-strong);color:#fff;text-align:center;min-width:18px;height:18px;box-shadow:0 0 0 2px var(--t-surface);border-radius:9px;padding:0 5px;font-size:11px;font-weight:700;line-height:18px;position:absolute;top:-6px;left:14px}.t-code{grid-template-columns:repeat(6,minmax(0,1fr));gap:8px;display:grid}.t-code>div{border:1px solid var(--t-border-strong);border-radius:var(--t-radius);justify-content:center;align-items:center;height:60px;font-size:26px;font-weight:600;display:flex}.t-code>div.is-filled{border:2px solid var(--t-accent)}.t-lang-btn{border-radius:var(--t-radius-lg);border:1px solid var(--t-border-strong);background:var(--t-surface);width:100%;color:var(--t-ink);text-align:left;cursor:pointer;flex-direction:column;align-items:flex-start;gap:4px;padding:18px 20px;display:flex}.t-lang-btn[aria-pressed=true]{border:2px solid var(--t-accent);background:var(--t-accent-soft)}.t-grid-2{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px 16px;display:grid}.t-row-link{color:var(--t-ink);justify-content:space-between;align-items:center;gap:12px;padding:16px 20px;text-decoration:none;display:flex}.t-section-title{letter-spacing:.06em;color:var(--t-text-2);text-transform:uppercase;margin:8px 0 0;font-size:12px;font-weight:600}.t-back-btn{border-radius:var(--t-radius);border:1px solid var(--t-border);background:var(--t-surface);width:44px;height:44px;color:var(--t-ink);flex-shrink:0;justify-content:center;align-items:center;text-decoration:none;display:flex}.t-textarea{resize:none;height:auto;padding:12px 14px;font-size:15px;line-height:22px}.t-cat-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;display:grid}.t-cat-tile{border-radius:var(--t-radius);border:1px solid var(--t-border-strong);background:var(--t-surface);text-align:center;height:72px;color:var(--t-neutral-ink);cursor:pointer;flex-direction:column;justify-content:center;align-items:center;gap:6px;padding:0 4px;font-size:12px;font-weight:500;line-height:14px;display:flex}.t-cat-tile[aria-pressed=true]{border:2px solid var(--t-accent);background:var(--t-accent-soft);color:var(--t-accent-ink);font-weight:600}.t-photo-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;display:grid}.t-photo-grid--compact{flex-wrap:wrap;gap:8px;display:flex}.t-photo-grid--compact>*{width:56px;height:56px}.t-photo-tile{aspect-ratio:1;background:var(--t-tile-bg);color:var(--t-tile-ink);border-radius:10px;justify-content:center;align-items:center;display:flex;position:relative;overflow:hidden}.t-photo-tile img{object-fit:cover;width:100%;height:100%;display:block}.t-photo-tile--add{border:1px dashed var(--t-tile-border);background:var(--t-surface);cursor:pointer;padding:0}.t-photo-tile--button{cursor:pointer;border:0;padding:0}.t-photo-remove{width:24px;height:24px;color:var(--t-surface);cursor:pointer;background:#15202bbf;border:0;border-radius:12px;justify-content:center;align-items:center;padding:0;display:flex;position:absolute;top:4px;right:4px}.t-lightbox{z-index:50;background:#000000eb;justify-content:center;align-items:center;padding:16px;display:flex;position:fixed;inset:0}.t-lightbox img{object-fit:contain;max-width:100%;max-height:100%}.t-lightbox-close{top:calc(16px + env(safe-area-inset-top));width:44px;height:44px;color:var(--t-surface);cursor:pointer;background:#ffffff26;border:0;border-radius:22px;justify-content:center;align-items:center;display:flex;position:absolute;right:16px}.t-bubble-wrap{flex-direction:column;gap:4px;max-width:85%;display:flex}.t-bubble-wrap--tenant{align-self:flex-end;align-items:flex-end}.t-bubble-wrap--staff{align-self:flex-start;align-items:flex-start}.t-bubble{white-space:pre-wrap;overflow-wrap:anywhere;padding:10px 14px;font-size:14px;line-height:20px}.t-bubble--tenant{background:var(--t-accent);color:var(--t-surface);border-radius:14px 14px 4px}.t-bubble--staff{background:var(--t-surface);border:1px solid var(--t-border);border-radius:14px 14px 14px 4px}.t-bubble-meta{color:var(--t-text-2);padding:0 4px;font-size:11px}.t-thread-event{text-align:center;color:var(--t-text-2);margin:0;font-size:12px}.t-composer{align-items:center;gap:8px;display:flex}.t-composer input{flex:1;min-width:0;height:44px;font-size:15px}.t-icon-btn{border-radius:var(--t-radius);border:1px solid var(--t-border-strong);background:var(--t-surface);width:44px;height:44px;color:var(--t-neutral-ink);cursor:pointer;flex-shrink:0;justify-content:center;align-items:center;padding:0;display:flex}.t-icon-btn--primary{background:var(--t-accent);color:var(--t-surface);border-color:#0000}.t-icon-btn:disabled{opacity:.55;cursor:not-allowed}
