:root{--primary-color: #2563eb;--primary-hover: #1d4ed8;--secondary-color: #64748b;--accent-color: #10b981;--warning-color: #f59e0b;--danger-color: #ef4444;--background-color: #ffffff;--surface-color: #f8fafc;--text-primary: #0f172a;--text-secondary: #475569;--text-muted: #94a3b8;--border-color: #e2e8f0;--shadow-sm: 0 1px 2px 0 rgb(0 0 0 / .05);--shadow-md: 0 4px 6px -1px rgb(0 0 0 / .1), 0 2px 4px -2px rgb(0 0 0 / .1);--shadow-lg: 0 10px 15px -3px rgb(0 0 0 / .1), 0 4px 6px -4px rgb(0 0 0 / .1);--shadow-xl: 0 20px 25px -5px rgb(0 0 0 / .1), 0 8px 10px -6px rgb(0 0 0 / .1);--radius-sm: .375rem;--radius-md: .5rem;--radius-lg: .75rem;--radius-xl: 1rem}*{margin:0;padding:0;box-sizing:border-box}body{font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;line-height:1.6;color:var(--text-primary);background-color:var(--background-color)}h1,h2,h3,h4,h5,h6{font-weight:600;line-height:1.2;margin-bottom:.5rem}h1{font-size:clamp(2rem,5vw,3.5rem);font-weight:700}h2{font-size:clamp(1.5rem,4vw,2.5rem)}h3{font-size:clamp(1.25rem,3vw,1.75rem)}p{margin-bottom:1rem;color:var(--text-secondary)}.container{max-width:1200px;margin:0 auto;padding:0 1rem}.btn-primary,.btn-secondary{padding:.75rem 1.5rem;border:none;border-radius:var(--radius-md);font-weight:500;font-size:.875rem;cursor:pointer;transition:all .2s ease;text-decoration:none;display:inline-block;text-align:center}.btn-primary{background-color:var(--primary-color);color:#fff}.btn-primary:hover{background-color:var(--primary-hover);transform:translateY(-1px);box-shadow:var(--shadow-md)}.btn-secondary{background-color:transparent;color:var(--text-primary);border:1px solid var(--border-color)}.clickable-time{cursor:pointer;transition:all .2s ease;padding:2px 4px;border-radius:var(--radius-sm)}.clickable-time:hover{background-color:var(--primary-color);color:#fff;transform:scale(1.02)}.time-inputs{display:flex;gap:1rem;align-items:end}.time-inputs .form-group{flex:1}.time-inputs label{display:block;margin-bottom:.5rem;font-weight:500;color:var(--text-primary)}.time-inputs input[type=time]{width:100%;padding:.75rem;border:1px solid var(--border-color);border-radius:var(--radius-md);font-size:1rem;transition:border-color .2s ease}.time-inputs input[type=time]:focus{outline:none;border-color:var(--primary-color);box-shadow:0 0 0 3px #2563eb1a}.notification{position:fixed;top:2rem;right:2rem;background:#fff;padding:1rem 1.5rem;border-radius:var(--radius-md);box-shadow:0 10px 30px #0003;z-index:1001;transform:translate(100%);transition:transform .3s ease;border-left:4px solid var(--primary-color)}.notification.show{transform:translate(0)}.notification.success{border-left-color:#10b981}.notification.error{border-left-color:#ef4444}.notification.info{border-left-color:var(--primary-color)}.btn-secondary:hover{background-color:var(--surface-color);border-color:var(--text-secondary)}.btn-large{padding:1rem 2rem;font-size:1rem}.navbar{background-color:var(--background-color);border-bottom:1px solid var(--border-color);position:sticky;top:0;z-index:100;backdrop-filter:blur(10px)}.nav-container{max-width:1200px;margin:0 auto;padding:0 1rem;display:flex;justify-content:space-between;align-items:center;height:4rem}.nav-logo h2{color:var(--primary-color);margin:0;font-size:1.5rem}.nav-menu{display:flex;align-items:center;gap:2rem}.nav-link{text-decoration:none;color:var(--text-secondary);font-weight:500;transition:color .2s ease}.nav-link:hover{color:var(--primary-color)}.hero{padding:4rem 0;background:linear-gradient(135deg,var(--surface-color) 0%,var(--background-color) 100%)}.hero-container{max-width:1200px;margin:0 auto;padding:0 1rem;display:grid;grid-template-columns:1fr 1fr;gap:4rem;align-items:center}.hero-title{margin-bottom:1.5rem}.highlight{color:var(--primary-color);position:relative}.highlight:after{content:"";position:absolute;bottom:0;left:0;width:100%;height:3px;background:linear-gradient(90deg,var(--primary-color),var(--accent-color));border-radius:2px}.hero-description{font-size:1.125rem;margin-bottom:2rem;color:var(--text-secondary)}.hero-buttons{display:flex;gap:1rem;margin-bottom:3rem}.hero-stats{display:flex;gap:2rem}.stat{text-align:center}.stat-number{display:block;font-size:1.5rem;font-weight:700;color:var(--primary-color)}.stat-label{font-size:.875rem;color:var(--text-muted)}.hero-card-demo{display:flex;justify-content:center;align-items:center}.demo-card{background:var(--background-color);border-radius:var(--radius-xl);padding:1.5rem;box-shadow:var(--shadow-xl);max-width:300px;transform:rotate(3deg);transition:transform .3s ease}.demo-card:hover{transform:rotate(0) scale(1.05)}.card-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1rem}.card-category{background:var(--primary-color);color:#fff;padding:.25rem .75rem;border-radius:var(--radius-sm);font-size:.75rem;font-weight:500}.verified-badge{background:var(--accent-color);color:#fff;padding:.25rem .5rem;border-radius:var(--radius-sm);font-size:.75rem;font-weight:500}.demo-card h3{margin-bottom:.5rem;color:var(--text-primary)}.card-price{font-size:1.25rem;font-weight:600;color:var(--primary-color);margin-bottom:.5rem}.card-description{color:var(--text-secondary);margin-bottom:1rem}.card-rating{display:flex;align-items:center;gap:.5rem}.stars{display:flex;gap:.25rem}.stars .star{width:16px;height:16px;background-image:url(assets/star-empty.svg);background-size:contain;background-repeat:no-repeat;background-position:center;display:inline-block;text-indent:-9999px;overflow:hidden}.stars .star.filled{background-image:url(assets/star-rating.svg)}section{padding:4rem 0}.section-title{text-align:center;margin-bottom:1rem}.section-subtitle{text-align:center;font-size:1.125rem;color:var(--text-secondary);margin-bottom:3rem}.why-choose-us{background-color:var(--surface-color)}.features-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(350px,1fr));gap:2rem;align-items:start}.feature-card{background:var(--background-color);padding:.75rem;border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);transition:all .3s ease;display:flex;flex-direction:column;min-height:-moz-fit-content;min-height:fit-content}.feature-card.collapsible{cursor:pointer;-webkit-user-select:none;-moz-user-select:none;user-select:none;position:relative;transition:all 1.2s cubic-bezier(.25,.46,.45,.94);padding-bottom:.5rem}.feature-card.collapsible:hover{transform:translateY(-2px);box-shadow:0 15px 40px #0000004d;border-color:var(--primary-color)}.card-header-content{display:flex;flex-direction:column;gap:1rem}.card-details{margin-top:0;padding-top:0;margin-bottom:0;padding-bottom:0;border-top:1px solid var(--border-color);overflow:hidden;max-height:0;opacity:0;transition:all 1.2s cubic-bezier(.4,0,.2,1)}.card-details.show{max-height:200px;opacity:1;margin-top:1.5rem;padding-top:1.5rem}.feature-card.expanded{background:linear-gradient(135deg,var(--primary-color-light) 0%,rgba(255,255,255,.95) 100%);border-color:var(--primary-color);box-shadow:0 8px 30px #0000001f}.feature-card.expanded:hover{transform:translateY(-1px)}.feature-icon{font-size:1.5rem;margin-bottom:1rem;display:block;color:var(--primary-color)}.feature-card h3{margin-bottom:.375rem;color:var(--text-primary);font-size:1.25rem}.feature-card p{margin-bottom:.1rem;flex-grow:1}.competitor-comparison{background:var(--surface-color);padding:.25rem;border-radius:var(--radius-md);border-left:4px solid var(--primary-color);margin-top:auto}.competitor{display:block;color:var(--text-muted);font-size:.875rem;margin-bottom:0}.us{display:block;color:var(--accent-color);font-weight:600;font-size:.875rem}.skill-exchange{background:linear-gradient(135deg,var(--surface-color) 0%,var(--background-color) 100%)}.exchange-explanation{display:grid;grid-template-columns:1fr 1fr;gap:4rem;align-items:center;margin-bottom:4rem}.card-demo-container{display:flex;align-items:center;justify-content:center;gap:2rem}.learn-card,.teach-card{background:var(--background-color);border-radius:var(--radius-lg);padding:1.5rem;box-shadow:var(--shadow-lg);min-width:150px;text-align:center;transition:transform .3s ease}.learn-card{border:3px solid var(--primary-color)}.teach-card{border:3px solid var(--accent-color)}.learn-card:hover,.teach-card:hover{transform:translateY(-5px) scale(1.05)}.card-type{font-size:.75rem;font-weight:600;text-transform:uppercase;margin-bottom:1rem;padding:.25rem .75rem;border-radius:var(--radius-sm);color:#fff}.learn-card .card-type{background:var(--primary-color)}.teach-card .card-type{background:var(--accent-color)}.card-content h4{margin:0 0 .5rem;font-size:1.25rem}.level{font-size:.875rem;color:var(--text-secondary);background:var(--surface-color);padding:.25rem .75rem;border-radius:var(--radius-sm)}.exchange-arrow{font-size:2rem;color:var(--primary-color);animation:pulse 2s infinite}@keyframes pulse{0%,to{transform:scale(1)}50%{transform:scale(1.1)}}.exchange-description h3{margin-bottom:1.5rem;color:var(--text-primary)}.exchange-benefits{display:flex;flex-direction:column;gap:1.5rem;margin-top:2rem}.benefit{display:flex;align-items:flex-start;gap:1rem}.benefit-icon{font-size:1.5rem;margin-top:.25rem}.benefit h4{margin:0 0 .5rem;color:var(--text-primary)}.benefit p{margin:0;color:var(--text-secondary)}.dual-system{margin-top:4rem}.dual-title{text-align:center;margin-bottom:3rem;font-size:1.75rem;color:var(--text-primary)}.system-comparison{display:grid;grid-template-columns:1fr 1fr;gap:2rem;max-width:900px;margin:0 auto;align-items:stretch}.system-option{background:var(--background-color);border-radius:var(--radius-lg);padding:2rem;text-align:center;box-shadow:var(--shadow-md);transition:all .3s ease;border:2px solid var(--border-color);display:flex;flex-direction:column;height:100%;position:relative}.system-option.featured{border-color:var(--primary-color);transform:scale(1.02);box-shadow:var(--shadow-xl)}.system-option.featured:before{content:"MEST POPULÆR";position:absolute;top:-12px;left:50%;transform:translate(-50%);background:var(--primary-color);color:#fff;padding:.25rem 1rem;border-radius:var(--radius-sm);font-size:.75rem;font-weight:600;text-transform:uppercase}.system-option.new{border-color:#e74c3c;transform:scale(1.02);box-shadow:var(--shadow-xl)}.system-option.new:before{content:"NY";position:absolute;top:-12px;left:50%;transform:translate(-50%);background:#e74c3c;color:#fff;padding:.25rem 1rem;border-radius:var(--radius-sm);font-size:.75rem;font-weight:600;text-transform:uppercase}.system-option:hover{transform:translateY(-5px);box-shadow:var(--shadow-xl)}.system-option.featured:hover,.system-option.new:hover{transform:translateY(-5px) scale(1.02)}.system-icon{font-size:3rem;margin-bottom:1rem;color:var(--primary-color)}.system-option h4{margin-bottom:1rem;font-size:1.5rem;color:var(--text-primary)}.system-option p{margin-bottom:1.5rem;color:var(--text-secondary);line-height:1.6}.system-option ul{list-style:none;padding:0;margin:0 0 2rem;text-align:left;flex-grow:1}.system-option li{color:var(--text-secondary);position:relative;padding:.75rem 0 .75rem 1.5rem;line-height:1.5}.system-option li:before{content:"✓";position:absolute;left:0;color:var(--accent-color);font-weight:600;font-size:1.1rem}.steps-container{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:3rem;margin-top:3rem;align-items:start}.step{text-align:center;position:relative;padding:1.5rem;background:var(--background-color);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);transition:all .3s ease}.step:hover{transform:translateY(-4px);box-shadow:var(--shadow-md)}.step-number{display:inline-flex;align-items:center;justify-content:center;width:3.5rem;height:3.5rem;background:linear-gradient(135deg,var(--primary-color),var(--primary-hover));color:#fff;border-radius:50%;font-size:1.25rem;font-weight:600;margin-bottom:1.5rem;box-shadow:var(--shadow-md)}.step h3{margin-bottom:1rem;color:var(--text-primary);font-size:1.25rem}.step p{color:var(--text-secondary);line-height:1.6}.pricing{background-color:var(--surface-color)}.pricing-comparison{display:grid;grid-template-columns:1fr 1fr;gap:2rem;max-width:900px;margin:0 auto;align-items:stretch}.pricing-card{background:var(--background-color);padding:2rem;border-radius:var(--radius-lg);box-shadow:var(--shadow-md);display:flex;flex-direction:column;height:100%;transition:all .3s ease}.competitor-card{border:2px solid var(--danger-color);position:relative}.our-card{border:2px solid var(--accent-color);position:relative;transform:scale(1.02);box-shadow:var(--shadow-lg)}.our-card:before{content:"ANBEFALT";position:absolute;top:-12px;left:50%;transform:translate(-50%);background:var(--accent-color);color:#fff;padding:.25rem 1rem;border-radius:var(--radius-sm);font-size:.75rem;font-weight:600;text-transform:uppercase}.pricing-card h3{text-align:center;margin-bottom:1.5rem;font-size:1.5rem;color:var(--text-primary)}.price-breakdown{margin-bottom:1.5rem;flex-grow:1}.price-item{display:flex;justify-content:space-between;align-items:center;padding:.75rem 0;border-bottom:1px solid var(--border-color)}.price-item:last-child{border-bottom:none}.price-item.total{font-weight:600;font-size:1.125rem;background:var(--surface-color);padding:1rem;border-radius:var(--radius-md);margin-top:1rem;border:none}.price{font-weight:600}.price.free{color:var(--accent-color)}.hidden-costs{color:var(--danger-color);font-size:.875rem;font-style:italic}.benefits{color:var(--accent-color);font-size:.875rem;font-weight:500}.cta{background:linear-gradient(135deg,var(--primary-color) 0%,var(--primary-hover) 100%);color:#fff;text-align:center}.cta h2{color:#fff;margin-bottom:1rem}.cta p{color:#ffffffe6;font-size:1.125rem;margin-bottom:2rem}.cta-buttons{display:flex;justify-content:center;gap:1rem}.cta .btn-secondary{background-color:#ffffff1a;color:#fff;border-color:#ffffff4d}.cta .btn-secondary:hover{background-color:#fff3}.footer{background-color:var(--text-primary);color:#fff;padding:3rem 0 1rem}.footer-content{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:2rem;margin-bottom:2rem}.footer-section h3,.footer-section h4{color:#fff;margin-bottom:1rem}.footer-section a{display:block;color:var(--text-muted);text-decoration:none;margin-bottom:.5rem;transition:color .2s ease}.footer-section a:hover{color:#fff}.footer-bottom{border-top:1px solid var(--text-secondary);padding-top:1rem;text-align:center;color:var(--text-muted)}@media(max-width:768px){.nav-menu{gap:1rem}.nav-menu .nav-link{display:none}.hero-container{grid-template-columns:1fr;gap:2rem;text-align:center}.hero-buttons{flex-direction:column;align-items:center}.hero-stats{justify-content:center}.features-grid,.comparison-grid,.pricing-comparison{grid-template-columns:1fr;gap:1.5rem}.our-card{transform:none;order:-1}.steps-container{grid-template-columns:1fr;gap:2rem}.cta-buttons{flex-direction:column;align-items:center}.exchange-explanation{grid-template-columns:1fr;gap:2rem;text-align:center}.card-demo-container{flex-direction:column;gap:1rem}.exchange-arrow{transform:rotate(90deg)}.system-comparison{grid-template-columns:1fr;gap:1.5rem}.system-option.featured{transform:none}.system-option.featured:hover{transform:translateY(-5px)}.learn-card,.teach-card{min-width:200px}}@media(max-width:480px){.container{padding:0 .5rem}.hero{padding:2rem 0}section{padding:2rem 0}.btn-large{width:100%;max-width:300px}}@keyframes fadeInUp{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}.feature-card,.step,.pricing-card{animation:fadeInUp .6s ease forwards}html{scroll-behavior:smooth}.btn-primary:focus,.btn-secondary:focus,.nav-link:focus{outline:2px solid var(--primary-color);outline-offset:2px}.modal-overlay{position:fixed;inset:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000;opacity:0;transition:opacity .3s ease}.modal-overlay.show{opacity:1}.modal{background:#fff;border-radius:var(--radius-lg);box-shadow:0 20px 60px #0000004d;max-width:500px;width:95%;max-height:80vh;overflow-y:auto;transform:scale(.9);transition:transform .3s ease}.modal-overlay.show .modal{transform:scale(1)}.modal-content{padding:0}.modal-header{display:flex;justify-content:space-between;align-items:center;padding:1.5rem;border-bottom:1px solid var(--border-color)}.modal-header h3{margin:0;color:var(--text-primary);font-size:1.3rem}.close-modal{background:none;border:none;font-size:1.5rem;color:var(--text-secondary);cursor:pointer;padding:.25rem;border-radius:var(--radius-sm);transition:all .3s ease}.close-modal:hover{background-color:var(--background-secondary);color:var(--text-primary)}.modal-body{padding:1.5rem}.modal-footer{display:flex;justify-content:flex-end;gap:1rem;padding:1.5rem;border-top:1px solid var(--border-color);background-color:var(--background-secondary)}.reviews-section{padding:2rem 0}.reviews-summary{background:var(--surface-color);padding:2rem;border-radius:var(--radius-lg);margin-bottom:2rem;text-align:center}.overall-rating{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.5rem;margin-bottom:1rem}.stars-and-count{display:flex;align-items:center;gap:.5rem}.rating-number{font-size:3rem;font-weight:700;color:var(--text-primary)}.rating-stars{display:flex;gap:.25rem}.rating-stars .star{width:24px;height:24px;background-image:url(assets/star-empty.svg);background-size:contain;background-repeat:no-repeat;background-position:center;display:inline-block;text-indent:-9999px;overflow:hidden}.rating-stars .star.filled{background-image:url(assets/star-rating.svg)}.review-count{color:var(--text-secondary);font-size:1rem;margin:0;display:inline}.rating-breakdown{display:grid;grid-template-columns:repeat(5,1fr);gap:1rem;max-width:600px;margin:0 auto}.rating-bar{text-align:center}.rating-bar-label{font-size:.875rem;color:var(--text-secondary);margin-bottom:.5rem}.rating-bar-visual{height:100px;background:var(--border-color);border-radius:var(--radius-sm);position:relative;overflow:hidden}.rating-bar-fill{position:absolute;bottom:0;left:0;right:0;background:var(--text-muted);border-radius:var(--radius-sm);transition:height .3s ease}.rating-bar-fill.five-star{background:var(--accent-color)}.rating-bar-count{font-size:.75rem;color:var(--text-secondary);margin-top:.5rem}.reviews-controls{display:flex;justify-content:space-between;align-items:center;margin-bottom:2rem;gap:1rem}.reviews-filters{display:flex;align-items:center;gap:1rem}.reviews-sorting{display:flex;align-items:center;gap:.5rem}.filter-select,.sort-select{padding:.5rem 1rem;border:1px solid var(--border-color);border-radius:var(--radius-md);background:#fff;color:var(--text-primary);font-size:.875rem;cursor:pointer}.filter-select:focus,.sort-select:focus{outline:none;border-color:var(--primary-color);box-shadow:0 0 0 3px #2563eb1a}.reviews-list{display:flex;flex-direction:column;gap:1.5rem;margin-bottom:2rem}.review-item{background:#fff;border:1px solid var(--border-color);border-radius:var(--radius-lg);padding:1.5rem;box-shadow:var(--shadow-sm);transition:box-shadow .2s ease}.review-item:hover{box-shadow:var(--shadow-md)}.review-item.highlight-review{animation:reviewHighlightPulse 2.5s ease-out;border-color:var(--primary-color, #6366f1);box-shadow:0 0 0 3px #6366f133,var(--shadow-md)}@keyframes reviewHighlightPulse{0%{box-shadow:0 0 #6366f180}50%{box-shadow:0 0 0 10px #6366f11a}to{box-shadow:0 0 0 3px #6366f133,var(--shadow-md)}}.review-header{display:flex;align-items:center;gap:1rem;margin-bottom:1rem}.reviewer-avatar{width:48px;height:48px;border-radius:50%;-o-object-fit:cover;object-fit:cover}.reviewer-info{flex:1}.reviewer-name{font-weight:600;color:var(--text-primary);margin-bottom:.25rem}.review-date{font-size:.875rem;color:var(--text-secondary)}.review-rating{display:flex;gap:.25rem}.review-rating .star{width:20px;height:20px;background-image:url(assets/star-empty.svg);background-size:contain;background-repeat:no-repeat;background-position:center;display:inline-block;text-indent:-9999px;overflow:hidden}.review-rating .star.filled{background-image:url(assets/star-rating.svg)}.review-text{color:var(--text-primary);line-height:1.6;margin-bottom:1rem}.review-subject{display:inline-block;background:var(--surface-color);color:var(--text-secondary);padding:.25rem .75rem;border-radius:var(--radius-sm);font-size:.875rem;margin-bottom:1rem}.teacher-response{background:var(--surface-color);border-radius:var(--radius-md);padding:1rem;margin-top:1rem;border-left:4px solid var(--primary-color)}.teacher-response-header{display:flex;align-items:center;gap:.75rem;margin-bottom:.75rem}.teacher-avatar{width:32px;height:32px;border-radius:50%;-o-object-fit:cover;object-fit:cover}.teacher-name{font-weight:600;color:var(--text-primary);font-size:.875rem}.response-date{font-size:.75rem;color:var(--text-secondary);margin-left:auto}.teacher-response-text{color:var(--text-primary);line-height:1.5;font-size:.875rem;margin:0}.reviews-pagination{display:flex;justify-content:space-between;align-items:center;padding:1.5rem 0;border-top:1px solid var(--border-color)}.pagination-controls{display:flex;align-items:center;gap:1rem}.page-numbers{display:flex;align-items:center;gap:.5rem}.page-btn{width:36px;height:36px;border:1px solid var(--border-color);background:#fff;color:var(--text-primary);border-radius:var(--radius-md);cursor:pointer;font-size:.875rem;display:flex;align-items:center;justify-content:center;transition:all .2s ease}.page-btn:hover{background:var(--surface-color);border-color:var(--primary-color)}.page-btn.active{background:var(--primary-color);color:#fff;border-color:var(--primary-color)}.page-dots{color:var(--text-secondary);font-size:.875rem;padding:0 .5rem}@media(max-width:768px){.reviews-controls{flex-direction:column;align-items:stretch;gap:1rem}.reviews-filters{justify-content:space-between}.rating-breakdown{grid-template-columns:repeat(3,1fr);gap:.75rem}.review-header{flex-direction:column;align-items:flex-start;gap:.75rem}.reviewer-info{display:flex;justify-content:space-between;align-items:center;width:100%}.pagination-controls{flex-direction:column;gap:1rem}.page-numbers{order:-1}}@media(max-width:480px){.rating-breakdown{grid-template-columns:repeat(2,1fr)}.reviews-summary{padding:1.5rem}.review-item{padding:1rem}}.payment-section{padding:2rem 0}.income-overview{margin-bottom:3rem}.income-stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:1.5rem;margin-bottom:2rem}.income-card{background:#fff;border:1px solid var(--border-color);border-radius:var(--radius-lg);padding:2rem;text-align:center;box-shadow:var(--shadow-sm);transition:all .3s ease;position:relative;overflow:hidden}.income-card:before{content:"";position:absolute;top:0;left:0;right:0;height:4px;background:var(--primary-color)}.income-card.reserved:before{background:#6b7280}.income-card.available:before{background:var(--primary-color)}.income-card.pending:before{background:#f59e0b}.income-card.received:before{background:#10b981}.income-stats.four-columns{display:flex!important;flex-wrap:nowrap!important;gap:.75rem;margin-bottom:2rem}.income-stats.four-columns .income-card{flex:1;min-width:0;padding:1rem .5rem}.income-stats.four-columns .income-card h3{font-size:.75rem;margin-bottom:.5rem}.income-stats.four-columns .income-amount{font-size:1.25rem;margin-bottom:.25rem}.income-stats.four-columns .income-period{font-size:.65rem;line-height:1.3}@media(max-width:768px){.income-stats.four-columns{flex-wrap:wrap!important}.income-stats.four-columns .income-card{flex:1 1 45%;padding:1rem}.income-stats.four-columns .income-amount{font-size:1.5rem}}@media(max-width:480px){.income-stats.four-columns .income-card{flex:1 1 100%}}.income-stats.three-columns{display:flex!important;flex-wrap:nowrap!important;gap:1rem;margin-bottom:2rem}.income-stats.three-columns .income-card{flex:1;min-width:0;padding:1.25rem 1rem}.income-stats.three-columns .income-card h3{font-size:.85rem;margin-bottom:.5rem}.income-stats.three-columns .income-amount{font-size:1.5rem;margin-bottom:.25rem}.income-stats.three-columns .income-period{font-size:.7rem;line-height:1.3}@media(max-width:768px){.income-stats.three-columns{flex-wrap:wrap!important}.income-stats.three-columns .income-card{flex:1 1 100%;padding:1rem}}.income-card:hover{transform:translateY(-2px);box-shadow:var(--shadow-md)}.income-card h3{font-size:1rem;font-weight:600;color:var(--text-secondary);margin-bottom:1rem;text-transform:uppercase;letter-spacing:.5px}.income-amount{font-size:2.5rem;font-weight:700;color:var(--text-primary);margin-bottom:.5rem}.income-period{font-size:.875rem;color:var(--text-secondary)}.payment-history-section{margin-bottom:3rem}.section-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:2rem;flex-wrap:wrap;gap:1rem}.section-header h3{font-size:1.5rem;font-weight:600;color:var(--text-primary);margin:0}.history-controls{display:flex;gap:1rem;align-items:center}.filter-select,.sort-select,.period-select{padding:.5rem 1rem;border:1px solid var(--border-color);border-radius:var(--radius-md);background:#fff;color:var(--text-primary);font-size:.875rem;cursor:pointer;transition:all .2s ease}.filter-select:focus,.sort-select:focus,.period-select:focus{outline:none;border-color:var(--primary-color);box-shadow:0 0 0 3px #2563eb1a}.payment-table{background:#fff;border:1px solid var(--border-color);border-radius:var(--radius-lg);overflow:hidden;box-shadow:var(--shadow-sm);margin-bottom:1.5rem}.table-header{display:grid;grid-template-columns:120px 1fr 120px 120px;gap:1rem;padding:1rem 1.5rem;background:var(--surface-color);border-bottom:1px solid var(--border-color);font-weight:600;font-size:.875rem;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.5px}.table-body{display:flex;flex-direction:column}.payment-row{display:grid;grid-template-columns:120px 1fr 120px 120px;gap:1rem;padding:1rem 1.5rem;border-bottom:1px solid var(--border-color);transition:background-color .2s ease;align-items:center}.payment-row:last-child{border-bottom:none}.payment-row:hover{background:var(--surface-color)}.col-date{font-size:.875rem;color:var(--text-secondary);font-weight:500}.col-description{font-size:.875rem;color:var(--text-primary);font-weight:500}.col-amount{font-size:.875rem;font-weight:600;text-align:right}.col-amount.income{color:#10b981}.col-amount.transfer{color:var(--text-primary)}.col-status{text-align:center}.status-transferred{background:#dcfce7;color:#166534;padding:.25rem .75rem;border-radius:var(--radius-sm);font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.5px}.status-pending{background:#fef3c7;color:#92400e;padding:.25rem .75rem;border-radius:var(--radius-sm);font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.5px}.status-completed{background:#dbeafe;color:#1e40af;padding:.25rem .75rem;border-radius:var(--radius-sm);font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.5px}.status-cancelled{background:#fee2e2;color:#dc2626;padding:.25rem .75rem;border-radius:var(--radius-sm);font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.5px}.payment-methods-section{margin-bottom:3rem}.payment-methods{display:flex;flex-direction:column;gap:1.5rem;margin-bottom:2rem}.payment-method{background:#fff;border:1px solid var(--border-color);border-radius:var(--radius-lg);overflow:hidden;box-shadow:var(--shadow-sm);transition:all .3s ease}.payment-method:hover{box-shadow:var(--shadow-md)}.method-header{display:flex;justify-content:space-between;align-items:center;padding:1.5rem;background:var(--surface-color);border-bottom:1px solid var(--border-color)}.method-info{display:flex;align-items:center;gap:1rem}.method-icon{font-size:2rem;width:48px;height:48px;display:flex;align-items:center;justify-content:center;background:#fff;border-radius:var(--radius-md);border:1px solid var(--border-color)}.method-details h4{font-size:1.125rem;font-weight:600;color:var(--text-primary);margin:0 0 .25rem}.method-description{font-size:.875rem;color:var(--text-secondary);margin:0}.method-status{display:flex;align-items:center}.status-badge{padding:.5rem 1rem;border-radius:var(--radius-sm);font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.5px}.status-badge.active{background:#dcfce7;color:#166534}.status-badge.inactive{background:#f3f4f6;color:#6b7280}.method-content{padding:1.5rem}.current-info{display:flex;justify-content:space-between;align-items:center;margin-bottom:1rem;padding:1rem;background:var(--surface-color);border-radius:var(--radius-md)}.info-label{font-size:.875rem;color:var(--text-secondary);font-weight:500}.info-value{font-size:.875rem;color:var(--text-primary);font-weight:600}.method-actions{display:flex;gap:1rem;flex-wrap:wrap}.edit-method-btn,.verify-method-btn,.add-method-btn{padding:.5rem 1rem;border:1px solid var(--primary-color);background:#fff;color:var(--primary-color);border-radius:var(--radius-md);font-size:.875rem;font-weight:500;cursor:pointer;transition:all .2s ease}.edit-method-btn:hover,.verify-method-btn:hover,.add-method-btn:hover{background:var(--primary-color);color:#fff}.payment-info{margin-top:2rem}.info-box{background:#eff6ff;border:1px solid #bfdbfe;border-radius:var(--radius-lg);padding:1.5rem}.info-box h4{font-size:1rem;font-weight:600;color:var(--text-primary);margin:0 0 1rem}.info-box ul{margin:0;padding-left:1.5rem;color:var(--text-secondary)}.info-box li{margin-bottom:.5rem;font-size:.875rem;line-height:1.5}.tax-reporting-section{margin-bottom:3rem}.reporting-tools{display:grid;grid-template-columns:2fr 1fr;gap:2rem;align-items:start}.report-card{background:#fff;border:1px solid var(--border-color);border-radius:var(--radius-lg);padding:2rem;box-shadow:var(--shadow-sm)}.report-info{margin-bottom:1.5rem}.report-info h4{font-size:1.125rem;font-weight:600;color:var(--text-primary);margin:0 0 .5rem}.report-info p{font-size:.875rem;color:var(--text-secondary);margin:0}.report-actions{display:flex;gap:1rem;align-items:center;flex-wrap:wrap}.generate-report-btn{padding:.75rem 1.5rem;background:var(--primary-color);color:#fff;border:none;border-radius:var(--radius-md);font-size:.875rem;font-weight:600;cursor:pointer;transition:all .2s ease}.generate-report-btn:hover{background:var(--primary-hover);transform:translateY(-1px)}.tax-info{background:var(--surface-color);border-radius:var(--radius-lg);padding:1.5rem}.tax-info h4{font-size:1rem;font-weight:600;color:var(--text-primary);margin:0 0 1rem}.tax-links{display:flex;flex-direction:column;gap:.75rem}.tax-link{color:var(--primary-color);text-decoration:none;font-size:.875rem;font-weight:500;transition:color .2s ease}.tax-link:hover{color:var(--primary-hover);text-decoration:underline}.payment-settings-section{margin-bottom:3rem}.settings-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:2rem;margin-bottom:2rem}.setting-card{background:#fff;border:1px solid var(--border-color);border-radius:var(--radius-lg);padding:2rem;box-shadow:var(--shadow-sm)}.setting-card h4{font-size:1.125rem;font-weight:600;color:var(--text-primary);margin:0 0 1.5rem}.setting-options,.frequency-options{display:flex;flex-direction:column;gap:1rem}.setting-option,.frequency-option{display:flex;align-items:flex-start;gap:.75rem;cursor:pointer;padding:.75rem;border-radius:var(--radius-md);transition:background-color .2s ease}.setting-option:hover,.frequency-option:hover{background:var(--surface-color)}.setting-option input[type=checkbox],.frequency-option input[type=radio],.setting-label input[type=checkbox]{margin:0;width:18px;height:18px;accent-color:var(--primary-color)}.checkmark{display:none}.radio-mark{display:none;border-radius:50%}.option-text{font-size:.875rem;font-weight:500;color:var(--text-primary);flex:1}.option-desc{font-size:.75rem;color:var(--text-secondary);margin-top:.25rem}.frequency-option{flex-direction:column;align-items:flex-start;gap:.5rem}.frequency-option .option-text{margin-left:1.5rem;margin-top:-1.5rem}.frequency-option .option-desc{margin-left:1.5rem}.settings-actions{display:flex;justify-content:flex-end;padding-top:2rem;border-top:1px solid var(--border-color)}.save-settings-btn{padding:.75rem 2rem;background:var(--primary-color);color:#fff;border:none;border-radius:var(--radius-md);font-size:.875rem;font-weight:600;cursor:pointer;transition:all .2s ease}.save-settings-btn:hover{background:var(--primary-hover);transform:translateY(-1px)}.pagination{display:flex;justify-content:space-between;align-items:center;padding:1rem 0}.pagination-btn{padding:.5rem 1rem;border:1px solid var(--border-color);background:#fff;color:var(--text-primary);border-radius:var(--radius-md);cursor:pointer;font-size:.875rem;transition:all .2s ease}.pagination-btn:hover:not(:disabled){background:var(--surface-color);border-color:var(--primary-color)}.pagination-btn:disabled{opacity:.5;cursor:not-allowed}.pagination-info{color:var(--text-secondary);font-size:.875rem}@media(max-width:1024px){.reporting-tools{grid-template-columns:1fr;gap:1.5rem}.settings-grid{grid-template-columns:1fr}}@media(max-width:768px){.income-stats{grid-template-columns:1fr;gap:1rem}.section-header{flex-direction:column;align-items:stretch}.history-controls{justify-content:space-between}.table-header,.payment-row{grid-template-columns:1fr;gap:.5rem;text-align:left}.table-header{display:none}.payment-row{padding:1rem;border-bottom:1px solid var(--border-color);background:#fff;margin-bottom:.5rem;border-radius:var(--radius-md);box-shadow:var(--shadow-sm)}.col-date:before{content:"Dato: ";font-weight:600;color:var(--text-secondary)}.col-description:before{content:"Beskrivelse: ";font-weight:600;color:var(--text-secondary)}.col-amount:before{content:"Beløp: ";font-weight:600;color:var(--text-secondary)}.col-status:before{content:"Status: ";font-weight:600;color:var(--text-secondary)}.col-amount,.col-status{text-align:left}.method-header{flex-direction:column;align-items:stretch;gap:1rem}.method-info{justify-content:center;text-align:center}.method-status{justify-content:center}.current-info{flex-direction:column;align-items:stretch;gap:.5rem}.method-actions{justify-content:center}.report-actions{flex-direction:column;align-items:stretch}.pagination{flex-direction:column;gap:1rem;text-align:center}}@media(max-width:480px){.income-card{padding:1.5rem}.income-amount{font-size:2rem}.payment-method{margin-bottom:1rem}.method-content{padding:1rem}.setting-card,.report-card{padding:1.5rem}}@media(max-width:768px){.notification{right:1rem;left:1rem;transform:translateY(-100%)}.notification.show{transform:translateY(0)}}.modal-content.recurring-modal{max-width:480px;width:90%;padding:2rem;background:#fff!important;border-radius:16px;box-shadow:0 20px 60px #0000004d;position:relative}.recurring-header{text-align:center;margin-bottom:1.5rem}.recurring-header h2{font-size:1.5rem;margin-bottom:.25rem}.recurring-subtitle{color:var(--text-secondary);font-size:.9rem}.recurring-progress{display:flex;align-items:center;justify-content:center;gap:.5rem;margin-bottom:2rem}.progress-step{display:flex;flex-direction:column;align-items:center;gap:.25rem}.progress-step .step-number{width:28px;height:28px;border-radius:50%;background:var(--border-color);color:var(--text-secondary);display:flex;align-items:center;justify-content:center;font-size:.8rem;font-weight:600;transition:all .3s}.progress-step.active .step-number,.progress-step.completed .step-number{background:var(--primary-color);color:#fff}.progress-step .step-label{font-size:.7rem;color:var(--text-muted)}.progress-step.active .step-label{color:var(--primary-color);font-weight:600}.progress-line{width:40px;height:2px;background:var(--border-color);margin-bottom:1rem}.recurring-step{animation:fadeIn .3s ease}.recurring-step h3{font-size:1.1rem;margin-bottom:1rem;color:var(--text-primary)}.day-selector{display:flex;flex-wrap:wrap;gap:.5rem;margin-bottom:1.5rem;justify-content:center}.day-btn{padding:.6rem .9rem;border:2px solid var(--border-color);border-radius:8px;background:#fff;cursor:pointer;font-size:.85rem;font-weight:500;color:var(--text-secondary);transition:all .2s}.day-btn:hover{border-color:var(--primary-color);color:var(--primary-color)}.day-btn.selected{border-color:var(--primary-color);background:var(--primary-color);color:#fff}.recurring-time-row{display:flex;gap:1rem}.recurring-field{flex:1}.recurring-field label{display:block;font-size:.85rem;font-weight:500;margin-bottom:.5rem;color:var(--text-secondary)}.recurring-field input,.recurring-field select{width:100%;padding:.75rem;border:1px solid var(--border-color);border-radius:8px;font-size:1rem;background:#fff}.recurring-field input:focus,.recurring-field select:focus{outline:none;border-color:var(--primary-color);box-shadow:0 0 0 3px #2563eb1a}.payment-option{display:flex;gap:.75rem;padding:1rem;border:2px solid var(--border-color);border-radius:12px;margin-bottom:1rem;cursor:pointer;transition:all .2s}.payment-option:hover{border-color:var(--primary-color)}.payment-option:has(input:checked){border-color:var(--primary-color);background:#2563eb0d}.payment-option input[type=radio]{margin-top:.25rem;accent-color:var(--primary-color)}.payment-option label{flex:1;cursor:pointer}.option-header{display:flex;align-items:center;gap:.5rem;margin-bottom:.25rem}.option-icon{font-size:1.2rem}.option-title{font-weight:600;color:var(--text-primary)}.option-desc{font-size:.85rem;color:var(--text-secondary);margin-bottom:.75rem}.package-size-selector{display:flex;gap:.5rem;margin-bottom:1rem}.package-size-btn{flex:1;padding:.5rem;border:1px solid var(--border-color);border-radius:6px;background:#fff;font-size:.8rem;cursor:pointer;transition:all .2s}.package-size-btn:hover{border-color:var(--primary-color)}.package-size-btn.selected{background:var(--primary-color);color:#fff;border-color:var(--primary-color)}.package-price-display{background:var(--surface-color);border-radius:8px;padding:.75rem;position:relative}.price-row{display:flex;justify-content:space-between;font-size:.9rem;padding:.25rem 0}.price-row.total{font-weight:600;border-top:1px solid var(--border-color);margin-top:.5rem;padding-top:.5rem}.discount-badge{position:absolute;top:-8px;right:8px;background:var(--accent-color);color:#fff;padding:.2rem .5rem;border-radius:4px;font-size:.75rem;font-weight:600}.per-lesson-price{font-size:1.1rem;font-weight:600;color:var(--primary-color)}.auto-approve-section{margin-bottom:1.5rem}.auto-approve-toggle{display:flex;gap:.75rem;padding:1rem;border:1px solid var(--border-color);border-radius:8px;cursor:pointer}.auto-approve-toggle input[type=checkbox]{margin-top:.25rem;accent-color:var(--primary-color)}.toggle-header{display:flex;align-items:center;gap:.5rem;margin-bottom:.25rem}.toggle-icon{font-size:1rem}.toggle-title{font-weight:600}.toggle-desc{font-size:.85rem;color:var(--text-secondary)}.auto-approve-warning{background:#fef3c7;border:1px solid #f59e0b;border-radius:8px;padding:1rem;margin-top:1rem;animation:fadeIn .3s ease}.auto-approve-warning .warning-icon{font-size:1.2rem;margin-bottom:.5rem}.auto-approve-warning .warning-content{font-size:.85rem;color:var(--text-primary);margin-bottom:1rem}.consent-row{display:flex;align-items:flex-start;gap:.5rem}.consent-row label{font-size:.85rem;cursor:pointer}.recurring-summary{background:var(--surface-color);border-radius:12px;padding:1.25rem}.recurring-summary h4{font-size:.9rem;margin-bottom:.75rem;color:var(--text-secondary)}.summary-row{display:flex;justify-content:space-between;padding:.4rem 0;font-size:.9rem}.summary-label{color:var(--text-secondary)}.summary-value{font-weight:500;color:var(--text-primary)}.summary-row.total{border-top:1px solid var(--border-color);margin-top:.5rem;padding-top:.75rem;font-weight:600}.summary-row.total .summary-value{color:var(--primary-color);font-size:1.1rem}.recurring-nav{display:flex;justify-content:space-between;gap:1rem;margin-top:1.5rem;padding-top:1.5rem;border-top:1px solid var(--border-color)}.recurring-nav .btn-secondary{background:#fff;border:1px solid var(--border-color);color:var(--text-secondary);padding:.75rem 1.25rem;border-radius:8px;font-weight:500;cursor:pointer;transition:all .2s}.recurring-nav .btn-secondary:hover{background:var(--surface-color);border-color:var(--text-secondary)}.recurring-nav .btn-primary{background:var(--primary-color);border:none;color:#fff;padding:.75rem 1.5rem;border-radius:8px;font-weight:500;cursor:pointer;transition:all .2s;margin-left:auto}.recurring-nav .btn-primary:hover{background:var(--primary-hover)}.recurring-nav .btn-confirm{background:var(--accent-color)}.recurring-nav .btn-confirm:hover{background:#059669}@keyframes fadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@media(max-width:480px){.modal-content.recurring-modal{padding:1.5rem}.recurring-progress{gap:.25rem}.progress-line{width:20px}.day-selector{gap:.35rem}.day-btn{padding:.5rem .7rem;font-size:.8rem}.recurring-time-row{flex-direction:column;gap:.75rem}.package-size-selector,.recurring-nav{flex-direction:column}.recurring-nav .btn-primary{margin-left:0}}.recurring-link-banner{display:flex;align-items:center;gap:.75rem;padding:.75rem 1rem;margin:0 1rem 1rem;background:linear-gradient(135deg,#eff6ff,#dbeafe);border:1px solid #bfdbfe;border-radius:10px;cursor:pointer;transition:all .2s}.recurring-link-banner:hover{background:linear-gradient(135deg,#dbeafe,#bfdbfe);transform:translate(2px)}.recurring-link-icon{font-size:1.25rem}.recurring-link-text{flex:1;font-size:.9rem;color:var(--primary-color);font-weight:500}.recurring-link-arrow{color:var(--primary-color);font-weight:700}
