@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Playfair+Display:wght@600;700&display=swap');
:root{--ink:#17233c;--blue:#4b46e5;--purple:#7b5af5;--pale:#f5f6fe;--line:#e5e7f3;--muted:#6f7891;--green:#067647;--red:#b42318;--gold:#f59e0b}*{box-sizing:border-box}body{margin:0;background:var(--pale);color:var(--ink);font:15px/1.55 'DM Sans',Arial,sans-serif}header{height:74px;background:#fffffff2;backdrop-filter:blur(12px);border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;padding:0 max(24px,calc((100% - 1180px)/2));position:sticky;top:0;z-index:10}.brand{font-size:24px;font-weight:700;letter-spacing:-1px;color:var(--ink);text-decoration:none}.brand span{color:var(--blue)}nav{display:flex;gap:24px}nav a{color:#4d5971;text-decoration:none;font-weight:600}nav a:hover,a{color:var(--blue)}main{max-width:1180px;margin:42px auto;min-height:calc(100vh - 180px);padding:0 24px}footer{text-align:center;color:var(--muted);padding:28px}.hero{border-radius:24px;padding:64px;min-height:310px;background:radial-gradient(circle at 85% 12%,#9c8cff 0,#6553ed 24%,#352f9b 80%);color:#fff;position:relative;overflow:hidden}.hero:after{content:'';position:absolute;width:360px;height:360px;border:60px solid #ffffff17;border-radius:50%;right:-120px;bottom:-200px}.hero h1,h1{font-family:'Playfair Display',Georgia,serif;letter-spacing:-1.1px}.hero h1{font-size:44px;line-height:1.1;max-width:560px;margin:0 0 12px}.hero .muted{color:#e5e4ff}.hero .btn{background:#fff;color:#3730a3;box-shadow:0 5px 17px #15206540}.hero .secondary{background:#ffffff2b;color:#fff;border:1px solid #ffffff48}.grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(265px,1fr));gap:20px;margin-top:22px}.card{background:#fff;border:1px solid var(--line);border-radius:16px;padding:25px;box-shadow:0 8px 30px #28315a0a}.event-card{transition:transform .18s,box-shadow .18s}.event-card:hover{transform:translateY(-4px);box-shadow:0 15px 35px #28315a17}.event-card h3{font-size:20px;margin:0}.price{font-size:25px;font-weight:700;color:var(--blue);margin:18px 0}.btn{display:inline-block;background:linear-gradient(135deg,var(--blue),#635bda);border:0;border-radius:9px;padding:11px 17px;color:#fff!important;text-decoration:none;font:600 14px 'DM Sans';cursor:pointer;box-shadow:0 5px 12px #4b46e52b}.btn:hover{filter:brightness(.96);transform:translateY(-1px)}.btn.secondary{background:#eef0ff;color:#443dc9!important;box-shadow:none}.btn.danger{background:var(--red)}.wide{width:100%;text-align:center}.event-card .btn{margin-top:auto;text-align:center}.muted,small{color:var(--muted)}label{font-weight:700;display:block;margin:15px 0 6px;font-size:14px}input,textarea,select{width:100%;border:1px solid #d7dbea;background:#fff;border-radius:9px;padding:11px 12px;color:var(--ink);font:inherit;outline:none}input:focus,textarea:focus,select:focus{border-color:#7b75f6;box-shadow:0 0 0 4px #716af21b}textarea{min-height:95px}.check{font-weight:500;display:flex;gap:8px;align-items:center}.check input{width:auto}.form-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:0 18px}.full{grid-column:1/-1}.flash{padding:13px 16px;margin-bottom:20px;border-radius:10px;font-weight:500}.flash.success{background:#dcfae9;color:#08623c}.flash.error{background:#ffe6e3;color:#9d1c14}.table-wrap{overflow:auto;background:#fff;border:1px solid var(--line);border-radius:15px}table{border-collapse:collapse;width:100%}th,td{text-align:left;padding:15px 16px;border-bottom:1px solid var(--line);white-space:nowrap}th{font-size:11px;letter-spacing:.5px;color:#7a849a;text-transform:uppercase;background:#fbfbfe}.status{display:inline-block;padding:4px 9px;border-radius:30px;font-size:11px;font-weight:700;text-transform:capitalize}.status.paid{background:#dff9e9;color:var(--green)}.status.pending_payment{background:#fff1d6;color:#9a5c00}.status.cancelled{background:#ffe7e5;color:var(--red)}.participant{border:1px solid var(--line);background:#fafaff;border-radius:12px;padding:16px;margin:14px 0}.participant h4{margin:0 0 8px}.inline-actions{display:flex;gap:10px;align-items:end}.tabs{display:flex;gap:5px;margin:22px 0;border-bottom:1px solid var(--line)}.tabs a{padding:10px 13px;text-decoration:none;border-radius:8px 8px 0 0;color:#65718a;font-weight:600}.tabs a.active{color:var(--blue);background:#e8e8ff}.stats{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin:24px 0}.stat{background:linear-gradient(145deg,#fff,#fbfbff);border:1px solid var(--line);padding:20px;border-radius:14px}.stat span{color:var(--muted);font-size:13px}.stat b{display:block;font-size:27px;margin-top:4px}.receipt{max-width:720px;margin:auto}.receipt-head{border-bottom:2px solid var(--blue);padding-bottom:15px}.right{text-align:right}.eyebrow{font-size:11px;letter-spacing:1.3px;color:var(--purple);font-weight:700}.admin-heading{display:flex;justify-content:space-between;align-items:center}.admin-heading h1{font-size:34px;margin:3px 0}.admin-heading p{margin:0}.dashboard-grid{grid-template-columns:1.6fr .8fr}.section-title{display:flex;justify-content:space-between;align-items:center;margin-bottom:14px}.section-title h2{margin:0;font-size:20px}.activity{display:flex;align-items:center;gap:11px;padding:13px 0;border-bottom:1px solid var(--line)}.activity:last-child{border:0}.avatar{width:38px;height:38px;border-radius:12px;background:#e8e8ff;color:var(--blue);display:grid;place-items:center;font-weight:700}.activity-right{margin-left:auto;text-align:right}.admin-split{display:grid;grid-template-columns:390px 1fr;gap:20px}.auth-shell{display:grid;place-items:center;min-height:65vh}.auth-card{width:min(100%,460px);padding:34px}.auth-card h1{font-size:32px;margin:5px 0}.small{font-size:12px}.filter{color:var(--muted)}@media(max-width:760px){header{height:64px;padding:0 16px}nav{gap:12px;font-size:12px}main{margin:22px auto;padding:0 14px}.hero{padding:38px 25px;min-height:300px}.hero h1{font-size:34px}.form-grid,.stats,.admin-split,.dashboard-grid{grid-template-columns:1fr}.admin-heading{display:block}.admin-heading .btn{margin-top:14px}.tabs{overflow:auto}.stats{gap:10px}.stat b{font-size:23px}.activity{align-items:flex-start}.activity-right{font-size:12px}.inline-actions{align-items:stretch;flex-direction:column}}
