@import "https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700&family=Plus+Jakarta+Sans:wght@500;600;700;800&display=swap";:root{--color-primary:#0284c7;--color-primary-dark:#0369a1;--color-primary-light:#e0f2fe;--color-primary-surface:#f0f9ff;--color-accent:#0d9488;--color-accent-light:#ccfbf1;--color-secondary:#475569;--color-secondary-light:#f8fafc;--color-success:#10b981;--color-success-light:#d1fae5;--color-warning:#f59e0b;--color-warning-light:#fef3c7;--color-error:#ef4444;--color-error-light:#fee2e2;--color-background:#f8fafc;--color-surface:#fff;--color-surface-secondary:#f1f5f9;--color-border:#e2e8f0;--color-border-light:#f1f5f9;--color-text:#0f172a;--color-text-secondary:#334155;--color-text-muted:#64748b;--color-text-light:#94a3b8;--color-white:#fff;--radius-sm:6px;--radius-md:10px;--radius-lg:14px;--radius-xl:20px;--radius-full:9999px;--shadow-sm:0 1px 3px #0000000a, 0 1px 2px #00000005;--shadow-md:0 4px 12px -2px #0000000f, 0 2px 6px -1px #0000000a;--shadow-lg:0 10px 25px -5px #00000014, 0 8px 10px -6px #00000008;--shadow-glow:0 0 20px #0284c72e}html{color:var(--color-text);background-color:var(--color-background);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-family:Inter,-apple-system,BlinkMacSystemFont,sans-serif}*{box-sizing:border-box}body{background-color:var(--color-background);min-height:100vh;margin:0}#root{min-height:100vh}h1,h2,h3,h4,h5,h6,p{margin:0;font-family:Plus Jakarta Sans,sans-serif}button{font-family:inherit;transition:all .2s cubic-bezier(.4,0,.2,1)}input,select,textarea{font-family:inherit;font-size:inherit}::-webkit-scrollbar{width:6px;height:6px}::-webkit-scrollbar-track{background:0 0}::-webkit-scrollbar-thumb{background:var(--color-border);border-radius:var(--radius-full)}::-webkit-scrollbar-thumb:hover{background:var(--color-text-light)}@keyframes fadeIn{0%{opacity:0;transform:translateY(5px)}to{opacity:1;transform:translateY(0)}}@keyframes pulseGlow{0%,to{opacity:1;transform:scale(1)}50%{opacity:.7;transform:scale(1.2)}}.animate-fade-in{animation:.2s ease-out forwards fadeIn}.pulse-dot{background:var(--color-success);width:8px;height:8px;box-shadow:0 0 0 3px var(--color-success-light);border-radius:50%;animation:2s ease-in-out infinite pulseGlow;display:inline-block}.app-shell{background-color:var(--color-background);min-height:100vh;display:flex}.sidebar{background:var(--color-surface);border-right:1px solid var(--color-border);z-index:50;flex-direction:column;flex-shrink:0;width:250px;padding:16px 0;display:flex;box-shadow:1px 0 3px #00000005}.sidebar-brand{color:var(--color-primary);border-bottom:1px solid var(--color-border);letter-spacing:-.02em;align-items:center;gap:12px;margin-bottom:16px;padding:0 20px 16px;font-size:1.25rem;font-weight:800;display:flex}.brand-logo{border-radius:var(--radius-md);object-fit:contain;width:32px;height:32px;box-shadow:var(--shadow-sm);flex-shrink:0}.user-profile-badge{background:var(--color-surface-secondary);border:1px solid var(--color-border-light);border-radius:var(--radius-lg);align-items:center;gap:10px;margin:0 12px 16px;padding:10px 14px;display:flex}.user-avatar-circle{background:linear-gradient(135deg, var(--color-primary), var(--color-accent));width:36px;height:36px;color:var(--color-white);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;font-size:.9rem;font-weight:700;display:flex}.user-badge-info{flex-direction:column;display:flex;overflow:hidden}.user-badge-name{color:var(--color-text);white-space:nowrap;text-overflow:ellipsis;font-size:.85rem;font-weight:700;overflow:hidden}.user-badge-role{color:var(--color-primary);text-transform:capitalize;font-size:.725rem;font-weight:600}.sidebar-nav{flex-direction:column;flex:1;gap:4px;padding:0 12px;display:flex}.sidebar-link{color:var(--color-text-secondary);border-radius:var(--radius-md);align-items:center;gap:12px;padding:10px 14px;font-size:.875rem;font-weight:600;text-decoration:none;transition:all .15s;display:flex}.sidebar-link svg{width:20px;height:20px;stroke:var(--color-text-muted);transition:stroke .15s}.sidebar-link:hover{background:var(--color-surface-secondary);color:var(--color-text)}.sidebar-link:hover svg{stroke:var(--color-text)}.sidebar-link.active{background:var(--color-primary-surface);color:var(--color-primary);font-weight:700;box-shadow:inset 0 0 0 1px #0284c726}.sidebar-link.active svg{stroke:var(--color-primary)}.sidebar-footer{border-top:1px solid var(--color-border);flex-direction:column;gap:10px;padding:12px 16px 0;display:flex}.sidebar-logout{border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface);width:100%;color:var(--color-error);cursor:pointer;justify-content:center;align-items:center;gap:8px;padding:9px 12px;font-size:.85rem;font-weight:600;display:flex}.sidebar-logout:hover{background:var(--color-error-light);border-color:var(--color-error-light)}.app-content{background:var(--color-background);flex:1;min-width:0;padding:24px 36px}.mobile-header,.sidebar-backdrop{display:none}@media (width<=768px){.app-shell{flex-direction:column}.mobile-header{background:var(--color-surface);border-bottom:1px solid var(--color-border);z-index:80;height:60px;box-shadow:var(--shadow-sm);justify-content:space-between;align-items:center;padding:0 16px;display:flex;position:fixed;top:0;left:0;right:0}.mobile-brand{color:var(--color-primary);align-items:center;gap:10px;font-size:1.15rem;font-weight:800;display:flex}.mobile-menu-btn{color:var(--color-text);cursor:pointer;border-radius:var(--radius-md);background:0 0;border:none;padding:6px}.sidebar{z-index:100;width:250px;height:100vh;box-shadow:var(--shadow-lg);transition:left .25s cubic-bezier(.4,0,.2,1);position:fixed;top:0;left:-260px}.sidebar.open{left:0}.sidebar-backdrop{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:90;opacity:0;pointer-events:none;background:#0f172a66;transition:opacity .25s;display:block;position:fixed;inset:0}.sidebar.open~.sidebar-backdrop{opacity:1;pointer-events:auto}.app-content{min-height:calc(100vh - 60px);margin-top:60px;padding:16px}}.auth-page{background:var(--color-background);min-height:100vh;padding:var(--radius-lg,24px);flex-direction:column;justify-content:center;align-items:center;display:flex}.auth-wordmark{align-items:center;gap:10px;margin-bottom:24px;display:flex}.auth-wordmark img{border-radius:var(--radius-sm);object-fit:contain;width:36px;height:36px}.auth-wordmark span{color:var(--color-primary);font-size:1.5rem;font-weight:800}.auth-card{background:var(--color-surface);border-radius:var(--radius-lg);border:1px solid var(--color-border);width:100%;max-width:420px;box-shadow:var(--shadow-md);padding:32px}.auth-icon-circle{background:var(--color-primary);width:56px;height:56px;color:var(--color-white);border-radius:50%;justify-content:center;align-items:center;margin-bottom:16px;font-size:1.25rem;font-weight:700;display:flex}.auth-title{color:var(--color-text);margin-bottom:4px;font-size:1.5rem;font-weight:800}.auth-subtitle{color:var(--color-text-muted);margin-bottom:24px;font-size:.875rem}.auth-role-toggle{background:var(--color-surface-secondary);border:1px solid var(--color-border);border-radius:var(--radius-lg);gap:4px;margin-bottom:20px;padding:4px;display:flex}.auth-role-btn{border-radius:var(--radius-md);color:var(--color-text-muted);cursor:pointer;background:0 0;border:none;flex:1;padding:10px;font-size:.875rem;font-weight:600}.auth-role-btn.active{background:var(--color-primary);color:var(--color-white)}.auth-field{margin-bottom:16px}.auth-label{color:var(--color-text-secondary);margin-bottom:6px;font-size:.8125rem;font-weight:600;display:block}.auth-input,.auth-select{border:1.5px solid var(--color-border);border-radius:var(--radius-lg);background:var(--color-surface-secondary);width:100%;color:var(--color-text);padding:12px 14px;font-size:1rem}.auth-input:focus,.auth-select:focus{border-color:var(--color-primary);box-shadow:0 0 0 3px var(--color-primary-light);outline:none}.auth-input:focus-visible,.auth-select:focus-visible{outline:2px solid var(--color-primary);outline-offset:1px}.auth-phone-row{border:1.5px solid var(--color-border);border-radius:var(--radius-lg);background:var(--color-surface-secondary);align-items:center;padding:0 14px;display:flex}.auth-phone-prefix{color:var(--color-text);border-right:1px solid var(--color-border);margin-right:10px;padding-right:10px;font-weight:600}.auth-phone-row input{letter-spacing:1px;color:var(--color-text);background:0 0;border:none;flex:1;padding:12px 0;font-size:1rem}.auth-phone-row input:focus{outline:none}.auth-phone-row:focus-within{border-color:var(--color-primary);box-shadow:0 0 0 3px var(--color-primary-light)}.auth-button{border-radius:var(--radius-lg);background:var(--color-primary);width:100%;color:var(--color-white);cursor:pointer;box-shadow:var(--shadow-md);border:none;padding:14px;font-size:1rem;font-weight:700}.auth-button:disabled{opacity:.5;cursor:not-allowed}.auth-link-row{text-align:center;color:var(--color-text-muted);margin-top:16px;font-size:.875rem}.auth-link{color:var(--color-primary);cursor:pointer;font-weight:600;font-size:inherit;background:0 0;border:none;padding:0}.auth-error{color:var(--color-error);margin-bottom:12px;font-size:.875rem}.auth-otp-input{text-align:center;letter-spacing:8px;font-size:1.5rem;font-weight:700}.auth-form-row{grid-template-columns:1fr 1fr;gap:12px;display:grid}@media (width<=480px){.auth-form-row{grid-template-columns:1fr;gap:0}}.toast-viewport{z-index:200;flex-direction:column;gap:10px;max-width:360px;display:flex;position:fixed;bottom:20px;right:20px}.toast{border-radius:var(--radius-md);box-shadow:var(--shadow-lg);border-left:4px solid var(--color-text-muted);background:var(--color-surface);align-items:flex-start;gap:10px;padding:12px 14px;animation:.2s ease-out toast-in;display:flex}.toast-exit{animation:.15s ease-in forwards toast-out}.toast-success{border-left-color:var(--color-success);background:var(--color-success-light)}.toast-error{border-left-color:var(--color-error);background:var(--color-error-light)}.toast-warning{border-left-color:var(--color-warning);background:var(--color-warning-light)}.toast-message{color:var(--color-text);flex:1;font-size:.875rem;font-weight:600;line-height:1.4}.toast-close{color:var(--color-text-muted);cursor:pointer;background:0 0;border:none;flex-shrink:0;padding:2px;font-size:1rem;line-height:1}@keyframes toast-in{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@keyframes toast-out{0%{opacity:1;transform:translateY(0)}to{opacity:0;transform:translateY(8px)}}@media (width<=480px){.toast-viewport{max-width:none;bottom:12px;left:12px;right:12px}}@keyframes modalPop{0%{opacity:0;transform:scale(.96)translateY(12px)}to{opacity:1;transform:scale(1)translateY(0)}}@keyframes sheetSlideUp{0%{transform:translateY(100%)}to{transform:translateY(0)}}.modal-backdrop{-webkit-backdrop-filter:blur(4px);z-index:9999;background:#0f172a73;justify-content:center;align-items:center;padding:16px;animation:.2s ease-out fadeIn;display:flex;position:fixed;inset:0}.modal-dialog,.modal-panel{background:var(--color-surface,#fff);border-radius:var(--radius-xl,20px);border:1px solid var(--color-border,#e2e8f0);border-top:4px solid var(--color-primary,#0284c7);z-index:10000;flex-direction:column;width:100%;max-width:560px;max-height:calc(100vh - 48px);margin:auto;animation:.22s cubic-bezier(.16,1,.3,1) modalPop;display:flex;position:relative;overflow:hidden;box-shadow:0 25px 50px -12px #00000040,0 0 0 1px #00000014}.modal-header{border-bottom:1px solid var(--color-border,#e2e8f0);background:var(--color-surface,#fff);flex-shrink:0;justify-content:space-between;align-items:center;padding:16px 20px;display:flex}.modal-title{color:var(--color-text,#0f172a);letter-spacing:-.01em;font-size:1.125rem;font-weight:800}.modal-close,.modal-close-btn{border-radius:var(--radius-md,10px);cursor:pointer;color:var(--color-text-muted,#64748b);background:0 0;border:none;justify-content:center;align-items:center;padding:6px;transition:all .15s;display:flex}.modal-close:hover,.modal-close-btn:hover{background:var(--color-surface-secondary,#f1f5f9);color:var(--color-text,#0f172a)}.modal-body{background:var(--color-surface,#fff);flex:auto;min-height:0;padding:20px;overflow-y:auto}.modal-footer{border-top:1px solid var(--color-border,#e2e8f0);background:var(--color-surface-secondary,#f1f5f9);flex-shrink:0;justify-content:flex-end;align-items:center;gap:12px;padding:14px 20px;display:flex}.chip-row{flex-wrap:wrap;gap:8px;margin-bottom:12px;display:flex}.chip{border-radius:var(--radius-full,9999px);border:1px solid var(--color-border,#e2e8f0);background:var(--color-surface-secondary,#f1f5f9);color:var(--color-text-secondary,#334155);cursor:pointer;padding:8px 14px;font-size:.8125rem;font-weight:600;transition:all .15s}.chip.selected{background:var(--color-primary,#0284c7);border-color:var(--color-primary,#0284c7);color:var(--color-white,#fff)}.category-grid{grid-template-columns:repeat(4,1fr);gap:12px;display:grid}.category-card{border:1px solid var(--color-border,#e2e8f0);border-radius:var(--radius-lg,14px);background:var(--color-surface,#fff);cursor:pointer;color:var(--color-text,#0f172a);flex-direction:column;align-items:center;gap:6px;padding:16px 8px;font-size:.8125rem;font-weight:600;display:flex}.category-card:hover{border-color:var(--color-primary,#0284c7);background:var(--color-primary-surface,#f0f9ff)}.pick-list{flex-direction:column;gap:6px;max-height:280px;display:flex;overflow-y:auto}.pick-item{border-radius:var(--radius-md,10px);border:1px solid var(--color-border-light,#f1f5f9);cursor:pointer;justify-content:space-between;align-items:center;padding:10px 12px;display:flex}.pick-item:hover{border-color:var(--color-primary,#0284c7)}.pick-item.selected{border-color:var(--color-primary,#0284c7);background:var(--color-primary-surface,#f0f9ff)}@media (width<=640px){.modal-backdrop{align-items:flex-end;padding:0}.modal-dialog,.modal-panel{border-bottom:none;border-radius:20px 20px 0 0;width:100%;max-height:92vh;margin:0;animation:.25s cubic-bezier(.16,1,.3,1) sheetSlideUp}.modal-header{padding:14px 16px}.modal-body{padding:16px}.modal-footer{gap:8px;padding:12px 16px}.modal-footer button{flex:1;padding:10px;font-size:.8125rem}.category-grid{grid-template-columns:repeat(2,1fr);gap:8px}}.confirm-panel{max-width:400px}.confirm-message{color:var(--color-text-secondary);font-size:.9rem;line-height:1.5}.danger-btn{border-radius:var(--radius-md);background:var(--color-error);color:var(--color-white);cursor:pointer;border:none;padding:10px 18px;font-size:.875rem;font-weight:700}.danger-btn:hover{background:#b91c1c}.page-container{width:100%;max-width:1200px;margin:0 auto}.page-container-narrow{width:100%;max-width:760px;margin:0 auto}.page-header{justify-content:space-between;align-items:center;gap:16px;margin-bottom:24px;display:flex}.page-title{color:var(--color-text);letter-spacing:-.025em;font-size:1.625rem;font-weight:800}.page-subtitle{color:var(--color-text-muted);margin-top:4px;font-size:.875rem}.stat-row{grid-template-columns:repeat(4,1fr);gap:16px;margin-bottom:24px;display:grid}.stat-card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-xl);box-shadow:var(--shadow-sm);padding:20px;transition:transform .2s,box-shadow .2s,border-color .2s;position:relative;overflow:hidden}.stat-card:before{content:"";background:linear-gradient(90deg, var(--color-primary), var(--color-accent));opacity:.8;height:3px;position:absolute;top:0;left:0;right:0}.stat-card:hover{box-shadow:var(--shadow-md);border-color:var(--color-primary-light);transform:translateY(-2px)}.stat-value{color:var(--color-text);letter-spacing:-.03em;font-size:1.875rem;font-weight:800;line-height:1.1}.stat-label{color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.05em;margin-top:6px;font-size:.75rem;font-weight:700}.tab-row{background:var(--color-surface-secondary);border:1px solid var(--color-border);border-radius:var(--radius-xl);box-sizing:border-box;gap:4px;width:100%;margin-bottom:24px;padding:4px;display:flex}.tab-btn{border-radius:var(--radius-lg);color:var(--color-text-muted);cursor:pointer;white-space:nowrap;text-align:center;background:0 0;border:none;flex:1;justify-content:center;align-items:center;gap:6px;padding:9px 12px;font-size:.8125rem;font-weight:600;transition:all .2s;display:flex}.tab-btn:hover:not(.active){background:var(--color-surface);color:var(--color-text)}.tab-btn.active{background:var(--color-primary);color:var(--color-white);font-weight:700;box-shadow:0 2px 8px #0284c740}.card-list{flex-direction:column;gap:12px;display:flex}.item-card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-xl);box-shadow:var(--shadow-sm);cursor:pointer;justify-content:space-between;align-items:center;padding:16px 20px;transition:all .2s cubic-bezier(.4,0,.2,1);display:flex}.item-card:hover{border-color:var(--color-primary);box-shadow:var(--shadow-md);transform:translateY(-1px)}.item-card-setting{align-items:center;gap:14px;padding:16px 18px;display:flex}.setting-badge{border-radius:var(--radius-lg);flex-shrink:0;justify-content:center;align-items:center;width:44px;height:44px;font-size:1.3rem;display:flex}.setting-content{flex:1;min-width:0}.setting-chevron{color:var(--color-text-muted);flex-shrink:0;align-items:center;transition:transform .15s,color .15s;display:flex}.item-card:hover .setting-chevron{color:var(--color-primary);transform:translate(3px)}.item-card:focus-visible{outline:2px solid var(--color-primary);outline-offset:2px}.item-card-left{align-items:center;gap:16px;display:flex}.token-badge{width:42px;height:42px;color:var(--color-white);background:linear-gradient(135deg, var(--color-primary), var(--color-indigo));border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;font-size:1rem;font-weight:800;display:flex;box-shadow:0 4px 10px #0284c733}.item-name{color:var(--color-text);letter-spacing:-.01em;font-size:1rem;font-weight:700}.item-meta{color:var(--color-text-muted);margin-top:2px;font-size:.8125rem}.status-pill{border-radius:var(--radius-full);letter-spacing:.02em;text-transform:capitalize;align-items:center;gap:6px;padding:6px 14px;font-size:.775rem;font-weight:700;display:inline-flex}.status-pill.waiting{background:var(--color-warning-light);color:#b45309}.status-pill.in_progress{background:var(--color-primary-light);color:var(--color-primary-dark)}.status-pill.completed{background:var(--color-success-light);color:#047857}.status-pill.cancelled{background:var(--color-error-light);color:#b91c1c}.empty-state{text-align:center;background:var(--color-surface);border:1px dashed var(--color-border);border-radius:var(--radius-xl);color:var(--color-text-muted);padding:64px 20px}.empty-state-icon{width:48px;height:48px;color:var(--color-text-light);margin:0 auto 12px}.primary-btn{border-radius:var(--radius-lg);background:linear-gradient(135deg, var(--color-primary), var(--color-primary-dark));color:var(--color-white);cursor:pointer;white-space:nowrap;border:none;justify-content:center;align-items:center;gap:8px;padding:10px 20px;font-size:.875rem;font-weight:700;transition:all .2s;display:inline-flex;box-shadow:0 2px 6px #0284c740}.primary-btn:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 4px 12px #0284c759}.primary-btn:disabled{opacity:.6;cursor:not-allowed;box-shadow:none}.secondary-btn{border:1px solid var(--color-border);border-radius:var(--radius-lg);background:var(--color-surface);color:var(--color-text);cursor:pointer;white-space:nowrap;justify-content:center;align-items:center;gap:8px;padding:10px 20px;font-size:.875rem;font-weight:600;transition:all .2s;display:inline-flex}.secondary-btn:hover:not(:disabled){background:var(--color-surface-secondary);border-color:var(--color-primary);color:var(--color-primary)}.secondary-btn:disabled{opacity:.5;cursor:not-allowed}.icon-btn{color:var(--color-text-muted);cursor:pointer;border-radius:var(--radius-md);background:0 0;border:none;justify-content:center;align-items:center;padding:8px;transition:all .15s;display:inline-flex}.icon-btn:hover{background:var(--color-surface-secondary);color:var(--color-error)}.hero-action-card{border-radius:var(--radius-xl);color:var(--color-white);box-shadow:var(--shadow-glow);background:linear-gradient(135deg,#0284c7,#0d9488);justify-content:space-between;align-items:center;gap:20px;margin-bottom:24px;padding:24px 28px;display:flex}.hero-action-title{margin-bottom:4px;font-size:1.25rem;font-weight:800}.hero-action-desc{opacity:.9;font-size:.875rem}.hero-action-btn{border-radius:var(--radius-lg);background:var(--color-white);color:var(--color-primary-dark);cursor:pointer;white-space:nowrap;border:none;padding:12px 24px;font-size:.9rem;font-weight:800;box-shadow:0 4px 12px #00000026}.hero-action-btn:hover{transform:scale(1.03);box-shadow:0 6px 16px #0003}@media (width<=1024px){.stat-row{grid-template-columns:repeat(2,1fr);gap:12px}}@media (width<=640px){.page-header{flex-direction:column;align-items:stretch;gap:12px;margin-bottom:18px}.page-header>button,.page-header .primary-btn{justify-content:center;width:100%}.page-title{font-size:1.35rem}.stat-row{grid-template-columns:repeat(2,1fr);gap:8px;margin-bottom:16px}.stat-card{padding:12px 14px}.stat-value{font-size:1.4rem}.tab-row{margin-bottom:16px;padding:3px}.tab-btn{padding:7px 4px;font-size:.75rem}.hero-action-card{flex-direction:column;align-items:stretch;gap:14px;padding:18px 20px}.hero-action-btn{text-align:center;width:100%}.item-card{padding:14px}.item-card-left{gap:12px}.token-badge{width:36px;height:36px;font-size:.85rem}}.page-loader{flex-direction:column;justify-content:center;align-items:center;gap:12px;padding:48px 0;display:flex}.page-loader.full-screen{min-height:100vh;padding:0}.spinner{border:3px solid var(--color-border);border-top-color:var(--color-primary);border-radius:50%;width:32px;height:32px;animation:.7s linear infinite spinner-rotate}.page-loader-label{color:var(--color-text-muted);font-size:.875rem}@keyframes spinner-rotate{to{transform:rotate(360deg)}}.actions-container{flex-wrap:wrap;justify-content:flex-start;gap:12px;margin-top:24px;display:flex}.action-btn{border-radius:var(--radius-md);cursor:pointer;box-shadow:var(--shadow-sm);background:var(--color-white);border:1.5px solid;justify-content:center;align-items:center;gap:8px;padding:12px 20px;font-size:.875rem;font-weight:700;transition:all .2s;display:flex}.action-btn:hover{box-shadow:var(--shadow-md);transform:translateY(-1px)}.action-btn:disabled{opacity:.6;cursor:not-allowed;box-shadow:none;transform:none}.action-whatsapp{color:#25d366;border-color:#25d366}.action-whatsapp:hover:not(:disabled){background:#25d36610}.action-download{color:var(--color-primary);border-color:var(--color-primary)}.action-download:hover:not(:disabled){background:var(--color-primary-surface)}.action-print{color:var(--color-text-secondary);border-color:var(--color-border)}.action-print:hover:not(:disabled){background:var(--color-surface-secondary)}.actions-success-banner{border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);background:#ecfdf5;border:1.5px solid #a7f3d0;flex-direction:column;gap:12px;margin-top:20px;padding:16px;animation:.3s fadeIn;display:flex}.actions-success-header{color:#065f46;align-items:center;gap:10px;font-size:.9375rem;font-weight:600;display:flex}.actions-success-actions{justify-content:flex-end;gap:10px;display:flex}.prescription-paper{background:var(--color-white);border:1px solid var(--color-border);border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);color:var(--color-text);margin-bottom:24px;padding:40px;font-family:Inter,system-ui,Helvetica,sans-serif}.paper-logo-container{justify-content:flex-start;margin-bottom:8px;display:flex}.paper-logo{width:44px;height:44px}.paper-clinic-name{color:var(--color-primary);text-align:center;letter-spacing:.5px;margin-bottom:2px;font-size:1.5rem;font-weight:800}.paper-doctor-info{color:var(--color-text-secondary);text-align:center;margin-top:4px;margin-bottom:2px;font-size:.9375rem;font-weight:700}.paper-clinic-sub{color:var(--color-text-muted);text-align:center;margin-top:2px;font-size:.8125rem}.paper-header-rule{border:none;border-top:3px solid var(--color-primary);margin:16px 0}.paper-meta-row{justify-content:space-between;align-items:center;margin-bottom:12px;display:flex}.paper-consult-badge{color:var(--color-primary);background:var(--color-primary-surface);border-radius:var(--radius-full);padding:4px 10px;font-size:.8125rem;font-weight:700}.paper-date-id{color:var(--color-text-muted);text-align:right;font-size:.875rem}.paper-patient-table{border-collapse:collapse;border-top:1px solid var(--color-border-light);border-bottom:1px solid var(--color-border-light);background:var(--color-surface-secondary);width:100%;margin-bottom:16px}.paper-patient-cell{vertical-align:top;width:33.33%;padding:12px 8px}.paper-p-label{color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.05em;margin-bottom:4px;font-size:.6875rem;font-weight:600}.paper-p-value{color:var(--color-text);font-size:.9375rem;font-weight:700}.paper-section{margin-bottom:20px}.paper-section-title{color:var(--color-primary);text-transform:uppercase;letter-spacing:.05em;margin-bottom:8px;font-size:.875rem;font-weight:800}.paper-accent-box-diag{color:var(--color-text);border-radius:0 var(--radius-md) var(--radius-md) 0;background:#f0f9ff;border-left:4px solid #1d6fa4;padding:10px 14px;font-size:.9375rem;line-height:1.5}.paper-med-table{border-collapse:collapse;border:1px solid var(--color-border-light);border-radius:var(--radius-md);width:100%;overflow:hidden}.paper-med-table th{background:var(--color-primary);color:var(--color-white);text-align:left;text-transform:uppercase;letter-spacing:.05em;padding:10px 12px;font-size:.8125rem;font-weight:700}.paper-med-table td{border-bottom:1px solid var(--color-border-light);padding:10px 12px;font-size:.875rem}.paper-med-name{color:var(--color-text);font-weight:700}.paper-med-type{color:var(--color-text-muted);font-size:.75rem;font-weight:500}.paper-test-row{align-items:center;gap:8px;padding:6px 0;font-size:.9375rem;display:flex}.paper-accent-box-advice{color:var(--color-text);border-radius:0 var(--radius-md) var(--radius-md) 0;background:#fffbeb;border-left:4px solid #d97706;align-items:flex-start;gap:8px;padding:10px 14px;font-size:.9375rem;line-height:1.5;display:flex}.paper-follow-up-row{color:var(--color-error);align-items:center;gap:8px;margin-top:12px;margin-bottom:12px;font-size:.9375rem;font-weight:700;display:flex}.paper-signature-section{border-top:1px solid var(--color-border-light);justify-content:space-between;align-items:flex-end;margin-top:32px;padding-top:16px;display:flex}.paper-qr-container{flex-direction:column;align-items:flex-start;gap:4px;display:flex}.paper-qr-image{border:1px solid var(--color-border);border-radius:var(--radius-md);background:#fff;width:80px;height:80px;padding:4px}.paper-qr-label{color:var(--color-text-muted);font-size:.6875rem;font-weight:500}.paper-sig-container{text-align:right;flex-direction:column;align-items:flex-end;min-width:180px;display:flex}.paper-sig-image{max-width:180px;max-height:70px;margin-bottom:6px}.paper-sig-svg{margin-bottom:6px;display:block}.paper-sig-doctor-name{color:var(--color-text);font-size:.9375rem;font-weight:700}.paper-sig-reg{color:var(--color-text-muted);margin-top:2px;font-size:.75rem}.paper-footer{text-align:center;border-top:1px solid var(--color-border-light);color:var(--color-text-light);margin-top:24px;padding-top:12px;font-size:.75rem}.paper-hash{color:#ccd0d5;word-break:break-all;margin-top:4px;font-family:monospace;font-size:.6875rem}@media (width<=640px){.prescription-paper{border-radius:var(--radius-md);padding:16px}.paper-meta-row{flex-direction:column;align-items:flex-start;gap:6px}.paper-date-id{text-align:left}.paper-patient-table{display:block}.paper-patient-table tbody,.paper-patient-table tr{flex-direction:column;width:100%;display:flex}.paper-patient-cell{border-bottom:1px dashed var(--color-border-light);padding:8px 4px;display:block;width:100%!important}.paper-patient-cell:last-child{border-bottom:none}.paper-med-table-wrapper{-webkit-overflow-scrolling:touch;width:100%;margin-bottom:12px;overflow-x:auto}.paper-med-table{min-width:540px}.paper-signature-section{text-align:center;flex-direction:column;align-items:center;gap:20px}.paper-qr-container{align-items:center}.paper-sig-container{text-align:center;align-items:center;min-width:100%}}.success-container{flex-direction:column;align-items:center;max-width:480px;margin:60px auto;padding:0 20px;font-family:Inter,system-ui,sans-serif;display:flex}.success-circle{background:#ecfdf5;border-radius:50%;justify-content:center;align-items:center;width:110px;height:110px;margin-bottom:24px;display:flex;box-shadow:0 4px 10px #10b9811a}.success-inner-circle{color:#fff;background:#10b981;border-radius:50%;justify-content:center;align-items:center;width:80px;height:80px;font-size:2.5rem;font-weight:800;display:flex;box-shadow:0 4px 6px #10b98133}.success-title{color:var(--color-text);margin-bottom:12px;font-size:1.5rem;font-weight:800}.success-rx-id{color:var(--color-primary);background:var(--color-primary-surface);border-radius:var(--radius-full);margin-bottom:16px;padding:8px 16px;font-size:.9375rem;font-weight:700}.success-patient-info{color:var(--color-text-muted);align-items:center;gap:6px;margin-bottom:24px;font-size:.875rem;display:flex}.success-balance-card{border-radius:var(--radius-lg);box-sizing:border-box;width:100%;box-shadow:var(--shadow-sm);background:#f0fdf4;border:1px solid #bbf7d0;align-items:center;gap:14px;margin-bottom:24px;padding:16px;display:flex}.success-balance-icon{color:#16a34a;flex-shrink:0;justify-content:center;align-items:center;display:flex}.success-balance-info{flex-direction:column;display:flex}.success-balance-label{color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.05em;font-size:.6875rem;font-weight:600}.success-balance-amount{color:#16a34a;margin-top:2px;font-size:1.125rem;font-weight:800}.success-share-section{width:100%;margin-bottom:32px}.success-share-title{color:var(--color-text-secondary);text-transform:uppercase;letter-spacing:.05em;text-align:center;margin-bottom:12px;font-size:.8125rem;font-weight:700}.success-divider{background:var(--color-border-light);width:100%;height:1px;margin-bottom:20px}.skeleton{background:linear-gradient(90deg, var(--color-surface-secondary) 25%, var(--color-border-light) 37%, var(--color-surface-secondary) 63%);background-size:400% 100%;animation:1.4s infinite skeleton-shimmer}@keyframes skeleton-shimmer{0%{background-position:100%}to{background-position:0}}.app-skeleton{min-height:100vh;display:flex}.app-skeleton-sidebar{background:var(--color-surface);border-right:1px solid var(--color-border);flex-direction:column;flex-shrink:0;gap:10px;width:260px;padding:20px;display:flex}.app-skeleton-content{flex-direction:column;flex:1;gap:16px;padding:24px 32px;display:flex}.app-skeleton-row{gap:12px;display:flex}@media (width<=768px){.app-skeleton-sidebar{display:none}.app-skeleton-content{padding:16px 12px}}
