:root{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark only;--bg-base:#0d0f1a;--bg-surface:#131625;--bg-card:#1a1e30;--bg-hover:#1f2440;--bg-glass:#1a1e30b3;--accent-primary:#208df9;--accent-light:#5aa9fb;--accent-glow:#208df947;--primary:#208df9;--success:#34d399;--warning:#fbbf24;--danger:#f87171;--info:#60a5fa;--text-primary:#f0f2ff;--text-secondary:#8b92b8;--text-muted:#4d5475;--border:#ffffff12;--border-accent:#208df959;--border-strong:#ffffff38;--radius-sm:8px;--radius-md:14px;--radius-lg:20px;--radius-xl:28px;--shadow-sm:0 2px 8px #0000004d;--shadow-md:0 8px 24px #0006;--shadow-lg:0 20px 60px #00000080;--shadow-glow:0 0 20px var(--accent-glow);--transition:.2s cubic-bezier(.4,0,.2,1)}:root[data-theme=light]{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light only;--bg-base:#f8f9fa;--bg-surface:#fff;--bg-card:#fff;--bg-hover:#f1f3f5;--bg-glass:#ffffffd9;--accent-primary:#208df9;--accent-light:#4a9ffb;--accent-glow:#208df92e;--primary:#208df9;--success:#16a34a;--warning:#f59e0b;--danger:#ef4444;--info:#208df9;--text-primary:#333c47;--text-secondary:#6b7280;--text-muted:#9ca3af;--border:#00000017;--border-accent:#208df959;--border-strong:#00000038;--shadow-sm:0 1px 3px #00000014;--shadow-md:0 4px 14px #00000017;--shadow-lg:0 10px 30px #0000001f;--shadow-glow:0 0 0 3px #208df926}:root{--fs-title:1.3rem;--fs-sub:1rem;--fs-body:.9rem;--fs-small:.8rem;--fs-tiny:.7rem}*,:before,:after{box-sizing:border-box;margin:0;padding:0}html{-webkit-font-smoothing:antialiased;font-size:16px}body{background:var(--bg-base);color:var(--text-primary);word-break:keep-all;overflow-wrap:break-word;min-height:100vh;transition:color var(--transition);font-family:Pretendard,Noto Sans KR,sans-serif;overflow-x:hidden}a{color:inherit;text-decoration:none}button{cursor:pointer;font-family:inherit}input,textarea,select{font-family:inherit}.app-layout{grid-template-columns:240px 1fr;min-height:100vh;display:grid}.sidebar{background:var(--bg-surface);border-right:1px solid var(--border);flex-direction:column;height:100vh;padding:0;display:flex;position:sticky;top:0;overflow:hidden}.sidebar-logo{border-bottom:1px solid var(--border);padding:24px 20px 20px;position:relative}.sidebar-logo h1{font-size:var(--fs-title);background:linear-gradient(135deg, var(--accent-light), var(--accent-primary));-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text;font-weight:800;line-height:1.2}.sidebar-logo p{font-size:var(--fs-small);color:var(--text-muted);letter-spacing:.05em;margin-top:4px;font-weight:500}.sidebar-nav{flex-direction:column;flex:1;gap:4px;min-height:0;padding:12px 10px;display:flex;overflow-y:auto}.nav-item{border-radius:var(--radius-sm);font-size:var(--fs-body);color:var(--text-secondary);transition:all var(--transition);text-align:left;background:0 0;border:none;align-items:center;gap:10px;width:100%;padding:10px 14px;font-weight:500;display:flex;position:relative}.nav-item:hover{background:var(--bg-hover);color:var(--text-primary)}.nav-item.active{background:var(--accent-glow);color:var(--accent-light);border:1px solid var(--border-accent)}.nav-item .nav-icon{text-align:center;width:20px;font-size:1.1rem}@media (height<=900px){.sidebar-logo{padding:16px 20px 14px}.sidebar-nav{gap:2px;padding:8px 10px}.nav-item{padding:7px 14px}}@media (height<=760px){.nav-item{padding:5px 14px}}.nav-badge{background:var(--danger);color:#fff;font-size:var(--fs-tiny);text-align:center;border-radius:99px;min-width:20px;margin-left:auto;padding:2px 7px;font-weight:700}.sidebar-footer .sidebar-logout{background:var(--bg-hover);width:100%;color:var(--text-primary);border:1px solid var(--border);justify-content:center;font-weight:600}.sidebar-footer .sidebar-logout:hover:not(:disabled){color:var(--danger);border-color:var(--danger);background:#f871711f}.sidebar-who{border-top:1px solid var(--border);margin-top:12px;padding-top:12px}.sidebar-who-name{font-size:var(--fs-small);color:var(--text-secondary);margin-bottom:8px}.sidebar-build{margin-top:12px}.sidebar-footer{border-top:1px solid var(--border);font-size:var(--fs-small);color:var(--text-muted);text-align:center;flex-shrink:0;padding:16px}@media (height<=820px){.sidebar-logo{padding:10px 20px 8px}.sidebar-logo p{display:none}.sidebar-nav{gap:1px;padding:6px 10px}.nav-item{padding:4px 14px}.sidebar-footer{padding:6px 12px}.sidebar-who{align-items:center;gap:8px;margin-top:6px;padding-top:6px;display:flex}.sidebar-who-name{text-align:left;white-space:nowrap;text-overflow:ellipsis;flex:1;min-width:0;margin-bottom:0;overflow:hidden}.sidebar-footer .sidebar-who .sidebar-logout{width:auto}.sidebar-build{margin-top:6px}.sidebar-build br{display:none}.sidebar-build br+span{margin-left:6px}}.main-content{min-height:100vh;overflow-y:auto}.page-header{margin-bottom:24px;padding:32px 32px 0}.page-header h2{font-size:var(--fs-title);color:var(--text-primary);font-weight:800}.page-header p{color:var(--text-secondary);font-size:var(--fs-body);margin-top:4px}.page-body{padding:0 32px 32px}.stats-grid{grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:16px;margin-bottom:28px;display:grid}.stat-card{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius-md);transition:all var(--transition);align-items:center;gap:14px;padding:20px;display:flex}.stat-card:hover{border-color:var(--border-accent);box-shadow:var(--shadow-glow);transform:translateY(-2px)}.stat-icon{background:var(--accent-glow);border-radius:var(--radius-sm);justify-content:center;align-items:center;width:48px;height:48px;font-size:1.8rem;display:flex}.stat-info strong{font-size:1.6rem;font-weight:800;line-height:1;display:block}.stat-info span{font-size:var(--fs-small);color:var(--text-secondary);font-weight:500}.avatar{background:linear-gradient(135deg, var(--accent-primary), var(--accent-light));width:40px;height:40px;font-size:var(--fs-sub);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;display:flex}.draft-section{margin-top:4px}.draft-label{font-size:var(--fs-small);color:var(--accent-light);text-transform:uppercase;letter-spacing:.06em;align-items:center;gap:6px;margin-bottom:8px;font-weight:600;display:flex}.draft-label:before{content:"✨"}.draft-textarea{background:var(--bg-surface);border:1px solid var(--border-accent);border-radius:var(--radius-sm);width:100%;color:var(--text-primary);font-size:var(--fs-body);resize:vertical;min-height:80px;transition:border-color var(--transition);padding:12px 14px;line-height:1.7}.draft-textarea:focus{border-color:var(--accent-primary);box-shadow:0 0 0 3px var(--accent-glow);outline:none}.btn{border-radius:var(--radius-sm);font-size:var(--fs-body);transition:all var(--transition);white-space:nowrap;border:none;align-items:center;gap:6px;padding:9px 18px;font-weight:600;display:inline-flex}.btn:disabled{opacity:.45;cursor:not-allowed}.btn-primary{background:var(--accent-primary);color:#fff;box-shadow:0 4px 12px #7c6fff66}.btn-primary:hover:not(:disabled){background:var(--accent-light);transform:translateY(-1px);box-shadow:0 6px 18px #7c6fff80}.btn-success{background:var(--success);color:#052e16;font-weight:700}.btn-success:hover:not(:disabled){background:#6ee7b7;transform:translateY(-1px)}.btn-danger{color:var(--danger);border:1px solid var(--danger);background:0 0}.btn-danger:hover:not(:disabled){background:#f871711a}.btn-ghost{color:var(--text-primary);border:1px solid var(--border-strong);background:0 0}.btn-ghost:hover:not(:disabled){background:var(--bg-hover);color:var(--text-primary)}.btn-on{background:var(--accent-glow);color:var(--accent-primary);border:1px solid var(--accent-primary);font-weight:700}.btn-on:hover:not(:disabled){background:var(--bg-hover)}.btn-sm{font-size:var(--fs-small);padding:6px 14px}.btn-lg{font-size:var(--fs-sub);padding:13px 28px}.btn-full{justify-content:center;width:100%}.form-group{margin-bottom:16px}.form-label{font-size:var(--fs-small);color:var(--text-secondary);text-transform:uppercase;letter-spacing:.04em;margin-bottom:6px;font-weight:600;display:block}.form-input,.form-select,.form-textarea{background:var(--bg-surface);border:1px solid var(--border);border-radius:var(--radius-sm);width:100%;color:var(--text-primary);font-size:var(--fs-body);transition:border-color var(--transition);padding:10px 14px}.form-input:focus,.form-select:focus,.form-textarea:focus{border-color:var(--accent-primary);box-shadow:0 0 0 3px var(--accent-glow);outline:none}.form-textarea{resize:vertical;min-height:80px;line-height:1.6}.card{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius-lg);padding:24px}.card-title{font-size:var(--fs-sub);align-items:center;gap:8px;margin-bottom:20px;font-weight:700;display:flex}.badge{font-size:var(--fs-tiny);border-radius:99px;align-items:center;padding:3px 10px;font-weight:600;display:inline-flex}.badge-pending{color:var(--warning);background:#fbbf2426;border:1px solid #fbbf244d}.badge-confirmed{color:var(--success);background:#34d39926;border:1px solid #34d3994d}.badge-rejected{color:var(--danger);background:#f8717126;border:1px solid #f871714d}.dog-tag{border:1px solid var(--border-accent);font-size:var(--fs-small);color:var(--accent-light);background:#7c6fff1f;border-radius:99px;align-items:center;gap:5px;padding:3px 12px;font-weight:600;display:inline-flex}.modal-overlay{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:1000;background:#000000b3;justify-content:center;align-items:center;padding:20px;animation:.15s fadeIn;display:flex;position:fixed;inset:0}.modal{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius-xl);width:100%;max-width:560px;max-height:90vh;box-shadow:var(--shadow-lg);padding:32px;animation:.2s cubic-bezier(.34,1.56,.64,1) slideUp;overflow-y:auto}.modal-header{justify-content:space-between;align-items:center;margin-bottom:24px;display:flex}.modal-header h3{font-size:var(--fs-title);font-weight:800}.modal-close{background:var(--bg-hover);color:var(--text-secondary);width:32px;height:32px;transition:all var(--transition);border:none;border-radius:50%;justify-content:center;align-items:center;font-size:1rem;display:flex}.modal-close:hover{background:var(--danger);color:#fff}.empty-state{text-align:center;color:var(--text-muted);padding:60px 20px}.empty-state .empty-icon{margin-bottom:12px;font-size:3rem}.empty-state p{font-size:var(--fs-body)}.toast-container{z-index:9999;pointer-events:none;flex-direction:column;gap:10px;display:flex;position:fixed;bottom:24px;right:24px}.toast{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius-md);min-width:280px;font-size:var(--fs-body);box-shadow:var(--shadow-lg);align-items:center;gap:10px;padding:14px 18px;animation:.2s cubic-bezier(.34,1.56,.64,1) slideInRight;display:flex}.toast-success{border-left:3px solid var(--success)}.toast-error{border-left:3px solid var(--danger)}.toast-info{border-left:3px solid var(--info)}.spinner{border:2px solid #ffffff26;border-top-color:currentColor;border-radius:50%;width:18px;height:18px;animation:.6s linear infinite spin;display:inline-block}.section-title{font-size:var(--fs-small);color:var(--text-muted);text-transform:uppercase;letter-spacing:.08em;align-items:center;gap:8px;margin:28px 0 12px;font-weight:700;display:flex}.section-title:after{content:"";background:var(--border);flex:1;height:1px}.customer-list{flex-direction:column;gap:10px;display:flex}.customer-item{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius-md);transition:all var(--transition);cursor:pointer;align-items:center;gap:14px;padding:16px 20px;display:flex}.customer-item:hover{border-color:var(--border-accent);box-shadow:var(--shadow-sm);transform:translate(4px)}.customer-item-info{flex:1;min-width:0}.customer-item-info strong{font-size:var(--fs-sub);font-weight:700;display:block}.customer-item-info span{font-size:var(--fs-small);color:var(--text-muted)}.customer-item-actions{opacity:0;transition:opacity var(--transition);gap:8px;display:flex}.customer-item:hover .customer-item-actions,.customer-item:focus-within .customer-item-actions{opacity:1}@media (hover:none){.customer-item-actions{opacity:1}}.form-grid-2{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}@media (width<=600px){.form-grid-2{grid-template-columns:minmax(0,1fr)}.customer-item{flex-wrap:wrap;row-gap:10px}.customer-item-actions{flex-basis:100%;justify-content:flex-end}}::-webkit-scrollbar{width:5px;height:5px}::-webkit-scrollbar-track{background:0 0}::-webkit-scrollbar-thumb{background:var(--text-muted);border-radius:99px}::-webkit-scrollbar-thumb:hover{background:var(--text-secondary)}@keyframes spin{to{transform:rotate(360deg)}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes slideUp{0%{opacity:0;transform:translateY(20px)scale(.96)}to{opacity:1;transform:translateY(0)scale(1)}}@keyframes slideInRight{0%{opacity:0;transform:translate(20px)}to{opacity:1;transform:translate(0)}}@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}.animate-pulse{animation:2s infinite pulse}.mobile-topbar,.sidebar-backdrop,.sidebar-close{display:none}@media (width<=768px){.app-layout{grid-template-columns:1fr;align-content:start}.mobile-topbar{z-index:50;padding:10px 16px;padding-top:calc(10px + env(safe-area-inset-top));background:var(--bg-surface);border-bottom:1px solid var(--border);align-items:center;gap:10px;display:flex;position:sticky;top:0}.mobile-menu-btn{padding:6px 12px;font-size:1.1rem}.mobile-topbar-title{min-width:0;color:var(--accent-light);white-space:nowrap;text-overflow:ellipsis;font-weight:800;overflow:hidden}.sidebar{z-index:960;width:min(280px,85vw);height:auto;box-shadow:var(--shadow-lg);visibility:hidden;transition:transform var(--transition), visibility 0s linear .2s;position:fixed;top:0;bottom:0;left:0;transform:translate(-100%)}.sidebar.open{visibility:visible;transition:transform var(--transition);transform:none}.sidebar-backdrop{z-index:950;background:#00000080;animation:.15s fadeIn;display:block;position:fixed;inset:0}.sidebar-logo{padding-right:56px}.sidebar-close{display:inline-flex;position:absolute;top:18px;right:12px}.page-body,.page-header{padding-left:16px;padding-right:16px}.toast-container{left:12px;right:12px;bottom:calc(88px + env(safe-area-inset-bottom))}.toast{min-width:0}}.report-list{flex-direction:column;gap:16px;display:flex}.published-card{border-color:var(--success);box-shadow:0 0 10px #34d3991a}.published-card .form-input,.published-card .form-select,.published-card .form-textarea,.published-card .draft-textarea{color:var(--text-primary);opacity:.9;background:0 0;border-color:#0000;padding:0}@media print{.sidebar,.mobile-topbar,.sidebar-backdrop,.no-print,.toast-container{display:none!important}body,.main-content,.page-body{background:#fff!important}.print-area,.print-area *{color:#000!important;box-shadow:none!important;background:0 0!important}.print-area{--text-primary:#000;--border:#ccc;border:none!important;max-width:100%!important;padding:0!important}.print-area table{page-break-inside:auto}.print-area tr{page-break-inside:avoid}@page{margin:14mm}}img[data-media-error="1"]{object-fit:contain;border:1px dashed var(--border);border-radius:var(--radius-sm);background:var(--bg-hover);color:var(--text-muted);font-size:var(--fs-tiny);text-align:center;box-sizing:border-box;padding:6px;line-height:1.35}.phone-app .btn-sm,.phone-app .btn-lg{font-size:var(--fs-body)}
