@charset "UTF-8";*,*:before,*:after{box-sizing:border-box}html,body,div,span,applet,object,iframe,h1,h2,h3,h4,h5,h6,p,blockquote,pre,a,abbr,acronym,address,big,cite,code,del,dfn,em,img,ins,kbd,q,s,samp,small,strike,strong,sub,sup,tt,var,b,u,i,center,dl,dt,dd,ol,ul,li,fieldset,form,label,legend,table,caption,tbody,tfoot,thead,tr,th,td,article,aside,canvas,details,embed,figure,figcaption,footer,header,hgroup,menu,nav,output,ruby,section,summary,time,mark,audio,video{margin:0;padding:0;border:0;vertical-align:baseline}article,aside,details,figcaption,figure,footer,header,hgroup,menu,nav,section{display:block}body{line-height:1;min-height:100vh}ol,ul{list-style:none}blockquote,q{quotes:none}blockquote:before,blockquote:after,q:before,q:after{content:none}table{border-collapse:collapse;border-spacing:0}img{max-width:100%;height:auto}:focus{outline:0}button,input,optgroup,select,textarea{font-family:inherit;font-size:100%;line-height:1.15;margin:0}button,a{-webkit-tap-highlight-color:transparent;-webkit-touch-callout:none}a{text-decoration:none}html{cursor:default}body{font-family:ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,Noto Sans,sans-serif,"Apple Color Emoji","Segoe UI Emoji",Segoe UI Symbol,"Noto Color Emoji";color:#333;line-height:1.5;font-size:16px}h1,h2,h3,h4,h5,h6{margin-top:0;margin-bottom:1rem;font-weight:600;line-height:1.2}h1{font-size:2.5rem}h2{font-size:2rem}h3{font-size:1.75rem}h4{font-size:1.5rem}h5{font-size:1.25rem}h6{font-size:1rem}p{line-height:1.5rem;margin-top:0;margin-bottom:1rem}.prose li,.content li,article li{line-height:1.5rem;margin-top:0;margin-bottom:1rem}.prose ul,.prose ol,.content ul,.content ol,article ul,article ol{padding-left:1.5rem;margin-bottom:1rem}.prose li>ul,.prose li>ol,.content li>ul,.content li>ol,article li>ul,article li>ol{margin-top:.5rem}a{font-weight:500;color:#06c;text-decoration:none}a:hover{text-decoration:underline}hr{border:1px solid #ddd;margin:1rem 0}code,pre{font-family:Courier New,Courier,monospace;background-color:#f5f5f5;padding:.25rem;border-radius:.3rem}pre{padding:1rem;overflow-x:auto}strong,b{font-weight:600}em,i{font-style:italic}.visually-hidden{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.text-center{text-align:center}.text-left{text-align:left}.text-right{text-align:right}.d-flex{display:flex}.d-block{display:block}.d-inline{display:inline}.d-inline-block{display:inline-block}.d-none{display:none}.m-0{margin:0}.p-0{padding:0}.mt-1{margin-top:.25rem}.mt-2{margin-top:.5rem}.mt-3{margin-top:1rem}.mt-4{margin-top:1.5rem}.mb-1{margin-bottom:.25rem}.mb-2{margin-bottom:.5rem}.mb-3{margin-bottom:1rem}.mb-4{margin-bottom:1.5rem}.flex-column{flex-direction:column}.flex-row{flex-direction:row}.justify-content-center{justify-content:center}.justify-content-between{justify-content:space-between}.align-items-center{align-items:center}.w-100{width:100%}.w-50{width:50%}.w-auto{width:auto}.text-bold{font-weight:700}.text-italic{font-style:italic}.text-primary{color:#346df1}.text-error{color:#ff3e00}.text-success{color:#4caf50}.text-muted{color:#666}.form-container{display:flex;flex-direction:column;gap:1rem;margin:0 auto;padding:1.5rem}label{display:flex;flex-direction:column;gap:.25rem;font-weight:500}input,select,textarea{padding:.5rem;border:1px solid #ddd;border-radius:.3rem;background-color:#fff;color:#333}input:focus,select:focus,textarea:focus{outline:2px solid #346df1;border-color:#346df1}input:disabled,select:disabled,textarea:disabled{background-color:#f5f5f5;cursor:not-allowed}select{cursor:pointer}.form-group{display:flex;flex-direction:column;gap:.25rem;margin-bottom:1rem}.required{color:var(--error-text, #dc3545);margin-left:.25rem}.btn,.btn-success,.btn-danger,.btn-secondary,.btn-primary{border-radius:.3rem;padding:.5rem 1rem;cursor:pointer;transition:background-color .2s;border:none;font-weight:600}.btn:focus,.btn-success:focus,.btn-danger:focus,.btn-secondary:focus,.btn-primary:focus{outline:2px solid rgba(52,109,241,.5);outline-offset:2px}.btn:disabled,.btn-success:disabled,.btn-danger:disabled,.btn-secondary:disabled,.btn-primary:disabled{opacity:.6;cursor:not-allowed}.btn-primary{background-color:#346df1;color:#fff;font-weight:500;line-height:1.4rem;padding:.7rem 1.4rem;text-decoration:none;transition:all .2s ease-in}.btn-primary:hover:not(:disabled){box-shadow:inset 0 0 5rem #0003}.btn-secondary{background-color:#f5f5f5;color:#333;border:1px solid #ddd}.btn-secondary:hover:not(:disabled){background-color:#e8e8e8}.btn-danger{background-color:#ff3e00;color:#fff}.btn-danger:hover:not(:disabled){background-color:#cc3200}.btn-success{background-color:#4caf50;color:#fff}.btn-success:hover:not(:disabled){background-color:#3d8b40}.btn-link{background:none;border:none;color:var(--primary-color, #0066cc);font-weight:600;cursor:pointer;padding:.5rem .75rem;transition:background-color .2s ease,color .2s ease;display:inline-flex;align-items:center;gap:.5rem;border-radius:4px}.btn-link:hover{background-color:#0000000d;color:var(--primary-hover, #0052a3)}@media (max-width: 767px){.btn-link{padding:.75rem 1rem;min-height:44px}}.link{color:#06c;text-decoration:none;font-weight:500}.link:hover{text-decoration:underline}.icon-button{display:inline-flex;align-items:center;justify-content:center;background:transparent;border:none;border-radius:.3rem;padding:.25rem;cursor:pointer;color:#333;transition:background-color .2s ease,color .2s ease}.icon-button svg{color:currentColor}.icon-button:hover{background-color:#3333331a;color:#333}.icon-button:focus{outline:2px solid rgba(52,109,241,.5);outline-offset:2px;background-color:#3333331a}.icon-button:active{background-color:#33333326}.icon-button:disabled{opacity:.5;cursor:not-allowed}.icon-button:disabled:hover{background-color:transparent}.btn-pagination{padding:.5rem 1rem;border:1px solid var(--border-color, #e0e0e0);border-radius:4px;background-color:var(--bg-primary, #fff);color:var(--text-primary, #333);cursor:pointer;transition:all .2s ease}.btn-pagination:hover:not(:disabled){background-color:var(--primary-color, #0066cc);color:var(--text-on-primary, #fff);border-color:var(--primary-color, #0066cc)}.btn-pagination:disabled{opacity:.4;cursor:not-allowed}@media (max-width: 767px){.btn-pagination{padding:.375rem .75rem}}.btn-block{display:block;width:100%;text-align:center}a.btn,a.btn-primary,a.btn-secondary,a.btn-danger,a.btn-success,a.btn-link,a.btn-pagination,a.btn:hover,a.btn-primary:hover,a.btn-secondary:hover,a.btn-danger:hover,a.btn-success:hover,a.btn-link:hover,a.btn-pagination:hover{text-decoration:none}.card{background-color:#fff;border-radius:.5rem;padding:2rem;box-shadow:0 4px 8px #0000001a}.auth-card{background-color:#fff;border-radius:.5rem;padding:1rem;box-shadow:0 2px 8px #0000000d;max-width:486px}.auth-card h1{font-size:1.5rem;margin-bottom:1rem;text-align:center}.profile-card .profile-header{display:flex;flex-direction:row;justify-content:flex-start;align-items:center;flex-wrap:nowrap;gap:1rem;margin-bottom:1rem}@media (min-width: 576px){.profile-card .profile-header{flex-direction:column;align-items:center;text-align:center}}.profile-card .profile-avatar{width:80px;height:80px;border-radius:50%;object-fit:cover;border:3px solid #346df1}.profile-card .profile-info h3{margin:0;font-size:1.2rem}.profile-card .profile-info p{margin:.25rem 0;color:#333;opacity:.8}.profile-card .profile-info .profile-role{font-weight:500;color:#346df1}.profile-card .profile-actions{display:flex;flex-direction:row;justify-content:flex-start;align-items:center;flex-wrap:nowrap;gap:.5rem;flex-wrap:wrap}@media (min-width: 576px){.profile-card .profile-actions{justify-content:center}}.action-card{display:flex;flex-direction:column;justify-content:center;align-items:center;flex-wrap:nowrap;gap:.25rem;padding:1rem;background-color:#f5f5f5;border-radius:.3rem;text-decoration:none;color:#333;transition:all .2s ease-in}.action-card:hover{transform:translateY(-2px);background-color:#346df11a}.action-card .action-icon{font-size:1.5rem}.action-card .action-title{font-size:.9rem;font-weight:500;text-align:center}.card-with-header .card-header{padding-bottom:.5rem;margin-bottom:1rem;border-bottom:1px solid #ddd}.card-with-header .card-header h2,.card-with-header .card-header h3,.card-with-header .card-header h4{margin:0}.card-with-header .card-body{padding:.25rem 0}.card-with-header .card-footer{padding-top:.5rem;margin-top:1rem;border-top:1px solid #ddd}.card-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:1rem}.card-hover{transition:all .2s ease-in}.card-hover:hover{transform:translateY(-3px);box-shadow:0 2px 8px #0000001a}.card-bordered{border:1px solid #ddd}.card-accent{border-top:3px solid #346df1}.card-accent.accent-success{border-top-color:#4caf50}.card-accent.accent-error,.card-accent.accent-accent{border-top-color:#ff3e00}.modal-fullscreen{max-width:100vw!important;max-height:100vh!important;width:100vw!important;height:100vh!important;border-radius:0!important;margin:0!important}.modal-centered{display:flex!important;align-items:center!important;justify-content:center!important}.modal-scrollable .modal-body{max-height:60vh;overflow-y:auto}.modal-no-padding .modal-body{padding:0}.modal-compact .modal-header,.modal-compact .modal-body,.modal-compact .modal-footer{padding:1rem}.modal-backdrop-dark{background-color:#000c!important}.modal-backdrop-light{background-color:#0000004d!important}@media (min-width: 576px){.modal-responsive-full{max-width:100vw!important;max-height:100vh!important;width:100vw!important;height:100vh!important;border-radius:0!important;margin:0!important}}@media print{.modal-backdrop{display:none!important}}.alert{padding:1rem;border-radius:.3rem;margin-bottom:1rem;font-size:.875rem}.alert strong{display:block;margin-bottom:.25rem}.alert p{margin:0 0 .25rem}.alert ul{margin:0;padding-left:1.5rem;list-style:disc}.alert li{margin-bottom:.25rem}.alert li:last-child{margin-bottom:0}.alert.alert-success{background-color:#4caf501a;border:1px solid #4caf50;color:#2d682f}.alert.alert-error{background-color:#ff3e001a;border:1px solid #ff3e00;color:#992500}.alert.alert-warning{background-color:#ff98001a;border:1px solid #ff9800;color:#333}table{width:100%;border-collapse:collapse;margin-bottom:1rem}table th,table td{padding:.5rem 1rem;text-align:left;border-bottom:1px solid #ddd}table th{background-color:#f5f5f5;font-weight:600}table tr:last-child td{border-bottom:none}.table-hover tbody tr{transition:all .2s ease-in}.table-hover tbody tr:hover{background-color:#346df10d}.table-striped tbody tr:nth-child(odd){background-color:#f5f5f54d}.table-bordered{border:1px solid #ddd;border-radius:.3rem;overflow:hidden}.table-bordered th,.table-bordered td{border:1px solid #ddd}.table-responsive{overflow-x:auto;-webkit-overflow-scrolling:touch;max-width:100%}.table-fixed-header{overflow:auto;max-height:400px}.table-fixed-header thead{position:sticky;top:0;z-index:1}.activity-table th.activity-user,.activity-table td.activity-user{width:30%}.activity-table th.activity-action,.activity-table td.activity-action{width:50%}.activity-table th.activity-time,.activity-table td.activity-time{width:20%;text-align:right;color:#333333b3;font-size:.9rem}.grid-container{width:100%;overflow:hidden;background-color:var(--bg-primary, #fff)}.grid-wrapper{width:100%;overflow-x:auto;border:1px solid var(--border-color, #e0e0e0);border-radius:8px}.grid-table{width:100%;border-collapse:collapse;margin-bottom:0;vertical-align:top}.grid-table.bordered th,.grid-table.bordered td{border:1px solid var(--border-color, #e0e0e0)}.grid-header{border-bottom:2px solid var(--border-color, #e0e0e0)}.grid-header tr{border-bottom:1px solid var(--border-color, #e0e0e0)}.grid-header-cell{padding:.75rem 1rem;color:var(--text-primary, #333);text-align:left;white-space:nowrap;background-color:var(--grid-header-bg, #f5f5f5);border-bottom:2px solid var(--border-color, #e0e0e0);position:relative}.grid-header-cell.align-center{text-align:center}.grid-header-cell.align-right{text-align:right}.grid-header-cell.sortable{cursor:pointer;-webkit-user-select:none;user-select:none}.grid-header-cell.sortable:hover{background-color:var(--grid-header-hover, #ebebeb)}.grid-header-cell.sorted{background-color:var(--grid-header-sorted, #e8e8e8)}@media (max-width: 639px){.grid-header-cell.hide-mobile{display:none}}@media (max-width: 1023px){.grid-header-cell.hide-tablet{display:none}}.select-column{width:3rem;padding:.75rem 1rem;text-align:center;background-color:var(--grid-header-bg, #f5f5f5);border-bottom:2px solid var(--border-color, #e0e0e0)}.select-column input[type=checkbox]{cursor:pointer;width:1.125rem;height:1.125rem}.select-column input[type=checkbox]:focus{outline:2px solid var(--focus-color, #0066cc);outline-offset:2px}.sort-button{display:flex;align-items:center;justify-content:space-between;width:100%;padding:0;border:none;background:none;color:inherit;cursor:pointer;text-align:inherit}.sort-button:focus{outline:2px solid var(--focus-color, #0066cc);outline-offset:2px;border-radius:2px}.column-label{flex:1;text-align:inherit}.sort-indicator{display:inline-flex;margin-left:.5rem;color:var(--text-secondary, #666)}.sort-icon{display:inline-block}.sort-icon.sort-none{opacity:.3;letter-spacing:-.125rem}.sort-icon.sort-asc,.sort-icon.sort-desc{color:var(--primary-color, #0066cc)}:global(.grid-table.sticky-header) .grid-header{position:sticky;top:0;z-index:10}.actions-header{padding:.75rem 1rem;color:var(--text-primary, #333);text-align:right;background-color:var(--grid-header-bg, #f5f5f5);border-bottom:2px solid var(--border-color, #e0e0e0)}.grid-body tr{border-bottom:1px solid var(--border-color, #e0e0e0)}.grid-body tr:last-child{border-bottom:none}.grid-body tr.clickable{cursor:pointer}.grid-body tr.clickable:hover{background-color:var(--grid-row-hover, #f9f9f9)}.grid-body tr.selected{background-color:var(--grid-row-selected, #e3f2fd)}.grid-body td{padding:.75rem 1rem;color:var(--text-primary, #333);text-align:left}.grid-body td.align-center{text-align:center}.grid-body td.align-right{text-align:right}@media (max-width: 639px){.grid-body td.hide-mobile{display:none}}@media (max-width: 1023px){.grid-body td.hide-tablet{display:none}}.grid-body .select-cell{width:3rem;text-align:center}.grid-body .select-cell input[type=checkbox]{cursor:pointer;width:1.125rem;height:1.125rem}.grid-body .select-cell input[type=checkbox]:focus{outline:2px solid var(--focus-color, #0066cc);outline-offset:2px}.grid-body .select-cell input[type=checkbox]:disabled{cursor:not-allowed;opacity:.5}.grid-body .actions-cell{text-align:right;white-space:nowrap}.grid-actions{display:flex;align-items:center;justify-content:flex-end;gap:.5rem}.action-button{padding:.375rem .75rem;border:1px solid var(--border-color, #e0e0e0);border-radius:4px;background-color:var(--bg-primary, #fff);color:var(--text-primary, #333);cursor:pointer;transition:all .2s ease}.action-button:hover:not(:disabled){background-color:var(--grid-action-hover, #f5f5f5)}.action-button:focus{outline:2px solid var(--focus-color, #0066cc);outline-offset:2px}.action-button:disabled{cursor:not-allowed;opacity:.5}.action-button.variant-primary{background-color:var(--primary-color, #0066cc);color:#fff;border-color:var(--primary-color, #0066cc)}.action-button.variant-primary:hover:not(:disabled){background-color:var(--primary-dark, #0052a3)}.action-button.variant-danger{background-color:var(--danger-color, #dc3545);color:#fff;border-color:var(--danger-color, #dc3545)}.action-button.variant-danger:hover:not(:disabled){background-color:var(--danger-dark, #c82333)}.action-button.variant-success{background-color:var(--success-color, #28a745);color:#fff;border-color:var(--success-color, #28a745)}.action-button.variant-success:hover:not(:disabled){background-color:var(--success-dark, #218838)}.dropdown-action-content{display:flex;align-items:center;gap:.5rem}:global(.dropdown-item:has(.variant-danger) .variant-danger){color:var(--danger-color, #dc3545)}:global(.dropdown-item:has(.variant-danger):hover:not(:disabled)){background-color:var(--danger-color, #dc3545);color:#fff}:global(.dropdown-item:has(.variant-danger):hover:not(:disabled):active){background-color:var(--danger-dark, #c82333)}:global(.dropdown-item:has(.variant-danger):hover:not(:disabled) .variant-danger){color:#fff}:global(.dropdown-item:has(.variant-primary) .variant-primary){color:var(--primary-color, #0066cc)}:global(.dropdown-item:has(.variant-primary):hover:not(:disabled)){background-color:var(--primary-color, #0066cc);color:#fff}:global(.dropdown-item:has(.variant-primary):hover:not(:disabled) .variant-primary){color:#fff}:global(.dropdown-item:has(.variant-success) .variant-success){color:var(--success-color, #28a745)}:global(.dropdown-item:has(.variant-success):hover:not(:disabled)){background-color:var(--success-color, #28a745);color:#fff}:global(.dropdown-item:has(.variant-success):hover:not(:disabled) .variant-success){color:#fff}:global(.action-icon){flex-shrink:0}.grid-footer{background-color:var(--grid-footer-bg, #f5f5f5);border-top:1px solid var(--border-color, #e0e0e0)}.grid-footer td{padding:.75rem 1rem}.footer-content{display:flex;align-items:center;justify-content:space-between;gap:1rem;flex-wrap:wrap}.bulk-actions{display:flex;align-items:center;gap:.5rem}.bulk-action-button{padding:.375rem .75rem;border:1px solid var(--border-color, #e0e0e0);border-radius:4px;background-color:var(--bg-primary, #fff);cursor:pointer}.bulk-action-button:hover:not(:disabled){background-color:var(--grid-action-hover, #f5f5f5)}.bulk-action-button:focus{outline:2px solid var(--focus-color, #0066cc);outline-offset:2px}.bulk-action-button:disabled{cursor:not-allowed;opacity:.5}.bulk-action-button.variant-primary{background-color:var(--primary-color, #0066cc);color:#fff;border-color:var(--primary-color, #0066cc)}.bulk-action-button.variant-danger{background-color:var(--danger-color, #dc3545);color:#fff;border-color:var(--danger-color, #dc3545)}.grid-pagination{display:flex;align-items:center;justify-content:space-between;gap:1rem;flex-wrap:wrap}.pagination-container{display:flex;align-items:center;justify-content:space-between;width:100%;gap:1rem}.page-info,.pagination-info{color:var(--text-secondary, #666)}.page-size-selector{display:flex;align-items:center;gap:.5rem}.page-size-selector select{padding:.25rem .5rem;border:1px solid var(--border-color, #e0e0e0);border-radius:4px;background-color:var(--bg-primary, #fff)}.page-size-selector select:focus{outline:2px solid var(--focus-color, #0066cc);outline-offset:2px}.pagination-controls,.page-buttons{display:flex;align-items:center;gap:.25rem}.page-button{min-width:2rem;padding:.375rem .75rem;border:1px solid var(--border-color, #e0e0e0);border-radius:4px;background-color:var(--bg-primary, #fff);cursor:pointer;transition:all .2s ease}.page-button:hover:not(:disabled):not(.active){background-color:var(--grid-action-hover, #f5f5f5)}.page-button:focus{outline:2px solid var(--focus-color, #0066cc);outline-offset:2px}.page-button:disabled{cursor:not-allowed;opacity:.5}.page-button.active{background-color:var(--primary-color, #0066cc);color:#fff;border-color:var(--primary-color, #0066cc)}.page-ellipsis{padding:.375rem .5rem;color:var(--text-secondary, #666)}.grid-loading,.grid-empty{padding:3rem 2rem;text-align:center}.loading-content,.empty-content{display:flex;flex-direction:column;align-items:center;gap:1rem}.loading-spinner{width:3rem;height:3rem;border:4px solid var(--border-color, #e0e0e0);border-top-color:var(--primary-color, #0066cc);border-radius:50%;animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.loading-message,.empty-message{margin:0;color:var(--text-secondary, #666)}@media (max-width: 639px){.grid-container{border-radius:4px}.pagination-controls{gap:.125rem}.page-button{min-width:1.75rem;padding:.25rem .5rem}}.toggle-switch{position:relative;display:inline-block;width:44px;height:24px;cursor:pointer}.toggle-switch input{opacity:0;width:0;height:0}.toggle-switch input:checked+.slider{background-color:#346df1}.toggle-switch input:checked+.slider:before{transform:translate(20px)}.toggle-switch input:disabled+.slider{opacity:.5;cursor:not-allowed}.toggle-switch input:focus+.slider{box-shadow:0 0 0 2px #346df133}.toggle-switch .slider{position:absolute;cursor:pointer;top:0;left:0;right:0;bottom:0;background-color:#ccc;transition:.3s;border-radius:24px}.toggle-switch .slider:before{position:absolute;content:"";height:18px;width:18px;left:3px;bottom:3px;background-color:#fff;transition:.3s;border-radius:50%}.payment-element-container .test-payment-form{display:flex;flex-direction:column;gap:1rem}.payment-element-container .test-payment-form .form-group{display:flex;flex-direction:column;gap:.25rem}.payment-element-container .test-payment-form label{font-size:.875rem;font-weight:500;color:#333}.payment-element-container .test-payment-form input{padding:.5rem;border:1px solid #e0e0e0;border-radius:4px;font-size:1rem;font-family:inherit}.payment-element-container .test-payment-form input:focus{outline:none;border-color:#346df1;box-shadow:0 0 0 2px #346df133}.payment-element-container .test-payment-form .form-row{display:grid;grid-template-columns:1fr 1fr;gap:1rem}.payment-element-container .stripe-error{color:#dc3545;font-size:.875rem;margin-top:.25rem}.grid{display:grid;gap:1rem}.grid-cols-1{grid-template-columns:1fr}.grid-cols-2{grid-template-columns:repeat(2,1fr)}.grid-cols-3{grid-template-columns:repeat(3,1fr)}.grid-cols-4{grid-template-columns:repeat(4,1fr)}.grid-responsive{display:grid;grid-template-columns:1fr;gap:1rem}@media (min-width: 576px){.grid-responsive{grid-template-columns:repeat(2,1fr)}}@media (min-width: 768px){.grid-responsive{grid-template-columns:repeat(3,1fr)}}@media (min-width: 992px){.grid-responsive{grid-template-columns:repeat(4,1fr)}}.dashboard-grid{display:grid;grid-template-columns:1fr;gap:1.5rem}@media (min-width: 768px){.dashboard-grid{grid-template-columns:repeat(2,1fr)}}.grid-areas{display:grid;grid-template-columns:1fr;grid-template-areas:"header" "sidebar" "main" "footer";gap:1rem}@media (min-width: 768px){.grid-areas{grid-template-columns:250px 1fr;grid-template-areas:"header header" "sidebar main" "footer footer"}}.grid-areas .grid-header{grid-area:header}.grid-areas .grid-sidebar{grid-area:sidebar}.grid-areas .grid-main{grid-area:main}.grid-areas .grid-footer{grid-area:footer}.grid-auto-fit{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:1rem}.grid-auto-fill{display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:1rem}.col-span-2{grid-column:span 2}.col-span-3{grid-column:span 3}.col-span-4{grid-column:span 4}.row-span-2{grid-row:span 2}.row-span-3{grid-row:span 3}.grid-center{place-items:center}.grid-start{place-items:start}.grid-end{place-items:end}.user-dashboard h1,.admin-dashboard h1{margin-top:0;margin-bottom:.5rem;color:#333}.user-dashboard .welcome-message,.admin-dashboard .welcome-message{margin-bottom:2rem;font-size:1.1rem;color:#333}.dashboard-section{background-color:#fff;border-radius:.5rem;padding:1rem;box-shadow:0 2px 8px #0000000d}.dashboard-section h2{margin-top:0;margin-bottom:1rem;font-size:1.2rem;color:#333;border-bottom:1px solid #ddd;padding-bottom:.25rem}.dashboard-sidebar{background-color:#fff;border-radius:.5rem;padding:1rem;box-shadow:0 2px 8px #0000000d}@media (min-width: 992px){.dashboard-sidebar{position:sticky;top:1rem}}.dashboard-sidebar .sidebar-nav{list-style:none;padding:0;margin:0}.dashboard-sidebar .sidebar-nav li{margin-bottom:.25rem}.dashboard-sidebar .sidebar-nav a{display:flex;align-items:center;gap:.25rem;padding:.25rem .5rem;border-radius:.3rem;color:#333;text-decoration:none;transition:all .2s ease-in}.dashboard-sidebar .sidebar-nav a:hover,.dashboard-sidebar .sidebar-nav a.active{background-color:#346df11a;color:#346df1}.dashboard-sidebar .sidebar-nav a .icon{font-size:1.2rem}.dashboard-content{flex:1}@media (min-width: 992px){.dashboard-content{padding-left:1rem}}.dashboard-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1.5rem;flex-wrap:wrap;gap:.5rem}.dashboard-header .dashboard-title{margin:0}.dashboard-header .dashboard-actions{display:flex;gap:.25rem}.dashboard-footer{margin-top:2rem;padding-top:1rem;border-top:1px solid #ddd;display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:.5rem}.dashboard-footer .footer-links{display:flex;gap:1rem}.dashboard-footer .footer-links a{color:#333;opacity:.7;text-decoration:none}.dashboard-footer .footer-links a:hover{opacity:1;text-decoration:underline}.dashboard-with-sidebar{display:flex;flex-direction:column;gap:1.5rem}@media (min-width: 992px){.dashboard-with-sidebar{flex-direction:row}.dashboard-with-sidebar .dashboard-sidebar{width:250px;flex-shrink:0}}.empty-state{text-align:center;color:#333;opacity:.6;padding:1rem}footer{background-color:#fff;box-shadow:0 -2px 4px #0000001a;padding:3rem 1rem 1.5rem;margin-top:auto;width:100%}.footer-content{margin:0 auto;display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:2rem}.footer-section h3{color:#346df1;font-size:1.5rem;margin-bottom:.75rem}.footer-section h4{color:#333;font-size:1.125rem;margin-bottom:.75rem;font-weight:600}.footer-section p{color:#666;line-height:1.6;margin:.5rem 0;font-size:.9rem}.footer-section nav{display:flex;flex-direction:column;gap:.5rem}.footer-section a{color:#555;text-decoration:none;font-weight:500;transition:color .2s ease;font-size:.9rem}.footer-section a:hover{color:#346df1}.footer-section .coming-soon-link{color:#999;font-size:.9rem;font-style:italic;font-weight:500}.footer-bottom{max-width:1200px;margin:0 auto;padding-top:1.5rem;border-top:1px solid #ddd;text-align:center}.footer-bottom p{color:#666;margin:.5rem 0;font-size:.875rem}.disclaimer{font-size:.75rem!important;color:#999!important;font-style:italic;max-width:800px;margin:.75rem auto 0}@media (max-width: 768px){footer{padding:2rem 1rem 1rem}.footer-content{grid-template-columns:1fr;gap:1.5rem}.footer-section h3{font-size:1.25rem}}.auth-container{max-width:486px;margin:0 auto;padding:1.5rem}.auth-container--centered{display:flex;justify-content:center;align-items:center;min-height:50vh;max-width:none}.auth-container--centered .auth-card{text-align:center;max-width:500px}.auth-container .actions{margin-top:1rem}.auth-container .actions .button{display:inline-block;padding:.5rem 1.5rem;font-weight:700}.redirect-message{font-style:italic;margin-bottom:1rem;color:#333;opacity:.8}.auth-header{text-align:center;margin-bottom:2rem}.auth-header h1{margin-bottom:.5rem}.auth-header p{color:#333333b3}.auth-form{background-color:#fff;border-radius:.5rem;padding:1.5rem;box-shadow:0 2px 8px #0000000d}.auth-footer{text-align:center;margin-top:1.5rem;font-size:.9rem}.auth-footer a{color:#346df1;text-decoration:none}.auth-footer a:hover{text-decoration:underline}.auth-divider{display:flex;align-items:center;margin:1rem 0}.auth-divider:before,.auth-divider:after{content:"";flex:1;border-bottom:1px solid #ddd}.auth-divider span{padding:0 .5rem;color:#3339;font-size:.9rem}.social-login{display:flex;flex-direction:column;gap:.5rem;margin-bottom:1rem}.social-login .social-button{display:flex;align-items:center;justify-content:center;gap:.5rem;padding:.5rem;border-radius:.3rem;border:1px solid #ddd;background-color:#fff;color:#333;cursor:pointer;transition:all .2s ease-in}.social-login .social-button:hover{background-color:#f5f5f5}.social-login .social-button .icon{font-size:1.2rem}.social-login .google-button{color:#4285f4}.social-login .github-button{color:#333}.social-login .twitter-button{color:#1da1f2}.auth-options{display:flex;justify-content:space-between;align-items:center;margin-bottom:1rem;flex-wrap:wrap;gap:.5rem}.auth-options .remember-me{display:flex;align-items:center;gap:.25rem}.auth-options .remember-me input{margin:0}.auth-options .forgot-password{font-size:.9rem;color:#346df1;text-decoration:none}.auth-options .forgot-password:hover{text-decoration:underline}.signup-page,.signin-page,.forgot-password-page,.reset-password-page{min-height:100vh;display:flex;flex-direction:column;justify-content:center;background-color:#f5f5f5}.activity-list .activity-item{display:flex;flex-direction:row;justify-content:space-between;align-items:center;flex-wrap:nowrap;padding:.5rem 0;border-bottom:1px solid #ddd}.activity-list .activity-item:last-child{border-bottom:none}.activity-list .activity-item .activity-action{font-weight:500}.activity-list .activity-item .activity-date{font-size:.875rem;color:#333;opacity:.7}.actions-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:.5rem}@media (min-width: 768px){.actions-grid{grid-template-columns:repeat(4,1fr)}}.user-profile{margin-bottom:1.5rem}.user-stats{display:grid;grid-template-columns:repeat(2,1fr);gap:1rem;margin-bottom:1.5rem}@media (min-width: 768px){.user-stats{grid-template-columns:repeat(4,1fr)}}.user-stats .stat-card{background-color:#fff;border-radius:.3rem;padding:1rem;text-align:center;box-shadow:0 2px 8px #0000000d}.user-stats .stat-card .stat-value{font-size:1.8rem;font-weight:600;color:#346df1;margin-bottom:.25rem}.user-stats .stat-card .stat-label{font-size:.9rem;color:#333333b3}.recent-activity,.user-settings .settings-group{margin-bottom:1.5rem}.user-settings .settings-group h3{font-size:1.1rem;padding-bottom:.25rem;border-bottom:1px solid #ddd}.user-settings .settings-row{display:flex;justify-content:space-between;align-items:center;padding:.5rem 0;border-bottom:1px solid rgba(221,221,221,.5)}.user-settings .settings-row:last-child{border-bottom:none}.user-settings .settings-row .setting-label{font-weight:500}.user-settings .settings-row .setting-control{display:flex;align-items:center;gap:.5rem}.user-dashboard section{background-color:#fff;border-radius:.5rem;padding:1rem;box-shadow:0 2px 8px #0000000d}.user-dashboard section h2{font-size:1.2rem;border-bottom:1px solid #ddd;padding-bottom:.25rem}.content-container{flex:1;max-width:1200px;margin:0 auto;padding:2rem 1rem}.hero{text-align:center;margin-bottom:4rem;padding:3rem 1rem;background:linear-gradient(135deg,#f5f7fa,#c3cfe2);border-radius:.5rem}.tagline{font-size:1.25rem;color:#666;max-width:700px;margin:0 auto}.features{margin-bottom:4rem}.features h2{text-align:center;margin-bottom:2.5rem}.feature-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:2rem;margin-bottom:2rem}.feature-card{background-color:#fff;border-radius:.5rem;padding:2rem;box-shadow:0 4px 8px #0000001a}.feature-card h3{color:#346df1}.feature-card h3 .coming-soon{font-size:.875rem;color:#666;font-weight:400;font-style:italic}.feature-card p{color:#666;margin-bottom:1rem;line-height:1.6}.feature-card ul{list-style:none;padding:0;margin:0}.feature-card ul li{padding:.5rem 0 .5rem 1.5rem;position:relative;color:#555;line-height:1.5}.feature-card ul li:before{content:"✓";position:absolute;left:0;color:#4caf50;font-weight:700}.cta{text-align:center;background:#346df1;color:#fff;padding:3rem 2rem;border-radius:.5rem;margin-bottom:4rem}.cta p{font-size:1.125rem;margin-bottom:2rem;opacity:.95}.cta-buttons{display:flex;gap:1rem;justify-content:center;flex-wrap:wrap}.home-content .feature-card{transition:transform .2s ease,box-shadow .2s ease}.home-content .feature-card:hover{transform:translateY(-4px);box-shadow:0 8px 16px #0000001a}.home-content .btn{padding:.875rem 2rem;border-radius:.4rem;text-decoration:none;font-weight:600;transition:all .2s ease;display:inline-block}.home-content .btn-primary{background:#fff;color:#346df1}.home-content .btn-primary:hover{background:#f5f5f5;transform:translateY(-2px);box-shadow:0 4px 8px #0003}.home-content .btn-secondary{background:transparent;color:#fff;border:2px solid white}.home-content .btn-secondary:hover{background:#ffffff1a;transform:translateY(-2px)}.info{background:#f5f5f5;padding:2rem;border-radius:.5rem;line-height:1.8}.info h2{margin-bottom:1.5rem}.info p{color:#555;margin-bottom:1.25rem}.info p strong{color:#333}@media (max-width: 768px){.tagline{font-size:1rem}.feature-grid{grid-template-columns:1fr}.cta-buttons{flex-direction:column;align-items:center}.btn{width:100%;max-width:300px}}.content-page{flex:1;max-width:900px;margin:0 auto;padding:3rem 1.5rem;line-height:1.7;background-color:#fffaf0}.content-page h1{margin-bottom:1.5rem;padding-bottom:1rem;border-bottom:2px solid #ddd}.content-page h2{margin-top:2.5rem;margin-bottom:1.25rem}.content-page h3{margin-top:2rem;margin-bottom:1rem}.content-page h4{margin-top:1.5rem;margin-bottom:.75rem}.content-page p{margin-bottom:1.25rem;color:#555}.content-page ul,.content-page ol{margin-bottom:1.5rem;padding-left:2rem}.content-page ul li,.content-page ol li{margin-bottom:.75rem;color:#555}.content-page strong{color:#333;font-weight:600}.content-page em{font-style:italic}.content-page .intro{font-size:1.125rem;color:#666;margin-bottom:2rem}.content-page .highlight-box{background:#346df10d;border-left:4px solid #346df1;padding:1.5rem;margin:2rem 0;border-radius:.3rem}.content-page .highlight-box p:last-child{margin-bottom:0}.content-page .warning-box{background:#ff3e000d;border-left:4px solid #ff3e00;padding:1.5rem;margin:2rem 0;border-radius:.3rem}.content-page .warning-box p:last-child{margin-bottom:0}.content-page .contact-info{background:#e8e8e8;padding:1.5rem;border-radius:.5rem;margin:2rem 0}.content-page .contact-info p{margin-bottom:.5rem;color:#333}.content-page .contact-info p:last-child{margin-bottom:0}.content-page .contact-info strong{display:inline-block;min-width:80px}@media (max-width: 768px){.content-page{padding:2rem 1rem}}.step-heading{margin-bottom:1.5rem}.step-heading h3{margin:0 0 .25rem;font-size:1.25rem;color:#333}.step-heading .step-description{margin:0;color:#666;font-size:1rem}.continue-section{padding-top:1.5rem;border-top:1px solid #ddd}.btn-lg{padding:1rem 2rem;font-size:1.125rem}.section-separator{padding-bottom:1.5rem;border-bottom:1px solid #ddd}.section-separator:last-of-type{border-bottom:none}.shop-page-header{margin-bottom:2rem}.shop-page-header h1{margin:0 0 .5rem;font-size:2rem;color:#333}.shop-page-header p{margin:0;color:#666;font-size:1.125rem}.empty-state{text-align:center;padding:3rem 2rem}.empty-state p{color:#666;font-size:1.125rem;margin-bottom:1rem}.empty-state p:last-child{margin-bottom:0}.empty-state .note{font-size:.875rem;color:#999}.shop-layout{min-height:100vh;display:flex;flex-direction:column;justify-content:flex-start;align-items:stretch;flex-wrap:nowrap}.shop-header{background:#346df1;color:#fff;padding:1rem 0}.shop-header h1{margin:0 0 1rem;font-size:1.5rem}.shop-header nav{display:flex;flex-direction:row;justify-content:flex-start;align-items:center;flex-wrap:nowrap;gap:1.5rem;flex-wrap:wrap}.shop-header a{color:#fff;text-decoration:none;padding:.5rem 1rem;border-radius:.3rem;transition:all .2s ease-in}.shop-header a:hover{background-color:#ffffff1a}.shop-content{flex:1;padding:2rem 0;background:#fffaf0}.shop-footer{background:#f5f5f5;padding:2rem 0;text-align:center;color:#666;margin-top:auto}.shop-footer p{margin:0;font-size:.875rem}.product-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:2rem}@media (max-width: 768px){.product-grid{grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:1rem}}.product-card{display:block;background:#fff;border-radius:.5rem;overflow:hidden;box-shadow:0 2px 4px #0000001a;transition:all .2s ease-in;text-decoration:none;color:inherit}.product-card:hover{transform:translateY(-4px);box-shadow:0 4px 8px #0000001a}.product-image,.product-placeholder{width:100%;aspect-ratio:1;object-fit:cover}.product-placeholder{display:flex;flex-direction:row;justify-content:center;align-items:center;flex-wrap:nowrap;background:#f5f5f5;color:#666}.product-info{padding:1.5rem}.product-info h3{margin:0 0 .5rem;font-size:1.25rem;color:#333}.product-description{margin:0 0 1rem;color:#666;font-size:.9rem;line-height:1.5;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.product-price{margin:0;font-size:1.5rem;font-weight:600;color:#333}.hazmat-badge{display:inline-block;margin-top:.5rem;padding:.25rem 1rem;background:#fff3cd;color:#856404;border-radius:.3rem;font-size:.75rem;font-weight:600}.product-detail{display:grid;grid-template-columns:1fr 1fr;gap:3rem}@media (max-width: 768px){.product-detail{grid-template-columns:1fr;gap:2rem}}.product-images .featured-image{width:100%;aspect-ratio:1;object-fit:cover;border-radius:.5rem;box-shadow:0 4px 8px #0000001a}.product-images .image-placeholder{width:100%;aspect-ratio:1;display:flex;flex-direction:row;justify-content:center;align-items:center;flex-wrap:nowrap;background:#f5f5f5;color:#666;border-radius:.5rem;font-size:1.125rem}.product-details h1{margin:0 0 1rem;font-size:2rem;color:#333}.product-details .product-price-large{font-size:1.75rem;font-weight:600;color:#346df1;margin-bottom:1.5rem}.product-details .product-description-full{color:#666;line-height:1.7;margin-bottom:2rem;font-size:1rem}.variant-selector{margin-bottom:2rem}.variant-selector h3{margin:0 0 1rem;font-size:1.125rem;color:#333}.variant-selector .variant-options{display:flex;flex-direction:row;justify-content:flex-start;align-items:center;flex-wrap:nowrap;gap:.5rem;flex-wrap:wrap}.variant-selector .variant-option{padding:.5rem 1rem;border:2px solid #ddd;border-radius:.3rem;background:#fff;cursor:pointer;transition:all .2s ease-in}.variant-selector .variant-option:hover{border-color:#346df1}.variant-selector .variant-option.selected{border-color:#346df1;background:#346df11a}.variant-selector .variant-option.out-of-stock{opacity:.5;cursor:not-allowed}.add-to-cart-section{display:flex;flex-direction:row;justify-content:flex-start;align-items:flex-end;flex-wrap:nowrap;gap:1rem}@media (max-width: 576px){.add-to-cart-section{flex-direction:column;align-items:stretch}}.add-to-cart-section .quantity-input input{width:80px}@media (max-width: 576px){.add-to-cart-section .quantity-input input{width:100%}}.stock-info{margin-top:1rem;padding:.5rem 1rem;background:#f5f5f5;border-radius:.3rem;font-size:.875rem;color:#666}.stock-info.in-stock{background:#4caf501a;color:#2d682f}.stock-info.low-stock{background:#fff3cd;color:#856404}.stock-info.out-of-stock{background:#ff3e001a;color:#cc3200}.cart-header{margin-bottom:2rem}.cart-header h1{margin-bottom:.5rem}.cart-content{display:grid;grid-template-columns:1fr 350px;gap:2rem}@media (max-width: 968px){.cart-content{grid-template-columns:1fr}}.cart-items{display:flex;flex-direction:column;gap:1rem}.cart-item{display:grid;grid-template-columns:75px 1fr auto auto;gap:1rem;padding:1rem;border-bottom:1px solid #ddd}@media (max-width: 768px){.cart-item{grid-template-columns:60px 1fr;gap:.5rem}.cart-item .item-quantity,.cart-item .item-total,.cart-item .item-actions{grid-column:1/-1}}.item-image{display:block;text-decoration:none;transition:all .2s ease-in;width:75px;height:75px}.item-image:hover img{opacity:.8}.item-image img,.item-image .image-placeholder{width:100%;height:100%;object-fit:cover;border-radius:.3rem;border:1px solid #ddd}.item-image .image-placeholder{display:flex;align-items:center;justify-content:center;background-color:#f5f5f5;color:#666;font-size:.875rem}.item-details{flex:1;min-width:0}.item-details h3{margin:0 0 .25rem;font-size:1.125rem}.item-details h3 a{color:#333;text-decoration:none}.item-details h3 a:hover{color:#346df1}.item-details .item-sku{margin:0 0 .25rem;font-size:.875rem;color:#666}.item-details .item-price{margin:0;font-weight:500}.item-quantity{display:flex;flex-direction:column;gap:.25rem;align-items:center}.item-quantity input{width:50px;padding:.25rem .5rem;border:1px solid #ddd;border-radius:0;font-size:1rem;text-align:center}.item-quantity input:focus{outline:2px solid #346df1;outline-offset:0}.item-total{display:flex;flex-direction:column;align-items:flex-end;text-align:right}.item-total .total-price{margin:0;font-size:1.125rem;font-weight:700;color:#346df1}.item-actions{display:flex;align-items:flex-start}.item-actions .btn-sm{padding:.25rem .5rem;font-size:.875rem}.cart-summary{height:fit-content;position:sticky;top:1.5rem}.cart-summary h2{margin:0 0 1.5rem;font-size:1.25rem}.cart-summary .summary-row{display:flex;justify-content:space-between;padding:.5rem 0}.cart-summary .summary-row.total{margin-top:1rem;padding-top:1rem;font-size:1.125rem;font-weight:700;border-top:2px solid #ddd;border-bottom:none}.cart-summary .btn-block{margin-top:1.5rem}.cart-summary .guest-info{margin-top:.5rem;text-align:center;font-size:.875rem;color:#666}.empty-cart{text-align:center;padding:3rem}.empty-cart p{font-size:1.25rem;color:#666;margin-bottom:1.5rem}.unlock-container{min-height:100vh;display:flex;flex-direction:row;justify-content:center;align-items:center;flex-wrap:nowrap;background:linear-gradient(135deg,#667eea,#764ba2);padding:2rem}.unlock-card{background:#fff;padding:2rem;border-radius:.5rem;box-shadow:0 8px 16px #0000001a;max-width:400px;width:100%}.unlock-card h1{margin:0 0 .5rem;font-size:1.5rem;color:#333}.unlock-card .description{color:#666;margin-bottom:1.5rem;line-height:1.5}.unlock-card .error-message{background-color:#ff3e001a;border:1px solid #ff3e00;color:#ff3e00;padding:1rem;border-radius:.3rem;margin-bottom:1rem;font-size:.875rem}.unlock-card .form-input{font-size:1rem}.unlock-card .form-input:focus{border-color:#667eea;box-shadow:0 0 0 3px #667eea1a}.unlock-card .submit-button{width:100%;padding:1rem;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;border:none;border-radius:.3rem;font-size:1rem;font-weight:600;cursor:pointer;transition:opacity .2s}.unlock-card .submit-button:hover:not(:disabled){opacity:.9}.unlock-card .submit-button:disabled{opacity:.6;cursor:not-allowed}.unlock-card .help-text{margin-top:1.5rem;text-align:center}.unlock-card .help-text a{color:#346df1;text-decoration:none}.unlock-card .help-text a:hover{text-decoration:underline}html{background-color:#556b2f}body{margin:0;min-height:100vh}.container{max-width:1024px;margin:0 auto;padding:0 1rem}@media (max-width: 767px){.container{padding:0}}iframe{background:#ccc;border:1px solid #ccc;height:10rem;width:100%;border-radius:.5rem;filter:invert(1)}.root-layout.svelte-1yh70up{display:contents}
