body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background:linear-gradient(135deg,#f5f7fa,#e3eaf3);color:#1f2937;overflow-x:hidden}.App{min-height:100vh;width:100%}a,.nav-logo{text-decoration:none;color:inherit}.navbar{background:#fff;box-shadow:0 4px 6px -1px #0000001a;position:sticky;top:0;z-index:1000;width:100%}.nav-container{max-width:1280px;margin:0 auto;padding:.75rem 1rem;display:flex;justify-content:space-between;align-items:center}.nav-logo{display:flex;align-items:center;gap:.5rem;cursor:pointer;font-size:clamp(1.25rem,4vw,1.5rem);font-weight:700}.logo-icon{background:linear-gradient(135deg,#4f46e5,#3b82f6);color:#fff;padding:.5rem;border-radius:.75rem;display:flex;align-items:center;justify-content:center;flex-shrink:0}.logo-text{background:linear-gradient(135deg,#4f46e5,#3b82f6);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;display:none}.nav-links{display:flex;align-items:center;gap:1rem}.nav-link{background:none;border:none;color:#4b5563;font-size:.875rem;font-weight:500;cursor:pointer;transition:color .3s;padding:.5rem .75rem;white-space:nowrap}.cart-badge{position:absolute;top:-8px;right:-8px;background:#ef4444;color:#fff;font-size:.65rem;font-weight:700;padding:.15rem .4rem;border-radius:9999px;min-width:1.125rem;text-align:center}.user-menu{display:flex;align-items:center;gap:.75rem}.user-name{font-weight:500;color:#1f2937;font-size:.875rem;display:none}.btn-logout{background:none;border:none;color:#ef4444;font-size:.875rem;font-weight:500;cursor:pointer;padding:.5rem .75rem}.btn-primary{background:linear-gradient(135deg,#4f46e5,#3b82f6);color:#fff;border:none;padding:.5rem 1rem;border-radius:.75rem;font-weight:600;cursor:pointer;transition:transform .2s,box-shadow .2s;font-size:.875rem;white-space:nowrap}.mobile-menu-btn{display:flex;align-items:center;justify-content:center;background:none;border:none;font-size:1.5rem;cursor:pointer;color:#1f2937;padding:.5rem}.mobile-menu{display:block;padding:1rem;background:#fff;border-top:1px solid #e5e7eb}.main-content{max-width:1280px;margin:0 auto;padding:1rem;min-height:calc(100vh - 80px);width:100%}.hero-section{background:linear-gradient(135deg,#4f46e5,#3b82f6);color:#fff;padding:2rem 1.5rem;border-radius:1.5rem;margin-bottom:1.5rem;box-shadow:0 20px 40px #4f46e54d}.hero-section h1{font-size:clamp(1.75rem,6vw,3rem);margin-bottom:1rem;font-weight:700;line-height:1.2}.hero-section p{font-size:clamp(1rem,3vw,1.25rem);margin-bottom:1.5rem;opacity:.9;line-height:1.5}.hero-features{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:.75rem}.feature-item{background:#fff3;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);padding:.75rem 1rem;border-radius:.75rem;display:flex;align-items:center;gap:.5rem;font-size:.875rem}.search-filter-section{background:#fff;padding:1rem;border-radius:1.25rem;margin-bottom:1.5rem;box-shadow:0 4px 6px #0000000d}.search-box{position:relative;flex:1;margin-bottom:1rem;width:100%}.search-box svg{position:absolute;left:1rem;top:50%;transform:translateY(-50%);color:#9ca3af;pointer-events:none}.search-box input{width:100%;padding:.875rem 1rem .875rem 3rem;border:1px solid #d1d5db;border-radius:.75rem;font-size:.875rem;transition:all .3s}.filter-buttons{display:grid;grid-template-columns:repeat(auto-fit,minmax(80px,1fr));gap:.5rem}.filter-btn{padding:.625rem 1rem;border:none;border-radius:.75rem;font-weight:600;cursor:pointer;transition:all .3s;background:#f3f4f6;color:#4b5563;font-size:.875rem;white-space:nowrap}.projects-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:1.25rem;margin-bottom:2rem}.project-card{background:#fff;border-radius:1.25rem;overflow:hidden;box-shadow:0 4px 6px #0000000d;transition:all .3s;cursor:pointer;height:100%;display:flex;flex-direction:column}.project-image{height:10rem;background:linear-gradient(135deg,#818cf8,#6366f1);display:flex;align-items:center;justify-content:center;color:#fff;flex-shrink:0}.project-content{padding:1.25rem;display:flex;flex-direction:column;flex-grow:1}.project-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:.75rem;gap:.5rem}.category-badge{background:#dbeafe;color:#1e40af;padding:.375rem .75rem;border-radius:9999px;font-size:.75rem;font-weight:600;white-space:nowrap}.rating{display:flex;align-items:center;gap:.25rem;font-size:.875rem;font-weight:600;color:#4b5563;flex-shrink:0}.project-title{font-size:1.125rem;font-weight:700;margin-bottom:.5rem;color:#1f2937;line-height:1.3}.project-description{color:#6b7280;margin-bottom:1rem;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;font-size:.875rem;line-height:1.5;flex-grow:1}.project-footer{display:flex;justify-content:space-between;align-items:center;padding-top:1rem;border-top:1px solid #f3f4f6;gap:1rem;margin-top:auto}.price{font-size:clamp(1.5rem,4vw,2rem);font-weight:700;color:#4f46e5;white-space:nowrap}.btn-add-cart{background:linear-gradient(135deg,#4f46e5,#3b82f6);color:#fff;border:none;padding:.625rem 1rem;border-radius:.75rem;font-weight:600;cursor:pointer;transition:all .3s;font-size:.875rem;white-space:nowrap}.no-projects{text-align:center;padding:3rem 1rem;color:#9ca3af}.no-projects h3{font-size:clamp(1.25rem,4vw,1.5rem);margin-bottom:.5rem;color:#4b5563}.auth-page{display:flex;justify-content:center;align-items:center;min-height:calc(100vh - 200px);padding:1rem}.auth-card{background:#fff;padding:2rem 1.5rem;border-radius:1.5rem;box-shadow:0 20px 40px #0000001a;width:100%;max-width:450px}.auth-header h2{font-size:clamp(1.5rem,5vw,2rem);margin-bottom:.5rem;color:#1f2937}.auth-header p{color:#6b7280;font-size:.875rem}.auth-form{margin-bottom:1.5rem}.form-group{margin-bottom:1.25rem}.form-group label{display:block;font-weight:600;margin-bottom:.5rem;color:#374151;font-size:.875rem}.form-group input,.form-group textarea,.form-group select{width:100%;padding:.875rem 1rem;border:1px solid #d1d5db;border-radius:.75rem;font-size:.875rem;transition:all .3s}.btn-submit{width:100%;background:linear-gradient(135deg,#4f46e5,#3b82f6);color:#fff;border:none;padding:1rem;border-radius:.75rem;font-size:.9375rem;font-weight:600;cursor:pointer;transition:all .3s}.auth-footer{text-align:center;color:#6b7280;font-size:.875rem}.error-message{background:#fee2e2;border:1px solid #fecaca;color:#991b1b;padding:.875rem 1rem;border-radius:.75rem;margin-bottom:1rem;font-size:.875rem}.success-message{background:#d1fae5;border:1px solid #a7f3d0;color:#065f46;padding:.875rem 1rem;border-radius:.75rem;margin-bottom:1rem;font-size:.875rem}.cart-page{max-width:900px;margin:0 auto;padding:0 1rem}.cart-page h2{font-size:clamp(1.5rem,5vw,2rem);margin-bottom:1.5rem;color:#1f2937}.empty-cart{background:#fff;padding:3rem 1.5rem;border-radius:1.5rem;text-align:center;box-shadow:0 4px 6px #0000000d}.empty-cart h3{font-size:clamp(1.25rem,4vw,1.5rem);margin-bottom:.5rem;color:#4b5563}.empty-cart p{color:#9ca3af;font-size:.875rem}.cart-items{background:#fff;padding:1rem;border-radius:1.25rem;box-shadow:0 4px 6px #0000000d}.cart-item{display:flex;flex-direction:column;gap:1rem;padding:1rem;border-bottom:1px solid #f3f4f6}.item-info h3{font-size:1rem;font-weight:600;margin-bottom:.25rem;color:#1f2937}.item-actions{display:flex;justify-content:space-between;align-items:center;gap:1rem}.item-price{font-size:1.125rem;font-weight:700;color:#4f46e5}.btn-remove{background:#fee2e2;color:#991b1b;border:none;padding:.5rem 1rem;border-radius:.5rem;font-weight:600;cursor:pointer;transition:all .3s;font-size:.875rem}.summary-row{display:flex;justify-content:space-between;align-items:center;margin-bottom:1.5rem;font-size:1.125rem;font-weight:600;color:#1f2937}.total-amount{font-size:clamp(1.5rem,5vw,2rem);color:#4f46e5}.btn-checkout{width:100%;background:linear-gradient(135deg,#4f46e5,#3b82f6);color:#fff;border:none;padding:1.125rem;border-radius:.75rem;font-size:1rem;font-weight:600;cursor:pointer;transition:all .3s}.admin-dashboard{max-width:1200px;margin:0 auto;padding:0 1rem}.admin-dashboard h2{font-size:clamp(1.5rem,5vw,2rem);margin-bottom:1.5rem;color:#1f2937}.stats-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1.25rem;margin-bottom:2rem}.stat-card{background:#fff;padding:1.5rem;border-radius:1.25rem;box-shadow:0 4px 6px #0000000d;display:flex;align-items:center;gap:1.25rem;transition:all .3s}.stat-icon{width:3.5rem;height:3.5rem;border-radius:1rem;display:flex;align-items:center;justify-content:center;color:#fff;flex-shrink:0}.stat-info h3{font-size:clamp(1.5rem,4vw,2rem);font-weight:700;margin-bottom:.25rem;color:#1f2937}.quick-actions{background:#fff;padding:1.5rem;border-radius:1.25rem;box-shadow:0 4px 6px #0000000d}.quick-actions h3{font-size:1.25rem;margin-bottom:1.25rem;color:#1f2937}.actions-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:1rem}.action-btn{background:linear-gradient(135deg,#4f46e5,#3b82f6);color:#fff;border:none;padding:1.25rem;border-radius:1rem;font-size:.9375rem;font-weight:600;cursor:pointer;transition:all .3s;display:flex;flex-direction:column;align-items:center;gap:.75rem}.action-btn svg{width:1.75rem;height:1.75rem}.admin-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1.5rem;flex-wrap:wrap;gap:1rem}.admin-header h2{margin:0;font-size:clamp(1.5rem,5vw,2rem)}.btn-back{background:#f3f4f6;color:#1f2937;border:none;padding:.625rem 1.25rem;border-radius:.75rem;font-weight:600;cursor:pointer;transition:all .3s;font-size:.875rem}.projects-table,.orders-table{background:#fff;border-radius:1.25rem;box-shadow:0 4px 6px #0000000d;overflow:hidden;overflow-x:auto}table{width:100%;border-collapse:collapse;min-width:600px}th{text-align:left;padding:1rem;font-weight:600;color:#374151;border-bottom:2px solid #e5e7eb;font-size:.875rem;white-space:nowrap}td{padding:1rem;border-bottom:1px solid #f3f4f6;font-size:.875rem}.project-cell strong,.customer-cell strong{color:#1f2937;font-weight:600;font-size:.875rem}.project-cell small,.customer-cell small{color:#6b7280;font-size:.75rem}.btn-edit,.btn-delete,.btn-view{background:none;border:none;font-size:1.125rem;cursor:pointer;padding:.375rem;border-radius:.375rem;transition:all .3s}.no-data{text-align:center;padding:2.5rem 1rem;color:#9ca3af;font-size:.875rem}.modal-header{display:flex;justify-content:space-between;align-items:center;padding:1.25rem;border-bottom:1px solid #e5e7eb}.modal-header h3{font-size:clamp(1.25rem,4vw,1.5rem);color:#1f2937;margin:0}.btn-close{background:#f3f4f6;color:#1f2937;border:none;width:2rem;height:2rem;border-radius:.5rem;font-size:1.25rem;cursor:pointer;transition:all .3s;display:flex;align-items:center;justify-content:center;flex-shrink:0}.admin-form{padding:1.25rem}.form-row{display:grid;grid-template-columns:1fr;gap:1rem}.modal-footer{display:flex;justify-content:flex-end;gap:.75rem;padding:1.25rem;border-top:1px solid #e5e7eb;flex-wrap:wrap}.btn-secondary{background:#f3f4f6;color:#1f2937;border:none;padding:.75rem 1.25rem;border-radius:.75rem;font-weight:600;cursor:pointer;transition:all .3s;font-size:.875rem}.info-message{background:#dbeafe;border:1px solid #bfdbfe;color:#1e40af;padding:.875rem 1rem;border-radius:.75rem;margin-bottom:1rem;font-size:.875rem}.file-upload-section{background:#f9fafb;padding:1.25rem;border-radius:.75rem;margin-top:1rem}.file-upload-section h4{margin-bottom:1rem;color:#1f2937;font-size:1rem}.orders-page{max-width:1000px;margin:0 auto;padding:0 1rem}.orders-page h2{font-size:clamp(1.5rem,5vw,2rem);margin-bottom:1.5rem;color:#1f2937}.empty-orders{background:#fff;padding:3rem 1.5rem;border-radius:1.5rem;text-align:center;box-shadow:0 4px 6px #0000000d}.empty-orders h3{font-size:clamp(1.25rem,4vw,1.5rem);margin-bottom:.5rem;color:#4b5563}.empty-orders p{color:#9ca3af;font-size:.875rem}.order-card{background:#fff;padding:1.25rem;border-radius:1.25rem;box-shadow:0 4px 6px #0000000d}.order-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:1.25rem;gap:1rem;flex-wrap:wrap}.order-header h3{font-size:1rem;font-weight:600;margin-bottom:.25rem;color:#1f2937}.status-badge{padding:.5rem 1rem;border-radius:9999px;font-size:.75rem;font-weight:600;text-transform:capitalize;white-space:nowrap}.order-projects{margin-bottom:1.25rem}.project-details h4{font-size:.9375rem;font-weight:600;margin-bottom:.25rem;color:#1f2937}.btn-download{background:#4f46e5;color:#fff;text-decoration:none;padding:.5rem .875rem;border-radius:.5rem;font-size:.8125rem;font-weight:600;transition:all .3s;display:inline-block;white-space:nowrap}.order-footer{display:flex;justify-content:space-between;align-items:center;padding-top:1rem;border-top:1px solid #f3f4f6;color:#6b7280;font-size:.875rem}.order-total{font-size:clamp(1.25rem,4vw,1.5rem);font-weight:700;color:#4f46e5}.loading{text-align:center;padding:3rem 1.5rem;font-size:1.125rem;color:#6b7280}.loading-spinner{width:3rem;height:3rem;border:4px solid #f3f4f6;border-top-color:#4f46e5;border-radius:50%;animation:spin 1s linear infinite;margin:0 auto 1rem}@keyframes spin{to{transform:rotate(360deg)}}.not-found{display:flex;justify-content:center;align-items:center;min-height:calc(100vh - 200px);padding:2rem 1rem}.not-found-content{text-align:center;max-width:500px}.not-found h1{font-size:clamp(5rem,15vw,8rem);font-weight:700;background:linear-gradient(135deg,#4f46e5,#3b82f6);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;margin-bottom:1rem;line-height:1}.not-found h2{font-size:clamp(1.5rem,4vw,2rem);color:#1f2937;margin-bottom:1rem}.not-found p{color:#6b7280;font-size:1rem;margin-bottom:2rem}@media(min-width:640px){.logo-text,.user-name{display:block}.cart-item{flex-direction:row;align-items:center}.item-actions{flex-direction:row}.form-row{grid-template-columns:1fr 1fr}.main-content{padding:2rem}.hero-section{padding:3rem 2rem}.search-filter-section{padding:1.5rem}.order-project{flex-wrap:nowrap}}@media(min-width:768px){.nav-container{padding:1rem 2rem}.nav-links.desktop{display:flex}.mobile-menu-btn,.mobile-menu{display:none}.nav-link{font-size:1rem;padding:.5rem 1rem}.btn-primary{font-size:1rem;padding:.625rem 1.5rem}.hero-section h1{font-size:3.5rem}.search-filter-section{display:flex;gap:1rem;align-items:center}.search-box{margin-bottom:0}.filter-buttons{display:flex;flex-wrap:nowrap}.filter-btn{padding:.75rem 1.5rem;font-size:1rem}.projects-grid{grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:1.5rem}.cart-summary{padding:2rem}.stat-icon{width:4rem;height:4rem}.stat-icon svg{width:2rem;height:2rem}.action-btn{padding:1.5rem;font-size:1rem}.action-btn svg{width:2rem;height:2rem}.admin-header,.modal-footer{flex-wrap:nowrap}th,td{padding:1rem 1.5rem;font-size:.9375rem}}@media(min-width:1024px){.projects-grid{grid-template-columns:repeat(3,1fr)}.stats-grid{grid-template-columns:repeat(4,1fr)}.hero-features{grid-template-columns:repeat(3,1fr)}.actions-grid{grid-template-columns:repeat(2,1fr)}}@media print{.navbar,.mobile-menu,.btn-add-cart,.btn-checkout,.action-buttons{display:none}body{background:#fff}.project-card,.order-card,.stat-card{box-shadow:none;border:1px solid #e5e7eb}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}@media(prefers-contrast:high){.btn-primary,.btn-add-cart,.btn-checkout{border:2px solid currentColor}}button:focus-visible,a:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible{outline:3px solid #4f46e5;outline-offset:2px}@media(hover:none)and (pointer:coarse){button,a,.nav-link,.filter-btn{min-height:44px;min-width:44px}}@media(max-width:767px)and (orientation:landscape){.hero-section{padding:1.5rem}.hero-section h1{font-size:1.75rem}.hero-section p{font-size:.875rem}.hero-features{grid-template-columns:repeat(3,1fr)}}@media(max-width:374px){.hero-section h1{font-size:1.5rem}.feature-item{font-size:.75rem;padding:.5rem .75rem}.filter-buttons{grid-template-columns:repeat(2,1fr)}.projects-grid{grid-template-columns:1fr}}@media(min-width:1280px){.main-content{padding:2.5rem}}@media(min-width:1536px){.nav-container,.main-content{max-width:1536px}.hero-section h1{font-size:4rem}}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background:#f1f1f1;border-radius:4px}::-webkit-scrollbar-thumb{background:#888;border-radius:4px}::-webkit-scrollbar-thumb:hover{background:#555}::selection{background-color:#4f46e5;color:#fff}::-moz-selection{background-color:#4f46e5;color:#fff}*{margin:0;padding:0;box-sizing:border-box}body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background:linear-gradient(135deg,#f5f7fa,#e3eaf3);color:#1f2937}.App{min-height:100vh}.navbar{background:#fff;box-shadow:0 4px 6px -1px #0000001a;position:sticky;top:0;z-index:1000}.nav-container{max-width:1280px;margin:0 auto;padding:1rem 2rem;display:flex;justify-content:space-between;align-items:center}.nav-logo{display:flex;align-items:center;gap:.5rem;cursor:pointer;font-size:1.5rem;font-weight:700}.logo-icon{background:linear-gradient(135deg,#4f46e5,#3b82f6);color:#fff;padding:.5rem;border-radius:.75rem;display:flex;align-items:center;justify-content:center}.logo-text{background:linear-gradient(135deg,#4f46e5,#3b82f6);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.nav-links{display:flex;align-items:center;gap:1.5rem}.nav-links.desktop{display:none}.nav-link{background:none;border:none;color:#4b5563;font-size:1rem;font-weight:500;cursor:pointer;transition:color .3s;padding:.5rem 1rem}.nav-link:hover{color:#4f46e5}.cart-link{position:relative}.cart-badge{position:absolute;top:-8px;right:-8px;background:#ef4444;color:#fff;font-size:.75rem;font-weight:700;padding:.25rem .5rem;border-radius:9999px;min-width:1.25rem;text-align:center}.user-menu{display:flex;align-items:center;gap:1rem}.user-name{font-weight:500;color:#1f2937}.btn-logout{background:none;border:none;color:#ef4444;font-size:1rem;font-weight:500;cursor:pointer;padding:.5rem 1rem}.btn-logout:hover{color:#dc2626}.btn-primary{background:linear-gradient(135deg,#4f46e5,#3b82f6);color:#fff;border:none;padding:.625rem 1.5rem;border-radius:.75rem;font-weight:600;cursor:pointer;transition:transform .2s,box-shadow .2s}.btn-primary:hover{transform:translateY(-2px);box-shadow:0 10px 20px #4f46e54d}.mobile-menu-btn{display:block;background:none;border:none;font-size:1.5rem;cursor:pointer;color:#1f2937}.mobile-menu{display:block;padding:1rem 2rem;background:#fff;border-top:1px solid #e5e7eb}.mobile-link{display:block;width:100%;text-align:left;padding:.75rem 1rem;background:none;border:none;color:#4b5563;font-size:1rem;cursor:pointer;border-radius:.5rem;transition:background .2s}.mobile-link:hover{background:#f3f4f6}.mobile-link.logout{color:#ef4444}.main-content{max-width:1280px;margin:0 auto;padding:2rem;min-height:calc(100vh - 80px)}.hero-section{background:linear-gradient(135deg,#4f46e5,#3b82f6);color:#fff;padding:3rem 2rem;border-radius:1.5rem;margin-bottom:2rem;box-shadow:0 20px 40px #4f46e54d}.hero-section h1{font-size:3rem;margin-bottom:1rem;font-weight:700}.hero-section p{font-size:1.25rem;margin-bottom:2rem;opacity:.9}.hero-features{display:flex;flex-wrap:wrap;gap:1rem}.feature-item{background:#fff3;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);padding:.75rem 1.5rem;border-radius:.75rem;display:flex;align-items:center;gap:.5rem;font-size:1rem}.search-filter-section{background:#fff;padding:1.5rem;border-radius:1.25rem;margin-bottom:2rem;box-shadow:0 4px 6px #0000000d}.search-box{position:relative;flex:1;margin-bottom:1rem}.search-box svg{position:absolute;left:1rem;top:50%;transform:translateY(-50%);color:#9ca3af}.search-box input{width:100%;padding:.875rem 1rem .875rem 3rem;border:1px solid #d1d5db;border-radius:.75rem;font-size:1rem;transition:all .3s}.search-box input:focus{outline:none;border-color:#4f46e5;box-shadow:0 0 0 3px #4f46e51a}.filter-buttons{display:flex;flex-wrap:wrap;gap:.5rem}.filter-btn{padding:.75rem 1.5rem;border:none;border-radius:.75rem;font-weight:600;cursor:pointer;transition:all .3s;background:#f3f4f6;color:#4b5563}.filter-btn:hover{background:#e5e7eb}.filter-btn.active{background:linear-gradient(135deg,#4f46e5,#3b82f6);color:#fff;box-shadow:0 4px 12px #4f46e54d}.projects-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:1.5rem;margin-bottom:2rem}.project-card{background:#fff;border-radius:1.25rem;overflow:hidden;box-shadow:0 4px 6px #0000000d;transition:all .3s;cursor:pointer}.project-card:hover{transform:translateY(-5px);box-shadow:0 20px 40px #0000001a}.project-image{height:12rem;background:linear-gradient(135deg,#818cf8,#6366f1);display:flex;align-items:center;justify-content:center;color:#fff}.project-content{padding:1.5rem}.project-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:.75rem}.category-badge{background:#dbeafe;color:#1e40af;padding:.375rem .75rem;border-radius:9999px;font-size:.875rem;font-weight:600}.rating{display:flex;align-items:center;gap:.25rem;font-size:.875rem;font-weight:600;color:#4b5563}.project-title{font-size:1.25rem;font-weight:700;margin-bottom:.5rem;color:#1f2937}.project-description{color:#6b7280;margin-bottom:1rem;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.project-footer{display:flex;justify-content:space-between;align-items:center;padding-top:1rem;border-top:1px solid #f3f4f6}.price{font-size:2rem;font-weight:700;color:#4f46e5}.btn-add-cart{background:linear-gradient(135deg,#4f46e5,#3b82f6);color:#fff;border:none;padding:.75rem 1.5rem;border-radius:.75rem;font-weight:600;cursor:pointer;transition:all .3s}.btn-add-cart:hover{transform:translateY(-2px);box-shadow:0 10px 20px #4f46e54d}.no-projects{text-align:center;padding:4rem 2rem;color:#9ca3af}.no-projects svg{margin-bottom:1rem}.no-projects h3{font-size:1.5rem;margin-bottom:.5rem;color:#4b5563}.auth-page{display:flex;justify-content:center;align-items:center;min-height:calc(100vh - 200px);padding:2rem}.auth-card{background:#fff;padding:2.5rem;border-radius:1.5rem;box-shadow:0 20px 40px #0000001a;width:100%;max-width:450px}.auth-header{text-align:center;margin-bottom:2rem}.auth-icon{background:linear-gradient(135deg,#4f46e5,#3b82f6);color:#fff;width:4rem;height:4rem;border-radius:1.25rem;display:flex;align-items:center;justify-content:center;margin:0 auto 1rem}.auth-header h2{font-size:2rem;margin-bottom:.5rem;color:#1f2937}.auth-header p{color:#6b7280}.auth-form,.form-group{margin-bottom:1.5rem}.form-group label{display:block;font-weight:600;margin-bottom:.5rem;color:#374151}.form-group input,.form-group textarea,.form-group select{width:100%;padding:.875rem 1rem;border:1px solid #d1d5db;border-radius:.75rem;font-size:1rem;transition:all .3s}.form-group input:focus,.form-group textarea:focus,.form-group select:focus{outline:none;border-color:#4f46e5;box-shadow:0 0 0 3px #4f46e51a}.form-group input:disabled,.form-group textarea:disabled,.form-group select:disabled{background:#f9fafb;cursor:not-allowed}.btn-submit{width:100%;background:linear-gradient(135deg,#4f46e5,#3b82f6);color:#fff;border:none;padding:1rem;border-radius:.75rem;font-size:1rem;font-weight:600;cursor:pointer;transition:all .3s}.btn-submit:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 10px 20px #4f46e54d}.btn-submit:disabled{opacity:.6;cursor:not-allowed}.auth-footer{text-align:center;color:#6b7280}.link-btn{background:none;border:none;color:#4f46e5;font-weight:600;cursor:pointer;text-decoration:underline}.error-message{background:#fee2e2;border:1px solid #fecaca;color:#991b1b;padding:.875rem 1rem;border-radius:.75rem;margin-bottom:1rem}.success-message{background:#d1fae5;border:1px solid #a7f3d0;color:#065f46;padding:.875rem 1rem;border-radius:.75rem;margin-bottom:1rem}.cart-page{max-width:900px;margin:0 auto}.cart-page h2{font-size:2rem;margin-bottom:2rem;color:#1f2937}.empty-cart{background:#fff;padding:4rem 2rem;border-radius:1.5rem;text-align:center;box-shadow:0 4px 6px #0000000d}.empty-cart svg{color:#9ca3af;margin-bottom:1rem}.empty-cart h3{font-size:1.5rem;margin-bottom:.5rem;color:#4b5563}.empty-cart p{color:#9ca3af}.cart-content{display:flex;flex-direction:column;gap:1.5rem}.cart-items{background:#fff;padding:1.5rem;border-radius:1.25rem;box-shadow:0 4px 6px #0000000d}.cart-item{display:flex;justify-content:space-between;align-items:center;padding:1rem;border-bottom:1px solid #f3f4f6}.cart-item:last-child{border-bottom:none}.item-info h3{font-size:1.125rem;font-weight:600;margin-bottom:.25rem;color:#1f2937}.item-info p{color:#6b7280;font-size:.875rem}.item-actions{display:flex;align-items:center;gap:1.5rem}.item-price{font-size:1.25rem;font-weight:700;color:#4f46e5}.btn-remove{background:#fee2e2;color:#991b1b;border:none;padding:.5rem 1rem;border-radius:.5rem;font-weight:600;cursor:pointer;transition:all .3s}.btn-remove:hover{background:#fecaca}.cart-summary{background:#fff;padding:1.5rem;border-radius:1.25rem;box-shadow:0 4px 6px #0000000d}.summary-row{display:flex;justify-content:space-between;align-items:center;margin-bottom:1.5rem;font-size:1.25rem;font-weight:600;color:#1f2937}.total-amount{font-size:2rem;color:#4f46e5}.btn-checkout{width:100%;background:linear-gradient(135deg,#4f46e5,#3b82f6);color:#fff;border:none;padding:1.25rem;border-radius:.75rem;font-size:1.125rem;font-weight:600;cursor:pointer;transition:all .3s}.btn-checkout:hover{transform:translateY(-2px);box-shadow:0 10px 20px #4f46e54d}.admin-panel{max-width:800px;margin:0 auto}.admin-panel h2{font-size:2rem;margin-bottom:2rem;color:#1f2937}.admin-card{background:#fff;padding:2rem;border-radius:1.25rem;box-shadow:0 4px 6px #0000000d}.admin-form{display:flex;flex-direction:column;gap:1.5rem}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:1rem}.file-upload-section{background:#f9fafb;padding:1.5rem;border-radius:.75rem;margin-top:1rem}.file-upload-section h3{margin-bottom:1rem;color:#1f2937}.file-selected{color:#059669;font-size:.875rem;margin-top:.5rem;font-weight:500}.orders-page{max-width:1000px;margin:0 auto}.orders-page h2{font-size:2rem;margin-bottom:2rem;color:#1f2937}.empty-orders{background:#fff;padding:4rem 2rem;border-radius:1.5rem;text-align:center;box-shadow:0 4px 6px #0000000d}.empty-orders svg{color:#9ca3af;margin-bottom:1rem}.empty-orders h3{font-size:1.5rem;margin-bottom:.5rem;color:#4b5563}.empty-orders p{color:#9ca3af}.orders-list{display:flex;flex-direction:column;gap:1.5rem}.order-card{background:#fff;padding:1.5rem;border-radius:1.25rem;box-shadow:0 4px 6px #0000000d}.order-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:1.5rem}.order-header h3{font-size:1.125rem;font-weight:600;margin-bottom:.25rem;color:#1f2937}.order-date{color:#6b7280;font-size:.875rem}.status-badge{padding:.5rem 1rem;border-radius:9999px;font-size:.875rem;font-weight:600;text-transform:capitalize}.status-badge.completed{background:#d1fae5;color:#065f46}.status-badge.pending{background:#fef3c7;color:#92400e}.status-badge.failed{background:#fee2e2;color:#991b1b}.order-projects{margin-bottom:1.5rem}.order-project{display:flex;justify-content:space-between;align-items:center;padding:1rem;border-top:1px solid #f3f4f6;flex-wrap:wrap;gap:1rem}.order-project:first-child{border-top:none}.project-details h4{font-size:1rem;font-weight:600;margin-bottom:.25rem;color:#1f2937}.project-details p{color:#6b7280;font-size:.875rem}.download-buttons{display:flex;gap:.5rem;flex-wrap:wrap}.btn-download{background:#4f46e5;color:#fff;text-decoration:none;padding:.5rem 1rem;border-radius:.5rem;font-size:.875rem;font-weight:600;transition:all .3s;display:inline-block}.btn-download:hover{background:#4338ca;transform:translateY(-2px)}.order-footer{display:flex;justify-content:space-between;align-items:center;padding-top:1rem;border-top:1px solid #f3f4f6;color:#6b7280}.order-total{font-size:1.5rem;font-weight:700;color:#4f46e5}.loading{text-align:center;padding:4rem 2rem;font-size:1.25rem;color:#6b7280}.admin-dashboard{max-width:1200px;margin:0 auto}.admin-dashboard h2{font-size:2rem;margin-bottom:2rem;color:#1f2937}.stats-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:1.5rem;margin-bottom:3rem}.stat-card{background:#fff;padding:2rem;border-radius:1.25rem;box-shadow:0 4px 6px #0000000d;display:flex;align-items:center;gap:1.5rem;transition:all .3s}.stat-card:hover{transform:translateY(-5px);box-shadow:0 10px 20px #0000001a}.stat-icon{width:4rem;height:4rem;border-radius:1rem;display:flex;align-items:center;justify-content:center;color:#fff}.stat-icon.projects{background:linear-gradient(135deg,#4f46e5,#6366f1)}.stat-icon.orders{background:linear-gradient(135deg,#059669,#10b981)}.stat-icon.revenue{background:linear-gradient(135deg,#d97706,#f59e0b)}.stat-icon.pending{background:linear-gradient(135deg,#dc2626,#ef4444)}.stat-info h3{font-size:2rem;font-weight:700;margin-bottom:.5rem;color:#1f2937}.stat-info p{color:#6b7280;font-size:.875rem}.quick-actions{background:#fff;padding:2rem;border-radius:1.25rem;box-shadow:0 4px 6px #0000000d}.quick-actions h3{font-size:1.5rem;margin-bottom:1.5rem;color:#1f2937}.actions-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1rem}.action-btn{background:linear-gradient(135deg,#4f46e5,#3b82f6);color:#fff;border:none;padding:1.5rem;border-radius:1rem;font-size:1rem;font-weight:600;cursor:pointer;transition:all .3s;display:flex;flex-direction:column;align-items:center;gap:.75rem}.action-btn:hover{transform:translateY(-3px);box-shadow:0 10px 20px #4f46e54d}.action-btn svg{width:2rem;height:2rem}.admin-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:2rem;flex-wrap:wrap;gap:1rem}.admin-header h2{margin:0}.btn-back{background:#f3f4f6;color:#1f2937;border:none;padding:.75rem 1.5rem;border-radius:.75rem;font-weight:600;cursor:pointer;transition:all .3s}.btn-back:hover{background:#e5e7eb}.projects-table,.orders-table{background:#fff;border-radius:1.25rem;box-shadow:0 4px 6px #0000000d;overflow:hidden}table{width:100%;border-collapse:collapse}thead{background:#f9fafb}th{text-align:left;padding:1rem 1.5rem;font-weight:600;color:#374151;border-bottom:2px solid #e5e7eb}td{padding:1rem 1.5rem;border-bottom:1px solid #f3f4f6}tr:last-child td{border-bottom:none}tbody tr:hover{background:#f9fafb}.project-cell,.customer-cell{display:flex;flex-direction:column;gap:.25rem}.project-cell strong,.customer-cell strong{color:#1f2937;font-weight:600}.project-cell small,.customer-cell small{color:#6b7280;font-size:.875rem}.action-buttons{display:flex;gap:.5rem}.btn-edit,.btn-delete,.btn-view{background:none;border:none;font-size:1.25rem;cursor:pointer;padding:.5rem;border-radius:.5rem;transition:all .3s}.btn-edit:hover{background:#dbeafe}.btn-delete:hover{background:#fee2e2}.btn-view:hover{background:#f3f4f6}.status-badge.active{background:#d1fae5;color:#065f46}.status-badge.inactive{background:#fee2e2;color:#991b1b}.no-data{text-align:center;padding:3rem;color:#9ca3af}.modal-overlay{position:fixed;inset:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000;padding:1rem;overflow-y:auto}.modal-content{background:#fff;border-radius:1.25rem;width:100%;max-width:600px;max-height:90vh;overflow-y:auto;box-shadow:0 20px 40px #0003}.modal-header{display:flex;justify-content:space-between;align-items:center;padding:1.5rem;border-bottom:1px solid #e5e7eb}.modal-header h3{font-size:1.5rem;color:#1f2937;margin:0}.btn-close{background:#f3f4f6;color:#1f2937;border:none;width:2rem;height:2rem;border-radius:.5rem;font-size:1.25rem;cursor:pointer;transition:all .3s;display:flex;align-items:center;justify-content:center}.btn-close:hover{background:#e5e7eb}.admin-form{padding:1.5rem}.modal-footer{display:flex;justify-content:flex-end;gap:1rem;padding:1.5rem;border-top:1px solid #e5e7eb}.btn-secondary{background:#f3f4f6;color:#1f2937;border:none;padding:.75rem 1.5rem;border-radius:.75rem;font-weight:600;cursor:pointer;transition:all .3s}.btn-secondary:hover:not(:disabled){background:#e5e7eb}.btn-secondary:disabled{opacity:.6;cursor:not-allowed}.info-message{background:#dbeafe;border:1px solid #bfdbfe;color:#1e40af;padding:.875rem 1rem;border-radius:.75rem;margin-bottom:1rem}@media(max-width:768px){.projects-table,.orders-table{overflow-x:auto}table{min-width:800px}.admin-header{flex-direction:column;align-items:stretch}.admin-header h2{order:2}.btn-back{order:1}.admin-header .btn-primary{order:3}.stats-grid,.actions-grid{grid-template-columns:1fr}.modal-content{max-height:95vh}.nav-links.desktop{display:none}.mobile-menu-btn,.mobile-menu{display:block}.cart-item,.order-project{flex-wrap:wrap}}@media(min-width:769px){.nav-links.desktop{display:flex}.mobile-menu-btn,.mobile-menu{display:none}.hero-section h1{font-size:3.5rem}.search-filter-section{display:flex;gap:1rem;align-items:center}.search-box{margin-bottom:0}.cart-item,.order-project{flex-wrap:nowrap}}@media(min-width:1024px){.projects-grid{grid-template-columns:repeat(3,1fr)}}@media(max-width:767px){.hero-section h1{font-size:2rem}.hero-section p{font-size:1rem}.form-row{grid-template-columns:1fr}.item-actions{flex-direction:column;align-items:flex-start;gap:.5rem}.download-buttons{width:100%}.btn-download{flex:1;text-align:center}}body{margin:0;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}code{font-family:source-code-pro,Menlo,Monaco,Consolas,Courier New,monospace}
