* { box-sizing: border-box; margin: 0; padding: 0; font-family: "Baloo 2", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif; line-height: 1.35; } html, body { width: 100%; min-height: 100%; -webkit-font-smoothing: antialiased; -webkit-text-size-adjust: 100%; -webkit-overflow-scrolling: touch; -webkit-tap-highlight-color: transparent; } body { color: rgba(0, 0, 0, 0.8); background: #edf8f1; } button { border: 0; background: transparent; color: inherit; font: inherit; } .host-center { width: 100vw; min-height: 100vh; background: #edf8f1; } .page-header { position: sticky; top: 0; z-index: 10; display: grid; grid-template-columns: 44px 1fr 58px; align-items: center; min-height: calc(48px + env(safe-area-inset-top)); padding: env(safe-area-inset-top) 10px 0; background: #f8fff9; border-bottom: 1px solid #cce9d7; box-shadow: 0 4px 14px rgba(75, 137, 95, 0.14); } .page-header h1 { min-width: 0; color: #153d28; font-size: 1.25em; font-weight: 700; text-align: center; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; } .header-icon, .lang-button { min-width: 36px; height: 36px; display: flex; align-items: center; justify-content: center; color: #1f6f46; font-weight: 700; } .header-icon { padding: 6px; } .header-icon img { width: 100%; height: 100%; display: block; } .lang-button { justify-self: end; padding: 0 10px; border-radius: 999px; background: #dff5e7; font-size: 0.86em; } .page-content { position: relative; z-index: 2; display: flex; flex-direction: column; gap: 12px; padding: 16px; } .section-title { display: flex; align-items: center; margin: 0 1%; color: #173a28; font-size: 1.25em; font-weight: 700; } .surface-card { margin: 0 1%; border: 1px solid #b7e0c6; border-radius: 20px; background: #fbfffc; box-shadow: 0 8px 20px rgba(69, 129, 89, 0.12); } .agency-card { display: flex; align-items: center; gap: 12px; padding: 16px; } .avatar { position: relative; width: 50px; height: 50px; flex: 0 0 50px; overflow: hidden; border-radius: 25px; background: #91d9aa; color: #fff; font-size: 20px; font-weight: 700; } .avatar img, .avatar span { position: absolute; inset: 0; width: 100%; height: 100%; } .avatar img { display: block; object-fit: cover; } .avatar span { display: flex; align-items: center; justify-content: center; } .user-info { flex: 1; min-width: 0; } .agency-name { width: 100%; margin-bottom: 4px; color: #244735; font-weight: 700; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; } .agency-id { color: #647468; font-size: 0.9em; } .leave-button { min-width: 0; display: flex; align-items: center; justify-content: center; padding: 4px 12px; border: 1px solid #ff9500; border-radius: 16px; color: #ff9500; font-weight: 700; } .salary-card, .task-card, .menu-card { padding: 16px; } .card-row, .menu-row { display: flex; align-items: center; justify-content: space-between; } .card-title, .task-title { color: #244735; font-size: 1.08em; font-weight: 700; } .text-link { color: rgba(0, 0, 0, 0.42); cursor: pointer; font-weight: 600; } .salary-value { margin-top: 8px; display: flex; align-items: center; gap: 6px; color: #105c36; font-size: 1.45em; font-weight: 700; } .money-icon { width: 1.05em; height: 1.05em; display: block; flex: 0 0 auto; } .task-card { background: #fffaf0; border-color: #e7c777; } .task-title { margin-bottom: 12px; } .task-grid { display: flex; justify-content: space-between; } .task-item { flex: 1; min-width: 0; display: flex; flex-direction: column; align-items: center; } .task-label, .task-value { font-weight: 700; } .task-label { margin-bottom: 5px; color: #4b4536; } .task-value { color: #1f3528; } .menu-card { display: flex; flex-direction: column; gap: 4vw; } .menu-row { width: 100%; min-height: 32px; text-align: left; } .menu-main { flex: 1; min-width: 0; display: flex; align-items: center; gap: 1vw; } .menu-main span { min-width: 0; color: #173a28; font-size: 1.4em; font-weight: 700; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; } .menu-icon { display: block; width: 1.6em; flex: 0 0 auto; } .arrow-icon { display: block; width: 1.5em; flex: 0 0 auto; } .divider { border-bottom: 1px solid #d9eadf; } .toast { position: fixed; left: 50%; bottom: calc(22px + env(safe-area-inset-bottom)); z-index: 30; max-width: calc(100% - 40px); transform: translateX(-50%); padding: 9px 13px; border-radius: 999px; background: rgba(22, 56, 36, 0.92); color: #fff; font-size: 0.9em; font-weight: 700; text-align: center; } .modal-layer { position: fixed; inset: 0; z-index: 20; display: flex; align-items: center; justify-content: center; background: rgba(0, 0, 0, 0.45); } .modal-card { width: 80%; max-width: 420px; display: flex; flex-direction: column; align-items: center; gap: 2vw; padding: 12px; border-radius: 12px; background: #fff; } .modal-title { color: rgba(0, 0, 0, 0.8); font-size: 1.2em; font-weight: 800; } .modal-message { color: rgba(0, 0, 0, 0.8); font-weight: 700; text-align: center; } .modal-submessage { color: rgba(0, 0, 0, 0.4); font-size: 0.8em; font-weight: 700; text-align: center; } .modal-actions { width: 80%; display: flex; align-items: center; justify-content: space-between; gap: 10px; } .modal-primary, .modal-secondary { display: flex; align-items: center; justify-content: center; min-height: 38px; padding: 8px 12px; border-radius: 70px; font-weight: 800; } .modal-primary { width: 50%; background: #ff9500; color: #fff; } .modal-actions .modal-primary, .modal-secondary { width: 45%; } .modal-secondary { border: 1px solid #ffb805; background: #fff; color: #ff9500; } [hidden] { display: none !important; } [dir="rtl"] .menu-row, [dir="rtl"] .page-content { text-align: right; } @media screen and (max-width: 360px) { * { font-size: 10px; } } @media screen and (min-width: 360px) { * { font-size: 12px; } } @media screen and (min-width: 768px) { * { font-size: 24px; } }