clause agent mode "make it look like papermod"
Some checks failed
CSS Code Linting / Lint CSS (push) Has been cancelled
JS Code Linting / Lint JS (push) Has been cancelled
PHP Code Linting / Parallel lint (push) Has been cancelled
PHP Code Linting / PHPCS check (push) Has been cancelled

This commit is contained in:
gribse 2025-07-26 16:24:01 +02:00
parent 1c59bd66ea
commit 582e4491c0
91 changed files with 2139 additions and 202 deletions

555
style.css Normal file → Executable file
View file

@ -1,21 +1,21 @@
/*!
Theme Name: _s
Theme URI: https://underscores.me/
Author: Automattic
Author URI: https://automattic.com/
Description: Hi. I'm a starter theme called <code>_s</code>, or <em>underscores</em>, if you like. I'm a theme meant for hacking so don't use me as a <em>Parent Theme</em>. Instead try turning me into the next, most awesome, WordPress theme out there. That's what I'm here for.
Theme Name: Achille Press
Theme URI: https://github.com/your-username/achille-press
Author: Your Name
Author URI: https://yourwebsite.com/
Description: A fast, clean, and responsive WordPress theme inspired by the Hugo PaperMod theme. Features a minimal design with excellent typography, light/dark mode toggle, and optimized performance for modern websites.
Version: 1.0.0
Tested up to: 5.4
Requires PHP: 5.6
Tested up to: 6.4
Requires PHP: 7.4
License: GNU General Public License v2 or later
License URI: LICENSE
Text Domain: _s
Tags: custom-background, custom-logo, custom-menu, featured-images, threaded-comments, translation-ready
Text Domain: achille-press
Tags: blog, clean, minimal, responsive, dark-mode, light-mode, accessibility-ready, custom-colors, custom-header, custom-logo, custom-menu, editor-style, featured-images, flexible-header, footer-widgets, full-width-template, microformats, post-formats, rtl-language-support, sticky-post, theme-options, threaded-comments, translation-ready, two-columns
This theme, like WordPress, is licensed under the GPL.
Use it to make something cool, have fun, and share what you've learned.
This theme is inspired by Hugo PaperMod and built on Underscores foundation.
Licensed under the GPL v2 or later.
_s is based on Underscores https://underscores.me/, (C) 2012-2020 Automattic, Inc.
Achille Press is based on Underscores https://underscores.me/, (C) 2012-2020 Automattic, Inc.
Underscores is distributed under the terms of the GNU GPL v2 or later.
Normalizing styles have been helped along thanks to the fine work of
@ -967,3 +967,534 @@ textarea {
margin-right: auto;
margin-bottom: 1.5em;
}
/*--------------------------------------------------------------
# PaperMod Inspired Enhancements
--------------------------------------------------------------*/
/* CSS Custom Properties for Theme Switching */
:root {
--color-bg-primary: #ffffff;
--color-bg-secondary: #f8f9fa;
--color-bg-card: #ffffff;
--color-bg-header: rgba(255, 255, 255, 0.95);
--color-text-primary: #212529;
--color-text-secondary: #6c757d;
--color-text-tertiary: #868e96;
--color-link: #0d6efd;
--color-link-visited: #6f42c1;
--color-link-hover: #0a58ca;
--color-border-primary: #dee2e6;
--color-border-secondary: #ced4da;
--shadow-card: 0 1px 3px rgba(0, 0, 0, 0.12), 0 1px 2px rgba(0, 0, 0, 0.24);
--shadow-hover: 0 14px 28px rgba(0, 0, 0, 0.25), 0 10px 10px rgba(0, 0, 0, 0.22);
--transition-default: all 0.3s cubic-bezier(0.25, 0.8, 0.25, 1);
--transition-fast: all 0.15s ease-in-out;
}
[data-theme="dark"] {
--color-bg-primary: #1a1a1a;
--color-bg-secondary: #2d2d2d;
--color-bg-card: #212529;
--color-bg-header: rgba(26, 26, 26, 0.95);
--color-text-primary: #f8f9fa;
--color-text-secondary: #adb5bd;
--color-text-tertiary: #6c757d;
--color-link: #6ea8fe;
--color-link-visited: #a370f7;
--color-link-hover: #9ec5fe;
--color-border-primary: #495057;
--color-border-secondary: #495057;
--shadow-card: 0 1px 3px rgba(0, 0, 0, 0.5), 0 1px 2px rgba(0, 0, 0, 0.6);
--shadow-hover: 0 14px 28px rgba(0, 0, 0, 0.7), 0 10px 10px rgba(0, 0, 0, 0.8);
}
@media (prefers-color-scheme: dark) {
:root:not([data-theme="light"]) {
--color-bg-primary: #1a1a1a;
--color-bg-secondary: #2d2d2d;
--color-bg-card: #212529;
--color-bg-header: rgba(26, 26, 26, 0.95);
--color-text-primary: #f8f9fa;
--color-text-secondary: #adb5bd;
--color-text-tertiary: #6c757d;
--color-link: #6ea8fe;
--color-link-visited: #a370f7;
--color-link-hover: #9ec5fe;
--color-border-primary: #495057;
--color-border-secondary: #495057;
--shadow-card: 0 1px 3px rgba(0, 0, 0, 0.5), 0 1px 2px rgba(0, 0, 0, 0.6);
--shadow-hover: 0 14px 28px rgba(0, 0, 0, 0.7), 0 10px 10px rgba(0, 0, 0, 0.8);
}
}
/* Enhanced Body Styles */
body {
background: var(--color-bg-primary);
color: var(--color-text-primary);
font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, "Noto Sans", sans-serif;
font-size: 16px;
line-height: 1.6;
font-weight: 400;
transition: var(--transition-default);
-webkit-font-smoothing: antialiased;
-moz-osx-font-smoothing: grayscale;
}
/* Enhanced Link Styles */
a {
color: var(--color-link);
text-decoration: none;
transition: var(--transition-fast);
border-bottom: 1px solid transparent;
}
a:visited {
color: var(--color-link-visited);
}
a:hover,
a:focus,
a:active {
color: var(--color-link-hover);
border-bottom-color: var(--color-link-hover);
}
a:focus {
outline: 2px solid var(--color-link);
outline-offset: 2px;
border-radius: 2px;
}
/* Remove underline for navigation links */
.main-navigation a,
.site-branding a {
border-bottom: none;
}
.main-navigation a:hover,
.site-branding a:hover {
border-bottom: none;
}
/* Enhanced Header Styles */
.site-header {
position: sticky;
top: 0;
z-index: 1000;
background: var(--color-bg-header);
backdrop-filter: blur(10px);
border-bottom: 1px solid var(--color-border-primary);
transition: var(--transition-default);
}
.header-container {
max-width: 1200px;
margin: 0 auto;
padding: 1rem 1.5rem;
display: flex;
align-items: center;
justify-content: space-between;
gap: 2rem;
}
@media (max-width: 768px) {
.header-container {
padding: 0.75rem 1rem;
}
}
.site-branding {
display: flex;
align-items: center;
gap: 1rem;
flex-shrink: 0;
}
.site-title {
margin: 0;
font-size: 1.5rem;
font-weight: 700;
line-height: 1.2;
}
.site-title a {
color: var(--color-text-primary);
}
.site-title a:hover {
color: var(--color-link);
}
.site-description {
display: none;
margin: 0;
font-size: 0.875rem;
color: var(--color-text-secondary);
}
@media (min-width: 768px) {
.site-description {
display: block;
}
}
.header-actions {
display: flex;
align-items: center;
gap: 1rem;
}
/* Theme Toggle Button */
.theme-toggle {
background: none;
border: none;
cursor: pointer;
padding: 0.5rem;
border-radius: 50%;
transition: var(--transition-fast);
color: var(--color-text-primary);
position: relative;
}
.theme-toggle:hover {
background: var(--color-bg-secondary);
color: var(--color-link);
}
.theme-toggle:focus {
outline: 2px solid var(--color-link);
outline-offset: 2px;
}
.theme-toggle svg {
display: block;
transition: var(--transition-fast);
}
.theme-toggle .moon-icon {
position: absolute;
top: 50%;
left: 50%;
transform: translate(-50%, -50%);
opacity: 0;
}
[data-theme="dark"] .theme-toggle .moon-icon {
opacity: 1;
}
.theme-toggle .sun-icon {
opacity: 1;
}
[data-theme="dark"] .theme-toggle .sun-icon {
opacity: 0;
}
/* Enhanced Navigation */
.main-navigation {
position: relative;
}
.menu-toggle {
display: none;
background: none;
border: none;
cursor: pointer;
padding: 0.5rem;
border-radius: 4px;
transition: var(--transition-fast);
}
.menu-toggle:hover {
background: var(--color-bg-secondary);
}
@media (max-width: 768px) {
.menu-toggle {
display: flex;
align-items: center;
gap: 0.5rem;
}
}
.hamburger-icon {
display: flex;
flex-direction: column;
gap: 3px;
}
.hamburger-icon span {
display: block;
width: 20px;
height: 2px;
background: var(--color-text-primary);
transition: var(--transition-fast);
border-radius: 1px;
}
.primary-menu {
display: flex;
align-items: center;
gap: 2rem;
margin: 0;
padding: 0;
list-style: none;
}
@media (max-width: 768px) {
.primary-menu {
display: none;
position: absolute;
top: 100%;
right: 0;
background: var(--color-bg-card);
box-shadow: var(--shadow-card);
border-radius: 8px;
padding: 1rem;
min-width: 200px;
flex-direction: column;
gap: 0.5rem;
}
.primary-menu.toggled {
display: flex;
}
}
.primary-menu li a {
display: block;
padding: 0.5rem 0;
color: var(--color-text-primary);
font-weight: 500;
transition: var(--transition-fast);
}
@media (max-width: 768px) {
.primary-menu li a {
padding: 0.75rem;
border-radius: 4px;
}
}
.primary-menu li a:hover {
color: var(--color-link);
}
@media (max-width: 768px) {
.primary-menu li a:hover {
background: var(--color-bg-secondary);
}
}
/* Enhanced Post Styles */
.post,
.page {
margin: 0 0 2rem;
background: var(--color-bg-card);
border-radius: 8px;
overflow: hidden;
transition: var(--transition-default);
}
.home .post,
.archive .post,
.search-results .post {
box-shadow: var(--shadow-card);
}
.home .post:hover,
.archive .post:hover,
.search-results .post:hover {
box-shadow: var(--shadow-hover);
transform: translateY(-2px);
}
.entry-header {
margin-bottom: 1rem;
}
.home .entry-header,
.archive .entry-header,
.search-results .entry-header {
padding: 1.5rem 1.5rem 0;
}
.entry-title {
margin: 0 0 0.5rem;
line-height: 1.3;
}
.entry-title a {
color: var(--color-text-primary);
}
.entry-title a:hover {
color: var(--color-link);
}
.home .entry-title,
.archive .entry-title,
.search-results .entry-title {
font-size: 1.5rem;
}
.single .entry-title,
.page .entry-title {
font-size: 2.5rem;
margin-bottom: 1rem;
}
.entry-meta {
display: flex;
flex-wrap: wrap;
gap: 1rem;
font-size: 0.875rem;
color: var(--color-text-secondary);
margin-bottom: 1rem;
}
.entry-meta a {
color: var(--color-text-secondary);
}
.entry-meta a:hover {
color: var(--color-link);
}
.entry-content,
.entry-summary {
margin: 1rem 0;
line-height: 1.6;
}
.home .entry-content,
.home .entry-summary,
.archive .entry-content,
.archive .entry-summary,
.search-results .entry-content,
.search-results .entry-summary {
padding: 0 1.5rem;
}
/* Enhanced Footer Styles */
.site-footer {
margin-top: auto;
background: var(--color-bg-secondary);
border-top: 1px solid var(--color-border-primary);
}
.footer-container {
max-width: 1200px;
margin: 0 auto;
padding: 2rem 1.5rem 1rem;
}
@media (max-width: 768px) {
.footer-container {
padding: 1.5rem 1rem 1rem;
}
}
.site-info {
display: flex;
justify-content: space-between;
align-items: center;
padding-top: 1rem;
border-top: 1px solid var(--color-border-primary);
font-size: 0.875rem;
color: var(--color-text-secondary);
}
@media (max-width: 768px) {
.site-info {
flex-direction: column;
gap: 0.5rem;
text-align: center;
}
}
.site-info a {
color: var(--color-text-secondary);
}
.site-info a:hover {
color: var(--color-link);
}
/* Layout Styles */
.content-wrapper {
max-width: 1200px;
margin: 0 auto;
padding: 2rem 1.5rem;
display: grid;
grid-template-columns: 1fr 300px;
gap: 3rem;
align-items: start;
}
@media (max-width: 1024px) {
.content-wrapper {
grid-template-columns: 1fr;
gap: 2rem;
padding: 1.5rem 1rem;
}
}
@media (max-width: 768px) {
.content-wrapper {
padding: 1rem;
}
}
.site-main {
min-width: 0;
}
.no-sidebar .site-main {
grid-column: 1 / -1;
max-width: 800px;
margin: 0 auto;
}
.single .site-main,
.page .site-main {
max-width: 800px;
}
.no-sidebar.single .site-main,
.no-sidebar.page .site-main {
max-width: 900px;
}
/* Site Container */
#page {
display: flex;
flex-direction: column;
min-height: 100vh;
background: var(--color-bg-primary);
}
/* Reading Time */
.reading-time {
font-size: 0.875rem;
color: var(--color-text-secondary);
}
.reading-time::before {
content: '⏱️ ';
}