(defpackage :fwoar.default-layout (:use :cl ) (:export #:default-layout #:border-color)) (in-package :fwoar.default-layout) (defclass default-layout () ((%border-color :reader border-color :initform "#eee"))) (defgeneric border-color (layout) ) (defmethod araneus:styles append ((layout default-layout)) `((body :display flex :flex-direction column :min-height 100vh) (h1 :height 3em :border-bottom 1px solid ,(border-color layout) :text-align center :line-height 3em) (div.main :display flex :width 100% :flex-grow 1) (nav :width 10% :display flex :flex-direction column) ((nav a) :font-weight bold :padding 1.5rem :text-align right :text-decoration underline) ((nav (:and a :hover)) :background "#eee") (main :flex-grow 1 :padding 1.5rem :border-left 1px solid ,(border-color layout) :flex-shrink 1)))