:root{--primary:#640259;--accent:#c43ec3;--text-on-dark:#ffffff;--bg-light:#f9f9f9;--card-bg:#ffffff}body,html{height:100%;margin:0;padding:0;font-family:Segoe UI,Tahoma,Geneva,Verdana,sans-serif;background-color:var(--bg-light);color:var(--primary)}.pastpapers-container{display:flex;min-height:100vh}.sidebar{width:220px;padding:2rem 1rem;background-color:#fff;border-right:1px solid #eee;display:flex;flex-direction:column;gap:.5rem;position:-webkit-sticky;position:sticky;top:0}.sidebar-item{background-color:transparent;color:var(--primary);font-size:1rem;font-weight:700;padding:.75rem 1rem;border-radius:.75rem;cursor:pointer;border:none;text-align:left;transition:background-color .2s}.sidebar-item.active{background-color:var(--primary);color:white}.sidebar-subitem{margin:.5rem 1.5rem;font-size:.95rem;font-weight:600;color:var(--primary);padding:.5rem 1rem;border-radius:.75rem;cursor:pointer;transition:background-color .2s}.sidebar-subitem.active{background-color:var(--primary);color:white}.main-area{flex:1 1;padding:2rem;background-color:var(--bg-light)}.search-box{margin-bottom:1.5rem;display:flex;justify-content:flex-end}.search-box input{width:100%;max-width:300px;padding:.6rem 1rem;font-size:1rem;border:2px solid var(--accent);border-radius:.6rem;background-color:#fff;color:var(--primary);transition:.3s}.search-box input:focus{outline:none;border-color:var(--primary);box-shadow:0 0 0 3px rgba(196,62,195,.3)}.cardsGrid{display:grid;grid-gap:2rem;gap:2rem;grid-template-columns:1fr}@media (min-width:640px){.cardsGrid{grid-template-columns:repeat(2,1fr)}}@media (min-width:1024px){.cardsGrid{grid-template-columns:repeat(3,1fr)}}.card{background:var(--card-bg);border-radius:1.5rem;padding:2rem;position:relative;box-shadow:0 8px 30px rgba(0,0,0,.08);transition:transform .3s ease,box-shadow .3s ease;display:flex;flex-direction:column;align-items:center}.card:hover{transform:translateY(-5px);box-shadow:0 12px 32px rgba(0,0,0,.1)}.card-header{display:flex;justify-content:space-between;align-items:flex-start;gap:1rem;width:100%;font-size:1.5rem;font-weight:700;margin-bottom:1rem;color:var(--primary);z-index:1;flex-wrap:wrap}.card-name{flex:1 1;min-width:0;word-wrap:break-word;overflow-wrap:break-word;word-break:break-word}.card-year{white-space:nowrap;font-size:1rem;color:#999}.cardButtons{display:flex;justify-content:center;gap:1rem;margin-top:auto;flex-wrap:wrap;z-index:1}.btn{padding:.6rem 1.2rem;border:2px solid var(--primary);border-radius:.75rem;background-color:transparent;color:var(--primary);cursor:pointer;font-size:1rem;display:flex;align-items:center;transition:background-color .3s,color .3s}.btn:hover{background-color:var(--primary);color:#fff}.download,.preview{display:flex;align-items:center}.watermark{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%) rotate(-30deg);font-size:1.5rem;font-weight:800;color:var(--accent);opacity:.15;white-space:nowrap;z-index:0}form{max-width:450px;margin:2rem auto;padding:2rem;background-color:white;border-radius:1rem;box-shadow:0 8px 20px rgba(0,0,0,.1)}label{display:block;margin-top:1rem;font-weight:700;color:var(--primary)}input[type=String],input[type=file],input[type=number],input[type=text],select{width:100%;padding:.75rem;margin-top:.5rem;border:1px solid #ddd;border-radius:.5rem;font-size:1rem}input[type=file]{padding:.4rem}button[type=submit]{margin-top:1.5rem;width:100%;padding:.75rem;background-color:var(--primary);color:white;border:none;border-radius:.5rem;font-size:1rem;font-weight:700;cursor:pointer;transition:background-color .3s ease}button[type=submit]:hover{background-color:#4a0143}::selection{background:var(--accent);color:white}.hamburger-wrapper{display:none;position:fixed;top:6rem;left:1rem;z-index:2000}.hamburger-icon{cursor:pointer;color:#fff;background:var(--primary);border-radius:.5rem;padding:.5rem;display:flex;align-items:center;justify-content:center;box-shadow:0 2px 8px rgba(0,0,0,.15)}@media (max-width:767px){.hamburger-wrapper{display:block}.sidebar{position:absolute;top:9rem;left:1rem;width:calc(100% - 2rem);max-width:280px;height:auto;background-color:white;border-radius:1rem;box-shadow:0 12px 30px rgba(0,0,0,.2);padding:1rem;transform:scale(.9);opacity:0;pointer-events:none;transition:all .3s ease;z-index:1999}.sidebar.visible{transform:scale(1);opacity:1;pointer-events:auto}.close-btn{display:block;font-size:1rem;margin-bottom:.1rem;color:var(--primary);text-align:right;background:none;border:none;cursor:pointer}.main-area{padding:1rem}}