:root{--gold:#FFD700;--gold-light:#FFF0A0;--gold-dark:#B8860B;--purple-deep:#080015;--purple-mid:#1a0033;--purple-card:rgba(15,0,40,0.88);--text-light:#F0E6FF}*{margin:0;padding:0;box-sizing:border-box}html,body{font-family:'Georgia','Times New Roman',serif;background:var(--purple-deep);color:var(--text-light);overflow-x:hidden;min-height:100vh}#bg-canvas{position:fixed;top:0;left:0;width:100%;height:100%;z-index:0;display:block}.login-wrapper{position:relative;z-index:10;display:flex;justify-content:center;align-items:center;min-height:100vh;padding:20px}.login-card{background:var(--purple-card);border:2px solid var(--gold);border-radius:24px;padding:52px 44px 44px;width:100%;max-width:460px;box-shadow:0 0 50px rgba(255,215,0,0.25),0 0 120px rgba(100,0,180,0.45),inset 0 1px 0 rgba(255,215,0,0.15);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);text-align:center}.login-emblem{font-size:64px;line-height:1;margin-bottom:12px;filter:drop-shadow(0 0 18px rgba(255,215,0,0.7))}.login-title{font-size:30px;color:var(--gold);text-shadow:0 0 24px rgba(255,215,0,0.65);letter-spacing:4px;margin-bottom:6px}.login-sub{font-size:15px;color:var(--text-light);opacity:0.6;letter-spacing:2px;margin-bottom:36px;font-style:italic}.divider{width:80%;height:1px;background:linear-gradient(to right,transparent,var(--gold),transparent);margin:0 auto 30px;opacity:0.4}.form-group{margin-bottom:20px;text-align:left}.form-group label{display:block;color:var(--gold);font-size:15px;letter-spacing:2px;margin-bottom:9px;text-transform:uppercase;opacity:0.9}.form-group input{width:100%;padding:15px 20px;background:rgba(255,255,255,0.06);border:1.5px solid rgba(255,215,0,0.35);border-radius:12px;color:#fff;font-size:20px;font-family:Georgia,serif;outline:none;transition:all 0.3s}.form-group input::placeholder{color:rgba(255,255,255,0.3);font-size:16px}.form-group input:focus{border-color:var(--gold);background:rgba(255,255,255,0.09);box-shadow:0 0 18px rgba(255,215,0,0.28)}.btn-login{width:100%;padding:18px;background:linear-gradient(135deg,#7B6200,var(--gold) 60%,#B8860B);border:none;border-radius:14px;color:#1a0033;font-size:22px;font-weight:bold;font-family:Georgia,serif;letter-spacing:3px;cursor:pointer;margin-top:14px;transition:all 0.3s;text-transform:uppercase;box-shadow:0 4px 20px rgba(255,215,0,0.3)}.btn-login:hover{transform:translateY(-3px);box-shadow:0 8px 30px rgba(255,215,0,0.55)}.btn-login:active{transform:translateY(0)}.error-msg{color:#ff7070;font-size:16px;margin-top:14px;padding:10px 16px;background:rgba(255,50,50,0.12);border:1px solid rgba(255,70,70,0.35);border-radius:8px;display:none}.calc-page{position:relative;z-index:10;max-width:960px;margin:0 auto;padding:30px 20px 60px}.logout-btn{position:fixed;top:18px;right:20px;padding:10px 22px;background:rgba(255,215,0,0.08);border:1.5px solid rgba(255,215,0,0.45);border-radius:10px;color:var(--gold);font-size:16px;font-family:Georgia,serif;cursor:pointer;z-index:200;transition:all 0.3s;letter-spacing:1px}.logout-btn:hover{background:rgba(255,215,0,0.16)}.calc-header{text-align:center;margin-bottom:32px;padding-top:10px}.calc-header h1{font-size:34px;color:var(--gold);text-shadow:0 0 28px rgba(255,215,0,0.6);letter-spacing:4px;margin-bottom:8px;line-height:1.3}.calc-header p{font-size:18px;opacity:0.55;letter-spacing:2px;font-style:italic}.input-card{background:var(--purple-card);border:2px solid var(--gold);border-radius:22px;padding:44px 40px;margin-bottom:30px;box-shadow:0 0 40px rgba(255,215,0,0.18),0 0 80px rgba(100,0,180,0.25);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);text-align:center}.input-card label{display:block;font-size:26px;color:var(--gold);letter-spacing:3px;margin-bottom:20px;text-transform:uppercase}.year-input{padding:18px 32px;font-size:36px;font-family:Georgia,serif;background:rgba(255,255,255,0.06);border:2px solid rgba(255,215,0,0.45);border-radius:14px;color:#fff;width:220px;text-align:center;outline:none;transition:all 0.3s;margin-bottom:30px;letter-spacing:4px}.year-input:focus{border-color:var(--gold);box-shadow:0 0 24px rgba(255,215,0,0.4);background:rgba(255,255,255,0.09)}.year-input::-webkit-outer-spin-button,.year-input::-webkit-inner-spin-button{-webkit-appearance:none}.year-input[type=number]{-moz-appearance:textfield}.btn-row{display:flex;gap:16px;justify-content:center;flex-wrap:wrap}.btn-calc{padding:20px 54px;background:linear-gradient(135deg,#7B6200,var(--gold) 55%,#9A7000);border:none;border-radius:16px;color:#1a0033;font-size:26px;font-weight:bold;font-family:Georgia,serif;letter-spacing:3px;cursor:pointer;transition:all 0.3s;text-transform:uppercase;box-shadow:0 4px 24px rgba(255,215,0,0.35)}.btn-calc:hover{transform:translateY(-4px);box-shadow:0 10px 36px rgba(255,215,0,0.55)}.btn-calc:active{transform:translateY(0)}.btn-print,.btn-clear{padding:20px 36px;border-radius:16px;font-size:24px;font-family:Georgia,serif;font-weight:bold;cursor:pointer;transition:all 0.3s;text-transform:uppercase;letter-spacing:2px}.btn-print{background:transparent;border:2px solid var(--gold);color:var(--gold)}.btn-print:hover{background:rgba(255,215,0,0.1);transform:translateY(-2px)}.btn-clear{background:transparent;border:2px solid #ff7070;color:#ff7070}.btn-clear:hover{background:rgba(255,112,112,0.1);transform:translateY(-2px)}.results-section{display:none}.section-heading{font-size:26px;color:var(--gold);text-align:center;letter-spacing:3px;margin-bottom:18px;text-shadow:0 0 14px rgba(255,215,0,0.4);text-transform:uppercase}.final-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:14px;margin-bottom:36px}.final-tile{background:linear-gradient(145deg,rgba(255,215,0,0.12),rgba(80,0,160,0.35));border:2px solid var(--gold);border-radius:18px;padding:22px 14px;text-align:center;box-shadow:0 0 22px rgba(255,215,0,0.14),inset 0 1px 0 rgba(255,215,0,0.12)}.final-tile .tile-label{font-size:15px;color:var(--gold);letter-spacing:2px;text-transform:uppercase;margin-bottom:10px;opacity:0.85}.final-tile .tile-val{font-size:22px;color:#fff;font-weight:bold;line-height:1.3;text-shadow:0 0 12px rgba(255,255,255,0.25)}.steps-wrapper{display:flex;flex-direction:column;gap:9px}.step-box{background:rgba(15,0,40,0.72);border:1px solid rgba(255,215,0,0.28);border-radius:14px;padding:17px 22px;display:flex;justify-content:space-between;align-items:center;gap:20px;backdrop-filter:blur(6px);transition:border-color 0.2s}.step-box:hover{border-color:rgba(255,215,0,0.5)}.step-box .s-label{color:var(--text-light);font-size:20px;opacity:0.82;flex:1;line-height:1.4}.step-box .s-val{color:var(--gold);font-weight:bold;font-size:22px;font-family:'Courier New',monospace;min-width:155px;text-align:right;white-space:nowrap;text-shadow:0 0 10px rgba(255,215,0,0.35)}@media print{#bg-canvas,.logout-btn,.btn-row{display:none !important}body{background:#fff !important;color:#111 !important}.calc-page{max-width:100%;padding:10px}.input-card{border:2px solid #888;background:#fff !important;box-shadow:none}.calc-header h1,.section-heading,.final-tile .tile-label,.step-box .s-val{color:#333 !important;text-shadow:none !important}.final-tile{border:1.5px solid #888;background:#f9f9f9 !important;box-shadow:none}.final-tile .tile-val,.step-box .s-label{color:#111 !important}.step-box{border:1px solid #ccc;background:#fff !important;backdrop-filter:none}.results-section{display:block !important}}@media (max-width:600px){.calc-header h1{font-size:24px;letter-spacing:2px}.input-card{padding:30px 20px}.btn-calc{font-size:22px;padding:18px 36px}.step-box{flex-direction:column;align-items:flex-start;gap:6px}.step-box .s-val{text-align:left}.login-card{padding:36px 24px}}