:root{--ink: #1A1A1A;--paper: #F5F1EB;--gray: #7A746B;--bronze: #9c8470;--night: #2E4057;--font-serif: "Cormorant Garamond", "EB Garamond", Georgia, serif;--font-sans: "Inter", "Source Sans Pro", Arial, sans-serif}body{margin:0;padding:0;font-family:var(--font-sans);background:var(--paper);min-height:100vh;display:flex;flex-direction:column}h1,h2,h3,h4{font-family:var(--font-serif);color:var(--ink);letter-spacing:.3px}h2{margin-top:0}h3{margin-top:20px;color:var(--gray)}.layout-container{max-width:1200px;margin:0 auto;padding:0 30px;width:100%;box-sizing:border-box}.site-main{flex:1;padding:20px 0;background:var(--paper)}.site-main .layout-container{background:#fff;padding:20px;border-radius:8px;box-shadow:0 2px 6px #0000000d}.site-header{background:#fff;border-bottom:1px solid #ddd;padding:15px 0}.site-header .layout-container{display:flex;flex-direction:column;gap:10px}.header-row-1{display:flex;align-items:center;justify-content:center;gap:25px;width:100%}.header-left img{display:block}.header-row-2{display:flex;justify-content:center;gap:20px;padding-top:10px;border-top:1px solid #ddd;width:100%}.header-nav{display:flex;align-items:center;gap:20px;position:relative;z-index:10}.header-nav a{text-decoration:none;color:var(--ink);font-weight:700;transition:color .2s,border-bottom-color .2s}.header-nav a:hover{color:var(--bronze)}.header-nav a.active{color:var(--bronze);border-bottom:2px solid var(--bronze);padding-bottom:3px}.header-search{display:flex;align-items:center;background:#fff;border:1px solid #ccc;border-radius:20px;padding:5px 12px}.header-search input{border:none;outline:none;background:transparent;font-size:14px;width:220px}.header-search .search-btn{background:none;border:none;cursor:pointer;font-size:16px}.header-row-2 a{text-decoration:none;color:var(--gray);font-size:14px;transition:color .2s,border-bottom-color .2s}.header-row-2 a.active{color:var(--bronze);border-bottom:2px solid var(--bronze);padding-bottom:2px}.dropdown{position:relative;display:inline-block}.dropdown-toggle{background:#222;color:#fff;border:1px solid #333;padding:8px 12px;cursor:pointer;font-size:14px;border-radius:4px}.dropdown-menu{display:none;position:absolute;top:100%;left:0;background:#111;padding:10px 0;border-radius:4px;min-width:200px;z-index:1000}.dropdown-menu a{display:block;padding:8px 15px;color:#4aa3ff;text-decoration:none;font-size:14px}.dropdown-menu a:hover{background:#222}.dropdown.open .dropdown-menu{display:block}.site-footer{background:#fff;border-top:1px solid #ddd;padding:20px 0;margin-top:40px}.footer-container{display:flex;justify-content:space-between;align-items:center;gap:20px}.footer-left{display:flex;align-items:center;gap:15px}.footer-left p{margin:0;font-size:14px;color:var(--gray)}.footer-right{display:flex;gap:20px}.footer-right a{text-decoration:none;color:var(--ink);font-size:14px;transition:color .2s}.footer-right a:hover{color:var(--bronze)}.contact-form{max-width:680px;margin:50px auto;display:grid;gap:32px}.contact-form label{font-family:var(--font-serif);font-size:20px;color:var(--ink);margin-bottom:8px;display:block}.contact-form input,.contact-form textarea{width:100%;padding:14px 18px;border:1px solid #d6d0c8;border-radius:4px;background:var(--paper);font-family:var(--font-sans);font-size:16px;transition:border-color .25s,background .25s}.contact-form input:focus,.contact-form textarea:focus{border-color:var(--bronze);background:#fff;outline:none}.contact-form .error{color:#b03a2e;font-size:14px;margin-top:-18px;font-family:var(--font-sans)}.contact-form button{padding:14px 32px;background:var(--bronze);color:#fff;border:none;border-radius:4px;font-family:var(--font-serif);font-size:18px;cursor:pointer;transition:background .25s}.contact-form button:hover{background:var(--gray)}.contact-success{padding:16px 22px;background:#eef7ef;border-left:4px solid #2e7d32;color:#2e7d32;font-family:var(--font-serif);font-size:18px;margin-bottom:30px;border-radius:4px}@media(max-width:600px){.header-row-1,.header-row-2{flex-wrap:wrap;justify-content:center}.footer-container{flex-direction:column;align-items:center;gap:10px}}html.dark-mode{--ink: #F2EDE7;--paper: #1A1C1F;--gray: #A8A29E;--bronze: #9c8470;--night: #6B8BAF;--surface-1: #222427;--surface-2: #2A2C30;--surface-3: #33363B}html.dark-mode body{background:var(--paper);color:var(--ink)}html.dark-mode h1,html.dark-mode h2,html.dark-mode h3,html.dark-mode h4{color:var(--ink)}html.dark-mode h3{color:var(--gray)}html.dark-mode .site-main{background:var(--paper)}html.dark-mode .site-main .layout-container{background:var(--surface-2);box-shadow:0 2px 6px #0006}html.dark-mode .site-header{background:var(--surface-1);border-bottom:1px solid #444}html.dark-mode .header-nav a{color:var(--ink)}html.dark-mode .header-nav a:hover{color:var(--bronze)}html.dark-mode .header-nav a.active{color:var(--bronze);border-bottom-color:var(--bronze)}html.dark-mode .header-search{background:var(--surface-2);border-color:#555}html.dark-mode .header-search input,html.dark-mode .header-search .search-btn{color:var(--ink)}html.dark-mode .header-row-2{border-top:1px solid #444}html.dark-mode .header-row-2 a{color:var(--gray)}html.dark-mode .header-row-2 a.active{color:var(--bronze);border-bottom-color:var(--bronze)}html.dark-mode .dropdown-toggle{background:#333;border-color:#555;color:var(--ink)}html.dark-mode .dropdown-menu{background:#222}html.dark-mode .dropdown-menu a{color:var(--night)}html.dark-mode .dropdown-menu a:hover{background:#333}html.dark-mode .site-footer{background:var(--surface-1);border-top:1px solid #444}html.dark-mode .footer-left p{color:var(--gray)}html.dark-mode .footer-right a{color:var(--ink)}html.dark-mode .footer-right a:hover{color:var(--bronze)}html.dark-mode .contact-form label{color:var(--ink)}html.dark-mode .contact-form input,html.dark-mode .contact-form textarea{background:var(--surface-2);border-color:#555;color:var(--ink)}html.dark-mode .contact-form input:focus,html.dark-mode .contact-form textarea:focus{background:var(--surface-3);border-color:var(--bronze)}html.dark-mode .contact-form button{background:var(--bronze);color:var(--paper)}html.dark-mode .contact-form button:hover{background:var(--ink)}html.dark-mode .contact-success{background:#1f3320;border-left-color:#4caf50;color:#c8e6c9}.theme-toggle button{background:none;border:1px solid #ccc;padding:6px 10px;border-radius:4px;cursor:pointer;font-size:16px;transition:background .2s,border-color .2s}.theme-toggle button:hover{background:#eee}html.dark-mode .theme-toggle button{border-color:#443e3e;color:var(--ink)}html.dark-mode .theme-toggle button:hover{background:#4e4e4e}html,body{transition:background-color .25s ease,color .25s ease}.site-header,.site-footer{transition:background-color .35s ease .05s,border-color .35s ease .05s,color .35s ease .05s}.header-nav a,.header-row-2 a,.footer-right a{transition:color .4s ease .1s,border-color .4s ease .1s}.header-search,.header-search input,.dropdown-toggle,.dropdown-menu,.dropdown-menu a,.theme-toggle button{transition:background-color .45s ease .15s,color .45s ease .15s,border-color .45s ease .15s}.site-main .layout-container{transition:background-color .55s ease .2s,box-shadow .55s ease .2s,color .55s ease .2s}.contact-form input,.contact-form textarea,.contact-form button{transition:background-color .65s ease .25s,border-color .65s ease .25s,color .65s ease .25s}.book-header{text-align:center;margin-bottom:2rem;margin-left:50px;margin-right:50px}.book-meta{display:flex;justify-content:space-between;align-items:flex-start;gap:2rem;margin:2rem 0}.book-info{flex:1;margin-left:50px}.book-cover img{width:250px;height:auto;margin-right:100px;border-radius:6px;box-shadow:0 4px 12px #00000026}.book-description,.book-details,.book-author{margin-top:1.5rem;margin-left:50px;margin-right:50px}.book-author .book-author-bio{font-style:italic;color:var(--gray)}.book-reviews{margin-top:1.5rem;margin-left:50px;margin-right:50px}.user-menu{display:flex;align-items:center;gap:15px}.avatar{width:32px;height:32px;border-radius:50%;-o-object-fit:cover;object-fit:cover;box-shadow:0 2px 4px #00000026}.user-dropdown{position:relative}.user-button{display:flex;align-items:center;gap:8px;background:none;border:none;cursor:pointer;font-weight:600;font-size:14px;color:var(--ink);padding:6px 8px;border-radius:4px;transition:background .2s,color .2s}.user-button:hover{background:#0000000d}.user-dropdown-menu{display:none;position:absolute;right:0;top:40px;background:#fff;border:1px solid #ccc;border-radius:6px;padding:10px;min-width:180px;box-shadow:0 4px 12px #00000026;z-index:100}.user-dropdown-menu a,.user-dropdown-menu button{display:block;padding:8px 10px;text-decoration:none;color:var(--ink);width:100%;text-align:left;border:none;background:none;cursor:pointer;font-size:14px;border-radius:4px}.user-dropdown-menu a:hover,.user-dropdown-menu button:hover{background:#0000000d}html.dark-mode .user-button{color:var(--ink)}html.dark-mode .user-button:hover{background:var(--surface-3)}html.dark-mode .user-dropdown-menu{background:var(--surface-2);border-color:#555;box-shadow:0 4px 12px #0006}html.dark-mode .user-dropdown-menu a,html.dark-mode .user-dropdown-menu button{color:var(--ink)}html.dark-mode .user-dropdown-menu a:hover,html.dark-mode .user-dropdown-menu button:hover{background:var(--surface-3)}.auth-container{background:#fff;padding:30px 40px;border-radius:8px;max-width:520px;margin:60px auto;box-shadow:0 2px 6px #0000000d}html.dark-mode .auth-container{background:var(--surface-2);box-shadow:0 2px 6px #0006}.auth-container h1{font-family:var(--font-serif);font-size:32px;margin-bottom:25px;color:var(--ink)}html.dark-mode .auth-container h1{color:var(--ink)}.auth-container label{font-family:var(--font-serif);font-size:18px;color:var(--ink);margin-bottom:6px;display:block}html.dark-mode .auth-container label{color:var(--ink)}.auth-container input[type=email],.auth-container input[type=password],.auth-container input[type=text]{width:100%;padding:12px 16px;border:1px solid #d6d0c8;border-radius:4px;background:var(--paper);font-family:var(--font-sans);font-size:16px;transition:border-color .25s,background .25s;box-sizing:border-box}.auth-container input:focus{border-color:var(--bronze);background:#fff;outline:none}html.dark-mode .auth-container input{background:var(--surface-2);border-color:#555;color:var(--ink)}html.dark-mode .auth-container input:focus{background:var(--surface-3);border-color:var(--bronze)}.auth-container button{width:100%;padding:14px 20px;background:var(--bronze);color:#fff;border:none;border-radius:4px;font-family:var(--font-serif);font-size:18px;cursor:pointer;transition:background .25s;margin-top:10px}.auth-container button:hover{background:var(--gray)}html.dark-mode .auth-container button{background:var(--bronze);color:var(--paper)}html.dark-mode .auth-container button:hover{background:var(--ink)}.auth-container a{color:var(--night);text-decoration:none;font-size:14px}.auth-container a:hover{color:var(--bronze)}html.dark-mode .auth-container a{color:var(--night)}.auth-error{color:#b03a2e;font-size:14px;margin-top:4px}.auth-status{padding:12px 16px;background:#eef7ef;border-left:4px solid #2e7d32;color:#2e7d32;font-family:var(--font-serif);font-size:16px;border-radius:4px;margin-bottom:20px}html.dark-mode .auth-status{background:#1f3320;border-left-color:#4caf50;color:#c8e6c9}.auth-container input[type=checkbox]{accent-color:var(--bronze)}.header-auth{display:flex;align-items:center;gap:12px}.header-auth .login-link{padding:6px 12px;font-size:14px;font-weight:600;color:var(--ink);text-decoration:none;border-radius:4px;transition:background .2s,color .2s}.header-auth .login-link:hover{background:#0000000d}.header-auth .register-link{padding:6px 14px;font-size:14px;font-weight:600;background:#9c8470;color:#fff;border-radius:4px;text-decoration:none;transition:background .2s}.header-auth .register-link:hover{background:var(--ink)}.footer-right{display:flex;align-items:center;gap:20px;position:relative}.footer-setting{display:inline-flex;align-items:center;gap:6px;position:relative;font-size:14px;color:var(--ink)}.footer-link{display:inline-flex;align-items:center;gap:6px;background:none;border:none;padding:4px 8px;cursor:pointer;font:inherit;color:var(--ink);transition:color .2s;flex-shrink:0;white-space:nowrap}.footer-link:hover{color:var(--bronze)}.footer-setting .icon{font-size:16px}.footer-lang{position:relative;flex-shrink:0}.lang-switch{display:inline-flex;align-items:center;gap:6px;font-size:14px}.lang-option{color:var(--ink);text-decoration:none;padding:2px 4px;transition:color .2s}.lang-option:hover{color:var(--bronze)}.lang-option.active{font-weight:700;color:var(--bronze)}.separator{opacity:.6}html.dark-mode .lang-option{color:var(--ink)}html.dark-mode .lang-option:hover,html.dark-mode .lang-option.active{color:var(--bronze)}
