:root{--ink:#17202a;--muted:#6b7280;--line:#e5e7eb;--brand:#17324d;--soft:#f5f7fb}*{box-sizing:border-box}body{font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;background:var(--soft);color:var(--ink)}.brand-mark{letter-spacing:.08em}.card{background:#fff;border:1px solid var(--line);border-radius:18px;box-shadow:0 8px 28px rgba(23,50,77,.06)}.section-title{font-size:1.1rem;font-weight:700;color:var(--brand)}.status{display:inline-flex;align-items:center;border-radius:999px;padding:.25rem .65rem;font-size:.75rem;font-weight:700;white-space:nowrap}.status-green{background:#dcfce7;color:#166534}.status-yellow{background:#fef3c7;color:#92400e}.status-blue{background:#dbeafe;color:#1d4ed8}.status-red{background:#fee2e2;color:#991b1b}.status-gray{background:#f3f4f6;color:#4b5563}.input{width:100%;border:1px solid #d9e0e8;border-radius:11px;padding:.7rem .8rem;background:#fff;outline:none;transition:.15s}.input:focus{border-color:#6b93b5;box-shadow:0 0 0 3px rgba(76,134,184,.12)}.btn{display:inline-flex;align-items:center;justify-content:center;gap:.4rem;border-radius:11px;padding:.65rem .9rem;font-weight:700;font-size:.9rem;transition:.15s}.btn-primary{background:var(--brand);color:#fff}.btn-primary:hover{background:#244d70}.btn-secondary{background:#eef3f7;color:#17324d}.btn-danger{background:#fee2e2;color:#991b1b}.table-wrap{overflow-x:auto}.table-wrap table{min-width:780px}.photo-thumb{width:112px;height:84px;object-fit:cover;border-radius:10px;border:1px solid var(--line)}@media(max-width:640px){.card{border-radius:14px}.mobile-stack{display:block!important}.mobile-full{width:100%}.hide-mobile{display:none}.table-wrap table{min-width:680px}.btn{min-height:42px}}
.text-logo{display:inline-flex;flex-direction:column;align-items:flex-start;gap:3px;line-height:1;text-decoration:none;white-space:nowrap}.text-logo-main{display:block;font-weight:900;color:#000;letter-spacing:.01em;line-height:.92}.text-logo-sub{display:block;color:#8b9095;font-weight:600;letter-spacing:.025em;line-height:1.1}.text-logo-header .text-logo-main{font-size:1.30rem}.text-logo-header .text-logo-sub{font-size:.42rem}.text-logo-login .text-logo-main{font-size:2.65rem}.text-logo-login .text-logo-sub{font-size:.72rem}.text-logo-quote .text-logo-main{font-size:1.35rem}.text-logo-quote .text-logo-sub{font-size:.40rem}.mobile-menu-trigger{font-size:1.35rem;line-height:1;border:1px solid #e5e7eb;border-radius:10px;width:42px;height:42px;background:#fff}.mobile-nav-panel{border-top:1px solid #eef1f4}.user-card{background:#fff}.user-edit-details summary{list-style:none}.user-edit-details summary::-webkit-details-marker{display:none}.user-edit-details summary:after{content:'＋';float:right;color:#64748b}.user-edit-details[open] summary:after{content:'−'}body{overflow-x:hidden}@media(max-width:767px){.text-logo-header .text-logo-main{font-size:1.12rem}.text-logo-header .text-logo-sub{font-size:.34rem}.text-logo-login .text-logo-main{font-size:2.15rem}.text-logo-login .text-logo-sub{font-size:.60rem}.text-logo-quote .text-logo-main{font-size:1.18rem}.text-logo-quote .text-logo-sub{font-size:.34rem}header .max-w-7xl{padding-left:14px;padding-right:14px}header .h-16{height:64px}main{padding-left:14px!important;padding-right:14px!important;padding-top:20px!important;padding-bottom:28px!important}h1.text-3xl{font-size:1.78rem;line-height:1.15}.card{border-radius:14px}.btn{min-height:44px}.input{min-height:44px}.table-wrap{width:100%;max-width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch}.table-wrap table{min-width:640px}.table-wrap::-webkit-scrollbar{height:7px}.table-wrap::-webkit-scrollbar-thumb{background:#cbd5e1;border-radius:10px}.user-card .text-xs{max-width:100%;overflow-wrap:anywhere}.grid.grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.mobile-nav-panel{padding-top:8px;padding-bottom:10px}.mobile-nav-panel .grid{gap:2px}.mobile-nav-panel a,.mobile-nav-panel button{min-height:44px;display:flex;align-items:center}.text-logo-login{max-width:100%;overflow:hidden}.text-logo-login .text-logo-main{letter-spacing:0}.text-logo-login .text-logo-sub{letter-spacing:.018em}}@media(max-width:390px){.text-logo-header .text-logo-main{font-size:1.02rem}.text-logo-header .text-logo-sub{font-size:.30rem}.text-logo-login .text-logo-main{font-size:1.90rem}.text-logo-login .text-logo-sub{font-size:.53rem}.grid.grid-cols-2{grid-template-columns:1fr}.card.p-5{padding:16px}}
