body{margin:0;font-family:system-ui,-apple-system,sans-serif;background:#f4f5f7;color:#1a1a1a}*{box-sizing:border-box}button,input{font:inherit}.card{background:#fff;border:1px solid #e2e4e8;border-radius:8px;padding:24px;max-width:420px;margin:48px auto}.layout{min-height:100vh}.header{display:flex;justify-content:space-between;align-items:center;padding:12px 20px;background:#fff;border-bottom:1px solid #e2e4e8}.header h1{margin:0;font-size:18px}.content{padding:16px 20px 24px}.field{display:flex;flex-direction:column;gap:6px;margin-bottom:16px}.field input{padding:10px 12px;border:1px solid #cfd4dc;border-radius:6px}button.primary{width:100%;padding:10px 12px;border:0;border-radius:6px;background:#2563eb;color:#fff;cursor:pointer}button.link{border:0;background:none;color:#2563eb;cursor:pointer;padding:0}.error{color:#b91c1c;margin-bottom:12px}.toolbar{display:flex;gap:12px;align-items:center;margin-bottom:12px}.search{flex:1;max-width:420px;padding:8px 10px;border:1px solid #cfd4dc;border-radius:6px;background:#fff}.toolbar-meta{color:#64748b;font-size:13px}.table-wrap{overflow:auto;background:#fff;border:1px solid #e2e4e8}.data-table{width:100%;border-collapse:collapse;font-size:13px;min-width:980px}.data-table th,.data-table td{padding:8px 10px;border-bottom:1px solid #eef0f3;text-align:left;vertical-align:top;white-space:nowrap}.data-table thead th{background:#f8f9fb;font-weight:600;position:sticky;top:0;z-index:1}.data-table tfoot td{background:#f8f9fb;font-weight:600;border-top:1px solid #d7dbe3}.data-table tbody tr:hover{background:#f5f8ff}.th-btn{border:0;background:none;padding:0;cursor:pointer;font:inherit;font-weight:600}.num{text-align:right!important;font-variant-numeric:tabular-nums}.mono{font-variant-numeric:tabular-nums}.comment{max-width:240px;white-space:normal;color:#475569}.phone{color:#2563eb;text-decoration:none;font-size:12px}.phone:hover{text-decoration:underline}.status{display:inline-block;padding:2px 8px;border-radius:4px;font-size:12px;line-height:1.4}.muted,.empty{color:#94a3b8}.pager{display:flex;gap:12px;align-items:center;margin-top:12px}.pager button{padding:6px 10px;border:1px solid #cfd4dc;border-radius:6px;background:#fff;cursor:pointer}.pager button:disabled{opacity:.5;cursor:default}.clickable-row{cursor:pointer}.header-left{display:flex;align-items:center;gap:16px}.back-link{color:#2563eb;text-decoration:none;font-size:14px}.card-page{max-width:1100px}.card-form{display:flex;flex-direction:column;gap:16px}.card-section{background:#fff;border:1px solid #e2e4e8;padding:16px}.card-section h2{margin:0 0 12px;font-size:16px}.card-section-head{display:flex;justify-content:space-between;gap:12px;align-items:center;margin-bottom:12px}.card-section-head h2{margin:0}.card-actions{display:flex;gap:8px;flex-wrap:wrap}.grid-2{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px 16px}.field textarea,.field select{padding:10px 12px;border:1px solid #cfd4dc;border-radius:6px;resize:vertical}.field-readonly{display:flex;flex-direction:column;gap:6px}.field-readonly span{color:#64748b;font-size:13px}button.primary.inline{width:auto}button.secondary{padding:10px 12px;border:1px solid #cfd4dc;border-radius:6px;background:#fff;cursor:pointer}button.danger{padding:10px 12px;border:1px solid #fecaca;border-radius:6px;background:#fff;color:#b91c1c;cursor:pointer}.subhead{margin:16px 0 8px;font-size:14px}.tourist-row{display:grid;grid-template-columns:repeat(4,minmax(0,1fr)) auto;gap:8px 12px;align-items:end;margin-bottom:12px}.payment-form{margin-top:16px;padding-top:12px;border-top:1px solid #eef0f3}.client-pick-list{display:flex;flex-direction:column;gap:8px;max-height:240px;overflow:auto}.client-pick{display:flex;justify-content:space-between;gap:12px;padding:10px 12px;border:1px solid #e2e4e8;border-radius:6px;background:#fff;cursor:pointer;text-align:left}.client-pick.active{border-color:#2563eb;background:#eff6ff}.finance-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.finance-grid div{display:flex;flex-direction:column;gap:4px}.finance-grid span{color:#64748b;font-size:12px}.notice{color:#166534;margin-bottom:12px}.data-table.compact{min-width:0}.plain-list{margin:0;padding-left:18px}@media(max-width:800px){.grid-2,.finance-grid{grid-template-columns:1fr}}
